• About us…

  • The archives

  • RSS The Gaming Session

  •  Better and faster with IPv6

  • ipv6 ready

I’ve been trying to figure out what, if anything, the Lab’s new viewer development model actually means in practical terms. Acta non verba and all that. Just because something is said to be better (or worse) doesn’t necessarily mean that it is.

So, Snowstorm. From a marketing perspective it’s a pretty lousy name to give something, as it is most commonly associated with words of inconvenience, disruption and paralysis. Unless you’re a grade-schooler hoping for “a snow day”, I imagine.

The One Tree

Nevertheless, viewer development is now a bit more open. Instead of Linden Lab maintaining building its viewer from a source-code tree that nobody ever sees, and the open-source contributors building from a parallel, forked tree, there’s now just one source-code tree for both the Lab and the open-source contributors.

The Scrums

Linden Lab now adds the concept of “scrum teams”. Basically a number of small teams that focus on, well, whatever. One might work on mesh, another on targeting crashes, another at speeding up load-times. Preventing those teams from bollixing each-other up with code-conflicts is going to be… interesting.

The work is broken up into ‘sprints’. A sprint basically consists of “What can we deliver in 14 days?”

It’s possible (and perhaps likely) that sprints will overlap QA cycles, giving an approximately weekly release cycle.

The Lab knows best

Linden Lab still remains authoritative for all contributions. The Lab may veto any contribution, and no Lab contribution may be vetoed or negotiated. This is as it should be (and as it has always been), since it is the Lab’s project, and it sets the rules – except for one problem.

The problem with this is that the Lab has a history of making bad decisions in this regard. Does anyone remember the Single-Sign-On debacle a couple years ago?

The Lab introduced a new login system, which met with 100% opposition from the open-source contributors on several grounds: technical (it wouldn’t really work properly) and would interfere with other software, scalability (it was quite inefficient), and misguidedness (it would not actually achieve the stated goals).

The Lab refused to back out of its plans, and refused to listen to or discuss the issues with them. Months of development time went into the new system, which reached beta… and then had to be abandoned, for all of the reasons the open-source contributors had raised in the first place. This wasn’t the only such similar instance.

Also, the Lab has vetoed quite a number of bug-fixes and improvements in the past, on the basis that it was going to work on those same sections of code itself… eventually. Perhaps. Often the work was never done, and simple fixes for common problems languished for months, or years while the problems persisted.

Want to make the old 1.x UI available as an optional UI for the viewer? Not open for discussion, apparently. The Lab is making the UI decisions. And we all know how well that worked out last time.


If I’m reading the contribution mechanisms correctly, you apply to fix or add something that is in the project system, and then that is reviewed, and approved or denied. Your contribution is then scheduled for one of the two-week development sprints.

Fixes are almost always fast-tracked in this model, but any new functionality or alterations of existing functionality must be carefully reviewed.

Of course, you must still have a contribution agreement submitted to the Lab so that it can license your code out under other-than-open-source terms. Update: The contribution agreements don’t necessarily work quite like you think.


I haven’t yet thought through all the implications of the license change to LGPLv2. I’ll get back to you on that, though you’re welcome – of course – to add your own thoughts.

So, that – as I understand it – is what the Snowstorm model boils down to. Is that an improvement from the open-source development side, or not?

Tags: , , , , , , , , , , ,

Got a news tip or a press-release? Send it to news@taterunino.net.
Read previous post: