By now, hard core RSS Bandit fans have found out that the installer for the Jubilee release of RSS Bandit is available. A bunch of people have tried it out and given us a lot of good feedback on how some of our new features can be tweaked to make them even better. One of the places we got good feedback [and bug reports] has been our behavior when automatically downloading podcasts from a feed. One signficant bug is that in the beta, RSS Bandit doesn't keep track of what enclosures it has previously downloaded so it may download the same enclosures several times. However, even with this bug fixed we realized there is a problem when one first subscribes to a podcast feed especially if the feed has videos such as Microsoft's Channel 9. On the first time subscribing to that feed, RSS Bandit would automatically start downloading 2-3 gigabytes of videos from the site since that's how many are exposed in the feed. This seems like a bad thing, so we added two new options which are shown in the screenshot below

My main question is what default values we should use. I was thinking 'Only download the last 2 podcasts' and 'Only download files smaller than 500MB' as the defaults. What do you guys think?


 

Categories: RSS Bandit

From the blog post on the Windows Live Search team's blog entitled Search on the Go with Live Search for Mobile Beta we learn

we’re proud to announce three new ways to search on the go:

Mobile Software Download an application to your phone for local search, maps, driving directions, and live traffic information in a faster, richer and more interactive user interface. It's the best way to search from your phone.

LSMb1LSMb2LSMb3LSMb4

 

Mobile Browsing - Access maps and directions directly on your phone’s browser. Simply enter mobile.live.com/search into your phone’s address bar and select Map. Choose from the scopes of Local, Web, Map, News and Spaces and get Live Search from your mobile device.

Text Messages (SMS) - If you don’t have a data plan, you can simply send a text message to 95483 (WLIVE) with a query like “Toys Chicago, IL” or “Coffee 90210” and you’ll immediately receive a text message reply with the nearest business listings with address and phone numbers.

This is a pretty sweet release and I can't wait to get it on my AudioVox SMT 5600. So far, the release has been favorably reviewed by those that have tried it including Gizmodo which has an article entitled Windows Live Search For Mobile vs. Google Maps Mobile which ends on the following note

If you're using a Windows Mobile phone, we'd definitely recommend you try out Windows Live Search. The Java-based Google Maps is just too buggy and slow, not to mention clunky, to be useful to us.

Not bad, eh? I thought Google was the king of innovative search products. :) Speaking of innovation and Microsoft, there is a debate between Robert Scoble and Dave Winer in a recent Wall Street Journal article Is Microsoft Driving Innovation Or Playing Catch-Up With Rivals? which has both bloggers going head to head on whether Microsoft is innovative or not. Interesting read.


 

Categories: Windows Live

First it was Yahoo! Mail that swallowed the AJAX pill only to become unusably slow and now it looks like Yahoo! TV is another casualty of this annoying trend.

Dave Winer writes

Yahoo says they improved Yahoo TV, but imho, they broke it. The listings page, which until today was the only page I knew or cared about (they just added a bunch of community features) took a few seconds to load, now it's an Ajax thing, and it loads as you scroll. Great. There's a delay every time I hit Page Down. Now instead of finding out if there's anything on in seconds it takes minutes. That's an improvement? 

In his post entitled Yahoo TV Goes 2.0. Argh.Paul Kedrosky writes

Well, Yahoo in its wisdom has launched a 2.0-ified version of its TV listings tonight, complete with an Ajax-y interface, cool blue colors, social rating of programs, etc. That's all swell, and frankly I wouldn't care one way or the other (other than they broke my URL for full listings), but the darn thing is sooooo much slower than the old listings. Tables have to get populated, drop-downs have to ... drop, and sliders have to slide while data creakily loads.

It's really irritating -- so irritating, in fact, that rather then wade back in to find out what time tonight the new Frontline episode is out about credit cards, I think I'll just watch it on the Frontline site.

