Isn't Java a PITA? Like, couldn't someone who learned Java go on to learn C++, and then C, for example? If they're smart enough to learn to deal with Java, I mean. I know I find C to be a lot more scrutable.
Hmm, you can say that about any language you are not using. For me, for example, constant segfaults were getting on my nerves. Granted, I am not exactly proficient in C, to say the least. However, it is only slightly better with Java, but there you generally have the type of error and meaningfull stack trace.
Once you have access to a debugger like gdb, remember to build with debug symbols, and have tools like valgrind or even electricfence. Then C becomes a lot easier. Once you have what I call a debugging-friendly environment for C, you can make headway on unit tests.
This might be my own bias, but I think going from Java to C is a smaller step than going from Java to C++. There are a lot of new concepts in C++, and the syntax is not always obvious. C is a bit more primitive and the main new skill is learning new ways to do things in the more limited capabilities rather than fighting a more complex language.
Ultimately if you program for a living. You probably should know how to program in several languages, even if only one or two of them are your "main" language. The concepts you learn in different languages can influence your high level design skills. What I found enlightening is learning a little bit about a few odd balls like Lisp, Forth, or Erlang. Even though I will not likely ever directly use these languages in my career, it was a valuable intellectual exercise.
Monoculture of language? (Score:2)
The lack of diverse programming experience in your country is not something to be proud of.
Re: (Score:2)
Who cares? As long as it pays the bills and works as intended.
Re: (Score:2)
Short term planing doesn't usually lead to long term success.
Re: (Score:1)
Isn't Java a PITA? Like, couldn't someone who learned Java go on to learn C++, and then C, for example? If they're smart enough to learn to deal with Java, I mean. I know I find C to be a lot more scrutable.
Re: (Score:0)
Re:Monoculture of language? (Score:2)
Once you have access to a debugger like gdb, remember to build with debug symbols, and have tools like valgrind or even electricfence. Then C becomes a lot easier. Once you have what I call a debugging-friendly environment for C, you can make headway on unit tests.
This might be my own bias, but I think going from Java to C is a smaller step than going from Java to C++. There are a lot of new concepts in C++, and the syntax is not always obvious. C is a bit more primitive and the main new skill is learning new ways to do things in the more limited capabilities rather than fighting a more complex language.
Ultimately if you program for a living. You probably should know how to program in several languages, even if only one or two of them are your "main" language. The concepts you learn in different languages can influence your high level design skills. What I found enlightening is learning a little bit about a few odd balls like Lisp, Forth, or Erlang. Even though I will not likely ever directly use these languages in my career, it was a valuable intellectual exercise.