Friday, October 31, 2003

Chapter 6, in which I attend the O'Reilly Mac OS X conference

Since the O'Reilly OS X conference was being held a mere 10 minute bike ride away from my apartment, I couldn't pass up the opportunity to attend. I used a combination of the student discount as well as the special Sun Mac users discount to get in on the cheap. The first day was essentially a warm-up with no keynotes so I skipped it. Then on Tuesday morning, I biked over to the Westin hotel, picked up my registration package and went to the first keynote. On my way into the hall I noticed that several people were using the (presumably) provided wireless access point.

Tim O'Reilly, whom I'd had a chance to meet a few weeks ago at the Accelerating Change conference, had just begun speaking when I walked in. That man is a veritable fountain of ideas! He highlighted several cases where facilities provided in one of the iApps were missing in others that could have made good use of them. After praising Apple for being innovative with their user-centric design, he chided them for not being consistent with the implementation of their ideas. For instance, he remarked that we ought to be able to share our images in iPhoto the way we can share music in iTunes. For a more detailed write-up of his keynote, take a look at somebody else's coverage of the keynote.

Tim was followed by David Pogue, who held the audience's attention for the next 45 minutes as he delivered a highly entertaining tour of some little-known aspects of Panther. He also confessed that many of the secrets uncovered by his books were actually discovered by a young chap called Adam Goldstein, whom he has now hired.

After Mr. Pogue left the stage, I skipped the rest of the day to take a look at the new digs that my team is moving into at Menlo Park.

Unfortunately, I didn't make very good time getting to the hotel the next morning and Adam Engst had already launched into his keynote by the time I got to the room. He essentially presented a report card, grading the new OS release in several categories. In the end, deemed it worthy of an A-, which was an improvement from the B that Jaguar merited.

When he was done, Adam handed the stage over to Andy Ihnatko, the tech columnist for the Chicago Sun-Times. Andy had already foreshadowed his keynote in interview he gave a week or so before the conference. His keynote was essentially a walk down memory lane for longtime Mac users, of which I am not one. Nevertheless, he is a very amusing guy and, with the help of a large collection of photographs, he managed to do a fabulous job of keeping the audience in stitches. My favourite anecdote was the one about how he once inadvertently had his email address mistaken for an Apple VP, resulting in his being privy to several very interesting & highly confidential information about Apple's activities.

There were 6 sessions that day, organized along different tracks that catered to the various groups of people in attendance. Since most of the work I do can be considered software development, I stuck to the Programming track.

The first session was called UI design for collaborative multi-user apps. The presenter introduced us to some useful tactic: data can be divided into quantitative (exact numerical values), ordinal (ordered relative to each other) & nominal (used for identification only); Time can be organized by synchronicity & immediacy (think chat VS email); Collaboration can be organized by the author/audience relationship (round-table VS leader/group), number of tasks & scale of collaboration (number of participants); Visual language used by the UI needs to reflect ownership, permissions & latency.

The next session was about using Java-based web tech to create desktop user apps. The key idea put forth here was that the browser could be used for the UI & the engine could run as a Java appserver on the client machine instead of having a central server. This strategy leverages the high-powered desktops now prevalent in most computing environments & neatly avoids the issue of network traffic congestion or disconnected portable computers.

I was fortunate enough to run into the creator of iBlog at the beginning of the lunch break & had a pleasant conversation with him about Apple's Cocoa API while we ate lunch.

The session after lunch bore the title Multi-modal UI design. It focused upon the use of handwriting recognition as well as speech synthesis & recognition in OS X. However, the presenter failed to consider the impact of internationalization & localization upon these nascent technologies.

Once this session had concluded, Andy Ihnatko returned for an encore. This time he waxed poetic about the merits of AppleScript, which he felt is often given short shrift for not being a real development tool. He actually compared it to the Ebola virus, talking about how it is extremely simple to start using for basic task automation but scales well to application integration and even all-out software development. As proof, he offered his custom weblog system, which started out as glue between the various apps he used to maintain the blog & has now evolved to actually replace much of the functionality heretofore provided by those apps.

The next session began after a short break. It carried the provocative title Why Mac users hate Java & proceeded to outline some of these reasons. Apparently speed is no longer the prime concern; it has been replaced with the feeling that momentum for Java on the desktop has stalled. The presenter explored some solutions to this stagnation, most of which revolved around breathing new life into desktop Java by producing innovative desktop apps that take advantage of Java's strengths.

