W3C 2.0

I’m here in Banff, Canada for the 2007 W3C AC (Advisory Council) meeting. The AC is essentially the company reps to the W3C. I played a small part in one of the panel discussions yesterday.

It was the last presentation of the 2-day conference, and the theme was Web2.0: what it is, and how the W3C is adapting to and enabling it. I gave an overview of what Web2.0ey things WAF and WebAPI WGs are doing. It went well… I made a short SVG slideshow with some geeky in-jokes, and it got some laughs. It may have been slightly overshadowed, however, by the conversation between 2 of the other panelists: Sir Tim Berners-Lee (the creator of the Web) and Tim O’Reilly (a prominent tech publisher who coined the term Web2.0). Tough act to follow.

The conference was a lot of fun, as usual, and I got to meet and talk with a lot of technical luminaries, including Dave Raggett, who’s generously letting Chaals and I crash in his hotel room.

SD West

I’ve been out here in Santa Clara, CA, the last couple of days at SD West, a developer conference. There have been a few good classes (I finally met the hyperproductive Elliotte Rusty Harold for the first time), and a couple of great events. David Platt gave a hilarious and insightful talk based on his book, Why Software Sucks, and Google dominated at the geek-themed quiz show, Developer Bowl. 6th Sense was a finalist for the Jolt Awards, which were announced here last night, and I stood in for our marketing guy, since I was going to be here anyway. We didn’t take away the grand prize for our category, but we were one of the runners-up; we got a nice little plexiglass plaque.

I’ll be holding my own class on SVG tomorrow afternoon. I don’t know how well attended it will be… the last day of conferences tends to have a lot of attrition. But it will be fun anyway, and I always enjoy evangelizing SVG. I whipped up a little presentation app in SVG… it uses the powerpoint idiom, but slides around a large canvas between text and interactive examples. I’ve been using SVG slides for a while, but this is a little more interesting… well, interesting to make, I hope it’s interesting to watch. The class will center on workflow using SVG, and I’ll dig into code here and there (this is for developers, after all).

Update:  I’ve put my SVG slideshow up here.

Time-Travelogue

Though it’s Friday back home, it’s Saturday here in Sydney, and it’s been a a long week of meetings. Or meeting, I should say… the first SVG WG F2F of 2007, and my reunion of sorts. I first joined the SVG WG last January, and my first meeting was in Sydney. The winter (read: summer) Sydney meeting, hosted by Canon, has become a tradition. I sure can’t complain. As usual for a face-to-face, we’ve been sequestered in a hotel room all day, though with a beautiful view of Manly Beach right out the sliding doors. At night, we go out for dinner, then back to work, and to sleep. Read on for a day-to-day account of my trip thus far…

Continue reading “Time-Travelogue”

Boston in Winter

I’m here in Boston at a WebAPI Working Group meeting, along with several other WGs. I arrived yesterday afternoon, and headed toward my hotel on the rattletrap subway (part of the “T”… the nation’s oldest mass transportation system, and looks every day of it). The closest stop was across the river from the hotel, so I walked the Boston University Bridge across the Charles River… the river was frozen over, and geese were gathered on the ice. I was pleasantly surprised that it has not been that cold, though when the wind blows it is numbing.

We’re gathered at MIT, in the Stata Center, a misbegotten piece of architecture that looks like it’s a Transformer caught midway between building and airplane forms. I’d hoped to attend the WAF meeting here as well, earlier in the week, but there was just too much to do at work. As it was, I wasn’t quite done with my project (adding annotation functionality to some pregenerated charts), and the short plane rides just weren’t enough time to finish it (I stayed up late last night to dot the i’s and turn it in). I just barely got to my hotel before it was time for me to rush to MIT for the reception. I find that these joint gatherings are really useful… you get to network with others in the W3C, find out what else is going on outside your own corner of the Web, and find opportunities for collaborative efforts that bind the standards world together. Several old friends and acquaintances are here, including Chaals, Anne, and Kjetil from Opera (first time I met Kjetil IRL), Nandini from Sun (the co-chair of the SVG WG), Arun from AOL, and Jim from just about everywhere… as well as lots of other smart people I don’t know quite as well. I also exchanged a few words with Sir Tim Berners-Lee, the energetic creator of the World Wide Web, who I’d met once before in Mandelieu, France.

