About

This is the archive page for Head of the Kyu. Click to go to the frontpage of this site.

Last Comments

Ben (Breakthroughs and…): Here is a strange observa…
Carl Manaster (A handy heuristic…): Note on the comment syste…
Carl Manaster (A handy heuristic…): Let’s try that again… www…
Carl Manaster (A handy heuristic…): I once wrote a little vis…
Nico (A handy heuristic…): C# can have multiple clas…
Nat (A handy heuristic…): “an XP project is suppose…
Jim Bullock (A handy heuristic…): Are the class (or whateve…
Ģirts Kalniņš (Head of the Kyu): good to see you back.

Calendar

« May 2008
S M T W T F S
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Archives

Next Archive Previous Archive

01 Jan - 31 Jan 2007
01 Oct - 31 Oct 2006
01 Feb - 28 Feb 2006
01 Jan - 31 Jan 2006
01 Nov - 30 Nov 2005
01 Sep - 30 Sep 2005
01 Aug - 31 Aug 2005
01 Jul - 31 Jul 2005
01 Jun - 30 Jun 2005
01 May - 31 May 2005
01 Mar - 31 Mar 2005
01 Feb - 28 Feb 2005
01 Jan - 31 Jan 2005
01 Dec - 31 Dec 2004
01 Nov - 30 Nov 2004
01 Oct - 31 Oct 2004
01 Sep - 30 Sep 2004
01 Aug - 31 Aug 2004
01 Jul - 31 Jul 2004
01 Jun - 30 Jun 2004
01 May - 31 May 2004
01 Apr - 30 Apr 2004
01 Mar - 31 Mar 2004
01 Feb - 28 Feb 2004
01 Jan - 31 Jan 2004
01 Dec - 31 Dec 2003
01 Nov - 30 Nov 2003
01 Oct - 31 Oct 2003
01 Sep - 30 Sep 2003
01 Aug - 31 Aug 2003
01 Jul - 31 Jul 2003
01 Jun - 30 Jun 2003
01 May - 31 May 2003
01 Apr - 30 Apr 2003
01 Mar - 31 Mar 2003
01 Feb - 28 Feb 2003
01 Jan - 31 Jan 2003

Miscellany

Powered by Pivot - 1.40.0: 'Dreadwind' 
XML: RSS Feed 
XML: Atom Feed 

31 December 03 - 17:14Making a list, twice

I'm no good at making lists. A lot of interesting content I come across is organized in lists; I'm thinking most recently Keith's comments on Lean in a Nutshell, but also (more or less at random) posts by Johanna on Phone Screens, Esther on Management Skills, etc. My mind just doesn't seem to work that way, so I'm usually envious when I see someone rattle off a series of bullet points that actually add up to useful advice or a well thought out model of whatever is being discussed.

This is definitely the time of the year to be making a list, as we gear up to list all the new year's resolutions we definitely won't keep this time around. I'm not even going to make a single one, but as an exercise I want to try my hand at a list.

For starters, and without further ado, a list of the things that would make for an interesting list in a further entry.

  • A list of all the things that need doing in a software project, which make it so easy to never actually do any programming
  • A list of ideas from the Java language that I've transposed to other languages
  • A list of more or less esoteric programming constructs, such as continuations, with musings on the circumstances under which they might be refactoring targets
  • A list of things a manager usually does which a team could do just as well
  • A list of categories actually appropriate to classify my own entries on this blog

Now we'll see if I can overcome my aversion for lists a second time, sometime during the coming year, and actually expand one of these (or a different one altogether, I'm not ruling that out).

- Private Life Of The Brain - three comments / No trackbacks - §

27 December 03 - 14:26Fallow times

Like Keith, I keep a largish folder of bookmarks bearing the title "To Blog". I don't know why I do this, since none of the addresses in there has ever been the basis for a blog entry of mine.

