spout

June 26, 2004 spout

My Experiments In Social Video

Here. The one where I try a couple of experiments in social video to bring me closure to my friends and get half-way there.
June 26, 2004 spout

A Man, A Plan, A Canal, A Librarian!

A Man, A Plan, A Canal, A Librarian!

Saturday, June 26th, 2004

Can’t come up with a better palindrome than a man, a plan, a canal, Panama!”? Write a program and come up with one that’s 17,000+ words. I love computers and what people do with them.

The most extreme thing I ever did along these lines is when my airplane was circling an airport for some unknown reason and the United flight attendant announced a contest to keep our minds off the dwindling fuel and the terrorists on the ground (oh, wait, that’s Die Hard…). Anyway, she offered a free bag of peanuts (or something of equal value) to the person that could come up with the most words of 3 or more letters from the letters in the word united” (Always Be Closing…).

Did I put my Tim Ewald-expanded vocabulary to work? Did I scratch words onto a cocktail napkin as fast as I could think of them?

No. In the limited time I had, I wrote a program that would come up with random combinations of letters in brute force fashion, then dumped the unique ones to a file so that I could use Word’s spell checker to find the real words. I came up with 32. Did I win?

No. A librarian, using her own expanded vocabulary beat me with 34 (I had been running the program to generate 1000 possibilities to speed testing but forgot to flip it back to 10,000 when it came time to run it for real).

Did I stop there? Did I accept defeat gracefully, especially since it’s pretty clear I had cheated in the first place?

No. I went home and learned the STL permutation algorithm and wrote a program that compared against a dictionary from the web to find the 72 words of 3 or more letters in united” (including asynchronous updates to the UI as possibilities are checked [it takes a little longer, but it’s worth it…]).

Now I carry that program on my laptop wherever I go, just in case I run into that damn librarian again…

P.S. I did get to use my program one more time against my mother playing Scrabble. I got my all-time high Scrabble score ever on that day. She still beat me. Did I mention she’s got a bachelor’s degree in library science? Damn librarians…

Discuss

June 25, 2004 spout

My Day With Edward Tufte

Here. The one where I enjoy a day with Edward Tufte even if he unfairly blames PowerPoint for sloppy thinking.
June 25, 2004 spout

My Experiments in Social Video

June 25, 2004

Because I’m a rarity at Microsoft, a remote employee, I’ve been conducting experiments in social video to increase my presence from afar.

Experiment #1: Mini-Me

My first experiment was a dedicated laptop for IM audio and video that sits on my desk in building 5. The idea was that anyone that wanted to chat with me could wander by my office and start an a/v chat w/ me nearly as easily if I was actually in the office. And then, when I’m supposed to be in a meeting, instead of requiring someone to bring their laptop, with a web-cam installed, and give it up to me for the duration of the meeting so that I could see folks, they could just grab the mini-me” laptop from my desk and bring it to the meeting.

Sounds nice, eh?

Doesn’t work.

The reason mini-me doesn’t work as a stand-in for me in my office is because there’s no standard account I can login with on my desktop, e.g. redmond\guest. The reason a standard account would be nice is so that I can leave it logged in all the time, tie its own .NET Passport to the account and put a shortcut on the desktop to make it IM me in video conference mode (I actually wrote an app that does just that). Unfortunately, it has to be an MS domain account so it has network access and if I leave an anonymous domain account logged in on a laptop all the time, that’s an enormous security hole. And if I make folks that want a quick chat with me log in themselves, they’ll will have to wait for their domain settings to migrate to the laptop, they’ll have to login with their own IM account, they’ll have to configure the web cam before using it and they’ll have to remember to logout when they leave for the next person. Frankly, I’m not worth all that trouble when they could just call, IM or email me.

So, the mini-me laptop is a bust unless I can figure out a way to get Internet access without Intranet access inside the MS corporate Intranet without requiring everyone to log in w/ their own account to get it. Oh, and it has to be in a way that works with wireless so that they can haul mini-me to a meeting without having to haul along a cable, too.

Experiment #2: Maxi-Me

