Monday, November 21, 2005

3 x 3 Architecture Tools

3 sets of architectural tasks:
  • Modeling
  • Documentation
  • Communication
3 classes of architectural products:
  • Enterprise Architecture
  • Domain-specific Architecture
  • Software Architecture



Enterprise
Architecture


(global)
Domain-specific
Architecture


(cross-functional)
Software
Architecture


(project-centric)
Modeling   
Documentation   
Communication   


Take the Google Search Engine Experiment

Find out which search engine really offers you the most relevance: Google, Yahoo, or MSN?

Click here to take the test now


Hardware Going Full Circle


IBM System 360

to

Microsoft Xbox 360




Q: Why does a circle have 360 degrees?

A: Ancient peoples who lived in Mesopotamia (now southern Iraq) invented writing, and invented a 360-degree circle. Their calendar divided the year into 12 months of 30 days each, that is, 360 days.

My career in computing began in 1965, writing and executing tiny little BASIC programs, using a 110-baud Teletype with an UPPERCASE only keyboard, paper roll output, a side attachment for reading and punching papertapes, connected via a very clunky telephone modem to a GE mainframe computer running at MIT.

That mid Sixties timeframe also coincided with the introduction of Big Blue's big bang System 360's, named for their ability to serve all 360 degrees of computing requirements using a single hardware architecture.

Code written to run on one System 360 could automatically execute on any System 360. No re-compiling. No re-linking. Executable images were completely portable across a very scalable hardware line.

Hardware architecture circa mid-1960's was a VERY BIG DEAL. Fifteen years later, Digital Equipment Corp. (DEC), in its heyday, even included the 'A' from 'Architecture' as the second letter in its 'VAX' hardware name.

Nowadays we take hardware architecture more or less for granted. But you have to admit, it was a pretty huge breakthrough back when Gene Amdahl designed a set of machine instructions that separated the interface to the hardware from the underlying technology used to create the hardware. This allowed semiconductor technologies to advance along several fronts simultaneously while preserving customers' existing investments in software.

Saturday, November 19, 2005

Every Blogger Needs a Knowledgebase (or two)

A blog is an ongoing, continuously running monologue occasionally interrupted by brief comments from readers.

Writing a blog is like knitting a yarn, telling a story, spinning a tale, re-telling somebody else's story, responding to some event, reacting to someone else's opinion, promoting a particular point of view, and so on and so forth. It meanders like a flowing stream, circuitously winding every which way. Topics can and do range all over the map. Continuity from one posting to the next is never all too important.

A knowledgebase, on the other hand, is like a dynamic, structured, virtual book containing organized collections of information that are constantly undergoing refinements, revisions, and extensions as new information is synthesized and old information occasionally refactored.

A mountain top is a more apt metaphor for a knowledgebase. The creator is a "subject matter expert" who has scaled to the summit in search of understanding and comprehension of the knowledgebase's underlying model.

The ability to effectively present information to others is, itself, a craft, much like authoring a book is a craft.

A knowledgebase starts with a model or a set of models.
  • Models are defined in terms of structure and context.
  • Information is organized and described in terms of abstractions.
  • Information is structured and presented based on hierarchically navigable category trees.
  • Relationships can be linked between models.
A knowledgebase is like a list of "best of links" to resources, including category descriptions, and lists of related objects.

A knowledgebase has as its #1 job the transfer of knowledge. There are producers and consumers. Producers write. Consumers read.

Category descriptions are often like PowerPoint presentations. Category trees can be organized in all kinds of ways, with hierarchical representations imposing context.

Categories can include lists that can track all kinds of objects (i.e., abstractions) including: products & vendors, services, people, projects, ...

Items on lists can be visually highlighted using legend icons as context cues.

My Blog and Knowledgebases

I write the ITscout Blog. In addition, I am responsible for two knowledgebases:
  1. IASA 'Resources' Repository

  2. ITscout
Knowledgebases are fundamentally quite different than blogs. Structure, organization, and order are all of paramount importance. Models and context are king -- they rule.

The IASA 'Resources' Repository is accessed using the following login information:
URLhttp://www.ITscout.org/ITguide/
Usernamearchitecture
Passworditguide
This knowledgebase includes a diverse collection of resources related to Architecture.

ITscout is a knowledgebase that describes and organizes the universe of IT products based on a 3-layer, 4-model Technology Architecture framework.



The bottom layer, IT Infrastructure, provides the base platform for computing and communication -- two sides of the same coin.
See IT Infrastructure

The middle layer is Applications which can be built or bought.
See Application Development
See COTS Applications
Applications are layered on top of IT Infrastructure.

The top layer, Data, enables business intelligence.
See Business Intelligence
Data is layered on top of Applications.

Improvements to knowledgebases is a function of quality and quantity of feedback. Knowledgebases are not wikis which work fine in situations where information can be organized alphabetically, like the most famous wiki of them all, Wikipedia, the free encyclopedia.

Knowledgebases do not place control of structure, organization, and presentation into the hands of the public. That's not to say that knowledgebases can't include editable content like a wiki.

Knowledgebase models are like forests of category trees with graphical representations that can transfer knowledge almost through visual osmosis. The structure and organization of knowledgebase models are much more complex than simple alphabetical orderings. Classification hierarchies are structured using multi-level category trees. In the end, a good knowledgebase is like a good reference book, and even better, it's constantly kept current and up-to-date, forever growing and evolving.