Keeping with the Java theme, the final session of the day was about Java hacks for OS X. The 1st few were simple VM args that enabled some neat Mac-only enhancements to Java apps. These were some more in-depth instructions for overriding the default About box with a custom one & using resource files combined with polymorphism to implement platform-specific keyboard shortcuts for menu items. At the end of this session, I spoke to Apple's Java product manager, Rob Fraser, who showed me how to get Ant working with Xcode, which makes my life a lot easier.

Even while I was speaking to Rob, the next event was being set up. The creators of several popular shareware apps for OS X took the stage to entertain questions from the audience. I was impressed by just how many lone coders were able to produce such polished apps in so short a time span. From their responses to questions it is clear that almost all of them believe that Cocoa & Objective-C are the best possible development platform out there. They were also generally happy with user uptake of their work.

The last thing I did that day was to attend an informal discussion with the 2 people currently responsible for the OS X port of OpenOffice.org, the largest open source program in existence. They talked about how they had recently managed to substitute the X11 dependencies of OpenOffice.org on the Mac with Java instead, which is good news in the short term as Java has astonishingly good support on OS X. Near the end of their discussion, somebody even showed up with free beer for all takers!

The 1st keynote of the last day was basically all about Apple's forays into the scientific computing market, spurred by the popularity of the G5's low price/performance ration. Much ballyhooing was made of all the scientific visualization tools available for OS X.

The last part of the conference that I attended was the keynote by a computer scientist turned biologist working at the Rockefeller Institute in San Diego. Her talk was completely devoid of the OS X cheerleading that had marked the rest of the conference but heavy on biological jargon. She ran through an introduction to bioinformatics with a specific focus on gene sequencing. Among her revelations was the fact that the quantity of data being uncovered was actually managing to outpace the growth in CPU horsepower! She cautioned, however, that accuracy is more important than raw speed when making predictions in this field because a bad guess could waste upto a year of valuable research time. I found myself struggling to recall the relationships between genetics terms that I used to be familiar with a few scant years hence so I vowed to brush up on them.

On my way out, I ran into the creator of F-script, a SmallTalk-derived language for accessing & manipulating Cocoa objects. We spoke briefly & he handed me a paper about adding support for array-based language features to regular object-oriented languages.

Tuesday, October 28, 2003

Road rage & a grocery store checkout line fiasco

On our way home from work today, some guy in a minivan got pretty enraged - we're not sure why - and gave us the one-finger salute several times. Kirill rolled down the window & fired an appropriately worded threat in the guy's direction but he proved incapable of responding with anything more than the verbal equivalent of his previously displayed gesture.

During our weekly groceery trip on the way back from the gym, the cash register crashed while the clerk was weighing some of the produce I'd picked up. It was the 1st time I've ever seen a cash register rebooted. The device had a Phoenix BIOS so I guess it was powered by an x86 CPU, although it booted off the network & didn't run any OS I recognized.

Sunday, October 26, 2003

Upgrading the car

Kirill & I returned the Alera yesterday afternoon. In its stead we now have a Mitsubishi Diamante, which he describes as a Japanese Mercedes. It has a sun-roof & heated leather seats, among other things. We took it for a spin & have decided that it is much nicer than the Alera.

While we were at Hertz, however, we found out that they had been charging Sun $5.50/day for property theft insurance that Kirill had not asked for & was quite unaware of. Considering that we never leave anything remotely valuable in the car, this was basically about $300 down the tube because the Hertz employee that gave Kirill the car in SFO had pulled a sneaky trick.

Saturday, October 25, 2003

Interesting sushi & a new cat

For lunch yesterday Mike [Godfrey] & I went to the most interesting sushi place I've ever seen. They used brown rice instead of the usual white kind. Brown has a much stronger taste than white rice does so it seems almost unnecessary to use Soy sauce with it. They also use white pickled ginger instead of the usual pink variety. The miso soup was some of the best we'd had too.

The other kewl thing that happened yesterday was that my 'free' copy of Panther showed up. I opted to simply upgrade my existing system, which seems to have gone well :-)

Friday, October 24, 2003

We have a visitor

Adam Spitz, with whom I used to work at Checkfree back in 2nd year, has been hired by Sun Labs as a full time employee. He stayed with Kirill & me for a couple of days until he was able to move into a place of his own. Adam is a big fan of a Smalltalk variant called Squeak so he told me all about it & showed me some kewl stuff that it can be done with it. I tried to run it on hermod but it simply refused to start, much to Adam's bewilderment. It's too bad because the Squeak workspace seemed really fascinating.

Thursday, October 23, 2003

Chapter 5, in which I go to the Computer History Museum

