Archive for July, 2008

Finally Have My iPhone!

Well, after what seemed like a long wait (see my post a month and a bit ago), I’m holding an iPhone 3G in my hot little hands. Appropriately enough, this post is being written on the device itself!
Let me say right off, I love this thing, and a day after I got it, I can say it is everything I was expecting. That’s not to say it’s not without its annoyances, but so far nothing I didn’t already know about.

So a bit of background: I’ve had a palm pilot of one sort of another for almost a decade, but the technology in that space hasn’t really gone anywhere that I wanted to go. So first and foremost, I was looking to the iPhone to fill that slot. This is the primary reason I didn’t get the first version - the lack of apps. I’m happy to say that after downloading a bunch of free apps (and whittling them down), and making my first purchase, I’m 90% of the way to having everything I need - and the other 10% isn’t anything major.
The second major point for me was shedding some of the gadgetry I usually carry with me, which was the old phone (yup, I’m coming from a Blackberry), the afore-mentioned palm pilot, a compact digital camera, and an older iPod. The iPhone doesn’t have the same capacity as the iPhone my iPod, so it’s just going to be for podcasts and a few favorite albums, the phone’s camera won’t replace a real one. Despite that, going from four devices to two is still a big win.

After a couple days of use, I’m very happy with this, and look forward to the coming updates that will hopefully add a few things like cut-and-paste (I’m in agreement with a lot of folks on this one: I’ve already needed it a bunch of times), better home screen handling (including icon placement of an app after an update), and better IMAP folder organization would be great. I also hope some of the minor stability issues get addresses.

Finally, I want to address two of the biggest complaints: battery life and the keyboard. I haven’t found the battery to be too horrible, as it gets me through a day of pretty heavy use (my wifi, 3G, and Bluetooth are always on). Of course, I’m coming from a pile of old devices that needed to be recharged if you used them at all, so maybe I’m not the best judge. Secondly, the keyboard: I’m definitly getting better, but it does take some getting used to. I’ve stopped fighting the predictive text, and it helps quite a bit. My biggest problem is where my thumbs actually come in contact with the screen, resulting in off-by-one errors. These are mostly caught by the predictive text, but when you’re typing a ‘v’ or a ‘b’ for a space, your words run together, defeating the thing that’s trying to help you. Guess I just need to slow down :-)

Belated Happy SysAdminDay

Hopefully I’ll get through this without it sounding like a diatribe, but I think it’s somewhat telling that System Aministrator Appreciation Day was 2 days ago, and I found out about it by reading a blog post while catching up on some feeds.  Feeds that I got behind on while at a conference (OSCON), which was, admittedly, primarily for developers, but there’s been a growing contingent of us sysadmins (this was my 5th year for this conference), such that we now see tutorials and sessions geared toward us.  So you think *someone* might have said something.  I would note that in past years, one or two graduate students (I work in academia) would sent a well-wishing or thank-you note to our trouble ticket system, which is nice.  But there was nothing at all this year.  There’s definitely truth to the idea that when we do our job, we’re not really noticed (of course, when things go wrong…), so I’ll take some consolation in the fact that we must be doing an ok job.

OSCON Day 4

Thursday already…the pace is such that if you choose to be, you’re really busy, moving from one talk to the next, to the expo hall, chatting with people, and before you know it, the evening’s activites are on you.  That’s my way of excusing the fact that I’m behind in my blogging. :-)

In addition to some really well-presented keynotes on some interesting topics, I attended some sessions that reinforces my faith in the ability of the organizers to attract (and keep attracting) great speakers with thought-provoking things to say, or vendors with some interesting products or business models (note that this isn’t universal - there’s always those few you listen to or talk to that makes you walk away, scratching your head, wondering how *that* works.).

I attended talks on “Open Source Microblogging”, “MindTouch Deki”, “CSS for High Performance JavaScript UI”, “Open Source as Liberal Art”, and “Machine Learning for Knowledge Extraction from Wikipedia & Other Semantically Weak Sources”.  Like the previous day, I’ll be back to flesh out some of the ideas and things I learned or plan on using - there was some great stuff here.

The day ended with the SourceForge Community Awards held at the Jupiter hotel.  The event was sponsered by ThinkGeek (among others), and we ended up getting a nice bag with some swag goodies.  Overall, pretty fun and decent food.

Midweek at OSCON: Start of the Conference Proper