Friday, November 18, 2005

Up, up and away!

It's not easy to understand UP,
a two-letter word, that has
many meanings.

UP means toward the sky or
at the top of the list.

When we awaken in the
morning, we wake UP.

At a meeting, a topic
comes UP?

Why do we speak UP?

Why are officers UP
for election?

Why is it UP to the
secretary to write UP
a report?

We call UP our friends.

We brighten UP a room.

We polish UP the silver.

We warm UP the leftovers and
clean UP the kitchen.

We lock UP the house.

Some guys fix UP old cars.

At other times the little word has real
special meaning.


People stir UP trouble,
line UP for tickets,
work UP an appetite, and
think UP excuses.

To be dressed is one thing but
to be dressed UP is special.

UP is confusing:

A drain must be opened UP
because it is stopped UP.

We open UP a store in the morning
but we close it UP at night.

Mixed UP about UP?

If you are UP to it,
you might try building UP a list
of the many ways UP is used.
It will take UP a lot of your time,
but if you don't give UP,
you may wind UP with a lot more
definitions of UP.

When it threatens to rain, we say it is clouding UP.
When the sun comes out we say it is clearing UP.

When it rains, it wets the earth and often messes
things UP.

When it doesn't rain for awhile, things dry UP.

One could go on and on, but let's wrap it UP.
My time is UP, so..........Time to shut UP!

Thursday, November 17, 2005

Blogs vs. Knowledgebases

Blogs

Blogs are like a stream of consciousness. The choice of topic for any given day's posting can be affected by any number of different factors. Sometimes a topic reflects reactions to some external world or business event. Other times topics deal with specific issues or particular themes.

When I'm actually going through the process of writing a blog, I repeatedly switch back and forth between a text-based HTML editor window and a Preview window. After multiple iterations, I publish. After a post has been published, I check how well it's been physically rendered by the blogging software. Occasionally I'll go through another round or two of iterations before the final last publishing.

Sometimes, only on rare occasions, when I'm re-reading some old posting, I'll spot some spelling error, or poorly expressed language. I then go back and modify the content and republish the posting. Otherwise, I almost never go back and re-edit or re-write past postings. BTW, that's exactly the opposite of my knowledgebase behavior where I'm constantly revising content by adding, editing, removing, and refactoring.

Some bloggers include on their blog site categories. I don't know how popular this navigational feature is with people who read blogs. I'd guess bloggers spend considerably more time assigning "categories" and/or "keywords" than readers ever spend navigating via "categories" and/or "keywords".

Another group of bloggers like to assign "tags" for navigating the web using social bookmarks. I have no firsthand knowledge on the effectiveness of expanded web navigational aids like these.

Knowledgebases

Knowledgebases are built on models that hierarchically organize content in terms of context. While blogs reflect ongoing diary-like writings to a journal, knowledgebases are more like an always on PowerPoint presentation. PowerPoint presentations evolve over time, continually improving, synthesizing new ideas, adapting based on past experiences.

The underlying recursive structure of knowledgebase models is a category tree. Categories can contain sub-categories that can contain sub-categories that can contain sub-categories, and so on, and so forth.

Category trees expand and contract over time. Sometimes major pruning is required, especially when complexity can be transformed into simplicity. Category descriptions are regularly revised and reviewed, and vice versa.

Knowledgebases are designed to guide, teach, and facilitate knowledge transfer. Knowledgebases help leverage intangible assets by sharing know-how. Knowledgebases can help show how all the pieces fit together. Knowledgebases can help show how the whole is greater than the sum of its parts. Knowledgebases provide simple ways of organizing and sharing information. Occasional untrained visitors can view and explore navigable content hased on multi-dimensional context.

Conclusion

Blogs are like rivers flowing endlessly forward. Knowledgebases are like mountains with ever rising peaks required to attain and sustain mastery through comprehension and understanding. Sometimes new mountains arise while old ones fall. Meanwhile technology marches forever onward.

Wednesday, November 16, 2005

Communication, collaboration, context, content

In the world of architecture, there are "producers of information" and "consumers of information."
  • "Producers" capture and organize knowledge
  • "Consumers" discover and use knowledge
Communication of knowledge is inherently difficult, mediated by always-contextual codes, norms, culture, and perceptions. Translating knowledge from one context to another, like translating any language involves not just basic grammar and syntax rules, but also issues of meaning and intent that are contextual and subjective.

I find I need two (2) separate communication channels for conveying content and context:
  1. blog
  2. knowledgebase
Blogs are temporally-driven. Frequent postings are necessary because, literally, you're writing a journal. Blogs are read starting with the most recent entry first and then reading backwards in reverse chronological order. Blogs need to be short and pithy with a sense of candor, urgency, controversy, and timeliness.

Knowledgebases require intelligently-structured ways of organizing information based on models. Knowledgebase models ought to be simple, intuitive, highly-visual, and easily-navigable.

Context determines how content is interpreted. Common hierarchical classifications facilitate communication and collaboration.

Most effective are visual models that combine context, hierarchical category trees, and simple navigation. Let's look at an example.

I'm a member of an IASA (International Association of software Architects) working group that's attempting to define a taxonomy for describing architecture.

