Meet the Developers: Andrew Wilcox

Name: Andrew Wilcox
Location: Florida, US
Occupation: Information Technology
IRC Nickname: awilcox
Homepage: http://www.J30AD.org/~awilcox
Blog: The Admin Life
AWOS Development

Why did you create AWOS?

I was unsatisfied with other operating system's offerings. Windows was too unstable and insecure, Linux was too bloated, and FreeBSD's community was not the most friendly. I wanted an operating system that could combine the best parts of all of those systems, namely easy for newbies like Windows, secure and reliable like FreeBSD, and friendly like Linux. And so AWOS was born.

What was AWOS like early on?

It started as "Codename: Las Vegas", or LVOS (roughly pronounced lovey-ose), sometime in 2000 or so. By 2002, I stepped up from a small 16-bit "Hello World", to a 16-bit boot sector. From there I started being intrigued by protected (32-bit) mode. After that, the A20 line and that sort of thing, I eventually got to the point where I could hack together a C kernel. I eventually abandoned the custom bootloader in favor of GRUB, but at some time I'd like to post all of my old code. It might be interesting to somebody. Anyway, that's when I started frequenting #OSDev on the WyldRyde IRC network. I made some lasting friendships. I really do enjoy the social aspect of having open-source projects. But I digress. From 0.0.2 to 0.0.4, it was called "AW-DOS", and based heavily on FreeBSD. But I quickly found that FreeBSD's malloc, mmap and the like were extremely complex, and decided to scrap that code. By 0.0.7, I had rudimentary PCI support, and thought about hacking some hard disk and task support in right there. But the code was very messy and there was a little too much "kludgey" (i.e. quick-and-dirty) code. I rewrote it for 0.0.8, in early 2006, but that was never released due to some nasty linker errors. Anyway, since then it's been nice. I've made a lot of new friends and professional contacts in this project. Well enough of my ramblings. Next question.

How much time do you spend working on AWOS?

A lot less than I should, to be honest. It used to be the only thing I worked on (20+ hours a week) but now I have so many other projects and other things going on that I don't really spend a lot of time on it anymore. That's changing, though. I'm slowly getting back in to being a semi-fulltime developer again.

Other projects?

Yes. I administrate a couple networks, and I've been contributing to another project dear to my heart more lately. I'm also working on a yet-to-be released open-source weather program.

Do you have any plans for new features in 0.1.0?

Yes. I'd like SATA support, and a fully-functional user mode.

What motivates you to work on AWOS?

The community. Around Christmas 2006 I spent nearly a week away from the project, and when I logged back on to IRC everyone had thought I died or stopped caring or something. I certainly don't want people to think I've stopped caring. And I like to see other people enjoying my code, even though in these early stages it isn't all that enjoyable. :)

Which text editor do you use and why?

vim. Primarily because I like it, I know all the keyboard shortcuts by heart, and it has syntax highlighting. And it isn't a whole operating system like emacs.

What distribution do you use and why?

I use Ubuntu on one of my workstations. It got an eWEEK Award for Best Desktop Linux Distro, so I decided to try it. It's not nearly as bad as everyone makes it out to be. I use NetBSD on my older boxes simply because even on my Pentium/100 with 40 megs of RAM, I still have free memory. And it isn't all that bloated.

What are your computer's specs? Does it have a name?

Laptop: Celeron 1.6GHz, 40GB HDD, 448MB RAM, failing DVD drive. I call her "Lappy". Primary desktop: Celeron 500MHz, 100GB HDD, 256MB RAM, DVD+RW drive and 2nd CD drive. It works FINE under Linux 2.6 and fvwm. Test box 1: Pentium 100MHz, 3GB HDD, 40MB RAM, CD drive that can't read burned discs. Great little test box, runs NetBSD. Test box 2: Intel486 DX2 50MHz, 500MB HDD, 24MB RAM, no CD drive. Runs DOS. May run MINIX some day. I have miscellaneous other test boxes, including an Intel 8088 I'm proud of.