Some thoughts about Scrum

I was involved in a wee little exchange on ye olde Twitter social medium over the weekend with @dcancel and @pt in which I said I didn’t like certain aspects of Scrum (which, by the way, is a software development methodology).  I was asked to elaborate.

I think Scrum has a lot of good aspects.  I’ll go a step further and say that for most startups and probably most software projects, Scrum should be your default.  You should be required to make a case for not using it before moving to something else.  However, there are two effects of Scrum that I don’t like.

Most importantly, I think Scrum does have a chilling effect on innovation.  Common symptoms of this are people saying things like “Stick to what is in the sprint” or “That’s a super idea – put it in the backlog and let’s consider it during our next planning meeting.”  Innovation and creativity don’t respond well to statements like this.  They appear suddenly and without warning and are opportunities that you must seize and run with.  Damn your plans.  Scrum is part of a family called “agile methods,” and, by comparison, it absolutely is.  Well, maybe sometimes it just isn’t agile enough.  But I guess it depends on what you are optimizing for.

The second thing that I don’t like about Scrum is that if you have a highly functional team that is cranking, applying Scrum to the chemistry of your team will absolutely slow things down.  As lightweight as it is, there most certainly is overhead involved.  Perhaps there are other benefits of having Scrum in place, but speed isn’t one of them.  That being said, Scrum can be fairly lightweight and is probably the most responsible choice you can make in the face of actual methodologies that you can, say, buy books about.

Now, what do I like if it’s not Scrum?

I like goals.  The objective of a sprint (using Scrum parlance) is to complete the specified work.  Hopefully that maps to your overall strategy.  Hopefully that makes your goals a few steps closer than before.  The reality is that reaching your goals are the most important thing, not necessarily how they are achieved.  If you want to boost conversions, increase registrations, reduce latency, etc., it’s way better to stick with a few key numbers that you can measure against and simply chase those until you’ve moved whatever needle you are measuring.  It is very frequently the case that you will have no idea what will end up working for you in terms of actual tactics.  But the ability to make guesses, learn, retry and iterate is going to get you there.  Sticking to a plan and realizing halfway through a sprint that things are Not Going Well is not going to lead to the desired outcome.  And constantly changing the composition of a sprint makes the whole process seem very flimsy.

But Scrum is just a hammer in your toolkit.  Choose it for the right job and it can be very valuable (yes, really!).  If you adopt it during a phase in your company’s lifecycle when you are trying to focus on innovation, consider yourself warned.

Do you have techniques to make Scrum work better in an environment that requires innovative thinking put into practice?

 

Open source election software

Read this article about the announcement earlier this week of an open source election system that was made publicly available. Now read this wee little blog post about why this isn’t providing us much in the way of guarantees.

The open source nature of the code is helpful in the long run, but it provides absolutely nothing in the way of assurance to voters. Ben Adida’s Helios Voting System provides voters with a cryptographic, verifiable receipt that their vote was counted. Commercial implementations or Open Source versions of this software would both still need to provide a cryptographic receipt. That’s your proof. That’s something that can support the weight of democracy.

ID Selector terms of service

Every now and then, I get it into my head that I’m going to release OpenID support on StyleFeeder. In fact, I have the code mostly written, but there’s always some nit-picky aspect that doesn’t work as well as I want it to, so I leave the code aside and get on with my life.

Some time ago, I came across ID Selector from JanRain, one of a few important companies in the identity space. They have a little javascripty/css thingy that you can put on your site to help users choose from a list of popular OpenID providers and then type in their username. It’s neat and it sure beats typing in URLs.

One thing that you get to do as the founder of a venture funded startup is sign contacts. Woo, fun! Every time I sign up for something online now, I can’t help but read The Fine Print. So it was with great dismay that I read the TOS for ID Selector (see below for some delicious excerpts). The punchline is this: I can’t think of a better way to discourage people from using this cute little snip of javascript that any competent programmer could put together without material effort.

These terms of service, dear reader, are stupid because they are in nobody’s best interest. Site operators should have freedom to adjust the behavior of the widget code as necessary. JanRain should be focused on OpenID adoption, not trying to control their rights for the UI component.

Consistent behavior of the ID Selector across websites is important to ensure that users get what they expect on each usage. If you want an example of a model that works reasonably well this regard, look no further than the feed icons and the guidelines for their use that Mozilla put forth. Open. Easy. Flexible.

The identity space is moving slowly enough without unnecessary impediments like this.

But I don’t like to whine without proposing some solutions, so here’s where I’m going to stop and wait to see what happens:

  1. JanRain – please change your TOS to relax these unnecessary restrictions
  2. Also: release a standalone version of the ID Selector under some kind of an open license (or dual license) so sites that don’t want to have your code loaded in at runtime don’t have to
  3. If JanRain won’t do #2, I’m hereby offering on behalf of StyleFeeder, Inc. to fund someone to create a standalone ID Selector that will be released under better terms. Contact me if you want to be that person.