The folder contains items that struck me as interesting in the peculiar way that gives rise to the tought "Oh, I might blog about this." In theory, it is there to dip into when I've run out of "live" topics : the ones I get worked up about, enough so that I'll actually write an entry to get it out of my system.

In practice, if there isn't anything I get worked up about, I don't blog. The "To Blog" folder serves more as a trail of breadcrumbs, telling me where the "subsidiary" focus of my attention has been over time. (The blog itself is a trail of breadcrumbs too, telling me what I've gotten worked up about over time.)

Right now - for the last week or so - I can't get worked up about much of anything. It's the holiday season - I haven't been at the computer much, I've been thinking mostly about gifts and meal and wine, fooling around with the children and so on. Thoughts of projects or programming are not too present right now. I'm also wondering if this could perhaps be a fallow season.

I get these occasionally. Times when I just can't seem to do anything of much value, for days and sometimes weeks on end. Then it passes, and I find I've moved on to new areas of interest: fallow seasons usually end when I've found something new to engage my thoughts. Sometimes the shift in topics is very large - as when I lost interest in XML and started to investigate Extreme Programming. On other occasions it's quite minute. I don't seem to have much conscious control over either the timing or the duration of my fallow seasons, or the magnitude of the changes that ensue.

- Blogversations - No comments / No trackbacks - §

19 December 03 - 15:28An autodidact graduates

You'll remember the start of the story. I blogged about it roughly one month into the process. One month earlier, I had decided to take advantage of a local law passed the previous year, concerning the equivalence between academic studies and professional experience. Here's how it worked out for me.

The first thing you're supposed to do is select a degree which matches in educational requirements what your professional experience demonstrates you can do.

That's not as easy as it sounds, to start with; there are no published criteria of equivalence, not even a rough guideline like N years worth of experience are good for M semesters of study. Then there's the problem of which university to apply to. There's one in Paris which is supposedly specialized in studies for professionals, but when I inquired there I basically got lost in a bureaucratic maze.

In the end I happened to have an insider contact through my Dad at one of the regular universities, who advised me both on what level of degree to go for and who I needed to talk to on the administrative side.

Once you have selected a degree and a place to get it, you apply for validation, which (legally) consists of putting together a dossier to convince a jury of your aptitude, and putting in an appearance in person before the jury. And, in principle, that's it. The jury has broad authority to deny the request, grant it and award you the degree, or award it conditional on any amount of "remedial" coursework.

As it happened, I was also counseled to enroll in at least one class, because the law on validation still goes against the grain for most teachers in the university, who think a degree should only be awarded for duly wasting your time in class. Also working against me was the fact that, if approved, I would be granted the equivalent of eight semesters' worth of degree in one big lump; for some of these same types that's asking for a lot.

I had a few things working for me: 12 years' experience (I'm not sure that swung the most weight), coauthorship on one book and a handful of articles (publications matter a LOT to academics), and one letter of reference from Jerry Weinberg (I'm fairly sure that counted too).

Tuesday morning I sat before the jury, to whom I had submitted a 30-page biography (not counting annexes). They asked a total of one question, which was "We hear you've signed up for one class, which was it ?" That was actually a favor to me, I figured out afterwards - in my summation I had forgotten to mention taking that class, and that I had scored 18 out of 20 on the mid-semester exam. So I had a chance to trot that out.

Later that day the decision came down: if I pass the final exam for that course (Distributed Systems & Client/Server, covering Sun RPC, Java RMI, CORBA, NFS and assorted oddments), I'll be entitled to the degree. The final exam will be on january 22nd, 2004.

I've invested some time, some money, but above all a lot of emotional energy into that over the past three months. My Achille's heel is fear of rejection - it was a big risk for me to take the chance of being turned down on something like that. In the end if was well worth the effort.

Now I'm toying with the idea of perhaps waiting one year or two to reap a bit more experience, and then see if I can skip two more semesters and swing an entry into "doctoral studies" - provided that can actually consist of doing my job, whatever that will turn out to be at the moment, and turning new ideas from that into worthwhile research. Just a blue-sky idea at the moment, of course. It's probably impossible. So was the first part of this adventure, only two years ago.

- The Universe And Everything - No comments / No trackbacks - §

18 December 03 - 08:34Promises

Currently, I think of a promise as a speech act on my part, which creates in someone else an expectation that I will behave in some specific ways in the future.

A commitment is more of an internal promise: it is an act whereby my own expectation arises that I will behave in some specific manner in the future.

Breaking a promise is failing to fulfill the expectations created by the promise. This suggests exercising special caution to monitor the expectations we create when we make promises: they may not be the same as the expectations we intended to create.

If a promise is a speech act which creates expectation, then I will hear a promise whenever I hear something which causes me to have expectations of another person's future behaviour. I will want to check that the promise I heard is accompanied by a matching commitment on the part of the person making the promise.

My own promises are only ethical if they are, at the same time, commitments of equal strength: that is, my expectations of my own future behaviour are at least as firm as the expectations I intend to create in others when I make the promise.

It seems to me that a group may perform promises and commitments, to the extent that it possesses the "coherence" David Schmaltz mentions in The Blind Men and the Elephant. No single person may make a promise on behalf of a group without coherence, because such a promise would not, in and of itself, create a matching commitment.

Promises and commitments are sometimes made explicitly, but most of the time they are implicit. For instance, when I ask someone a question, I'm making an implicit promise: I'm creating the expectation that I will listen to the answer. I may or may not have a commitment to listen. (In fact, all too frequently I frame something as a question without having any intention of taking in the answer.)

Many promises are made when we reply in the affirmative to a request. I suspect that many divergences in expectations occur because of carelessness there.

A project manager asks an engineer, "Will you write a unit test and fix that bug ?" The engineer agrees, "Yeah, no problem." She is focusing on the latter part of the PM's request: her commitment is to fix the bug. The PM's expectations are almost entirely concerned with the engineer's writing automated unit tests. If the conversation stops there, the engineer will fulfill her commitment, but the PM will think she has broken a promise.

- Private Life Of The Brain - No comments / No trackbacks - §

12 December 03 - 15:24Boldness

Whatever you can do, or dream you can, begin it now. Boldness has genius, power and magic in it.
-- (Actually not) Goethe

- The Universe And Everything - No comments / No trackbacks - §

08 December 03 - 20:13Play Code Blockhead

Blockhead is a classic game in which players take turn piling wooden block atop each other until the whole edifice topples; the last player to have placed a block loses.

Did you know about the software development version ?

Players take turn grafting new code fragments inside a function that's already grown too long, until the program suffers massive malfunctions in the middle of an important demo, or someone loses their nerve and suggests that the function should be refactored. (Refactoring is not an allowed move, and is in any case discouraged by whoever plays "The Management", on grounds of excessive schedule or product risk.) The last player to have made a code change loses, or the one who mentioned refactoring.

This fun game is played the world over by developer teams of all ages. When was your last game of Code Blockhead ?

- Software Development - one comment / No trackbacks - §

02 December 03 - 22:52Back from XPDay 3, London

Just arrived home from a business trip to London which gave me the happy opportunity to attend half of XPDay 3 (minus the after-conference debriefing at the pub, owing to an early train ride back).

I had the pleasure of renewing my acquaintance with many great people (you know who you are), including an outstanding selection of agile bloggers - Alan Francis, Joe Walnes, Martin Fowler. I don't recall saying hi to Tim Bacon - he must have been there though. Did I forget anyone ?

It was also a pleasure to meet four members of another fine community - Bookshelved : Dadi Ingolfsson (for the first time), Rachel Davies, Pascal Van Cauwenberghe (very briefly) and Keith Braithwaite. Tim is also part of that set, though not very active of late. (Hint, hint.)

- Extreme Programming - two comments / No trackbacks - §

Linkdump