Remembering Molly

I’m saddened to hear of Molly Holzschlag’s passing yesterday. Molly’s contributions to the web are innumerable. She more than earned her Fairy Godmother of the Web moniker.

But my memories of Molly are more personal. I didn’t get to spend much time with Molly, but the moments I did spend with her changed my life.

The first time I met Molly was at a WebVisions after party. I was an attendee. Molly was a rockstar.

Despite the difference, Molly treated me as a peer. She showed interest in and riffed on an idea I had. It was the first time I felt like I might have something interesting to contribute to the greater web. That conversation energized me.

The second time I met Molly was at Web 2.0 in San Francisco. I was still early in my speaking career. Molly remained a rockstar. She was the only other speaker I knew so I sought her out. I doubt she remembered me, but she welcomed me into her circle.

And her circle included several people who worked on browsers including on Internet Explorer during the tumultuous web standards period. For the first time, I heard insider accounts of the politics that defined web standards and whether or not a given company would adhere to those standards. This experience made me realize it was possible for individuals like me to contribute to web standards.

One story in particular stood out, but I fear I may get some of the details wrong. Much of the resistance from Microsoft when it came to web standards we due to one individual. That individual challenged Molly during one of the meetings that the Web Standards Project (WaSP) had with Microsoft. So Molly reached out to Bill Gates who had previously promised Molly and the rest of WaSP that Microsoft would cooperate.

The group laughed as they recalled this individual—the one who had blocked so much progress—had to step out to take a call from Bill Gates himself. They said they could hear Bill Gates yelling on the phone. Things changed after that day.

Think of all the time and effort lost dealing with Internet Explorer incompatibility mostly because of this one individual. One person can change the world, but not always for the better.

Molly is the counterpoint of course. She was one individual who made the world a significantly better place. Molly was a whirlwind that couldn’t be stopped and swept up all of those around her in it. We went along willingly.

My best memory of Molly is my most treasured. We skipped an afternoon of sessions at Web 2.0 and visited an art exhibit at the The Contemporary Jewish Museum. We talked about the web, her career, our shared love of challah, her family, and her extended web family. That afternoon remains one of my fondest memories from all of my conference experiences.

To this day, I can’t remember how or why we ended up at the museum. Why was I the lucky one who got to spend an unforgettable afternoon with the the Molly Holzschlag? I was no one significant. I barely knew her.

But that’s what made Molly amazing. She made everyone feel like they were someone. She touched my life and so many others.

Thank you Molly. You will be missed.

Problems with Web Standards: Part II

Part II: Browser Wars are Back

Background: I’ve been reading with great interest the current concern over the W3C process for web standards and the lack of progress being made. Andy Clarke kicked it off by asking the W3C to disband the CSS working group. Alex Russell followed up declaring that the W3C Cannot Save Us. Jeff Croft, playing his usual role of rabble rouser, echoes Alex’s sentiments in an post entitled, “Do We Need a Return to Browser Wars.

I believe a return to browser wars is inevitable and that in some ways we are already there. One of the reasons we haven’t seen a return to the browser wars of old is that as developers we haven’t been struggling against the limitations of browsers.

Don’t get me wrong. I’m not saying that there aren’t features like column support in CSS3 that would make our lives easier. Or that better support of current standards in Internet Explorer wouldn’t save us a lot of time and money.

Instead, I’m saying that when faced with these challenges we can still build compelling sites and applications. We can build multi-column layouts using our current CSS implementations. We can workaround problems in IE. We can build solutions using Flash, Flex or Silverlight if we need something that stretches the paradigm further.

Contrast this to the days of the browser wars when the standards available to us–what few existed–were woefully inadequate for us being able to build businesses and industry around this new technology. The browser specific implementations were welcomed because new formatting options allowed us to build what we otherwise couldn’t accomplish.

When none of the standards available meet the demands of a growing market is when you will start to see browser manufacturers releasing proprietary extensions. And you have to look no further than mobile to see this is in action.

A week before Andy Clarke wrote that the CSS working group needed to be disbanded, Apple published an extension to javascript. This extension provides access to the orientation of the iPhone. DevPhone has a good explanation and example of the code.

