optical computing

Optical Computing – Today Adi Shamir, the “S” in “RSA”, gave the second of his two presentations this week as an invited expert on campus. He has just announced that he cracked the 802.11b encryption scheme. Today I watched his presentation from tuesday on streaming media; it was about the future of optical cryptography, or croptography. It was quite an inspiring presentation. He showed how one could theoretically crack DES in about a second, using today’s technology and not much expense. He discussed ways to do computations optically using simple lighted transparencies (or existing high-quality photo film) and also using lasers. As an added bonus, he showed us how the new Texas Instruments DLP chips are being used not only for cryptography, but for making bio-chips as well. These DLP chips and their “Digital Micromirrors” are freekin’ unbelievable, I hope TI got some serious patents on that so they can keep sinking money into other developments like it.

I wasn’t sure if I could mention the name of Microsoft’s source control system earlier, but Ray Ozzie has pointed out a public presentation that mentions the name and a bunch of other interesting statistics.

One of the possibilities that most interests me these days is the possibility of having ubiquitous metadata flowing around the web. Aaron Swartz has an interesting program called ArchiverProxy which is complimentary to the AimAtSite tool I have been using lately. Currently both of these only capture an individual’s metadata. One day people like Aaron will get things working such that people can share their metadata with one another without even having to think about it. I found a discussion of the challenges of metadata. I agree wholeheartedly with the last paragraph.

And on a lighter note, the police are apparently not friendly enough with all of the Japanese tourists in town to see Ichiro. In a city where people stand in the rain rather than jaywalk, this jaywalking ticket got thrown out — that will teach the cop to mess with an angry little asian girl!

Today was my haircut. I started going to Gene Juarez at the Redmond Town Center because my wife does, and I needed a barber when my last barber moved to California. It’s kind of funny; apparently this place does tons of business in gift certificates, especially around holidays like Valentine’s day. Something to do with busy Microsoft employees buying last-minute gifts for their significant others. Even the phone number is easy for a softie to remember; Microsoft main switchboard is 882-8080, and Gene Juarez switchboard is 882-9000.

company meeting

Company Meeting – What a huge contrast from last year’s company meeting. Last year was dark and gloomy, and everyone was feeling pretty battered. This year, the roof of Safeco field was open, the sky was blue, and you could feel a pleasant breeze. Before the meeting, dancing jellyfish on windows media and employees playing catch with various football-like toys provided ambiance. Throughout the meeting, we were impressed with the engineering talents of employees making and launching paper airplanes from all around the stadium. No kidding, some of these paper airplanes were incredibly clever — I am envious of the skills that were demonstrated. Rick Beluzzo gave us the numbers and business plan spiel, and we got to see some first-time demonstrations of some of the new stuff being cooked up in various groups. Windows XP and Office XP were big hits at the meeting, but XBox was the biggest hit. The last two speakers were Bill and Steve. Bill looked far more relaxed and healthy than the last few events I’ve seen him do, and the speech was surprisingly well delivered. One underlying theme was one that pops up all the time in his talks — “people are still underestimating the potential of software”. This year, the vision was much clearer. It has been a couple of years since we switched from “a PC on every desk” to the amorphous and imprecise “empower people with great software anytime anywhere on any device” (or something like that). That was a pretty terrible vision statement, IMO — it’s as if someone said “Hey, now that we have got PCs put everywhere, exactly what business are we in?” and the response was “Our vision is to do anything”. The vision statement hasn’t been changed, but the vision as communicated has become much more crisp and precise. Bill also showed a sort of sappy satire video demonstrating how he and Steve are such good friends. This might have been a sort of response to speculation about Steve “kicking out” Bill or theories of a “Bill vs. Steve” culture in Microsoft that have recently enjoyed a little popularity due to David Bank’s book. It’s kind of hard to read Bank’s book to imply a rift between those two, and it is a rather ludicrous idea to anyone observing from the inside, but it’s still conceivable that this was a “just in case” to make things perfectly clear. Or maybe it was just a funny video… Steve Ballmer opened his presentation by saying “I’m your monkey boy”, giving props to the video of him jumping around that someone let loose on the Internet. And he did not disappoint. This year, he screamed and jumped and ran around with more energy than ever, and he didn’t get nearly as winded as last year. Steve always gives 110% of the credit to everyone but himself, and this year he gave an impressively sincere thanks to everyone for working so hard last year. And when it came to pumping people up, he made everyone in that place remember exactly why we do what we do. Yeah, I’m biased, but this company “kicks a part of the anatomy” (quoting Steve).


Mundania – Upgraded to Windows XP Professional RTM build today (I was previously running build 2505, this is 2600). Today I am feeling more comfortable about progress on the new project; everyone seems engaged and incredibly competent. Tomorrow the whole day will be blown with the company-wide meeting at Safeco Field, and Monday is labor day, so things will be lazy up until next tuesday.

