Why should I learn a new programming language?
>Learning new languages and frameworks is something that every programmer needs to do sooner or later. You don’t always have the choice of which technology you are working on, and outdated technology is often replaced by something more modern. Even if you don’t have to do it, learning a new language is worthwhile to add new tools to your toolbox. Every language and framework has its strengths and different ways to think about things, which is valuable to know even if you have only a passing knowledge of it.
On the other hand, learning a new framework because it’s the flavor of the month is not a very effective use of your time. For example, JavaScript frameworks changes very fast and there are many of them: you may wish to learn a few to get a feel for it, but you don’t need to go too deep if you’re not using them since they’ll probably change by the time you get around to using them anyway. This is the strategy I used when I learned about SignalR or when I choose a framework for my side project. When you start a new project and need to choose which tools and framework to use, you can start with the knowledge you already have and learn more as needed for the project.
At my day job, we’re building software for large organizations, so the .NET framework is the tool of choice. So, my latest learning project was getting started with Ruby on Rails since it’s a framework that’s popular with small business and they have a different way of looking at things. Also, it is dynamically typed instead of statically typed so it is different enough to be interesting to learn.
To get started fast with a new language, my favorite way to go is to follow a good tutorial and build the sample application exactly as described. You must follow the conventions and standards from the framework or language instead of going with your own opinion. The goal here is to learn something new and see how people with experience with the language write and structure their code: do not try to repeat the same old way of doing things you already know in another language. For Ruby on Rails, I followed the excellent tutorial by Michael Hartl at https://www.railstutorial.org/book/.
The point is to learn the language of course, but following a tutorial will also teach you about new tools. In the Ruby on Rails tutorial, the examples use Bootstrap as a front-end framework. I’ve come across it a few times, but I did not take the time to learn more about it before. Using it while doing the tutorial taught me about yet another framework that could come in handy with some project. I also learned a few neat CSS tricks from the examples that I did not know about. Make sure you understand what you are doing and keep your eyes open to get the most out of your learning time.
In conclusion, learning about new languages will broaden your horizons and make you a better developer in the long run, every if you don’t use every single one of those language in a “real” project. So pick any language and start hacking!