I have been wondering about this for a while.

What applications is programs like visual studio programmed in? But also, where is operating systems like android, ios and windows written in?

I just find it hard to imagine how developer environments are/were made, when they didn't exist! Get me right, I know that other developer environments probably existed at the time that they were made. But which? There is probably some logical explanation to this, and I would be happy to get to know it!

  • 5
    See The Chicken and Egg Problem, and then read rest of that Wikipedia article. – Robert Harvey Jun 30 '17 at 14:43
  • 3
    Your question is unclear. Programs and OSs are typically written in programming languages, not "applications", whatever that means. – Jörg W Mittag Jun 30 '17 at 14:54
  • Maybe a clarification of the question title would help: "What applications were used to build developer environments and operating systems?" – Greg Burghardt Jun 30 '17 at 17:04
  • 2
    This is a reasonable question. When you realize you've been using hammers to make hammers you start to wonder how it all started. You end up either talking about evolution or Genesis. – candied_orange Jun 30 '17 at 19:19
  • See Bootstrapping - Software development. Compilers for a new language are often written in a previous language, and at some point re-written in their own language, so that you can use an older version of the same compiler to compile a newer one. – Jesper Jul 3 '17 at 13:20

New is made from old.

iOS was developped on Macs and first Macintosh software was programmed on Apple II computers.

At the beginning, programming was like that (picture from: 70 years ago, six Philly women became the world's first digital computer programmers):

enter image description here


An Integrated Development Environment is mostly a glorified source code editor, also able to run external programs like compilers, debuggers, and version control systems. Good enough editors (like emacs) are able to play all the roles of an IDE (completion, running compilers, debuggers, etc).

An editor (including IDEs) is today a GUI application. In the past it could have been a terminal based application.

Today, GUI applications are written above widget toolkits (like Qt, GTK, etc.) and communicate with some display server. Terminal applications often use a terminal handling library like ncurses.

Compilers are "just" big command line programs transforming a file input (the source code) into a file output (the assembler or object code).

I'm surprised you have asked. A lot of IDEs and compilers (and operating systems and their utility) are free software, and you can study their source code. Consider installing some Linux distribution, it is mostly made of free software.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.