Two and a half weeks at Canada’s best known rails consultancy taught me a few lessons.
Test less
The folks at Unspace haven’t jumped on the testing bandwagon. They do have a human that does a pretty thorough job of going through their sites and reporting bugs. Yes, a flesh-bot. How quaint, eh?
This works for Unspace because they only build very simple applications. Rather than a limitation, this is actually a design goal. Layers and libraries can get abstracted, but the web application itself must remain simple.
At that point, most bugs are pretty obvious with even minor amounts of smoke-testing. Worse yet, some bugs are for functionality that was specified by a client but just doesn’t make sense, and it’s only when you’ve implemented it that it gets discovered by a human tester.
My first inclination was to think they were crazy to not test. I don’t personally feel comfortable with such a style, preferring heavy unit tests with light or automated functional tests. Simpler applications however are now one of my design goals: web apps just shouldn’t be that complex.
If your helpers need testing, you’re probably doing something that should be done in the model or some other hack.
No Contracts
In a bit over 2 weeks, there were several meetings with the client. Things got re-prioritized, items were added and dropped. Contracts bind both client and provider; it’s easier to work by the hour.
Work less
3 to 4 hours a day of billable time on average. They only bill for work they do when in the zone - even if that means not even showing up at the office on some days.
Some would say that’s unprofessional. Code will suck if you’re tired or not feeling well, and that’s a lot less professional.
Work on fun projects
You can’t always do projects for clients. Complainy took only a few hours for them to write and launch, and they had much fun with it. Visiting them after the end of my contract, they were hacking a Facebook app for playing cards.
It’s fun, and it’s a way to learn and test out libraries and speculative technology. That kind of stuff keeps you sharp - and now they can tell a client they have experience with a facebook app.
Party!
If you work for work’s sake, you FAIL. If you’re ever in Toronto, try to wrangle an invite to their Friday “Tea Party”. Rubyfringe attendees should see some pretty amazing partying.
1 comment so far ↓
[…] development process. Coming the point of this post: you can see some of what they do captured in this blog post by Daniel Haran, who spent a couple of weeks working along side […]
Leave a Comment