Categories
Uncategorized

First a Django Guy and Now a Microsoft Guy: “Thank You, Rails”

monkey-knife-fight Platform wars are like monkey knife fights: amusing at first, but regrettable and messy in the end.

You don’t see this very often, and it’s a shame: Jacob Kaplan-Moss, co-creator of Django, the Python-based MVC web application framework, wrote a great article titled Thank You, Rails. From the article’s opening paragraph:

It’s fashionable, or perhaps inevitable, for tech communities to trash their competition…We geeks make arguing over minor technical points into a kind of art.

The most important point in his essay is a few paragraphs down. He points out that while having a competitor often lends focus to a developer community and that a rivalry can often bring about excellence among all parties concerned, it can also bring bitterness and nastiness. He wants to counter those latter things, and so he writes:

I think it’s important to recognize that we in the web development community do in fact owe Rails and the Rails community a debt of gratitude. Rails helped reframe the way we think about web development, and even those who’ve never touched Rails nevertheless are probably reaping indirect benefits right now.

So I think we should all step back from our personal preferences and plainly say thank you, Rails, for all that you’ve done to move the state of web development forward.

Rails was a wake-up call to the web development world in so many ways. In the short time – a mere five years — that it’s been around, it’s been responsible for many changes in the world of web applications:

  • Popularizing MVC amongst web developers. Yes, it had been done before, but never quite as elegantly or explained so clearly.
  • Bringing concepts like DRY and Convention Over Configuration into the developer vernacular.
  • Proving that simplicity is a feature, whether it’s from the developer’s or end user’s point of view.
  • Pointing the spotlight at the Ruby programming language.
  • Driving a movement towards web applications with both beautiful and usable interfaces.
  • Reminding us that programming should be fun.
  • Reinforcing an important idea that we often forget: community matters. (If you’ve been to a RailsConf or better still, RubyFringe and FutureRuby, which takes the Ruby/Rails community camaraderie and turns the dials up to 11, you know what I mean.)

Speaking as a Microsoft guy, I too would like to say “Thank you, Rails”. While I can’t honestly classify myself as ever having been a serious Rails developer – it’s mostly noodling on personal projects and one major cancelled project at Toronto’s worst-run startup – I come from the periphery of the Rails community, having been an unofficial evangelist and occasional court jester, as evidenced in this performance from the evening keynotes at RailsConf 2007:

I take a lot of what I’ve learned from the community-building effort that made Rails what it is today and have applied it to my work at Microsoft. From what I’ve been hearing, it seems to be helping.

It’s not just the community aspects of Rails for which both Microsoft and I owe Rails a debt of gratitude — there are the technical aspects as well. I’m sure the event-driven desktop-style development metaphor behind ASP.NET makes a lot of developers happy, but it drove me bonkers – and also to PHP (and eventually, Rails) — back in 2002. The drive to create an MVC web application framework that treated the web like a first-class citizen instead of “like the desktop, but lamer” led to the creation of my preferred Microsoft web framework, ASP.NET MVC, and I cannot begin to convey how grateful I am for that. I love ASP.NET MVC, and a good chunk of the reasons why stem from the Rails-isms that found their way into it. I think ASP.NET MVC developers would benefit from getting to know Rails and taking it out for a spin – and I think the Rails developers would also gain something from giving ASP.NET MVC a try.

I once read a saying that has stuck with me all these years: “When you slice a blade of grass, you shake the universe.” Yeah, it’s a pretty drama-queeny way of saying that everything is interconnected, but it’s true in many respects, including human endeavour, which in turn includes software development. It’s an ecosystem, and different parts of it influence each other all the time. I think that the best participants in that ecosystem learn from other parts, and acknowledge those efforts that make the ecosystem a better place in which to live.

joey-devilla-on-accordion-at-railsconf-2007

So to echo a Django guy’s sentiment, here’s a Microsoft guy saying it: Thank you, Rails.

This article also appears in Canadian Developer Connection.

Categories
Uncategorized

Silicon Alley Insider on the King of the Apple Geeks

Screenshot of the "Daing Fireball" blog Silicon Alley Insider states the obvious – at least it’s obvious to Macintosh fans: John Gruber is King of the Apple Geeks.

On the off chance that you hadn’t heard of John before, he’s the one-man force behind Daring Fireball, one of the must-read sites for fans, followers – and yes, even evangelists for the competition — of Apple. He’s been writing the blog since the summer of 2002 and over time has acquired a legion of readers that includes higher-ups at Apple, Inc. His recent article about how Ninjawords, an iPhone dictionary and the latest app to get rejected by Apple’s Kafkaesque approval process was not just spot-on; it also got linked to by a large number of influential tech sites and managed to garner a response from Apple senior VP Phil Schiller, which he published as a follow-up article.

As with any site created by an Apple True Believer, Daring Fireball devotes a number of electrons to taking on The Empire, the most recent set being Microsoft’s Long, Slow Decline, a long but interesting (and also much-linked-to) article on the company’s current state and the challenges it faces. Whereas  lesser, more rabid fanboys — Daniel Eran Dilger of Roughly Drafted, I’m lookin’ right at you – would’ve been content to prematurely dance on the company’s grave, John enumerates the company’s missteps with solid reasoning and soberly (well, mostly soberly – hey, I’m not going to deny him his little bit of glee on behalf of his team). Even when he’s pummelling the organization for whom I work, I have to credit him for going beyond mere tribalism and penning some of the best-thought-out tech articles on the web today.

Why do I read him?

  • For starters, he’s good. I’m working on becoming one of the web’s best writers, and it pays to learn from the pros.
  • It’s also partly out of habit; I was a Mac user prior to my hire as a Microsoft Developer Evangelist.
  • It’s also my job. I do both Microsoft and its customers a disservice by not looking (and learning) outside Microsoft’s walls, especially since I was hired for my outsider’s perspective.
  • It helps me with my job. His blog is practically a laundry list of things I need to focus on.

Here’s a question for which I can’t easily come up with an answer: is there a Jon Gruber analogue in the Windows world? If not an analogue, any close approximations? Let me know in the comments.

Categories
Uncategorized

With Advocates Like Zed…

I can’t help but wonder if, what with Zed Shaw’s talk of switching to Python and Django, if Guido and Adrian view him the way Barack Obama is portrayed as viewing Jesse Jackson and Al Sharpton in The Obama Files