Today the buzz around town was mostly outrage over the bad reputation Seattle is getting due to some cranky motorists yesterday. Some woman yesterday threatened to jump off of a very strategically positioned I-5 bridge, causing almost instantaneous gridlock for the entire area (including eastern suburbs where I live and work, 15 miles away). During the three hours that she held the city hostage and blew millions of dollars of everyone else’s productivity, angry motorists stranded by the pileup shouted at her to just hurry up and jump and screamed obscenities at her. Eventually she did jump, and is in the hospital now. People here are really upset that our fair city got caught being so mean to a troubled person like that. Now the hospital switchboard is getting deluged by people trying to say nice things to her (which has never happened for any other bridge-jumper in this area before). Groupthink is a very peculiar thing.

dogfooding source control

Dogfooding Source Control – Joel talks about source control at Microsoft. The main question he brings up is “why doesn’t Microsoft use Visual Sourcesafe for all source-control needs?” He rightly points out that most of us feel that “Dogfood is the best food!”. There are sometimes products that don’t get dogfooded as well as others, and I would bet that there is a very strong correlation between support costs and the amount of dogfooding. But VSS is an interesting topic. There are certainly many teams in the company that do use Sourcesafe, and I’ve used it on a few projects. In fact, for things like non-confidential collaboration with distributed teams, a number of people I know here have developed good opinions of Source Offsite. But the fact remains, projects like Windows XP and SQL Server are not developed against Sourcesafe. I haven’t seen SLM used here, but the main system in use for the large, complex projects is command-line oriented and a more “industrial” system, sort of like a PVCS or SLM. Hardcore devs disdain GUI anyway, so one could theorize that the system is there to please the devs for whom Sourcesafe is not complicated enough. But really I think it is just an issue of scale. Brian Valentine has said that Windows XP is the largest, most complicated piece of software ever developed in the history of the world — and whether that is entirely accurate or not, it has got to be pretty close. The point is that most customers who develop code are not going to have the same requirements as Microsoft. For example, just looking at the “build” process — for many customers this means hitting “build” in Visual Studio. Significantly fewer places have complex enough requirements to require that someone maintain complex series of makefiles for a build. And fewer yet do development projects large enough to require that someone be assigned (usually devs, on a rotating basis) to do “builds”. At Microsoft, on the other hand, “build” is an official job function and there are teams dedicated exclusively to making sure that the software gets built regularly. And this is no slouch job. I have seen two build systems in the company now that dynamically distribute all of the build pieces across banks of machines based upon load, dependencies, and other factors; all of this just to run the builds more efficiently and make sure the testers have a working build to get rolling on the next morning. I would hate to be the one tasked with trying to do builds of that size out of a Sourcesafe.

Speaking of the whole issue of managing a software project, there is one important piece of software that Microsoft doesn’t ship to customers — bug tracking software. Actually, there is an old piece of software for free download somewhere in the bowels of MSDN called “Anomaly Tracking System”, and I have used the thick-client and web-based versions of that. However, I have also been fed-up enough with it to switch to Excel as my bug-tracking software before. Internally most Microsoft teams use a piece of software that front-ends on SQL Server and seems to scale pretty nicely. Another piece of bug-tracking software that many people use for it’s tight integration with Visual Studio is Visual Intercept (from Elsinore, not Microsoft). And of course Joel’s company ships a bug-tracking system that looks like it would remarkably easy to get your teams to use.

do women compute?

Do Women Compute? – Scoble thinks that men are risk-takers and women are nurturers. Dave agrees that the lack of women in computing is a “problem”, and suggests in true Lancelot style that perhaps the solution is for a man to write some software for women. I like this. For once, two of the most important people in my blog universe are stereotyping something other than the company I work for. I wouldn’t want to presume, but what the heck — I bet Dave and Robert both would learn a bit more about the things women find annoying about this industry by reading a few books that I can personally recommend:

These books are the flip-side to comments made by people like Dave and Robert. They offer women’s stereotypes of how men behave; and like many generalizations, often reveal a kernel of truth.

vacuum cleaner

Vacuum CleanerGartner reports that companies have wasted one billion dollars since 1998, on high-end java application server capabilities that they didn’t need. One billion seems like a lot, but I think Gartner is being conservative.

We spent the day today in Vancouver B.C.’s Chinatown. Food, shopping, and there was some sort of festival going on outside the “Dr. Sun Yat-Sen Chinese Classical Garden”. I like to visit this garden, particularly for their bamboo groves. They have a large grove of purple bamboo — depending on the time of year, stage of growth, and weather, the stalks will appear purple or black. Today they were black. Tomorrow morning is dim-sum at Noble Court. Check out the citysearch user reviews. Comparing to the reviews at seattleinsider, and firsthand experience that Noble Court has the best chicken feet in Seattle, it looks like some heavily-skewed person is poisoning the metadata on the citysearch site. Could it be a competitor? Or maybe someone trying to reduce the time he has to wait for a table on weekends (obviously ignorant of the fact that he could get his party on the list early to bypass the lines)? Yet another examaple of how much work needs to be done before we can fully appreciate the benefits of a globally distributed metadata sharing network.

