open (or at least not close) as many doors as you can, so that you don't starve to death waiting for that one perfect job
Loved that tyvm
1 language to rule them all?
OK so no mastering a single language, ty.
Im not looking for a world class job.
Just want to make a "good" game if only 1.
However
Am becoming more interested in different codes and the way they communicate with each other.
If you're looking at mobile platforms, you have an advantage with already knowing HTML5 since that, with maybe a bit of JavaScript, would enable you to write a program that can run on pretty much all mobile platforms.
If comfortable with Java, then you should stick with it for now. Its a very popular language, and seeing much use in the field of programming. For games its been used for the older mobile phones and now for the Android platform.
A programmer that learns only one language is like a carpenter that only uses screws.
I believe a language is not a tool itself, but a tool kit. Paradigms, algorithms, patterns, these are the tools within the tool kit that is the language.
Because of this, the statement above about the red screw driver, is not really valid in my opinion. Someone who uses only one language can definitely be more than adequate for the majority of teams. What matters are the tools available in his tool kit with that language.
I agree with Serapth. Despite the fact that a language is a "tool kit" and that one could master a specific one, learning other languages is likely to make you a better programmer. In my opinion, one could not fully understand the power of Python or Javascript having programmed just in Python or Javascript, and never in a strongly-typed language such as C. The same could apply for C when compared to functional languages such as Haskell or Lisp (Which Python incorporates, to a certain degree, their philosophies). I would go a bit deeper and say that one could never fully understand a high-level programming language without never having a grasp of what is a low-level programming language such as C or x86 Assembly.
As John Carmack said:
Low-level programming is good for the programmer's soul.
Creator and only composer at Poisone Wein and Übelkraft dark musical projects:
- My compositions on Soundcloud: https://soundcloud.com/r-p-ericson-willians/sets/oneiric-insanity-pack-1-demo
- Poisone Wein: http://www.youtube.com/user/poisonewein
- Übelkraft Industrial: http://www.youtube.com/user/uebelkraft
A good programmer is going to need several languages in his toolbox. Depending on the what the specific field they are in, these languages will differ
Unmanaged "systems level" language -: C and C++ are pretty much the only canidates here, though D is on the horizon
Managed "application level" language - C#, Python, Java
Scripting language - LUA
Web (client side) - Javascript, HTML
Web (server side) - Java, PHP, Ruby, Python
Database - SQL ( I really wish Datalog were a valid option here)
And last by not least, the "I'm cool and know more than you" functional languages - Scheme, Erlang, Haskell :-)