To view the IASA Architecture 'Resources' Repository, use the following access information:
URL: http://www.ITscout.org/ITguide/
Username: architecture
Password: itguide
Start by moving your mouse pointer over the outer rim of the bookcase graphic and then clicking when 'Architecture' is highlighted.

Next, click on the yellow book at the bottom left of the top shelf, the one labeled "Frameworks". Also, click and explore the books labeled "Archetypes" and "Patterns".

Blogs are journals. Knowledgebases are structured. Both are valuable in transferring knowledge.

One similarity between blogs and knowledgebases is how, in both cases, information is published onto a web page. The main difference is that knowledgebase web pages get continually rewritten and refined in an evolutionary fashion as new knowledge is amassed and organized.

Tuesday, November 15, 2005

Architecture is ...

Architecture is ... like a bridge that connects between business and technology.



Its purpose is twofold:
  1. Helps business people better understand technology

  2. Helps technology people better understand business



Architecture is ... really more like three different bridges since there are actually three different types of architecture:



  1. enterprise architecture (global)

  2. domain-specific architecture (cross-functional, cross-organizational)

  3. software architecture (project-centric)


Architecture is ... like a braided rope bridge consisting of three intertwined strands that correspond to:

  1. modeling

  2. documentation

  3. communication





Architecture is like a Bridge

Architecture is like a bridge that connects between business and technology.





Business connects to one side of the bridge

The other side of the bridge connects to IT



Its purpose is twofold:
  • Helps business people better understand technology

  • Helps technology people better understand business


Architecture is a lot like teaching technologists the same lessons Peter Drucker, the "father" of modern management, taught to business executives. His message was very simple: "Look at people, not at machines or buildings."

Technologists need to learn that there's more to organizing information besides "command and control" methods.

A technologist's principle task ought to be:
  • making people capable of joint performance
  • making an organization's strengths more effective
  • making an organization's weaknesses irrelevant

Business people literally need to learn how to think about and manage technology in precisely the same way that they currently know how to think about and manage:
  • money
  • people
  • property

The business side of architecture is based on the logic of rational organization and production. Rationalization works by applying scientific management to the creation of defined, quantifiable, repeatable production and organizational processes. Almost every facet of modern industry takes some quantifiable process, maximizes it for efficiency based on a distinct division of labor, with defined inputs and outputs, and then manages it based on a rules-bound bureaucratic structure.

The technology side of architecture is not quite the same. That's not to say that inside IT there haven't been efforts to rationalize, such as: IT resource planning (sometimes referred to as ERP for IT); or IT service management. The result of rationalization is a process supposedly capable of being engineered.

Multiple craft industries over the past two centuries -- all of which were once considered impossible to manufacture or mass-produce -- have yielded to the resulting benefits of efficiency and quality that rationalization achieves. Yet, the creation of software has still somehow managed to elude an engineered approach to its production, even after 30 years of tremendous effort. In attempting to engineer the process, software developers cannot agree on the details of a defined, quantifiable, repeatable process. Instead, highly skilled professionals still craft most of the world's software.

Why haven't basic industrial patterns -- software industrialization, software manufacturing, software engineering, and software assembly lines -- become dominant? By the time the automotive industry had reached its 30th anniversary, around 1930, the fundamental issues of production, as exemplified by Ford's assembly line; product, as exemplified by standardized design; and industry, as exemplified by the few dominant national players like Ford and GM, had all been clearly established.

Is software an act of engineering or communication?

If, indeed, software is a rational endeavor, then it should be possible to improve quality by providing better and more resources. "Better and more resources" means better management, better tools, more disciplined production, and more programmers.

If, on the other hand, software is a craft, then improving quality involves the exact opposite: focusing on less hierarchy, better knowledge, more-skilled programmers, and greater development flexibility.

The essential limit of software development is communication. Communication is inherently difficult, mediated by always-contextual codes, norms, culture, and perceptions. Translating knowledge from one context to another, like translating any language involves not just basic grammar and syntax rules, but also issues of meaning and intent that are contextual and subjective.

Software is the execution of knowledge. Much of knowledge is tacit, undefined, uncodified, and developed over time, often without being explicit even to the individuals participating in the process. More importantly, such knowledge and practices are dynamic, constantly evolving and transforming.

Modeling the execution of knowledge has proven to be exceedingly difficult -- often incomplete, impractical, or unsatisfactory. The less broadly accepted and understood the knowledge within a domain, the more difficult the task becomes of translating that knowledge. The issues are inevitably about context and communication.

Architecture is really more like 3 bridges

Architecture is really more like 3 bridges:



There are 3 different types of architecture:
  1. enterprise architecture (global) -- consists of:
    • business architecture
      • processes
      • workflows
    • data architecture
      • entities or "things"
      • relationships
      • metadata
    • application architecture
      • partitioning
      • integration
    • technology architecture
      • infrastructure -- foundation
      • applications -- layered on top of infrastructure
        • built -- developed
        • bought -- purchased
      • business intelligence -- layered on top of applications

  2. Domain-specific Architecture
    • cross-functional or cross-organizational
    • domain specific -- e.g.,
      • security architecture
      • network architecture
      • "customer" architecture

  3. Software Architecture
    • project-centric
    • application specific -- e.g.,
      • accounts payable
      • order entry
      • sales management




Architecture bridges are like braided ropes

Architecture bridges  are like braided ropes consisting of three (3) intertwined strands that correspond to:

  1. modeling

  2. documentation

  3. communication




