strategicDeveloperArchive.opml

The accident of geography
  For me, the offshoring debate isn't abstract. I know that it turns on a mere accident of geography.
Structured change detection
  As XML becomes the standard way to represent prose, graphics, and other content, we should expect such change visualization to become routine.
WS-WorldPeace
  Here's one popular definition of insanity: "Do the same thing, expect a different result." Now consider the following partial list of proposed standards for Web services: WS-Addressing, WS-AtomicTransaction...
Gender, personality, and social software
  "I feel like I'm at a Microsoft monastery here," wrote Rory Blyth from the most recent Professional Developers Conference. "I think I've seen about 2.5 females ... it's like they're an endangered species."
Device independence
  A general solution would require OSs that work like Groove, and applications that send messages rather than write files. Well, come to think of it, why not?
Content-aware search
  My own humble contribution to this debate is a prototype search engine, now running on my Weblog, that tries to steer a middle course between the Scylla of simple fulltext search and the Charybdis of unwieldy tagging schemes and brittle ontologies.
The art and science of software testing
  When up to half of the output of a full-blown TDD-style project can be test code, we're going to want to find ways to automate and streamline the effort.
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.
Moving pictures
  Why don't more people do this? Because it wasn't this easy before. Now, it is.
Two cultures
  When the XML messages flowing through that pipeline are also XML documents that users interact with directly, we'll really start to cook with gas.
XML for the rest of us
  XML documents, flowing through XML plumbing, can now deliver very real and tangible benefits.
Mining the intranet
  If you hope people will mine your intranet, make the job as easy as it can be.
Giving back to open source
  The bureaucratic hurdles include security considerations, export controls, and a host of other issues that Bollers sums up as "releasability remediation."
Mobile webcasting
  What's more, the TiBook could be sending the stream from any Wi-Fi-equipped meeting or conference, anywhere on the Internet.
A tale of two Cairos
  Now called WinFS, this vision of metadata-enriched storage and query-driven retrieval was, and is, compelling. Making it real wasn't then, and isn't now, simply a matter of engineering the right data structures and APIs.
Lizard brain surgery
  Few organizations have the resources to maintain and evolve a working system while mercilessly refactoring to produce its successor. Microsoft is among the lucky few. We'll see, in a couple of years, how well Longhorn has exploited that rare opportunity.
Mining message metadata
  XML message traffic is a resource that creates strategic opportunity for those who learn to manage it well. Tools for doing that are on the way.
Personal SOA
  Local event streams need to be open in the same ways as network event streams are and for the same reasons.
Open source citizenship
  Developers who plug into the reputation-driven meritocracy of open source -- while advancing the goals of your business -- are a force to be reckoned with.
How rich is the rich GUI?
  Documentation of GUI software needs pages of screenshots and text to describe procedures that, on the Web, are encapsulated in links that can be published, bookmarked, and e-mailed. A GUI that doesn't embrace linking can never be truly rich.
Why Mozilla matters
  Tear open the envelope of a SOAP packet, and you'll find an XML document inside. That document, representing a business transaction in flight, lives in two worlds at the same time. To applications and services, it's an XML payload. To people, it's a document to read, annotate, and pass around. Given the novel convergence of these two modes, the browser's future as an all-purpose Internet client may be brighter than we think.
If it's Tuesday, it must be 10AM
  When a computer in one timezone schedules an event in another timezone, the computer doing the scheduling needs to be able to accept and display both. I'm sure programmers could solve this -- if they weren't so indignant about humanity's perversion of astronomical time.
Permissions on the edge
  We'll always have to manage permissions centrally. But CoreStreet's method of distributing them to the edge of the network -- and beyond -- strikes me as an excellent way to tackle a thorny logistical problem.
Baseball lessons for software teams
  The methods pioneered by Oakland General Manager Billy Beane, based on the theoretical foundations laid by maverick statistician Bill James, hold important lessons for enterprise IT.
Email'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?
Security blame games
  In four or five years, the true nature of the struggle between the methodologies of Microsoft and the open source community may finally begin to emerge. My hunch is that both strategies will produce reliable and secure software, and that competition between them will benefit everyone.
More pleasant surprises, please
  I want to be pleasantly surprised by software that notices when message patterns indicate the formation of a group or project, and volunteers to set up folders and filters for me. Likewise, I want to be pleasantly surprised by an RSS newsreader that notices how I save and organize items from my subscribed feeds.
Dynamic languages and virtual machines
  In a world where computation lived within a single VM, strong type-checking and bytecode verification may have been reasons to prefer languages such as C# and Java. But we don't live in that world any more.
Acrobat and InfoPath
  I like where Adobe is going. The familiarity of paper forms matters to lots of people. And unless Microsoft's strategy changes radically, those folks are far likelier to have an Adobe reader than an InfoPath client.
