Archive for June, 2006

When YAGNI Is Confused With YRGNI

Friday, June 30th, 2006

A couple of weeks ago I wrote about The Semi Myth Of YAGNI. The message of that post was that there are cases where trying to anticipate the future evolution of the product is the best approach. In those cases, doing the simplest thing possible today without analyzing where the product is going is also […]

Working And Learning

Friday, June 30th, 2006

In a recent post, my friend Tom Harris writes about the process of learning at work. As you might know, this is one of my favorite topics.
Tom describes something similar to a decision tree to help you come up with a plan regarding how you want to treat the process of learning and the process […]

Elements Of Simplicity: Working Around Workarounds

Tuesday, June 27th, 2006

In an ideal world every element of your design and every line of code would fit perfectly into the big picture. However, in reality, sometimes we have to create patches and workarounds to meet an ad-hoc necessity. There are cases which require some sort of an emergency fix “just until we have the time to sort it […]

Elements Of Simplicity: Make Up Your Mind

Friday, June 23rd, 2006

In the previous Elements Of Simplicity post I discussed the importance of proper research to the simplicity of the design and code. Today we’ll discuss the next step toward simplicity: being decisive.
What does being decisive have to do with simplicity? See if you find this scenario familiar.
You are working on a system architecture. You’ve […]

Jim Coplien On “The Hijacking Of The Word Agile”

Thursday, June 22nd, 2006

A couple of weeks ago I wrote about The Hijacking Of The Word Agile. In that post I’ve mentioned Jim Coplien’s book Organizational Patterns of Agile Software Development.
And today, a new comment was added to this post by… Jim Coplien. Due to the illusive nature of the Web I can’t know the author’s identity for […]

Reflective Journal

Tuesday, June 20th, 2006

Have a look at this post by chrishmorris about improving your professional skills by systematically learning from your own experience (and the experience of others).

“To improve, they must not only learn more theory, they must also think about what they have done.”
The idea of keeping a reflective journal is a great idea. Mastering context sensitive […]

Clear Product Vision

Sunday, June 18th, 2006

Have you ever came out of a project kickoff meeting without a clue on how the product should look like and what it should do?
The project kickoff meeting is a good opportunity to present an overview of the project, give a high-level schedule and introduce the team. But sometimes the owner of the product forgets that most […]

Snowball

Tuesday, June 13th, 2006

Anyone can recognize a snowball rolling down the hill. Unfortunately, no one has ever seen the snowflake that started it.

Are Your Naming Conventions Ergonomic?

Monday, June 12th, 2006

Over the years I have seen numerous variations of code naming conventions. I have also heard a similar number of debates on which notation is better. In most of these discussions no one bothered to define what it should be better for.
In this post I am not going to get myself involved in this futile war. […]

The Poseidon Effect

Sunday, June 11th, 2006

I was staring at my TV set to relax for a while. I had to clear my head no matter what the cost. Staring at some meaningless TV program seemed like a reasonable price to pay.
Anyway, I was so into clearing my head, that I found myself staring at an endless sequence of commercials as […]