Stories by Jon Udell

Social networking: is this just another men’s group?

Social software as an enabler of business productivity has long been one of my abiding passions. Five years ago I wrote a book called Practical Internet Groupware, which is now out of print but still available online. The book drew on my experience as a developer and user of groupware, which I defined simply as technology that helps people work together more effectively in information-rich environments. At the time, such technologies included NNTP newsgroups, Web conferencing, and the precursors to today’s Web services.

The art and science of software testing

The Greek roots of the word "technology" suggest the translation "systematic treatment of an art or craft." Dictionaries define the English word as "practical application of knowledge" or "manner of accomplishing a task." TDD (test-driven development), as it has been popularized recently, is a technology that harkens back to those original meanings.

Open source lock-in

With the release of MySQL 4.0, the licensing policy of the wildly popular open source database underwent a subtle change. The code libraries that client programs use to access the native MySQL API, formerly licensed under the LGPL (Lesser General Public License), were converted to the GPL. The LGPL was designed to exempt "nonfree" programs that link against open source libraries from the GPL's strong requirement to release source code. The purpose of the LGPL, according to the Free Software Foundation, is "to encourage the widest possible use of a certain library, so that it becomes a de-facto standard." And indeed, MySQL has become the database pillar of the so-called LAMP platform, whose acronym expands to Linux, Apache, MySQL, and the trio of Perl, Python, and PHP.

Analysis: App dev rides the virtual machine

When we hear the term "managed code" we typically think of Microsoft Corp.'s .Net Framework, but the idea has been around for a very long time. Smalltalk, HyperCard, and Visual Basic 1.0 were all examples of programming systems based on virtual machines, or "run times," that provided memory management and productive high-level frameworks. As a result, programmers were able to spend less time worrying about plumbing, and more time delivering features that users could see and touch.

Opinion: Mining the intranet

One of my early uses of Web services, back in 1999, predated SOAP and WSDL. It was a script to calculate what I called Web mindshare. It combined Yahoo's capability of enumerating sites in a category with AltaVista's capability of counting inbound links to each of those sites. It was a primitive version of what Google, then in beta, went on to prove dramatically: Links measure authority. What interested me even more, though, was how easily that little script was able to compose a novel service -- ranking everything in a category -- from two existing but unrelated services.

DevPartner 7.1 is a powerful suite

The transition to Microsoft's brave new world of managed code will probably take a decade, during which time Windows programmers will struggle with the complexities of a hybrid managed/unmanaged environment -- both in the Windows OS itself and in the componentized applications and services layered on top of it. Instrumenting these very different programming environments -- so that developers can analyze, profile, and more effectively debug programs straddling the unmanaged and managed worlds -- is a big challenge that Compuware Corp.'s latest offering, DevPartner Studio 7.1, tackles fearlessly.

What’s holding software back?

I recently downloaded and ran a 1981-era copy of VisiCalc. The VC.COM file weighs in at less than 28KB, which, as co-creator Dan Bricklin says, is smaller than many GIF and JPG files on today’s Web.

What's holding software back?

I recently downloaded and ran a 1981-era copy of VisiCalc. The VC.COM file weighs in at less than 28KB, which, as co-creator Dan Bricklin says, is smaller than many GIF and JPG files on today's Web.

Mining message metadata

At InfoWorld's CTO Forum in April, BEA's Adam Bosworth talked about missing pieces of the Web services infrastructure. Some were usual suspects: reliable asynchronous transactions, more flexible programming techniques. But one of the items on Bosworth's wish list -- the high-performance XML message broker that he said BEA is developing -- struck me as novel.

Opinion: Your personal SOA

Fifteen years ago, Apple Computer produced a concept video called "Knowledge Navigator." To this day, no more compelling vision of human/computer interaction has been demonstrated.

Open source citizenship

Recently I moderated a panel discussion on software reuse in which we all agreed that open source projects are major providers of reusable software. But one of the panelists, Flashline Inc.'s CEO Charles Stack, said something that surprised the rest of us: This reuse is often a one-way street. Flashline sells a repository-based software asset management system. He told us that his customers indeed manage lots of open source assets in that repository. What they don't do, though, is share their modifications to the code. Almost without exception, he said, they fork the code to jumpstart internal development, never joining or participating in the projects whose code they've taken.

How rich is the rich GUI?

Sometimes when his lieutenants are talking, I close my eyes and hear Bill Gates -- his cadence, his repetition of favorite words. One of those favorite words is "great," as in "great platform for connected apps." Another, delivered with no apparent sense of irony, is "rich," as in "rich Internet apps." We absorb these words so easily that we can lose sight of the agendas behind them.

XML spells Office upgrade

It's been a long time since office suites in general, and Microsoft's in particular, generated much heat. The features that most users depend on most often were hammered out before these programs were even ported to Windows. Word's document-handling prowess and Excel's analytical power have matured over the years, and they are formidable assets, but the truth is the average information worker has little need of them. Resumes, memos, and e-mails are written in Word by habit, not by necessity. Excel is typically used just to format, convey, and visualize tabular data. The way to reinvigorate Office was not to pile on more elite functionality, but rather to expand the scope of routine tasks. Office 2003 does so in ways that make it, arguably, the most compelling upgrade ever.

E-mail’s special power

Let's try a thought experiment. Suppose that some malign force knocked all the Internet mail servers permanently offline but left everything else intact. How would we cope? Certain e-mail functions would seem to be easy to replace. For example, as some of us have lately been pointing out, newsletters, mailing lists, and other automatic notifications can easily be converted to RSS feeds and can work more effectively in that mode. Of course, if you’re a BlackBerry user, you’ll push back and say that RSS feeds are only useful when routed to your BlackBerry as e-mail. Maybe so. But remember, we’re talking no e-mail at all. None. Nada. SMTP gone completely AWOL. In that case, you’ll cosy right up to WAP and RSS.

Dynamic languages and virtual machines

Back when .Net was Microsoft Corp.'s shiny new replacement for boring old Java, the Redmond rhetoricians used to make a couple of points with which I heartily agreed. First, your platform ought not be joined at the hip to a programming language. Different people use different languages for different reasons; it's wise to accommodate them all. Second, dynamic (aka scripting) languages were going to be a .Net priority. Perl and Python, for example, would be compiled for native execution on implementations of the CLI (Common Language Infrastructure) -- that is, on Microsoft's Common Language Runtime, and now also on Microsoft's Shared Source CLI ("Rotor") and Ximian's Mono.