Modeling

Modeling reflects the essence of architecture. Models are abstractions used to leverage, aid, and facilitate the transfer of knowledge and experience among different groups of people.

Many books have been written and courses presented that describe ways of designing models.

UML, the Unified Modeling Language, represents the most common set of models for specifying application structure, behavior, architecture, business process, and data structure. Many modeling tools support UML, including: IBM's Rational, Microsoft's Visio, Telelogic's System Architect, as well as numerous other products.

The goal is to extend UML into OMG's Model-Driven Architecture (MDA) that unifies every step of development and integration from business modeling, through architectural and application modeling, to development, deployment, maintenance, and evolution. In addition, service oriented is driving demand for its own new breed of modeling products.

Patterns represent ways of modeling best practices so that they can be effectively imitated by others. Modeling is also required to achieve re-use and establish standards.

Documentation

Documentation is about capturing facts and properties -- and then organizing that information based on models.

Models are like a skeleton

Everything except the bones are Documentation


The world famous Harvard Business School professors Richard Nolan and Warren MacFarlane suggest that intangible assets are worth approximately ten times (10 x ) the value of physical assets.

Various Asset Management products can track physical assets. Many include spiders that can automatically crawl across a network's resources in order to discover and inventory what already exists.

Capturing, collecting, and organizing the intangibles -- worth more than ten times (10 x ) the tangibles -- involves tracking:
  • product know-how and technical knowledge
  • employee training and experience
  • best practices
  • re-use

Communication

Communication is the oft neglected third thread of the architectural rope. Frequently, the only people who access or read architecture information are the authors themselves.

Communication means helping occasional visitors intuitively navigate, explore, and find information. Capturing, collecting, and organizing -- the Documentation step -- is where information gets fed in. This step, Communication, is where information gets accessed by casual untrained users reading and learning about tangible as well as intangible assets.

UML requires training. UML is complex. UML can be highly detailed. A simpler level of abstraction is needed that's easier to understand by someone without any formal training.

Communication and collaboration are converging with computing. Context is critical for converying content. My company, Flashmap Systems, competes in this market niche -- providing products like ITatlas and ITguide that help architects communicate with their users. Information about architecture needs to be shared and understood by widely diverse audiences.

In addition, Flashmap Systems has contributed to effective communication through ITscout's highly visual, 3-layer/4-model technololgy portfolio framework:
Technology Architecture
  • infrastructure -- foundation
    • clientware
    • middleware
    • serverware
    • manageware
    • platforms
  • applications -- layered on top of infrastructure
    • built -- developed
      • platforms
      • languages
      • reusables
      • lifecycle
    • bought -- purchased
      • value chains
      • back-office to front-office
      • industry-specific verticals
  • business intelligence -- layered on top of applications
    • data
    • tools
    • analytics


Friday, November 11, 2005

Rail Roads versus Car Roads

Rail roads and car roads both represent infrastructure. But while the former are mostly privately owned, the latter are mainly public. Anyone with a car or bicycle can freely drive on public roads, the vast majority of which are paved.

Trains shaped America's 19th century economy. Cars did the same for the 20th century. As we embark on the 21st century, a challenging question is, should broadband information highways be private or public?

Currently, broadband access to the Internet is delivered for a monthly fee either by cable television providers or by public telephone carriers with DSL networks. But, wireless networks might potentially change the present market dynamics entirely.

On November 11, 2005, the Mercury News reported that Google wants to use the city of Mountain View, CA, home of its corporate headquarters, as a test ground to show that giving people wireless Internet connections on a large scale is a good idea socially and financially. They believe that "free (or very cheap) Internet access is a key to bridging the digital divide."

Imagine how much different our world would be if the road network we drive our cars on were privately owned and operated instead of being paid for by our taxes.

Telephones have never been public, except in the form of pay phones. But, historically, there was always a huge difference between roadways and telephone networks based on scarcity versus abundance.

Up until fairly recently, network bandwidth has been scarce. That resource had to be carefully managed. On the other hand, most roads most of the time have little if any traffic. (Note: Traffic jams, where road bandwidth is scarce, is the exception.)

By installing a network of WiFi transmitters atop a city's street-light poles, there'd be an abundance of bandwidth for wireless broadband connections to the Internet. As technology marches forward, the cost for such networks in the future is expected to continue to plummet while the abundance of bandwidth should continue to climb.

Free public roadways totally transformed our society. Imagine how free public Internet highways might someday completely reshape our children's world. This is an important debate. I'm grateful to Google for helping to get it started.

"Simple and Open" Always Wins

Google (GOOG) currently has a Price to Earnings ratio (P/E) of 86.30. Micrsoft's (MSFT) P/E is 23.00. Why does Wall Street value Google almost four times more than Microsoft? I think the answer is because Google is seen as innovative and disruptive.  Google isn't building a Yahoo!-like portal. Google isn't building a Microsoft Office-like suite. Google doesn't imitate.

Personally, I think it's terrific how Microsoft embraced XML and Web Services. I'm impressed by the initial reviews of Windows Live and Office Live. But, if Microsoft really wants to narrow the P/E gap between themselves and Google, then they need to get disruptive. My advice: wholeheartedly embrace a strategy based on simple and open. Avoid complex and proprietary.

Obviously, such a shift is risky. It will require substantial changes to Microsoft's business model. But, they're still strong and rich. Now is when they should be willing to gamble intelligently.

