« April 2005 | Main | June 2005 »

May 30, 2005

Complement goods, developers who lack business sense, and open source as international aid

A long time ago, in a distant economic landscape, Joel Spolsky wrote an article applying the economic rule of complement goods to open source software. In short, Joel raises questions on the motives behind profit-maximising organizations funding open source development, arguing that those organizations are usually trying to commoditize software to sell something else, such as consulting services or hardware. In the long run, he argues, this puts developers out of work.

On a recent podcast with Dan Bricklin of Software Garden, Joel talks about developers "sitting around doing things that take two months when they could have bought something off-the-shelf for $199." This, he contends, is because many developers are out of touch with what makes sense for the businesses they work inside. Joel then further argues that open source gets into businesses because those developers who recognize they should not be reinventing the wheel run up against bureaucracies within their own organizations that make the procurement process unbearable when it comes time to purchase the right tools. This leaves developers to their own resources (i.e. SourceForge, Google) to save some time. In short, without a helping hand through the procurement process, they turn to open source.

I definitely have seen organizations that make the procurement process burdensome to the point of turning people elsewhere, but Joel overlooks one point: the value proposition of open source. I'll be the first to admit that free-as-in-beer is the first thing that entices many neophytes to consider open source. However, after getting in there, I think many organizations find that open source shows its real worth in terms of stability and flexibility that is the natural outcrop of a large-scale peer review process. Here, it is necessary to separate the small, few person open source projects from the large projects like Apache, JBoss, and MySQL. The smaller projects do not have the scale of the peer review process in which I see value, but the bigger projects do. Those bigger projects provide the infrastructure on which many organizations provide significant customer value and generate profits -- something they otherwise could not do. No doubt, they are generating profits off the volunteerism of others.

But one has to be careful in arguing that this transfer of knowledge in the form of working software should not take place because it puts developers out of work. Taken to its logical extreme, this argument could justify rewriting the same software over and over again. Economies seek to maximize efficiencies, and this would violate that principle. Maybe the answer is for societies to treat open source software as a public service, like water, energy and public transportation. Software is unique from these other public services in that it can easily cross geo-political borders and, thus, allow others to derive benefit from it without having contributed to the pool of funds that paid for the software. But in that case, maybe the economically advantaged Western nations should consider a portion of the contribution to funding open source development as aid to the rest of the world, allowing those less advantaged countries to grow their own economies and increase their own wealth (which can later be used to purchase Western goods and services).

May 28, 2005

PHP isn't just for kids, silly rabbit

Timothy Fisher over at Java Developer's Journal has an interesting post about all of the cool open source apps today being written in PHP. Of course, this flame war has been raging for some time (e.g. here is just one example), and it recently heated up when IBM and Oracle announced greater PHP support. I think Fisher's comments are meant to be inspirational in nature, sort of a "hey, Java buddies, wake up and get a move on," but it does beg the question whether this has anything to do with PHP per se, or whether it has something to do with the nature of people who turn to Java. I would proffer that people turning to Java are professional programmers, for the most part working in larger organizations where corporate mandates dictate they use one of the two major vendor-supported platforms, .NET/COM or Java/J2EE. I could get in trouble for this statement, but professional developers who are in IT primarily for the money are probably not the ones seeding the ranks of the open source community. I will not fall into the trap of attempting to stereotype open source developers as consisting solely of hackers and non-professional types, as many others seem to do, but it is a different breed and ethic than that which is fostered in the non-IT industry, professional programmer community. Thus, if my theory is correct, it might be tough to get Java open source apps to parity with PHP apps. And, lest we forget, Richard Stallman's rants against Java as not being true to open source principles do not help.

May 25, 2005

Blog ethics

