10 @ Sun – from Fascination to Passion

17 Jan

Last week, a key event passed by quietly during my vacation. It is the 10th anniversary of me joining Sun as a full time employee.

Some time in 1993, I was asked by my the then employer to install an evaluation software from Sun on a Tatung Sun-clone, running SunOS 4.0.x. When I started the installation (that is my first formal installation of a software package, before that, all I did is untar the binaries in /usr/bin etc.) and the install script said something to this effect:

The installation script runs a program that requires super user privileges. Do you want to continue?

I got curious, aborted installation and started reading (yes, literally reading) the script. That was one of the best scripts I read till date, that covers checking for some prerequisite binaries, directories and few others. Until then, I knew about Sun as a company that makes SunOS and Sun workstations, but my respect for Sun engineers grew with that incident. I spent a couple of nights studying the script (yes, I took home a printout from dot matrix printer) and concluded that the script doesn’t do anything intrusive on our system. In those days, we never trusted software delivered by someone, even if it is Sun.

Most of that year is also spent with a printed manual from Sun, called “Streams and Networking Guide.” That book became the bible for everyone who wants to learn about networking in the company. That guide was the practical side of Douglas Comer’s 3 volume networking books.

In addition, when I started teaching C++ afterhours in 1992, I used to recommend Sun’s compiler suite as opposed to Microsoft’s MFC C/C++ compilers, mainly for two reasons. First: It is very easy to create and manage student accounts on SunOS than on Windows 3.0 or DOS or NT 3.5. Second: Sun used a C++ preprocessor called CC, which generates the C code and then compiles the intermediate code using regular C compiler. There were options to generate C code and leave it there, rather than generating the object code. That intermediate C code is the best way to learn the C++ language internals. During later years, with ARM (Annotated C++ Reference Manual) and CC, I could really look into how an object oriented language could be implemented using a procedural language like C.

In all these 3 cases (that unforgettable install script, Streams and Networking Guide and CC) one thing planted deep in my mind: 2550 Garcia Avenue, Mountain View. This was the postal address for Sun until late 1990s and this address was there on the software CD, Streams and Networking Guide and the license/copyright of the CC compiler. By 1995, I was so fascinated by this address that I wanted to visit this place at least once in my life.

In late 1995, when I went to US, I got a consultant job with Sun. What else would I ask for? But I was located in Menlo Park campus and it took me a while to go visit this unforgettable address.

In 1997, I joined Sun as a full time employee. What started as a Fascination in mid-1990s has evolved into a Passion for this company in all these years. Despite the bad run at stock market in recent years, this company still delivers the state of the art software and hardware (look at Solaris 10 and Open Solaris for a sample.) Spending another 10 here wouldn’t be impractical at all!