Seriously, who's making these decisions at Yahoo? Don't they realize that slower websites cost them money regardless of how buzzword compliant it now makes them?


 

Erik Selberg, a developer on the Windows Live Search team, has a blog post entitled General disarray at The Big 3 where he writes

given the recent trends in query share. I’ll summarize for those who don’t want to read to the bottom of Danny’s post:
sullivan-ms-query-share-dorp.jpg
Greg’s take:

Ouchie. As Danny says, “[Not] a pretty picture for Microsoft … They haven’t held share. It’s drop, drop, drop.”

It really is remarkable how badly Microsoft is doing against Google. I never would have thought that, nearly four years after they started their “Underdog” project to build a Google-killer, Microsoft would not only be badly behind in search, but also actually losing market share.

Well, what did anyone really expect?

Let’s put some things into context. First, all of the above is brutally, painfully true. Google hired smart, self-starters who are into big risk / big reward.
...
Yahoo is just in a rough place. They’ve got Google dominating, and they’ve got us coming up from behind.
...
And then there’s us at Microsoft bringing up the rear with declining query share. Well… yeah. While our management set the goal of having relevance that beat Google after 2 years (then 3, and I believe 4 now…) it’s not realistic to think that it can be done quickly. If you ask Google, Yahoo, or the fine SEOs at WebMasterWorld or other such places, they’ll all say that Live Search has increased in quality over the years so that it’s much closer to Yahoo and Google. Not yet better, but no longer laughable. And yeah, we’ve done our own share of copying feature parity, and we’re starting to do a few things that cause Google and Yahoo to do the same (ok, noODP is a small feature, but it’s a start!).

Here’s the honest truth… Microsoft will continue to lose share until it can make Live.com something people chose versus just the IE default. That will happen when the average person starts to see Live.com as a bit better than Google. Right now, Google wins on brand (people like them a lot) and quality, so it’s to be expected that existing Yahoo / Live customers will migrate to Google than vice-versa and new customers will pick Google more than Live or Yahoo. Google is making people focus on features, which should tell people that they’re worried about how we’re catching up, and are going to put more people on their core products to keep and extend their lead. So it’s going to be a tough, tough battle for Microsoft to get there…

As I read Erik's post, one phrase kept repeating itself in my head over and over again; "Stay the Course...Stay the Course...Stay the Course". I find it amazing that people like Erik still think that competing with Google is about being a bit better than their search engine or having relevance that beats theirs in a few years. Competing with Google's search engine is no longer about search results quality, it is about brand and distribution. This is why even though the search engine that powers MSN Search or Windows Live Search has gotten better and better Microsoft's share of search engine market has dropped almost 50% since it announced that it would launch its own search engine to compete with Google's. Competition with Google really should focus on addressing both of these points.

Brand

The verb 'google' is now in the Mirriam Webster dictionary. That is the power of brand. Anyone who regularly uses the Internet be they young or old thinks Google is synonymous with search.

Anecdote: My girlfriend once told her kids we were takin them to the zoo and her seven year old jumped on computer and went straight to http://www.google.com to fiind out what animals she'd see that day. 

Distribution

The combination of the proliferation of search toolbars and a new generation of Web browsers with built-in search boxes (e.g. IE 7 and Firefox) have reduced the need for users to actually go to websites to perform a search. This means that it is now very important to be the search engine that is used when a user enters a search directly from their browser. Guess which search engine is the one used by your browser if you
  1. Are you a user of the Firefox browser?
  2. Are you a user of the Opera browser?
  3. Are you a user of IE 7 and have installed Adobe Acrobat?
  4. Are you a user of IE 7 and have installed the Java runtime?
  5. Are you a user of IE 7 and have installed the WinZip archive utility?
  6. Are you using a newly purchased Dell computer?
  7. Are you a user of the Google Toolbar?
Yes, the answer is Google in every case. So even if you are an Internet n00b who hasn't made up their mind about which search engine to choose, there is a large chance that the default search engine you end up using thanks to recent innovations in IE 7 and Firefox will be Google.
 

