{"id":21,"date":"2004-07-09T00:02:15","date_gmt":"2004-07-09T08:02:15","guid":{"rendered":""},"modified":"2016-05-25T23:34:40","modified_gmt":"2016-05-26T06:34:40","slug":"benevolent-pragmatism","status":"publish","type":"post","link":"https:\/\/mikeindustries.com\/blog\/archive\/2004\/07\/benevolent-pragmatism","title":{"rendered":"Dashboard: Benevolent Pragmatism"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/mikeindustries.com\/blog\/images\/inline\/safarifox.jpg\" width=\"94\" height=\"100\" border=\"0\" alt=\"\" class=\"rightinline\" \/>Who would have thought the <a href=\"http:\/\/www.apple.com\/safari\/\" target=\"_blank\">&#8220;Little Browser That Could&#8221;<\/a> would create such a flap in the web standards community? After reading <a href=\"http:\/\/weblogs.mozillazine.org\/hyatt\/archives\/2004_06.html#005887\" target=\"_blank\">Dave Hyatt&#8217;s explanation<\/a> about what HTML extensions Apple is adding to WebKit, I am simply in awe at how far little-known KHTML has come under the tutelage of one very talented person at one very idealistic company. To do what Apple has done with this rudimentary rendering engine in less than two years is nothing short of amazing.<\/p>\n<p>So now that Dave&#8217;s fit WebKit with a gown for the ball, Apple is looking for some glass slippers. Enter Dashboard extensions.  Enter shortly thereafter, <a href=\"http:\/\/www.meyerweb.com\" target=\"_blank\">Eric Meyer<\/a>.  Eric <a href=\"http:\/\/www.meyerweb.com\/eric\/thoughts\/2004\/07\/08\/dashboardml\/\" target=\"_blank\">rightly questions<\/a> Apple&#8217;s implementation plan, yet recognizes and respects what Dave and his team are trying to accomplish.  Instead of offering a blanket condemnation of everything Dashboard stands for, Eric clenches his fists a few times, breathes deeply, and offers constructive suggestions that only he and a handful of other people in the world are even capable of thinking of.  As a result of these suggestions, Dave listens, thinks, and <a href=\"http:\/\/weblogs.mozillazine.org\/hyatt\/archives\/2004_07.html#005938\" target=\"_blank\">responds positively<\/a> before the dust can even settle.<\/p>\n<p>This is what happens when two smart people listen to each other.<\/p>\n<p>It is commendable enough that Apple has been this open with the development of Safari, but to show this sort of flexibility and transparency is a huge break in tradition for the normally covert company.  After all, we&#8217;re talking about an operation who has fired people for discussing the tint of aluminum used in their cases. Apple, past and present, is legendary for its ability to keep a lid on things, and yet with Safari it not only breaks this model but turns it completely on its face.<br \/>\n<!--more--><\/p>\n<h3>Openness is next to Godliness<\/h3>\n<p>Apple gets that the web is about commonly adopted technology and not necessarily standards bodies.  Their goal with WebKit was to first make it the most capable renderer of existing web pages and then extend it in a positive direction from there.  Through Dave&#8217;s genius work and the culture of openness on the Safari team, the first goal was reached in record time, putting further into question why the hell it&#8217;s taken Mozilla this long to get where it&#8217;s at (I know, I know, AOL).  And so now it is time for Apple to take Safari where browsers should have gone years ago: to the desktop.<\/p>\n<p>Knowing that adding certain functionality would be controversial, Dave posted his entire plan for the world to see on his blog&#8230; only a day after Steve Jobs introduced Dashboard on stage.  Designers and UI people like me <a href=\"http:\/\/www.dogbreedinfo.com\/spikeslobber.htm\" target=\"_blank\">slobbered like puppies<\/a> while more seasoned web gurus like Eric Meyer and <a href=\"http:\/\/www.tbray.org\/ongoing\/\" target=\"_blank\">Tim Bray<\/a> put their watchdog hats on and rightly said &#8220;Hey wait a minute.&#8221;<\/p>\n<p>It&#8217;s too early to tell how this whole thing will play out, but the opening act looks less like the nefarious land-grabbing of the Microsoft-Netscape wars and more like benevolent pragmatism to me.  Apple wants to improve things and they are letting everyone know in advance what rules they plan to bend and for what benefit. As experts like Eric and Tim weigh in, my bet is that, as often happens on the web, everyone will make everyone else better. It&#8217;s not unreasonable to think that Mozilla itself will benefit from some of Safari&#8217;s trailblazing either. Mozilla has been talking about embedded desktop applications for years, but their problem was that not enough people knew how to write and deploy them. You can bet that Eric sees the benefit in Safari being able to solve this.<\/p>\n<h3>Get further by getting along<\/h3>\n<p>No matter how the Dashboard situation turns out, it is a dramatic reminder of the importance of rapport.  One of the smartest people I&#8217;ve ever worked with once told me that whether or not he makes a deal is almost always determined simply by how well he gets along with the people on the other side of the table.  What if Eric publicly flamed Dave for even wanting to extend WebKit?  What if Dave dismissed Eric&#8217;s suggestions as ridiculous?  What would happen is that Apple would go their own way and we&#8217;d all be the worse for it.  Heck, they might even add *more* proprietary stuff just to spite the critics.<\/p>\n<p>I&#8217;m sure it helps that both Dave and Eric worked on the Mozilla project for years and share a lot of the same passions, but what&#8217;s really impressive about all of this to me is that given their different allegiances right now (Dave to Apple, Eric still a little to Mozilla deep down inside), they both seem genuinely interested in doing the right thing for the community.<\/p>\n<p>The most important lesson I take from this is that the only way to further develop the web with any sort of speed and efficiency is for the right people to be at the bargaining table. People that know each other, respect each other, and have the integrity to put the community first.  I&#8217;ll take a table full of these people any day over meetings upon meetings from standards bodies who, though benevolent and honorable, have no real power over who actually adopts what.<\/p>\n<h3>Actions speak louder than words<\/h3>\n<p>Here is a real-world example of what I mean:  A few months ago, I wrote on another blog that I wished absolutely positioned elements could be cleared just as floats could be cleared.  In other words, that they not be taken completely out of the document flow.  If this was the case, it would open all sorts of flexibility in standards-based design. And so, as he usually does, Shaun Inman, known to me simply as <a href=\"http:\/\/quentin-tarantino.8m.com\/wolf.htm\" target=\"_blank\">The Wolf<\/a>, came up with a solution in a matter of days.  Shaun wrote a script which <a href=\"http:\/\/www.shauninman.com\/mentary\/past\/clear_positioned_elements.php\" target=\"_blank\">beautifully and portably clears absolutes<\/a> in all browsers, but of course it relies on javascript, and therein lies the rub.  So if Shaun can clear absolutes with a pinch of javascript, how hard would it be for browser makers to add this functionality into their products?  It could be done in seconds by simply baking in the javascript.  It could be done more gracefully by adding another position attribute like &#8220;absoluteflow&#8221;.  So my question is, if you had the choice between the W3C baking this into their next spec, or a few key people from Apple, Microsoft, Mozilla, and Opera agreeing to make this happen within weeks, which would you choose?<\/p>\n<p>Ideally, it would happen at the W3C level first, and then browser makers would adopt it from there, but we all know how long that takes. Wouldn&#8217;t we be better off in a world where the people who developed browsers just got coffee every month and talked this stuff out?  I&#8217;m liking what I&#8217;m seeing here with Eric and Dave, and I&#8217;m hoping this benevolent pragmatism thing catches on.<\/p>\n<div class=\"update\">\n<p><strong>Update:<\/strong> Well, that didn&#8217;t take long. Little more than a day after Eric&#8217;s namespace proposal, <a href=\"http:\/\/weblogs.mozillazine.org\/hyatt\/archives\/2004_07.html#005951\" target=\"_blank\">Dave says it&#8217;s implemented and all ready to go<\/a>.<\/p>\n<blockquote><p>&#8220;I have not yet committed this solution, because I want to see if this meets with public approval first. Please trackback with suggestions and\/or amendments.&#8221; &#8212; Dave Hyatt<\/p><\/blockquote>\n<p>Now that&#8217;s cooperation.<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Who would have thought the &#8220;Little Browser That Could&#8221; would create such a flap in the web standards community? After reading Dave Hyatt&#8217;s explanation about what HTML extensions Apple is adding to WebKit, I am simply in awe at how far little-known KHTML has come under the tutelage of one very talented person at one [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[282,39],"tags":[],"class_list":["post-21","post","type-post","status-publish","format-standard","hentry","category-original","category-technology"],"_links":{"self":[{"href":"https:\/\/mikeindustries.com\/blog\/wp-json\/wp\/v2\/posts\/21","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mikeindustries.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mikeindustries.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mikeindustries.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/mikeindustries.com\/blog\/wp-json\/wp\/v2\/comments?post=21"}],"version-history":[{"count":0,"href":"https:\/\/mikeindustries.com\/blog\/wp-json\/wp\/v2\/posts\/21\/revisions"}],"wp:attachment":[{"href":"https:\/\/mikeindustries.com\/blog\/wp-json\/wp\/v2\/media?parent=21"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mikeindustries.com\/blog\/wp-json\/wp\/v2\/categories?post=21"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mikeindustries.com\/blog\/wp-json\/wp\/v2\/tags?post=21"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}