February 2005 Archives
A good introduction to the Model-View-Presenter Pattern, also known as the Humble Dialog Box. Required reading.
More patterns by Martin Fowler related to rich client user interfaces can be found here.
Black Box Software Testing: A course by Cem Kaner & James Bach.
(Via MemoRanda.)
Bartelme Design — CSS, XHTML, Design, Icons, Desktops
Including some nice Photoshop-Tutorials.
Tim Bray on XP and Agile:
Writing tests after you’ve written the code is boring and painful: writing them first (a key premise of XP) makes it more interesting, and thus less likely that you’ll skip them.
...
Feature-at-a-time development makes development project schedules immensely more predictable
...
Detailed specification, in advance, of the functions of a large software system is essentially impossible.
Make sure to read Tim's posting for more context & insight.
Dale Emery: What Do You Want From Tests?.
Of course, they listed OpenDoc.
However, I recall OpenDoc wasn't killed by Gil Amelio. It was killed by his Steveness. In retrospective, he was right. Embarrassing, isn't it?
Uncle Bob: Speed Kills.
"I hope the next big thing is a consolidation of what we have learned over the last forty years. I hope the next big thing is the realization that software is not about hours worked, but about care. I hope the next big thing is the gradual understanding that developing good software is not about man-hours and raw labor; but about creativity, inventiveness, and a drive for elegance and beauty. I hope the next big thing is a change in attitude from big vanilla software groups, to small energetic teams. I hope the next big thing is the growth of professionalism and craftsmanship, and the realization that these are the attributes, not documented process or raw manpower, that will make our industry productive, accurate, and respected.
Fantastic article. 'nuff said.
Ned Batchelder on Managed Developer Testing and the change of culture required to successfully introduce automated developer testing in an organisation.
Amen to that. However, those obstacles are no excuse for not trying hard and being persistent.
Error10.net (Via The Unofficial Apple Weblog.)
Good fun.
Why Board Members Should Ban Bullets:
The boards of directors of every organization should immediately ban the use of bullet points on PowerPoint screens, if they accept these research findings...
Oops, looks like I gotta watch my presentation habits.
Feld Thoughts: The Me Too Zone.
Every emerging market hits a point where there is a mad rush of early stage entrepreneurs and VC’s piling in.
...
I’m afraid we just hit that point with RSS / Blogging.
Moonwatcher Adoption: Salesforce.com via RSS.
Enterprise RSS. Pretty interesting stuff. Check out the "Most Popular" column.
Member Function Pointers and the Fastest Possible C++ Delegates - C++ / MFC - The Code Project.
Although I don't agree with the authors conclusion on "Fat client UI frameworks", there are lots of great thoughts in this article. Forget visual forms designers is one of them. Read for yourself.
Very cool.
"I came across this video, which seems to be a National Geographic special on the Kendo 8th Dan test:
http://kendoshop.com/images/8dan.wmv
The 8th dan is like an 8th degree blackbelt in other martial arts, and it is the highest grade awarded in Kendo through taking a test. The video follows two kendoka as they attempt to pass it.
If you only watch for one minute, watch the segment starting at 17:44. Here, an 80 year old is schooling a 78 year old, saying stuff like, ‘You’re too hasty. Pretend you’re in a match – wait and grab an opportunity!’ and then shoving him back to do it again. It’s great."
(Via [self setNeedsDisplay: YES];.)
Even if you're not into martial arts, there are a few great qualities to note in this movie:
- Seriousness
- Modesty
- Perseverance
Goban is a Go game for MacOS (including GNU Go).
(Via The Tao of Mac.)
Interesting way of sharing URLs and tagging URLs.
I'm trying to use it as a database of "Interesting stuff I came across but I don't have time to dig into it right now" - kind of a personal database. Let's see what develops.
Here's my del.icio.us page.
Here's my del.icio.us RSS-feed..
What some people fail to understand is that there is a fundamental difference between Apple and Microsoft. Apple creates the hardware for their end users. They start with an end to end scenario. That is, they come up with a compelling idea, and they design the solution. From the Apple Store to the experience at home opening the item, taking it out of its packaging, and installing the software then using the device is a well orchestrated series of events. Apple has spent months if not years thinking about how to perfect this experience. No other company does this in the consumer space, and it's not possible unless you own everything in the scenario. In this case Apple owns the store, the hardware, the music store, the software to connect to the device, the software to download from the store, and the relationship with all the record labels who provide the media. This is incredibly powerful when you are trying to solve specific scenarios, and when it comes to things people have always been incredibly passionate about (music) it matters.Right on target. Does this way of approaching the "End to End Experience" translate well into other spaces than consumers?
...for T-Shirts.
*For All* thinkers look for the general rule and then search for exceptions. *There Exists* thinkers look for one special case after another until they have found them all.This deal-with-one-case-at-a-time philosophy shows up everywhere in the agile approach to software development. We design systems one story at a time. We write code one test at a time.
Agile thinking is *There Exists* thinking.
"For Exists" also eases communication. It's easier to agree on a story/feature to work as expected using a specific acceptance test instead of argueing about general rules and how the software is expected to behave.
Of course, the "...until they have found them all" is the hard part. However, if you haven't found them all, you still have a lot of confidence about the cases you already found.
Back to working on speeding up our acceptance tests :-)