Namespace training wheels
  In general, we don't have much experience creating and using simple XML vocabularies, never mind mixed ones. The creators of InfoPath and similar tools -- who hope that use of modular XML vocabularies will turn out to be like riding a bicycle -- ought to provide some training wheels.
Revisiting Zope
  For years I've been following the adventures of Zope, an open source application server that is particularly adept at content management.
GAIA and the services fabric
  During the next few years, we'll all be exploring how a services fabric can robustly support and flexibly adapt to the needs of our businesses. Gaia makes that vision seem closer -- and simpler -- than you might think.
Aspects revisited
  To enforce a policy you simply declare it, and tools make it so -- without requiring the cooperation or even the knowledge of the programmers responsible for the affected classes.
Core and periphery
  Successful evolution can't simply be a matter of choosing the right boundary because that's a moving target. Even at a given point in time, there are many ways to draw the "right" boundaries. Linux, for example, is a so-called monolithic system. It shunned the microkernel architecture that became fashionable years ago, yet it enjoys wild success. And while Windows and Mac OS X embrace the microkernel approach, nobody calls that the key to their success.
The network song
  The sounds of a working machine enable the pattern recognition engine in your brain to create a baseline -- and to detect deviations from it -- in ways that are effortless, automatic, and incredibly efficient.
Engines, steering wheels, and open source
  The infusion of open source infrastructure into the enterprise is a remarkable success story, and I truly do regard those responsible as heroes. There are only so many infrastructure projects to go around, though. Whether and how open source energy flows into user-facing applications is a key question for enterprise IT.
The universal client
  We've waited so long for this moment to come. AOL, please don't screw it up. If you don't get why this matters, turn Mozilla over to an organization that does.
Winning the browser peace
  I won't bore you with the details. Let's just say that testing CSS and JavaScript effects on the three major OS platforms, in six different browsers, isn't a good use of anybody's time
Patterns of persistence
  Programmers spend time and effort translating between objects represented in high-level programming languages, such as Java, and structures stored in relational databases. Object databases can remove that impedance, automatically binding programming-language objects to database objects. But doing so transparently requires some deep magic.
APIs, protocols,and rogue plumbers
  The inexorable logic of Web services sets aside APIs in favor of protocols. XML messages flowing through the pipes enact those protocols. Anyone with authorized access to that plumbing will be able to monitor and inject messages quite easily, and everyone will know that's true.
Tools for rules
  Will rules-based programming just create a different kind of mess? I doubt anyone really knows, but I'm glad we're gearing up to do the experiment. Sooner or later, something like this has to work.
Interfaces are habit-forming
  It seems kind of unfair, doesn't it? First, developers have to understand and accommodate users' habits. Then we have to deliver solutions that add value while surreptitiously encouraging users to adopt better habits. Finally, we have to bring to the surface, examine, and modify our own deeply-ingrained habits.
Enterprise buses and dirt roads
  As vendors begin to identify themselves with SOA, I hope they won't apologize for the dirt road or demand that we pave it. SOAP traffic flowing over the Web and through e-mail isn't a bad thing. We already know how to proxy this stuff. We're about to discover a whole new set of reasons to do it.
Don't segment desktop XML
  The future of XML on the desktop is far from certain. Now is not the time to segment a market that has only just begun to grow. I hope Microsoft will reconsider. And I trust that the competition is paying attention.
Do the simple things
  These rules seem too trivial to mention. But they are seldom followed, even though they can spell the difference between a healthy information system that integrates with a society of peers and an isolated outcast.
Open source and global development
  The world's full of smart people who have, collectively, a lot of the intellectual bandwidth needed to absorb and master open-source infrastructure.
Publishing a project weblog
  A couple of years ago I predicted that Weblogs would emerge within the enterprise as a great way to manage project communication. I'm even more bullish on the concept today.
Environment, scripting, and behavior
  It's a question of priorities, and support for dynamic languages isn't high on the list for Java or .Net. If I could make one change to both of these environments, that would be it.
Whither Mono?
  A healthy software ecosystem has to create niches where commercial and open-source projects can thrive. Java does that, but is neither an open standard nor a first-class citizen of the Windows platform. The Common Language Infrastructure is, at least in theory, both. Whether theory will become practice is an important question that makes Project Mono worth watching.
Playing the Internet scales
  My refrigerator magnets still don't receive weather reports, but when they do, we'll need something like PreCache to make them work.
Information trailblazing
  Last week Matt McAlister, InfoWorld's director of online product development, forwarded me a list of the week's 10 most-read stories. I was tickled to see a couple of my stories among them. "You can log in to the reporting system for more detail," Matt said, so I did.
10 things to know about XDocs
  Jean Paoli, the architect of Microsoft Office's XML capabilities, recently spent several hours showing me Microsoft's newest Office family member, InfoPath (formerly XDocs, originally NetDocs). Here are 10 things you should know about this revolutionary piece of software.
Refactoring the business
  There is a vast gulf between the process mappers who model business systems pictorially, and the programmers who grind out the C++ or Java or .Net services that support those business systems. Between the two camps lies a fertile land of opportunity. It's time to jointly explore it.
