Regardless of what field you are in, or what you do for a living, one should always draw in knowledge from other disciplines and make a fair attempt to relate its practices to what you are doing. Studying mathematics, science, and english has helped me greatly in my programming career. It is not always computers, processes, threads, and programming language syntax all day. I make my fair attempts to learn about new and useful subject every single day. I feel that having a broad range of knowledge can only help you become a smarter and more professional individual.
When I say that I love to learn about new subject, I am not suggesting that I nor anybody else just read an article and assume that it is sufficient and that they have become a de facto master on said subject. I recommend tapping into your own bit of insanity and OCD and becoming temporarily obsessed with a subject. Learn the who, what, how, and why around whatever it is that you are researching with particular emphasis on the how and why. With all of that said, here is where I will state my case of why I believe that everyone should learn to program.
Not everyone in this world will become a great athlete, a doctor, a great chef, or a great programmer. This does not however mean that we should not play sports, learn about medicine, learn to have some skills in the kitchen, or make an attempt to program even at a low level. Software is something that surrounds us everywhere. It is all around your house, your car, and for the majority of us, our careers. At some point every single day a majority of our population uses some kind of software to make some task more automated or efficient. I think too many people in this world take that for granted and never make attempts to understand how or why software works.
Learning to program is not something simple, and it will cause frequent fits of rage, and shaking of fists at a computer monitor, but it is all worth it. Even if you do not plan on becoming a full time software engineer, it can teach you a lot about logic, and problem solving. Additionally, I believe that people that program are many times more self sufficient and able to research at a higher level than people that have never tried it. Learning to program forces you to move into the unknown and teach yourself a lot. There are a lot of resources out there that can help you solve your problem, but it is ultimately up to you to start. If you have children, having them learn to program is a great way to open their minds to concepts that will not only make them smarter, but give them capabilities to teach themselves things which is an invaluable attribute the younger someone is.
If you feel that it is the time to unlock your potential by making the leap into educating yourself about learning to program, I suggest that you do not hesitate on taking action on that idea. As a Ruby on Rails developer, I lean in the direction of learning Ruby, but learning any programming language is great. Below are some great resources to set you on the path to learning to code. If you decide to go on this journey, I urge you to take a stand a spread the word. A world with smarter people is a better world.
NOTE: In this particular case, given that the target audience may not know how to program in any sense, I recommend Ruby since it is very easy to read and allows for the user to get to a success path a little more quickly. While on this journey should you have questions or need help, I extend my personal assistance to you. Feel free to message me. No guarantees on how fast my replies are, but I will help my followers as time allows.
- Learn to Program
- Online course by One Month
- Agile Web Development with Rails 4 (Shopping Cart Book)
- The Rails 4 Way The Well-Grounded Rubyist