Maybe it's that I never developed software. I'm not a fan of developing. It has been my job since the beginning to fix broken programs, make things run that didn't want to, and sometimes to beat hardware into shape.
When I started out, I always felt there was more that the systems I was on could be doing that they weren't doing. This was in the days before any sort of pre-emptive multi-tasking on the smaller systems. I'd had some exposure to a refrigerator-sized "mini computer" at a family friend's business. It ran DG/UX and was a white, blue and black appliance that I was positive could run the world if I just knew what to tell it. The mystery in the boxes...the limitations of the operating environments and the applications I was running...was what got me into hacking.
The machines just felt like they could do more, should do more. I'd dial in and get to a UNIX prompt on a system, and know that the system had capabilities that it wasn't advertising, and I'd do what I could to reveal what it was capable of.
Then, my first Mac (and associated Apple Cat modem), and finally a DOS box that ran Windows. Having experienced the relatively slow but stable and graphically impressive Mac, the first Windows box I touched made me laugh.
I was working at Western Bank, and I helped run a small Novell Netware 3.1 network as well as a set of machines that were responsible for GIS and Rbase duties. I spent most of my time in DOS, only going in to Windows when it could not be avoided. I became a master at tuning the DOS memory stack. I ran applications in DOS that had their own QEMM-style memory drivers, so getting windows to run meant rebooting and choosing a different option from my CHOICE statement in autoexec.bat, getting a machine state that would support Windows for Workgroups 3.11, the Netware client, a TN3270 reflector, and whatever app I needed.
Getting all of that to work took me away from exploration and into actual production: everything I'd learned about learning systems, everything I'd become proficient at from a systems and troubleshooting perspective became my daily life. I enhanced my capability by simply getting the crappy software I had to actually work the way God and billg intended.
The tricks we used were incredible. Getting a system to boot with a SCSI drive, a custom Canopus video card with bus mouse and associated drivers, a SCSI CD-ROM, a serial plotter and all the associated Netware client pieces took more basic system skills than anyone today is required to have. I remember supporting secretaries and bank tellers who could troubleshoot memory management, because it was a component of using the systems. Each hive in the bank had at least one computer "expert" who could be counted on to handle the basics when someone else in the hive lost connectivity or couldn't get a display to come up.
You had to know your system to use it. You had to be familiar with the ins and outs, and if you weren't you were annoyed, non-productive, and at the mercy of guys like me.
Compare that early PC network to the UNIX system that was in place, which worked at a level that separated the user from the underlying system. The users were presented with their application, with whatever windowing or text-based menuing was involved. The user never had to worry about the steamengine in the next room that ran their system, or the gnomes and militiamen who kept it alive and kicking. I had UNIX users who didn't know that their dumb terminal was not a computer.
They didn't need to know that. Yet they knew how to debug IRQ issues on their PCs, or how to get their Word Perfect 5.1 macro to work on their co-worker's machine.
What Apple did was, they made the systems approachable, usable by the public. They managed to have the same sort of invisibility between OS and hardware by maintaining tight control over hard and soft development. Their systems worked, and worked so well the user was rarely aware of things like memory or drivers. Then they made some poor business decisions that took them out of the realm of business computing. What Microsoft did was, they made their software as approachable as possible, but their development was done from a business and market angle. They didn't have the ties to hardware or even the ability to require much of anything in the early days, the days before the Windows Logo Certification. They had to sort it out on the hardware in the customer's hands. They'd throw it out there, sending copies to the hardware companies: hey, we can all sell more if you get this to work! The goal was sales and saturation, and not technology per se. They'd put their products out there and let the installation base handle the rest.
This required Us. Me. The users and the admins. The system operators. We had to work out the detail of how X would work with Y and Z. No-one else could do it for us, and there certainly weren't wizards or googles or forums on the internet that you could offload your thinking onto. You either knew how to make it sing (or at least squeak) or you called someone who did.
So my experience went from hacking (learning how to use systems for my own means and curiosity), to systems operation, and learning how to use the system for business. Having to learn the intricacies of a large pool of hardware, peripherals, and applications left me better and better equipped as time went on. I once got a 486DX running windows 3.12 to talk to a scsi scanner, a scsi hard drive, the first Sound Blaster card, a plotter, a novell network using 10 base 2, and the aforementioned Canopus video card, all with 48k still free in real memory. No one else came close.
Because of all of that, now nothing surprises me. I still don't have any zealotry; I don't care what the system is running or why it is running it. I just know that, regardless of what the best tool for the job is or who coded what, I have to make it all work. And that gray area of incompatibility and bad hacks is what made me, and what made that was Microsoft.
If it weren't for Bill marketing the technology before perfecting it, I'd probably be a coal miner.
|< Caffeine Sensitivity | Another unsubstantiated intarwebs parable? >|