We worked a few hours over this past weekend so we could have some quick turnaround on the COO's feedback on a demo of some software we plan to roll out next month. So, we're taking a half day today and our boss is taking us to see V for Vendetta!
David Heinemeier Hansson on abstraction:
The greater the versatility, the higher the abstraction, the less useful for the specifics.
That's an important metaphysical principle in general, and it's exactly the point I made at work on Friday regarding the system we're working on. Can't go "too meta" or you start not saying anything.
Incidentally, this is why I question whether these really expensive "enterprise" CRM systems or CMSs are actually a win for the organization. Whenever a company buys one of these systems, they're not really saving themselves from having to write such a system, they're buying an environment within which to program what they need. So, it's really not a case of "build vs buy", but rather "build vs buy and build".
Ultimately with these systems you wind up with something that's far more complex than your business needs alone dictate, and you have to work within the worldview of the company selling you the software rather than the worldview dictated by your business. Because that's the case, vendors make their systems as general as possible, but that necessarily brings added complexity. So, rather than building a simple system that grows as your business needs dictate, you continually require highly paid consultants (or if you're big enough, full time experts) to program around the system you just paid hundreds of thousands for. I question whether this is a net win.
It's so great to be producing software that goes to actual users. Rather than merely producing demo after fraudulent demo of code that will likely never see the light of day in a working system used by actual people (a situation that often arises in the government space, where contractors continue to get money through pork contracts despite never producing anything of actual value), I get to write code for a company that has real products/services (and is subject to the free market), and my code will have an impact on the company's bottom line. It feels good!
Update: Heh, as John Gruber writes: "real software ships". That's going in my quotes.
new⇒Spider solitaire
I have now won, at the "Difficult"level, 186 games of SpiderSolitaire. I...
75.179.28.113: Oct 13, 9:34am