Before I ask the question I realize that selection of a programming language depends on the context of a problem at hand. Related to this I would like to know (if anyone) how many of you use which language for programming microcontrollers, embedded systems and even generally on PC. Here is an example: Webcam interface for face recognition. (USB or inbuilt) Visualizing the data in real-time plus GUI. Example languages which could be used for the above: C C++ Python Java C# What do you recommend and why? (I am asking this question because a lab I worked in were using Java to control a robot on wheels for object detection/avoidance etc. This seemed a bit wrong considering that for time critical apps. C or C++ seem to be good choices).