Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away. — Antoine de Saint-Exupery.
Despite nowadays trends in terms of technologies, we are still lacking a concise, yet effective roadmap to succeed in the world of Web Development. In this modern world, developers are now in the constant pursuit of happiness when it comes to manage and master a Programming Language or library. They could have completed the latest ReactJS course today but tomorrow this can certainly begin its inevitable path to the land of obsolete since what is learned today as new becomes old the next day or so.
This is without any particular doubt, a wacky race kind of thing, where developers cannot simply assume that they’ve had enough of anything. Our knowledge could certainly be paused but not the technology evolution that is going in an exacerbated curve of improvements that one cannot cope with.
During the time that I have experienced this magnificent, and at times sort of frightening and spooky universe of new Programming Languages, I've noticed that some folks have unwisely chosen to marry one single programming language and a unique framework to solve their issues caring less about learning a second or third one since they consider that what they are currently using is sufficient to get by and solve the day for them as developers.
The question arises when certain developers believe that we should only stick to a monogamous relationship with one single language, library or framework during our entire career’s lifetime to develop software or web applications. This might seem slightly exaggerated but there are some good coders using the same tools over and over again just because they can’t abdicate or merely renounce to it after they have completed their projects.
Note: If you are a newbie to this tragic world of zeroes and ones, I definitely encourage you to start your learning path with only one programming language. As a coder, you must keep plugging away at your analytical and logical skills, especially if you are aiming for success in this field.
I firmly believe that in order to forge a successful career as a developer, we should sharpen our problem solving skills to find feasible solutions and use whatever tool is best for our workload to be completed to a very high standard quality and in a timely manner whenever possible.
We ought to use the resources or tools we master the most to solve our assigned task. If this implies using our primary or favorite language, then that’s perfect, but if it involves some extra tools or even other languages as support for the main one, as is happen very often, the best thing to do is to simply learn what is required in order to successfully complete our project.
I certainly don’t find anything wrong with learning a second or third programming language, library or framework as a preparation for future projects or simply for professionalism matters and personal grow.
This doesn’t mean that I should go on a crazy wild goose chase trying to master another language that will bring no benefits to my professional or personal development, or because I was told to learn it to be in the same level and be more competitive with my work colleagues.
With all this in mind, I wanted it to know what other developers think of this so I started gathering the opinion of several colleagues and friends on this matter by asking them the simple but soon to be classic question:
Should developers stick to one Programming Language?
Antonio Flores, who works as a Full stack web developer affirms that as long as you have fundamentals in computer programming, you should be able to learn any language in a very short period of time. However, developers need to pick up one language as their primary choice and try to master as much as possible to use it when it comes to any project development.
One important aspect of engineering is to concentrate in finding a solution. Developers and engineers should investigate alternative ways of getting and test these solutions since this is a basic part of engineering. There are many tools and languages such as Java, PHP, Python, Ruby as object-oriented languages, plus other functional programming languages including COBOL, therefore, developers shouldn’t stick only to one programming language.
Computer Engineer Guillermo Corea believes that the more knowledge and abilities you have, the better. This world is very demanding thus we have to be prepared, developing our professional and personal skills. If you want to be the best in this demanding world you have to work hard, you have to study and learn as much code as you can.
The fact that you never stop learning becomes fundamental to life and mostly for self development. This is the difference between a good employee and an outstanding employee or the same happens between an average and an exemplary person. Scientists think that learning new programming languages help brain development making the individual smarter as well. When you only focus in one thing, you’re limiting your knowledge and putting boundaries to an amount of great growth possibilities in your career’s path.
Systems Engineer Biddy Clark Gayle attest to believe that learning several of them at once can be tricky at the beginning, however, learning a second or a third programming language is certainly a benefit for personal growth or simply professionalism and job opportunities. If doing this is within the developers capabilities, financially speaking, and it is part of their goals or if something really important for them, then they should simply go for it.
For Support Escalation Engineer David Arauz, the more you can learn the better but this has to be done having 3 things in mind: data science, machine learning and deep learning. This is ultimate goal specially for scalability when writing code, routines and subroutines that optimize themselves, call it backend or front end. This trend will vary on small and midsize businesses but it’s just something to keep in mind as well going full circle, content market segments or future areas of diversification in businesses and more.
There are a ton of websites running in old CMS or deprecated frameworks and most of them are poorly documented and without any particular reason as to why they still use them. Perhaps because it is too expensive to migrate or they run an old and huge DB that’s a pain in the butt to call to for queries leaving you with a nightmare backend wise speaking or they simply had a contract.
We all know there are crappy coders everywhere but in that laziness there’s structure in the end. Project Managers can use Scrum or any other workflow framework to improve productivity. Sometimes it’s just about getting together with the UX team, backend and front end coders and QA team to share the patterns found for best practices.
There may be some legwork at the beginning but based on that, improve in each iteration to create a natural workflow about what can really be migrated or if it’s a ground up thing then truly understand the client's intent and vision and posible diversification as a web development gives you identity.
There are good coders attached to an specific programming language but I’d say don’t get stuck in one thing, open your mind to other options and try to go full circle, most likely you will work in a team with other people or even start your own shop and getting out of that comfort zone will allow you to be a better team player, understand the why of things, being a leader and someone that focuses on holistic growth.
What about you? Do you mind sharing your input in regards to this question? Would you stick to one Programming Language or are you ready to take the next step and start walking through the valley of a new one? Please don’t be shy and tell us more about it in the comments below.
Well, we’ve come to an end. If you found this article helpful, please below as much as you like. You can also follow me and if you have any doubts, concerns or simply wanna say something, feel free to comment! I’d be happy to read your feedbacks! 🙂
Thank you very much for reading this article, see you next time!