Thursday, April 10, 2008

We're not in Kansas anymore, but we're close...

With a 3-week old baby and two six-month old puppies, I was enjoying a rare stretch of REM sleep Thursday morning when tornadoes hit the Dallas-Fort Worth area. Officially, the top wind speeds of 75-87 mph makes this a category 0 or 1 on the Fujita Scale, but I would not want to be around a category 5.

Perspective from the ground

I was sound asleep when the lightening flashes began at 3:30am. I laughed as the thunder rolled in, because I knew that the sleep was too good to last, but this time something was different. The sky was darker than usual, the lightening increased until it flashed without stop, and through the streaks I saw colors of blue and black that belong in bruises, not the sky. Next, I heard the sound of an onrushing train, followed by the shrill scream "Mommy!" coming from my 5-year old daughter upstairs. My wife was nursing our newborn so I ran upstairs, realizing that the power was out and with it our night lights. It was fire drill time - I sent Izzy crying down the stairs and pulled Cade out of his bed to follow. Then into Kyra's room to jerk her out of bed and drag her down into the tornado shelter we have under the stairwell in our closet. Mommy and baby sat in a heap of clothes while the other 4 of us huddled around the flashlight listening to the roar of the storm.

It was over in less than 5 minutes.

I went out to the garage to listen to the car radio (note to self: put an emergency radio in the shelter) and heard the news of the storm front travelling at 45 mph, already east of our town. The sirens had stopped, although frankly I had barely noticed them in the first place, and we began to lay out futons on the floor in our bedroom for the kids to sleep.

A New Day Dawns

The morning commute to school was a complete mess, with power lines and fallen brick walls blocking every other road. But we had a beautiful sunny day, and by noon my phone, Internet, and power were restored. I got to meet many of my neighbors as we all cleaned up the mess, and apparently no one was injured in the entire DFW region, which is amazing.

Here's a sample of photos around my neighborhood.


That's my 75-pound propane grill tossed into the middle of the yard.



There's a reason no sports teams choose "Fences" as their mascot - last night the score was Tornadoes 89,000 and Fences 0.


"Chimneys" wouldn't make a good team name either - this one didn't do so well.


I wonder if this is why my power was out...


This trampoline went through the bedroom window.


That black circle in the tree is my neighbor's trampoline, landed on the fairway 250 yards from home. Those who know me remember that's farther than any tee shot I've ever had.


But all's well that ends well - this is Wilson at 2.5 weeks old.

Wednesday, February 20, 2008

Can you achieve 100% up-time?

As an online registration provider, we strive for 100% availability of our event management software. This is very difficult to achieve in practice, and we occasionally have outages ranging from a few minutes on all servers to intermittent performance for hours affecting only specific customers. Our customers' reaction to these hopefully infrequent episodes ranges from understanding ("oh well, I have a lot of other things to do right now - I'll check back later.") to complete outrage ("I'm losing paid registrations! I have to get this report to the hotel now!").

The "New Normal"?

This article, On-Demand Outages the "New Normal"?, takes the interesting view that as people become more familiar with daily usage of Software as a Service (SaaS) such as our online registration technology, users will realize that these outages are inevitable and they will adjust their expectations and actions during the occasional downtime. No one is immune to the problem - the article references recent and period performance troubles at major SaaS companies such as Salesforce, Blackberry, and Google Apps.

My Old Friend, Who I Dearly Do Not Miss

blue screen of deathI remember the early days of Windows when the "blue screen of death" was an unwelcomed part of my daily routine. Reboot, stand up and stretch, login, get some water, wait for the programs to open, pick back up where I left off. The blue screen probably did me more benefit ergonimcally by interrupting long sessions slouched over at my PC than they caused me harm - that is, once I learned to control my temper.

Getting Better, but We're Not There Yet

I'm not excusing poor performance or saying that we won't get better (as we have in the past). But maybe we as users need to begin to consider intermittent outages of SaaS as unavoidable and expected, and thus we should create contingency plans for what we will do when they happen (besides freaking out).

Friday, January 04, 2008

Wow, we created a community - now what?

Our online registration and event management software is a behind-the-scenes tool. Millions of people register for events and receive email invitations and confirmations without knowing what application did the grunt work - they only know the name of the event they want to attend.