As I mentioned last Wednesday, the Computer History Museum held its 2003 Fellow Awards Celebration last night & Sun sent 10 people, including me, to attend the shindig. The 1st thing that happened when we got in was that we were offered a glass of champagne each. Not a bad start to the evening, eh. There is a room that houses the machines brought out of storage; about a tenth of the total artifacts possessed by the museum. I walked in and began to walk backwards through the chronologically arranges displays. I stopped for a few moments to pay homage to the ZX Spectrum, the machine on which I wrote my 1st lines of code at the age of 4. The next thing I discovered was the original teacup from Utah that has now become the most widely used model in 3D graphics programming. Beside it was a prototype of the very 1st VR headset, designed by Ivan Sutherland who works at the lab with me. Further on, there were some extremely large supercomputers & mainframes. I was amazed to notice that these beasts actually had a physical button for each instruction that could be executed. Eventually my hunger pangs won out & I decided to hit the buffet.

While I availed myself of the scrumptious food laid out for our consumption, I chatted with a random guy from Google. He kept going on about the free food that Google gives its employees. When I asked him about the troubles his company was having with PageRank, he assured me that it was still being used & that he had not heard of any plans to retire it. I also spotted David Filo, the founder of Yahoo. Unfortunately, he was being monopolized by some other people already so I didn't have an opportunity to say hi. Oh, well; his loss. A while later I ran into my supervisor, who was being hounded by a reporter so I lent him moral support for a while until he managed to extricate himself from the situation.

When it was time for the ceremonies to begin, I headed upstairs & into the auditorium. But just before I entered, I spotted Tim Berners-Lee standing outside so I siezed the opportunity to say hi to him & personally thank him for his dogged work ensuring that the world wide web he invented didn't get destroyed by a babel of competing proprietary standards. He replied that there was still much work to be done, which puzzled me a little but I didn't want to straggle too long so I found the Sun reserved seating & took up a spot beside my supervisor, who pointed Doug Engelbart, inventor of the mouse, out to me as the man walked by us.

The ceremony kicked off with a comedian/magician type guy who provided some light entertainment before the 1st luminary, Gordon Bell, was called up on stage to receive his award & say a few words. He was followed by Tim Berners-Lee & then David Wheeler. They all regaled us with a few interesting stories from the past before stepping offstage. After the hoopla was over, we streamed out of the auditorium & went home.

The next evening I returned to the museum to hear Tim Berners-Lee give a talk. He spoke about his ongoing work to convince people that they should move away from visually marked-up content directed at humans and towards semantically marked-up content targeted at both people & machines instead. During his speech, he delved into several amusing anecdotes about the history of the Web. The most surprising aspect of the entire presentation was that he seems to use Safari as his web browser of choice! Now, while I like the UI in Safari myself, I have to come down hard on it for failing to fully support key Web standards like HTML 4 & CSS2. Naturally, the fact that the man who has devoted his life to promoting these standards should use Safari was more than a little perplexing.

Sunday, October 19, 2003

A revised history of ancient India

I just spent the entire day reading about recent discoveries that have prompted an overhaul of the prevailing theory about ancient Indian civilization. It's amazing how much psychological damage the British empire inflicted upon Indian culture in only 3 centuries! Speaking of India, I ate half of my papaya today. It was quite good, although I was rather surprised at the lack of seeds within it.

Friday, October 17, 2003

Pumpkins!

Today I helped Jeanie, one of the lab support staff, bring some decorative pumpkins back from a nearby pumpkin patch. There were giant bundles of corn stalks all over the place to attract passers by. There was also this pumpkin throne that had a giant pumpkin as the seat back. After wandering around the place for a while, we found 6 that we liked. She was kind enough to get me a papaya while we were there. It's been years since I've tasted papaya so I'm eagerly looking forward to eating it. After leaving the pumpkin patch, we stopped at a nearby saloon for lunch. The saloon was this little rustic place with wood tables that had been engraved so many times that they make for a splendid sight now.

Wednesday, October 15, 2003

A kewl discovery

Today, I decided to see if there were any wireless networks accessible from my apartment. Lo & behold, I found a whole bunch! It seems everybody is jumping on the wireless LAN bandwagon these days. Curious, I tried each one & found 2 that had been left wide open. Consequently, I am now able to connect to the Net by piggybacking on either of these 2. No more being tethered to a 7 foot ethernet cable :-)

I also qualified to be one of the 10 Sun Microsystems employees attending the Computer History Museum's 2003 Fellow Awards Celebration next Tuesday.

Tuesday, October 14, 2003

Moving my development environment from Debian to OS X

As of yesterday, I have managed to make the transition from doing all my development on the Linux box in my cubicle to doing it on my Powerbook instead. This is very convenient, as it allows me to work, not just from home, but from just about anywhere I am. Of course, since Xcode, Apple's revolutionary new IDE, is not available for a few more weeks, I'm still stuck using the old Project Builder for the next little while.

