I would like some opinion on what's a good programming language. Not exactly looking to learn for a career but for my own interest in leisure time. Thanks.
I'd have to say C# is a good language to pursue, although C and C++ are also good. C and C++ are available in the 'NIX environment, as well as C# which is called MONO. http://www.mono-project.com/ Pascal is also a good language. Take a look at the Lazarus project. https://forums.mydigitallife.net/threads/lazarus-1-6-4-released.73488/ If you want to program for Android, Java is a must.
For a newbie I would say python, it's a amazing language and incredibly easy to learn. And it's also becoming very popular in the professional field.
You should try Kotlin. It is a modern programming language with a clean syntax. Kotlin can interoperate with Java and is now an official language for Android development
I started with C. I had some casual insight into javascript and visual basic though. C teaches you the basic classics in programming like understanding pointers, arrays and memory handling. C is confined and overlookable. It appealed to me being kind of a list of intellectual challenges to overcome and when you reach the end of the list, you're done. There are no shortcuts, you need your code to be correct to be successful. C trains your logic and forces you to be precise, encourage you to a minimalistic coding ideal. Most importantly, you build a solid foundation for your programming skills and a confidence of code understanding. C is important as a library interface to other languages e.g. C++ or Java for its easy modularity. The downside with C comes when you need to organize your program, manage flows, reuse code etc. It is the stage when you realize the purpose of objects, classes, templates and class diagrams. Here you can continue to C#, Java or C++, bringing your solid C background as an asset.
Great post! I'm learning C on my programming classes, so far is a good language to learn, even though i don't really know what can i do with it outside the "academic" stuff though. Next semester we are going to learn Java, so i guess i'm going to drop C eventually.
As my programming teacher said : "Don't code for code, code for a precise aim, and for a need you personnaly have" I can't code more than a simple calculator though hah, but I think his advise is gold. As for recommendations, Python is quite handy and apparently simpler compared to C (mostly because it's higher level)
@sayopara: I agree. Another thing to remember is that a programming language is no different than any other tool in your tool belt. Use the tool that gets the job done in as little time as possible with as little effort as possible. With that said, learn the basic concepts of as many languages as you can. You'll be able to tell right away which language is best for the job at hand. @Edward: The beauty of C is portability. It's actually very simple to learn. Just like every other language, it's up to you to apply good programming etiquette and write clear, concise code. Remember: You might be working on your own code at some later time. So make it easy to read. Don't make the mistake of over-commenting. Just comment things that are not clear.
If you haven't done any previous coding before, I would really not worry about which language to learn first, because it will just make your head explore. I would recommend learning programming logic using some of the free IDE's (integrated development environment) with interactive consoles. With these you just type in your code and immediately see the result and you won't have to worry about the whole build process. If you are a Mac user there is Xcode, it has a playground where you can learn the Swift language (similar to C# and Java). If you are a windows user there is Visual Studio Code which has a interactive playground for C# and then there is JavaScript where you can use any Web Browser. The idea is just to get you thinking in a logical way and once you are comfortable you can go hardcore in any or as many languages that you like.
If you learn the base C++ you will better understand other languages. But, my opinion: Python Very very nice syntax
Aren't there C API bindings for designing the interface? There are articles on writing programs in C for Android, I thought that would be the case.
@thegreatblizzard: Yes you can do it. Look here: https://stackoverflow.com/questions/2773650/can-i-do-android-programming-in-c-c You can use Visual Studio to build in C++ for Android. You can also use Lazarus (Free Pascal) to develop for Android.
You can do Cross-Platform mobile development using React Native and other front-end technologies. This way you can build for android, ios and windows phone platforms