Sunday, February 21, 2010

Perl and Python documentation or Pydoc considered harmful

If you've read my programming posts before you know that I've transitioned from being mostly a Perl programmer to mostly a Python programmer (and from C to Perl before that). For the most part, this has been a painless transition. Python tends to take itself too seriously (which leaves me thinking: odd choice of name), but other than that it's a good language. Perl has its strengths, to be sure, but so does Python. One area, however, that causes me no end of frustration is reading Python module and program documentation. Coming from Perl, as I do, I'm used to flowing, descriptive documentation, the crafting of which is as much a part of the authoring of a piece of public code as the source.

In the Python world, it's another story. There are projects with excellent documentation like django, but I've never seen one that used the built-in documentation system in Python that was worth the time it took to create. (more...)

Saturday, February 20, 2010

The Canon EOS T2i: My new dream camera

The Cannon EOS T2i (what a horrible name) has everything I've ever wanted in a camera. It's a great digital SLR with the industry's best lineup of lenses behind it. At 18 megapixels (5184 x 3456 max resolution) it's a beast of a camera with one of the most advanced sensors in the industry. On top of that, it's capable of a range of light sensitivity that has previously only been found in professional (read: multi-thousand dollar) cameras.

Now, if that doesn't make you want one, it can also shoot full HD quality video at up to 30 frames per second. You can even step down to a smaller resolution and get hardware-based digital zoom of 7x that doesn't sacrifice sharpness.

I bought the first Digital Rebel when it came out and I loved it. But I've always envied my friends who bought later models. I think it's finally time for me to upgrade.

Tuesday, February 16, 2010

What Google Buzz is good for (and not!)

I've been playing with Buzz since it launched and I have a few interesting observations from my experiments. The first is its (and Facebook's) largest failure: Buzz is not for celebrities. Twitter is still the single best venue for celebrities. Why? Because replies gain little visibility from their association with a celebrity post. On Buzz and Facebook a reply associated with a celebrity posting is immediately visible to everyone who follows that celebrity and that creates enormous incentive to post mindless drivel and spam in response to any celebrity posting. This might be improved if Buzz had two kinds of "following": one for friends and one for celebrities and other people you don't know directly. The primary difference I'd be looking for would be hiding replies and not bumping an item in my list when it's replied to if it's not a friend.

Next up: local Buzz search is really nice. Be it on Google's map software or stand-alone, the ability to see what people nearby have been saying is huge. Of course, it will require more adoption to see its potential realized, but it's a great start. Some use cases include searching for a nearby restaurant that people like, finding the best spots at a public event and asking "the neighborhood" simple questions like where people like to do their laundry. If I move to another town someday, I'll certainly be doing lots of buzzing right off the bat.

Integration with other services: mixed bag. Until Google solves the problem of messages from other services (Reader, Yelp, etc) being duplicated when people reply to them on the remote service, Buzz will be a poor place to comment on shared comments and articles from other services. Still, the integration with these services is promising. I was able to do much of what I'm now doing with Buzz in Reader by following RSS feeds from other services (e.g. following my friends' YouTube feeds). But Buzz makes it easier and much more social.

I think Buzz is probably here to stay, and while I'm sure Facebook will continue to do well, it's clearly the primary target of Buzz and it will almost certainly feel the heat.

Friday, February 12, 2010

Song Review: Methylchloroisothiazolinone by Josh Woodward

Sometime in late 2008 or 2009 I began paying attention to freely available music via Free Albums Galore. Through that site I found a plethora of download sites that supported artists by giving them a forum in which to share their own works with the public. Publishers, music social networking sites and archives are all working hard to figure out what the right model is. Among them I've found some gems like Diablo Swing Orchestra and After the Fire. But one performer who I've always been on the fence about is Josh Woodward.

I first came across Josh via Free Albums Galore's review of The Simple Life which I feel is a heavily mixed bag. I did enjoy the upbeat and catchy Afterglow, but that kind of light fare seemed to be all he did, and in many of his others songs it just became too saccharine for me to take.

Flip forward to Christmas 2009 when I was trying to turn people on to the blocSonic netlabel and their netBloc series of free collections. It was then that I stumbled upon Methylchloroisothiazolinone in volume 8 (blocSonic has put together an astounding 26 albums of free music!) Here, Woodward shows that he can rock and even bring a dark sense of humor to the table. The song is about a preservative found in many personal hygiene and moisturizing products, but also triggers an allergic reaction is some that causes eczema-like symptoms. The oft-repeated line in the song, "you make me feel so clean," makes me chuckle just a bit, but at the same time it makes me wonder how many people have been caught in a cycle of using more and more moisturizer to treat the condition caused by that very same product.

I'm still of two minds when it comes to Woodward, but this song has lead to a re-examination of his work, and that's never a bad thing.

Wednesday, February 10, 2010

Google Apps Last Straw: Buzz

For business use, Google Apps is amazing. If I start a company someday, its very first action will be the outsourcing of all communications through Google Apps. Why run a chat server, mail server, document sharing system and calendar server when you can just sign up for Google Apps?

On the other hand, I've now given up on using Google Apps as my primary interface for personal communications. Why? Because Google's social services such as Blogger, Reader and now Buzz don't support it. This means that you have to log into those services and share with your friends an identity that you don't actually use, and in order to manage that identity and its relationships, you need to log into a mail account you don't care about.

So, while my official email address will always be ajs@ajs.com, I've now moved back to using public gmail as my primary window on the social world and all mail to ajs@ajs.com will simply be forwarded there. Some useful tips, though, for those of you who want to do this sort of thing:
  • You can configure gmail to send outgoing mail "from" another account. Configure this in your settings (though you'll have to prove that you own the other account by responding to some mail they'll send you).
  • Contacts can be exported from gmail and imported into Google Apps or visa versa.