June 20, 2006
@ 07:07 PM

I've counted myself lucky to find a girlfriend who has similar tastes in music to me. Most of my friends don't like equal parts Lil Jon, Metallica, G-Unit and Backstreet Boys but my girlfriend does. In addition, she likes the crunk hip hop clubs just like I do. In fact, the clubs we tend to like going to regularly seem to end up getting closed down for being too crunk (e.g. Mr Lucky, Larry's).

So you can imagine that I was quite surprised by her recent request that we attend a Kenny Chesney concert. So I asked here "Who's Kenny Chesney?" and she replied that he was a country singer. I was like "But you don't like country music" and she replied that actually she did. Since this revelation, you are now just as likely to hear us listening to Settle for a Slowdown or What Hurts the Most as you are to hear Poppin' My Collar or Hustlin' as we drive down the street. How times change.

The concert is this weekend and I'm not sure I have appropriate attire. If one of my coworkers who reads my blog has a cowboy hat that I can borrow, I'd greatly appreciate it.


Categories: Music | Personal

June 20, 2006
@ 06:16 PM

Joe Gregorio has a blog post simply titled Hire Me where he writes

As of 10 O'Clock this morning I am no longer employed; being laid off tends to do that to you. The good news is that I can catch up on all those projects around the house, my backlog of XML.com articles, my editing of the next draft of the Atom Publishing Protocol, etc. I can even start blogging about the industry I was working in and the company I was working for, but only after I fulfill the requirements of my severance package.

As positive as that all sounds I do have a mortgage and a family, and they like to eat, so I need to find gainful employment.

Please hire me.

If you are unable to hire me please do me a favor and link to this entry.

My resume in PDF format. An HTML version will appear shortly.

I'm not a hiring manager which means I can't hire Joe,  so I'm doing the next best thing and linking to his entry and resume. If you work at Microsoft and are interested in a guy who is quite knowlegable about building RESTful services, you'd be hard pressed to find anyone better qualified than Joe Gregorio.


I was pretty surprised to find the press release entitled Microsoft Robotics Studio Provides Common Ground for Robotics Innovation via Todd Bishop this morning. It states

PITTSBURGH— June 20, 2006 — Today at RoboBusiness Conference and Exposition 2006, Microsoft Corp. showcased the community technology preview (CTP) of a new Windows®-based environment for academic, hobbyist and commercial developers to easily create robotic applications for a wide variety of computing platforms. In addition, early adopter companies, universities and research institutes offered demos and provided support for the new Microsoft® Robotics Studio development platform. The community technology preview of the Microsoft Robotics Studio is available for download at http://msdn.microsoft.com/robotics.

"Microsoft, together with the upcoming LEGO® MINDSTORMS® NXT, will help further amplify the impact of robotics,” said Søren Lund, director of LEGO MINDSTORMS at the LEGO Group. “The MINDSTORMS robotics toolset has enjoyed a strong community of users since 1998, and the launch of our next-generation platform includes many built-in features that further the community’s ability to take MINDSTORMS programming out of the box. In combination with Microsoft Robotics Studio, PC users will have a sophisticated tool that will further extend the powerful NXT hardware and software to an even wider range of developers who wish to create advanced applications for their LEGO robots."

At first glance, I thought this was an announcement that Microsoft would be getting into building robots like Asimo but it seems that instead it is Microsoft getting into the business of building development platforms for programming robots. There is a good overview of Microsoft Robotics Studio on MSDN which describes the core pieces of the platform. Interesting, I can now program LEGO Mindstorms using C# and the .NET Framework instead of lower level languages like NQC (Not Quite C) which is quite cool.

A neat bit of trivia is this is the project that George Moore, who now runs the Windows Live developer platform team, came to Windows Live from. It's interesting to see how different ones job roles can be from year to year at Microsoft. 


Categories: Technology

From the press release Launch of Windows Live Messenger Marks Significant Progress for Microsoft’s Windows Live Era we learn

Tomorrow (June 20), Microsoft Corp. releases Windows Live Messenger, available at http://get.live.com/messenger/overview, one of the first of more than 20 new Windows Live services to launch globally over the course of the year. Windows Live Messenger goes beyond the traditional instant messaging (IM) service, enabling people to connect and share, with free PC-to-PC calls and inexpensive calls from a PC to phones around the world, video calling, easy sharing with Sharing Folders, and more.

I was waiting for the download to be available before blogging about it but it looks like that didn't stop Microsoft from publishing a press release. :) Although there is a lot of hyperbole in what is essentially an announcement of a rebranded MSN Messenger, there is some good stuff in this release. The feature list on get.live.com has a good run down of the new features, my favorites being the sharing folders and the various voice calling options. The upcoming ability to communicate with your friends on the Yahoo! Messenger network is also cool but not that interesting to me since I don't have any friends who use Yahoo! Messenger. The feature I can't wait to see turned on is social networking integration between Windows Live Messenger and Windows Live Spaces. This is would be my first major feature showing up in Windows Live Messenger and one I spent a bunch of time on.

We had a recent reorg on my team, and my day job has transitioned from spending about twice as much time working on the services behind MSN Spaces over Windows Live Messenger to the inverse. This means I'll probably be blogging a bit more about WLM and a instant messaging applications.


Categories: Windows Live

Anil Dash has a blog post entitled Office 2007 is the Bravest Upgrade Ever where he writes

Short and sweet, the Ribbon and new UI in Microsoft Office 2007 is the ballsiest new feature in the history of computer software. I've been using Office 12 for about six months, and not only has it made me more productive, I'm struck by the sheer ambition of the changes in this version.

To clarify the point: Microsoft Office is a bigger business than most of us probably realize. Office generated $11.5 billion in revenue for fiscal year 2005, and it'll exceed that in the current calendar year. But conservatively, you're talking about a billion dollars a month.

Now, most of us who like to prognosticate and pontificate about software like to say things like "It'd be easy to just..." or "It's trivial to add..." but the thing is, most of us aren't betting our entire careers on the little tweaks and changes we'd like to make to our productivity applications. Try making a mistake that jeopardizes a business that makes $250 million a week. I'd figure a 2% error, on the order of $5 million, gets you very, very fired. Maybe they're forgiving and you can make a 10% error, costing $25 million a week. I doubt it. Most of us would lose our nerve about suggesting radical changes if betting wrong meant betting lots of jobs on making the right call. (Nobody ever got fired for making incremental improvements to Office.)

Two of the ballsiest moves I've seen Microsoft make in the past five years were both made by the Office team under the leadership of Steven Sinofsky. The first is the new UI changes in Office 2007. The second has been the movement away from proprietary binary formats and towards open XML formats as the default in Office 2007. In addition both massive changes have been live blogged all the way through by Jensen Harris and Brian Jones respectively which in itself should probably be on the list of pretty cool and risky things that Microsoft has done as well.

Now that Steven Sinofsky now runs both Windows client and Windows Live, I wonder what kind of decisions and product announcements we'll see in the coming months. So far we've been executing on stuff decided on before the big reorg, it'll be interesting to see what direction Windows and Windows Live go in the coming year or two. Definitely interesting times ahead. 


Categories: Windows Live

Via Mark Baker I found an article in the ACM Queue entitled The Rise and Fall of CORBA by Michi Henning. Lots of good stuff in the article some of which is excerpted below.

the CCM (CORBA Component Model). A specification for CCM was finally published in late 1999 but turned out to be largely a nonevent:

  • The specification was large and complex and much of it had never been implemented, not even as a proof of concept. Reading the document made it clear that CCM was technically immature; sections of it were essentially unimplementable or, if they were implementable, did not provide portability.
  • No commercial CORBA vendor made a commitment to implement CCM, making it a stillborn child.
  • Even if implementations had been available by the time CCM was finally published, it was too late. The horse had already bolted: EJB had become entrenched in the industry to the point where another component technology had no chance of success.

The failure of CCM did little to boost the confidence of CORBA customers, who were still stuck with their complex technology.
What steps should we take to end up with a better standards process and better middleware? Seeing that procedural failures are the root cause of technical failures, I suggest at least the following:

  1. Standards consortia need iron-clad rules to ensure that they standardize existing best practice.
  2. No standard should be approved without a reference implementation.
  3. No standard should be approved without having been used to implement a few projects of realistic complexity.
  4. Open source innovation usually is subject to a Darwinian selection process.
  5. To create quality software, the ability to say “no” is usually far more important than the ability to say “yes.”.

The lessons listed above seem rather self evident and obvious yet it s a sad fact of the software industry that the mistakes of CORBA keep getting made all over again. Core XML technologies like W3C XML Schema and XQuery are 'standards' without a reference implementation which invented new features by committee instead of standardizing best practice. At least one of the guidelines is probably unrealistic though. It is hard to require that a standard shouldn't be approved until it has been used to solve a real-world problem since people solving real-world problems typically don't want to be used as guinea pigs.


Categories: XML Web Services

It seems that during the storm of news and blog posts about Robert Scoble and Bill Gates, I missed a couple of newsworthy events involving my employer. Last week Adobe released a press release entitled Adobe and Microsoft which is excerpted below

Adobe has been in discussions with Microsoft for some time, sharing concerns regarding features and functionality in the upcoming releases of Vista (the next version of Microsoft’s operating system) and Microsoft Office. While much of the press coverage to date has centered on disputes over PDF and XPS (a competitive technology to PDF) in MS Office and Vista, the real issue is the protection of open standards.

Adobe is committed to open standards. Adobe publishes the complete PDF specification and makes it available for free, without restrictions, without royalties, to anyone who cares to use it. Because we license the PDF specification so openly, it has become a de facto standard, used by hundreds of independent software vendors worldwide. No other specification is employed on as many hardware platforms, operating systems and applications as PDF. PDF is incorporated into a number of ISO standards, and Adobe encourages developers, independent software vendors and publishers to support and embrace it. While the specification is available publicly, customers expect Adobe to ensure that the format does not become fragmented and that competing implementations of PDF do not undermine what customers have come to expect in terms of reliable viewing and printing of PDF documents across platforms and browsers.

Microsoft has demonstrated a practice of using its monopoly power to undermine cross platform technologies and constrain innovation that threatens its monopolies. Microsoft’s approach has been to “embrace and extend” standards that do not come from Microsoft. Adobe’s concern is that Microsoft will fragment and possibly degrade existing and established standards, including PDF, while using its monopoly power to introduce Microsoft-controlled alternatives – such as XPS. The long-term impact of this kind of behavior is that consumers are ultimately left with fewer choices.

In response, Microsoft released a press release entitled Statement from Microsoft Concerning Adobe which is excerpted below

Microsoft welcomes Adobe’s reaffirmation that PDF is an open standard, made available for free, without restrictions, without royalties, to anyone who cares to use it. Adobe’s frequently stated commitment to PDF as an open standard was the basis upon which Microsoft decided to include support for saving documents in the PDF format in 2007 Microsoft Office system. Customers running Office have clearly said it would be helpful to be able to easily save documents as PDF files. Microsoft expected that Adobe would applaud, rather than object to, our support for the PDF standard in the most widely used productivity software product.

Adobe has now expressed concern that Microsoft would one day “extend” the PDF specifications. Microsoft has not extended the PDF specifications and has no interest in doing so. Our only interest is to support our customers by making it easy to export Office documents in the standard PDF format so they can be viewed in Adobe Reader and printed. Adobe is a participant in the 2007 Office system beta program and can see for itself that Microsoft has not extended the PDF specifications.

To our knowledge Adobe has not imposed limits on how third parties support the PDF format or differentiate their products through extensions. Nevertheless, Microsoft wishes to confirm that it will not extend the PDF specifications published by Adobe. Microsoft hopes that, with this assurance, Adobe will withdraw its objection to including support for PDF in 2007 Office system.

It looks like the ball is now in Adobe's court. I suspect that there is an additional [unstated] concern that the inclusion of PDF support in Microsoft Office reduces the attractiveness of Adobe's suite of products for generating PDF. It would be probably be hard to take that to court, although I've seen  cases which I thought had less merit go against Microsoft. It'll be interesting to see what the response from Adobe will be on this one.


The Indigo Windows Communication Foundation folks have decided to let the code do the talking in showing that they are serious about supporting Plain Old XML over HTTP (POX) and RESTful Web services. You can download the WCF RSS Toolkit and try it out yourself. If you are like me, you may not have all the requisite beta bits installed to run it, in which case you can peruse the WCF RSS Toolkit Code Samples which show how straightforward it is to produce RSS or Atom using WCF. 

Sam Ruby has asked whether the WCF RSS Toolkit supports ETags which is really a proxy for asking whether WCF supports manipulating HTTP headers directly. In my conversations with WCF folks like Yasser & Doug, the answer is that although the WCF RSS Toolkit doesn't support ETags that this was due to time constraints than any limitations in WCF. The Windows Communications Foundation will support service enpoints directly interacting with HTTP headers and HTTP methods. So one could build a real-world RSS endpoint or even a WebDAV or Atom Publishing Protocol end point with WCF.


Categories: XML Web Services

The Google Blogoscoped blog has an entry entitled An Inside View From a Google Employee summarizes a very in-depth Something Awful discussion board interview with a developer who claims to work at Google and is currently responsible for the Google Calculator project as his current 20% project. Excerpts from the summary are listed below

  • "Nobody keeps track of 20% time with any care whatsoever. It’s assumed that, if a deadline is pressing on your main project, you’ll work on that. If your main project constantly has looming deadlines, it’s time to talk to your manager or your tech lead and tell them that they’re pushing too hard.” Zorba adds that management understands that a programmer can’t be pushed over limits for more than a week at a time.

    And: “At Google, the managers and tech leads assume that programmers can manage their own time. If a programmer can’t manage their own time they’re probably not a good fit at Google anyway."

  • ZorbaTHut says that Google is mostly C++, Java, and Python (or so he’s been told).
  • On how Google goes about staffing a Test Engineer position, Zorba replies: "I don’t know what other teams are like, but on my team everyone owns their own tests and handles their own quality."

  • Zorba: "[W]e have one monolithic source control system across the entire company. This lets us link in handy libraries from other projects, and is honestly one of the coolest things about working here – if there’s something common you want, chances are good it’s already been written."

  • ZorbaTHut tells us he was assigned on Google Desktop first but didn’t like that much, so he was allowed to switch to working on Google Video. "I actually worked on some neat stuff on Google Video, all of which got cancelled before release. I unfortunately can’t tell you what it was."
  • On what kind of info Google employees are allowed to share:
    "If we haven’t announced it publicly, and it’s a project or a coming feature or anything more financially interesting than ’what color are your carpets’, don’t talk about it. End of story".

  • "The company’s structure, at least for engineers, is amazingly flat."
    Zorba says the Google hierarchy is just five levels: Programmer - Tech lead - Manager - Department lead - Larry/Sergey/Eric. Google just assumes their workers are competent, Zorba adds.

A lot of this jibes with stuff I've heard from about working at Google from Google employees or second hand from friends of employees. Thus I assume the interviewee is legit and is either an employee or someone with a contact inside the company. If he is an employee, he's probably going to get fired for this if Google's past actions are any indication.


The has a blog post entitled Is Meta Better? where he writes

Let me start with Digg. It is a proven model.  It works. When we funded delicious, Digg was about half the users and traffic of delicious. They are not the same service, but the delicious popular page and Digg are both places you can go see what's "hot" on the Internet. Since that time, Digg has grown to 1.3mm unique visitors a month compared to only 350k for delicious. These are Comscore Media Metrix numbers. Clearly Digg has a more mainstream user experience. Further, Digg's audience has doubled in the past three months, so it's growing fast.

But let's put this in perspective. Digg's reach (UVs) puts it 735th on Media Metrix' top 1000 sites list, between upromise and taleo. So in the grand scheme of things Digg isn't necessarily the next big thing on the Internet.

I find it surprising that even with the clout of Yahoo! behind it, del.icio.us sees such a relatively small amount of unique users a month. I guess this goes back to the 53,651 meme. I often see people at work using del.icio.us and Digg as examples that a feature or idea is sound but it is clear that these services aren't really popular enough to draw such conclusions.

By the way, given that RSS Bandit has seen over 250,000 downloads this year it looks like we'll soon be eligible to be purchased by Yahoo!. If so, I promise we'll be cheaper than del.icio.us . ;)

PS: Before I get any weird mail, the last comment is a joke. RSS Bandit is BSD licensed so you don't need to pay me us money to do anything you like with it.