November 28, 2006
@ 09:27 PM

Steve Jones has a blog post entitled Want to be cool? Learn REST. Want a career? Learn WS where he writes

Out in the big wide world of the great employed of IT there are four dominant software players, these people represent probably the majority of IT spend in themselves and influence probably a good 95% of the total IT strategy out there on planet earth. Those four companies are SAP, Oracle, IBM and Microsoft.

These are the companies who your CIO goes to visit and sits through dinners and presentations on their product strategy, and what they are pushing is WS-* in all its ugly glory. This means that in 3 years time you 100% will have WS-* in your company, in a company you work with, or in a company you
want to work with. Sure you can argue that its harder and more difficult than REST, in the same way as you can argue that Eiffel, PHP or Ruby are more productive languages. Some people will get to use these language commercially, some people will get to use REST commercially.

Everyone will have to use WS-* commercially if they want to interact with systems from the major software vendors.

I'm not saying its right, just that its reality. The
best technology isn't the technical purest, the most productive or the easiest, its the one that the most people use and which has the widest acceptance and adoption. For shifting data across the internet this means its what SAP, Oracle, IBM & Microsoft say, its also what the various vertical standards (who the big boys aim to implement "out of the box") who have also all gone for WS-*.

The technical discussion is pointless, the commercial discussion is mute. But hey lets continue having the discussion on REST v WS because it makes us feel cool and trendy. Its about time that IT people realised that we need to have discussions based on commercial realities not on technical fantasies.

There's a lot to disagree with in that short block of text. I'll go by the numbers

  1. Contrary to what Steve Jones claims, folks at Microsoft are very interested in REST. On the one hand, you have people like Yaron Goland who is driving the Web Services story for the Windows Live platform who has shown a lot of interest in RESTful Web services and even JSON as a data format in posts such as Thoughts On Creating An Infoset For Windows Live Services Platform. You also have folks like Omri Gazitt who runs the group that is responsible for the Windows Communications Foundation (aka Indigo) looking at RESTful APIs like GData in his post XML --> JSON Conversion in Google Data API and Doug Purdy who's also in the WCF team who's spending his downtime after shipping WCF v1.0 implementing the Atom Publishing Protocol which is a RESTful API. Why would all these people at Microsoft be spending time looking at REST if they didn't think it was a worth investigating and adopting?

  2. Steve Jones's post gives the impression that developers will need to "learn" WS-* because it may be deployed in their enterprise. That seems quite unnecessary to me. The WS-* family of technologies are intentionally so complex that developers are best served by knowing how their Web Services toolkit works instead of the gory details of how that particular Web services stack selectively or just plain incorrectly implements SOAP, WSDL, XML Schema, and the rest of the WS-* stack. If you are a .NET developer then you just need to know how ASP.NET Web Services and now WCF works. If you are one of those poor souls who'll have to get disparate Web Services toolkits to interoperate with each other then stick to whatever the WS-I compliant mode is in your toolkit of choice when exposing services and pray that whoever exposes the services you have to consume has done the same.

  3. I also disagree with the implication that the technologies with the widest acceptance and adoption for moving data across the Internet will be WS-* based. Come on, the most popular Web service on the Web today is RSS/Atom feeds and that is as RESTful as it gets. In fact, perusing a list of Web APIs exposed by companies I seem to see a lot more RESTful or Plain Old XML over HTTP APIs than I see APIs based on WS-*. Perhaps Steve Jones meant to write intranet instead of internet?

Finally, even if your company has drank the WS-* kool aid it doesn't mean that RESTful APIs are anathema. I'm pretty sure that no one has drank the WS-* kool aid more than Microsoft but I still see a lot of AJAX [client side Javascript calling back to RESTful or POX APIs] and RSS feeds coming out of the company. A lot more than I see SOAP APIs now that I think about it. :)
 