WebAPI is concerned with the programming interfaces (events and methods) that script programmers use in Web development, while WAF is sort of a grab-bag of different higher-level programming languages and formats. In WebAPI, we reviewed the current state of our specification deliverables, and took steps to move a couple of them forward. One of those steps was a silly debate about what the names for some methods would be (some favored shorter names that are easier to type, while I was in the camp that preferred more descriptive albeit longer names… the decision came down on the latter, but I suspect the debate isn’t over). Another spec was waiting on a module to handle keyboard events –an issue with a lot of gotchas and thorny legacy problems, the different kinds of keyboards ranging from non-English keyboards to mobile phone soft keys– and I reluctantly volunteered to split that module off into its own spec, so we could move DOM3 Events forward. I don’t relish working on this spec, since it will involve aligning with a dilapidated patchwork of old interfaces that I personally feel should be discarded in favor of moving forward with a more sensible solution, but legacy content does need to be supported when possible. We also held liaisons with other groups, including SVG, which handed off some bits of its spec in order to concentrate on graphics, and which needs those bits to move forward apace. I was pleased to see Microsoft in attendance in the person of Travis, our newest WG member, and to have the participation of the likes of Marcos (hyperproductive WAF member).

I’ll be here the next couple of days, and hope to see some local friends while I’m here.

SVG Logo!

Whew!  Many many months ago, we decided to do a contest to come up with a logo for SVG.  We wanted something iconic that people could use on their Web sites to show that they were using SVG, and for companies to put on their packaging and promotional material.  Little did I know what a huge undertaking this would turn out to be!

I basically ended up running the contest myself: wrangling sponsors, trying to get official W3C sanction, building the site, setting up the rules (amid conflicting opinions by the aforementioned sponsors), hand-editing all those entries that were not-quite-right (thanks, Inkscape… it’s a good drawing tool, but the code output is lousy), and generally reaping the results of my hubris.  And all of this was on top of my programming work, standards work, travel, and attempt to have a real life.  (Okay, I did have some help along the way, and obviously the judging was by a panel.)  We had setbacks… hundreds of entries by one person alone due to my foolishly allowing unlimited entries on a piece of bad advice; a cancelled SVG conference where the winner was to be announced; slipping deadlines (due to just not having the brain cycles to spare), and some impromptu international copyright legal hoop-jumping to make sure that the winning logo could be distributed and used for free.

But in the end, I think it was worth it.

I really like the new logo (and most of the finalists, too), and I think it will help “brand” SVG, so that even if normal people don’t know what SVG is, they will come to associate the logo with dynamic, interactive graphics.

Jiggy With SVG, Eh?

We really had a productive face-to-face meeting of the SVG WG last week. Converging on Raleigh were Chris Lilley of W3C (Scottish, but living in France), Andreas Neumann of ETH (Switzerland), Andrew Shellshear of Canon (Australia), Andrew Emmons of BitFlash (Canada), and Erik Dahlstrom or Opera (Sweden), and Antoine Quint of The (mysterious) Venice Project (France). We locked ourselves in a room and finished up the revised test suite, broke the ground on the errata document.

At one point, our Canadian colleague stated, quite straight-faced, that he was (and I quote) “jiggy with” a resolution on a particular technical point. My jaw dropped. I didn’t know anyone was jiggy with anything anymore… but he went on to claim that it’s a common thing for Canadians to say. Just when you think you know a country, they drop a bombshell like that…

Read on for a brief summary of the proceedings…

