Please, Learn All the Things
https://news.ycombinator.com/item?id=3977297“Learn everything you can, anytime you can, from anyone you can - there will always come a time when you will be grateful you did.” - Sarah Caldwell
I am a specialist (programmer), and a jack of all trades. In the last two month my garbage disposal broke, my mailbox was ran over by a car, and my lawn welcomed its new dandelion overlords. I have managed to replace my garbage disposal without being a plumber, replace my mailbox without reading the manual, and overthrow those fascist dandelions without being a professional landscaper.
I remember once received about 25 'broken' monitors from a hospital. I was able to fix everyone (with the exception of the broken screens) by simply knowing how to identify and replace broken capacitors, something I was taught a while back with every intention of becoming the best electrical engineer I could be.
Programming is my primary passion and profession. My secondary profession is cooking Thai food. My secondary passion, learning.
I am a professional programmer, who just recently turned 21, with no degree. I can say I am no professional landscaper, no plumber, and definitely no electrical engineer. I can say though, that at each opportunity I was given to learn something about plumbing, programming, or electrical engineering, I have taken and benefited.
To the argument that is currently going on on whether or not everyone should learn to program, I say that neither side is right, and even the argument itself is wrong.
Strive to be the best programmer/electrical engineer/cook/plumber/landscaper/you name it you can be, and you will benefit... always.
So to anyone anywhere, I say learn everything everywhere. Not just programming or plumbing, but everything at every opportunity.