I just got a comment to my previous blog post which pointed out that it's been a long time since the last release of RSS Bandit and asked whether development has stopped. Torsten and I are still hard at work on the project but development has been slow because this is a side project for both of us which we only get to work on when we have free time. Anyway here's a general status update for the next release which is currently codenamed Jubilee.

Completed Features

Features in progress

  • Podcasting support - Think of it as adding the most useful features of Doppler Radio or Juice Receiver to RSS Bandit.
  • Revamping the search feature - We're moving the implementation of feed search to Lucene.Net from our custom feed search implementation which should make it faster and provide richer search options
  • Remembering application state on restart - This will work similar to the Session Saver extension in Firefox in that open tabs and the tree view state will be remembered on restart

Major problems to fix

Postponed features

As far as dates go, the only thing I will commit to is that we will have a release this year. I expect that we will be ready to provide a beta release by the end of October or early November at the latest with a final release in time for the holiday season.

Categories: RSS Bandit

Via Jeremy Zawodny I noticed that Yahoo! has finally launched their Browser Based Authentication (BBAuth) system which they announced at ETech earlier this year. What does BBAuth do?

To use BBAuth, you'll need to do the following:

  1. Register your application

    First you need to register your application with Yahoo!. The process requires that you describe what your application does, provide contact information, set your application's endpoint URL, and select the Yahoo! services to which your application needs access. Some services may divide their API calls into subsets, or scopes. For example, a service might group its read-only methods into a single scope.

    When you complete registration, Yahoo! provides you with an application ID and shared secret for making authenticated service calls.

  2. Log in your users

    Your application cannot access a user's personal data until the user grants your application limited access to their data. To do this you must direct your users to a specialized Yahoo! login page. Once the user enters their Yahoo! user ID and password, Yahoo! displays a Terms of Service page and lists the data which your application may access. If the user grants your application access, Yahoo! redirects the user to your site. The redirect URL contains a token that you use to retrieve the user's credentials.

  3. Use the user's credentials to make web service calls

    Now that you have the user's token, you can use it to retrieve an auth cookie and a WSSID, which together represent the user's credentials. The user's credentials last for one hour, and you must supply them for each authenticated web service call.

This is very similar to Google Account Authentication Proxy for Web-Based Applications. However Yahoo! doesn't seem to have a good story for desktop applications that want to use their APIs on behalf of a user (e.g. a desktop photo management application that wants to upload photos to a users Yahoo! Photos account). On the other hand, Google's authentication system for developers actually does cover the desktop case with Account Authentication for Installed Applications which even goes as far as incorporating CAPTCHAs which the desktop app needs to show to the user as they log them in. The only problem is that unlike the Web case, the desktop application actually collects the username and password which I've already mentioned is a big no-no. However the alternatives have trade offs which I can't blame the Google folks for rejecting. I still can't come up with a solution to this problem that I am 100% comfortable with.

Props to the folks at Google and Yahoo! for opening up their systems in this way. One thing I definitely don't like is that both Google via Google Account Authentication and Yahoo! va BBAuth have shipping code that allows developers to authenticate users that use their services while at Microsoft we're still just talking about it. We need to up our game.


September 30, 2006
@ 05:18 AM

Adam Barr has a blog post entitled Trying to Grok Windows Live where he writes

At the Company Meeting last week, Ray Ozzie stood up and gave a very nice, very inspiring speech about how we have to shift the company to Live (Windows Live, Office Live, etc). He spoke without slides or notes and it's obviously something he cares a lot about and has thought a lot about. I'm entirely convinced that he has a great vision of the future in his mind.

The only problem is, I really don't know what he is talking about.

I'm fully prepared to believe it's because I'm too dense to understand. But when he talks about "betting the company on Windows Live", what does that mean? How does Windows become a service? I understand that there are things we need to do in order to make the Internet a platform; back in 2000 I wrote that I thought that's what .Net was. But I don't see how this involves changing Windows in some fundamental way.

This isn't the first time I've heard someone from Microsoft say they don't understand what Ray Ozzie is talking about when he talks about "Live" software. I feel such a disconnect when I hear this because when I read Ray's "Internet Services Disruption Memo, I was like "Duh" so it is difficult to understand the perspective of people who don't appreciate the power of the Web.

From my perspective, Ray Ozzie's memo and his various speeches have one simple message

  1. The Web has fundamentally changed the face of computing.
  2. The Web is here to stay.
  3. The world's largest software company has to adapt to this reality
A good analogy for understanding what it means for software to embrace the Web is to compare an application like WinAmp 3.0 which plays music on your hard drive or from CD to iTunes 7.0 which plays music on your hard drive or from CD and can be used to purchase music from an online store and can be used to subscribe to podcasts on the Web. One doesn't have to resort to "creating an AJAX version of WinAmp" or whatever other straw man argument usually comes up in this context to turn a desktop MP3 player into "Live" software. iTunes shows that.

What Microsoft needs to do is repeat that lesson across all of its products and think about how they can embrace the Web instead of simply reacting to it or barely acknowledging its existence.


September 30, 2006
@ 12:16 AM

Lately I find that the stories I have been writing turn out not to be suitable for publication. It makes me kind of sad, because I've written a few things recently that I think are actually really good, but I haven't published them here, because if I did, there would be people who would never speak to me again. Either people who are too close to the stories to think they're funny, or people who are too far away from them to think they're funny.

I think maybe the problem is that I really didn't write them well enough at all: if I'd done my job, then everyone reading them would understand why they were funny. If it only makes sense to people who think like me, then I haven't done my job, right?

Jamie Zawinski

A few days ago I wrote a blog post entitled Leaving MSFT in Five Years: Year One which was meant to be a follow up to a blog post I wrote a year ago entitled On Moving On From Microsoft in 5 Years. After writing it, I realized I didn't have the stomach to deal with whatever comments or emails I got about the post whether they were good or bad. Just writing the blog post was cathartic even though I never published it and probably never will.

However this afternoon, I saw a blog post Rebuilding Microsoft in Wired Magazine on the Mini-Microsoft blog which talks about the winds of change at Microsoft. I felt drawn to comment even if my comment is just that I like the changes that have been occuring at Microsoft over the past year and I like having leadership like Ray Ozzie, Steven Sinofsky and Chris Jones running Windows Live.

Have a good weekend. See you at Chuck-E-Cheese's. :)


Categories: Life in the B0rg Cube

September 28, 2006
@ 06:05 PM
Steve Yegge, who works at Google, has a blog post entitled Good Agile, Bad Agile which has a lot of really interesting bits. The first is his take on the origin of Extreme Programming where he writes
So some of the consultants began to think: "Hey, if these companies insist on acting like infants, then we should treat them like infants!" And so they did. When a company said "we want features A through Z", the consultants would get these big index cards and write "A" on the first one, "B" on the second one, etc., along with time estimates, and then post them on their wall. Then when the customer wanted to add something, the consultant could point at the wall and say: "OK, boy. Which one of these cards do you want to replace, BOY?"

Is it any wonder Chrysler canceled the project?

So the consultants, now having lost their primary customer, were at a bar one day, and one of them (named L. Ron Hubbard) said: "This nickel-a-line-of-code gig is lame. You know where the real money is at? You start your own religion." And that's how both Extreme Programming and Scientology were born.

The link which explains that Chrysler cancelled the project where a lot of the Extreme Programming and Agile Methodology hype started is on Wikipedia so for all I know that clarification may be gone by the time you read this post. Unfortunately in trying to track down the details in more permanent location all I can find is a USENET thread and more wiki entries. That's pretty interesting, that XP and Agile resulted in a failed software project in the original project where it all started.

There is also some stuff about working at Google where he writes

From a high level, Google's process probably does look like chaos to someone from a more traditional software development company. As a newcomer, some of the things that leap out at you include:

- there are managers, sort of, but most of them code at least half-time, making them more like tech leads.

- developers can switch teams and/or projects any time they want, no questions asked; just say the word and the movers will show up the next day to put you in your new office with your new team.

- Google has a philosophy of not ever telling developers what to work on, and they take it pretty seriously.

- developers are strongly encouraged to spend 20% of their time (and I mean their M-F, 8-5 time, not weekends or personal time) working on whatever they want, as long as it's not their main project.

- there aren't very many meetings. I'd say an average developer attends perhaps 3 meetings a week, including their 1:1 with their lead.

- it's quiet. Engineers are quietly focused on their work, as individuals or sometimes in little groups or 2 to 5.

- there aren't Gantt charts or date-task-owner spreadsheets or any other visible project-management artifacts in evidence, not that I've ever seen.

- even during the relatively rare crunch periods, people still go get lunch and dinner, which are (famously) always free and tasty, and they don't work insane hours unless they want to.

For some reason this reminds me of Malcolm Gladwell's The Talent Myth which is excerpted below

This "talent mind-set" is the new orthodoxy of American management. It is the intellectual justification for why such a high premium is placed on degrees from first-tier business schools, and why the compensation packages for top executives have become so lavish. In the modern corporation, the system is considered only as strong as its stars, and, in the past few years, this message has been preached by consultants and management gurus all over the world. None, however, have spread the word quite so ardently as McKinsey, and, of all its clients, one firm took the talent mind-set closest to heart. It was a company where McKinsey conducted twenty separate projects, where McKinsey's billings topped ten million dollars a year, where a McKinsey director regularly attended board meetings, and where the C.E.O. himself was a former McKinsey partner. The company, of course, was Enron.
"We had these things called Super Saturdays," one former Enron manager recalls. "I'd interview some of these guys who were fresh out of Harvard, and these kids could blow me out of the water. They knew things I'd never heard of." Once at Enron, the top performers were rewarded inordinately, and promoted without regard for seniority or experience. Enron was a star system. "The only thing that differentiates Enron from our competitors is our people, our talent," Lay, Enron's former chairman and C.E.O., told the McKinsey consultants when they came to the company's headquarters, in Houston.
Among the most damning facts about Enron, in the end, was something its managers were proudest of. They had what, in McKinsey terminology, is called an "open market" for hiring. In the open-market system--McKinsey's assault on the very idea of a fixed organization--anyone could apply for any job that he or she wanted, and no manager was allowed to hold anyone back. Poaching was encouraged. When an Enron executive named Kevin Hannon started the company's global broadband unit, he launched what he called Project Quick Hire. A hundred top performers from around the company were invited to the Houston Hyatt to hear Hannon give his pitch. Recruiting booths were set up outside the meeting room. "Hannon had his fifty top performers for the broadband unit by the end of the week," Michaels, Handfield-Jones, and Axelrod write, "and his peers had fifty holes to fill." Nobody, not even the consultants who were paid to think about the Enron culture, seemed worried that those fifty holes might disrupt the functioning of the affected departments, that stability in a firm's existing businesses might be a good thing, that the self-fulfillment of Enron's star employees might possibly be in conflict with the best interests of the firm as a whole.