We've seen once great companies like Digital Equipment crash and burn. It looks like GM may be soon be facing bankruptcy. That's already happened at United and Delta. I have little doubt but that IBM teetered on the brink of disaster and only was saved by Gerstener's miraculous ability to teach that elephant to dance.

Microsoft's P/E ought to be above 80. The information revolution is still in its infancy. Microsft took a huge risk when it gambled on Windows. It did so again with Internet Explorer. Now is the time for Microsoft to bet the ranch on simple and open. Get disruptive. Don't imitate. Look at what you tried to do with Passport, and then do the exact opposite.

Thursday, November 10, 2005

Intangible Assets = 10 times Physical Assets

The Enterprise Metadata blog includes the following quote from a Harvard Business Review article entitled Information Technology and the Board of Directors, written by Richard Nolan (an emeritus professor of business at Harvard Business School and a professor of management and organization at the University of Washington Business School in Seattle) and Warren McFarlan (a Baker Foundation Professor and the Albert H. Gordon Professor of Business Administration emeritus at Harvard Business School):
The board needs to understand the overall architecture of its company’s IT applications, systems, components, and asset management strategy. The first step is to find out what kinds of hardware, software, and information the company owns so as to determine whether it’s getting adequate return on its IT investments. Physical assets are fairly easy to inventory while intangible assets are not.
The authors estimate that intangible assets (like product know-how, reuse, employee training & experience, etc.) are worth ten times the value of physical assets, Although the latter are far easier to measure using Asset Management products to track physical assets, the real value resides in Technology Architecture which is where the intangible assets get captured and communicated.

wikiCalc

Dan Bricklin -- the original spreadsheet inventor who along with his then partner Bob Frankston created VisiCalc for Apple II's way back in the late 1970s -- has unveiled wikiCalc, a web page authoring tool that works like a cross between a wiki and a spreadsheet.




wikiCalc is for creating and maintaining web pages that include data that has more than just unformatted text, such as schedules, lists, or tables. It combines some of the ease of authoring and multi-person edit capability of a wiki with the familiar formatting and data organizing metaphor of a spreadsheet.

Wednesday, November 09, 2005

AJAX: A White Tornado Stronger Than Dirt

Don Dodge believes that Microsoft reinvents itself every 5 years in an effort to adapt to an ever changing software world -- and that with Windows Live and Office Live, Microsoft has come aLIVE again, coinciding perfectly with "The Coming Web Services Tsunami". Perhaps, but Web Services is proving to be significantly more challenging than Web Browser technology was a decade ago -- the last time Bill Gates fired off a fatwa-like edict. (Don, how did Microsoft reinvent itself in the intervening period 5 years ago?)

Web Services has already been around for awhile. Thus far, Web Services have primarily been developed using SOAP, WSDL, and UDDI. For the most part, these XML-based technologies have provided a text-based alternative to binary-based object request brokers such as CORBA and DCOM. The main advantage, of course, has been XML's ability to flow freely through port 80 -- the same port used by HTTP to transmit HTML.

Web Services have mostly been designed around traditional request-reply, synchronous, client/server-like interprocess communication. Once a client makes a request, it waits until the server responds. Because all data transferred between clients and servers must be converted back and forth between binary and text on both sides of the connection, there are inherently longer delays between interactions than older CORBA or DCOM implementations. However, the performance hit is well worth the cost because of the benefit of being able to ride on top of the ubiquitous Web-based HTTP Internet network.

In addition to being slow, request-reply interactions also tend to be tightly-coupled. The huge breakthrough needed before Web Services will truly take off depends on a significant shift toward more loosely-coupled processing. That's where AJAX becomes important.

AJAX officially stands for Asynchronous Javascript And XML. Of course for me, a baby boomer who grew up watching TV commercials back in the Sixties, AJAX will always be a "white tornado" for cleaning my kitchen floor, or a "white knight on a horse" who would point his lance at people in the park and their clothes would turn magically clean because AJAX was "stronger than dirt."

The real magic underlying 21st-century AJAX is that it forces de-coupling, and de-coupling is what will enable the flexibility and scalability that Web Services pundits have promised but thus far failed to deliver.

A decade ago, Bill Gates' Internet Tidal Wave memo succeeded in turning Microsoft around on a dime. The company instantly changed its strategic client/server approach away from proprietary Windows-based fat-clients and replaced it with a browser-based technological solution.

Roll forward to 2005. Longhorn, aka Vista, was supposed to have already been finished. The huge opportunity Microsoft had hoped to leverage hinged on the industry rapidly shifting to rich client user interfaces. But schedule delay after schedule delay has resulted in a rapid closing of the window of opportunity. Just as "fat clients" lost out to standards-based open Web browser user interfaces, it appears that "rich clients" may lose out to standards-based open AJAX-enabled Web browser user interfaces.

Let's give Microsoft credit for recognizing the changing marketplace. It's great that they're going to rally behind de-coupled AJAX development so that Web Services can finally begin to deliver on it's true promise. By itself, however, AJAX, is still not sufficient. The essential breakthrough also requires support for development by exception. Object-oriented's composites and inheritance provide a key portion of the necessary solution. Still needed is an equivalent capability on the process/workflow side of software development.

Politics and Standards

