Thursday, October 06, 2011

Steve Jobs' impact on my life

I'm sure there will lots of wailing and gnashing of teeth today over Steve Jobs death.  I am very sad about it and I feel his loss personally.  A friend of mine suggested it is like Alfred Nobel, who continues to have an effect on lives long after his death, but very few people can claim he had an effect on them personally.  However, I actually do claim Steve Jobs affected me personally, and perhaps more importantly, professionally.  Please don't dismiss me as an iFanboy, this isn't that story.

I was in sixth grade at Belvedere Elementary school in Omaha, Nebraska.  Another teacher entered our classroom and asked for me.  Huh?  What had I done?  She took me out of class and led me down the hall to the "computer room" which was outfitted with a dozen or so Apple II computers.  She then asked me to show her students how to use them.  In a flash, I realized that not everyone got it the way I did.  From that moment on I knew I wanted to work with computers.

In Jr. High, there was again a room full of Apple II computers.  I tried to get as much time on them as I could.  The only class that was available was this wierd hybrid of Typing/Computer Education.  For 3 days each week we learned to type, but NOT on the elegant computers with their magical green screens, but on manual typewriters.  The other two days each week we got to use the computers, complete with writing programs in BASIC and carrying around my very own "password" protected 5.25" floppy disc.  Oh how I resented those days we wasted pounding away on manual typewriters.  Naturally, I joined the Computer Club, which was really just an excuse to play rudamentary games.

In high school the Computer Lab had a bunch of Apple IIs, a few Macs, and even an Apple IIgs.  The IIs were familiar, but started to feel dated, and the Macs were very cool, but too "simple" somehow, so I ignored them.  Besides, I only had eyes for the room full of IBM Model 30s hooked together on a Novell network.  Ah, this was powerful, shared drives and text messaging between workstations!  (Hey, give me a break, I only thought I knew everything.)

Now on to college.  As I mentioned above, I never had any doubt that I would study computers.  There was a time when I thought I might want to build them rather than program them, however my first electronics class cured me of that!  Programming was where it was at.  The first few classes I had were on familiar IBM PCs, but soon they let us loose on the mainframe, a VAX (not a big one, but still a HUGE computer compared to my previous experience).  With this came terminals with a graphical interface, which made it easy to write code in one window and execute it in another.  Revolutionary!

Now I realize I haven't mentioned Steve Jobs in the last few paragraphs, so if you are still with me, thank you, I'm getting back to him soon.  The school I attended, the Rose-Hulman Institute of Technology, created an innovative program in 1990 called IFYCSEM in which first year students were taught an "Integrated Curriculum" where they had a computer at their desk in every classroom as a teaching aid, to work their problem sets, and even to take tests.  Here's where Steve Jobs comes back into the picture.  The computers all the Freshmen used were NeXT computers.  At this time, many universities had NeXT computers, some even had as many as 5!  Rose-Hulman had over 100!!  That meant they were plentiful enough to be usable by students besides those in IFYCSEM, namely, me.

To this point, I enjoyed working on the VAX, and had also been exposed to networked Sun 360s and was conversant in *nix OSes.  The Sun computers were nice, but I always felt XWindows was klunky.  When I sat down at the NeXT, with its sleek graphcs, integrated Workspace, a suite of development tools, and powerful BSD Unix core, I was hooked.  I had actually disdained the Mac to this point as not being for Power Users, because it was too hard to get under the hood.  It was great if you liked drawing pretty pictures or writing a newsletter, but beyond that I didn't see the point.  But, here was a computer with all the pizzaz of the Mac, and all the power I could want under the hood, easily accessed by launching a command prompt.  So, I dove under the hood, like a shadetree mechanic, learning whatever I could by poking around.

I learned enough to land a summer job at Rose-Hulman writing fluid flow simulation software for the Mechanical Engineering department.  The software was used the next school year to teach IFYCSEM Mechanical Engineering students!  This was my first real paying gig as a Software Engineer, and also my first software actually used for a purpose other than making a grade in a class.  Oh, that felt good!

That next school year was my senior year, and the Computer Science department required a Senior Project.  Naturally I wanted to do something on the NeXT.  My team decided to create a teaching tool for CS100, the intro class every freshman was required to take.  It would essentially be a computer language with a simple Pascal-like grammar and an IDE on the NeXT which focussed on debugging and understanding the state of all variables and the call stack, very visual.  We won an award for it: ACM Student Competition (scroll down to 1993, Undergraduate).  In the 1994-5 school year the "Prizm Toy Box" was used to teach some sessions of CS100, replacing Fortran (yes Fortran!).

In for a penny, in for a pound!  Having hitched my wagon to NeXT and the OS (NeXTSTEP) this far, my job search after college heavily leaned towards companies using this technology.  After all, I was good at it, and I truely enjoyed working in that environment as a developer.  Also, if you look at your history, the next best things at the time were DELPI and Visual Pascal!

Moving right along, I got a job with a consulting company that had caught the NeXT bug and started doing projects for them.  The big one was a transcription system for a Chicago hospital.  On another one we worked closely with the sales team at the NeXT office in Chicago.  I soaked it all up like a sponge.  After 3+ years at that job, I took a job in Chicago at NationsBanc-CRT as a GUI guy doing (...drumroll please...) NeXTSTEP development!  By this time NeXT had gotten out of the hardware business and was running on Intel-based PCs.  A good move in my opinion.

While I was there, Apple acquired NeXT, and things got really interesting.  OPENSTEP was just about to break out, and it became Rhapsody, which eventually became Mac OSX.  If NeXTSTEP was Awesome, then Mac OSX was AwesomeX (see what I did there?).  As I said before I wasn't really impressed with all the eye candy Mac OS had to offer until they put the power of NeXT under the hood.  The NeXT dev tools lived on as did their sesibilities about user interface design.  I had read NeXT's User Interface Guidelines book cover to cover -- and still find most of the suggestions relevant today.

So, where do I get off saying that Steve Jobs affected my life personally?  My whole first decade as a technologist was shaped by technologies he envisioned and ideas he advocated.  I never met the man, I didn't always agree with him (I liked my "scribbly" Palm Pilot), and I don't even know if I would have liked him as a person, but his life affected mine on many levels.

As for the iFanboy stuff, I own an iPod and a Macbook, but I also love my Droid X and my Galaxy Tablet.  Truth is, I love technology so while I repsect a lot of the stuff Steve Jobs did after Mac OSX, I'm not really a slave to it.  Last thing I just want to say it, better than anyone since W.C. Fields, Steve Jobs was a showman and knew how to give a killer demo!  Put him on stage and you were sure to sell products.  Of course, it didn't hurt that the products he was hawking were actually pretty good.