These are the ramblings of a Hovis-deprived British expat, known to most as Oliver Smith but to a select few as “kfsone” (which isn’t pronounced “KiF Sony”, but “K.F.S.1”). In 2002 I came to America to work for WWII Online in Texas, but in 2012 I bade farewell to Cornered Rat Studios and helped Blizzard Entertainment to unleash the Pandas.
Online games have always been a passion of mine, and I try to blot out the memory of the bleak period between where I was born and folks finally started making them happen.
Around 1983, aged 12, I declared my intention to learn how to write controller software for robots for the day when NASA would send robots to Mars. Erh, and then I discovered Essex MUD, and changed my mind. Lacking the funds to buy a PDP or anything near as powerful, I set about learning to write a MUD system myself, and as soon as I got a machine powerful, writing a multi-tasking operating system to run it. Richard Bartle was kind enough not to laugh out loud when I was given the opportunity to show it to him, aged 14.
By the age of 15 I’d realized that these Games-With-Lots-Of-People-In-At-The-Same-Time would need better modems or something. So I got into bulletin boards, created some networking software for BBS-PC!, and then discovered FidoNet, and started a project with a consortium of international sysops working on a design for an Amiga-based packet switched network over which BBSs could run.
Fortunately I stumbled on KA9Q, which although I didn’t understand, left me confident that by the time I was ready to work on games, there’d be a way for us all to communicate.
Then I sorta screwed up. My college lecturer defied me to find a job as a programmer with a real company, and I did. I spent the next 4 years as an on-site, bespoke, business systems programmer.
Wondering if my network was ready yet, in 1992 I started looking into where this “Internet” thing was, that I’d heard mention of during my look at KA9Q back in 88. I managed to get the editor of PC World on the phone, who told me a company called Demon was launching its Internet business that very day. It was two days before I could get through to them, and when I did, I had a plan in mind. I told the guy on the phone that I had a MUD system on the Amiga that I wanted to make available on their “FPT” site, and could he tell me where to find the protocol definitions for TCP/IP so I could write a stack for the Amiga?
Demon started as a software company. A month later I was working there as a business systems programmer, and less than a week later was actively programming on a couple of accounts, and by the end of the month the lead programmer on those accounts.
Somewhere during the next year I learned Perl, and after a year I moved into the Internet side of the company and began an 8 year journey through networking, management, etc.
I discovered WarBirds while at Demon, an online WWII-based flying game not dissimilar to AirWarrior, and not long after (this was circa 95-96) created “WarBirds.org”, which I am told was one of the first “fan portal” sites, featuring email redirects, web URL redirects, squad mailing lists, etc, all for free.
Online games were finally starting to emerge. I never bothered with UO, I was waiting for 3D. I got sucked into EQ, and then I went to just about every other 3DMMO that came out.
On the one hand I was humbled by the challenges and obstacles that EQ, DAoC, etc were overcoming, but on the other hand I could also understand what they were doing, and often why either technically or in dev terms. Nearly every project I beta tested I wound up having regular direct/personal contact with members of the dev team, and even developed toolsets for a couple of projects, like the DAoC Player Wishlist, which earned me an ecstatic call from Mark Jacobs.
The Internet/InterNIC’s Mark Kosters had tried to hire me for SAIC, but I was a couple years of experience short of getting the work permit. I left Demon and went to work for a bunch of media companies, including The Guardian.
During this time I’d been playing and testing WWII Online, and had gotten bold with my combined development and gaming experience, and had excelled at finding obscure bugs, suggesting solutions to which the coders frequently said “Huh, that’ll work”, and on several occasions predicting dire outcomes of paths the company was choosing which proved first to be wrong and then after the patch-buzz had died down, to be horribly accurate.
Finally (and frustratingly, on the first day of a new job), Chris “MO” Sherland challenged me to put my code where my mouth was. I flew out, met the gang, seemed to get the team and the way things were done, asked for a salary lower than the amount of tax I was paying in the UK, and got the job.
My experience has lead me to some unusual programming practices, an assortment of which I picked up by not just fixing code but asking “why did they get this wrong”? and “why wasn’t this noticed” and I’ve learned to curb my natural “just rattle it out” instincts in favor of writing code that will take longer to write, but much less time to debug.
I like to think the proof behind the theory lies in the projects I’ve left behind: The software that ran the business at my first job for 15+ years after I left, without any maintenance; the re-factored thttpd that ran Demon Internet’s customer-websites for so many years; and the WWII Online game servers which continually increased in complexity while gaining stability, manageability and maintainability and, so far as I know, are being run and operated without great difficulty by a non-engineering team, something unimaginable with the systems I started with.
15 Comments
hey, just wanted to say good job. Having been involved in computers for a very long time. Even developed some wierd stuff as hobby (used mux interupt with asm/c++ to allow dos program to print from buffer while you typed more stuff, was my claim to fame) folks said “you cant do that” (multitasking in its infancy). I can appreciate the daunting task you have. I’ve played em all, compuserve megawars series (vt terminal shootem up online) 1983 Ironicly I ended up maintaining those old vax like servers in 1999.. air warrior, half-life mods, u name it. WW2 is certainly a very well thought out piece. Im amazed at some of the details you had to address. One request get us some torpedo boats so us noobs can at least put up a fight with dd’s!
Oh take a real vacation…
jaydog12 , dam which coke can is the fresh one….
You forgot to mention the gyroscopes.
Wow that article makes for a good cv mate. Interesting read, thank you.
God I loved Air Warrior. Good read!
You might like this article KFS1:
“Reducing Lag Time in Online Games” … using neural nets:
http://www.technologyreview.com/Infotech/19588/page1/
Hey there, Kentucky Fried Systems. Remember interactive gaming back in ’93-’94? You had to open up the office after hours.
Looks like you made it from Finchley to Texas (must be the Country music), I got no further than Watford. Where you at spiritually, I wonder?
Hovis asked me to tell you that it misses you too.
Do you know what’s going on with Battleground Europe ? Is that project down ? Sites and servers doesn’t work.
Thanks for any info
Mike
Uhm, you might wanna check your internet connection. I was playing just now.
wow, that’s really strange. I can’t access battlegroundeurope.com, battleground-europe.com, my client don’t wants to find server…
but thanks for help anyway, now i know that everything’s fine with WW2BE
Mike
hey, just wanted to say good job. Having been involved in computers for a very long time. Even developed some wierd stuff as hobby (used mux interupt with asm/c++ to allow dos program to print from buffer while you typed more stuff, was my claim to fame) folks said “you cant do that” (multitasking in its infancy). I can appreciate the daunting task you have. I’ve played em all, compuserve megawars series (vt terminal shootem up online) 1983 Ironicly I ended up maintaining those old vax like servers in 1999.. air warrior, half-life mods, u name it. WW2 is certainly a very well thought out piece. Im amazed at some of the details you had to address. One request get us some torpedo boats so us noobs can at least put up a fight with dd’s! Oh take a real vacation… jaydog12 , dam which coke can is the fresh one….
+1
Aha! Found you! (Actually while searching for “Geoff (DocDoom) Evans”, but that’s okay.)
Funny, interesting read. “Games-With-Lots-Of-People-In-At-The-Same-Time ” … wow, what a concept!
I’ve played my share of WWIIOL too, back in The Day (pushing a Wermacht PAK around and being stabbed in the back by thrice-damned British infantry); just not much lately (system as always is too damned obsolete: good enough for WoW, but not for WWIIOL, how things have changed).
So you get the credit for Warbirds.org? My my my … I dearly loved the years of contributing to the Wingless Cafe forum, I did.
Anyway, just wanted to say howdy. And to hope you’re doing well.
Toad
Hey, Toad :)
WarBirds.org was a (free) service to WarBirds players and sites – one of the services being a WarBirds.org URL – Wingless Cafe wasn’t a part of WBO, it just had a WBO address thru the service :) So I can’t take credit for AWG / WC :)
http://web.archive.org/web/19981203153722/about.warbirds.org/
(Wow – is that really 12 years ago?!?)
Good to see ya :)
Admiring the persistence you put into your site and detailed information you present. It’s good to come across a blog every once in a while that isn’t the same old rehashed information. Great read! I’ve saved your site and I’m adding your RSS feeds to my Google account.
I crossed paths with you more than a time or two in WWIIonline – I was ‘Malus’ in the 3CD – and who knows, possibly crossed your path in EQ and DAOC as well? One never knows.
Your story sounds very familiar to me…I started programming in 1981 (fortran and BASIC in the first programming class offered at my high school) at 16, having been playing video games at the arcade for a number of years and wanting to understand how they ticked. Got my first computer (a TI 99a) and began trying to build a sprite based game…but took a detour after graduation from high school – and joined the U.S. AirForce – where I was stationed in the UK from 1983 to ’85 – RAF Alconbury to be precise. Came back to the states, and ended up married with children in short order, where I joined the Army National Guard and became a cavalry scout, and later an infantryman – very practical occupations for later playing WWIIonline I think. Left military service after 12 years.
Played a lot of board games over that time, and ended up in college first pursuing an aviation career (Private Pilot w/145 hours logged), and switched to computers when I determined that an instructor pilot’s salary wouldn’t feed my family, and correctly pursued a BS in Computer Science. Involved in Fidonet/BBS scene at that time, and got into Unix and client/server computing as part of my education. Learned perl, and various other scripting languages … c, c++, java, etc… then discovered python, and never looked back – though I am looking forward to ‘go’ language today as a better systems programming alternative to c on 64 bit machines. I finally settled down working for a telecom company and through the years of building noddy little programs from my youth to today, have developed an affinity for the KISS principle ( I can relate to your recognition that it’s better “writing code that will take longer to write, but much less time to debug..”, a habit I try to instill in my developers and designers today – and some have actually started *listening!*).
I’ve been a system admin (unix/linux), technical support, engineer (network planning & capacity management), programmer/developer, and architect. I run a team of architects and developers today and getting close to retirement – so I’ll be pursing my own designs when that time comes (some software development [scratching some itches], drone pilot, and writer is the plan for now).
Anyway – I liked your articles/blog – and wanted to say hello.
Trackbacks and Pingbacks
[…] ist wohl eines der skurrillsten Vidoes aus den letzten Tagen , aufgenommen von Kfs1 , dem Server Progammierer von Cornered Rat […]