Category Archives: Uncategorized

DIDComm Agents vs. Identity Wallets: Litmus Test

Copyright (c) 2022-2023 Michael Herman (Alberta, Canada) – Creative Commons Attribution-ShareAlike 4.0 International Public License

Application Scenario

How would you create a #unified #decentralized software system whose scope includes:

a. Global Air Traffic Control #ATC

b. Aircraft Crew Scheduling #CrewSched

c. Baggage Handling, and Tracking #BagBash

d. Passenger Ticketing, Seating, and Credentialing #PTSC

e. Food and Beverage Management #FoodBev

…using decentralized technologies like:

  • Decentralized Identifiers
  • DIDComm Agents
  • Verifiable Credentials

Meet Freddy…

Leave a comment

Filed under Uncategorized

Which design represents the smarter choice?

Copyright (c) 2022-2023 Michael Herman (Alberta, Canada) – Creative Commons Attribution-ShareAlike 4.0 International Public License

Figure 1. Which design represents the smarter choice?

Anyone who has owned a phone and a wallet knows the answer.

Leave a comment

Filed under Uncategorized

My Favorite Microsoft Stories

0. Alias Upfront for Windows

What are your favorite Microsoft stories? Here’s my zero’th favorite… (#0 in my #FavoriteMicrosoftStories series)

#THT – Alias #Upfront for Windows – “The most innovative new graphics product for Windows 3.0” – Bill Gates, CEO, Microsoft.


[Alias] seized the opportunity to purchase the Spacemaker technology and launched UpFront, a low-cost 3D Mac and Windows based package for architects. Alias achieved a major coup by impressing Bill Gates, who mentioned Upfront during a major Microsoft conference as a particularly innovative application under Windows. “In the graphics area, I picked Upfront from Alias Research. It is really an incredible tool for making sure the design is exactly right”, said the Chairman of Microsoft.

James Boritz and I and Ming Mah and Richard Brath and Dan Whitely and Jon Steinberg are the team that brought Alias Upfront for Windows to life – in a back room on the 3rd floor. We also used the same code base to build Alias Upfront for the Mac. Upfront didn’t generate a lot of revenue ($2 million? …or was it $200,000?) but it was Alias Research’s very first desktop software product. We were and are very proud of what we accomplished.

Other members of the cast: Alistair Banks Bill Gates Sara Spalding.

1. IE4 and the Java Jam

What are your favorite Microsoft stories? Here’s one of my mine… (#1 in my #FavoriteMicrosoftStories series)

One of my favorite MS stories involves IE4 and one of the largest banks in Canada, one of Microsoft’s largest customers headquartered here in Toronto, around Spring 1997 – maybe ’96 (May 15th actually …I’ll never forget that date). The bank had committed themselves to using server-side Java before there was any hint of server-side Java apps, J2EE, etc. They were using the IE4 Java VM at a time when we (MS) were happy to have the VM running “dancing elephants” in IE for 24 hours without a crash. We never thought of using the MS VM to run what was at the time “the world’s largest server-side Java application”.

The bank’s Java app would crash again and again. The bank blamed our VM because our VM was the only one that would run the app at all (not the IBM Hersley VM, not the VM from Sun Microsystems).

CharlesF and I ended up going head-to-head on this …for me it was all about what support is MS willing to provide MS’s largest enterprise customers; Charles’ job was to work for BradSi and, among other responsibilities, deflect any distractions that would delay shipping IE4 …remember the days of “The Browser Wars”?

We each chose our teams. Bill Gates was already down the throats and backs of BradSi and Charles to not work on this. SteveB came to Toronto and got a huge strip torn off him – up one side and down the other – by an ex-IBM bank VP whose husband at the time was the IBM account executive for the same bank. SteveB was instantly on my team.

At the MGS in Orlando a few months later, Bill was walking around making himself available for the MS field people that were there (an MS internal WW sales conference). I started to walk up to Bill and to explain my role in the “Java Jam” as we called it and had only gotten a couple words out when SteveB pounced on Bill in front of dozens of MS people – his pointer fingers high up in the air pointing down at Bill – virtually yelling at him to listen to the story I had and to learn what it means to be passionate about our enterprise customers.

Later that evening, I got a call to meet with SteveB in his hotel suite. Just me and him …and PaulMa, CharlesF and the MS Java VM team on the other end of a conference phone. Steve was on one side of an L-shaped couch when I arrived eating cashews or almonds from a can. I sat on the other side of the couch. The phone was in the middle on the coffee table. The call was already in progress.

The best thing about this meeting was that everyone was on the same page. We just needed someone to make a damn decision: yes or no, are we going to fix this problem?

Steve started by asking Paul two questions: 1) “Is what the bank doing on-strategy or off-strategy?” Paul replied “It’s not off strategy”. Then Steve asked question 2: “OK then, what are we doing to help the bank?”

Almost immediately PaulMa offered to call the VP at the bank. I gestured to Steve sitting across from me – no further than 2-3 feet away – and said “We’ve already had a lot of people talking to the bank”. “What we need is a decision. A yes or a no. Are we going to fix this problem or not? That’s all they want to hear”.

Steve immediately leaned over to me and whispered “If Paul is going to call, Paul is going to fix this”. We agreed Paul would call the VP as soon as they could synchronize their schedules.

Afterwards Steve said “If something like this ever happens again, call me right away. Call me directly. Don’t let it happen again”. We shook hands and I left.

The bug (a multi-threading sync data structure being overwritten) was fixed by the end of the following weekend …in time for PaulMa’s concall with the bank’s VP on the Tuesday afternoon.

After that, it used to freak people out in the Canadian sub when SteveB would high-five me in the hallway. It wasn’t worth trying to explain unless you knew the whole story.

What’s your Microsoft story?

Other members of the cast: Bill Gates Charles Fitzgerald Steve Wild Oliver Sharp.


2. Cancellation of the Local Web Storage System (LWSS) Project

What are your favorite Microsoft stories? Here’s my second favorite… (#2 in my #FavoriteMicrosoftStories series)

Who remembers what famous Microsoft event happened on December 17, 2000?

How about the cancellation of the Local Web Storage System (LWSS) project? …preventing it from shipping with “Outlook 10” (aka Office XP).

I remember it well because the next day I was asked to present at the MS Collaboration Partner Advisory Council meeting at the Atlantis Hotel in Nassau. Not a bad gig except about every 45 minutes Robert Ginsberg would start to shake his head and shout out “How could you Microsoft do this to us?”. This went on for the full 2-day event – before and after every presentation.

Robert was right to be upset. Being the cofounder of one of the leading Exchange Server WSS development shops in the world, Robert, and his business partner Andy Sakalian, had invested enormous amounts of time and effort learning about LWSS – inside and out – and had built several tools to help prospective LWSS ISVs build custom solutions on top of LWSS and “Outlook 10”.

Schitt happens – everywhere – but it was always more fun when it happened at Microsoft.

p.s. You’d like an upbeat ending? Andy introduced me to a jeweler from Montreal who taught me how to play Black Jack “the real way” and what finer venue than sitting at the tables at the Altantis Casino. I made USD$900 that evening. I had to stay up until 4am but I did clear $900. ..that’s about $75/hour. Back then there were a lot easier ways to make $900/day …a lot easier.

What’s your Microsoft story?

Other members of the cast: Robert Ginsburg.


3. PDC 2001: Unified Storage Strategy

What are your favorite Microsoft stories? Here’s my third favorite… (#3 in my #FavoriteMicrosoftStories series)

There was a series of events I often attended (before and) after I left the mothership in 2001: the Microsoft Professional Developer Conferences (PDC). They have since gone away. …the conferences I mean. (I think there are still lots of professional Microsoft developers.)

Mary-Jo Foley, an excellent journalist, writer and research analyst, would also attend these events. Disclosure: Mary-Jo Foley is also a friend on Facebook (currently) but we really don’t know each other that well.

At these events, Mary-Jo would often be first in line at the microphones during the Bill Gates executive Q&A session. One of her favorite questions was to ask Bill how Microsoft was progressing with its unified storage strategy based on SQL Server …especially the following question: When was Exchange Server going to ship using a SQL Server-based storage system? Bill always had a good answer.

This was also one of my favorite BillG questions and, unknown to Mary-Jo as far as I know, it became a race for me to try and ask the unified storage question before she could. If I asked it first, she would mention me and my affiliation in her coverage. It worked once. It was bit of game where I was the only knowing player.

What’s your Microsoft story?

4. Microsoft Exchange Server .NET Whitepaper

What are your favorite Microsoft stories? Here’s another one of my favorites… (#4 in my #favoriteMicrosoftStories series)

This story starts in the Fall of 2000 – the very, very early days of .NET/.net/.Net …yes, the days when, even inside Microsoft, there wasn’t a consistent .NET messaging and positioning framework and every product group spelled .NET differently. 🙂 How many different ways can you spell a 3-letter word that doesn’t meaning anything? We used them all until…

Internally at Microsoft, we had the “.NET police force” who swooped down unexpectedly on presenters, content authors and writers to make sure that whichever way we chose to spell .NET, we had to change it!

And who was the .NET police chief? …none other than my good colleague from the “IE4 Java Jam”: Charles Fitzgerald. (For more information, read

In the Fall of 2000, I moved into the EC3 team (Enterprise Connectivity Competency Center), a specialty team within MCS Canada formed as part of the acquisition of Linkage, a Toronto ISV who had an entire library of Exchange 5.5. connectors …but I digress.

The nicest thing about EC3 is that we were one of the only MCS practices that figured out how to subcontract ourselves back into the corp product groups. My first assignment was to write a .NET/.net/.Net strategy whitepaper for Thomas Rizzo when he was still on the Exchange Server team (pre SQL Server, pre SharePoint, pre Local Web Storage System). Like the Internet Wave, the .NET wave meant every product group needed to craft some sort of .NET developer story (aka strategy). My task was not only to document the Exchange Server .NET strategy in a whitepaper but I also had to make it up! 🙂 “Those were the days my friend…”

I started by interviewing a lot of cool folks inside and outside the Exchange Server team: Gordon Mangione, Alex Hopmann, Brent Ingraham, Harry Katz, Keith McCall, Chris Vanden Berg, Thomas Rizzo, Lyle Curry, Jeff Wierer, and Kevin Hunter.

From there, I crafted a fairly compelling story (I mean strategy, sorry!). The whitepaper ended up being 15-20 pages.

I can’t find an original version of the “Developing Microsoft .NET Collaboration Solutions” whitepaper but you can still find the German version on the Microsoft web site: . Google will do a pretty good job helping you translate from German to English.

And what about the .NET police force? Back then, there was no one who knew how to push content faster to the web site than Tom Rizzo. He litrerally had the Exchange Server .NET whitepaper published overnight. When the .NET police came to our doors, we just smilled. We had already moved on to something else. 🙂

What’s your Microsoft story?


Members of the cast: Charles Fitzgerald, Gordon Mangione, Alex Hopmann, Brent Ingraham, Harry Katz, Keith McCall, Chris Vanden Berg, Thomas Rizzo, Lyle Curry, Jeff Wierer, and Kevin Hunter.

5. Windows SDK version 0.989

What are your favorite Microsoft stories? Here’s another one of my favorites… (#5 in my #FavoriteMicrosoftStories series)

The one isn’t really very juicy …more of an early milestone. Thank you goes to Bill Vaughn for helping with some of the names and dates.

It was the Spring of 1986. I worked for a Toronto research company/ISV (Optical Recording Corporation) where we were trying to use the very early versions of Windows to create (don’t laugh) an optical disc-based document storage and management system. …and I mean, very, very early versions of Windows: Windows SDK version 0.989, Windows 1.01, Windows 1.02, etc.

Later in the Fall of 1987 (I think), I attended my first Microsoft Windows developer event (MS used a small ‘d’ back then ;-)). It was in a simple Santa Clara hotel meeting room. 5-6 rows of chairs. Less than 100 people. SteveB was the MC and John Butler was the main technical guy as I remember. I remember John for his ponytail. He later went on to play a key role in creating Microsoft University (who remembers that?).

As a giveaway, we received a white cotton book bag with the pale blue Windows logo on it. It had a copy of the Windows “runtime environment” and the SDK in it. Maybe be a copy of the Microsoft C compiler. The entire library of Microsoft “small d” developer documentation was at most 3 small beige PC binders.

What’s your Microsoft story?

6. Orthogonal Defect Classification at Microsoft

What are your favorite Microsoft stories? Here’s another one of my favorites… (#6 in my #FavoriteMicrosoftStories series)

In the Fall of1997, I was honored to present to Billg, Nathan Myhrvold, and about 30 development managers at the Billg Fall 1997 Retreat: Improving the Software Development Processes at Microsoft. My topic was…


Leave a comment

Filed under Uncategorized

Brief History of Microsoft’s Disconnected Technology Strategies – circa 2005

Copyright (c) 2022-2023 Michael Herman (Alberta, Canada) – Creative Commons Attribution-ShareAlike 4.0 International Public License

Office conference wrapup

Herman: It’s nice to see Microsoft consolidating around a smaller set of core technologies, but when it comes to electronic forms, Word and Excel have their own point solutions, Outlook has its own point solution, InfoPath has its own point solution, Access has its own point solution. In the developer platform you have ASP.NET and WebForms. We’re constantly in the situation where we’re trying to guess which ones are strategic. Can you give us some insight?

Why does Microsoft have so many eforms technologies? …which ones are strategic? Billg and StevenSi offer some answers

AUDIENCE QUESTION: Michael Herman, from Parallelspace Corporation. It’s nice to see Microsoft consolidating around a smaller set of core technologies. But, when it comes to electronic forms, Word and Excel have their own point solution. Outlook has its own point solution. InfoPath has its own point solution. Access has its own point solution. In the developer platform, you have ASP.NET and WinForms. We’re constantly in a situation we’re trying to guess which ones are strategic. Can you give us some insight?

Microsoft’s varied collaboraboration platform strategies: More comments from Billg and StevenSi

A question from Mark Moore (formerly of KPMG and an early SPS 2001 adopter)…

AUDIENCE QUESTION: A number of us have been on the collaboration path with Microsoft for a long time starting with Outlook and Exchange. A couple of us probably remember a team productivity update. Then SharePoint 2001, SharePoint 2003, Digital Dashboard was in there. In going from point- milestone to milestone on this path, there hasn’t been a lot to leverage moving from one point to the other. Today, in the Whidbey talk I was gratified to hear that the Whidbey Web Parts were going to be backward compatible. I’m hoping that you can assure us that those of us who have been on the path with you for a while, that this cycle of creative destruction is coming to an end.

PDC 05: Are the PDC silos going to present a disconnected view of the Microsoft developer platform?

For example, in the description for sesssion “Choosing the Right Presentation Technology: Avalon, Windows Forms, ASP.NET, IE, and More”, there is no mention of InfoPath “12” and the forms server demonstrated at TechEd 2005.

I would encourage everyone attending this session to rate it a 1 of 5 if the new InfoPath forms and forms server is not included in the analysis.

Is Microsoft going to present an integrated view of the Microsoft platform or a disconnected one?

Is the PDC going to be one large Microsoft “technology fair” with no strategic intent other than giving each product group a venue to promote their own technology bits? …leaving developers to guess what is strategic and what is not. (50% probability)

Pre-blogging the PDC

As Microsoft gears up for its annual Professional Developers Conference, Michael Herman — CTO and founder of Parallelspace — is asking some probing questions about the agenda:

Is the PDC going to be one large Microsoft “technology fair” with no strategic intent other than giving each product group a venue to promote their own technology bits? …leaving developers to guess what is strategic and what is not. (50% probability) [Michael Herman: Are the PDC silos going to present a disconnected view of the Microsoft platform?]

Michael asked similar questions at the Office Developers Conference I attended in February. I transcribed one of them — about Microsoft’s hydra-headed electronic forms strategy — in this blog item. Michael blogged the same exchange, and he also zeroed in on another set of questions and answers about unified storage that I transcribed from the February conference.
These questions are interesting, but I find the process itself even more so. The PDC tends to be ahistorical, focusing on futures more than follow-through. In the hallways you see attendees reading the entrails and trying to divine which futures will be strategic, at a level more granular than the grand themes: Windows, NT, Win95, the Internet, tablet PC, .NET, Hailstorm, WinFX.

Leave a comment

Filed under Uncategorized

Difference between an auto maker ecosystem and a software platform ecosystem?

Answer: Nothing.

Leave a comment

Filed under Uncategorized

Web 7.0 Always On Trusted Personal Agent

Mockup – For Internal Use Only

Leave a comment

Filed under Uncategorized

Technology Wheel of Reincarnation

Check out…

On the Design of Display Processors T. H. Myer, I. E. Sutherland;
Communications of the ACM, Vol 11, No. 6, June 1968

It was not until we had traveled around the wheel several times that we realized what was happening. Once we did, we tried to view the whole problem from a broader perspective. We found that some questions had fairly clear answers, but others remained in doubt.

Wikipedia contributors, “LDS-1 (Line Drawing System-1),” Wikipedia, The Free Encyclopedia, (accessed January 3, 2023).

Leave a comment

Filed under Uncategorized

Strategy Maps: A Real-life Example

The Customer Perspective can be relabelled Unique Customer Value Proposition because without a unique value proposition, your customer perspective can prove to be worthless.

Leave a comment

January 1, 2023 · 10:11 pm

A Note to Mothers

This a note of caution to Mothers as we approach the 7th anniversary of my Mother’s death, Beverly Margaret Herman (Mahura), on December 25, 2015. The untold story.

Why is this note a) a note of caution, and b) why was my Mom’s death needless?

Mom died at 4:30 pm EST on Christmas Day 2015. Six months earlier (June 10, 2015) Mom had a biopsy on a large tumor near the top of her lung. The tumor was full of blood and had started to bleed into my Mom’s esophagus. When the surgeon came out of the operating room following her biopsy, the first thing he told me was Mom had Stage 4 Lung Cancer and that Mom was at risk of the tumor bursting and Mom choking on her own blood. The biopsy was at 11 am and the surgeon had already scheduled an appointment with an oncologist for 2 pm the same day.

Meeting with the oncologist, the doctor asked Mom a few preliminary questions and then asked “Bev, how much blood do you cough up at a time?” Mom held out the right palm of her hand, cupped it upwards, and said “about this much” …a handful of blood.

Mom went through the usual regime of chemo and radiation treatments during the month of July 2015 and was told to return on October 1st to meet again with the oncologist. Mom’s cancer didn’t improve over the months of August and September. Mom returned home to where the whole family cared for her until the last few days before her death on Christmas Day.

On Wednesday morning, December 23, 2015, my brother Brad scooped up our Mother in his arms, gently placed her in his SUV, and drove Mom to the Ian Anderson House, a beautiful hospice a short distance from the North shore of Lake Ontario in Oakville, Ontario. Mom died peacefully a few days later, on Christmas Day afternoon, surrounded by her family.

This is the story most people who knew Mom have been told. It’s factually correct. What’s missing from Mom’s story is that the bleeding and incessant coughing and clearing of her throat had started a year, maybe two years earlier. Mom had visited her general physician several times over the period but no further diagnosis or treatment or other follow-up took place (as far as we know).

During this time, Dad was not well. Dad’s kidneys were failing and he went to the renal clinic at Credit View Hospital 3 times a week, 3 hours per day. Mom drove Dad to dialysis every day and stayed with him until he was released each afternoon. Mom also cared for the 5 of us children. I was 58 years old at the time of Mom’s lung cancer diagnosis and my youngest brother Brad was 52. Each of us 5 kids had different challenges: divorce, health, and work issues, etc. Mom was quite literally run off her feet by her family as her (undiagnosed) lung cancer progressed and spread.

Mom had many retirement wishes that were never realized. With Dad being a retired Air Canada senior airline pilot and instructor, Mom especially looked forward to flying First Class and traveling abroad – Europe, in particular – because she had previously been unable to venture very far as a stay-at-home Mother with 5 kids. Mom especially wanted to go on one of those Rhine River cruises you see advertised on the television. None of this came to pass. The demands of her family (particularly healthcare issues in Dad’s case) resulted in Mom’s non-stop caring for her family to continue until the last 6 months of her life. Mom died at age 80.

What’s the note of caution to mothers? If you have sons or daughters that continue to demand your care, attention, and time – even into their adulthood (everyday tasks like cooking, cleaning, folding laundry, babysitting, etc.), resist the temptation.

Resist those maternal genes that kick in and make you feel obligated to put aside your personal happiness, personal aspirations, and personal desires. Your adult children will be able to figure things out on their own – it’s mandatory.

Live *your* life and live it to the fullest.

Best wishes for a long and happy life,

Leave a comment

Filed under Uncategorized

Web 7.0 DIDComm Agent Architecture Reference Model (DIDComm-ARM) 0.40 (December 18, 2022)

A Design Guide for Software Architects and Developers working on DIDComm Agent-based Software Systems

Copyright (c) 2022 Michael Herman (Alberta, Canada) – Creative Commons Attribution-ShareAlike 4.0 International Public License

Web 7.0 is a unified software and hardware ecosystem for building resilient, trusted, decentralized systems using decentralized identifiers, DIDComm agents, and verifiable credentials.

Take what you need; leave the rest.

Michael Herman, Trusted Digital Web Project, Hyperonomy Digital Identity Lab, Parallelspace Corporation. January 2023.

This is the second public release of the Web 7.0 DIDComm-ARM whitepaper.

For a quick introduction, checkout the article Welcome to Web 7.0!.

Your comments and feedback on the DIDComm-ARM, its layered models, and Web 7.0 (seventh layer in the DIDComm-ARM) will be greatly appreciated.

You can find us on Twitter @ (hashtag #web7).



Figure 1. Web 7.0 High-Level Architecture Reference Model (WEB7-ARM)

The purpose of this document is to introduce and describe the DIDComm Agent Architecture Reference Model (DIDComm-ARM) and the DIDComm Notation. The latter is a graphical modeling language used to design and model DIDComm Agent-based software systems.

The goals for this document are three-fold:

  • Better understanding of the active components of DIDComm Agent-based software systems and how these components rely on and interact with each other,
  • Introduce a new graphical modeling language, DIDComm Notation, to aid architects and developers in visualizing new architectures and designs for DIDComm Agent-based software systems, and
  • Describe a layered architecture reference model, DIDComm-ARM, to help guide the design and creation of the broadest range of DIDComm Agent-based software systems possible.

DIDComm Notation contains elements for modeling:

  • Conventional REST/HTTP clients, agents, and services
  • DID Addressable REST/HTTP clients, agents, and services
  • DIDComm clients, agents, and services
  • DIDComm agents that utilize Verifiable Credential message attachments
  • DIDComm mesh networks
  • DIDComm user agents
  • Virtual web drives and keystores

Collectively, these categories of DIDComm Notation modeling elements (and their interrelationships) define the DIDComm Agent Architecture Reference Model (DIDComm-ARM). The DIDComm-ARM contains multiple layered architecture models:

  • Layer 0 REST/HTTP Agent Model
  • Layer 1 DID Addressable REST/HTTP Agent Model
  • Layer 2 DIDComm Agent Model
  • Layer 3 DIDComm Agent with Verifiable Credential Attachments Model
  • Layer 4 DIDComm Agent Mesh Network Model
  • Layer 5 DIDComm User Agent Model (Appendix A)
  • Layer 6 Web 7.0 DIDComm Agent Architecture Model (Appendix B)

The intended audience for this whitepaper is a broad range of professionals interested in furthering their understanding of DIDComm for use in software apps, agents, and services. This includes software architects, application developers, and user experience (UX) specialists; as well as people involved in a broad range of standards efforts related to decentralized identity, Verifiable Credentials, and secure storage.

The primary audience is software architects and developers designing and creating DIDComm Agent-based software systems[1].

This document is an independent work product produced by the author(s) and is neither a W3C, DIF, Sovrin Foundation, nor a ToIP work product – unofficial, official, or otherwise.


Filed under Uncategorized