Skip to content

Scrumming

So now I’m a Certified Scrum Master, or at least I will be once the paperwork is submitted and checked. Right now it’s a fairly painless process, you show up to a seminar, take part in an active way, and emerge at the end certified by the instructor. In a few months people will have to do an exam as well, which may or may not be an improvement in practical terms.

The two-day course was intense and I was glad I’d read up on Scrum first. The book I read was Ken Schwaber’s Agile Project Management with Scrum; the one recommended in class (run by Danube’s Jimi Fosdick) was his Agile Software Development with Scrum. After a brief introduction to the principles of scrum, we went to work on an immersion assignment using those principles. The energy level was high given the compressed time frames, all the teams came up with something worthwhile, and I for one left with a reasonable understanding of how scrum works when it’s in an ideal setting.

Which, of course, is the issue. Scrum is not a silver bullet, and won’t make up for problems in the organisation. Mr Fosdick was careful to point out that implementing scrum is risky, it tends to uncover problems in the organisation, and it often fails to give the results companies want for those reasons.

On the positive side, the Scrum Master role is very similar to what I’ve always understood the role of the project manager to be – keep the team moving, get rid of obstacles for them, keep meddling managers or sales people out of the way. It formalises those aspects of the role, and I like the idea of the sprint being a defined length of time, so you can always say to a manager or sales person that their important item will be taken into account at the next priority-setting meeting on a defined date. One issue that came up in the discussions was whether the Scrum Master should also be a programmer. Mr Fosdick’s opinion was that no, in practice a team with a dedicated Scrum Master is, as a whole, much more effective than a team with a Scrum Master who also codes. The main reasoning was that the Scrum Master who doesn’t code concentrates on getting impediments out of the way of the team, keeping track of progress, and thinking of ways in which the team performance can be improved while the Scrum Master who codes is also thinking about the code to be written, how much s/he can commit to doing on any given day, etc. This makes sense to me, though I know a lot of companies who insist on the project manager also being one of (perhaps the lead) developer on the team. If that conflation of roles works, there’s no reason to change it. If it doesn’t, it’s something to think about. I know in my work as a project manager, I’ve always found there is lots to do without also being responsible for delivering quality code as well.

Cloudy Ideas

Many people outside the knitting world probably don’t think about the fact that knitters have conferences too, where they register for classes taught by famous people at some venue. Recently a famous knitter (Stephanie Pearl-McPhee, aka Yarnharlot) organised such an event. I think she got some bad advice from her IT people, whoever they were, about what would be required to run the online registration system.

To be fair, the IT people thought the organisers were being optimistic about how many people would show up. I’m going to summarise the salient numbers; if you want more details, read the blog post. With 12000 on the mailing list, they figured 5000 people was the number to expect, competing for about 4000 spots. The organisers “built a huge server and a pretty good system” for those expected 5000 people. In the event, they had over 30,000 simultaneous connections, and the server couldn’t handle it.

It seems to me that these requirements are precisely what cloud computing should be able to handle. For this particular event, it was possible that only 1000 people would try to register at once, or that lots more would. The load could have been spread over a couple of months if the conference seats sold slowly, or over an hour if they sold fast. Buying a server big enough to handle the maximum expected in this actual case resulted in a server and system that were too small; it could have also happened that money was wasted on something that was far too powerful for what was needed.

What I’d like to know is how, in general terms, should such a system be architected? If you were using this as a case study on how to do cloud computing, what would you propose? Some more requirements: People can register for more than one class. Class sizes are limited, and the size depends on the class. The system has to include an online payment system.

I’m not looking for lots of details, just a broad-brush outline of a paragraph or two, like “put X on one virtual server that can scale up, and Y on another”. My personal experience so far of “the cloud” has been for storage rather than these sorts of systems, and this use case has intrigued me.

It’s Been a Long Time

Since I posted anything, I mean. Which doesn’t mean I haven’t been doing things, just that I’ve spent more time thinking and doing and talking than writing and describing.

The garden is looking better after the relative neglect of the past couple of years, although there’s lots more to do, as always (the weeds have more time to grow than I have to weed). I’m Course Director for the XML Summer School, which means working with the members of the Faculty Board for the courses they’re chairing and figuring out who should speak, and on what, for the two courses I’m chairing, as well as taking care of the other myriad details that go with any event. I’ve met with people in Vancouver for knitting afternoons, and lunches talking about distributed project management, and figured out that right now consulting and contract work in project management looks to be the right thing for me to concentrate on (project management being a broad term that covers a myriad of possibilities). I’m even reading up on some of the formalisms for project management. I did basic project management training early in my career, but I’ve mostly done what seemed to me to be the right thing without using Gantt charts and formal resource allocation. Mostly it worked out pretty well, but some of the formalisms such as Scrum look interesting. I’ll post some of my thoughts on those later, along with thoughts on distributed project management.