Interesting juxtaposition, huh? I've talked to people who've come to Microsoft from Google (e.g. Danny Thorpe) and it definitely is as chaotic as it sounds there. For some reason, the description of life at Google by Steve Yegge reminds me a bit of Microsoft where there were two huge money making projects (Office & Windows in the case of Microsoft and AdWords & AdSense in the case of Google) and then a bunch of good to mediocre projects full of smart people dicking around. Over the years I've seen a reduction of the 'smart people dicking around' type projects over here and more focus on shipping code. I suspect that it's just a matter of time before the same thing will happen at Google as investors seek a better return on their investments once they hit their growth limits in the online advertising space.

There's just one more thing that Steve Yegge wrote that I want to comment on, which is

The thing that drives the right behavior at Google, more than anything else, more than all the other things combined, is gratitude. You can't help but want to do your absolute best for Google; you feel like you owe it to them for taking such incredibly good care of you.

I remember interning at Microsoft five years ago and hearing someone say how grateful he was for "the things Microsoft has done for me" and thinking how creepy and cult-like that sounded. A company pays you at worst 'what they think they can get away with' and at best 'what they think you are worth', neither of these should inspire gratitude. Never forget that or else you'll be on the road to heartbreak.


September 27, 2006
@ 08:00 PM

Kevin Briody has an excellent analysis of the recent move by Facebook to branch out beyond the college crowd in his post entitled where he writes

I actually started writing this a few weeks back, when news first broke of Facebook branching out from an exclusive membership model, presumably to take on that Wild West of social networks, MySpace. But given the news that this move is a reality, today, thought I would throw my commentary into the mass that is no doubt being written.

This is a Bad Idea. A classic example of inappropriately twisting a business model to justify investor demands and market expectations.

As I have said before, I love the original Facebook business model. It takes a reasonably cool set of social networking features and a clean UI, and marries it with a hyper-social, hyper-active, local, offline set of communities, i.e. college students clustered on their real-world campuses.
For that community, Facebook didn’t force them to separate their social interaction between online and offline - it married the two in a nearly seamless manner.

The site became a way of life for US college students, and even faculty, with use and stickiness numbers that would make most Web-based businesses drool. Facebook nailed the campus social networking experience and achieved fantastic audience penetration, and needed to take the next step.

That next step should have been development of their monetization strategy (deeply targeted advertising for US college students). Focusing on revenue and profit, while continuing to enhance the user experience of their core market.

I agree 100% with what Kevin has written. The Facebook folks have a lock on a very lucrative audience and should be spending cycles figuring out how to (i) keep this audience happy and (ii) monetize such a juicy demographic instead of trying to justify their billion dollar valuation by going up against the MySpaces and Friendsters of the world. Now they have to deal with the potential backlash from their core customer basse as well as the fragmentation of their user base. These are both tough problems to deal with if they crop up.

I suspect the best thing that could happen is for this to fizzle like the move to open up the site to corporations. Otherwise, things could get ugly. I wish them luck, especially now that I know at least one person who works there.


Leah Pearlmann has a blog post entitled The Final Chapter: Messenger + Yahoo which announces

And this month, this chapter of the story comes to a close. ANYONE using the latest version of Windows Live Messenger or Yahoo! Messenger (in most countries) will be able to add friends, send messages and select emoticons with those from either network like crazy – and we encourage you to do so!


People should be able to reach all their friends and family using just one IM service. Students should not have to use two IM services. NO ONE should have to give up watching American Idol for any reason.

Moral of the story: Windows Live and Yahoo! Messenger, holding hands to make the world a happier, better connected, Idol-istic place.

I've been taking a look at some of back end of how Yahoo! Messenger and Windows Live interop works as part getting my intern on how our platform works. I've been impressed by how smoothly this has been implemented as well as how some of the user interface complexities have been handled (e.g. what happens when you add a buddy who uses the same email address on both IM networks).

Kudos to Kitty and the rest of the team for getting this out of beta and bringing the dream of complete interoperability across the major IM networks closer to really.


Categories: Windows Live

September 27, 2006
@ 02:27 AM

Via Nicole's post on the Messenger Says blog entitled Up on a Soapbox I found out that videos beta users (like me) post on MSN Soapbox can be viewed by folks who haven't been invited to the service. I posted my friend Ikechukwu's rap video up there. You can compare the video viewing experience of MSN Soapbox to Youtube by watching the video on both sites, check it out

  1. My name is... by Ikechukwu on MSN Soapbox

  2. My name is... by Ikechukwu on Youtube

I was expecting an AJAX site but was surprised to see how much Flash is used instead. I'm still trying out the features of the site but so far it looks good for a beta.

Categories: MSN

September 26, 2006
@ 10:03 PM

Mike Arrington has a blog post entitled Microsoft Spinoff Wallop Launches where he writes

Wallop, previously a semi-forgotton Microsoft Research “sandbox” social network and photo sharing project, was spun off into a new, independent, venture backed business earlier this year (details here). Tonight at 9 pm California time, Wallop is launching a semi-public beta.

Wallop is a Flash based social network that will compete with Myspace, Facebook and others that I mentioned in a post yesterday. It includes free unlimited storage for people to upload photos, videos and music.

Unlike the other social networks, Wallop CEO Karl Jacob says he has no plans to ever put advertising on the site. It just lessens the user experience, he says. Instead, Wallop wants a piece of the $3 trillion per year U.S. market for self expression items (clothes, furniture, beauty supplies, etc.). As sites like Cyworld have shown, people are willing to spend money for online expression items, too (Cyworld brings in a reported $300,000 per day in microtransactions to its users).

So Wallop has created a marketplace for “self expression” items on the site. Flash developers can create items and sell them to users. Music clips, animated widgets, artwork, avatars, clothing for avatars, etc. will all be for sale. Wallop handles payments and DRM, and takes 30% of the sale price. The rest goes to the seller.

This is an interesting business model and one I remember being mentioned by Ze Frank a few years ago in a presentation he gave to the Wallop team when the site was still part of Lili Cheng's Social Computing Group at Microsoft Research. This business model has been shown to work for various online services including QQ, Cyworld and Second Life. I also wonder what would have happened if MySpace had started off charging for "personal expression" content. Imagine if it cost a $0.50 to add a widget to your MySpace page or $0.25 to change your theme? It sounds ridiculous but so does the cell-phone ringtone market turning into a multibillion dollar industry. The only problem is figuring out how to deal with microtransactions...perhaps if it is tied to to a prepaid card instead? Anyway, enough speculation.

I do find the quote "$3 trillion per year self expression market" an amusing stretch though. It's like starting a taco stand and caling it an attempt to grab a piece of the trillion dollar food service industry. Anyway, I'm glad to see that Wallop is going to continue, it was a very innovative Social Network service even two years ago and it looks like it is in good hands now. 

PS: Is it me or did TechCrunch just switch to partial feeds? That sucks.


Categories: Social Software

September 26, 2006
@ 06:44 PM
A: Very. If you've upgraded to iTunes 7 and now have regular problems with the application such as dIsTORted soUnD, you should read the article Apple Support docs address some iTunes 7 bugs which shows how to get around some of the more egregious bugs in this release.

Via Greg Linden's blog post entitled R.I.P. Froogle? I found out the CBS MarketWatch article entitled Google's latest could be aimed at eBay listings which informs us that

In a report for Bear Stearns clients, analyst Robert Peck described a new feature that's based on Google Base, a feature Google launched last October that lets people freely list items for sale.

Simultaneously, Google intends to "de-emphasize" its own Froogle shopping search engine, a Web site featuring paid listings from eBay and other online retailers. Google intends for Froogle to no longer be a standalone Web site; instead its listings would be absorbed by other search features, Peck wrote in his report.

There are a number of things I find interesting about this decision [if it is true]. The first point of interest is that this is another step by Google to move from a world where they crawl the Web to where content is submitted to them to be added to their search index directly. This furthers the trend started by offerings such as Google Webmaster tools (formerly Google Sitemaps) and Google Base. Another point of interest is that it seems Google considers product search to not be its own vertical but instead something that should be included automatically in search results via Instant Answers-type functionality (e.g. search for "movies 98052" exposes entry point into movie search page).

Finally, it looks like this is will be the first instance of Google killing a product that was out of beta highlighted on their main page. What product do you think they should kill next? Here's my list of top 3 Google services that should be sent to the product grave yard

  1. Google Reader: I remember how scared people were when this service first debutted, however it's slow and unintuitive UI has made it unusable by anyone except die hard Google fans. It's a testament to its crappiness that it doesn't even make the top 20 list of aggregators used by TechCrunch readers which means that even the early adopter crowd is shunning it.

  2. Google Video: Am I the only one that thinks that this entire service should be replaced with a "site:www.youtube.com" based search similar to what they've done with http://www.google.com/microsoft? The site has a decent search engine but almost every other part of the video sharing experience on the service is subpar. Then again, Youtube has set the bar very high.

  3. Orkut: I was talking with a fellow Microsoft employee last week about the fact that when it comes to community sites, it takes more than features for a site to become popular, it takes people. Sites like Facebook, MySpace and even Friendster managed to be chosen by the right set of influencers and connectors to make them hit critical mass. This never happened with Orkut and it never will [except in Brazil]. My suggestion would be to fold the features of Orkut into Blogger, perhaps as a new service as the SixApart folks have done with Vox (aka LiveJournal + TypePad)

That's my list. I'm sure y'all have reasons to agree or disagree, holla at me in the comments. Also, turn about is fair play so if you want to create a list of services you think Yahoo! and Microsoft should kill for similar reasons I'd definitely find it an interesting read.


Cesar Menendez has a blog post entitled Zune and DRM (or "My Bad; I mis-Blogged") where he addresses some of the concerns around the Wi-Fi sharing features of the Zune. He writes

I misspoke (mis-blogged) on last week’s post. We don’t actually “wrap all songs up in DRM:” Zune to Zune Sharing doesn’t change the DRM on a song, and it doesn’t impose DRM restrictions on any files that are unprotected. If you have a song - say that you got “free and clear” - Zune to Zune Sharing won’t apply any DRM to that song. The 3-day/3-play limitation is built into the device, and it only applies on the Zune device: when you receive a song in your Inbox, the file remains unchanged. After 3 plays or 3 days, you can no longer play the song; however, you can still see a listing of the songs with the associated metadata.

