Archive for August, 2008

Yahoo Fire Eagle Now Public

Yahoo Fire Eagle has come out of private beta, and it’s now open to everyone. Fire Eagle provides a unified way for applications and web sites to share location data tied to specific users.

For your average web surfer or mobile device user, this means a single, unified way for sharing your location across all of the sites and applications you use (that are on Fire Eagle). When you update your location in one application, other applications get updated as well. Privacy controls let you decide exactly how that sharing should work.

So imagine you are using an application on your phone that works with Fire Eagle. Let’s say that app uses your GPS location to find restaurants near you. When it does so, it notifies Fire Eagle where you are. Now suppose a completely different web site exists that lets people tell their friends where they are. If it works with Fire Eagle, then it’ll see the update from the restaurant finder on your phone.

As a developer, this opens up a whole new range of possibilities, and it also increases the amount of data you could observe.

This is relevant to one of my previous posts on location tracking, and it’s an area I’m really interested in. Will developers embrace it? Will users fear the privacy implications? We’ll see.

Comments

Languages and Their Library Cultures

I saw an interesting blog post today titled Why I stick with Perl. In short, the author’s reason for sticking with Perl was that he believes it to have the best “library culture.” A strong library culture is more important to him than the language itself.

What does “library culture” even mean? I would define it as the practices, beliefs, and institutions regarding the sharing of modular code. In other words, it refers to the systems for sharing code and the practices of developers concerning those systems.

Perl certainly has a very strong library culture. CPAN is one of the most extensive library repositories out there. In my experiences with the Perl community, the use of CPAN has always been encouraged, and I’ve generally been pleased with code quality and documentation.

Besides Perl, this made me think about other library cultures. I never realized how drastically different some of them are. Here are my thoughts on a few of the more interesting cases.

Ruby on Rails

Ruby on Rails is very much so a cut and paste world. Despite the existence of RubyForge, I still find myself grabbing code from blogs, wikis, or some random guy’s self-hosted repository way too often. It’s always a little unsettling. The library culture of Ruby on Rails lacks a certain level of professionalism.

For example, a typical plugin hunt involves going to the Rails wiki, grabbing the plugin from a random guy’s subversion repo, making the changes suggested on the Rails wiki, then going to a forum or blog and copy-pasting the changes suggested there. After all this work, you later find out that some other guy did all this and checked it into GitHub in a new repo. Now whose changes do I follow, the original random guy’s repo or the new repo from a new random guy? And who are these people anyway? It all feels very questionable.

PHP

PHP provides so much in the core extensions that I rarely need to look outside of what’s already there. Whenever I do need something, PEAR or a professional framework like Zend Framework often has it. I can’t think of a single time I ever needed code from a sketchy guy’s repo. Perl might be slightly better about libraries, but PHP still has a strong library culture. In terms of professionalism, both Perl and PHP destroy Rails.

C# and .NET

.NET is a monstrous library which has everything under the sun. Microsoft also provides great documentation. Due to these two factors, C# doesn’t even really need a strong library culture, it already has a behemoth with a ton of money taking care of it.

Microsoft can’t cover everything, though, so they’ll always be the need for other libraries. Unfortunately, the third-party library culture isn’t as open as it is in languages like Perl. The Microsoft world encourages licensing libraries instead of collaborative repositories.

Comments (3)

Close
E-mail It