Archive for May, 2004

5/27/2004: 10:21 pm: Linux, Reviews, Software, VoIP

I saw quite a few cool things today at the eBIG FutureTech and Gadget Show.

My friend Ed from TeleVoce was there showing off a prototype of the TeleVoce Duetto. The Duetto is a special cordless phone that can take both VoIP calls through a connected computer and regular PSTN calls. One cool feature of the phone is that if it detects that your regular phone line is already in use, it routes the call over the Internet. Of course, if you’re trying to make a call to someone else with a regular phone, you will need to have previously arranged for a VoIP to PSTN gateway service.

When I walked up to talk to Ed, he was explaining how the Duetto works to someone else. At one point, she mentioned that she was interested in the company from the position of an angel investor. I was pretty sure it was Kim Polese, so after I got home I tracked down a photo of her on the web. I’m now fairly certain it was Kim.

Stereographics was also there showing off two different 3D displays. They had a traditional 3D display that required special glasses. The display switches rapidly between the two different parts of the stereo image. The glasses have liquid crystal shutters that are synched to the display. The brain automatically fuses the images, leaving you with the perception of seeing a 3D image on a 2D screen.

The Synthagram display didn’t require glasses. They put a special layer (technically, a microlens array) on a conventional LCD display to create the 3D effect. The technology is pretty similar to the 3D baseball cards I used to collect when I was a kid. In fact, they gave me a similar style, albeit much larger, card with a very cool 3D image of a coral reef with tropical fish and dolphins. Since you need to use special software to create the images, this display is primarily targeted at commercial advertising, casinos, and arcade gaming.

SightSpeed was there showing off their video messaging and video conferencing tools. They currently support only Windows and Mac OSs, but the CTO told me they would start offering a Linux client in about a month. He said they were waiting on a couple more distributions to include the Linux 2.6 kernel, since they need ALSA to support real-time audio. I’ve heard really good things about the quality of their software, so I’m really happy they’re adding Linux support.

GlooLabs was demonstrating their software that powers the HomePod, which is manufactured by MacSense. The HomePod is a wireless audio platform. The software is written in Java and it is running in the HomePod on an embedded Linux operating system. The software controller app is also written in Java and it is supported on Linux, Mac OS X, and Windows. The basic idea of the HomePod is that it can stream music from computer-like devices to standard audio devices, like a home stereo. The HomePod can grab music (currently MP3 only, but soon to include AAC – I can only hope they add Ogg Vorbis some day) from folders or an iTunes library on a computer over a wired or wireless connection. The HomePod also supports Internet radio stations, but only MP3-based streams, such as SHOUTcast. On top of all this, it includes a small infrared remote control.

If you’re a developer, you should check out the developer edition of the HomePod, which gives you a Linux login, C APIs for the drivers, Java APIs for the apps, the ability to update the firmware, and access to the GLOO development team. Hmmm, if I only thought I had enough free time, I would buy one and try to enable Ogg Vorbis support myself.

There was also a company with a low end Segway clone, a company with a way cool home theater chair, and lots of other cool stuff.

5/26/2004: 11:14 pm: Software, VoIP

Tomorrow is the East Bay IT Group’s (eBIG) FutureTech and Gadget Show from noon to 7 pm at the Carr America Conference Center in Pleasanton. I joined eBIG about a month ago and I definitely plan to be at the show.

A friend of mine (and fellow San Jose Earthquakes fan) will be there from TeleVoce showing off their upcoming cordless VoIP phone.

If you live in the East Bay and work in high tech, you owe it to yourself to check out eBIG. They have a lot of a great special interest groups (such as Java, Software Architecture, Start Ups/VC, User Experience, etc.) Although I can’t credit networking via eBIG with helping me find my new job, it did give me the chance to have a very interesting conversation with Bruce Eckel on Java, Python, and unit testing.

5/25/2004: 12:04 pm: Software

Yahoo! News – CA Charges Into Open Source

Computer Associates has always struck me as being the least interesting of all the really large software factories. They build (though more often, deliver through an acquisition) boring software for running core software at other behemoths. The only interesting thing about CA over the last few years has been speculation as to which of their executives would be next in line to be accused or convicted of fraud or some other misdeed.

Then, out of nowhere, they open source the Ingres database, they donate their KGEM kernel event management code to Linux, and they deliver an open source document management system on top of Plone. Plone is an open source content management system, built on Zope, an open source application server, which was developed with Python, and open source programming language.

Amazing. CA was about the last company I would expect to pull this off. I guess I have to start paying more attention to their technical than their financial activities.

: 12:07 am: Software

I’ve been meaning to write about SourceBeat for awhile. My friend Michael told me about this company a couple weeks ago. SourceBeat has a very interesting business model for publishing technical books. The basic idea is that you pay about $30 a year to subscribe to a book. That may seem like a lot for books that are delivered only as PDF files. However, their plan is to deliver a lot more than just a single PDF file for your $30.