So, to answer the direct question, Zune doesn’t have “viral DRM.” And mea culpa on telling everyone that we impose DRM.

In reading this, it seems that although Cesar has clarified the implementation the behavior [to end users] is still the same whether the music files are wrapped in DRM or the Zune knows that any song it gets over Wi-Fi can no longer be played 3 plays or 3 days without having to alter the files. I'm curious to see what the answers are to some of the questions asked by Joshua O'Madadhain about the 3 play/3 day feature since this is currently the most interesting feature of the device.

PS: I finally got to play with a Zune device at work and I like what they've done with album art in the music experience. The wider screen for watching videos is also a nice touch. I did have some difficulty with the controls because I kept trying to treat the D-pad as a scroll wheel due to my over-familiarity with the iPod. Check out the videos of playing music and videos on the Zune and Zune to Zune music sharing on Youtube if you want to see what it's like.


Categories: Music

Julien Couvreur has a blog post entitled Cross-document messaging hack where he writes

The Dojo and Windows Live Platform teams have both recently released DHTML hacks that allow two iframes in different domains to communicate, bypassing the notorious same-domain policy implemented in browsers. I'm surprised by the relative lack of response in the AJAX blogosphere, as this opens lots of possibilities for mashups.

The basics:
The hack relies on dynamically created iframes, using the fragment identifier to leak/communicate information to the other domain and timers to check for iframe changes.

For example, if you have page A containing an iframe B in a different domain, then B can create a new iframe and load it with a url in the same domain as A. The url that is loaded doesn't generate a request to the server if it is properly cached and only the fragment identifier is used to pass changing information. Page A can now get the DOM handle on the new iframe and successfully retrieve the information transmitted in the url by B.

Although the hack goes around the same domain policy, you should realize that it does not constitute a significant security threat, as it requires both frames to cooperate. Additionally, this mechanism allows for control of which domains can work together.
The applications:
Windows Live goes into a more specific proof of concept, with the Windows Live Contacts Gadget, an embeddable contact picker. It explores the problem of cross-domain interactions deeper than the Dojo work, specifically around authentication, access control and privacy.

Like Julien, I'm surprised that there hasn't been more discussion about this technique in the AJAX blogs. I first learned about this technique from Yaron Goland while he was working with Danny Thorpe and others on the Windows Live Contacts Gadget. With this technique I can embed a widget gadget hosted on my domain on a page from another domain and then later on exchange data or otherwise communicate between the widget gadget and the hosting page.

This is how the Windows Live Contacts Gadget allows you to embed a control that opens a portal to a user's Hotmail address book and then communicates the contacts the user has picked back to the hosting page. It's a really sweet hack.


Categories: Web Development

September 21, 2006
@ 04:54 PM
It looks like Kurt, Samir and the rest of the Windows Live Expo team has been busy the past couple of months. From the blog post entitled on their team blog we learn

The team has spent the past 2 months working on features that were either gathered from end user feedback or were part of our long-term roadmap, so we are excited to share our work with you. As part of this update we wanted to highlight the following new features:

Integrated payment service:  Paypal’s 150 million registered users can now easily reference their account in order to complete secure person-to-person transactions on Windows Live Expo.  Buyers can purchase items from sellers on Expo with a credit card thru Paypal or using their Paypal debit accounts. Additionally, sellers can specify their preferred method of shipping and declare the cost for doing so.

 New high quality job listings: Expo now allows users to search and browse thousands of local and national job listings which are supplied by our partner CareerBuilder.

 Featured ads: The new featured ads area (provided by AdMission) allows you to generate a lot more interest in your listing by offering a fun, rich media experience that highlights your classified listing. The featured ads module will initially appear in the real estate and autos sections (example).

I chatted with Samir about the addition of integrated payments and a job listing service a few weeks which led an interesting line of thinking on my part. Besides identity, the most important pillar of social software is reputation. In Windows Live, we are building all these notions of a user's reputation which don't really overlap but tell you more about the user. For example, a user who Hotmail considers a spammer (i.e. has a bad reputation as an email user) may also be an awesome seller on Expo to whoever responds to his V1@gr@ spam (i.e. has a good reputation as a seller). Then there are the various notions of expertise being built up in Windows Live QnA. A person who is great at answering questions about Marvel and DC Comics may suck at answering other kinds of questions. How should all these aspects of a users reputation be represented in our various services? Should they be unified in some way? Is it interesting to be able to click on my profile and get an overview of all aspects of my reputation in Windows Live? Do we need a Reputation Metasystem to go along with the Identity Metasystem so we can enable federated/interoperable reputation systems?

Anyway, I digress. Check out Windows Live Expo, the newest changes to site make it an even more compelling service than before.


Categories: Windows Live

September 21, 2006
@ 01:02 PM

A couple of days ago, I mentioned that I'd like to talk to folks at startups working on gadgets widgets. Since then a couple of folks have expressed interest in the idea.

In his post WidgetCon Om Malik writes

Dare wants to talk to widget creators. I think it is a great idea. I am happy to host Dare in SF, and perhaps we can put together an informal event to talk widgets. You know I love that stuff. Niall, say what? Anyway else wants to jump in and play along, please do. Meebo & Rock U team…. what do you think?

The folks from Meebo and RockYou both expressed interest in a comments to Om's post.

Marc Canter also jumps in with a post entitled Widgetcon where he writes
Om likes the fact that Dare wants to talk to startups about widgets.  He even thinks there should be a conference.
We’re watching these three kinds of constituents all use the same technology - and try and shoehorn their technology and business models into them.  Whether they’re called Konfabulators, widgets, gadgets, modules, blog objects - it really doesn’t matter.

It’s happening, it’s all good and we’d love to attend any sort of event around this.

I know my friends at AOL would love to attend too - and if I were a betting man, I’d say Yahoo would be on-board, as well as NetVibes and Pageflakes.

Now the question is “can we get Google to show up at such an affair?”

THis would be a PUBLIC event - right dudes?  None of this clique shit - right?

Maybe we can even get Microsoft to pay for some Alaskan King Crab legs - like the old days?

I've pinged some folks at work about this and I'm sure there'll be a couple of heads from Microsoft who'd be down with attending. I'm not from the area so I'd suck at organizing something like this from Seattle so I'll just follow Marc and Om's lead on this. I'll also ping some of our developer marketing folks to see if we can spring for food if enough people are down with attending.

To make this "Web 2.0", maybe someone should create an attendee list wiki. ;)


Categories: Web Development

September 19, 2006
@ 07:56 PM

A number of recent events in the digital music space has made me start coming around to Cory Doctorow's way of thinking on DRM. Specifically, I've been debating on whether to get a Zune as my next digital music player once I'm done with my current music player. One of the issues that has come to mind is highlighted in Charles Miller's post entitled The greatest trick where he states

Meanwhile, once you’ve started buying music on iTunes, unless you start illegally breaking the DRM locks, your next DAP is going to have to be an iPod, and the one after, and the one after.

Remember when the iTunes Music Store was launched, and Apple’s public line on FairPlay was: “Yes, it’s DRM, but we fought so hard with the recording industry to make sure we can let you burn CDs and play music on multiple devices!”

The greatest trick Apple pulled was to build a market where lock-in is mandated, but convince the world that this was something they did reluctantly, at the behest of the villainous recording industry.

Like most iPod users, I don't have a ton of music that was purchased from the iTunes music store but I still don't want to end up losing that music once I switch devices. Thanks to proprietary DRM, a portion of my music library is forever tied to Apple's family of digital audio players.

On a related note, I just noticed that Napster is for sale which isn't a good sign. Before this is all over, it is likely that one or more online music services will disappear as a natural effect of competition in the marketplace. In this case, what happens to the music libraries of all the people who have purchased DRMed music from these services? When I buy a CD, I don't have to worry about losing my music if the record label goes out of business. Thanks to DRM, I now have to worry about the long term viability of the company's products before buying music. I now have to make music purchasing decisions based on whether I think iPod/iTunes or Zune/Zune Marketplace will be around in 5 years. That sucks.

I'm definitely not buying DRMed music anymore. Ripping from CDs is the way to go.


Categories: Music

Twice this week I've had someone mention that even though they like Windows Live Local, they can never remember the URL. I have to admit that I sometimes end up typing http://live.local.com instead of http://local.live.com. It wasn't until this morning that I remembered that there is an easier to remember URL for accessing the site


Brilliant. Now if only we could change the product name to Windows Live Maps. After all, Google renamed Google Local to Google Maps because of end user confusion. Anyway, kudos to the team for building such an awesome site. I've been playing with the recently released people search feature and I it's pretty sweet. This continues to be my favorite Windows Live service.


Categories: Windows Live

September 19, 2006
@ 01:40 PM

From the press release entitled MSN Launches Beta of Soapbox on MSN Video we learn

REDMOND, Wash. — Sept. 18, 2006 — MSN today announced the U.S. beta release of Soapbox on MSN® Video, a user-uploaded video service that makes it easy for people to express themselves by uploading, discovering and sharing personal videos with the Soapbox community and others around the world. Soapbox will be available on MSN Video and will be deeply integrated throughout Microsoft Corp.’s portfolio of online services, including Windows Live™ Spaces and Windows Live Messenger.

“Soapbox delivers on a critical component of the MSN growth strategy of deepening audience engagement by enabling people to participate in the content experience,” said Rob Bennett, general manager of Entertainment and Video Services for MSN. “By adding a user-uploaded video service, we are rounding out our existing investments in commercially produced and original content on MSN Video.”

The beta of Soapbox on MSN Video is available on an invitation-only basis in the U.S. Those interested in participating in the beta can sign up for the waiting list now at http://soapbox.msn.com. Access to the beta will expand over time by enabling existing beta testers to invite a limited number of friends.

I'm on the invite list for the beta but I haven't tried out the site yet. However there is a brief overview of the site at TechCrunch in the post Microsoft SoapBox Just Launched by Mike Arrington. He writes

Om Malik says, via a commenter, that “Soapbox autodetects your browser + platform and streams WM for IE/Windows users, but Flash for Firefox/Windows and Firefox+Safari on Mac.” LiveSide says videos up to 100 MB in size can be uploaded in AVI, ASF, WMV, MOV, MPEG 1/2/4, 3GPP, DV file formats

I'll try out the service myself later this week and see if I can get any invites to share with folks who are interested in giving it a shot once they give us invites.


Categories: MSN

September 19, 2006
@ 12:04 AM