Despite the usual flood of newcomers to the conference (a lot of people don’t come to the tutorials), the morning breakfast and keynotes didn’t feel any more crowded.  With the keynotes almost over, the break in the expo hall definitely shatters that illusion. The rest of the day was a hectic move through sessions, the expo hall (including the evening reception), and a couple of parties in the evening, thrown by various vendors (there were a bunch of them to choose from).

The hectic pace takes it’s toll: you have to prioritize where to spend your energy.  Unfortunately, in my case, this means getting behind in my blogging.  I went to sessions on Couchdb, OpenID and shell scripting, as well as a Google open source update and an interesting talk called “The Age of Literate Machines”. I keep notes on my daily activities in my personal wiki, so I still plan to come back and fill in some details about the sessions I went to.

The OSCON Kick-off Keynotes: Tuesday Evening

In an interesing change, there were opening keynotes Tuesday evening by some big speakers that are usually reserved for major conference timeslots.  It could be that O’Reilly knows from past experience how many people who don’t attend the tutorials arrive the Tuesday night, but it would seem to me that even if they do arrive that evening, they don’t tend to start their conference until Wednesday morning.  So to have a combination of Mark Shuttleworth, Robert “r0ml” Lefkowitz and Damian Conway (great to see him back at OSCON!) on the evening before the bulk of the attendees seem to arrive is, well, it brings me back to interesting.

Not that I, or anyone else there that night, was complaining.  The last two of these especially had the audience alternating between enthrawled and in stitches.  And it didn’t matter that Damian’s talk ended around 10, or the fact that he talked for almost an hour: the man’s brilliance with original ideas, photoshop and Perl, packaged neatly by his impressive and effortless presentation ability means he could talk for any length of time and still hold an audience spell-bound.

O’Reilly and the conference organizers are to be applauded for putting together a great evening, and a great start to the rest of the week.

OSCON 08 Tutorial Days Wrap-up

With the two days of tutorials over, I just wanted to do a quick re-cap, with some thoughts on my experience this year, and some observations.

In previous years, I’ve picked tutorials that seemed cool or had things I thought I wanted to learn, even if it was not completely something I was doing.  As is usually the case with conferences, I came away from that all hyped up and enthusiastically looking forward to using it, playing with it, implementing it, etc., and…nothing.  You get back to your job, start catching up from being away, and the day-to-day routine takes over, and all the enthusiasm you had fades until 6 months later, you’re cleaning up your desk, and come across the pile of materials from the conference, and you gaze wistfully at the things that had you fired up 6 months ago, and realize that you’re far too busy to get to *that* any time soon.

OK, that was depressing, right?  Sorry for the reality check, however, I say that because this year, I think I actually came across stuff in my tutorials that I can apply to the day-to-day stuff, and that’s a good feeling.  I prefer the hyped-up enthusiasm, but knowing the results of *that*, I’ll take this.  One exception, I took the “Python in 3 Hours”, and, not being a Python person, I did resolve to try and get into it, but I have more of a pragmatic feeling about that, so I’m going with “not the same this time”.

Anyway, a couple of observations about this year.  First, a lot of tutorials didn’t have printed materials (I had none), and almost all had their presentations online, which was great - I don’t really need the paper, and, as the saying goes “you can’t grep dead trees”.

Second, there was no checking at the door if you had registered for a particular tutorial, meaning you could actually go to different ones, which saw a lot of bailing at the break to check out another one.  This made it more like the sessions, which was great for some people, and the seating problem you’d think this would create largely didn’t seem to occur.

In all, it was more relaxed, and was thoroughly enjoyable.  Congrats, O’Reilly, on a great start this year!

OSCON, Day 2: Tutorials Part the Second

The weather is cooler today (about 10° cooler than the norm, according to the local station), and the walk over from the hotel (about 5-10 minutes) was a great way to start the day.  I actually read the schedule, and went to the right place for breakfast today (almost missed it yesterday!), and got caught up somewhat on blogging and news.

My first tutorial was “PHP: Architecture, Scalability, and Security” by Rasmus Lerdorf.  Rasmus, who created PHP, is always inspiring when he talks about the internals of PHP, and using available tools for getting under the hood of what your code is doing at the system call level, and getting optimizations that you might never have thought of.  The first part of this talk was a refresher for me of what he talked about last year, but I never get tired of listening to him, mostly I think because his philosophy toward writing PHP is very similar to mine (or vise-versa: I don’t mean to sound egotistical; Rasmus could code circles around me).  If nothing else, this talk is entertaining: Rasmus runs a web vulnerabilities scanner of his own making against various websites, starting with the conference site.  This year, the talk got a visit from an O’Reilly organizer and their main web guy, hoping the “attacks” were coming from him!  They were nice about it (an change, Rasmus said, from previous years), and even stayed to hear more of the talk.  Other sites scanned were from audience volunteers (at their own sites), and one shouldn’t have: his site had every vulnerability Rasmus’ scanner had a rule for.  Fun stuff.

