Thursday, November 25, 2010

Passion

The engine of open-source coding is passion.   I ask, seriously, it that not obvious?  Kill passion and you kill the project.

I was very struck by this article by Ron Jeffries.  I found it in a collection of writing about software.  I can't help but quote from the end, with passionate agreement:

That’s what I think this movement is about: making a difference. That’s what I want it to be about: making a difference.

Here’s what I try to be, and what I like to find in those around me:
  • I want to stay the course with the people who converse with me, not just drift away as if no longer interested.
  • I want to argue passionately without rancor, let you call me names in the morning and drink in peace and affection with me that night.
  • I want to hold others in the true respect that allows them to be what they are, act like they will, while working as hard as possible to influence them to try other things.
  • I want to give my ideas away, confident that my little gift will come back to me manyfold.
  • I want to try every way I can to communicate with my colleagues, to get my ideas across and to get their ideas back in return.
  • I want to honor the passion that people feel, to honor the strongly held beliefs and ideas of others as much as I honor my own
  • I want to crash-test those beliefs and ideas hard against each other, confident that even better ideas will come out of the testing.
  • I want to assume that we do this from love, that we care about each other, and that we welcome the crackle of real passion, real work, the real interaction of ideas.
I do my best to be that kind of person. And I want to be with other people like that. Thanks for being around.

Tuesday, November 16, 2010

The 0SAGA software model

I just made up this model.   It seems like a good summary of stuff that has worked for me.

The idea is that any piece of software goes through the following 5 stages in strict order:
  1. 0 - zero - there's no software, there's just a programmer thinking hard about it but never getting anywhere.
  2. S for 'sucky'.  The software is embarrassingly bad but it does something.
  3. A for 'adequate.  The software is still fairly bad but now it's stood up to  enough beating to be able go into bars without hiding in the restroom.
  4. G for 'good'.  The software has started to look a little like the thing it was meant to be.  That probably doesn't have much relationship to the thing the programmer was thinking when when they were thinking hard about it at stage 0.
  5. A for 'awesome'.  I personally can't say much about this stage but I believe that it exists because I've used some awesome software.
The point is that there is seems to be only one path to A for awesome, and that goes direct through S for sucky.  Hence the 0SAGA motto - 'shoot for sucky'.

Thursday, September 30, 2010

Explaining git

The git parable came to me as something like a revelation.  Reading it makes you think like someone making a version control system.  As you understand the decisions that need to be made, you begin to feel that the decisions that Linus Torvalds made for git are not only sensible, but obvious.   You know that someone has done something right, when they do something new, and you look at it, and think, of course it had to be done that way.  The git parable is a good match for git, because I had the same feeling - of course it had to be explained that way.

Part in poor homage, I tried to do the same thing myself with git foundations.

Good decisions

I found this excellent quote in Tom Preston-Werner's blog:

"Truly good decisions are forged from the furnace of argument, not plucked like daisies from the pasture of a peaceful mind."

http://tom.preston-werner.com/2008/11/03/how-to-meet-your-next-cofounder.html

Saturday, June 19, 2010

About blogging in the 19th century

The following is a quote from Soren Kierkegaard - 'the great Dane'.  It written in 1846.   It's wise and strangely prescient about the problem of too much hasty opinion when the means of communication are swift:

'Such a thoughtful one does not willingly pass judgment on many things, and just this helps him to will only one thing.  He thinks it is not altogether an advantage to live in a populous city where because of the swiftness of the means of communication almost everyone can easily have a hasty and superficial judgment about everything possible.  On the contrary, he looks upon this easiness as a temptation and a snare and he learns earnestness in order as an individual to be concerned about his eternal responsibility.

'"Even a fool might be a wise man if he could keep silent, " says the proverb, And this is so, not merely because then he would not betray his foolishness, but also because this self-control would hep him to become conscious of himself as an individual, and would prevent him from adopting the crowd's opinion.  Or if he had an opinion of his own, it would prevent him from hastening to get the crowd to adopt it. '

From: Soren Kierkegaard "Purity of Heart is to will one thing" (1846) translated by Douglas V. Steere;  Harper 1938.

Thank you to my friend Tim Clark for having this excellent book on the kitchen table and finding this quote.

Saturday, February 27, 2010

Public broadcasting

today repeated a program by and about John Wooden:

http://www.ted.com/talks/john_wooden_on_the_difference_between_winning_and_success.html