The crazy thing about books on software technologies is that they can become almost useless in just a couple years. If the technology that a book describes changes dramatically in that time, the information in the book can lead you far astray. I bought a book on MySQL today, though I almost passed on it because it was two years old! The horror of it all! But then I slapped myself back into reason and purchased it. If it had been three years old, though, I would have run away as if it smelled like rancid pickles.

SourceBeat’s main twist on the publishing model is that their authors will regularly update the books you subscribe to. In addition, you can get access to books before they are finished. The timer doesn’t start on your 12-month subscription until a book is officially released. Also, they plan to set up forums for subscribers to interact more closely with the book authors and with other subscribers.

Not to focus too much on the negative (since there’s a whole lot to like about what SourceBeat is trying to do), but here’s some of what could go wrong.

  • Books get officially released before they are ready, so as to start the subscription timers (not that they would be the first publisher to release a book before its time)
  • Author of a book gets too busy with a new job, other technologies, zen buddhism, etc. and the promised book updates slow to a trickle
  • Forum for interacting with author and other subscribers is either dead or no better than what you can find by means that don’t require a subscription

So far, SourceBeat has lined up a great set of authors. All the books cover open source projects — Eclipse, Struts, Jakarta Commons, Axis, Tomcat, Spring, PostgreSQL, Castor, and Eclipse. I hope this idea works out really well for the authors and for SourceBeat.

5/20/2004: 12:57 am: Blogging and RSS

I decided to make the switch from Movable Type to WordPress. I’m really happy with what I’ve seen of WP so far. There’s still plenty of clean-up work to do on my blog, but I went ahead and started redirecting the main index.html page and all the individual archive pages from my old blog to this one.

Redirecting the Main Page

I chose to do this by adding the following line to the .htaccess file in the root directory of my website. My old MT blog was in the blog sub-directory, but my new WP blog is at the root of my website.

RedirectMatch permanent    /blog[/index.html]*$    http://www.wombatnation.com

Update 5/22/04: I left out the $ at the end of the regular expression above. That was causing way too many things too match.

Redirecting Individual Entry Archives

I used Alex King’s redirection technique. After downloading and extracting the contents of the zip file, I copied the contents of the PHP file into the Template Body text edit window for the Individual Entry Archive template in Movable Type. I made two changes to the script. Since my new blog is at the root of my website, I changed the setting of the $URL variable to be

$URL = "http://www.wombatnation.com/";

Then, because I used only the year and the month in my MT archives URLs, I updated the value for the MTEntryDate as follows:

<$MTEntryDate format="%Y/%m"$>

After saving the change to the template and republishing the individual archives, I put the following line in the .htaccess file in my MT install directory.

AddType application/x-httpd-php .html

Then, the redirection magic took over exactly as advertised.

Redirecting Syndication Feeds

Now the controversial bit. Do I automatically redirect RSS and Atom subscriptions, or do I post to the old blog one or more times with messages asking people to subscribe to the new feeds? I’m inclined to do the latter. I’m not sure how many news aggregators will notice the 301 status on the HTTP response and permanently change the URL for the subscription. Maybe I’ll ask people to update, start redirecting for some indefinite time, and then at some distant point in the future before the Sun explodes, delete the old feeds. Or maybe not.

5/19/2004: 6:22 pm: Arts and Education

The funniest man in America, Jon Stewart (no known relation, unfortunately), delivered the commencement address at William & Mary to the extremely lucky Class of 2004. I have no memory of the deliverer or the content of the commencement address at my graduation from Rice, although I am quite confident the speech wasn’t nearly as amusing as Jon’s.

5/18/2004: 8:26 pm: Blogging and RSS

In the continuing fallout from the Movable Type 3.0 licensing debacle, I decided to tryout WordPress. My original list also included Blosxom and PyBlosxom, which I might also try out.

So far, so good. I wrote up my notes for installing WordPress on a DreamHost hosted website. I have a test blog up and running, and overall I have to say that WordPress compares very well with Movable Type.

I plan to migrate this blog’s content and templates over from MT later this week, to make sure WordPress really would be an acceptable solution. If not, I’ll check out Blosxom and PyBlosxom. Hopefully, I will be able to use some of the tutorials from the WordPress site on doing the migration and on redirecting URLs. No sense in starting over from ground zero with all the search engines.

5/16/2004: 10:03 pm: Treo 600

PalmOne updates software for Treo 600 smart phone | CNET News.com

Late last week palmOne released another software update for the Treo 600. So far, it’s available for SprintPCS subscribers only. Either they care the most about us Sprintians, or they think that we will make good guinea pigs, and therefore they care the least about us.

The things I really care about in update 1.20:

  • More reliable audio

Hmmm, that was a really short list. I’m hoping that the PocketTunes MP3 player has fewer audio dropouts with the upgrade. I currently get dropouts every couple of songs at random.

The things I might care about in update 1.20:

  • POP3 client now in ROM (Assuming this saves memory and makes it faster)
  • Support for message priority on inbound and outbound SMS messages (I don’t get enough messages a day right now to care about sorting on priority)
  • Playback of voice memos received via PictureMail service (Assuming I run into someone else some day who uses Sprint’s PictureMail service)

