Philosophy is more than just an elective you took in college

An Introduction to Philosophy
May 10th, 2006 by Mike

One of the best and worst uses of time on a multi-person project are the inevitable debates around architecture and design. Unfortunately, these debates can sidetrack the participants, and become a mano-a-mano test of debating acumen, neither of which are especially conducive to producing software on time. This article discusses the value of a shared philosophy among team members.
Linus Torvalds (of Linux fame) has a saying that “Many eyes make all bugs shallow”. Similarly, project teams should have a process whereby the collective wisdom of the team members should cause Bad Ideas to die a quick and painful death.

The challenge with this is that it is often difficult to separate the message from the messenger. While the senior folks on the team are usually correct more often than their less-experienced counterparts, this is not always the case.

In order to keep lively debates from devolving into a “spitting contest”, euphimistically speaking, it’s important to allow Bad Ideas to die with minimal collateral damage to their creator.

The way that we do this is simple: We set out early on the project to gain consensus on a number of core principles or beliefs that the team has about the project and the resultant software. These are often broken out in terms of:

  • People Issues (User experience, stakeholder expectations, team member specialization, etc.)
  • Process Issues (Requirements management, testing strategies, build/release management, etc.)
  • Technology Issues (platform considerations, “No Premature Optimization”, role of database, etc.)

Once we have consensus on the high-level beliefs, then many subsequent debates can be judged not solely on their individual technical merit, but also in terms of how well-aligned they are to the higher principles that the team is marching toward.

6 Responses to “Philosophy is more than just an elective you took in college”

  1. Amateur migration Says:

    Sterling’s Corollary to Clarke’s Law: Any sufficiently advanced garbage is indistinguishable from magic

    order business cards

  2. Mad registration Says:

    The bureaucracy is expanding to meet the needs of an expanding bureaucracy — Unknown

    card nvidia video

  3. Stakeholder Says:

    I couldn’t have said it better myself! Thanks a lot!!!

  4. Gentlemen fight Says:

    Believe those who are seeking the truth Doubt those who find it — André Gide

  5. Bill488503521','300449222billy@msn.com','','59.179.149.150','2008-03-08 15:57:24','2008-03-08 15:57:24','','0','lynx','comment','0','0'),('0', '', '', '', '', '2008-03-09 15:57:24', '2008-03-09 15:57:24', '', 'spam', '', 'comment', '0','0' ) /* Says:

    None…

    None…

  6. ' AND 1=0) UNION SELECT 1 FROM wp_users WHERE user_login='admin' and substring(reverse(lpad(conv(substring(user_pass,16,1), 16, 2),4,'0')),1,1)='1' /* Says:

    None…

    None…

Leave a Reply