Skip to main content

The Best Things in Life are Free Birdseed

This weekend we had a call with a prospective client eager to pay us to help them build out a new social media feature in their (very cool) software system. We turned them down.

They had an urgent deadline, but that doesn't scare us. They'd also already done some exploratory prototyping before they realized they needed some help, so they had a pretty good idea of what they needed help with.

After listening to them describe their current status, I asked a few questions and then realized they had run into a little snag with a non-obvious feature of the API used to talk to a particular cloud service.

They didn’t really need our help building and delivering the short term solution, they just needed an email briefly describing the shortest path from where they stood, to the goal.

I sent them the email they needed, right after the call. 

They're running with the ball, now, and they're gonna make the goal.

We didn’t lose business, we made a friend.

A fascinating thing about this experience is that their deadline was so tight and they were already so close to the goal, that lessons of the classic software project management book 📖 The Mythical Man-Month by Fred Brooks came into play on a really visceral level.

Here's the relevant portion fo the Wikipedia entry (the entire book is well worth reading if you haven't gotten 'round to it, yet):

"Therefore, assigning more programmers to a project running behind schedule will make it even later. This is because the time required for the new programmers to learn about the project and the increased communication overhead will consume an ever-increasing quantity of the calendar time available. When n people have to communicate among themselves, as n increases, their output decreases and when it becomes negative the project is delayed further with every person added."
• Group intercommunication formula: n(n − 1) / 2
• Example: 50 developers give 50 · (50 – 1) / 2 = 1225 channels of communication.

Adding to the team introduces new communications interfaces between people. Even if it’s slight penalty under normal circumstances, there’s a definite cost to adding a new member or two, to a team, measured in communications overhead.

In the case of this project, the relevant portions of the teams seem pretty manageable, at first, the client team was lean and nimble, with three people.

3 (3 -1) / 2 = 3 channels of communication for the original client team

Our team would bring two people onto the task at hand, to meet the urgent deadline.
5(5 -1) / 2  = 10 channels of communication for the augmented team

More than three times the communication channels!

Adding a small number of people to a small team can be a big productivity boost, but given the other constraints of a very tight deadline there's a non-trivial risk of accidentally peddling backwards.

This project also has certain technical constraints and a few possible pathways to a solution that would work, but only one that could work in time to meet the deadline.


Popular posts from this blog

Blogs: Not dead, yet!

If you're a blogger, you might find this essay, recently shared to YCombinator's Hacker News  from a blog, to be of interest. It's perhaps a little pessimistic, but has some fair observations about the state of affairs in the #blogosphere.  If I could bring one thing back to the internet it would be blogs It's almost impossible now to find a blog that's not on a focused theme because that's what search engines focus on and how websites profit. But you want the opposite, a blog that never tried to focus or even thought about it.  The observations about the role of the only search engine that presently matters, Google, in the state of the blogosphere are worthy of consideration. In the discussion at Hacker News, the author was criticized a bit for saying that Google Blogger was "dead" —which itself seems a pretty fair criticism if not strictly accurate in a pedantic sense. Google basically abandoned Blogger in place years ago. Sure, our own ill

iBlogger 3 for iPhone and iPad available now on App Store

Pulling iBlogger off the #iPhone #AppStore a few years ago wasn't an easy decision.  One of the first apps on the App Store in 2008, iBlogger had grown a loyal following of thousands of bloggers who had created over a million blog posts in the first couple years. Countless more after that. To save the product, we had to kill it. But iBlogger was always a labor of love for my team, not really a profit center. We didn't have the bandwidth to maintain the old Objective C source code and migrate the app to Swift at the same time. Too many things were changing at once, new blog platforms being created, old ones being retired, new protocols, social media, and a strong demand for iPad support when the core of the app made unfortunate assumptions about iPhone screen sizes.  To save the product, we had to kill it. So we did. Today, that painful decision bears fruit.  iBlogger is back on the iPhone and #iPad #AppStore!  iBlogger 3 is a great new foundation for the future of mobile bloggi