Here is what is notable about this extension: it is providing access to something unique to mobile devices that there is no standard way of accomplishing. You can’t get at orientation using Flash, javascript, css or any other technology without this extension.

And orientation of the phone is just the tip of the iceberg. Here are some other things that developers are likely to want to do on the mobile web that web standards do not currently provide any access to:

  • Access the location of the phone via gps or cell tower signal strength
  • Quick access to the phone number of the mobile device to speed entry
  • Triggering text messaging applications
  • Taking photos using the phone’s camera

This is a quick list of possible uses. There are many more. Each of the items on the list can be utilized to build powerful web applications. As the mobile web takes off, developers will be clamoring for ways to access these functions on phones.

And when the developers clamor to build exciting applications for mobile devices, the developers of the browsers on those devices will quickly choose to leave behind the standards bodies.

How likely do you think it is that Opera, Apple, Nokia and Microsoft will sit down and come to some agreement about how to implement these features? Given the coming battle for dominance over the mobile web and the size of the potential market (over half the world’s population), the most likely outcome is that we will see a return to proprietary extensions—a replay of the browser wars except on the mobile web.

Problems with Web Standards: Part I

I’ve been reading with great interest the current concern over the W3C process for web standards and the lack of progress being made. Andy Clarke kicked it off by asking the W3C to disband the CSS working group. Alex Russell followed up declaring that the W3C Cannot Save Us. Jeff Croft, playing his usual role of rabble rouser, echoes Alex’s sentiments in an post entitled, “Do We Need a Return to Browser Wars.

I can’t speak to the internal politics in these organizations, but I do have two perspectives on these issues based on my background in standards and mobile development that I haven’t seen discussed yet.

In all three articles, but in particular in a related article by James Bennett, the authors are seeking a new model for standards-setting organizations. In the case of Jeff Croft and Alex Russell, they believe that the standards bodies will never innovate. James Bennett looks for other models and even goes so far as to say:

This brings us to a new question: how do we find the proper balance between the competing interests of Web vendors and Web users/developers? Personally, I think the answer is to look at the available history: the world of web standards is not really breaking new ground in needing to properly strike this sort of balance, and there’s already a long and rich history of groups going through precisely this process, which anyone who’s interested in reforming web standards should be looking at.

Unfortunately, James follows by pointing to open source communities as an example of groups that have been successful. I don’t disagree that there aren’t lessons to be learned from open source groups. I just thought for the first time I was going to hear someone talk about learning how to be successful in standards development by learning from what other standards development groups do.

At my previous job, the biggest challenge we had was marketing to people in standards organizations who didn’t recognize that the standards setting process is unique and there is much to be learned from other standards organizations.

What many in standards organizations lack is the awareness that they are not only professionals within whatever field is their day-to-day jobs, but they also should be looking to others to understand their profession as members of standards organizations.

In this case, those who want to see the W3C do a better job at driving innovation and being more open would be wise to ask questions of Jason GrigsbyPosted on Categories Standards, Web DevelopmentTags

gPhone = Open Handset Alliance

The gPhone isn’t a Google phone. Instead, it is the formation of an alliance to develop an open platform for mobile devices.

The new consortium is called the Open Handset Alliance. The Alliance is formed around the Android platform that Google has contributed to the Alliance. Andy Rubin, Google’s Director of Mobile Platforms, describes Android as:

The first truly open and comprehensive platform for mobile devices. It includes an operating system, user-interface and applications — all of the software to run a mobile phone, but without the proprietary obstacles that have hindered mobile innovation.

If this is true–and the devil is in the definition of “open” as it always is–this could be a substantial development for mobile devices.

UPDATE: According the Open Handset Alliance FAQs, the platform will be released under Apache v2 Open Source License. The code will have a publicly accessible repository. It sounds very open thus far.

Last summer at Web Visions, I had an extended conversation with Kinan Sweidan of Ximda who had presented on determining location using mobile devices. During the conversation, Kinan talked about how difficult it was to develop on mobile devices.

The primary problem seemed to be carriers who don’t see their phones as a platform for other development. Handset manufacturers are beholden to the carriers because their hardware and software are useless if the companies like Verizon and AT&T decide not to allow the phone on their network.