I saw the following entry entitled Premiere Cancelled on Weird Al Yankovic's MySpace page where he writes

I'm very sorry to say that the AOL "First View" Premiere of the "White & Nerdy" video has been cancelled.

Apparently, the video has already leaked online, and AOL doesn't feel comfortable doing a "World Premiere" promotion for a video that a number of people have seen already. (I can understand songs leaking, but a video? How'd THAT happen?)

Anyway, it's really a bummer... it would have been great promotion for the album... but hey, life goes on.

I was just watching the video on YouTube which now seems to have been taken down. It sucks that Weird Al is losing a promotional opportunity because his video leaked onto YouTube. I just might go ahead and pickup this CD as a show of solidarity.

The song is sweet, you can hear it for yourself at http://www.myspace.com/weirdal.


Categories: Music

Niall Kennedy has a blog post entitled Authenticated and private feeds where he writes

Examples of private feeds intended for 1:1 communication include bank balances, e-mail notifications, project status, and the latest bids on that big contract. Data in the wrong hands could be dangerous, and many companies will stay away from the feed syndication space until they feel their users' personal data is secure.

A private feed's data could be exposed in a variety of ways. A desktop aggregator's feed content might be available to other users on the same computer, either through directory access or desktop search. An online aggregator might expose a feed and its content in search results or a preview mode.
A feed publisher could whitelist the user-agents it knows comply with its access policies. SSL encryption might not be a bad idea either as shared aggregation spaces might not store content requested over HTTPS. It would place extra load on the server as each request requires extra processing, but if the alternative is placing your customer's data in the Yahoo! search index then that's not such a bad thing.

I believe large publishers such as Salesforce.com or eBay would produce more feed content if they knew their customers' data was kept private and secure. There's a definite demand for more content transmitted over feed syndication formats but it will take the cooperation and collaboration of security formats and consistent aggregation practices to really move the needle in the right direction.

How to properly support private and authenticated feeds is a big problem which Niall highlights but fails to go into much detail on why it is hard. The main problem is that the sites providing the feed have to be sure that the application consuming the feed is secure. At the end of the day, can Bank of America trust that RSS Bandit or Bloglines is doing a good job of adequately protecting the feed from spyware or malicious hackers?

More importantly, even if they certify these applications in some way how can they verify that the applications are the ones accessing the feed? Niall mentions white listing user agents but those are trivial to spoof. With Web-based readers, one can whitelist their IP range but there isn't a good way to verify that the desktop application accessing your web server is really who the user agent string says it is.

This seems to be yet another example of where Web-based software trumps desktop software.


September 18, 2006
@ 05:20 PM

Via Shelley Powers, I stumbled on a post entitled The Future of White Boy clubs which has the following graphic

Lack of intellectual diversity is one of the reasons I decided to stop attending technology conferences about 'Web 2.0'. I attended the Web 2.0 conference last year and the last two ETechs. After the last ETech, I realized I was seeing the same faces and hearing the same things over and over again. More importantly, I noticed that the demographics of the speaker lists for these conferences don't match the software industry as a whole let alone the users who we are supposed to be building the software for.

There were lots of little bits of ignorance by the speakers and audience which added up in a way that rubbed me wrong. For example, at last year's Web 2.0 conference a lot of people were ignorant of Skype except as 'that startup that got a bunch of money from eBay'. Given that there are a significant amount of foreigners in the U.S. software industry who use Skype to keep in touch with folks back home, it was surprising to see so much ignorance about it at a supposedly leading edge technology conference. The same thing goes for how suprised people were by how teenagers used the Web and computers, then again the demographics of these conferences are skewed towards a younger crowd. There are just as many women using social software such as photo sharing, instant messaging, social networking, etc as men yet you rarely see their perspectives presented at any of these conferences. 

When I think of diversity, I expect diversity of perspectives. People's perspectives are often shaped by their background and experiences. When you have a conference about an industry which is filled with people of diverse backgrounds building software for people of diverse backgrounds, it is a disservice to have the conversation and perspectives be homogenous. The software industry isn't just young white males in their mid-20s to mid-30s not is that the primary demographic of Web users. However if you look at the speaker lists of the various Web 2.0 conferences that seem to show up on a monthly basis (e.g. Office 2.0, The Future of Web Apps, ).

As a service to future conference organizers, I'm going to provide a handy dandy table to help in diversifying your conference. Next time you want to organize a conference and you realize that you've filled it with a bunch of people who look and think just like you, try replacing the names in the left column of this table with those on the right, at the very least it'll make your speaker list look like that of O'Reilly's Web 2.0 conference which not only has people of diverse ethnic backgrounds and gender, but also people with different professional experiences

Mike ArringtonOm Malik
Ben TrottMena Trott
Stewart ButterfieldCaterina Fake
Clay ShirkyDanah Boyd
Fred WilsonVinod Khosla

You get the idea. Diversifying your conference speaker list doesn't mean reducing the quality of speakers as many racist and sexist motherfuckers tend to state whenever this comes up. 

PS: I'm interested in talking to folks at startups that are building micro applications like widgets for MySpace, any idea what a good conference to meet such folks would be?


Categories: Technology

Marshall Kirkpatrick has a blog post entitled Citizendium: a more civilized Wikipedia? where he writes

Wikipedia co-founder Larry Sanger has announced that his new knowledge sharing wiki project called Citizendium will launch at the end of this month or earlier. The defining characteristic of the site is that topic experts will have final, enforceable authority to “resolve” controversy and kick out trolls. Citizendium will be a progressive fork of Wikipedia, allowing its own community to change Wikipedia articles but also offering Wikipedia’s version of those that haven’t been edited in Citizendium. Sanger says the topic experts will function like village elders or college professors - they’ll simply make the wiki a civilized place.

There are definitely problems with Wikipedia, however I don't see how coming up with a defined set of 'experts' will solve some of these problems. My main problem with Wikipedia is that it is quite common for the experts on a particular subject to be dismissed until some verifiable source can be used as a reference, of course the definition of verifiable source is usually mainstream media.  Here are a couple of examples

  1. In a blog post entitled on being notable in Wikipedia Danah Boyd writes

    As the conversation progressed, people started editing my profile. While the earlier profile felt weird, the current profile is downright problematic. There are little mistakes (examples: my name is capitalized; there is an extra 'l' in my middle name; i was born in 1977; my blog is called Apophenia). There are other mistakes because mainstream media wrote something inaccurate and Wikipedia is unable to correct it (examples: i was on Epix not Compuserv and my mother didn't have an account; i was not associated with the people at Friendster; i didn't take the name Boyd immediately after Mattas and it didn't happen right after my mother's divorce; i didn't transfer to MIT - i went to grad school at the MIT Media Lab; i'm not a cultural anthropologist). Then there are also disconcerting framing issues - apparently my notability rests on my presence in mainstream media and i'm a cultural anthropologist because it said so on TV. Good grief.

    Why does mainstream media play such a significant role in the Wikipedia validation process? We know damn well that mainstream media is often wrong. In the midst of this, the reference to my fuzzy hat had to be removed because it couldn't be substantiated by the press and because i didn't wear it on O'Reilly. Of course i didn't wear it on Fox - i was trying to get across to parents, not be myself. As much as i don't think of the hat as core to my identity, i'm very well aware that others do. Hell, just last week, John Seely Brown decided to start his keynote wearing my hat, talking about how the hat is the source of all of my brilliance while i turned beet red and scrunched down in my seat. As embarrassing as that was, it's more embarrassing that Wikipedia is relying on Fox over JSB for authority.

  2. In a blog post entitled Does Wikipedia need to be fixed? Mike Arrington writes

    And I’ve also seen people be attacked for making changes that appear to be factual and correct. The TechCrunch listing on wikipedia has a number of errors. But there is no way in hell I’d ever think about fixing those errors. The wikipedia community has completely intimidated me to the point where making a change to that site is unthinkable.
  3. And finally, from the discussion page for the entry on "Dare Obasanjo"

    Well, Someone may doubt Dare Obasanjo's claim that he is the son of Olusegun Obasanjo. It may seem unduly self-serving and self-aggrandizing to make such a claim. That there is no verification from a reliable independent third party is bothersome. His own blog cannot be considered a reliable source in this case.

The third item above is the one that is amazing to me on a number of levels. I'm impressed by the fact that someone dug up an old blog entry where I talked about my dad running in elections. I'm more impressed that according to Wikipedia, my own blog cannot be considered an authority on who my own father is. Perhaps I should take a picture with him when I see him later this week or will someone claim Photoshop is the culprit and we'll have to wait until he mentions me on CNN or Fox News? 

Wikipedia is going to become more and more of a problem especially now that it seems that search engines such as live.com consider it more authoritative than people's blogs or official websites. Try searching for Tim Bray, Sam Ruby or Dave Winer on Windows Live or MSN and see whether their blogs show up before their Wikipedia entries do. 



Categories: Social Software

A BBC article entitled iPod fans 'shunning iTunes store' states

The Jupiter Research report says that, on average, only 20 of the tracks on an iPod will be from the iTunes shop.

Far more important to iPod owners, said the study, was free music ripped from CDs someone already owned or acquired from file-sharing sites.

The report's authors claimed their findings had profound implications for the future of the online music market.
However, the report into the habits of iPod users reveals that 83% of iPod owners do not buy digital music regularly. The minority, 17%, buy and download music, usually single tracks, at least once per month.

On average, the study reports, only 5% of the music on an iPod will be bought from online music stores. The rest will be from CDs the owner of an MP3 player already has or tracks they have downloaded from file-sharing sites.