Some fun excerpts from the ID Selector TOS. No, I am not kidding.

3. Ownership rights. The IDSelector is owned by us and our licensors. The IDSelector is protected by copyright and other intellectual property laws and treaties. We and our licensors reserve all rights not specifically granted to you. You may not reverse engineer, decompile, or disassemble any aspect of IDSelector . You may not modify, adapt, or create derivative works from the IDSelector . Do not remove proprietary notices. Do not help any one else to do any of the things prohibited in this paragraph.

[...]

6. Your responsibilities. You must use the IDSelector web site to obtain an IDSelector tool and/or code located at idselector.com. You may not copy code from another web site to use the IDSelector.

[...]

7. Your rights to use the IDSelector . We offer you the following rights to use IDSelector provided that you continue to comply with the terms of this agreement. You may not remove, distort or alter any element of the IDSelector (including the HTML and JavaScript code).

No, that’s not why perl 5 is dying

Interesting, but perl 5 is dying because nobody created a good way for folks to build web applications with perl. CGI scripts? No, sorry. mod_perl? Died an ugly death somewhere between Apache 1.x and the new MPMs in Apache 2.x. All the interesting frameworks (i.e. Mason, embperl) depended on mod_perl. Those are all basically dying of upstream dehydration.

There’s no technical reason that a conceptual equivalent of Perl on Rails couldn’t have been created years ago. But the innovation shifted outside of the Perl community and those still left were too busy figuring out what was going on with perl 6 to help people figure out how to put a perl-based website together. And don’t get me started about threading.

Perl once was the duct tape of the Internet, but those days are long gone. It’s too hard to connect Perl to a scalable website anymore, so it’s pretty much over until someone can figure out how to change that. It doesn’t hold up next to the options available in PHP or modern Java… not by a long shot.

Perl still has all the good stuff: CPAN and the wildly rich collection of modules comes to mind. But I’m not sure that this can save Perl as a platform.

Sidenote: it’s a crying shame that all that great code in CPAN will end up being rewritten over the coming years. What a waste of time and effort. Just another reason why a multi-language VM is such an important part of a long term strategy.

So long, YottaMusic

I’ve enjoyed using YottaMusic ever since Jake told me about it last year. I signed on and became a paying Rhapsody customer but I used the YottaMusic frontend for streaming my music. I was wondering why YottaMusic shut down over Christmas and now I know.  If anybody knows of another service like it, I’d love to know. The Rhapsody.com website sucks rhino and I’m certainly not going to continue paying for that slow, buggy heap of junk.

Thanks for killing one of the best legit music experiences, Rhapsody. You’re losing at least one customer (me) over this nonsensical decision.

The Key to Shopping 2.0 Success: Empowering Customers

I have an opinion piece in the the E-Commerce Times today about the need for openness as a critical factor in the way that retailers market their products. Rather, the way that retailers provide tools and content to their customers to help them market their products.

In unrelated news, we had some fun at the StyleFeeder office today:

sf-office-fire.jpg

Photo courtesy of Eric Savage. Eric, I “remixed” your photo!  I just love remixed User-Generated Content (rUGC).

East coast startups redux

François writes about east coast startups and Bijan writes some more, all in response to Scott Kirsner’s article in this past Sunday’s Boston Globe (shameless plug: StyleFeeder is mentioned briefly).

There seems to be a dimension of the conversation missing here, though. My view is that there is a veritable wellspring of local developers already working in the consumer space (and even more who want to be). If Boston has any deficiency of b2c/c2c Internet companies, it’s not for lack of technology talent.

It is substantially harder to hire good marketing, bizdev and design people who haven’t spent the last ten years working at banks, biotech companies or consulting companies (with financial services and biotech clients). In fact, most of the design work for StyleFeeder is done either by Canadians or Brazilians and not because they are cheaper or easier to work with than Boston-based designers. It’s because I can’t find a deep pool of design talent here. Boston designers tend to be fairly conservative, which generally isn’t what you want when you’re trying to build for consumers. If you’re a Boston-based designer who thinks I’m wrong about that, I’d love to hear from you.

Marketing and bizdev people with consumer experience are equally tricky to find, again due to circumstances that I have to attribute to the dearth of consumer companies in the area. Technology skills are reasonably portable across industries, but contacts (the proverbial rolodex) and “getting it” are not.  We were able to attract a few great candidates to both of the positions that they now fill, but it took a while and required a lot of patience.  Bringing Dina Pradel and Shergul Arshad to StyleFeeder rounded out a truly kickass team and we’re extremely fortunate to have both of them.

My message to local designers, marketing and bizdev people: speak up and get involved.  The local venture/PE community can certainly help you connect with technology talent, plus there are many events in the area to attend.