In the past, there have been occasions when I've expressed great pride in my New England heritage (e.g., see The Spirit of New England or A Culture of Standards). But, I'm embarrassed by an amendment to a piece of important Massachusetts legislation passed out of the Senate Ways & Means committee that seems intended purely to entangle with politics a decision by the state's CIO to standardize on OASIS' Open Document Format (ODF) for all Commonwealth of Massachusetts public documents stored after January 1, 2007.

ZDNet's David Berlind reported in Politics and the perversion of standards a word for word transcription of a political hearing that presents a practically made-for-TV story that is perhaps better than any industry drama.

David Berlind does a superlative job of differentiating the nuanced boundaries between standards, software, and licenses, as depicted by the following edited excerpt:
The HyperText Transport Protocol (HTTP, the protocol of the Web) is the open standard that's supported by both Microsoft's Internet Information Server (IIS) and the Apache Software Foundation's Apache Web Server. One -- Apache -- is available under an open source license, the other -- Microsoft's IIS -- is not. Where Massachusetts needs Web servers, the state is free to pick either (or from a bunch of others) and know that, because of how both support the same open Web standard (HTTP) -- either can be used to publish a Web site that anyone in the world can access.

That's exactly how the ODF ecosystem can work to the benefit of the Commonwealth of Massachusetts. ODF is like HTTP. Since it's open -- the state would be free to pick from solutions that support it and those solutions can come from Microsoft (just like IIS supports HTTP) or from open source providers like OpenOffice.org (just like the Apache supports HTTP). Much the same way the licenses to Apache and IIS are irrelevant to their support of HTTP, the licenses to OpenOffice.org and the licenses to the solutions that can come from Microsoft, Corel, or whoever else decides to support ODF in their products are irrelevant as well.
Personally, I can't understand, nor accept, why Microsoft won't support ODF. Microsoft should compete by building superior products for editing documents. If Microsoft believes its formats are superior, than customers can elect to store their documents in those formats. But, there's no reason why documents edited using Microsoft products cannot be stored based on standardized ODF. Microsoft already supports PDF formats for print-image output. They also support a Microsoft-developed alternative to PDF called the Microsoft Office Document Image Writer. Why can't they do the same with ODF, providing the option of storing documents in either ODF or Microsoft's Office XML Reference Schema?

Tuesday, November 08, 2005

Performance Matters

Chris Loosley, an expert in Service Level Management (SLM) at Keynote Systems, recently began blogging (using the same template I chose for the ITscout Blog). His blog, entitled Performance Matters, deals with all aspects of Web site performance management. I unconditionally recommend Chris's blog to anyone interested in software performance.

The systematic application of performance management or service level management practices is an essential way to improve the availability and responsiveness of Web sites and e-business applications. SLM is an essential way to maintain and improve a business's overall quality and effectiveness.

On Being Eclectic

Recently I wrote the following in an earlier blog posting:
With the ITscout Blog, my emphasis has primarily revolved around addressing two key questions:
  1. What is IT Architecture?
  2. Why is IT Architecture important?
In truth, although IT Architecture is the primary theme around which my professional career currently revolves, the ITscout Blog is indeed a personal web site and not a corporate web site. The views I express are clearly my own, mine alone, and not necessarily those of the company I work for, nor the people I work with. While IT Architecture is extremely important to me, I prefer to use my blog to report on a wide range of eclectic topics -- things I find personally interesting. I suppose I could maintain separate blogs -- one for work-related topics and another for everything else -- but I prefer not to (at least not yet).

Given this long-winded preface, it'll come as no surprise that this current posting has nothing to do with IT Architecture. But, I'd like to share some connected dots I had never seen connected before.