Categories: XML Web Services

November 28, 2006
@ 08:56 PM

Tim Bray has a blog post entitled Choose RELAX Now where he writes

Elliotte Rusty Harold’s RELAX Wins may be a milestone in the life of XML. Everybody who actually touches the technology has known the truth for years, and it’s time to stop sweeping it under the rug. W3C XML Schemas (XSD) suck. They are hard to read, hard to write, hard to understand, have interoperability problems, and are unable to describe lots of things you want to do all the time in XML. Schemas based on Relax NG, also known as ISO Standard 19757, are easy to write, easy to read, are backed by a rigorous formalism for interoperability, and can describe immensely more different XML constructs. To Elliotte’s list of important XML applications that are RELAX-based, I’d add the Atom Syndication Format and, pretty soon now, the Atom Publishing Protocol. It’s a pity; when XSD came out people thought that since it came from the W3C, same as XML, it must be the way to go, and it got baked into a bunch of other technology before anyone really had a chance to think it over. So now lots of people say “Well, yeah, it sucks, but we’re stuck with it.” Wrong! The time has come to declare it a worthy but failed experiment, tear down the shaky towers with XSD in their foundation, and start using RELAX for all significant XML work.

In a past life I was the PM for XML schema technologies at Microsoft so I obviously have an opinion here. What Tim Bray and Elliotte Rusty Harold gloss over in their advocacy is that there are actually two reasons one would choose an XML schema technology. I covered both reasons in my article XML Schema Design Patterns: Is Complex Type Derivation Unnecessary? for XML.com a few years ago. The relevant part of the article is excerpted below

As usage of XML and XML schema languages has become more widespread, two primary usage scenarios have developed around XML document validation and XML schemas.
  1. Describing and enforcing the contract between producers and consumers of XML documents: An XML schema ordinarily serves as a means for consumers and producers of XML to understand the structure of the document being consumed or produced. Schemas are a fairly terse and machine readable way to describe what constitutes a valid XML document according to a particular XML vocabulary. Thus a schema can be thought of as contract between the producer and consumer of an XML document. Typically the consumer ensures that the XML document being received from the producer conforms to the contract by validating the received document against the schema.

    This description covers a wide array of XML usage scenarios from business entities exchanging XML documents to applications that utilize XML configuration files.

  2. Creating the basis for processing and storing typed data represented as XML documents: As XML became popular as a way to represent rigidly structured, strongly typed data, such as the content of a relational database or programming language objects, the ability to to describe the datatypes within an XML document became important. This led to Microsoft's XML Data and XML Data-Reduced schema languages, which ultimately led to WXS. These schema languages are used to convert an input XML infoset into a type annotated infoset (TAI) where element and attribute information items are annotated with a type name.

    WXS describes the creation of a type annotated infoset as a consequence of document validation against a schema. During validation against a WXS, an input XML infoset is converted into a post schema validation infoset (PSVI), which among other things contains type annotations. However practical experience has shown that one does not need to perform full document validation to create type annotated infosets; in general many applications that use XML schemas to create strongly typed XML such as XML<->object mapping technologies do not perform full document validation, since a number of WXS features do not map to concepts in the target domain.

RELAX NG is good at #1 but not #2 which is by design. Most of the folks who are interested in XSD are either WS-* folks who are building toolkits that map XML on the wire to in-memory objects or database folks implementing XQuery who also have to deal with strongly typed data. Neither category of developers/vendors are interested in RELAX NG because it wasn't designed to meet their needs. On the other hand, if you are designing an XML format from scratch and need a language/toolkit for validating the structure and correctness of your documents you definitely need to strongly consider using RELAX NG over XSD.


 

Categories: XML

November 28, 2006
@ 03:09 AM

Auren Hoffman of RapLeaf has a blog post entitled Why big high tech companies are losing the talent war where he writes