Shipping the prototype
  Years ago, when the paint was barely dry on Visual Basic 3.0, a developer showed me a CD-ROM-burning application he'd written using that toolkit. The idea was to prototype the UI in Visual Basic, then rewrite in C++ for performance. But in the end, he admitted somewhat sheepishly, "we shipped the prototype." I saw nothing to be ashamed of. It was -- and is -- a brilliant strategy.
Towards open services
  SOA (service-oriented architecture), we agree, is the way of the future. We'll build loosely coupled Web services now and wire them up into composite systems later. But as "later" starts to resolve into a date like 2003, or 2004, it's also becoming clear that SOA raises challenging issues. How, for example, do you monitor, test, and debug a distributed system when only some of its components are under your direct control?
Publish globally, script locally
  A picture can be worth a thousand words. But a URL can be worth half a dozen pictures. When application behavior is expressed that way, you empower your community of users to share it directly.
The name game
  Tim-Berners Lee once prescribed that a Web application's URI namespace should be opaque. If that axiom holds, it wouldn't be kosher to do what I did: Extract an ISBN from an Amazon URI and inject it into another application. Then Roy Fielding, who is co-founder of The Apache Software Foundation and author of the doctoral thesis on REST which provoked the Web services movement to rediscover its roots in the Web, weighed in.
Revisiting the scriptable DOM
  The scriptable DOM (Document Object Model) was always an intoxicating idea. But when I saw the gymnastics those poor scripts had to perform in order to detect and adapt to browser versions, I recoiled in horror. Recently, though, I was pleasantly surprised to find that scripts I wrote in Mozilla, under Mac OS X, worked identically under MSIE 6 on Windows. This is great news!
Nobody expects the spontanous integration
  Web apps can't help but be proto-services, whether you plan for it or not. Expect, and encourage, unintended use.
Customizing our software worlds
  For those of us who act as agents of technological change, it's tempting to chalk up resistance to fear of change. Users can't, or won't, learn new ways, we say, and sometimes we're right. But the reverse holds true as well.
Script locally, publish globally
  We've envisioned using Groove to collect key sources of information, create and discuss work-in-progress, and transmit results through various channels. Now, thanks to Groove Web Services, we can.
Multimodal user interfaces
  Accessibility isn't only about including those who don't see (or hear) well. Services that connect to people will succeed best when they can adapt to the cognitive differences that make all of us unique.
Debugging SOAP
  Andrew Schulman, the author of Undocumented Windows, used to lecture on the many mysteries he had unraveled deep in the bowels of the VxD (virtual device driver) realm. "How do I know all this?" Schulman would ask rhetorically. The answer was NuMega's (now Compuware's) SoftICE.
Jean Paoli on XML in Office 11
  Next week's issue of InfoWorld includes an article on the new XML capabilities of Office 11. While researching the story, I interviewed the architect of XML in Office 11, Microsoft's Jean Paoli, one of the primary co-creators of XML.
Designing Web services namespaces
  As we reported last week, Groove Networks showed me its much-anticipated SOAP API, which will be called Groove Web Services, and it's a beautiful thing to behold.
Active intermediaries and Rob, the accountant
  My wife, who runs a small business, recently confessed to her accountant that she is overwhelmed with bookkeeping chores. She asked me pointedly, "Isn't this Web services stuff you keep yammering about supposed to help straighten this mess out?"
Rethinking the Java GUI
  Simon Phipps, Sun's chief technology evangelist, likens Java to a baby duck. "When Java technology was born, it looked around, saw a Web browser and thought it was an applet," he jokes.
Finessing PKI
  PKI (public key infrastructure) is a ball and chain that drags down our security efforts, all of which depend on the ability to manage identity and trust.
The publish/subscribe Internet
  I'm the last guy to kick sand in the face of SOAP as an RPC protocol. It's easy, universal, and productive. What's not to like?
The Web services grid
  By my reckoning, J2EE was conceived at Microsoft in 1996, when legendary database guru Jim Gray was hired to lead the Microsoft Transaction Server (MTS) project. In MTS, which begat both COM+ and J2EE, the COM object was the unit of distributed computation.
Scripting Web services
  I've just returned from InfoWorld's conference, Next-Generation Web Services II: The Applications. One of the most memorable talks, for me, was given by Cape Clear's Annrai O'Toole.
Managing data the XML way
  The XPath and XSLT techniques I mentioned last week will become as fundamental to this generation of developers as SQL was to the last. Likewise XQuery, the query language for XML data that's finally emerging from years of gestation.
  Back in the XML Soup
    At the XML Web Services One conference in Boston last month, I spent most of my allotted time in an all-day W3C/OASIS seminar on Web services security. But I couldn't help ducking out now and then in order to go next door and catch parts of Ken Holman's hands-on seminar, Practical Transformation Using XSLT and XPath.