Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Learning to Live With Language FOMO

DZone's Guide to

Learning to Live With Language FOMO

I was so busy questioning how I used code to solve problems that I never stopped to ask myself what kinds of problems I wanted to solve.

· Java Zone
Free Resource

Learn how our document data model can map directly to how you program your app, and native database features like secondary indexes, geospatial and text search give you full access to your data. Brought to you in partnership with MongoDB.

Sitting in a room full of functional programmers, I feel somewhat out of my depth. Monads this, tail recursion optimization that, and immutability everywhere. Suddenly using plain old “if” statements makes me obsolete.

Reading blog posts about the latest (OK, latest in my world) languages like Kotlin, Scala, and Groovy, and I feel like I slept through some kind of revolution. Elimination of NPEs this and metaprogramming that. Now, every time I find myself adding a null checking assertion at the start of my method, I feel like shaking my fists at the sky crying, “Why doesn’t the compiler do this for me!”

So, I dig into tutorials, desperately trying to understand these new paradigms, convinced that I am one language swap away from reaching development nirvana. If only I could be productive in Kotlin or learn how to create the perfect React build stack, then I would be a happy and productive developer.

It is only years later that I manage to diagnose myself as suffering from a chronic case of language FOMO. I have been so busy questioning how I use code to solve problems that I never stopped and asked myself what kinds of problems I actually wanted to solve.

I like to think of myself as a somewhat competent Java developer, and when asked to deliver a solution, I have finally reached a point in my career where I can map the solution to a design pattern and a popular library that will give me a solid platform to build on. It is actually rare that I find Java, as a language or an ecosystem, to be the thing that holds me back.

So what problems to I want to solve? That is a surprisingly difficult question to answer. It was so much easier when I was focused on learning a new syntax or trawling through yet another functional programming blog post. At least then I knew what I didn’t know.

I’ve never had reason to use the phrase “existential crisis” before, but I feel like it is apt in this situation. Are there big problems that I can actually help solve with code? Could I legitimately contribute in a meaningful way to solving global warming by volunteering some coding skills? Is it time to take a gap year and invest in that idea I had for an app that tells you if you should put the recycling bin out this week? Do aid organizations need an app developed? Is teaching kids to code something I could help with? Is contributing to an open source project my calling?

I have few answers, but at least it is clear now that language FOMO is not worth the angst that I let it create. It is time to focus less on what language I want to use and focus more on what problems I want to solve.

Discover when your data grows or your application performance demands increase, MongoDB Atlas allows you to scale out your deployment with an automated sharding process that ensures zero application downtime. Brought to you in partnership with MongoDB.

Topics:
java ,functional programming ,problem solving

Published at DZone with permission of Matthew Casperson, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

THE DZONE NEWSLETTER

Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

X

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}