In today's hot startup market, it is essentially irrational to join a big company. That means that big companies are only attracting “B” and “C” players or they are attracting irrational A players. And they are losing all those great “A” players they hired in the dog days of 2002 (most of which now have fully vested stock-options).

Essentially, when the economy is good and massive amount of startup activity is happening, the big companies suffer. Just think about it…when you see the Google $1.65 billion acquisition of YouTube, does that make you want to work more for a Google or for a potential YouTube? I venture to guess that you’ll want to go out there and work for startups like POSTroller and Blip.tv [Disclosure: Auren is an investor in POSTroller and is on the advisory board of Blip.tv and both companies are looking to recruit “A” players right now]

Now there are some rational “A” players that are still going to large companies. In order to recruit rockstar engineers, companies like Google significantly increase the pay and offer too many perks to list. And some people have their own reasons to join these tech companies. Niall Kennedy, a true “A” player, joined Microsoft last April because he wanted to be at the epicenter of the PC user experience. Like a scientist attracted to a university with great resources, Niall was attracted to Microsoft not to make a personal profit but to build true, long-lasting innovations. Unfortunately Niall left four months later when he realized corporate bureaucracy can stifle innovation.

I disagree with the core premise of this post but it did get me thinking about how to differentiate the typical employee at a big company like Microsoft or IBM from the typical person who joins a startup. After watching a couple of people leave Microsoft for startups, I think I've put my finger on the core difference between the kind of people you see toiling at a startup versus the ones you see as faceless cogs in a giant corporation. There are basically two kinds of people that you'll find a lot of at large software companies like Microsoft and IBM but rarely at startups

  1. The Indentured: For example, all those foreign workers on H-1B visas
  2. The Risk Averse: For example, the kind of folks with a spouse, kids and/or a mortgage.

After a few years of watching people, these are the actual differences I've seen between startup folks and corporate ladder climbing types. It's not some silly distinction as to whether the person is an "A" player or not.

An interesting consequence of this difference is the culture of the work environment. A place full of people who don't want to rock the boat because they are risk averse or indentured isn't the kind of place that will produce a project as fundamentally risky as YouTube. Even though all the big Web companies had online video offerings from MSN Video to Google Video, it was YouTube that won. How? By doing things that the typically cautious, risk averse folks in big companies like Google and Microsoft didn't consider like allowing user uploaded content and not bothering to have an "approval" process to ensure only appropriate videos showed up. YouTube was clearly a lawsuit magnet of the sort that would never fly at a big company.

That is the difference between startups and big technology companies


 

Categories: Life in the B0rg Cube

November 28, 2006
@ 02:49 AM

Scott Adams of Dilbert fame has a blog post entitled Complicated Decisions where he writes

There is also genuine concern for the fate of the Iraqis if we leave.  Yet, according to this opinion poll, 7 out of 10 Iraqis want us to pull out.

http://www.worldpublicopinion.org/pipa/pdf/sep06/Iraq_Sep06_rpt.pdf

And so the decision about leaving Iraq can be boiled down to this:

1. American troops are dying.
2. It’s impossible to know if national security is best served by staying or leaving.
3. 7 out of 10 Iraqis want us to leave.
4. We have accomplished all that we KNOW we can accomplish. Anything else is guessing.
5. Iraq diverts resources from our higher priorities.

It’s impossible to know the RIGHT answer about Iraq. But it has become simple to know the RATIONAL path. Unlike a financial investment, where you might be willing to invest in a high risk/reward situation, you can’t diversify war. If the payoff isn’t obvious and predictable, the rational thing to do is pull out and minimize troop casualties. Any other path is just guessing.

Your disagreement is invited.

Back in 2003, I wrote a couple of blog posts where I disagreed with the plan to invade Irag because it set a bad precedent. The current state of affairs with almost 3,000 dead and over 20,000 injured U.S. troops along with the claim of over half a million Iraqis dead is worse than anything I imagined. Now that the invasion has happened I find myself unable to agree with either of the major sides in the U.S. debate on what the next steps should be.