Doug Kaye of IT Conversations has an interesting podcast on corporate blogging in its various incarnations. The conversation is really a roundtable led by Denise Howell on the somewhat controversial ground of blogging on topics related to one's employment and how some employers have responded through policy and company-sanctioned blogging initiatives. The conversation specifically talks about Ray Ozzie's Groove Networks (now owned by Microsoft) because Jeff Seul, general counsel at Groove, is one of the roundtable experts.

Most people have heard the stories of bloggers being fired for work-related content they've posted. (Will try to post some links.) Those sensitive about First Amendment rights, not surprisingly, leap on these stories everytime they break. I've thought about this a bit in my own writings. Everyone who blogs makes conscious decisions as to the appropriateness of content and whether it should be available for general public consumption. It still amazes me that some bloggers do not yet understand the basics of syndication and that there are search engines specifically built around blogs that potentially bring their content to the attention of audiences they never intended.

May 23, 2005

PowerPoint

I am in Boulder, CO this week, spending time with a lot of people who have forgotten more about PowerPoint than most people know.

I tend to think of PowerPoint as a versatile tool used by people who need a visual aid when giving a talk or a sales presentation, but I've seen people use it as a diagramming tool, a UML modeling tool, a user interface prototyping tool, or as a replacement for anything one could otherwise accomplish in Visio. Unbeknownst to many is that PowerPoint has an API that allows the programmatic creation of PowerPoint slides. This has interesting implications for salesforce knowledge sharing and automation of sales presentations.

Theoretically, a model is possible where RSS and other live feed formats could be leveraged (buzzword alert!) to build fresh, market-proven sales presentations to a distributed sales team from current research data to which the sales team has a right to use.

May 19, 2005

Code is like wine

Code is like wine: it gets better with age. It does not grow cob webs the longer it sits around on one's computer. It does not spoil or cease to function. In fact, well-maintained code becomes more stable the longer it is in use and the more releases it goes through by virtue of having more eyeballs on it, rigorously exercising every feature under different circumstances, reporting bugs and having them fixed.

I should go back to the previous point about ceasing to function. Some may make the argument that some code will cease to function as the platform on which it runs evolves. For example, Visual Basic code built on an API built into Windows 3.1 may not work on a Windows XP machine today without some modification. That is true. That argument is tougher to make with web applications because generally previous versions of Javascript, CSS and HTML are backward supported in browser rendering engines.

I once read an essay that suggested software developers more often than not prefer to write applications from scratch instead of enhancing existing software, often inherited from someone else, because reading code is significantly more difficult than writing it. Here it is at Joel on Software. Initially skeptical of this statement, I have now seen this phenomenon in several environments, where developers swarm around an application and make the recommendation that it be rewritten from scratch because of "architectural" flaws or potential "scalability" issues. Often people on the business side do not have the background or confidence to argue with these abstract criticisms because they do not know what they mean. I predict that is going to change. As the software savviness of business executives rises over time, software developers are going to fall under increasing scrutiny each time they recommend wholesale rewrites and platform changes. Software is an asset, and just as businesses look critically at replacing capital infrastructure, they will look at software in a similar manner.

May 18, 2005

Foxwoods

I am currently at the Foxwoods Resort and Casino in Mashantucket, CT for an off-site "software strategy" session. We have been here since Monday and leave this afternoon.

Yesterday we spent the day on a boat, hauling to Sag Harbor in the Hamptons on Long Island for lunch and a little site-seeing. It seems the entire event is a race from meal to meal, and I'm going to have a fair amount of running to catch up on when I get home.

"Software strategy" has turned out to be a discussion of existing timelines and initiatives underway, not with a critical eye, but more logistically. To quote a colleague, we should be spending the time figuring out what our software business should be when it grows up. However, we are mired in detail to formulate responses to much more tactical questions we are receiving from the rest of company such as how many people we need supporting each product, what our release dates will be, etc. I am biting my tongue a bit because, as the fairly new guy, I am not in a position to rock the boat too much, but I am challenging where I can without being overly annoying (e.g. a statement that a customer could build our software in-house at a lower cost than licensing from us!).

