I decided to learn programming when I was 14. I learned a bit of programming at an afterschool course for kids and I felt I had a knack for it. I opened a computer, opened Google and dived in. I didn't look back since.
Let me tell you, it was hard. I searched through tutorials, did some excercises but mainly I didn't know what to do. I stumbled onto StackOverflow which consolidated my knowledge a bit. Through SO, I found some books to read. I somehow stumbled onto HN when looking for other reading materials. Eventually I even published a couple of porjects on Github. It was a slow painful process during which I alway felt I don't know what to do.
The lack of support was a direct result of the educational system. At school, I didn't study programming. I studied math and physics and other subjects I didn't care much for at all. Even when I finally had a chance to learn programming I already advanced far beyond the level taught at my school.
The educational system was not tailor made for me.
So, I fumbled and eventually learnt what I did. I learnt despite what I was being taught, not because of it. I can only thank my luck my school didn't put up too much of a fight when I cared more about my learning than their teaching. I ignored "the system", flipped off "the man" and like a good little anarchist went and educated myself.
I was lucky though. Not everyone get the operrtunity.
A lot of kids want to learn but don't know how. It takes a lot of blind luck to find the right resources at the right time and a lot of dedication to trudge through the hard work of teaching yourself.
I want to make that easier.
I believe any young man or women can liberate themselves from the opressive shcakels of clasical education and teach themselves what they really want to know. You can't force knowledge down their throat without breaking them first which is exactly what traditional education does.
Instead of the system breaking them, I want them to break the system.
So, these are my three tips:
- Ask - use StackOverflwo heavily. they can point you at learning resources and answer your questions.
- Read - read blogs, read Hacker News, read books, read whatever you can find on your technology of choice.
- Program - if you don't train your skills you won't become better, it's as simple as that. Program your own projects or open source ones, whatever you can get your hands on.
You found this document. You have chosen your path. Jump.
To the veterans reading this - I'm sure you're personally familliar with this story. It happened to a lot of us. I ask you to do your part and share your hard won knowledge, for the kid you used to be.