On the one hand, there are the Cut and Run arguments such as what Scott Adams has made above which I mostly agree with. Except that it is quite likely that the situation in Iraq will likely devolve into a civil war and wholesale ethnic genocide if U.S. troops leave. Given that the U.S. invasion is the catalyst for the current state if affairs, I strongly believe that the U.S. has a responsibility to fix the country it has turned into a frightful warzone. On the other hand, the Stay the Course arguments have failed to sway me because it is quite clear that the situation in Iraq is more complex than the sound bites on Fox News would have one believe. Sometimes it seems there are five or six different sides battling it out; U.S. troops, Al Qaeda operatives, Sunni militia, Shi'ite militia, Iraqi government troops and foreign troops from neighboring countries. It is unclear to me exactly how the Stay the Course folks quantify victory in such a situation. Today I walked past a TV and saw some pundit on MSNBC asking which side the U.S. should fight alongside in the Iraqi civil war as if picking what outfit to wear to the prom. 

I've begun to lean more towards Scott Adams's position although I have difficulty with the U.S. initiating this bloodshed then just walking away from the results of its actions. What are your opinions on the next course of action the U.S. should take?


 

Categories: Current Affairs

From the blog post entitled 1GB storage allocation for free Hotmail accounts is live! on the Hotmail Windows Live Mail team's blog we learn

1GB storage allocation for free Hotmail accounts is live! If you are new to Hotmail, then your account is created automatically with 1GB storage allocation. All existing accounts are at 1GB. To see that you would need sign out and sign in again. The storage meter bar in our classic UI would show 1000 as the max number. If your account is migrated to Windows Live Mail then your storage allocation is 2GB.

This is great news for the hundreds of millions of people with Hotmail accounts. Kudos to the mail team on making this switch.


 

Categories: MSN | Windows Live

November 27, 2006
@ 05:02 PM

Every once in a while I read something in a blog I find so ridiculously empty of content and contradictory that it makes me question the entire human race. Most of the time it's usually someone spouting their opinion on politics which sends me into this pit of despair. Today, it is Kathy Sierra and her post Why Web 2.0 is more than a buzzword where she writes

But to say it means nothing (or WORSE--to say it's just a marketing label) is to mistake jargon (good) for buzzwords (bad). Where buzzwords are used to impress or mislead, jargon is used to communicate more efficiently and interestingly with others who share a similar level of knowledge and skills in a specific area.
...
So... back to "Web 2.0"--I'll admit that this one's trickier than most domain-specific phrases because it wraps many different--and big and ill-defined--concepts. But when Tim O'Reilly and Dale Dougherty (the guy who first coined the term) talk about Web 2.0, it represents something real and specific and meaningful. Over time, a lot of other people (especially those who've spent time around them, including me) have come to understand at least a part of what they've encapsulated in that one small phrase. "Web 2.0" may be the least understood phrase in the history of the world, but that still doesn't make it meaningless.
A problem with blogs is that it encourages people to not proof read what they write. On the one hand Kathy argues that jargon allows us to communicate more efficiently then in the same breath points out that "Web 2.0" wraps many different and ill-defined concepts together. That seems pretty contradictory to me. How is it communicating more efficiently if I say "Web 2.0" to Bob and he thinks AJAX and widgets while Jane thinks  I'm talking about social networking and tagging while I actually meant RSS and open APIs? We may be communicating with less words but since we are guaranteed to have a miscommunication, this efficiency in words exchanged is small compared to the amount of time we waste talking past each other.

I've made my peace with the idea that "Web 2.0" is here to stay and that it is such a wide umbrella term that it is effectively meaningless other than a catch all to describe Web trends have become popular over the past two years. However that doesn't make it worthy of being elevated to "professional jargon" unless your profession is slinging bullshit to VCs or trying to wade through which bullshit knockoffs of YouTube and del.icio.us you want to be investing in.