Sunday, October 12, 2003

A weekend of firsts

Last night I went through a car wash for the 1st time in my life. Yeah, I'm sure that doesn't sound the least bit exciting to anybody else but it was quite the novelty for me. Then today I went to a pumpkin patch for the 1st time ever. On a different note, I figured out how to work around the problem with the latch on my powerbook, thanks to a tip from my brother. And, after finishing The Prisoner of Azkaban, I now understand why everybody simply had to start reading the next book.

Wednesday, October 08, 2003

A new powerbook (and a new governor to go along with it)

After about five & a half months of not having a computer of my own, I'm now in possession of a new 15 inch Aluminium G4 Powerbook with a DVD burner. There was a wee spot of trouble with the delivery when the delivery guy went to the wrong address, despite having the correct one on the package, but it eventually made its way to me in a nice black box. I named it Hermod, after the Norse messenger of the gods. So far it has been highly satisfactory, aside from a minor problem with the latch that keeps the lid shut when it is closed.

As most of the world probably knows by now, California has elected a new governor. He wasn't my 1st choice but I can live with it.

Tuesday, October 07, 2003

Chapter 4, in which I return to Sacramento to visit David's family

After the bash, my roommate dropped me off at the ACE station, where I had planned to catch a bus to Stockton, from which I could transfer to a train that would take me all the way to downtown Sacramento. So, the 1st thing I did was to pull a Tony.

I boarded the bus & told the driver that I wished to purchase a ticket. It turned out that he had been assigned to this route at the umpteenth nanosecond & had no idea how that was supposed to work. I began to calmly explain to him, in excruciating detail, how I had been told by the good folks at Amtrak that I would be able to procure a ticket from the bus driver. About three & a half seconds into my story, he succumbed & told me I could have a free ride.

The rest of the trip proceeded as anticipated, with me finishing Barbarians Led by Bill Gates en route & I was picked up at the Amtrak by David, Jane, Josie & Mikey. They were still recovering from jet lag after a 2 week vacation in Brampton but stayed up until the wee hours of the morning chatting with me.

The next morning they took me to a nice Thai restaurant in downtown Sacramento for lunch. When we were done eating, we went to a nearby arts show. Not being an art show veteran, I wasn't quite sure what to expect but, had I any expectations, they would have been more than met.

The show was a melange of artists displaying (and hoping to sell) their work, which ranged in price from 2 to 4 digits. One of the 1st items that captured my fancy was a soapstone sculpture of a very dog-like bear, whose carefully chiseled face was graced by a forlorn smile begging onlookers to rescue him from this life of endless public scrutiny.

Next to captivate me was a series of "spirit shadow" photographs. These were taken at night using a long-exposure camera. The artist had walked around in the scene being captured & used a bright lamp to cast his shadow on the scene as it was being recorded onto the film. This had the effect of producing photographs with these bodiless humanoid shadows in them. His most prized shot was one depicting the stonehenge with crouching shadowy figured cast onto each visible stone. Apparently he had received special permission from the British gov't to skulk around this anthropological treasure.

By far the most amusing (not to mention thought-provoking) piece of work I came across was a graphite sketch bearing the title "Spirit of mount Rushmore". It featured the well-known landmark but with the faces of the 5 presidents replaced by faces of the 5 native tribal leaders decked out in full regalia. I was so taken by it that I made a point of expressing my awe to the artist.

I spent much of the remainder of my stay playing with Mikey, watching Josie sketch manga (both her mother & paternal grandmother were gifted visual artists & she's keeping up the good work) & having highly animated discussions with David & Jane.

On Sunday evening, they were kind enough to drop me back at my apartment. I gave them a tour of the place & introduced them to my roommate.

Thursday, October 02, 2003

Lunch with the guys

James took our 6-person team out for dim-sum today. The official purpose of the lunch meeting was to discuss the potential for a promising new application for the technology we've been working on. Of course, as is wont to happen when a bunch of long-time computer programmers (and one curious intern) get together informally, there was also much narration of computery anecdotes. The food was good but the stories blew them away 8-)

...and - oh yeah - good riddance to the Tories :->

Factory tour

Today I went on a tour of the Sun manufacturing facilities in Newark. They made us wear special smocks & put anti-static straps on our shoes before we could enter the factory. The guide led us around the floor, pointing out the various machines & explaining their purposes. Apparently, ever since the rolling brownouts 2 years ago, the factory has had backup power generation for all critical systems.

In other news, the 15-inch Powerbook I ordered last week has finally shipped :-)