DevShop: The Cool Game that Makes Development Look Fun

sallys spa, you push customers around and upgrade equipment

Despite my earlier protests about the damn thing, I went and bought a bloody iphone.

And on this new device (with which I am utterly utterly obsessed) I've been playing a bunch of games, and hence, have been thinking about inventing new games of my own.

Now one of the most intriguing games I've played is 'Sally's Spa' (pictured at right) from Game's Cafe.

It's a kind of 'lemonade stand' game, tailored around running a day spa, with a few interesting little details.

I played an intense session of this on the way to work one day last week, so when I arrived I was still in a game-trance and couldn't help but see my life as an 'extended bonus round' of Sally's Spa.

an angry mole, actually a failing automated test, annoyed to have been plucked from his burrow to arrive in my subconscious mind when he least expected it

At the 'daily team standup' we were throwing the over-inflated tennis ball around, in a mesmerising, slightly trippy dance, then later the 'build chicken' flew past me, and i saw the automated test failures popping up like members of a cosmic game of whac-a-mole.

Over lunch, while munching my avocado chicken bonus food supplement, I used one hand to draw-up detailed plans for a classic iphone game, based around the establishment and advancement of a software development shop. Let's see what happens as you take your humble development house from the small time to the big time...

So, here's this week's ridiculous plan, complete with iphone scanned images, for a face-melting platform mega killer:

DEVSHOP!

How does it start?

You're a dev who decides to go it alone, and start their own... (wait for it...)... DEVSHOP!1!!

You start out with a crappy office, a few plastic chairs, an old 386 with a 15 inch CRT. Your development tool of choice is 'notepad.exe'. Source control? What's that.

You do have a story wall, a cheap desk for extracting customer requirements and a typewriter for creating invoices, once the product ships.

Here's the basic layout:

devshop: modest start, click for larger image

The only staff member is you. And I'm sorry to tell you, your skill-level is very low in terms of business analysis, development and testing. You're a basic 'Jack of No Trades'. With no other staff, you have to do it all yourself.

As new customers arrive in the bland reception area (lower left), you take them to the meeting 'room' (top left) where they divulge their requirements, which then appear on the story wall (top middle). You head to your cubicle to develop the requirements, then pick up those same requirements for final testing, and finally, if the work passes your testing, to the billing desk where customers are presented with an invoice.

Due to your lack of skills, things can go wrong at every step. The analysis, the coding and the testing are all error prone in multiple ways. Poor analysis can create invalid requirements that need clarification during development, or for which the customer later reject the works (or pays less, or demands re-work). The development itself is slow and buggy, while the testing is inconsistent, and likely to either let bugs through or cause wasteful re-development.

But even with these limitations you can still earn a trickle of dollars to get through those first few awkward rounds.

When each round finishes, you get a chance to invest the money you've accumulated to improve your devshop, and raise the bar.

You might upgrade your equipment. Maybe turn that 15 inch cathode ray tube into a triple-panel flat screen, for added productivity. Replace that plastic chair with an Aeron -- including added lumbar support. Add a lolly jar to the meeting room, to keep customer's happy; or get a work blind or a camo cube.

You can upskill your staff, buying them copies of 'Code Complete' and so forth (the game could be monetized through product placement?) or by sending them on training in a myriad of topics.

Training (and books) are centred around topics that apply to the chief disciplines: Development, Testing and Business Analysis, always with a view to increasing speed of a step (a step is done faster), decreasing turbulence (less steps over all), or improving customer satisfaction (better pay at the end of it).

Really swimming in cash? You might be ready to increase your headcount. Go to the job market to hire extra people. Each candidate advertises a certain competency in terms of Development, Testing and Business Analysis, and they all demand a hefty price. But until you've hired them and seen them in action, you don't really know what you're getting. Unless, of course, you've given yourself enough training in Human Resourcing and you've upgraded your lie-detector to the most expensive model on the market.

Here's how the same office might look once you've hired a bunch of people and equipped them well.

devshop: more advacned

Still, the difficulty for me, is trying to see my life as anything other than an extended, life-size game of 'DevShop'. Maybe if I put the iphone down for just long enough, reality will begin to find its way back into my state of mind.

Reality. There's an app for that, right?

(Bonus inventory lists for those who 'clicked through')

  • EQUIP >>
    • Hardware
      • Monitors: qty, size, shape, video card
      • Mouse: 3m Ergonomic upright, gamer's gun style, and beyond.
      • The Office server:
      • Dedicated build machine
    • Software
      • Dev Environment
      • Source Control
      • Database control and migration *
      • Unit Testing
      • Continuous Integration
      • Bug tracking
      • ORM
      • Graphic design tools
      • Project management
      • CRM
      • Software for the Server (endless)
    • Furnishing
      • Monitors - qty, size, shape
    • Food and Beverage
      • Monitors - qty, size, shape
  • TRAIN >>
    • Printed materials
      • Books (many many titles)
      • Magazine subscriptions (ever dwindling list!)
    • Developer training courses (too many to list)
      • Code Reuse
      • Writing courses
      • Topics in usability
      • Scalability
      • Secure code
      • Literate code
      • Defensive coding
      • (and thousands more:
        always 'general' topics)
    • Tester training (sample)
      • Effective repro
      • A Lesson in Regression
      • Eliminating the irrelevant
      • Automation for fun and profit
      • Rattle testing: the dying art
      • Load testing for one
      • Overcoming developer envy
      • Usability Testing
      • Accesibility Testing
      • Performance Testing
      • Automating the Impossible
      • Agile Testing: Fact or Fiction
    • BA/Project management Traning
      • Handling difficult people
      • Required reading in reading Requirements
      • 'What are you really wanting to achieve?'
      • 'What's it gonna cost if you don't have that feature?'
      • An analysis of the cost and benefit of cost benefit analysis
      • Business Process Re-engineering from 20,000 feet
 

I'm currently writing a book about how to build your first product. If you want to build your first product, please sign up to be notified when the book is available.

(By the way, I read every comment and often respond.)

Your comment, please?

Your Name
Your Url (optional)
Note: I may edit, reuse or delete your comment. Don't be mean.