This jibes with the anecdotal evidence from my usage of the iPod and that of others I know who own iPods. This means that Apple made the right call by overcharging for the hardware and taking a hit on the price of the music as opposed to a strategy of subsidizing the hardware with the intent of making up the difference from the sale of music from the iTunes Music Store. Someone should send a memo to Jonathan Schwartz (who's suggested that car companies give away cars and make up the difference in subscription services) letting him know that this isn't always a brilliant strategy.

As others have pointed out, people have been buying CDs for about 20 years and only been using iTunes for the past 3 or so years. Thus it is to be expected that people have more music that they've ripped from CD than they got via the iTunes store. Once you throw in all the music have gotten over the years from file sharing networks like Napster, Kazaa & even just network shares in college dorms the percentage of music purchased from the iTunes Music Store on an iPod seems reasonable. It's also quite interesting that the article ends on the following note

Perhaps the only salient characteristic shared by all owners of portable music players was that they were more likely to buy more music - especially CDs.

"Digital music purchasing has not yet fundamentally changed the way in which digital music customers buy music," read the report.

Again, this also jibes with my experience with my iPod as well. I spend a lot more time listening to music from the same device now that I have my iPod. I listen to it while working out, while in the car and while working at my desk. Since I now spend more time listening to music from the same source as opposed to having to haul around CDs from place to place if I want to listen to the same music in my car and at my desk, I consume more music. The portable MP3 player is probably the best thing to happen to the music industry in decades.


Categories: Music

September 14, 2006
@ 07:33 PM

From the Microsoft press release Microsoft’s Zune Delivers Connected Music and Entertainment Experience we learn

The Zune Experience

Available this holiday season in the United States, Zune includes a 30GB digital media player, the Zune Marketplace music service and a foundation for an online community that will enable music fans to discover new music. The Zune device features wireless technology, a built-in FM tuner and a bright, 3-inch screen that allows users to not only show off music, pictures and video, but also to customize the experience with personal pictures or themes to truly make the device their own. Zune comes in three colors: black, brown and white.

Every Zune device creates an opportunity for connection. Wireless Zune-to-Zune sharing lets consumers spontaneously share full-length sample tracks of select songs, homemade recordings, playlists or pictures with friends between Zune devices. Listen to the full track of any song you receive up to three times over three days. If you like a song you hear and want to buy it, you can flag it right on your device and easily purchase it from the Zune Marketplace.

Zune makes it easy to find music you love — whether it’s songs in your existing library or new music from the Zune Marketplace. Easily import your existing music, pictures and videos in many popular formats and browse millions of songs on Zune Marketplace, where you can choose to purchase tracks individually or to buy a Zune Pass subscription to download as many songs as you want for a flat fee.

To get started with great music and videos out of the box, every Zune device is preloaded with content from record labels such as DTS, EMI Music’s Astralwerks Records and Virgin Records, Ninja Tune, Playlouderecordings, Quango Music Group, Sub Pop Records, and V2/Artemis Records.

Nice. The ability to share songs with friends so they can try before they buy is quite nice. I don't know about coming preloaded with music if it's going to be the kind of stuff you see pimped in the blogs of Zune insiders like Cesar Menendez and Richard Winn. What would be sweet, would be getting themed preloaded music (e.g. hip hop, heavy metal, or pretentious emo music preloads). I'd prefer that to a one size fits all approach to preloading music on the devices.

You can also find more information about Zune devices including pictures in Cesar Menendez's blog post entitled Zune Details Revealed.


Categories: Music

September 13, 2006
@ 11:14 PM

According to Mike Arrington over at TechCrunch in the blog post entitled Major Google/Intuit Partnership there has been yet another major distribution/bundling deal between Google and a major software distributor. Mike writes

The Google services will be built into QuickBooks 2007, available this Fall, for U.S. customers only.

I sure hope there’s an easy way to turn this stuff off.

Notes from Analyst call:

Eric Schmidt is talking about embracing the long tail of small businesses on the conference call. Less than half of Quickbooks businesses have an online presence. This will help them get online, he says. Businesses will be able to create an adwords account using pre-filled information from Quickbooks. If the business doesn’t have a website Google will create a notecard page for them. All businesses will be given a $50 credit to start. Google will also create a business listing for businesses for search on Google.com and Google Maps.

Intuit is also integrating Google Desktop (borderline Spyware) into Quickbooks. Thank God this is opt-in…but given that Quicken’s customers are not on average very web savvy, there is a very good chance that many small businesses will opt in without really understanding what they are doing (storing the contents of their hard drive on Google’s servers).

Google has been on a impressive rampage of distribution deals over the past year. It's made deals with AOL, Sun, Adobe, MySpace, Dell and now Intuit to distribute its software and services. This means it'll be even tougher for competitors like Yahoo and Microsoft to gain marketshare from it since it is buying up all the defaults and entry points into search and related services it can find.

A cunning yet expensive strategy. It'll be interesting to see how many more deals they'll make before their done locking up all the defaults they want.


Pete Cashmore has a blog post entitled MySpace: We’ll Crush YouTube where he writes

As if we needed more proof of MySpace’s intolerance of outside development, News Corp. chief operating officer Peter Chernin told investors at an industry conference today that since much of YouTube’s traffic comes from MySpace, it’s time to cut out the middle man. Chernin estimated that around 60-70% of YouTube’s visitors come from MySpace, and as a result he wants to ramp up MySpace Video, giving users less incentive to look elsewhere. But while the 60% figure might not be totally accurate, MySpace is definitely a catalyst for YouTube’s growth - they actually reported a dip in traffic when MySpace temporarily disabled YouTube embeds at the end of 2005 (they were forced to allow them again after a user revolt).

But it’s not just YouTube - Chernin expressed distaste for all the services that are feeding the MySpace beast: “If you look at virtually any Web 2.0 application, whether its YouTube, whether it’s Flickr, whether it’s Photobucket…almost all of them are really driven off the back of MySpace, there’s no reason why we can’t build a parallel business.” While I’m not convinced that Flickr gained success on the back of MySpace, Photobucket almost certainly did - ImageShack isn’t mentioned, but it also owes much of its success to America’s leading social network.

The sentiments indicate a very worrying trend: MySpace has stated its intention to clone the best tools, and Chernin believes that MySpace can equal or better the third party tools with in-house products.

Marshall Kirkpatrick sums things up in a post entitled MySpace: We don’t need Web 2.0 on TechCrunch where he states

To summarize: the COO of News Corp. says that Web 2.0 is leaching traffic off of MySpace, that they can build their own services to compete with any of it and that there’s going to be an increasingly aggresive commercial push on the site. That sounds both dangerously arrogant and like a real validation of fears that MySpace dependency is too risky for outside developers.

Om Malik had a piece in Business 2.0 yesterday titled Suddenly Everything’s Coming Up Widgets, where he said “Everyone’s a winner here: MySpace, because it becomes stickier; YouTube and Slide, because they get the traffic; and the user, because he or she gets it all on one page.” It sounds like MySpace’s owners may not want to play a game where everyone wins.

I find this quite surprising. One of the reasons MySpace is where it is today primarily because they stumbled upon the fact that providing a platform for gadgets/widgets allows for richer end user experiences than opening up APIs for viewing and creating content via Atom/RSS/MetaWeblog API which is what blogging sites have traditionally done when building a platform. To turn on the very developers and partner companies that are improving the user experience of your service seems like the road to folly. It's one thing to provide compting experiences to them and quite another to view them as leeches. At Microsoft, we know that the road to success is by building the best platform not just by building the best or most integrated applications. This is a lesson that history has borne out. 

This should be a blow to all those VC funded startups whose entire business model is building MySpace widgets. Not to worry, they can always switch to writing gadgets for Windows Live Spaces. ;)


I've probably mentioned that in my teenage years I was in a rap group with some friends from high school. Eventually, I became a computer geek and now work at Microsoft. However some of my friends kept at it and some of their friends have as well. Thanks to YouTube, I can now share their music with you

  1. My name is... by Ikechukwu

  2. Delicious by BigLo feat. 2shotz

It's great to see some of my friends living their dream. It's definitely made my day.

By the way, uploading videos to YouTube is ridiculously easy. Any Microsoft competitor in this space will have a hard act to follow. It will be interesting to see if YouTube ends up getting usurped from the #1 spot.


Categories: Music | Personal

From the press release entitled Windows Live Services Reach Key Milestones we learn

REDMOND, Wash. — Sept. 11, 2006 — Microsoft Corp. today announced the release from beta of Live Search and of Live.com in 47 markets worldwide, and final availability of Live Local Search in the U.K. and the U.S. Microsoft also announced that Live Search will now power the Web search capability on MSN®, the company’s media and entertainment portal, attracting more than 465 million unique users worldwide per month.
By using Live.com as their personal search home page, customers can harness the power of Live Search to find, customize and track news, images, video, RSS feeds and blogs across the Web. They can try it at http://www.live.com.

Live Local Search will offer increased availability of bird’s-eye imagery, improved mobile integration and functionality, and other user interface improvements and customization tools.

Additional details can be found on the Live Search and Live Local Search team blogs at http://livesearch.spaces.live.com and http://virtualearth.spaces.live.com, respectively. These services are now available in select international markets, in which feature availability and beta status will vary.

About MSN and Windows Live

MSN attracts more than 465 million unique users worldwide per month. With localized versions available globally in 42 markets and 21 languages, MSN is a world leader in delivering compelling programmed content experiences to consumers and online advertising opportunities to businesses worldwide. Windows Live, a new set of personal Internet services and software, is designed to bring together in one place all the relationships, information and interests people care about most, with enhanced safety and security features across their PC, devices and the Web. MSN and Windows Live will be offered alongside each other as complementary services. Some Windows Live services entered an early beta phase on Nov. 1, 2005; these and future beta updates can be found at http://ideas.live.com. Windows Live is available at http://www.live.com.

MSN is located on the Web at http://www.msn.com.

From the press release it looks like the Windows in Windows Live is silent. It's Live Search and Live Local not Windows Live Search and Windows Live Local. I guess that makes sense since the domain is http://www.live.com. Congratulations to all my friends in Live Search (mad props Sanaz) and Live Local (yaaay Steve Lombardi) now that their products are out of beta.

PS: The bit above highlighted in red is for the folks who may have been confused after reading Marshall Kirkpatrick's post on Techcrunch entitled Live.com leaving beta, replacing MSN search.


Categories: Windows Live

Over the weekend I stumbled on a blog post entitled Sex Baiting Prank on Craigslist Affects Hundreds which contains the following excerpt

On Monday, a Seattle web developer named Jason Fortuny started his own Craigslist experiment. The goal: "Posing as a submissive woman looking for an aggressive dom, how many responses can we get in 24 hours?"

He took the text and photo from a sexually explicit ad (warning: not safe for work) in another area, reposted it to Craigslist Seattle, and waited for the responses to roll in. Like Simon's experiment, the response was immediate. He wrote, "178 responses, with 145 photos of men in various states of undress. Responses include full e-mail addresses (both personal and business addresses), names, and in some cases IM screen names and telephone numbers."

In a staggering move, he then published every single response, unedited and uncensored, with all photos and personal information to Encyclopedia Dramatica (kinda like Wikipedia for web fads and Internet drama). Read the responses (warning: sexually explicit material).

