Yan Pritzker photographer, entrepreneur, software engineer, musician, skier

Blog :: Git Workflows Book :: Dotfiles :: Photography :: About Me

TwitterCounter for @skwp

Get the news feed
Get updates by email
Follow me on twitter

hello, i'm yan

I am a photographer, entrepreneur, software engineer, guitarist, climber, and telemark skier

This blog is about startups, blogging, Ruby On Rails, virtualization and cloud computing, photography, customer service, marketing, ux and design, git, and lots more.

I am the chief technical something or other at Reverb.com - The Marketplace for Musicians. We're hiring web designers!

Recent Tweets

Selected Reading

Archives

Contact

Reach me at yan at pritzker.ws

Rants on google & software dev

Posted 28 September 2006 @ 5am in thoughts



Submit to HN

I just finished an insanely long post by Steve Yegge about working for Google and bashing Agile (the big A religious kind) and showing how Google does agile (small a, practical kind) just right. Some of the interesting practices that Google employs are:

…Developers can switch teams and/or projects any time they want, no questions asked; just say the word and the movers will show up the next day to put you in your new office with your new team.

…Google has a philosophy of not ever telling developers what to work on, and they take it pretty seriously.

…Google drives behavior through incentives. Engineers working on important projects are, on average, rewarded more than those on less-important projects.

…Google a peer-review oriented culture, and earning the respect of your peers means a lot there. More than it does at other places

…They really do understand that you can’t rush good cooking, you can’t rush babies out, and you can’t rush software development.

…The difference is that Google isn’t foolish enough or presumptuous enough to claim to know how long stuff should take…So the only company-wide dates I’m ever aware of are the ends of each quarter, because everyone’s scrambling to get on that big launch screen and get the applause and gifts and bonuses and team trips and all the other good that comes of launching things with big impact at Google.

…There’s also your extracurricular clock: the set of things you want to accomplish in addition to your main project: often important cleanups or other things that will ultimately improve your whole team’s productivity. Bad Agile is exceptionally bad at handling this, and usually winds up reserving large blocks of time after big milestones for everyone to catch up on their side-project time, whether they’re feeling creative or not.

…With nothing more than a work queue (a priority queue, of course), you immediately attain most of the supposedly magical benefits of Agile Methodologies.

Yegge’s points on what he calls Bad Agile hit home. No one really does pair programming right. No one really writes things on index cards. These practices do smack a little bit of Religion as Yegge points out. Agile development is really just common sense! Who ever thought waterfall was a good idea?

I’ve been working on consulting projects since I was about 16, and having at that time read no books on methodology, even at that tender age I understood that you have to have constant feedback or you’ll go nuts trying to deliver a product to a customer who gave you a spec six months ago. That’s not Agile, that’s common sense.

Maybe I’m inspired a bit too much by Yegge’s rant, but what’s with all these words with capital letters? Refactoring. Agile. Enterprise Patterns. Did we really need Martin Fowler to teach us object oriented programming? I mean the guy is great, I love his books, they’re fun to read. But you know if you actually followed the basic principles of object oriented programming like say, data hiding and encapsulation, maybe you wouldn’t end up with an anemic domain model and noodly and duplicated code everywhere. Close the books. Use your noggin!

3 Comments

Posted by
Michael Ivey
28 September 2006 @ 7pm

Most people active in the “Agile” community would agree with you. In fact, if you look at the website for Scrum, controlchaos.com, you’ll see the Scrum tagline: It’s About Common Sense.


Posted by
yan
28 September 2006 @ 7pm

Hmm…if it\’s all about common sense, what does it say about people who pay to attend workshops on common sense? I\’d say it\’s more about systematizing common sense, and there\’s really nothing wrong with that necessarily. But you don\’t need SCRUM master certification do you, if you equate it with common sense, because then you\’re being certified as being able to think sensically. And if you need certification for that, boy you\’re in trouble :)


Posted by
misha
4 October 2006 @ 4pm

http://www.joelonsoftware.com/articles/DevelopmentAbstraction.html

only mildly related but a good article (you might have read it)


Leave a Comment

To post code, use <code></code> tag around your code