Jednak ani kompletna maszyna analityczna, ani oprogramowanie do niej nie zostały opracowane.
Pierwsza teoria na temat oprogramowania (przed stworzeniem dzisiejszych komputerów) została zaproponowana przez Alana Turinga w jego eseju opublikowanym w roku 1936. Doprowadziło to ostatecznie do powstania bliźniaczych akademickich dziedzin informatyki i inżynierii oprogramowania, które zarówno badają oprogramowanie, jak i jego tworzenie. Informatyka jest bardziej teoretyczna (esej Turinga jest przykładem informatyki), natomiast inżynieria oprogramowania koncentruje się na bardziej praktycznych zagadnieniach.
Przed rokiem 1946 oprogramowanie jakie teraz znamy, czyli programy przechowywane w pamięci komputerów cyfrowych – jeszcze nie istniało.
Narzędzia do programowania Narzędzie programistyczne to również oprogramowanie w postaci programów lub aplikacji internetowych, które twórcy oprogramowania (zwani również programistami lub inżynierami oprogramowania) używają do tworzenia, debugowania, utrzymywania (tj. ulepszania lub naprawiania). Oprogramowanie jest napisane w jednym lub kilku językach programowania. Istnieje wiele języków programowania i każdy ma przynajmniej jedną implementację, z których każda składa się z własnego zestawu narzędzi programistycznych.