The economics also favor the carriers because the cost of developing a phone is higher than most consumers will pay which is why the cost of the hardware is often underwritten by signing contracts that lock in services. Apple is rumored to receive another $432 from AT&T for every iPhone that is sells.

With this as context, it is possible to see why the Open Handset Alliance could be a game changer:

  1. The price of developing new hardware will presumably decrease because of an open and shared development of the OS. A decrease in handset costs will loosen the hold carriers have on phone manufacturers by decreasing the need for underwriting of phone costs. This does not decrease their stranglehold on their networks. Legislation would be required for change that dynamic.
  2. The combination of Android and Apple’s recent decision to release an SDK may mark a turning point in the understanding that the value of mobile devices will increase as they open up to outside developers.

If the second point has actually come to pass–if in the last few months the mobile industry has woken up to the realization that their future is dependent on becoming a platform for a wide variety of developers–then things will get very interesting very quickly.

The possibilities for mobile devices are astounding. 2008 is shaping up to be a very big year for mobile.

Browser Client-Side Database Storage

One of the big features in HTML5 has been implemented by the Safari developers and it’s a doozy that I wasn’t aware of: client-side database storage.

From the Surfin’ Safari blog:

The client-side database storage API allows web applications to store structured data locally using a medium many web developers are already familiar with – SQL.

Like cookies, you can store the databases per domain. I’m struggling to determine if the persistent storage in Firefox is the same thing. Firefox’s implementation states clearly that it isn’t available to web pages (only “trusted callers”). IE seems to be (per usual) implementing something similar, but slightly different.

Niell Kennedy wrote a good summary of the different techniques for boosting Ajax performance using local storage and why this would be beneficial.

I’m starting to get excited about HTML5. This database feature could be very useful for web applications.

Saving the Environment–One Server at a Time

The recurrent theme at SNW this year is Green Storage. I’m extremely impressed with the fact that multiple vendors have incorporated energy efficiency as a key distinguishing characteristic of their solutions. I knew the SNIA was launching the Green Storage Initiative, but I didn’t realize how much momentum this has in the industry until I saw it for myself.

Several booths are dominated by information about energy efficiency. These companies have decided that being green is the most likely way to sell more products.

Through my conversations with people on the expo floor, I learned that several businesses are now being told that they cannot bring any more power into their data centers. The power company is simply refusing to provide them with more capacity.

In many cases, the cost of powering and cooling a data center exceed the costs of the hardware within two years.

The green momentum isn’t entirely altruistic. There is a real dollars and sense perspective driving the Green Storage Initiative. Tackling these issues will save businesses money.

But even though it may not be entirely altruistic, you can sense the pride that people have doing something that both helps their company sell more storage devices AND makes the world a better place.

Heading to Storage Networking World, SNIA at 10 years

Later this morning, I fly to Dallas for Storage Networking World (SNW). I’m going to visit the Storage Networking Industry Alliance (SNIA) who is one of the sponsors of SNW.

The SNIA is celebrating its 10 year birthday at SNW. I’ve been working with the SNIA for half of that period. I don’t think I’ve seen a period of time when the SNIA had such great sustained momentum as it does right now.

SNIA just launched a major redesign of their Website. The SNIA staff had a plan for the launch. They were organized. And they worked their tails off to make it happen. It was great to watch.

On the technology front, SNIA just announced their Green Storage Initiative. There is a lot of enthusiasm around the idea of reducing energy consumption in data centers.

The future looks very bright for the SNIA, and I couldn’t be happier for them.

On a related note, if you are going to be at SNW or live in the Dallas area, I’d love to hear from you. Drop me a line or contact me via Twitter.

 

Signed Up for OpenID Today

Despite all of my reservations about OpenID, I finally found a compelling use for the technology today.

I signed up for Highrise by 37Signals today. I’m going to use it for personal contact management which I have a deeper interest in after reading Never Eat Alone.

The challenge is that I already have an account for Basecamp (another 37Signals product) and wasn’t looking forward to managing multiple accounts. OpenID to the rescue.

37Signals allows you to link multiple accounts—personal and business—to the same OpenID login. After a quick registration at MyOpenID.com, I was ready to sign up for Highrise and link my current Basecamp account. It was painless and has been a real boon.

