I first learned to code by being a guinea pig at a Stanford University educational research lab and a volunteer at a Silicon Valley community computer center, then self-taught on "luggable" computers and programmable pocket calculators lent to me on weekends by a generous Hewlett Packard employee, and ultimately on my high school's PDP-8. I learned about computer science, again self-taught, while working as a "research specialist" (read: peon) at the MIT AI Lab.
Notice I didn't talk about my undergraduate education, which mostly involved placing out of CS classes, so not exactly a formal education. I learned more from independent projects than anything else. Professional programming I learned on the job--you almost have to, where else are you going to collaborate with other programmers and make things bulletproof? Absolutely, there's GitHub and open source projects. For me, that came about well after I earned my "sea legs."
But enough about us old farts (and there seem to be a lot of us on Slashdot). How did you millennials learn to program? Where did you find and figure out how to use programming tools/environments? What were your first projects about: The Web, Robotics, Games, something else?
...there are a number of progressive lenses designed specifically for computer work. These have a larger center sweet spot focused at "monitor distance." My optometrist also taught me an additional trick: If you limit the focal range so infinity is not included, progressive lenses work even better for computer work. These are designed specifically for indoor "office" work. You'd wear another, less expensive, single prescription "distance" glasses for driving, etc. (keep them in your glove compartment).
My three favorite "robot stores" are
I don't work for any of these companies, but in the spirit of full disclosure, I did go to school with one of Pololu's founding partners.
You cannot have a science without measurement. -- R. W. Hamming