Skip to main content

Popular posts from this blog

First Month of Active Touring

Putting my money where my mouth is, I took on the adventure of buying a plug-in hybrid. A few years back, I used to drive a car only for weekend getaways, so an SUV seemed to be a logical choice. At only fifteen thousand kilometers driven annually, the fuel economy was not a significant issue, the driving experience was the main thing.

During the past few years with family and small kids, the car usage became more spread out throughout the week. With that said, I noticed we maintain two very distinct driving patterns: many short trips around Prague during the week to get kids to school and sports and then longer trips, roughly 100 miles each direction, during the weekends. With short distances and many cold starts due to the city driving on the workdays, the already poor fuel economy of an SUV deteriorated further.

I realized when our car was up for renewal that it was almost as if we needed two different vehicles for two different use cases - an electric vehicle for city driving and …

Version 2.0 Syndrome - Why the Software Architecture Matters

"Guys you will never have a chance to build the version 2.0, you have to get it right from the get-go, or keep suffering from your mistakes for the lifetime of the product." - Jiri Karpeta, my boss at LCS International, used to say. It was back in 1995, and while LCS's bread and butter were Helios, an ERP for the SMB segment, we were busy building Noris - the future LCS's flagship ERP for larger enterprises. Of course, given the above philosophy, LCS was quite heavily invested in CASE tools to support our software design efforts. That's where I learned the first time that software modeling matters.

But back to the original statement above that you "never get a chance to build the version 2.0". It may sound too harsh, too fatalistic. Well, you may be right, there are always exceptions to the rule. While I don't have exact statistics at hand, my experience shows that the statement is more often correct than not. I have interviewed hundreds of software…

Agile on Overdrive

It may sound old-fashioned and laughable these days when techniques like UML are so unsexy, but I can still remember the days back at IBM T.J. Watson in the early 2000's when we were working on a prototype of a new VoiceXML browser to inform IBM's standardization efforts in the space. (The language was supposed to be VoiceXML 3.0, and we abbreviated the research project to "V-3" - pronounced "fau drai" in reference to the German V-2 rocket.) We took VoiceXML 2.0 as a foundation but added full DOM and DOM Events support together with XForms as the data model representation.

It was shortly after IBM's acquisition of Rational Software, so we took advantage of that deal and got our hands dirty with Rational Rose. While one of our colleagues kept pushing us to start coding and iterate towards the result in the agile fashion, given the incomplete specs and many open questions stemming from the combination of so many complex technologies in one piece, we prevai…