Ted Leung on the air: Open Source, Java, Python, and ...
Actually, it landed late yesterday afternoon, and I've been working to get it set up to my liking. I decided that the best thing to do was to rebuild the content from scratch, so I'm not just doing a big copy from my backups. Needless to say, this is the long road back.
I was fairly concerned because I have read a lot about noise related problems with the MacBooks, and I am noise picky, so I feared the worst. I don't have the whine that is associated with a bad display inverter, but I do have the whine that is related to CPU usage / power management. It only happens when the machine runs on batteries, and it's not as annoying as I feared. I'm not sure whether its worth it for the machine to go back to Apple to remedy the problem.
Other than the whine, my impressions are favorable. I haven't had any spurious reboots or other hardware related problems. The performance is pretty good, especially since this is a 1.83 GHz, 5400 RPM configuration. I did stick some more RAM in it, and it's been stable so far -- the RAM came from Other World Computing, which has done right by me in the past. I ordered their house brand, but they sent me TechWorks DIMM's instead. Either way, I had problems with OWC DIMM's in the old machine, and they cross shipped replacements which took care of the problems. Just Apple machines being picky about their RAM - par for the course.
I've been installing apps slowly, and I've tried to keep to Universal Binaries where possible in order to avoid the RAM hit from Rosetta. So far I've got Adium, Chicken of the VNC, DeerPark (an unofficial Intel build of Firefox), iPulse, iTerm, the Lightroom beta, the NetNewsWire beta, the OmniOutliner Pro beta, Quicksilver, Snak, SubEthaEdit, and SuperDuper!.
Normally I build my own Emacs, but this time I am trying the packaged Carbon Emacs first. It's hackerly to say that you built your own Emacs, but mostly it's a pain in the neck, and the folks working on Carbon Emacs have included a bunch of nice stuff.
Performance is pretty good. I have been running lots of background copies and diffs, synchronizing IMAP mailboxes, and other background tasks at the same time I was trying to use other apps in the foreground, and I've been pleased. NetNewsWire downloads have speed up dramatically -- I know that Brent has been working hard on performance in the beta, so there's a nice reinforcing effect, I am sure. I can't use my PCMCIA compact flash reader anymore, so I'm back to using the USB cable to get RAW images out of my camera, and I was pleasantly surprised by the speed. It was a lot
faster than before.
I haven't had much chance to play with the new hardware bells and whistles. I used PhotoBooth to take a self portrait for my account picture, and Julie, the kids and I took one just for laughs. I think PhotoBooth will be worth some fun. The Apple Remote starts up Front Row, which is cool, except that when it exited it left rcd.app hung and not responding. I hope that this is just a software problem, but I haven't had much time to research it.
On the problems. So far, I've talked about the CPU whine and the rcd.app thing. I've also plugged in my external Keyboard, which is a 6 year old Microsoft Natural Keyboard Pro. I've noticed some weird keyboard bounce problems. I haven't installed the Microsoft drivers (yet) because they aren't Universal (but I'm also a long way from being done installing).
The last "problem" area is non-Univeral applications. So far I have installed a few PPC apps: Path Finder, Ecto, Skype, xchm, and Aperture. Path Finder and Skype definitely plan to go Universal, and the Ecto support boards say Ecto will go Universal for Ecto 3.0. I need to mail the xchm folks and see what their plans were. Apple was supposed to release a Universal Binary of Aperture, (along with a bunch of fixes/improvements) by the end of March, but apparently, that's been delayed until April. I also built SSHKeychain from sources to get a Universal version.
That's my first report on the MacBook Pro. If anyone has an experience restoring an iTunes library from an iPod, or restoring the Address Book via Bluetooth (or other) iSync, I'd be interested in hearing from you.
Julie told me that someone at SXSW noticed that my blogging had slowed down. We are in a slightly better computing situation in the house. Getting the Thinkpad running for ETech means that Julie now has a computer that she can use, which means we no longer need to share a single computer.
I however, am still struggling with a loss of productivity on Linux. One of the biggest pain points is IRC. With only a single monitor, It is much harder for me to keep track of what is going on in the OSAF IRC channels. On the recommendation of several readers, I've been using X-Chat. I have it configured so that it makes sounds when someone says my nick, so at least people can get my attention when the X-Chat windows are buried. The problem with X-Chat is that it opens every channel in a new window. If you quit and restart, it doesn't remember the spatial layout of the windows, so I've taken to not quitting. Unfortunately, private messages also create a new window, and I haven't trained myself not to click the close button. So every time I finish a private message session, I click, which kills all the X-Chat windows. Then I have to restart X-Chat and manually layout all the windows again. If you're used to seeing me in IRC and haven't, it's because it's just too much pain to use X-Chat to get to all the channels.
My MacBook is still in the backorder queue. It's been 1 month now. So much for MacMall's prediction of 3-4 weeks. The latest is that they are receiving a huge (10,000 unit) shipment from Apple on the 17th. Even if that turns out to be true, It's still going to take several days for the unit to show up on my doorstep. Under better circumstances I'd be psyched to get the machine and test it out against the old one and all of that. At this point, I'll just be happy to get off the Linux box, and return to some modicum of productivity.
We did get some good news this week. The insurance company is going to cover Julie's laptop (I tend to expect the worst from insurance companies), so at least we'll have some help in replacing it.
Expect blogging and photo posting to continue to be light until some Macs show up in the house.The nice thing about big conferences like ETech is that there are plenty of people who do a great job of liveblogging. If you're interested in what happened, both Phil Windley and Oren Sreebny took really excellent notes on the sessions that they attended (I linked to each of their first ETech entries). It turned out that having a laptop with 0 battery capability made it really hard to blog, or even note take. Even though I was plugged into a power outlet most of the time, I experienced several power outages, one of which was able to scramble the text file I was using to take notes. Fortunately the scrambling took place at the end of the file and most of the content was preserved. Since I don't have to try and recount the full content of the talks, here's the commentary.
I have a research background, so when I hear "advanced" or "emerging" technology, I set the bar pretty high. I was disappointed with much of the content at ETech this year for this reason -- a lot of it edged too close to emerged technology for my taste. In fairness, part of the problem is that the industry as a whole has an odd notion of what is innovative. Ray Ozzie's keynote on Live Clipboard was an example of this phenomenon. During his keynote Ray asked "why isn't the clipboard for the web the clipboard?". My question is, why are we still having to ask this question?
The 15 minute keynote format doesn't really work for me. When I hear keynote, I expect to hear someone talk about general trends in the industry, big ideas, or the overall theme for the conference. Of course, nowadays, keynotes at big conferences are places for vendors to pitch their products. The 15 minute keynotes mean that you can be subjected to more pitches per unit time.
There was some content on the program that caught an held my "attention". Linda Stone's talk tried to get at the deep human needs behind all the hubbub about attention, and Michael Goldhaber's talk was just starting to get into deeper waters when he ran out of time. Clay Shirky's keynote on moderation patterns was really interesting -- it would have benefitted from more time. Danah Boyd's session was engaging enough that it ran quite a bit into the break time afterwards. Jeff Han's keynote on multi touch interfaces was also good, and a great example of the kind of "emerging" technologies that I'd like to see more of.
There were a lot of perfectly serviceable (which is to say neither outstanding nor abysmal) talks. So many of them had to do with web 2.0 or AJAX that I had to wonder whether I was at the spring edition of the Web 2.0 conference.
There were several logistical problems which veered from O'Reilly's usually excellent conference operations. I've come to expect conference wifi to be poor, but ETech's wireless was definitely a step down from what I've experienced at OSCON (which is a great O'Reilly conference). Also, the conference had to move to a different floor of the hotel for the last day. The rooms and hallways on the new floor were much more crowded. It was already hard to get into some of the sessions, but the move made that problem even worse. I can't imagine that the O'Reilly folks were happy about that.
Oren ran a calendaring BOF which was lightly attended (lightly being around 15 people). Most people there were unaware of the existence of CalDAV, which says to me that some additional evangelism on CalDAV is needed. I did have several people tell me (in hallway conversations) that they had listened to Scott Mace's interview with Lisa Dusseault, which is a good start.
Mimi Yin talked about the principles behind Chandler's UI. The talk was well attended and afterwards there was some good conversations. Several people that I respect a lot had kind things to say about the talk. This is the first time that we've really talked about the big ideas behind Chandler's UI, so it's nice to know that some people think that we are on the right track.
The value of conferences goes well beyond what's on the program. I had plenty of excellent hallway and meal conversations. Since the population that attends ETech is a bit different from most of the conferences I attend, this was a good opportunity to meet people that I don't normally rub elbows with.
Alex Russell had the honor of being the first person to show me a real MacBook Pro. He even survived without me clubbing him and taking the fool contraption. Alex's verdict was generally positive, which only makes the waiting more painful. A number of my friends have MacBooks on order as well, it seems. I even saw a guy walking through the conference with a MacBook Pro still in the original Apple box. I told him that he could get mugged walking through the venue like that.
No visit to an O'Reilly conference can be complete without at least one photography chat with Duncan, and I had several. In December I picked up a flash for my camera, because things in Seattle were dark, and I was looking for ways to increase my shooting opportunities. Talking with Duncan had highly biased me towards natural light shooting, so I was very interested when he popped into Kathy Sierra's (excellent) tutorial packing a flash. We also spent some time talking about Duncan's new workflow using Aperture, and he's posted an essay detailing how helpful Aperture (even in it's currently flawed state) has been.
Normally I don't go into the exhibit halls at conferences for very long. The ETech exhibit hall was hard to avoid, and several of the food breaks were cleverly organized to get you to circulate into the exhibit area. Despite my earlier ranting about product pitches, I did find two noteworthy things in the exhibit hall. The first is that the OpenLaszlo team has been working to make the LZX compiler generate AJAX instead of Flash. Since the primary objection that most people seem to have to Laszlo is the use of Flash, this ought to be a good reason to reconsider. I've known for a while that that the Laszlo folks were working on having the compiler output to alternate runtimes, and as soon as David Temkin told me they were on AJAX, I realized that I should have been reading between the lines on Oliver Steele's blog.
I was also able to see a demo of Krugle, a search engine for code. I was really impressed with what I saw. The base search engine functionality seems to work pretty well, and the engine can also associate related documentation with the code that it finds. In addition to the basic search stuff, they are doing all the web 2.0 stuff, so there is an API to the engine that applications can use, and you can tag code in the engine according to your taste. This brings up the possibility of some really interesting social networking/"reputational" applications on top of the basic search functionality. Krugle is built on top of Nutch, and the Krugle folks are very open source friendly. You can expect to hear more about that in the future.
One last impression is that the folks are starting to get some traction. I saw a number of interesting demos at the microformats session.
This is my first time to ETech, and I feel like I ought to be more excited about it. As it is, I'm going in with 3 conferences under my belt already, the lingering unresolved hassles that accompany theft of one's possesions, and a kind of distracted uncalm. In other words, not the best way to be starting out.
I've been to a number of O'Reilly conferences, most of them OSCON's, but this is the first one where I've gotten spam from people rolling out products or having meetings around the event. I must have forgotten to check off a box on one of the registration forms.
After the adventures with the iBook at PyCon -- it seems to have reverted to a plainly dead state -- I was resigned to having no laptop to take with me to ETech. The only problem was that a lot of meeting up with people is likely to get organized via e-mail, and the thought of 5 days of e-mail piling up while I was gone was pretty disconcerting. So last night I decided to try something more drastic on the Thinkpad. I had already tried to reinstall it from the recovery partition, but was not having much luck. So I figured that perhaps the problem was with the disk in the machine, and I wondered if I could tear apart one of my Firewire/USB disk enclosures, slap an IDE CD-ROM in there, and try to get the machine to boot off of that. I turned on the machine figuring that I would look around in the BIOS for a boot from USB setting (I'd never done that before), but I wasn't quite fast enough, so the machine kept booting, right into part of the Win2k installation sequence. I was going to wait until it locked up to reboot it, but instead of hanging, it kept on going right through to the end.
Additional detail is probably boring, but the upshot of it is that the machine seems to be happy now, and I've been able to use it for some simple tasks, like e-mail, web browsing, and simple Word documents. So it seems like it's better than nothing to take this thing along with me to ETech and see how far I can get. It has a PCMCIA wireless card in it, but I don't have a way to test that, and the battery life is 0, so I'll have to be plugged in. Fortunately, the other O'Reilly conferences have been pretty decent about power. Then again, I didn't get spam...
A happy thing did happen today. We've been waiting to get an official copy of the report from the Vancouver police. In order to get one of those, you have to submit a request on paper, along with a copy of your government issued picture ID. We send off the request quite some time ago (the USPS website said the letter was delivered in Canada on Feb 20), and the document finally arrived today. Next step is to fax that and a pile of other materials to our insurance company.
I haven't been able to get any of the Windows or Linux blogging clients to work with Pybloxsom's Metaweblog API support (which is semi embarrassing since I wrote that support), so blogging is going to continue to be light. Once you've used something like Ecto or MarsEdit, both of which worked with Pyblosxom, it's hard to go back. That MacBook Pro can't ship fast enough for me.
I'm flying out tomorrow night so that I can hit V2.0 of Kathy Sierra's Creating Passionate Users tutorial, and I'm around till late Thursday afternoon. I'll definitely be at Mimi Yin's talk on Personal Information Architecture and Chandler
This year folks from OSAF were around for 2 days worth of sprints. Jeffrey Harris had a very successful (I thought) sprint on vobject. This was a direct result of having the sprints after the conference, because most of the people at the sprint were not existing vobject contributors.
The Chandler sprint broke down into several sub groups. One group worked on a parcel to grab data out of 43 Things and integrate it into Chandler, one group worked on getting a very simple address book going, one group worked on importing and exporting Chandler data to VTODO and vCard (providing a nice tie to the vobject sprint), and there was also some work going on to try to figure out just why it is that Chandler is so slow on the Mac.
I paired with Ralph Green from the Dallas Pythoneers on the address book parcel. We've done a lot of work on the Chandler parcel APIs since last PyCon, and it looked like that made a big difference this year. Whereas last year it took people about a day and a half and a lot of hand-holding to get a parcel running, Ralph was able to get quite far with only minimal help from me. I've wanted to get some Person/Contact/Address Book functionality into Chandler (ahead of schedule) so that I could experiment with some ideas around linking web data to people and working with the social network that is nascent in your address book. So while what we did is pretty simple, I'm happy that there's now a starting point for experimentation.
This year's PyCon experience was different for me. While I did see a number of people that I knew, and had very good conversations with them, I didn't feel as much connectedness to people as I have at previous PyCon's. There are a bunch of reasons for that. A lot of people that I know were not here -- the DivMod guys didn't come, the SubEtha gang was totally not around, and a few other people were also missing.
I think that moving the sprints and the environment of the sprints had a big impact on this as well. By the time I got through the tutorial day and the 3 days of the conference, I was already tired, which made it hard to muster enough person energy for even 2 days of sprints (not to mention 4). Also, the sprint rooms had sliding dividers, which meant that the various sprints were pretty isolated from each other. So there was almost none of the spontaneous interaction between sprints that happened in previous years, and I missed that.
A final factor is that I spent a lot of time with Chandler people this year. The Chandler contributors are getting more geographically dispersed, so there are fewer opportunities for us to get together face to face. While this is the norm for open source projects, the OSAF staff has been centralized and is becoming more decentralized. This is definitely a good thing, and I see us taking advantage of face to face time just like the other projects.
I was very happy to see that PyCon was going to be in a single hotel this year. It did make it easier to run in to people. In previous years, things pretty much ended after dinner did, because people were scattered in various hotels. This year, people came back to the hotel and hung out in the lobby and various public areas.
As far as I could tell there were only two downsides to the conference. The first was that the hotel's wireless network was not up to the task of hosting PyCon. This isn't a surprise to me. Pretty much every time a tech conference goes to a venue for the first time, the venue's wireless networking get thrashed. The only real question is whether or not the venue recovers or not. The second issue is that I personally didn't care for Dallas as a location. Then again, I didn't particularly care for Washington D.C for the last few PyCons, either, so this is really just a minor complaint.
This post and the day 3 post were delayed because the iBook that I borrowed started freaking out the night before the sprints, and became so unreliable that I couldn't even get it to boot. Needless to say, this was pretty frustrating, especially since it hosed things for the sprints. Fortunately, Ralph had a computer so we were able to make plenty of progress. I just couldn't do much with e-mail or write any blog posts. When I got home last night, I plugged the machine in, hoping to coax it to stay up long enough to get a few critical files off of it. Instead, the crazy machine has been running all day.
Regular readers know that I usually write this post on the ferry home after some excruciatingly bad travel experience. If you're waiting for that report, you'll be happy to know that this year I got home from PyCon with absolutely no travel glitches at all.
Day 3 of PyCon was a short day -- things finished up around 3:30pm. I went to a number of solid how-to talks on topics such as Turbogears and Django. Unfortunately, I missed the PyPy status talk, which I later heard had some good content on managing an open source project. I'm sorry that I ended up missing that one. Due to some hallway conversation, I also missed the PyPy architecture session. This year's PyCon had far fewer programming language hacker kinds of talks. I have mixed feelings about this, since I generally find these talks interesting. However, it is probably better for there to be more talks on web stuff and application building.
The most interesting talk of the day was Martin Blais' talk on Nabu, which he calls a publishing system using text files. Martin is using reStructured Text as a way of marking up structured data (events, people, etc) in a reStructured Text document. He gave a timely example of a travel text file, which was to represent his trip to PyCon. In this file he had regular text describing various topics, and embedded in the text was marked up meeting information, contact information and so it. Nabu can process the file, extract all the marked up data, and then do a variety of things with it, including publishing a web page kind of view of all the data. While Martin says it's not a PIM, I think that it does some interesting things that PIM users might be interested in, particularly some of the 43Folders / life hacks crowd. Martin is very clear that this is not a "for your Mom" kind of tool, but if you are a keep it all in text files kind of person, and want to take things up just a little bit, I think it might be worth looking at. Most of the OSAF folks were in Martin's talk and it sparked some interesting discussions about Martin's work. The travel file example that he showed is exactly the kind of thing that we are aiming to be able to support using our collection system, so it was nice to see something that was similar in spirit.