Several months ago, I sat next to someone on the airplane and through casual conversation discovered that he was flying to an event sponsored by one of our customers, and yes, he had registered online through Certain Registration. He pulled out his printed confirmation page and I recognized our handiwork - I know this is small stuff for most, but for me it was a prideful moment nine years in the making.

Then I realized - wow, we make a product that affects people's lives slightly, a product that they don't know they are using, one that they take for granted and only care about when it doesn't work. It seems that I now work for a modern utility company.


Supporting the people behind the curtain

Wizard of Oz (1939)Professional meeting planners will understand that feeling. They do the work behind wonderful, educational, and entertaining events but often cannot share their attendees' enjoyment because they are mired in the daily slog of details required to bring hundreds or thousands of people together for a short time. We want our application to make the lives of these people a little bit easier every day.

As our user base has grown, we find ourselves associated with a group of people who depend on our application every day in order to do their job. Their ability to use the software and figure out how to achieve their immediate task will determine their productivity for that day - and thus their earning potential and how soon they can get home each evening. We try to make our application "easy-to-use", and when it isn't intuitive we have Help files, and when those don't answer the question we add solutions to our knowledge base. Still, sometimes you just want to talk to other people who have done the same thing that you are doing now.


"Web 2.0" - Social Networking and Communities

I was at ground zero of Web 1.0 (San Francisco 1994-99), but lately I'm feeling a bit old-fashioned. I put up a page on Myspace at my youngest sister's request, but I don't use it. Most of the people who want to be my "friends" are trying to sell me stuff I don't need or show me stuff I don't want to see. I also have a Facebook page but don't poke me and I promise not to waste your time there either. I don't care what music you are listening to today, but if you have set up an online registration form using SAML-based single-sign on standards then you have just become my BFF (best friend forever, or at least while I'm working on this project).

So the online community I want to be in consists of my co-workers and clients who actively use Certain Registration. We rarely meet in person, but we want to talk to and learn from each other, and we need to know how to do something new, what features are coming out next, and what bugs have been exposed / how they can be avoided / when they will be fixed.

Several of us at Certain have been looking at some online community applications to support these conversations, and my favorite by far is Community Server. Their application allows you to set up forums, blogs, and downloads for your registered users. The great thing about the application is its flexibility - you can put photos, files, and even Web videos into the "Downloads" area to make it a truly on-demand interactive training resource. Blogs can be used for quick announcements, release announcements, scheduled downtime, etc. in addition to articles (such as this one). Forums allow users to post questions and look for answers from anyone in the community (instead of relying solely on our help desk during its normal business hours).

I'm looking forward to having a tool like this to help bring together our global community. But please let me know if you have another community-based application that you like better.

Friday, November 09, 2007

Online Registration: Life as a small fish in a big ocean

Last week Lauren Covington and Stephen Nold at Meeting Tech Online (MTO) published "Registration Tools: What’s New, What’s Next", describing the results of their research into the subject. The topic raised by meeting planners that was of most interest to me was their desire to integrate registration systems with their other back-office systems.

Background: Big ocean, small fish

I'm not sure how big the meetings industry is. Starcite's Web site refers to the $300 billion global events industry, while a January 2007 PhoCusWright study projects "groups and meetings revenue" at $175 billion by 2008. Either way, the market size is really big, but according to the PhoCusWright study travel (air, hotel, car, ground transportation, cruise, travel) accounts for about 54% of the total while non-travel (meeting rooms, catering, audio/visual) accounts for 46%. Starcite's research predicts a $1.5 billion market size by 2010 for meetings technology tools (which I assume includes event RFPs, meeting expense management, meeting planning, online community, and registration applications). If online registration tools accounts for 10% of that total, then $150 million is a nice market niche for a small software company like ours, but this size makes it tough for us to set the technology direction of companies that organize events and spend 1,000 times that amount holding them.