My 2nd experiment in social video went quite a bit better. Last week I gave two 1-hour talks back to back to the AZ .NET User Group, but the trick was, I gave them from my house. The setup was two computers on each side. One was for NetMeeting app-sharing (using MSN Messenger to request Remote Assistance works, too, but I can never get MSN Messenger app-sharing going). The second is for the video (the CPU load was too heavy to do both on one computer). Voice was done over the phone, which they put through their PA system. They also had two computers, both attached to video projectors, broadcasting my screen using one projector and my image using another (can you imagine how disturbing it must have been to see the giant, pixelated maxi-me? I shudder at the thought : ).

The app-sharing worked well, as I was able to easily switch between PowerPoint and a Terminal Services session to my Longhorn box. The audio worked well because I insisted on 2-way audio so I could hear them ask questions (I hate talking into silence). The video was cool, because I could see them raise their hands, drift off, laugh, etc, but it required somebody sweeping the room on their end periodically (talking without seeing your audience is slow death).

Overall, it seems like folks were able to enjoy a remote presenter without too much trouble. Once I got em warmed up, the speaker phone and roving camera made Q&A very natural. I would try maxi-me again, although I’d love it if I could get mini-me working, too.

In general, I believe that ubiquitous a/v conferencing is inevitable. I just I’m just a bit ahead of the curve. : )

Discuss

June 25, 2004 spout

My Day With Edward Tufte

My Day With Edward Tufte

Friday, June 25, 2004

I spent most of Thursday in a seminar given by Edward Tufte, the author of several seminal books in the area of data analysis and presentation (with another, Beautiful Evidence, in the works). I enjoyed it thoroughly and here’s what I was able to capture:

Tufte’s Grand Principles

The goal of good information design is to minimize the amount of time spent figuring out the design of the presentation of information (or even admiring it) and maximize the time spent reasoning about the information. Good designs should be as nearly invisible as possible.

Tufte: The point of an information display is to assist thinking. Good design is clear thinking made visible. Bad design is stupidity in action. Chart junk is a good sign of statistical stupidity.”

My favorite Tufte term is what he calls designers brought in to make boring numbers look interesting: chartoonists.”

Ed’s Grand Principles of Analytical Design

  1. Show comparisons (this is big theme of Tufte’s)
  2. Show causality
  3. Show more than 2 variables, as the world we’re trying to understand is multivariate
  4. Integrate word, number and image (this is another big theme)
  5. Say from where the data came
  6. The value of an information presentation comes from the quality, the relevance and the integrity of the content, i.e. good design won’t fix bad content.
  7. Use small multiples, e.g. showing multiple pictures of sunspots on the sun over time
  8. Show and embed scales of measurement because it’s an essential part of the context
  9. Annotate everything and if the audience reads ahead great, they’re reading your material
  10. Use proven design templates (like those in Tufte’s books)

Tufte: Don’t let the marketing people corrupt your presentations by eliminating detail. Chances are, the people looking at the information know more than the marketing people. People haven’t suddenly gotten stupid just because they come to hear you talk. If people can read the financial tables and the sports tables from the paper, they can get read data from you.” (The last point assumes a good design.)

In my own work, I often remove detail for clarity, but I’m very careful to leave enough details to keep context. I admit, it’s a fine like to walk and hard to get right.

As a way to pack more data into a small space (and in an attempt to secure his immortality, imo), Tufte was inspired by Galileo’s work to create a new kind of graphic meant to be integrated into a sentence as yet another word. He calls them sparklines″ (the sparkline is the graphic before each word):

Sparklines pack a lot of information into a small space and are a cool alternative to graphics that break the flow of thought and need to be called out with a phrase like as seen in Figure 3.” I have a mind to implement them in Avalon when I get a chance.

90% Content

Tufte hates most kinds of user interfaces because they spend too much of the already low resolution screen on fluff,” e.g. menu bars, captions, navigation, etc, and too little on the content itself. As an example, he showed a screenshot of a photo display app that used only 18% of the screen for the actual photos. He wants nearly invisible operating systems and apps and 90% of the screen used for the content. He’s a big fan of Google News as a way to pack in a lot of information and he’s a big fan of scrolling. For web sites, Tufte recommends only a small set of links at the top of each page for navigation and nothing else. His own site is like this and I have to admit, I like it.