The afternoon tutorial was “TCP/IP Troubleshooting for System Administrators“.  The speaker, Darren Hoch, was energetic, engaging and funny, making what could be a dry topic (some other word for entertaining).  Most of it covered tcpdump and netstat (although using using some tools (or variants) that I hadn’t heard of: tethereal and dsniff), and using them in different case studies.  The handout will be a useful reference.  In all, some interesting information that can be used in everyday network issues, and a good refresher.

Perfect Timing: Google Releases Walking Directions in Maps

It’s beta (of course!), but Google has just announced walking directions as an option on Google Maps.  Great timing: I’m in Portland, OR for OSCON 2008, and just yesterday I was wishing I could get walking directions to a restaurant, and today I have it!  Well done, Google!

By the way, the warning message is great: “Walking directions are in beta. Use caution when walking in unfamiliar areas.”

OSCON Day 1

Day one at OSCON is always a laid-back affair: there aren’t nearly the number of people here for the two days of tutorials, so crowds aren’t an issue (well, only in the sense that I’ve never failed to be taken aback at mass for the break after the first keynote (not everyone wakes up for that), or in the opening of the exhibit hall!).  The main long hallway upstairs by the ballrooms has maybe a dozen people, all poking at laptops, quietly waiting for breakfast to arrive (although I didn’t go down there, having registered the night before, I suspect that there’s a little bit more activity in the downstairs registration area).

My first tutorial (there are two a day) was “Python in 3 Hours”, which I thought would be a great intro to a language that I knew was incredibly powerful, but had avoided it because “why would I need to know yet another language”?  I came away from the talk still wondering  why I needed to know another language, but having an appreciation for some of the intricacies and power of Python.  Some of the stuff had my brain hurting, seeing that you could do such powerful stuff in very little code.  That’s not always good, and my problem here is that some very hard-to-read code could easily be written, making either debugging, or simply trying to follow flow, hard.  That said, Perl suffers from the same issue, but the obfuscators like to use strings of incomprehensible symbols, and I don’t get the impression that Python is like that.  The presentation was really good, though - the presenter was excellent and even though there wasn’t enough time (is there ever?), there was enough communicated to make the tutorial worth-while.  My take-away is that once I find a good language reference book  and real problem I need to solve, I’ll bite the bullet.

My second tutorial today is “Effective A/B Testing”.  The one thing I’ve noticed going to these is that my job has very little in the way of the rigour businesses require.  The requirement, of course, comes from the fact that mistakes cost money, whereas in academia, it costs time and annoys the users, if they even notice.  One of these is the A/B test, something I sort of knew about, but never really explored in any detail.  This tutorial did a great job of diving right into the meat of the topic, covering not just the “why”, but the “how”, scary flashback memories of university statistics and all.  What wasn’t covered (and wouldn’t have been practical in the 3 hours) was how to deploy these tests (hardware, server configs, etc), which is the one thing I should be able to do well in my environment: with the use of our load balancer, it should to fairly easy to implement.  Of course, finding a problem that could be solved with such testing is another matter.

The day concluded with a great dinner at Henry’s Tavern, then back to the conference center for a BoF: “Open Source in Churches and Missions”.  I was able to take away from that a few pointers to some interesting-looking resources, which was good, but the BoF itself didn’t last very long.  I was expecting more of the people there to be volunteers like me, cobbling together support apps and websites with the proverbial duct tape and chewing gum, but most people there seemed to be employed by larger organizations, with resources.

In all, a great start to the conference this year, and I’m looking forward not only to the tutorials tomorrow, but especially the main conference the rest of the week.

Off to OSCON 08!

Another year, another OSCON! Looking forward to this one - it’s their 10th anniversary, and I’m expecting great things from O’Reilly, despite the weird vibes of last year. I’ve said this in previous years, with less than steller results, but I plan on blogging as much of the conference this year as I can. It has a better chance of happening, as I’m writing this post in the airport, and using IMified. I’m hoping the tools like this will help me get over the inertia.