Reader Question: Should I learn Java?
My Answer: Maybe, maybe not.
On the surface, these questions seem very straight forward, direct and easy to answer. The appropriate answers, however, are very complex, must be individualized and very often have nothing to do with technology. The reason this type of question is so hard to answer is because both yes and no could be the right answer.
The deeper question is will learning Java (or other technology of choice) help move you forward toward your future career aspirations or will it be a well-intended distraction, thus, slowing your career progress.
Don’t get me wrong, I think an understanding of Java is of value to anyone working within the IT profession. The question is what depth of knowledge you need, given your stated professional direction. The answer to this question will help you decide if learning the desired new technology is nice-to-know, good-to-know, should-definitely-know, or cannot-live-without. For example, if you are a Business Analyst and would like to speak more technically with the programmers, then Java would be a good-to-know. If you are a programmer and want to expand your marketability, Java would be a should-definitely-know. Lastly, if you’re a production DBA and are just curious what the programmers are doing all day, learning Java is a nice-to-know, but your time may be better spent expanding your knowledge of database and data center based technologies.
The next questions to ask yourself, once you decide how important the technology is to your future, are:
- How much do you need to know?
- How much time should you spend learning this new technology?
- What is the best way to acquire the needed knowledge?
How much do you need to know? The answer to this question is based on how important it is to meeting your short term and long term professional goals. As a technologist myself, I often struggle with this question. When a new technology gains momentum and popularity, I look at it longingly like a child looks at a new shiny toy. The additional question I continually have to ask myself is do I want to learn this new technology because it’s good for me professionally or do I just think it’s cool and want to play with it. If the answer is the latter and I still want to play with it, that’s ok, as long as I know it’s play time and not career development time.
If your answer to the question was career development, then the level of knowledge needed is based on how you will be using this new-found knowledge and it’s potential impact on your future. Lastly, it will also drive your answers to the next two questions.
How much time should you spend learning this new technology? The answer to this question can be further divided into two parts; time spent at work and time spent at home. Curiously, the two extremes have the same answer. Namely, if it has no real career or business value to you, you should play with it on your own time. Conversely, if it is of great professional value to you, you should consider spending some of your personal time expanding your knowledge, with the hope of propelling your career forward more quickly.
What is the best way to acquire the needed knowledge? What I suggest is a blended approach based on the importance of the technology, your available time, and the resources at your disposal. In all cases, you should look for free, easily consumable training. This can be YouTube videos, MOOC (Massive Open Online Courses) classes, eLearning classes provided to all company employees, internal training classes provided by your employer, vendor webinars, and other similar avenues.
Regarding paid options, first look for them where your employer provides reimbursement. It’s a cost for them, but at least it’s free for you. These options include professional conferences, public technical classes and evening school eligible for tuition reimbursement. Also, if these technologies are used within your company, lobby for assignment to one of those projects.
In closing, pick the technologies you choose to learn wisely. Remember, while each new technology you learn does broaden your technical abilities, the time spent learning it creates an opportunity cost, thus, preventing you from doing other activities.
Until next time, work hard, work smart, and continue to build your professional brand.
This story, "Should I learn Java? Maybe, maybe not." was originally published by ITworld.