| I was born in Uzbekistan. I lived 22 years in Uzbekistan. My parents had no money but in 1994, my father bought me russian clone of ZX Spectrum: https://en.wikipedia.org/wiki/ZX_Spectrum https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D0%B0... Basically, in 1990s many of us, used what was popular in 1980s in UK. My father wasn't technical person but I fell in love with ZX Spectrum from day one! So I just learned it all myself. Schools were terrible, I mostly skip all classes. But ZX Spectrum is very simple machine, so it's possible for 10 year old kid to learn it without external guidance. Funny fact, I started working in Internet club in Uzbekistan in 2003 for 10 USD per month. In 2004, I discovered wonderland called Knoppix and FreeBSD. Then I learned programming in Bash. After that I learned programming in C because Kernighan and Ritchie books was so thin and at the same time all Unix/Linux was written in C. More details on how I learned programming: https://news.ycombinator.com/item?id=16508460 |
Then learned everything else on my own with whatever sources I could find (resources from the computer club, magazines, books, etc). And took part in programming contents. These were of all levels, there were town level contents, then the winners would move to county level contents then the winners going to national level. I made it to national level for years after having that ZX Spectrum clone at home. By the time I had some kind of computer class in my education path (high school then later on college) I already knew all that they were going to each. At least it made those classes easy :)