(Comment: Thanks to Michael Boult, Starcite's CEO, for his polite comments correcting my originally reported data and providing additional information.)

Living with multiple systems when you are the smallest of the lot

The result is that we enter systems integration projects from a position of weakness. Companies look at their CRM (Customer Relationship Management), Intranet, and HR employee databases as their primary applications that are critical to business operation. While event management software is crucial to a small number of meeting planners, the rest of the organization spends maybe 15 minutes each year registering for a handful of events. As a software company, we want to build interfaces that others connect to, give them the documentation, and have them go at it. More often, we receive a stack of documentation and are asked how we are going to fit our round peg into their square hole.

Love it or hate it, everybody has it

The first place we started was with Microsoft. By integrating with Internet Explorer (Certain Registration), Outlook (email and calendar appointments), Excel (reports and imports), and Word (labels, badges, and printable documents) - we connect to the tools that 90% of our customers regularly use. The open source movement and competition from Google, IBM, and others have forced Microsoft to expand their products' interoperability slowly but steadily. I expect that Certain Registration and similar products will continue to grow closer to these standard tools in the future.

The key to communication is to speak the same language

Two systems that speak the same language can communicate readily. Two systems using different languages must have an "interpreter" in order to communicate. In software, the cost of building the interpreter can be the difference between winning and losing the business. Because online registration is dependent upon larger systems, we have to learn the languages of the core systems.

When I wrote the second version of Certain Registration (Register123.com) in 2001, I corrected the mistakes of the late 1990s, but I did not have a standard framework to build upon. Now, the software industry has both a standard communication method (Web Services) and language (XML). I've written previously about my efforts to help define a standard language for the events industry through the Convention Industry Council's APEX initiative. I have recently had the chance to review Security Assertion Markup Language (SAML), an established XML communication standard for "Single Sign On", which is the practice of logging in once and being authenticated into multiple applications. (I'll write more on that subject in a future post.)

Eating the elephant one bite at a time...

The reason I spend so much time on XML standards and Web Services is that, while we have integration interfaces now, the future for "minor" applications like registration will be to natively speak the common XML languages of the core applications. Then my clients' developers will be able to select Certain Registration as an off-the-shelf component of the much larger system that they are supporting, and they will be able to quickly exchange data within defined boundaries between our application and their other components.

As I see it now, this is going to be the only way for most organizations to have an "all-in-one" system that includes a professional meeting management component.

Monday, October 01, 2007

What to do when you can never have enough standard reports

One of the most common questions that I see on online registration RFPs is, "How many standard reports do you have?" It's a question that begs for a misleading answer, because there is no "standard" for reports in event registration and no two vendors' answers are comparable.

(Caveat: After thousands of industry discussions, the Accepted Practices Exchange (APEX) has published a few report "standards" for specific areas of meeting planning, but few people use these without making at least minor adjustments for their specific business needs.)

Early on, we stopped trying to give customers a dozen or a hundred standard reports in Certain Registration and focused on providing a minimal set of reports "out of the box", while allowing users to copy and customize those reports in order to define their own standard reports. But even this hasn't been enough to meet our goal of "one-click reporting" for all customers.


Reporting in Excel With Online Data

Last year, I described my experience on-site at the National FFA Organization's 79th Annual Convention. The 80th Convention just ended, so last month it was time to update their on-site reports for this years' event. This process reminded me of some unique reporting that I did for FFA using Excel Web Queries.

While most business users are familiar with Excel spreadsheets, not too many people use its more advanced features such as Web Queries, Macros, and Pivot Tables. Web Queries allow you to pull data from any Web site address into an Excel spreadsheet. Pivot Tables allow you to take tabular data in a spreadsheet and summarize it by any column or row. And macros allow you to record a series of actions within the spreadsheet and then automate them in the future.

The FFA requires on-site reports beyond the capability of Certain Registration. In addition to pixel-specific formatting requirements, they have several "special rules", such as single-day registrants should count as one-half of a person when calculating the total registration numbers. In order to meet their needs, I started with an Excel spreadsheet, where I used a Web Query on one worksheet to extract raw data from the FFA event in Certain Registration.



I next added a worksheet that used a Pivot Table to summarize this raw data into a simple table.



Then, I used Excel formulas to apply "special rules" and to transfer the desired data to a pre-formatted worksheet suitable for printing.



And finally, I recorded an Excel macro and associated it with the FFA icon.


In the resulting Excel spreadsheet, when an FFA user who is logged into Certain Registration clicks on their logo on the first worksheet, the macro automatically runs the Web Query, refreshes the Pivot Tables, and updates the printable worksheet via its formulas. The user then clicks the print button and pulls the report off the printer.

Learn more

I'll leave it to the reader to decide if they are interested enough in this process to learn how to apply Web Queries, Pivot Tables, and Macros to their Excel spreadsheets. If so then Microsoft's help files and online resources provide ample instruction.