Continue reading “Jiggy With SVG, Eh?”

Get An Ointment For That

All this week, 6th Sense Analytics (my employer) is hosting the SVG Working Group’s F2F (face-to-face meeting). Normally, the SVG WG conducts its business via email or twice-weekly “telcons” (voice conferences enhanced by concurrent group chat sessions in IRC). But there’s nothing like sitting around a table, locked in a room together, to get resolutions on issues. Thus, the quarterly F2Fs.

So, a contingent of the SVG WG is gathered here in Raleigh (well, Morrisville), NC. We’ve been hard at work knocking out the long-overdue SVG 1.1 Test Suite (more later), liaisons with other standards groups, and other matters.

For dinner the first night, we went to a pub in Raleigh called Hibernian. Our chair, Chris Lilley, entered us into the pub quiz under the obscure (dare I say geeky?) moniker “SVG++”. When the announcer was introducing the teams by names (most of which involved being drunk), he exclaimed, “SVG-plus-plus…? What is that, a disease? Get an ointment for that!”

If you’re really interested in the gruelling details of the F2F, read on…
Continue reading “Get An Ointment For That”

Speaking at SD West

I just sent in my confirmation letter for my presentation at SD West 2007, a respected technical conference series in Santa Clara, California. I’ll be speaking on (can you guess?) SVG (you got it!) in a talk entitled Scalable Vector Graphics: Shaping Up the Web. The conference will be going on March 19-23, 2007. My company is really working on getting speaking engagements, so I think this may be only one of several that I’ll be doing in 2007. Of course, I will be speaking at –and helping to plan– the SVG Open conference next year as well. I normally give a 101 class introducing SVG there, in addition to a presentation on current projects I’m developing.

Blitzpost

Wow… keep meaning to write in this thing, but I’m not yet in the habit. I seem to have reached the maximum number of things I can think about at any one time. Anyway, here’s the short recap of what has been going on with me lately. Having bought a house in Chapel Hill, NC, I was legally obligated to either get pets and buy a hybrid car, or become a vegan. Now, I’m a vegetarian, but I’m not crazy enough to go vegan, so we got a couple of cats named Prettyboy and Floyd from an animal rescue group and picked up a “seaside pearl” (that means “blue”) Prius.

We got the cats about 4 days ago, and they had a bit of a trial adjusting (we faced a challenge convincing them to use the litter box for a couple of days, which is lovely on the hardwood floors and the erstwhile chair cushion), but seem to have decided to indulge us.

We bought the Prius almost accidentally… our old ’93 Toyota Corolla (dubbed the “Casserolla” when a cheese casserole was lingeringly spilled in the backseat) has been dying a shuddering death for months, so having put off getting a new car until we found (and financed) a house, we went out a couple of weekends ago to test drive a Toyota Yaris or a Scion xA. We did drive a Scion, but the Prius was just so much nicer (and with a better resale value) that we ordered one on the spot. It was delivered yesterday, on my birthday, October 24th. It’s pretty 21st century. We got the simplest option package, but even still that came with keyless entry and startup (as long as I have the “key” on me, I can open and start the car, without touching the key), and a rear-view backing-up camera. This is as close to a luxury car as I ever intend to buy. We saw a lecture last week by Dr. Wallace Broecker, the gentleman responsible for the groundbreaking theory of the Great Ocean Conveyor that was key in the understanding of global warming, on the need to develop an efficient way to remove CO2 from the atmosphere. We chatted with him after the lecture, and among other things, I asked if the Prius would really help the environment… he praised it not only for those qualities, but also just for the engineering and comfort of it (his wife has one). I’m not fooling myself that I will save enough money in gas to make up for the price, but I felt like it was my civic responsibility to do what I could for the environment (and it really is a nice ride).

