I am not sure at what point this happened, or if I even had a choice in the matter (maybe Joel is sending telepathic messages to me). Purple Ant is a monthly subscriber to Copilot.com, and we have a few licenses to FogBugz. I'm both an email subscriber, and RSS subscriber to JoelOnSoftware.com. I own a copy of Joel On Software the book, as well as More Joel on Software, and User Interface Design for Programmers, and Smart and Getting Things Done. I've been listening to the StackOverflow.com podcasts (two seperate links there) since they started...Oh and Purple Ant wrote a DotNetNuke (DNN) module to support the "co-branding" of Copilot.com, and are giving it away for free to anyone who wants to use it.
I'm sure there are other things (we won't go into the shrine I have...j/k), but I can't think of them at the moment...
Why am I such an avid follower of Joel? I agree with most of what he says... Fog Creek Software was founded as a place where developers would want to work, on stuff they'd want to work on, and as a result they (Joel and his partner) assumed that revenues would follow....and so far they appear to be right...
It wasn't because Joel said it, but because it resonated with me, that this is EXACTLY what I want for Purple Ant... I've worked for a couple of great places, and many terrible places. All of these experiences have stuck with me, and I've committed to creating a place that I would love to work. I don't want ANYONE who works for me to be someone who only wants to get here at 8am, and leave at 5pm. Not because I'm a slave driver, and because I demand it, but because they love what they are doing so much that they want to show up early and leave late. I want everyone I work with at Purple Ant to like everyone else they work with so much, that when they ARE ready to leave for the day, they all want to hang out afterwards, or on the weekend.
While I believe there has to be a leader in every company, and for now I'm committed to being that person. I don't want anyone at Purple Ant to look at me as their boss. I'm not looking for anyone to do anything that I'm not willing to do myself. I'm down in the trenches still writing code, and meeting with clients, and climbing under desks to install that new PC. As the business grows, I know that my role will change, and different things will be required of me, but I'll STILL be willing to climb under that desk, instead of asking one of the other Purple Ant employees to do it instead.
I am committed to making Purple Ant a successful software company that provides better-than-expected customer service, and software. I believe the path to achieving both of those things is to have employees who love what they do, and believe in what the company is trying to accomplish.
Purple Ant hired its first full-time employee (other than my wife and me) a month or so ago, and I'm committed to every future hire being interviewed by anyone in the company they will be with on a team. Every team member will have a vote on whether a person gets hired or not. If I don't do this, then how will we create a team of people who like working together, and who respect one another.
Purple Ant leased its first office space several months ago (it was time to move out of the home office), but it was important as we were looking at office space that there were actually plenty of offices, and not just big open spaces....Why? Because every developer should have their own quite space to work in. It's not enough to provide them with a large set of headphones so they can drown out everything that is going on around them.
Purple Ant either brings in lunch, or takes everyone out to lunch everyday....Why? To foster team relationships...Is it required that everyone eat together? No. But if we've hired the right people, and we all like one another, then wouldn't we WANT to eat together? Sure, everyone has errands to run every once in a while, and no one expects that you be around for lunch if you've got to take care of something.
We are a business that exists because our employees are making our customers happy. Period. Which type of employee is more likely to make your customers happy, an unhappy employee, or a happy one?
So at this point you are either nodding your head in agreement, or you are wondering what the HECK this has to do with Joel Spolsky...You should read his books, if for no other reason than to understand why the software company you own or work for is having trouble retaining employees and keeping its customers happy.
Do I blindly follow everything that Joel writes or says? Not at all...Early on in the life of JoelOnSoftware.com he had some negative things to say about .NET development, and the framework as a whole, which of course he later changed his mind on. I've been an avid follower of the .NET platform since the beta version of 1.0, and have tried to stay current on all things related to .NET...And it's worked out for me, as Purple Ant is built on creating .NET solutions (whether Windows or Web) for customers, and we've been fairly successful thus far.
I'll be posting more in the future on how I think a company should be run, and many of these things will agree with things Joel has already stated...But at the end of the day, I want Purple Ant to be that place that has 100% employee retention, and has several pieces of software that are successful in the marketplace.