So obviously NASA need programmers to develop applications for them, be it VOIP applications, applications for control of machines and AI, etc. But in what language do they actually use for this?

I am thinking of learning how to program an Arduino, or Engduino as we may be witnessing in my Computer Science classes, but is this at all related to the type of programming NASA do. I understand that NASA will be programming MUCH, MUCH, MUCH more advanced programs than I, but to just get the sense of bringing a inanimate object to life would be an achievement to me.

  • @GlenH7: That's just one application. May 16, 2014 at 19:14
  • 7
    Note that what they use now is not necessarily what they will be using when you graduate from college. May 16, 2014 at 19:20
  • 1
    You want to code? Code! Just try to do it lots of different ways. The more ways you know to do things, the more likely it is you'll know a really good way. Knowing lots of languages helps a lot. Don't worry too much about whether you end up at NASA; there's lots of other cool places to work too and all that stuff is lots of years away. Get Good first, and learning lots of stuff helps a lot (as does lots of practice; nobody gets good without practicing, 'cos that's the way human brains work). May 16, 2014 at 19:52

1 Answer 1


Armstrong Flight Research Center uses C, C++, C#, Fortran, MATLAB, Python and other languages, based on their specific software requirements. Some of their software development involves legacy systems. Some of it involves spacecraft systems, and some of it involves ground control systems. The control rooms run custom software written in C, C++ and C#, running on Dell computers.

ADA is seldom used anywhere in the military-industrial complex anymore, probably at least in part due to the Ariane 5 accident. There's a wide variety of software development that takes place at NASA, some of which involves exotic embedded systems. It never hurts to learn Arduino, and have some fundamental knowledge of electrical signals and digital data systems.

See Also
What is the Mars Curiosity Rover's software built in?
They Write the Right Stuff

  • Are there any that use Java? I am fairly experienced in this language, and was hoping it would be a brilliant one to follow up into the future. May 16, 2014 at 19:17
  • I haven't seen Java, but there is extensive use of C#, which is similar to (and I daresay a better language than) Java. May 16, 2014 at 19:18
  • 4
    Hand-coding forms is only interesting the first couple of times you do it. After that, any employer will wonder why you're wasting your time and their money writing that code by hand when the IDE will write most of it for you. May 16, 2014 at 19:22
  • 1
    @HarryKitchener Not all programming has to do with GUIs. When I started learning to program I made some windowed applications with Java, but soon found the stuff behind the chrome to be more interesting. If I need an interface, I'll mostly offer a text-based interface via the command line or through a web page, as they are easier to implement.
    – amon
    May 16, 2014 at 19:26
  • 1
    No. The more you know, the better off in your field. The company I did my internship with used both Java and C# for different applications. Continue learning Java, and as you get familiar, take on C#/C++. Java is syntactically similar to those and knowing Java will help you learn the others as well.
    – Loren Shaw
    May 19, 2014 at 12:14

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