Summer of XML

One of my current projects is as Course Director for the revamped XML Summer School in Oxford, England. John Chelsom asked me to help out and I was only too happy to say yes; I have many fond memories from previous years. It will be more a late-summer school this year, being from September 20-25, but that does free up more of the summer proper for other things, not to mention giving us more time to figure out the schedule and speakers.

Another advantage of late summer for the XML Summer School is that it doesn’t clash with Balisage in Montréal, Canada, which is on August 11-14 (with the symposium on processing XML efficiently on the 10th). Papers for that are due on April 24, so you don’t have much time to get them in if you’re planning on speaking. Any markup-related topic is welcome, as long as it is of sufficient quality and depth.

It’s interesting comparing the two – Balisage is a geek’s conference, unapologetically aimed at people who are think deeply about the issues, even if they’re not applying them at work. The XML Summer School is more like training, aimed at less expert practitioners of and newcomers to XML, and more likely to be attended by people who want to go back to work the next week and apply what they’ve learned directly. A few of the speakers are the same, of course, and the discussions over dinner tend to veer in some of the same directions.

And, of course, both conferences are on Twitter; Balisage at http://twitter.com/Balisage and the XML Summer School at http://twitter.com/xmlsummerschool.

Tagged , , ,

DVDs and Regions

I admit to finding it amusing that Barack Obama’s gift to Gordon Brown of 25 classic American movies ended up illustrating one of my hot buttons – Mr. Brown couldn’t watch the Region 1-encoded DVDs on his Region 2 player. Here’s TechDirt’s take on the story (link from Volker Weber).

I have been in many discussions with wet-behind-the-ears idiots in consumer electronics stores who parrot the Hollywood line that region-encoding is just fine and reasonable. Asking them why sending DVDs from the US to Europe is bad and should be stopped meets with a “huh?” answer. Asking them why my toddler should not be able to watch DVDs sent to us from friends in Australia elicits more of the same.

Eventually we bought a DVD player that plays from other regions as well, making it possible for me to buy German-language DVDs suitable for my children (not easy to find in Region 1 encoding). To my mind, the fact that the regions were set up to put Mexico in with Australia and New Zealand shows how nonsensical the whole concept is. I really don’t understand why so many DVD manufacturers automatically region-encoded the DVDs rather than making them region-free, and I’m pleased to see that even though Blu-Ray repeats the whole region idiocy, many manufacturers are in fact making their Blu-Ray discs region-free.

I assume at least part of that response is due to the wide availability of DVD players that don’t worry about regions, and the availability of instructions to mod other DVD players. There’s an interesting write-up of the law case against Sony in Australia as well, which points out that “retailers of DVD players are not bound by the terms of the CSS licence and the accompanying technical specifications”.

This whole thing is one of the reasons I was so concerned about the copyright legislation Canada’s Conservative government was trying to have passed last year. It currently seems to be stalled, so I can show my kids their German-language DVDs, and DVDs from Australia, with a clear conscience a while longer.

OpenSolaris and ddclient

I have some minor sites running on the basement OpenSolaris box, and since our IP address changes regularly, I use ddclient to notify DynDNS of the changes. It was working just fine on the old Debian box, but of course OpenSolaris does things differently, and the ddclient package doesn’t come with all the bits you need to make it work.

Step one: download the ddclient package from Sourceforge, and follow the instructions in the README as to where to install it. Easy enough, done.

Step two: go to the DynDNS site, log in to the account, go to the Support Tools section of the website, and click on the “Update Client Configurator”. This takes you to a page that will automatically generate the configuration file for ddclient for your account. This is one of the reasons I like DynDNS, by the way, they think of little useful tools like this.

Step three: make the configuration changes in the ddclient.conf file, and try running the ddclient Perl script to see if it works, using ddclient -daemon=0 -debug -verbose -noquiet to get all the error messages. One tip: if you have spaces in your password, surround it with single quotes, not double quotes. The latter don’t work.

Step four: the hardest for someone new to OpenSolaris is to figure out how to run the daemon. It turns out that Solaris has a “Services Management Facility” (SMF). The specific instructions to follow, once you’ve figured out the basic concepts, are at Chris Gerhard’s ddclient meets SMF. Mind you, I did need to read the documentation on Managing Services to find out where to put the file (/var/svc/manifest). Just as well Sun lets lots of people blog, it certainly makes it easier to find information. I do wish they could figure out how to give their standard documentation memorable URIs though.

Now I just have to wait until our local IP address changes to see if it works. [Update: yup, it works.]

Tagged , , ,

Bad Behavior has blocked 410 access attempts in the last 7 days.