Everyone by now has heard of Ambassador Joe Wilson, whose wife Valerie Plame had her identity as a CIA agent leaked to the press (i.e., Bob Novack) by someone inside the White House (most probably by Carl Rove). What I hadn't realized, until today, is that back in January 1991, that same Joe Wilson was George H. W. Bush's (i.e., #41's) acting ambassador to Iraq, living in Baghdah during the runup to the first Gulf War. I learned of this from Boston Globe editorial columnist H.D.S. Greenway, whose op-ed piece, entitled "The Atypical Ambassador", is excerpted below:
We now know how men like Vice President Dick Cheney and Defense Secretary Donald Rumsfeld bought into a utopian grand design and took a deeply inexperienced young president along with them.

And we know now what a deep and damaging failure this botched dip into idealistic colonialism has been, and how it has hurt our cause of trying to combat Islamic extremism.

I left here with Joe Wilson nearly 15 years ago, but because the son lacked the wisdom of the father, I am back in this demeaned and bitter city witnessing the greatest foreign debacle of a lifetime.
A day earlier, The Boston Globe ran a scathing editorial written by James Carroll entitled "Deconstructing Cheney" which described "just how damaging the long public career of Richard Cheney has been to the United States" and how intertwined the Vice President's career has been with his close pal and constant sidekick Donald Rumsfeld. Most frightening is an accusation in this article stating how, on September 11th, "in Bush's absence, Cheney, implying an authorizing telephone call from the president, took command of the nation's response to the crisis. There was no authorizing telephone call."

Sunday, November 06, 2005

Don't NASCAR Our National Parks

I have nothing against NASCAR. If people want to watch corporate logos running around in circles, that's okay by me.

Frankly, I long for earlier times when baseball stadiums had names like Fenway Park or Yankee Stadium instead of U.S. Cellular Field or Minute Maid Park. Similarly, I prefer postseason college football's Rose Bowl, Orange Bowl, and Sugar Bowl over the Outback Bowl, Capitol One Bowl, and GMAC Bowl. But, sports are big business and I can understand how everyone's out to make a buck.

However, enough is enough already, especially if as reported in The American Daily Prospect, Republicans get their way in plastering corporate logos all over our National Parks. Any plans to throw open the doors of commercialization in places like Yellowstone, Yosemite, or
Cape Cod National Seashore need to be stopped dead in their tracks.

Corporate jingles, slogans, and logos have crept into almost every corner of our lives. We don't need the private-sector to spoil the superb expression of civic consciousness which is America's "national parks."

Why Don't People Vote?

According to a Census Bureau Report, 64 percent of U.S. citizens age 18 and over voted in the 2004 presidential election, up from 60 percent in 2000. That's actually a higher percentage than I had thought. But, my question about voting in the title of this blog posting isn't about elections. Rather, I was wondering why more people don't take advantage of the grading feature included inside ITscout.

For example, if you look at the list of Relational DBMS Server products, only one person assigned a grade to Microsoft's SQL Server, two people graded Oracle 10g, and one person gave a grade to IBM's DB2. ITscout provides a chance for people to share their opinion about products in a completely fair and unbiased manner. Why not take advantage of this opportunity?

In addition to products, people can also share their opinion about such B2C (Business-to-Consumer) categories as Maps, Dictionaries, Dead People Finders, or Multimedia Search.

Finally, I ask for your help. Please use the Feedback option on the Menu Bar to pass along corrections, additions, deletions, and suggestions.

Saturday, November 05, 2005

No Need for Blogger Greed

Ramit Sethi, a recent Stanford grad, publishes a personal finance blog called I Will Teach You To Be Rich. One of his recent postings, entitled "On greed and speed," delved into a discussion about bloggers who place Google AdSense ads on their blogs in order to make money when people click through. Supposedly, it's an innovative, seemingly win-win solution for everyone.

Like Ramit on his blog site, I too have decided not to include AdSense or other ad solutions on the ITscout Blog, and for pretty much the same set of reasons. First, I don't want to ruin the visitor experience. Second, I don't want to focus on trying to make money by optimizing ads rather than just trying to create valuable content. And finally, and perhaps most importantly, I tend to believe most bloggers who are running ads are making very, very little actual money.

My approach to blogging is pretty much the same one I used while developing the ITscout web site, still one of, if not the industry's best master list of IT products and vendors. With ITscout, my primary goal was to develop a framework for modeling technology portfolios. That led to a visually-oriented three-layer, four-model representation with IT Infastructure at the bottom, Applications layered above which could either be purchased or developed, and finally, at the top, a layer corresponding to Business Intelligence. With the ITscout Blog, my emphasis has primarily revolved around addressing two key questions:
  1. What is IT Architecture?
  2. Why is IT Architecture important?
In both cases, ITscout and the ITscout Blog, I started out thinking less about money and more about value. I agree totally with Ramit who says, if you are (1) passionate about what you do and (2) are really good at it, then eventually the money will come.

I've concluded this posting with the following edited excerpt from Ramit's On greed and speed:
It's really hard to make something useful and lasting. If you've got a community around whatever you're doing, or people who comment on your blog, or emails from people who have written to you thanking you or asking you questions, or whatever you consider value, that's a huge step in the right direction. It takes time and patience and foresight to build value, and you'll be handsomely rewarded beyond small chump change.

Build something great. Do this first. Be patient and slowly get people to come to your site/store/business/talk/whatever. Don't start trying to sell something immediately. If people don't come, figure out why. Adapt and listen.

It's not about the money -- although you'll get plenty of it when you create something lasting.


CAN'T-SPAM Law



Many people complain that government just isn't working very well. There have been indictments in the White House. The House Majority Leader has been indicted. The Senate Majority Leader is under criminal investigation. Budget deficits are soaring through the roof. The war in Iraq has already cost the lives of more than 2000 U.S. soldiers. FEMA's response to Katrina, Rita, and Wilma has been pitiful. And, Controlling the Assault of Non-Solicited Pornography and Marketing Act of 2003 (CAN-SPAM Act) has been a huge legislative farce.

Do you receive lots of junk email messages from people you don't know?

The Federal Trade Commission (FTC) is responsible for enforcement actions against deceptive commercial emailers and spammers. They suggest that if you get spam email that you think is deceptive, forward it to spam@uce.gov. The FTC uses the spam stored in this database to pursue law enforcement actions against people who send deceptive email.

I think it's finally time for all of us to start forwarding all this crap to



Wednesday, November 02, 2005

Microsoft's Big Squeeze

Bill Gates and his new CTO sidekick, Ray Ozzie, have demonstrated software suggesting Microsoft can be competitive with the Internet upstarts who survive off Web ad revenue generated by hundreds of millions of eyeballs.

I'm sure some people now wonder if Windows Live will somehow be reminiscent of Microsoft's incredible Internet Explorer response to Netscape ten years ago. Is it possible that Microsoft's monopolistic domination of markets might once again crush an up and coming technology superstar, this time around Google playing the role of Netscape?

The dilemma for Microsoft is that their monopoly is not only under attack by the Googles and Yahoos of the world who view the Internet as a platform, but also simultaneously from the IBMs, Suns, Oracles, and Intels who are full of hope that advances in all aspects of the Internet, Linux, Open Source, Grid Computing, Services Oriented Architecture (SOA), and Autonomic Computing, will collectively give rise to a new virtual platform computing infrastructure that will greatly diminish the importance of Windows and Office.

Microsoft makes big profits by selling high-volume, high-margin, shrink-wrapped or pre-installed software. But, the PC market is now mature. There's very little likelihood that a huge new growth spurt will be coming along anytime soon. It's going to take a whole lot more than a new version of the Windows operating system (i.e., Vista) to stimulate massive new PC purchases. Similarly, few professional workers are looking for more, or even better, office automation software. I can't imagine what kinds of improvements could be made to word processing, spreadsheets, or presentation graphics that would generate a huge new demand for these classes of products.

Don Dodge, a member of Microsoft's Emerging Business Team, likes to differentiate among three different problem spaces where IT entrepreneurs like to focus their innovative energies:
  1. Consumer problems
  2. Enterprise problems
  3. Developer problems
He also likes to repeatedly warn that the #1 trap entrepreneurs fall into is creating a solution looking for a problem. Don's latest blog posting, Microsoft - the biggest start-up in the world, smacks of someone who perhaps has been drinking way too much corporate Kool Aid.

Microsoft is under attack in the Consumer space. Generating revenue from advertising is a completely different business model than making money selling packaged software. I'd guess Microsoft has a lot to learn before it will be able to compete effectively in this space. Even worse, there's a distinct possibility that good enough and free office automation functionality delivered over the Internet might pose a very serious challenge to the MS Office cash cow.

Microsoft is also under attack in the Enterprise space. IBM's business initiative built on an open, integrated, heterogeneous IT infrastructure with self-managing, autonomic capabilities, available globally On Demand, sounds very appealing to businesses looking to embrace methodologies based on the onset of a technology-enabled business process revolution.

Microsoft still retains a very strong and loyal following among software developers, but C# has still failed to attract the universal appeal of Java, Open Source development tools like Eclipse are beginning to seriously challenge Microsoft's dominant Visual Studio development environment technology, and the huge cost discrepancy between outsourcing versus in-house development projects could significantly diminish the importance of winning the hearts and minds of software programmers.

As great as Vista and Office 12 may eventually be, Microsoft's Cathedral-like approach to new product development has resulted in very long delays in product availability. I also believe that many of the new capabilities will require significant paradigm shifts before gaining solid traction.

No one is going to start worrying about a company with over $40 billion of cash in the bank. But, Microsoft's unprecedented success with Windows and Office may well have been as much about their being lucky as it was about being good. Microsoft owes an incredible debt to IBM. First, for choosing Microsoft's DOS. Second, for royally screwing up OS/2. Third, for helping persuade Lotus and WordPerfect to make incredibly stupid marketing mistakes. Toss into the equation Netscape's inability to compete against Microsoft's free browser technology bundled into Windows, and you wind up with the 800 pound gorilla that has come to dominate the IT industry like no firm has dominated a market since the days of Rockefeller's Standard Oil Company.

Microsoft needs to articulate and execute a leadership position. After spending more than $20 billion in R&D over the past three years, they ought to be able to do this. This time around, they shouldn't depend on the imitation of other's innovations or on the ineptness of stupid competitors.

Tuesday, November 01, 2005

Is "Windows Live" DOA?

Microsoft just unveiled a new strategy called "Windows Live" designed to fend off a growing threat from Google, Yahoo!, and others of their ilk. By offering services, Microsoft hopes it can figure out how to compete against these nimble Internet upstarts without cannibalizing sales of its own two monopolies: Windows and Office.

Google'’s reputation of just giving away as much as possible and sharing revenue with everybody on everything is a dead simple message that everyone just naturally gets. Microsoft's reputation, on the other hand, has been one of selling high volume, high margin, feature-rich, shrink-wrapped software. Microsoft's past historic efforts to bully potential rivals doesn't exactly make the word "trust" one that readily rolls off the lips of someone describing the world's largest software company.

Microsoft with its MSN Search and Virtual Earth is obviously trying to replicate the tremendous success of Google Search and Google Earth. Competition through imitation is a tried-and-true Microsoft strategy.

Microsoft will likely move towards a web service based model for a select few traditional client software products in order to compete against companies like Salesforce.com. But, don't expect "Office Live" to start offering a free alternative to Word and Excel anytime soon. Conversely, Sun and Google have already announced an agreement to promote and freely distribute Sun's Java Runtime Environment (JRE), the Google Toolbar, and the OpenOffice.org office productivity suite.

Microsoft's online push represents its most ambitious attempt to adapt to the challenges and opportunities posed by the Internet. Yet, Microsoft has little choice but to shift more of its business online because the Internet is steadily becoming the preferred computing platform. Still, it needs to protect its core franchise of licensing software for installation on a single computer. But Microsoft's long-running dominance is being threatened by rapidly growing companies like Google and Yahoo! which are offering Internet-based applications and services for free. The line separating what's being hosted on the Web and what's stored on a computer hard drive is rapidly blurring.

Can Microsoft copy Google's advertising-based model? Will potential partners be attracted to Microsoft in the same way they've bought into Google's simple approach that says Let'’s make money together? Let the competition begin!