day in the life

Day in the Life – Today was the Windows XP ship party. They were setting up tents and gear in the soccer fields adjacent to my building last night; this morning I arrived to find the festivities already underway. I was busy taking advantage of the productivity that comes from having everyone else out of your hair, so I caught most of the action over streaming media, or in the noise carrying through the air to my building. A bunch of VIPs from the hardware companies were presented gold CDs (in silver briefcases suitable for espionage) by Bill Gates and Jim Allchin, then climbed aboard helicopters and flew off, presumably to begin preloading Windows XP on all of their machines. The guy from HP was pretty cool; he made some comment about “reclaiming the PC mojo” and his enthusiasm was contagious. I bet he could really pump up the crowd if given a chance. All of the ceremonial stuff was wrapped up by around noon, and then the party began. When I left campus around 6pm, the party was still going strong. The speakers were pounding out electronic dance music, people were getting their drink on, riding some rides, playing games, and hanging out. Seattle has finally had some rain over the past week and recovered a bit from this summer’s drought, and today things cleared up just in time for the event. It was some much-needed rest and recreation to help recharge those guys before they dig in and push datacenter server out the door.

I’m pretty far from celebrating a ship right now. My latest assignment got final approval just a few days ago, and now I have to get the first beta out by the end of October. It’s a bit unique (for me) because this is a completely new project, so there is absolutely no existing infrastructure in place. That means I have to get a new build tree, get daily builds up and running, get setups built, figure out how to organize the documentation, get the testing team going, get the right bug databases set up, and the list goes on. And of course there is the small issue of writing the specs and getting the code written. The really fun part of all of this is that PMs at Microsoft have no direct power. All of the stuff that has to get done will have to be done by people who do not report to me, but I am the one who has to take responsibility for success or failure of the overall project. About two years ago, when I was working as a dev lead, I would come home and complain to my wife, “That PM is like a nagging housewife!”. He was quite subtle in his nagging, and never rude or malicious — but he was absolutely unrelenting. In fact, the best PMs are like nagging housewives. I like to imagine that the team secretly appreciates the nagging, and realizes that the whole household would end up in disarray if I wasn’t constantly henpecking to make sure that the garbage gets taken out and the dishes washed. I also worry alot that I might forget to nag about something, and then when it doesn’t get done, the whole team gets let down and it’s my fault.

Besides the XP launch, the other big news on campus is that the interns are leaving to go back to their universities. Few people outside the company realize how much key software is written (and tested) by interns. The interns often are given projects that are more “experimental”, and while these carry lower risk of putting Microsoft out of business, they often turn into some of the cooler features that get shipped. And at 26, I’m finally slowing down enough to appreciate the energy and enthusiasm these interns have. But we are not just losing the interns; it feels like everyone is trying to squeeze in vacations during the last few months of sunlight in Seattle (after October, it is 7 months of rain). So it’s going to be a real challenge getting things done these next few months.

moose tracking

Moose Tracking – Where was The Talking Moose on August 16? Little did he know he was being caught on camera! And in the spirit of Big Suge and Al Sharpton being free, Scoble is back!!! But we can’t let all of this liberty make us complacent. While it is easy to be dismissive of the college-town sophisticates who cry “free Mumia!”, there is another rallying cry that should have us all up in arms. FREE MILINGO!!!. When Milingo refused to divorce his wife and bow to the threat of excommunication from an apostate pope, he was kidnapped and is being held against his will by the apostate Vatican. But then again, anyone who considers the current Vatican to be apostates or heretics would also have to admit that liberty is overrated.


Xslerator – Yesterday I was working on an article I want to put together for MSDN; something like “How to build a web-based discussion board in less than ten minutes.” I am trying to make this really simple; no code required. When I got to the part where I show how to make it actually look pretty, I needed something that would allow me to quickly put together XSLT templates. So I wasted a few hours trying out every XSLT editor that I could find. I’ve reached the conclusion that XSLT editors on the market today are hopelessly inadequate. Anyway, after giving up on that, I browsed betanews.com and found a product called “Xselerator”. This is by far the best XSLT editor I have used. I still wish I could get a WYSIWYG editor to combine with the Xselerator capabilities, but Xselerator did everything I needed and let me crank out a stylesheet in just a few minutes. Interestingly, IBM has a project on the alphaworks dumping-grounds called “XSLerator” which seems to advertise itself as some sort of XSLT generation engine rather than an IDE like Marrowsoft’s tool. The name similarity ought to make for some interesting confusion for google.