Instantly, commenters on the LiveJournal thread started identifying the men. Dissenters emailed the guys to let them know they were scammed. Several of them were married, which has led to what will likely be the first of many separations. One couple in an open marriage begged that their information be removed, as their religious family and friends weren't aware of their lifestyle. Another spotted a fellow Microsoft employee, based on their e-mail address. And it's really just the beginning, since the major search engines haven't indexed these pages yet. After that, who knows? Divorces, firings, lawsuits, and the assorted hell that come from having your personal sex life listed as the first search result for your name.

The question I've been asking myself from the first moment I saw this story is "What is CraigsList's response going to be?". The blog post indicates that there is a growing trend of people posting requests for romantic liasons on CraigsList only to turn around and embarass all the people who responded by posting their responses on the Web. If this trend continues, it will likely lead to a chilling effect towards using CraigsList as a dating service. The folks at CraigsList must realize this yet I haven't found any official response from them on this issue available online. 

This highlights one of the key problems with social software. When you build software that enables people to interact with strangers, you run the risk of people interacting with strangers who aren't so nice. The practice of griefing in multiplayer games is an example of when human interaction in social software goes awry. Other examples include fraud in eBay transactions, stalkers on social networking sites, con artists on dating sites and spammers in all their various forms. All of these problems make people less likely to use certain online services and may be the death knell of certain websites if they don't figure out how to handle malicious users of the service. 

Different services resort to different mechanisms to prevent griefers, however most of them are preventive. There is little that is or can be done once the malicious act has been committed by the 'griefer'. Given that I work with the teams that produce services that can be harmed by griefers as part of my day job (e.g. Windows Live Spaces and Windows Live Expo) this worries me. What can sites like CraigsList do to prevent people like Jason Fortuny from turning people away from their service because they fear having a negative experience? My gut feel is that Craig Newmark would go a long way in reassuring users of the service if they stepped in and took [legal] action against "griefers". Users feel a lot safer about using the service if they know that someone is looking out for their well-being if something bad happens. Consider it the social software equivalent of a "money back guarantee". 

What do you think?


Categories: Social Software

Joel Spolsky has a blog post entitled Wasabi where he writes

In most deployed servers today, the lowest common denominators are VBScript (on Windows), PHP4, and PHP5 (on Unix). If we try to require anything fancier on the server, we increase our tech support costs dramatically. Even though PHP is available for Windows, it's not preinstalled, and I don't want to pay engineers to help all of our Windows customers install PHP. We could use .NET, but then I'd have to pay engineers to install Mono for all our Unix customers, and the .NET runtime isn't quite ubiquitous on Windows servers.

Since we don't want to program in VBScript or PHP4 or even PHP5 and we certainly don't want to have to port everything to three target platforms, the best solution for us is a custom language that compiles to our target platforms.

Since we are not blub programmers, we like closures, active records, lambdas, embedded SQL a la LINQ, etc. etc. and so those are the kinds of features we put into Wasabi.

And since FogBugz goes back many years and was originally written in VBScript, Wasabi is 100% backwards-compatible with VBScript but includes obvious improvements. """Multiline strings.""" Dim a = 0. And so on.

Most people don't realize that writing a compiler like this is only about 2 months work for one talented person who read the Dragon book. Since the compiler only has one body of code to compile, it is much easier to write. It doesn't have to be a general-purpose compiler. It doesn't have a math library, for example.
That said, there are major drawbacks. The documentation is a little bit thin and disorganized, because we've only documented the diffs to VBScript, not the whole language. Programmers that join Fog Creek might take a little bit longer getting up to speed. Our edit-compile-test loop got slower because there's one more step.

Should you write your own compiler? Maybe, if you're doing something that's different enough from the mainstream and if there's no good off-the-shelf technology for your problem. There's a good chance that the domain you're working in could really use a domain-specific language.

This sounds like one of those things that sounds like a great way to reduce costs and lower productivity at first until you've had to live with this decision for a few years. There are a couple of other drawbacks to consider that Joel doesn't mention in his post either because they haven't had time to occur yet or probably because FogCreek may be a special case due to Joel's reputation.

  1. Recruiting new employees: Getting four years of experience using Java, C# or even Ruby is one thing. On the other hand, who wants to test what the marketability of "4 years of Wasabi experience" is on their resume?

  2. Programming languages and runtimes evolve: My intern started yesterday and he mentioned that he knows Java but not C#. I gave him a link to C# from a Java developer's perspective which was the most comprehensive comparison of both languages I could find. Since that article was written Java 1.5 has added generics, enumerations, boxing of value types and changed the syntax of the for loop. Similarly C# 2.0 has added generics, nullable types and anonymous methods. By C# 3.0 we'll have lambda expressions, type inferencing of local variables and embedded SQL-like query all built into the language.

    Imagine that you rolled your own language because C# or Java didn't have some of the above features (e.g. closures, lambdas, embedded SQL, etc). At what point do you decide that it makes more sense to keep going with your in-house programming language versus participating in the ecosystem of developer tools that exist around these technologies?

  3. Attrition: What happens when your compiler guru who cut his teeth on a twenty year old textbook on compiler theory decides to leave for greener pastures? Who's going to maintain and update your homegrown programming language as the field of software development evolves and customer requirements change?

These are just some of the problems Joel glosses over as he makes the case for rolling your own programming languages. What may have seemed like a good idea once upon a time often may turn out to be a bad decision in hindsight. Only time will tell, if Wasabi becomes one of those stories or not. 


Categories: Programming

I just got an email from J.J. Allaire pointing me to the blog post on the Windows Live Writer plugins blog entitled Windows Live Writer Blog This for RSS Bandit which states

And now comes Blog This for RSS Bandit.

RSS Bandit is a popular feed reader (what are feeds?) which by default can Blog This with w.bloggar (a desktop blogging client) and post to del.icio.us.


Installation is simple albeit manual. Extract the file, highlight the files, then copy and paste them into the RSS Bandit plugins folder: not into the Windows Live Writer plugin folder.

Start RSS Bandit. See something you would like to write about? Right-click on the headline and choose BlogThis using Windows Live Writer.

Windows Live Writer launches with the Select Destination Weblog window where you select which blog to post to. Once selected it takes a moment or two and then there is your screen with the text from the feed’s post:

I just wrote about wanting to write this plugin a few hours ago. I'll probably still write one on my own and replace the w.bloggar plugin in the default install of RSS Bandit with a Windows Live Writer plugin. Perhaps even an installer for existing users who don't want to wait until the next version of RSS Bandit to get this feature? 


Categories: RSS Bandit | Windows Live

In what seems like an interesting bit of corporate tit for tat I noticed the following two announcements this week

In his blog post entitled IronPython 1.0 released today! Jim Hugunin of Microsoft writes

I’m extremely happy to announce that we have released IronPython 1.0 today!

I started work on IronPython almost 3 years ago.  My initial motivation for the project was to understand all of the reports that I read on the web claiming that the Common Language Runtime (CLR) was a terrible platform for Python and other dynamic languages.  I was surprised to read these reports because I knew that the JVM was an acceptable platform for these languages.  About 9 years ago I’d built an implementation of Python that ran on the JVM originally called JPython and later shortened to Jython.  This implementation ran a little slower than the native C-based implementation of Python (CPython), but it was easily fast enough and stable enough for production use – testified to by the large number of Java projects that incorporate Jython today.
The more time I spent working on IronPython and with the CLR, the more excited I became about its potential to finally deliver on the vision of a single common platform for a broad range of languages.
IronPython is about bringing together two worlds.  The key value in IronPython is that it is both a true implementation of Python and is seamlessly integrated with the .NET platform. 

In other news, Tim Bray of Sun Microsystems has a blog post entitled JRuby Love where he writes

Charles Nutter and Thomas Enebo, better known as “The JRuby Guys”, are joining Sun this month. Yes, I helped make this happen, and for once, you’re going to be getting the Sun PR party line, because I wrote most of it.

Jacki DeCoster, one of our PR people, tried to imagine what kinds of questions people would have, and we went from there.

Why is Sun hiring JRuby developers Charles Nutter and Thomas Enebo? · First, they are excellent developers. Technologies like Ruby are getting intense interest from the developer community, and Sun is interested in anything that developers care about. ¶

What will their new role be at Sun? · First, they have to get JRuby to 1.0 and make sure that the major applications are running smoothly and are performant.

Interesting times indeed. My time spent on working with XML has made me appreciate the power of dynamic languages and I'll definitely be givin gIronPython a shot. I've started reading Dive Into Pythonand once I'm done I think my first programming assignment will be to write an IBlogExtension plugin for RSS Bandit that lets you post to your blog using Windows Live Writer.


Categories: Programming

September 7, 2006
@ 05:33 PM

From Omar Shahine's blog post entitled Inline Search for Internet Explorer we learn

This is simply a must have add-in for IE. For those of us that used the FireFox Find feature and were like "OMG", you can now have the same thing in IE. 

You can see in the screen shot below how this works:

[Source: Paul Thurrott's Internet Nexus]

As an Emacs user, I've grown used to having inline search as a feature and often get frustrated when the application I'm using doesn't support its. It's great to see this feature added to Internet Explorer. I just downloaded it and it works great with the most recent beta of Internet Explorer 7. Give it a shot.

By the way, Jeremy Epling and Joshua Allen who both work on the IE team also told me to check out http://www.ieaddons.com if I'm interested in tricking out my Internet Explorer install. I've added the site to my bookmark list and will check it out later today to see if there any other interesting IE extensions I've been missing out on.


While working on the favicon support for RSS Bandit I've been seeing some weird errors where a favicon for a particular website (e.g. Jamie Zawinski's favicon) cause a weird out of memory exception to be thrown when trying to load the image using the FromFile() method of the System.Drawing.Image class

It turns out the problem is spelled out in KB 810109: You receive a "System.OutOfMemoryException" error message when you try to use the Bitmap.FromFile method in the .NET Framework 1.0 which reads

When you try to load an image by using the Bitmap.FromFile method in the Microsoft .NET Framework 1.0, you receive the following error message:
    An unhandle exception of type 'System.OutOfMemoryException' occurred in system.drawing.dll

This problem may occur when you use the Bitmap.FromFile method and one of the following conditions is true:
•    The image file is corrupted.
•    The image file is incomplete.

Note You may experience this problem if your application is trying to use the Bitmap.FromFile method on a file stream that is not finished writing to a file.
•    The image file does not have a valid image format or GDI+ does not support the pixel format of the file.
•    The program does not have permissions to access the image file.
•    The BackgroundImage propery is set directly from the Bitmap.FromFile method.

I'm posting this here so I have a handy pointer to it once I start getting bug reports about this feature not working correctly once we ship Jubilee. This feature definitely does jazz up the look of the application, so far my favorite favicon has been from the Dead 2.0 weblog.