Design For High Resolution

Ed hates low resolution. He wants everyone to design for high resolution to be viewed at 22 inches so you can pack a lot of information in, showing comparisons and causality. He hates PowerPoint because it’s made to be viewed from 22 feet and doesn’t provide a lot of room for showing dense data, comparisons or causality. It’s far easier for humans to make judgments when they can see everything at once instead of sequenced one slide after another (or one damn thing after another,” as Tufte says : ). In general, he believes everything should be printed and that PowerPoint should only be used for showing pictures to an art class. I see his point, but ironically, when he wrote a paper on the problem of PowerPoint to be read at 22″, after 3 pages of him blaming PowerPoint for sloppy thinking, I put it down in disgust. If he had had his thoughts put together into PowerPoint-style format, I could have skipped ahead to find his real point, i.e. low resolution makes it hard to do serious analysis.

As a point for Tufte, when producing this summary of my day listening to him, I’m mixing prose, images and references, but I’m not producing it in PowerPoint. According to Tufte, 4 pages of prose is equivalent to between 50-250 PowerPoint slides and I have to admit, it would be hard to convey what I want to say about him in a PowerPoint deck without using a lot of slides and throwing away the subtleties. In general, I believe that PowerPoint is best for reminding the presenter what they want to say and is very poor for the audience. Instead of a slide presentation, Tufte recommends providing the audience 4 pages of prose, which they read 3-5x as fast as you could say it, and then having a conversation. Interestingly, he allowed no conversation during his own presentation but instead talked to various parts of his books and hand-outs.

 On the other hand, has anyone even read this far? Would you have gotten farther if I’d have summarized everything in slides, skipping ahead to the juicy bits when you got bored?

Giving Presentations

Tufte has a great deal of advice about how to prepare for and give presentations. To prepare, you must have great content (no amount of design or practice will fix bad content) and spend a great deal of time practicing (especially important if you’re not using PPT to remind you what to say). When presenting, follow these rules (these aren’t all of my rules, but I agree with them):

  1. Show up early to avoid problems and greet everyone at the door to learn their names, introduce yourself and begin advancing your cause
  2. Start talks with The Problem, Why They Should Care and The Solution
  3. Never start your talk with an apology, as it just make you look pitiful
  4. Use Particular/General/Particular when presenting information, e.g. start with a particular example of something, generalize it and then show another particular example that shows the same general characteristics (I use this technique all the time and it’s very effective)
  5. Use first person singular only to express opinion, i.e. this isn’t a talk about you but about a serious topic
  6. Give everyone at least one piece of paper (Ed prefers a single 11″ x 17″ folded in half with 4 sides of content)
  7. Knowing your content and respecting your audience is more important than knowing your audience if by knowing” them, you dumb down” your talk for them
  8. Avoid project slides (aka PowerPoint or the equivalent)
  9. Use humor as appropriate, e.g. hyperbole to make a point, but don’t tell jokes. Don’t alienate your audience because of a joke. Alienate your audience on the merits on your content!”
  10. Avoid the use of he” or she,” e.g. The user, he takes his mouse and moves it to his menu bar where he makes his manly choice.” Use they” instead.
  11. Make sure folks know you believe what you’re saying by getting out from behind the podium, getting close to people and use appropriate gestures. If you don’t believe what you’re saying, they’re not going to believe it.
  12. Finish early and something good will happen. No one will ever look at their colleague, commenting on how they wish you had gone on for another 20+ minutes.

I think that Ed has enough good things to say about how to approach the presentation and analysis of data that I would recommend that pretty much anyone involved in the presentation and analysis of information take the time and attend his day-long seminar.

Discuss

June 16, 2004 spout

The Reason for ATOM

It seems to me that folks embrace ATOM mainly to get away from the guy that’s credited with inventing RSS:

I’m not running for president, I am not a corporate executive, and I don’t tell bedtime stories to adults unless its for fun and they’re friends. I can tell you what it feels like to be me, but I don’t know how it feels to be you. I’m willing to listen, up to a point, but unless your site is hosted on weblogs.com, I don’t understand why you’re hogging the microphone right now. I believe so strongly in the weblog world, that we should be grounded in truth. I think a lot of people participating in this dicussion are not grounded in truth, deliberately so, openly so. Shame on you, I say.”

