http://sheeped.com/2007/02/03/how-i-taught-myself-program...
Rated • 9 reviews • programming • sheeped.com
From the page: "This is the tale of how I wanted to create my own computer game, how I taught myself programming by doing it (not the other way around), and why I think you should do the same.
My Story
My first exposure to computer programming was back when I was about 12. Some of the cool boys at school (you know how it%u2019s like) were playing a fantasy game with each other, all in text. They called it a %u201CMUD%u201C, one of the oldest genres of computer games. I grew curious and it didn%u2019t take long before I was sat at home, religiously emerged in text worlds, rather than graphical games like Quake and Counter-Strike (both wildly popular back then, of course).
Briefly about MUDs: If you%u2019ve never heard of or played MUDs, I strongly encourage you to give them a try. They may not have graphics, but that is exactly what gives them power. They%u2019re like books %u2014 if you have a decent imagination, you don%u2019t need graphics. In fact, I%u2019d play a MUD over a game with crappy graphics any day. MUDs are also incredibly educational %u2014 if I hadn%u2019t played MUDs, I wouldn%u2019t be speaking nor writing English nearly as well as I do today (I%u2019m not a native speaker), and I probably wouldn%u2019t know much about programming either. If you%u2019re still not curious, there%u2019s also the fact that about half of MUD players are female (*wink*).
Anyway, after a while I decided I wanted to create my own game. I downloaded a C codebase and started hacking away at the source, experimenting and learning the basics of programming (I was completely clueless before MUDs). Creating a game was no longer a mere dream %u2014 I was doing it, even though I was quite a newbie. I was in the matrix.
Eventually, my little project evolved into more than just a spare-time thing and was serving a couple thousand players, admittedly not simultaneously but I was still quite impressed, and I had learned many a valuable lesson about everything from love to programming.
I took the plunge into the world of programming without reading any books on the subject. I am a person who learns best from practice, so it wasn%u2019t all that bad. I bent, I broke and I played with the code and eventually I learned all about functions, pointers, memory management, and all the other fun feats of C. The only downside to this was that I was not learning contemporary programming languages and methods. Until recently, that has been the single biggest reason why I haven%u2019t recommended that anyone interested in programming start out by trying to create their own MUD. MUD codebases are old%u2026 Well, most of them, anyway."