Categories: Programming | RSS Bandit

Mike Arrington of TechCrunch has a blog post entitled Facebook Users Revolt, Facebook Replies where he writes

There has been an overwhelmingly negative public response to Facebook’s launch of two new products yesterday. The products, called News Feed and Mini Feed, allow users to get a quick view of what their friends are up to, including relationship changes, groups joined, pictures uploaded, etc., in a streaming news format. Many tens of thousands of Facebook users are not happy with the changes. Frank Gruber notes that a Facebook group has been formed called “Students Against Facebook News Feed”. A commenter in our previous post said the group was closing in on 100,000 members as of 9:33 PM PST, less than a day after the new features were launched. There are rumors of hundreds of other Facebook groups calling for a removal of the new features.

A site calling to boycott Facebook on September 12 has also been put up, as well as a petition to have the features removed. Other sites are popping up as well. There seems to be no counterbalancing group or groups in favor of the changes.

Facebook founder and CEO Mark Zuckerberg has responded personally, saying “Calm down. Breathe. We hear you.” and “We didn’t take away any privacy options.”

I gave the new features a thumbs up yesterday and stick by my review. No new information is being made available about users. Facebook privacy settings remain in their previous state, meaning you can have your information available throughout the network or just among your closest friends. Don’t want a particular piece of information to be syndicated out even to them? Remove any single piece of data by simply clicking the “x” button next to it and it will not appear in the news feed.

If this feature had been part Facebook since the beginning, their users would be screaming if Facebook tried to remove it. It’s a powerful way to quickly get lots of information about people you care about, with easy settings to remove that information for privacy reasons. No one can see anything that they couldn’t see yesterday. It’s just being distributed more efficiently.

I agree that the main problem with the feature is that it is “new” as opposed to any privacy implications. We’ve faced similar problems when designing some of the features of http://spaces.live.com and my advice to the Facebook team would be that it may be better to allow people to opt out of being in feeds than to argue with users about whether it is a privacy violation or not.

That’s a battle that they are not likely to win. Better to be seen as respecting your users wishes as opposed to being paternalistic overlords who think they know what's best for them. Don't make the same mistake Friendster made with fakesters.


I just read a blog post by Evan Williams, founder of Blogger entitled Pageviews are Obsolete where he writes

But it's this pageviews part that I think needs to be more seriously questioned. (This is not an argument that Blogger is as popular as MySpace—it's not.) Pageview counts are as suseptible as hit counts to site design decisions that have nothing to do with actual usage. As Mike Davidson brilliantly analyzed in April, part of the reason MySpace drives such an amazing number of pageviews is because their site design is so terrible.

As Mike writes: "Here's a sobering thought: If the operators of MySpace cleaned up the site and followed modern interface and web application principles tomorrow, here's what the graph would look like:"

Mike assumes a certain amount of Ajax would be involved in this more-modern MySpace interface, which is part of the reason for the pageview drop. And, as the Kiko guys wrote in their eBay posting, their pageview numbers were misleading because the site was built with Ajax. (Note: It's really easy to track Ajax actions in Google Analytics for your own edification.)

I've seen a lot of people repeat these claims about MySpace's poor design leading to increased page views. After taking a glance at the average number of page views per user on Alexa for MySpace (38.4 pageviews a day) and comparing it with competing sites such as FaceBook (28.2 pageviews a day), Bebo (31 pageviews a day) and Orkut (38.6 pageviews a day), their numbers don't seem out of the ordinary to me especially if you factor in the sites popularity.

Recently my girlfriend created a MySpace profile and a space on Windows Live Spaces which led me to consider the differences between how both sites are organized. After talking to her for a while about her experiences on both sites it became clear to me that there were fundamental differences in how the sites were expected to be used. Windows Live Spaces concentrates a lot on content creation and sharing that content with people you know (primarily your Windows Live Messenger buddies). On the other hand, MySpace is organized a lot around getting you to "people watch" and explore different user profiles and spaces. Comparing the experience after signing into both services is illuminating.

Anyway, the key observation here is that social networking sites such as MySpace are page view generating engines. Whereas blogging sites such as Blogger and to a lesser extent Windows Live Spaces are less about encouraging people to browse and explore other users on the site and are more about a single user creating content or other users consuming content from a single user. Go ahead and compare both of my girlfriend's spaces and see which one encourages you to click on other users more and which one is more about the owner of the site sharing their [written or digital media] content with you. 

Think about that the next time you hear someone say MySpace gets a lot of page views because they don't use AJAX.


September 5, 2006
@ 10:05 PM

From the press release entitled Industry Testing of Windows Vista Release Candidate 1 Begins we learn

Microsoft Announces Estimated Retail Pricing for All Windows Vista Editions

With Windows XP, customers often had to make tradeoffs in features and functionality as the Windows XP editions were aligned with specific hardware types. With Windows Vista, customers now have the ability to make choices between editions based on the valuable features they desire, which are now available as standard features of mainstream editions. For example, 64-bit support and Tablet PC and touch technology are standard features of the Home Premium and Business editions.

Pricing information for all Windows Vista editions is available online, along with additional information on the various editions of Windows Vista.

It looks like my next choice of operating system will have a suggested retail price for full package product of $399.00 and a suggested upgrade retail price of $259.00. Given that I'm running Windows Server 2003 at home it looks like I'll be paying the higher price. 


Categories: Technology

Gabe Rivera, author of Techmeme, has a blog post entitled Why I don't offer a personal filter where he writes

I'm facing another round of inquiries on personal filtering, mostly from Techmeme fans who've read Ross Mayfield's or Dare Obasanjo'sJeff Clavier and Ted Leung nearly a year ago!) recent thoughts on the matter. (Just for the record, the first round included requests from

Why don't I offer a personal filter service aka "meMeme" aka "my.memeorandum"? Briefly, filters based on the editorial approach used for Techmeme/memeorandum don't work well outside of a few topic domains (like politics and tech), because cross linking is typically too sparse to produce a compelling mix of news. Sam Ruby unintentionally confirmed this yesterday should you pause to consider what sort of daily news selection could be derived from his Venus output. While it's true that cross linking is dense in some blogospheres, these are largely the same domains already covered by my existing sites.

Why not try editorial approaches based on new kinds of semantic analyses? My belief is that the requisite technology is harder than anything powering Google News, Topix, or my current sites. Attempts based on current technologies come up woefully short, with the resulting "Daily Me" consisting of a seemingly random mix of content missing most or all "must have" articles and posts. And having the "must haves" is essential for winning the earlier adopter types that would dominate the userbase of such a filter in the first place.

I reread the output from Sam's blogroll and it reminded me that there is a difference between the scenarios that sites like Techmeme and Tailrank are interested in and the goals of a personalized meme tracker. Here are a copuple of questions to get you started on understanding the differences in implementation choices one might make between implementing a personalized meme tracker vs. a topic specific memetracker,

  1. Q: How do you deal with "noise" links such as http://del.icio.us/tag/rest or http://www.technorati.com/tag/AJAX which may be common in the feeds the user is interested in?

    A: In both cases, it would seem the first step is to hard code the application to understand certain kinds of links as "noise". The interesting question is how to deal with the introduction of new types of "noise" links to the ecosystem. A web-based application may be easily updated as new "noisy" links enter the system but things are a bit more difficult for a desktop application. Perhaps allowing users to nominate certain classes of links as noise?

  2. Q: What 'class' of news items or blog posts should be used in evaluating what is [currently] popular?

    A: It is quite obvious that simply using the entirety of the posts from a particular feed to calculate a links popularity is flawed. Using that metric, I suspect that links such as http://adaptivepath.com/publications/essays/archives/000385.php or http://scobleizer.wordpress.com/2006/06/10/correcting-the-record-about-microsoft/ would always be the most popular links from my blogroll. Using a specific date or time range (e.g. over the past 24-48 hours) seems to be what sites such as Techmeme and Tailrank seem to do. An aggregator such as RSS Bandit or FeedDemon may use other techniques such as only using 'unread' items to calculate currently popular topics.

  3. Q: How do you deal with link blogs?

    A: A number of people in my blogroll have blog posts that are basically a repost of al the links they have posted to del.icio.us that day (e.g. Stephen O'Grady and Mark Baker). Sites like Techmeme and Tailrank filter these posts because no one wants to see a bunch of headlines that are all of the form 'links for 2006-09-05' with no real content. On the other hand, if a large number of folks in my blogroll are linking to a particular news item then it is likely to be interesting to me regardless of whether there 'meaty' blog posts behind their links or just linkblog style postings.

These are a couple of the queestions that I've been pondering since I started thinking about this feature a couple of months ago. At the end of the day I think that although Gabe's perspective is useful since he did build the site that inspired this thinking, the scenarios are different enough to change some of the implementation choices in ways that may seem surprising to some.

PS: It seems Sam has already turned Gabe's feedback into code based on reading his blog post MeMeme 2.0. There are definitely interesting times ahead.


About six months ago, I wrote a blog post entitled Jubilee Thoughts: Tracking Hot Topics where I talked about adding meme tracking functionality similar to the features of Memeorandum and TailRank to RSS Bandit. Since I wrote that blog post I haven't written a lick of code that actually does this but I've thought and talked about it a lot. While all I've done is talk I can't help but notice that a few others have been writing code while I've been pontificating in my blog.

In his blog post entitled Spyder Spots a Memetracker Nick Bradbury writes

Andy "Spyder" Herron writes about the "personal memetracker" that's hidden in FeedDemon

I had hoped to complete this feature by now, but as Andy points out, it still needs some work (which is why I hid it and gave it a "beta" label). If you'd like to try it out, select "Popular Topics" from the Browse menu (or just add the "Popular Topics" toolbutton to the toolbar above FeedDemon's browser).

I should add that this feature will probably be useful only to people who subscribe to a lot of feeds since it relies on common links to determine popularity. So if you're not subscribed to feeds which link to the same articles, chances are it won't show you any results.

In another blog post entitled MeMeme Sam Ruby writes

Ross Mayfield: Cue up not what is popular, or what the people I subscribed to produced.  Cue up what my social network has found interesting.
Herewith, a simple demonstration of what aggressive canonicalization can produce.  Venus may be in Python, but suppose I’m in a Ruby mood.  The cache is simply files in Atom 1.0 format, with all textual content normalized to XHTML.

Lets make a few simplifying assumptions: all posts are created equal, each post can only vote once for any given link (this also takes care of things like summaries which partially repeat content), posts implicitly vote (once!) for themselves, and the weight of a vote degrades as the square of the distance between when the post was made and now.

Here’s the code, and here’s a snapshot of the output.  The output took 6.239 elapsed seconds to produce on my laptop.  I still have more work to do to eliminate some of the self-referential links (in fact, I a priori removed Bob Sutor’s blog from the analysis as it otherwise he would dominate the results).  But I am confident that this is solvable, in fact, I am working on expanding what filters can do.  I’ll post more on that shortly.

With both Sam and Nick on the case, I'm quite sure that within the next few months it will be taken for granted that one of the features of news aggregator is to provide personalized meme tracking. Although I'm sure that we'll all use the same set of basic rules for providing this feature, I suspect that the problems that we are trying to solve will end up being different which will influence how we'll implement the feature.

For example, the main reason I want this feature isn't to track what the popular topics are across multiple blogs but instead to find what the popular topics are across aggregated blog feeds such as blogs.msdn.com and the numerous planet sites. In reading Sam's blog it seems he'd consider the same feed linking to the same news items as spam to filter out while I consider it be the only part of the feature I'd use. This issue illustrates the main problems I've had with designing the feature in my head. What "knobs" or options should we give users to control how the meme tracker decides what is interesting or not vs. what should be ignored when generating the list of 'hot topics' (e.g. the various meme trackers have said they filter out link blogs since they tend to dominate the results as well)?

Since I've decided to be more focused with regards to RSS Bandit development, I won't touch this feature until podcasting support is done. However I'd like to hear thoughts from our users in the meantime.


It seems I'm slightly ahead of schedule and have added most of the support required for using a website's favicons as the icons used to represent the feed in the RSS Bandit feed subscriptions tree view. Below is a screenshot of what the list of subscriptions looks like when some of the feeds have favicons.

There are still a couple of fit & finish work items to complete such as adding an option to turn off favicons for the people who find the people's choices of icons too distracting. However for the most part this feature is done.

Over the next few days, I'll start taking a look at what it means to add support for podcasting to the application. Since stumbling upon the very hilarious yet quite accurate review of Pirates of the Carribean 2 by Ask A Ninja, I've been wanting to try out subscribing to podcasts. However I'm not sure what the expected user experience should be so I'm going to try out a couple of podcast clients over the next week. So far I have Doppler Radio and Juice (formerly iPodder) on my list. Is there any other client I should be trying out? Also are there any obvious features I should or should not add?


Categories: RSS Bandit

September 3, 2006
@ 05:13 PM

Today I was browsing Windows Live QnA and stumbled across one the user pages (shown below) and realized that we've finally shipped the Windows Live friends list to another web property besides Windows Live Spaces

This is one of the coolest things about working on platform technology, you ship it once and it gets used all over the place. When I first started working on the social networking for Windows Live along with Mike Torres and others, we strongly believed that Social Networking features should be an integrated part of all of our online experiences instead of just being part of a single "social networking" site. The friends list isn't just a feature of Windows Live Spaces or Windows Live Messenger, it's a feature of Windows Live. 

Another principle we've had is that anywhere you see a user in a Windows Live property, there should be multiple ways to interact with that user via the 'contact control' shown above. One of these ways is to add an entry point for viewing that user's friends list or adding that user to your IM or friends list [NOTE: you can opt out of having people spam you using this mechanism]. This is a part of our user experience platform which Jay and Neel have been working on for a while. Encouraging multiple ways for people to interact should be a key aspect of social software applications.

It's been almost two years since I started at MSN Windows Live and one of the best things about working here is that I've rarely had to argue with people about fundamental principles of what the user experience we provide should be. Our debates are more around when to ship the features and how to implement them than anything else.


Categories: Windows Live

Greg Linden has a blog post entitled Google Personalized Search and Bigtable where he writes

One tidbit I found curious in the Google Bigtable paper was this hint about the internals of Google Personalized Search:
Personalized Search generates user profiles using a MapReduce over Bigtable. These user profiles are used to personalize live search results.
This appears to confirm that Google Personalized Search works by building high-level profiles of user interests from their past behavior.

I would guess it works by determining subject interests (e.g. sports, computers) and biasing all search results toward those categories. That would be similar to the old personalized search in Google Labs (which was based on Kaltix technology) where you had to explicitly specify that profile, but now the profile is generated implicitly using your search history.

My concern with this approach is that it does not focus on what you are doing right now, what you are trying to find, your current mission. Instead, it is a coarse-grained bias of all results toward what you generally seem to enjoy.

This problem is worse if the profiles are not updated in real time.

I totally disagree with Greg here on almost every point. Building a profile of a user's interests to improve their search results is totally different from improving their search results in realtime. The former is personalized search while the latter is more akin to clustering of search results. For example, if I search for "football", a search engine can either use the fact that I've searched for soccer related terms in the past to bubble up the offical website of Fédération Internationale de Football Association (FIFA) instead of the National Football League (NFL) website in the search results or it could cluster the results of the search so I see all the options. Ideally, it should do both. However, expecting that my profile is built in realtime (e.g. learning from my search results from five minutes ago as opposed to those from five days ago) although ideal doesn't seem to me to be necessary to be beneficial to end users. This seems like one of those places where a good enough offline-processing based solution is better than a over better engineered real-time solution. Search is rarely about returning or reacting to realtime data anyway. :) 

PS: I do think it's quite interesting to see how many Google applications are built on BigTable and MapReduce. From the post Namespaced Extensions in Feeds it looks like Google Reader is another example.


Jeff Atwood has a blog post entitled Thread Priorities are Evil where he writes

Joe Duffy is something of an expert on the topic of threading and concurrency-- he works for Microsoft on CPU-based parallelism in the .NET Common Language Runtime-- and he has this to say:

Messing with [thread] priorities is actually a very dangerous practice, and this is only one illustration of what can go wrong. (Other illustrations are topics for another day.) In summary, plenty of people do it and so reusable libraries need to be somewhat resilient to it; otherwise, we get bugs from customers who have some valid scenario for swapping around priorities, and then we as library developers end up fixing them in service packs. It's less costly to write the right code in the first place.

Here's the problem. If somebody begins the work that will make 'cond' true on a lower priority thread (the producer), and then the timing of the program is such that the higher priority thread that issues this spinning (the consumer) gets scheduled, the consumer will starve the producer completely. This is a classic race. And even though there's an explicit Sleep in there, issuing it doesn't allow the producer to be scheduled because it's at a lower priority. The consumer will just spin forever and unless a free CPU opens up, the producer will never produce. Oops!

The moral of the story? [Thread] priorities are evil, don't mess with them.

Although there are some edge conditions where micromanaging thread priorities can make sense, it's generally a bad idea. Set up your threads at normal priority and let the operating system deal with scheduling them. No matter how brilliant a programmer you may be, I can practically guarantee you won't be able to outsmart the programmers who wrote the scheduler in your operating system.

On reviewing the RSS Bandit code it seems that we use ThreadPriority.BelowNormal and ThreadPriority.Lowest in a bunch of places which may cause the kind of deadlocks Joe Duffy describes. This is yet another example of why multithreaded programming is the spawn of Satan.


Categories: Programming

September 1, 2006
@ 06:02 PM

Mike Torres has a blog post entitled Web 2.0 Revelation #3: I dig Firefox Extensions where he writes

But having returned to Firefox (on my Mac and casually on my PC), I'm seriously impressed by just how much Firefox Extensions have enabled me to do.  And as much as I really love using IE7 on my PC, having things like the SessionSaver, Answers, LiveLines, and del.iciou.us extensions are going a long way towards swaying me over to Firefox again (note: I haven't used Firefox exclusively on my PC since it was called Firebird a few years ago!)