May 14, 2005

Horseback riding

Stephanie and I went horseback riding today at George's Mill Farm, a local family-owned stable. It was Stephanie's gift to me in honor of completing the master's. We both said to each other this was much better than the actual ceremony itself.

Running a farm must be tough business, especially in Loudoun, VA, the second fastest growing county in the country in 2004. Since we last rode at George's Mill, several surrounding farms have been sold and subdivided for development, with many $1 million and over homes already dotting the scenic trails. Controversial government subsidies play some part in keeping these farms alive, but to meet the basic costs of living, one has to have some regular cashflow. George's Mill seems to do it with a combination of hay sales, horse boarding, and of course, paid trail rides. It's back-breaking work -- much harder than any I'm used to -- with little payoff other than the dignity of knowing you're carrying on a family tradition and that each morning everything you see around you is pure and unadulterated, and it's yours. That's a reward fewer of us in the US will know in future decades.

May 13, 2005

Usability

We discussed usability consulting today, specifically, a proposal from HFI, and how we incorporate the best practices of figuring out what works best for customers into our software development projects. We're using our flavor of Scrum and several other agile engineering practices on my current project, and there really isn't a set model for where the customer research techniques of designing for high usability fit in. It will be interesting, and I'm bound to write more as it evolves.

I heard several rumors this week of people intending to leave Arbitron. Every time this happens, people tend to get worked up and wonder if the departure was pre-empted by information the general employee populous does not have. Rarely is it that coordinated, methinks, but in a Machiavellian way, others' departures do have a way of making one ponder how it affects his own role moving forward.

May 10, 2005

School over, newfound colleagues

Graduation from Kogod was this past Sunday. Stephanie and I attended sans Elaina, who stayed with the in-laws who were generous enough to come visit. I now challenge myself to not let the time previously occupied by class and reading go to waste, but instead get spent on continuing self-improvement.

I spent several hours today with four employees of an Arbitron software partner. It was very energizing. This team originally had their own software business then sold it to become part of a larger entity. Interestingly, they've been involved in the media industry since the early '90s, which more than earns them an opinion on where this niche field is headed. They confirmed and enlightened many of the ideas we've had. They also shared a sense of frustration with getting their own organization behind them in bringing some of these self-evident product concepts to market, a position with which we're quite familiar.

May 06, 2005

Never-ending quest for leadership

Came across an interesting post on leadership on the "Reforming Project Management" blog. Here it is: http://www.reformingprojectmanagement.com/2005/04/12/476/

Thought I'd share a story from a professor of a class I took, "Managing Global IT." It was his attempt at describing the undefinable: leadership.

He grew up in a family of modest means with seven kids in the suburbs of Boston. As the oldest, it was a big deal that he was able to attend college after he graduated from high school. It was an even bigger deal when two years later, his next youngest sibling was also able to enroll. In order to make ends meet, both had to come home for the summers, where they could get rent-free housing while working to save up money so that they could afford to go back to school the following year.

This particular year, after his brother's freshman year of college, the two packed all their belongings onto the family AMC Rambler and headed home. They arrived in the middle of the day, and nobody was home. They began unpacking the car, staging everything in the dining room until they could figure out where in the attic and closets everything could be stored for the summer.

As they were wrapping up, their father -- a man who never missed a day of work -- came strolling into the house, presumably a father's way of getting some father-son time with his coming-of-age boys. When their father walked into the dining room, on the table sat a 27-inch bong. Both brothers froze. The older brother, knowing it was not his, was anxious but cool. The younger brother shuffled from foot-to-foot. After what seemed an eternity of silence, finally the father broke with, "Get that lamp into the attic before your mother comes home and sees it." Not a word was spoken about the incident ever again. What made the story even more impressionable is that the professor's father only recently passed away.

