In beginning of 1998 I was getting increasingly fed up with being stuck in a small apartment with a baby, and I had a nice computer I got for christmas and free internet access from the college I was attempting to attend. So I jumped online headfirst, and in no time my dad had set up a server for me to use - running off his computer on his brand new cable modem, and started up my own website.
I've always been one of those people who learns best by teaching themself. Probably picked up over years of being bored out of my skull at school. In no time I had mastered html and was whining about putting up a forum on my new site. So my dad mentioned installing php on the server. But he didn't want to do it.
And so started my love affair with linux. I taught myself about ssh and compiling and soon was installing the brand new php4 and various web apps. I used phpbb when the default board had a black background and phpnuke before it became a HUGE steaming mass of...well, you know.
And as I used these apps I started to dissect them, wanting more. I discovered that php-nuke code was a MESS, and ran far away from it. I switched to a basic phpbb board after my first brush with scripts, yapbb, turned all weird and hard to upgrade on me.
And I learned to program. Now, there are those that bitch and moan about "php isn't a real programming language" blah blah blah. But my personal opinion is that php gets a bad rap because it's easy to start with. Any idiot can have a page up and running in no time, but just like anything else, good php scripters are few and far between.
So I learned about programming, OO, design patterns, exceptions. I watched the development of php5 from the beginning. I went through a divorce, a marriage, the birth of three children. And still my website lived on, my brainchild for testing all my php skills.
And when php5 went live, I followed. I've never been afraid of upgrades. Maybe it's because stability is not something I ever worry about too much. Probably because I code on windows and publish on linux - if it can run on windows without breaking, it usually runs on linux uber smoothly.
It's amazing to me to look back and be able to say I've been coding php since 2000, that's five years now. I've also picked up some C, Java, and a touch of Perl along the way, but quite frankly, I can do it all in php so I do it all in php. I briefly mucked around with the .net stuff at work for a while, but ran far away after realizing that simple things were way too complex.
And maybe, at heart, that's why I really love php. Simple things are simple, complex things are complex, and if you whine enough they'll add it in, if you give good bug reports it will get fixed. Maybe that's just open source in general, I don't know, I don't spend too much time beyond fedora, apache and php. Some might argue that makes me an idiot or narrow. But quite frankly, they're all I want and need. I'm too lazy to learn five or six languages, when all I want to do is write webpages and occasionally manage a quickie cli script.
At the end of the day, when I look at a class I've written or a page I've designed, it's nice to look back at the wayback machine and laugh at my own first steps onto the web and discover how much I've change. How anal I've become about good html, how anal I've become in my own php coding style, how spaghetti code has become hierarchies of classes, how I actually know what the decorator pattern is and when to use it. It's amazing how much you can learn when you WANT to learn. Five years ago my experience with computers involved playing games and typing up papers in word. Now I've built and installed the ones running in my house, all four of them, - I didn't do much more to the fifth one, the laptop, than upgrade memory. I follow slashdot and enjoy groklaw, know how to submit bugs and why open source is a "good thing".
I guess in the end, looking back makes me realize how much computers have become part of my life, and I'd like to thank everyone who's written an article I've read, or worked on the projects I use, or put up really bad webpages that show you what NOT to do. To all of you all over the world who are members of the open source community. Thanks.