The major benefit is the way that 37Signals has implemented their OpenID support. The OpenBar interface makes it worth the time to sign up with an OpenID provider. This is another example of where 37Signals should be an example for other developers.

At the end of the day, selecting the OpenID vendor turned out to be very simple. MyOpenID.com is a product of JanRain a Portland-based company whose founders were involved in the development of OpenID.

Local? Developed the technology? It was a no brainer.

Reading a lot about OpenID

I’m reading a lot about OpenID. I’m trying to determine whether or not it seems viable or likely to be adopted by the larger, non-technical audience of Internet users.

These recent blog post, OpenID: Great idea, bewildering consumer experience, captures better than I can how confusing OpenID can be if you set out to use it. It is worth reading the whole thing, but I want to highlight three points from the post:

The process of selecting an OpenID provider will stump the average consumer. They’re being asked to pick an ID that they will, in theory, use everywhere and forevermore to gain access to everything they own. They’re supposed to obtain this ID by making an effectively random selection from a group of providers they have never heard of.

This is where I get stuck every time. I’ve selected my web site host, domain, and email address based on longevity. Trying to decide which OpenID provider will be around in a couple of years is a difficult task. I’m not certain what other criteria you would use to make a decision.

Various OpenID sites also promote the notion that users should set up their own OpenID provider.

We’ve looked into creating an OpenID provider service from our applications. Yesterday, I saw someone asking for development of a plugin for Jive Software that would ideally make Jive’s Clearspace product an OpenID provider. It seems like every additional OpenID provider will be contributing to the confusion instead of helping.

[UPDATE: See the note below from Matt Tucker, CTO at Jive Software. In re-reading what I wrote above, I wasn’t very clear. Until Matt’s comment below, I didn’t know Jive intended to do anything with OpenID. I just saw someone asking for a plugin that would make Jive’s Clearspace profiles provide OpenID URIs. It more of a comment on desiring more OpenID providers rather than a comment on adding OpenID to any particular application. As I noted in the comments, I’d like to see more applications accept OpenID and fewer provide their own OpenIDs so that it is easier to get over the indecision about choosing an OpenID provider. Sometimes less choice is a good thing. Thanks again Matt for taking the time to clarify.]

And all this is for—what, exactly? To save me from having to pick a user name and password? As annoying as that can be, it’s just not that hard! Remembering an arbitrary user name does cause real trouble, but simply allowing email addresses to be used as IDs can solve almost all of that problem. As more and more sites allow email addresses as IDs, the need for OpenID becomes less compelling to a consumer.

This final point is a key for me. It seems like OpenID is asking people to establish a new, long term identity. However, for those who can establish a long term identity, they’ve already done so using their email address. Asking someone to replace their email address, the address that they have been trained to believe is where they can be found online, is going to be a tough sell.

I understand the desire for single sign-on. I’ve certainly heard the desire for single sign-on from a lot of customers and have spent a fair amount of time building authentication integration.

And yet, when I look at OpenID and all of the obstacles it needs to overcome, never mind the competition from Yahoo BBAuth and Microsoft Live ID, I question whether OpenID will ever receive widespread adoption. The real shame is that there is a true desire, if not need, for a simple, open system to simplify logins for web applications and right now, I don’t see any of the systems solving that problem for the majority of people.

Discovering New HTML Attributes

A few years ago, I was stunned to find out that there were HTML elements that I wasn’t aware of that could impact how quickly a browser could render a page. I had been developing web pages for years and couldn’t believe there were tags I hadn’t encountered yet.

I then set out to learn every element by reading through the syntax guides and even reviewing the XHTML Transitional DTD. I learned about localization tags like <bdo> and rarely used tags like <dfn>. Any tag I didn’t recognize I read about.

Which is why I’m still reeling from the revelation that there is a scope attribute for <th> tags. According to Veerle and Roger Johansson, the scope attribute is important for accessibility. I didn’t think there were any HTML attributes I hadn’t encountered yet.

So while I glad to have learned a useful and important attribute for accessibility, I’m not looking forward to reviewing all of the attributes again to see if there is anything else I’ve missed. :-)