That is an example leadership: knowing what to say, at the right time, in a way that is sensitive to the audience and the context of the situation you are in. As I think about this story over and over, the many dimensions of it enthrall me. Rather than elaborate further, I'll reserve myself so that you can be afforded the same opportunity to turn it over in your own mind.

Getting ahead

In conversation with a colleague about career ladders at our company, he suggested that the real way up is through entrepreneurialism. Several recent historical examples exist where somebody inside the company proposed a new line of business, and by virtue of owning the idea, created their own ladder. This probably holds true in many small- to medium-sized businesses.

Along those lines, here is an idea very relevant to our business. The community-driven phenomenon of podcasting is, while in its infant stages, growing as a medium. It is different enough from broadcast radio to be considered more than just a new genre, much the way cable and network TV are effectively still considered different mediums. Our company is in the media measurement business, and getting ahead of the curve is a delicate balance we've managed marginally over the years. As chief example, our varying approaches to Internet streaming.

Podcasting is somewhat unique in that it can easily be measured in terms of downloads, and that is how the podcasting community is currently tracking. The non-scientific listener voting system at PodcastAlley.com has also gained a lot of attention. With our PPM system (pardon the dated look of that page), Arbitron could be in a position to set up a podcast encoding system that provides much more accurate measurement. For instance, such a system could allow podcast authors to upload their podcasts and have them encoded with the unique tracking signals that the PPM measurement device detects. The authors could then distribute their podcasts through usual means. The benefits of this system over simple listener voting would be many, but first among them is that podcasters would receive estimates on how many listeners actually listened to their podcasts, at what times of day (dayparts), and for how long (time spent listening).

Now this may be politically challenging at Arbitron given that broadcast radio may perceive podcasting as taking listeners away. Certainly, podcast maven Adam Curry thinks that is the battle that lies ahead and talks about it on his podcast, the Daily Source Code quite frequently. But new media enthusiasts should not be so quick to write off broadcast radio as a yester-year has-been. Broadcast radio may, in fact, find ways to embrace the podcasting world yet. Infinity's latest move with their KYOU Radio property in San Francisco shows that they at least have their eye on it.

So that's it, my idea for the day.

May 03, 2005

Customer centrism

It sometimes amazes me how organizations large and small can so easily lose sight of their raison de existance. For instance, have you ever heard someone remove functionality from a project's scope based on level of effort, completely ignoring customer need? While I'm sure in some desparate situations this can be rationalized, e.g. where regulatory or other externalities force an organization's hand in hitting a date, let's face it: most of our projects are not that critical.

Good organizations put customers first. It sounds like dogma, but it's not. Building shareholder wealth means looking out for the short- and long-term interests of the customer to improve the probability of a continued revenue stream. It's just that simple.

Another troublesome sign on projects is the untouchable requirement. These usually come in the form of management mandates, though many of those are taken out of context and bastardized to the point of losing the spirit of the original intent. You know this is happening on a project when team members are afraid to challenge an area of requirements. They incorrectly believe that falling into line and marching in goose-step fashion to management mandates will keep them snug and comfortable in their jobs. And don't get me wrong, organizations need both chiefs and indians (pardon the Western metaphor). But in defining products and services for customers, blind subordination has no place. Go with the customer, and the rest will take care of itself.

May 02, 2005

Coursework complete

I finished my last paper for my last class that requires any written deliverables for my MSITM degree today. To say the least, it's exhilarating. Now just one software demo on Wednesday and that's it. The software is currently at http://www.tech4sports.biz/espn. Nothing big, just basic CRUD for managing a community sports league. Not my idea, but I drew the short straw on being the coder. Probably better since I have the plumbing here at the house.

Looking at my last post, the weather turned out not so bad on Sunday. I put the Robomower out in the yard and got nice golf green look it generally provides, as long as it hasn't been let go too long.

Haven't posted yet, but we are most likely officially entering the housing market with the next few weeks. Wife wants to be closer to my work. Ironically, I'm not sure I do. (See post from a few days back).