So, speaking of my birthday, we went out to visit some friends last night, then had a great time at Fuse, a local nightspot, where we had a good dinner and bumped into a different crowd of friends for a fun conversation. The night before, we went to the Cat’s Cradle to see Bettie Serveert (an old favorite band from the Netherlands, 15 years old now!), and really enjoyed the local opening act as well, Alina Simone. A few days before, we saw some friends’ bands… The Strugglers opening for The Prayers & Tears Of Arthur Digby Sellars at Local 506, and it was a great show as well. I used to see at least 2 or 3 shows a month (sometimes that many in a week!) just a few years ago, but I’m not as in the know about bands and shows these days. Still, we want to make it a point to get out to live shows more. My girlfriend’s younger, so her knowledge is a little more up to date than mine.

Man, what else? Work-work (we have revamped our database to be a lot faster and more powerful, and I’m renovating the charting package to match), and standards work (mostly SVG), and secret project work, and domestic stuff, and reading, and hanging out with friends, and seeing The Prestige (we don’t go out to movies that often, but I loved this book), and all that normal stuff that one does when one isn’t in a foreign land. I promise I’ll talk more about Morocco, by request, in some upcoming post. And more about technology. And less about quotidiana.

What is it, this SVG?

I’m going to be writing a lot about SVG, so I thought I’d give some explanation as to just what it is. Scalable Vector Graphics is an XML language for creating graphics. It’s a bit like HTML for images. If you want to draw a circle on your page, you type:

<circle cx="50" cy="35" cx="20" fill="blue" />

And then you have a blue circle with a radius of 20 pixels (more on that in some later post), centered 50 pixels from the left and 35 pixels from the top. Obviously, since people want to draw more than just circles, it gets a lot more complicated than that, but that’s the basic idea. SVG is a vector-based language, which means that rather than a collection of dots, like raster images (rasters are formats like bitmaps, JPEGs, etc.), SVG shapes are sets of instructions that tell the browser how to best draw the image. For instance, a line in a raster is just a series of unconnected dots… if you zoom in on it, that’s what it breaks down into; but an SVG line tells the browser to start at this point and go to that point, and so no matter how you zoom in or out, it remains a smooth, solid line. Each image is composed of a number of shapes, or elements, that have identities and properties. If you move your mouse over an element, or click on it, the browser knows about it, and the author can give instructions (either using script or something called declarative programming) for what to do… it might let you drag the shape, or change its color, or most anything else you want.

SVG is an open format, meaning anyone can make a browser or an authoring tool that uses it without having to pay any royalties. This sets it apart from similar technologies like Adobe Flash and Microsoft XAML. (I strongly believe in open standards, because it gives everyone a chance to control the future of the format; specifically, I think that all democratic governments should use open standards as much as possible, rather than rely on one company who can control the costs and future access to the information stored in their format.) And the fact that it’s open pays off. SVG is supported natively in Firefox, Opera, Safari, and other browsers for both the desktop and mobile devices. Right now, it is not supported natively in Internet Explorer, but you can get a plug-in for that (see later posts for updates on this). No other vector format is natively supported across so many browsers.

SVG can be simple and free to author. There are several good programs that let you draw images and save them as SVG, including Adobe Illustrator and Inkscape (a free drawing app that works on most platforms). But if you want to get your hands dirty, you can dig in and create shapes just by typing out the code; this is how most programmers tend to do it, because it lets you control how the drawing behaves according to scripted instructions. If you want to see how someone drew an image, you can always view the source code and, if permitted, create or change it to suit your needs, just as many people learn HTML and Javascript.

But SVG is not just shapes. Because it is intended to allow rich presentations in an accessible way, you can also use text in SVG, and even define your own fonts (though this is not yet as widely supported). Animation is native to the language, and in later versions (such as ones shipping on phones), audio and video are also available.

Finally, SVG can be used with HTML, to create a rich Internet document. Because it was designed from the ground up to be used with other languages (including styling languages like CSS and XSL), as well as on its own, it is truly a part of the Web, and as it grows more popular, the possibilities of the Web will grow even more.