I heard Rickard Öberg talk about his aspect-oriented framework at JAOO 2004 and was thoroughly impressed. Unlike all the run-of-the-mill logging and security examples that has been traditionally been used to describe the benefits of aspects, Rickard showed just how deep the rabbit hole could go when you let aspects drive the core of your domain.
Now he's sharing the story of his company Senselogic and how they managed to flourish as a small team betting on new technology as an competitive advantage in the otherwise "boring" market of content management. Needless to say, my mind is drawing parallels. His reasoning for turning down VC strings rings very familiar too:
Not having that "luxury", or false sense of security, meant that we had to be really focused on what we wanted to do, get customers fast, and make sure that whatever code we wrote initially was more than just a fancy prototype, something we could continue to work on once the first release was done.
Rickard goes on to touch on many of our dear values at 37signals:
- Cross-disciplinary developers: "As many new startups everyone in the company have had to peform several roles. Developer, support, training, installation, sales..."
- Preempt support with good design: "...if you create a new feature and it is not what is typically needed, or it is very difficult to understand how to use it, it means that a) you're getting more support calls b) training is more complicated and c) the customer is less likely to describe your product in stellar terms to other potential customers".
- The product is the best promotional tool: "People are sick and tired of promises and hypes. They want to know what the secretary who has to update a webpage has to put up with. So that's what we show 'em."
Thanks for sharing, Rickard. Hopefully you'll get the time to share your aspect framework with the world at some point. Although in Java, I'm sure there's a lot of lessons I would love to learn from it.