The list of extensions I'm exploring on the PC:

  • Browster to make searching and browsing just a little bit faster - slick!  (works in IE too)
  • de.icio.us to make sure I update my linkblog regularly
  • Answers just because it's cool
  • Tab X because I need close buttons on tabs
  • Livelines to map the RSS feed icon to "Subscribe in Bloglines"
  • SessionSaver to keep me from losing my place
  • Luna (theme) to make it look like it belongs on Windows again - although I want a better looking theme

One of the things that's immediately clear to me after a little experimentation this week: IE7 just doesn't have enough to sway power users just yet.

I've been preaching the Firefox religion to Mike and others at work primarily by praising the virtues of inline search and SessionSaver. The more I use Firefox with SessionSaver the more it irritates me that every Windows application doesn't have this functionality. I've definitely been inspired to add similar functionality to RSS Bandit.

Anyway, it looks like Mike didn't just tiptoe into the water but instead jumped in deeper than I have. On his recommendation I have installed Tab X and Luna which have quickly made my browsing experience even better. I may try out the de.icio.us extension if I can ever remember my password for the service. I probably should give a shout out to the Yahoo! Toolbar for Firefox as well. Firefox extensions totally r0x0r.


Categories: Web Development

September 1, 2006
@ 05:42 PM

From the Bloomberg news article Microsoft Gives Bonuses Totaling Almost $1 Billion (Update3) we learn

Aug. 31 (Bloomberg) -- Microsoft Corp. paid out performance bonuses totaling almost $1 billion in restricted stock to 900 of its top executives.

One-third of the 37 million shares vest immediately, Redmond, Washington-based Microsoft, the world's biggest software company, said in a regulatory filing today. Chairman Bill Gates and Chief Executive Officer Steve Ballmer were excluded.

The company revamped its compensation plan in 2003 to hold onto key executives because many of the stock options granted previously were worthless. Doing so gave the company a way to reward executives and remain competitive with rival employers such as Google Inc. after the stock fell 56 percent in 2001 and 2002.

It's September which means our yearly bonuses and raises are around the corner. It looks like I need to think up another excuse for why my girlfriend and I can't go furniture shopping at IKEA. :)


Categories: Life in the B0rg Cube

One of our most common requests for improving the user interface of RSS Bandit has been to add an option so that all links clicked in the newspaper view result in tabs that are opened in the background instead of the new browser tabs stealing focus. This allows you to breeze through a newspaper view with a lot of items and click the links of the items you are interested without without having to go back and forth between the newspaper view and open browser tabs. Below is a screenshot of the new option

I've realized that it's been a long time since we shipped an RSS Bandit release and have started spending more evenings getting the code in ship shape. This evening I'll start work on the often requested feature that we utilize favicons in the tree view instead of the generic folder icon. My only question is whethere I should bother adding a flag to disable that behavior. Will mind having Dare's favicon.ico show up beside my feed instead of the boring folder icon enough to want to turn the feature off? Let me know what you think.


Categories: RSS Bandit