This was said after he pulled down 3000 web sites he was hosting with no notice. ATOM is starting to sound more and more attractive…

Because this post has cauesd Mr. Winer to start swearing at me, I thought I’d remind folks of the following:

DISCLAIMER: This is a personal post of Chris Sells as an individual on my own personal web site and does not reflect the views or Microsoft as a whole or any portion of Microsoft.

June 7, 2004 spout

My First Presentation For A Distinguished Engineer

Here. The one where I get to present a technical topic to Anders Hejlsberg and it changes my brain.
June 7, 2004 spout

My First Presentation For A Distinguished Engineer

Monday, June 7, 2004

Wednesday was a good day. Not only did I get birthday wishes from all over the internet (thank you, Orkut), but I got to give my first presentation to a Distinguished Engineer (or DE, as we call them in humble tones). A DE is the top end of the individual contributor ladder that technical folks who want to stay technical — aka avoid becoming management – are on. Architects, e.g. Don, are one step down on that ladder and Program Managers (PMs), e.g. me, are even further down. In this case, the DE to whom I was presenting is someone that I’ve long respected and who invented and continues to guide my favorite programming language: Anders Hejlsberg.

A couple of weeks ago, Anders was digging through our docs on a topic in which he was interested because of the future directions he’s got in mind for C#. However, the particular information that Anders was looking for wasn’t in our documentation. So, he mentioned that he’d like someone to look into it and get the information for him. As a percentage of the 56K employees at MS, there are a very few DEs, so when one of them mentions that they’d like to see something done, that’s what happens. This doesn’t happens because a DE is your boss or because they decide whether you get a raise or not. This happens because smart technical folks get respect at MS and the smarter you are, the more respect you get. So, when Anders mentioned to BradA that he would like a brief on this technology, Brad found someone to give that brief: me.

Why me? Well, lately I’ve been talking to Brad about me doing some more technical work on WinFX and Longhorn. In the past, I’ve written and spoken a great deal about the good and the bad of various technologies and my thinking was that if I could get into a feedback loop with the product teams so that I could help prevent some the worse bits from making it out the door, giving me the opportunity to write only nice things about our technologies. Brad already runs the WinFX review team that’s in charge of making WinFX a nice place for developers to play, so when I volunteered to help with some of that work, it didn’t take long for him to take me up on it. And, after a few moments of hesitation when I realized that I only knew a little more than Anders about this particular topic, I jumped at it, digging into the technology, sending tell me more” and review these slides, please” emails to the various product groups in charge of those technologies (it’s amazing how quickly you get a response when you put I’m writing a presentation on your technology for Anders and…” into an email : ), revised the slides, woke up in the middle of the night with the perfect set of pictures to illustrate things, etc. In short, it was a blast and I learned a ton (which you know I like : ).

And the actual presentation was even more fun than the preparation. There are three kinds of talks. One kind of talk, which happens 80% of the time, is the kind of talk that doesn’t really affect you one way or the other. It kind of blends in with all of the other talks you’ve given and doesn’t really make an impact on you.

One kind of talk drains you completely. This is the talk where you just can’t get anyone to notice you at the front of the room and you pour all of your energy into it to make it acceptable at all.

And one kind of talk, my favorite, is when the juices are really flowing and you walk out of the meeting all excited and energized. This is the kind of talk that drives me and my colleagues to all-night diners for a debrief session. This last talk was the kind that I had this time with Anders and a couple of the product teams from around the company. I was really just guiding the discussion, with Anders leading and peppering all of us with wonderful, insightful questions. I had 20+ slides with overview, pictures, details and recommendations, but I only showed 4 of them (3 of pictures and 1 of recommendations). My inability to get through all of the slides didn’t matter: Anders got it all. He was interested in some of what I had to say, but also brought up points I’d never considered. What I think should be in our platform was changed by just listening to Anders ask questions. I could feel the synapses in my brain realign. It was amazing.

Things will absolutely change in our platform because of the desires that Anders expressed during my presentation. What a privilege.

Discuss