My wife has the Powerbook in San Antonio and my work laptop with Windows obviously went away when I stopped working at Avaya, so I can’t check out the upgarde until my wife comes back tomorrow. It would be nice if palmOne supported a cross-platform installer so I could install it from the Linux box I am currently using, but I guess that is too much too ask for.

: 1:02 pm: Blogging and RSS

Should I stay or should I go? Six Apart updated and clarified the license for Movable Type 3.0. The most important update for me was the removal of the single CPU limit. It appears that they accidentally forgot to delete that restriction when they copied the text from someone else’s software license. The most important clarification regarded what constituted a weblog (for further clarity, let’s use small ‘w’ weblog to indicate a weblog created within the MT admin tool and a large ‘W’ Weblog to indicate a logical website level Weblog). In the new license, the limit applies to Weblogs, not weblogs. This allows me to claim only a single Weblog, since my second weblog was just a test blog that appeared under the same http://www.wombatnation.com/ URL.

The author limits still stand, but my personal issue with them is admittedly an unusual one. When I was beta testing the newMediaObject XML-RPC call for Ben, I created a bunch of units tests with Python and PyUnit. In order to test whether MT’s implementation of newMediaObject was properly obeying security restrictions, I created a couple extra authors with different security permissions. Since I’m long finished with the beta testing for them, obviously I could go back and delete the authors I created, or take advantage of the license change that qualifies them as inactive accounts. The only problem for me would be if I wanted to do any more testing for them in the future that required testing security permissions.

So, the remaining issues for me are:

  • Still annoyed about the unexpected changes, though I’m sure I’ll get over that soon
  • Still seems too expensive for the value it provides to me

In the short term I will stick with MT and will likely upgrade to 2.661. However, I definitely plan to take a closer look at WordPress, Blosxom, and PyBlosxom. That will be a fun investigation, even if I later decide that the switching costs are too high.

WordPress – Visually the most attractive of the three. Seems the closest to MT in feature set. Written in PHP, which I know about as well as Perl, which I know as well as Dutch, which I don’t know that well. Like MT, it would be a tool I mostly use, but don’t hack on.

Blosxom – Like MT, written in Perl. Like MT and WordPress, it would be a tool I mostly use, but don’t hack on. Blosxom’s simplicity is very appealing for my personal blog, though I would more likely lean towards WordPress for a company blog.

PyBlosxom – Written in Python, which I do know better than Dutch. Most appealing if I decide I want to allocate some of my code hacking time to the blog tool that I use. To paraphrase what Ted Leung posted, there’s a lot of value in becoming an active member of the communities that also develop and use your favorite tools. If a strong community doesn’t develop, a tool may wither away and you will suffer switching costs again. PyBlosxom has a much smaller community than the other tools, but it benefits somewhat from the Blosxom community.

5/15/2004: 12:30 am: Everything Else, Speech, VoiceXML

After nearly eleven years at Avaya/Lucent/Mosaix/ViewStar (strung together by two acquisitions and a spin-off), I’ve decided to move on to Voxify, a speech applications startup in Alameda. My last day at Avaya was May 7th. The killer blow for me was that this month Avaya is moving the R&D team from the Dublin office to the Milpitas office. I could already barely tolerate the 25-mile commute to Dublin. I was seriously dreading the 40+ mile commute to Milpitas through the extremely nasty traffic on 238 and 880. I dread no more.

Fortunately for me, near the end of March I ran into a fellow physics and philosophy major at Rice who recently started working at Voxify. Once I learned that Voxify builds sophisticated speech recognition applications for automating customer service calls, I was intrigued. After learning that the development work is in Java and VoiceXML for deployment on Linux servers, I needed to get an interview. After learning how smart and cool the people there were, I was sold.

Starting the first week of June, I’ll be the lead architect for applications. While VoiceXML development started out as a hobby for me a couple years ago, I was able to turn my contact center automation development and architectural work at Avaya into an architectural role on a new VoiceXML-based platform. I’m very fortunate that that experience helped me get an opportunity to focus completely on building speech recognition apps with a co-located development team.

While I greatly enjoyed my time at Avaya, working at a 15,000 person company with over 2,000 people in R&D spread out over the US and a few other countries can be a little distracting at times. It makes sense to try to leverage the work of all those developers, but I’ve learned just how hard distributed development can be. The December/January 2003-2004 of ACM Queue had a couple of excellent articles on distributed development, though, of course, no silver bullet.

I’m not sure how you solve or avoid the problems of distributed development at any software company that large. Building a very large company organically at a single site takes a very long time. Acquisitions are almost always required to build large companies, but it often happens that the companies you want to acquire are nowhere near your current office or offices. Obviously, you could try to force everyone to move to a single site, or at least to a very small set of sites, but you will inevitably lose a significant number of key employees who don’t want to relocate.


Fork me on GitHub