I've been reading some of the hype around microformats in certain blogs with some amusement. I have been ignoring microformats but now I see that some of its proponents have started claiming that using XML on the Web is bad and instead HTML is the only markup language we'll ever need.

In her post Why generic XML on the Web is a bad idea Anne van Kesteren writes

Of course, using XML or even RDF serialized as XML you can describe your content much better and in far more detail, but there is no search engine out there that will understand you. For RDF there is a chance one day they will. Generic XML on the other hand will always fail to work. (Semantics will not be extracted.)

An example that shows the difference more clearly:

<em>Look at me when I talk to you!</em>

… and:

<angry>Look at me when I talk to you!</angry>

The latter element describes the content probably more accurately, but on ‘the web’ it means close to nothing. Because on the web it’s not humans who come by and try to parse the text, they already know how to read something correctly. No, software comes along and tries to make something meaningful of the above. As the latter is in a namespace no software will know and the latter is also not specified somewhere in a specification it will be ignored. The former however has been here since the beginning of HTML — even before it’s often wrongly considered presentational equivalent I — and will be recognized by software.

This post in itself isn't that bad, if anything it is just somewhat misguided. However Tantek Celik followed it up with his post Avoiding plain XML and presentational markup which boggled my mind. Tantek wrote

The marketing message of XML has been for people to develop their own tags to express whatever they wanted, rather than being stuck with the limited predefined tag set in HTML. This approach has often been labeled "plain XML" or "generic XML" or "SGML, but easier, better, and designed just for the Web".

The problem with this approach is that while having the freedom to make up all your own tags and attributes sounds like a huge improvement over the (mostly perceived) limits of HTML, making up your own XML has numerous problems, both for the author, and for users / readers, especially when sharing with others (e.g. anything you publish on the Web) is important.

This post by no means contains a complete set of arguments against plain/generic XML and presentational markup, nor are the arguments presented as definitive proofs. Mostly I wanted to share a bunch of reinforcing resources in one place. Readers are encouraged to improve upon the arguments made here.

The original impetus for creating XML was to enable SGML on the Web. People had become frustrated with the limited tag set in HTML and the solution was to create a language that enabled content creators to create their own tags yet have them still readable in browsers via stylesheet technologies (e.g. CSS). Over time, XML has failed to take off as a generic document format used by content authors for creating human readable documents on the Web but has become popular as a data format used for machine to machine communications on the Web(RSS, XML-RPC, SOAP, etc) .

Thus any arguments against XML usage on the Web today are really arguing about using XML as a data format since it isn't really used as a document format except for XHTML [and even that is only by markup geeks like Tantek & Anne].

Anyway let's look at some of Tantek's arguments against using XML on the Web...

Tower of Babel Problem

If everyone invents their own tags and attributes, pretty soon you get people calling the same thing by different names and different things by the same name. While avoid both of those occurences completely is very difficult (many of the microformats principles are design to help avoid those problems), downright encouraging authors to make up their own tags and attributes makes it much worse and all you end up with are a bunch of documents that give you the illusion of self-description.

Didn't the XML world solve this with XML namespaces like six or seven years ago?

Temptation of Presentational Markup

What happens all too often when authors or developers make up their own tags is that they choose tags that are tightly tied to a specific presentation rather than abstracting them with semantics. Quite similar to the phenomenon of authors picking presentational class names.

As a casual user of HTML, I personally haven't seen a good explanation of why <strong> is better than <b> so arguments whose entire basis is "presentational markup is evil" don't carry much weight in my book. If I come up with a custom markup format and it has a <bold> element, is that really so evil? I'm pretty sure that the XML formats used by OpenOffice or Microsoft Office contain markup that is presentational in nature whether it is setting font sizes, text colors or paragraph alignemnt. Are they evil or does the fact that they aren't intended for the Web give them a pass?

Preferring Semantic Richness

Sometimes something is a bad idea not just in absolute terms, but also relative to other approaches and solutions.

A while ago I wrote about a semantic richness spectrum on the www-style mailing list which went into a bit more detail. Håkon Wium Lie wrote a paper that both predated my rough summary by a couple of years, and provided a much more thorough analysis.

 Languages with well-known semantics are preferred to proprietary/made-up XML. This is for many reasons, including accessibility, cross-device support, and future user agent support.

This seems to be arguing that instead of cooking up your own custom format you should pick an established format with the semantics you want if one exists. This is regularly practiced in the XML world especially when it comes to the Web so I don't see how this is an argument against using XML.

--

Seriously, I feel like I am in some bizarre alternate universe if having aggregators subscribe to HTML web pages is being advocated as being a better idea than using specialized XML formats like RSS & Atom.

That's it...I'm going back to my vacation. The world has gone too loopy for me.


 

Categories: XML

It looks like MSN Virtual Earth is live. In an attempt to beat everyone to the punch when it comes to building an application using the MSN Virtual Earth API, I present http://www.25hoursaday.com/moviefinder

It requires Javascript (duh) and only works in IE beecause I didn't have time to figure out the Firefox equivalent of innerHTML. Enjoy.

Pardon my brevity, I'm posting this from a kiosk at Heathrow Airport


 

Categories: MSN | Web Development

July 24, 2005
@ 02:40 AM

I'll be leaving for Nigeria in the next couple of days and should be gone for a few weeks. Going home is always fun, I'll have my mom asking me when I'm going to settle down with a nice Catholic Nigerian girl while my dad wonders when I'm going to stop goofing off at Microsoft and go back to school to finish my education.

Of course, the best part about going on vacation is the mountain of email and spec bugs I know will be waiting for me when I get back. :)

 


 

Categories: Ramblings

A couple of MSN betas snuck out into the world this week.

In his post MSN Shopping Officially Launches New Beta Site, Chris Jolley talks about the new http://beta.shopping.msn.com. Some of the new features include

  • RSS Feeds – it remains to be seen how aggressively consumers take to this, but I think it's super-cool how we are embracing an emerging technology.    
  • Ratings & Reviews - allows consumers to see what other consumers think of a product, providing them with increased confidence in their purchase decisions
  • Ability to browse our complete selection through an easy-to-understand taxonomy and powerful search
  • Refine searches with expanded, relevant criteria
    •  By price, rating, popularity, name, best match
    • Multiple Views - Results can be viewed in three different views
  • Usability enhancements:
    • Recently viewed– helpful little personalization feature that helps continuity between sessions
    • Compare prices across stores, find out who has free shipping, hot deals, etc.
    • Clean and consistent UI – The UI is clean and simple and designed to NOT get in the user's way
  • Useful Merchandising – Comprehensive set of merchandising, including the Gift Center , Seasonal Shops & Guides , and more

I met with the PM who owns the RSS feeds feature a few months ago to talk about my scenarios and its great to see that it's finally out there. I use the Amazon RSS feeds all the time and can definitely see myself getting some use out of the news feeds from MSN Shopping. All I can say about the ratings & reviews feature is...FINALLY. I've already begun to scheme about how I can convince Mike that we should totally gank learn from the feature in Yahoo 360° where you can include your reviews on your "space".

The MSN Screensaver beta is also out. Some of the features include

  • Personalize with background photos and news and weather information from MSN or any RSS feeds from websites you choose.
  • Search the Web and click news headlines directly from the Screen Saver.
  • Stay connected with Hotmail, MSN Messenger, and MSN Spaces. Track how many unread Hotmail messages and current Messenger conversations you have, and display blogs and photos from your friends’ MSN Spaces.
  • Some of the features of the screen saver are so useful I'm wondering why they are wasted on an app that typically runs when the user is away from the computer.

    And finally, http://www.start.com/myw3b has some new features. Sanaz Ahari has a blog post entitled new things on start.com... where she writes

    first and foremost, check out our new search results:
    - we now have tabbed results that include web, news and rss , so you don't need to do seperate types of search we just give you all the results and it's all ajax based of course
    - the rss resutls are very cool, cause you can just subcribe by clicking on subscribe and they'll get added to your feed
     
    we've also added themes : ice, granite and ocean... ice is my favorite :)
    super easy to navigate, needless to say all in place and no refreshes required.
     
    we got rid of our not so useful home link and folder view - so now when you click on a folder we don't replace your dashboard with the content of that folder... yes, we listen to our user feedback :)
     
    lastly you can now hit the esc button to close your overlay modules - super usable...

    There's a followup post on the start.com weblog entitled more on start: OPML support and popular feeds which states that they added support for importing OPML files as well.  

    Postscript: Anyone notice what all three of these betas have in common? (Hint: Starts with R ends with S and has an S in the middle).


     

    Categories: MSN

    Shelley Powers posted a comment to a recent post of mine about her experience interviewing for a Microsoft position. She wrote

    Tod, if I sound angry, I am. Bill Gates went in front of Congress and said we should have unlimited H1Bs, because Microsoft just can't find 'good' people in this country.

    I interviewed with Microsoft. As soon as I started talking with the guy, I knew he wasn't interested. Within the first five minutes. I've been around long enough to know when someone isn't interested.

    Microsoft doesn't hire 50 year old men, must less 50 year old women.

    As for interviewing, yes I have interviewed people. And hired them. I've never once had a bad hire. You can tell when you talk to people, their enthusiasm, how they respond to what you say, if they're a good fit. Do they have to have all of the tech background? Not a bit. Oh, I wanted certain things: interest and background with a specific programming language, experience with relational databases, and so on. But as for the nits, most of us can do something called 'learn'. I looked for motivation, interest, fit with the team, experience, but more importantly interest in the job.

    I can understand Shelley's frustration around not being made an offer for a position she feels qualified to handle. Last year, when I decided to leave the XML team I interviewed with a bunch of teams at Microsoft including the newly formed RSS team within the Internet Explorer group. The job would have involved community evangelization around the Longhorn/IE RSS efforts and working on platform APIs for RSS. Given my work on RSS Bandit and the fact that the job I was leaving was designing the core XML APIs in the .NET Framework I thought I was a shoo-in for the job. I wasn't. I didn't get an offer because I wasn't "passionate" or "experienced" enough according to the feedback I got when I inquired as to why I didn't get the job.

    I could have decided to give up because "Microsoft doesn't hire black men" or "Microsoft doesn't hire people in their 20s for high visibility positions" but didn't. Instead I kept interviewing and ended up at MSN working on social software. Personally I think I'm happier at MSN than I would have been on the RSS team, I've gotten to broaden my technical horizons and work with a more diverse set of individuals on a prettier campus. Also I still get to work on RSS stuff both in my personal time and with different teams at Microsoft in an advisor role.

    It's easy to give in to despair. Don't.


     

    Categories: Life in the B0rg Cube

    Jeff Schneider has a post entitled Hey, Don Box where he asks

    All of us in the SOA blogosphere have appreciated your input and insight. However it has come to my attention that Microsoft isn't practicing what they're preaching. I'm hoping that you can tell me that my information is dead wrong.

    I ask one simple favor. Start blogging about how Microsoft is using SOA internally.

    Don works on a platforms team so he is the wrong person to ask about first hand experience at actually deploying XML web services or service oriented applications at Microsoft. As for whether Microsoft uses services internally, this is all we do at MSN. I'm responsible for underlying platform services that are used by MSN Messenger, Hotmail, and MSN Spaces. The fact that you can lock down your space to distinct people in your Hotmail address book or the people who are on your Messenger Allow List (i.e. who you've given access to see your presence online) are all due to our service oriented architecture on our back ends. This would be a lot more difficult if each of these applications was a monolithic app on our back end.

    I'm also responsible for another set of services which are used MSN Member Directory, MSN Groups, and even Windows MarketPlace which I found out recently are going to be used by a lot more MSN properties without them ever having to ping me. When services work the way they are supposed to that's what happens.

    To answer Jeff's question, at least with MSN, Microsoft is definitely practicing what it preaches when it comes to service orientation.


     

    Categories: MSN | XML Web Services

    In a post entitled Atom 0.3 Denouement begins his advocacy for developers to stop supporting Atom 0.3 and states his intent to start flagging such feeds as being invalid in the Feed Validator come the fall. I planned to avoid blogging about his post until I saw the following comment by Mark Pilgrim where he wrote

    Atom 1.0 will shortly be an IETF RFC, which makes it as much of a web standard as HTTP.  Atom 0.3 was just some guys (and gals) dicking around on a wiki.  As it turned out, some guys dicking around on a wiki were able to produce a relatively decent standard, but that isnt saying much given the competition.  Atom 1.0 is a great standard, worthy of the label and worthy of being pushed by standards advocacy groups like WaSP...

    Although what Mark Pilgrim has written is factual it is misleading as well. Although Atom 0.3 was not backed by a standards body (and neither has any flavor of RSS by the way) it still became a de facto standard thanks to the advocacy of people like Mark & Sam. Specifically once Google decided to switch their RSS feeds to Atom 0.3 feeds they used their power as a dominant content producer to force every major aggregator to support Atom 0.3.

    At the time I blogged about how this was a stupid thing to do since it basically guaranteed that there would be two conflicting versions of Atom for the immediate future. Now there are hundreds of thousands to millions of aggregator users who will potentially be screwed when Google decides to switch to Atom 1.0. These end users are sacrificial pawns in what has basically been a battle of [male] geek egos over whether a blog post in an XML feed should be contained in an element named atom:entry or item.

    The only bright light in all this crap is that a few years after everyone else figured it out some of these XML syndication geeks are now realizing that instead of arguing over XML element names it is more interesting to figure out what other kinds of data can be syndicated beyond blog posts and news stories. See Danny Ayers's post Brownian Motion and Bill de hra on Atoms in a small world for examples of some of the Atom geeks finally getting it.

    Better late than never, I guess.


     

    July 21, 2005
    @ 03:44 PM

    During my morning blog reading I stumbled on three blog postings about Microsoft and recruiting which paint an interesting picture.

    1. From Shelley Powers's When We Are Needed

      This essay was inspired in no part by a discussion that occurred at Dori Smiths weblog, when she made the statement about women not being able to find work (linked earlier). In her comments, Robert Scoble said:

      Hmmm, at the same time you say the jobs are disappearing I was just talking with a key manager over on MSN Search and he says he is having trouble finding qualified developers in the United States. I also have had the same feedback from the developer division, the IE group, and quite a few others. And if you think this is a Microsoft thing, you should check with HR people at Google, Yahoo, Cisco, and other Silicon Valley companies. They are all having trouble finding great developers.
      I was angry and blasted Scobles comment, anger inspired in no small part by the implication that corporations such as Microsoft are just begging for people, when most of us know (and as I discussed earlier), this isnt true. Here is a fact, technology unemployment in this country exceeds overall unemployment. And women in technology have an unemployment rate higher than the men.

    2. From Joel Spolsky on June 15, 2005

      Recruiting

      To Gretchen : recruiting successfully isn't only up to recruiters. The best recruiting department in the world can't make people want to work at a company that's moribund, that can't figure out how to ship a compelling upgrade to their flagship OS , or update their flagship database server more than once every five years, that has added tens of thousands of technical workers who aren't adding any dollars to the bottom line, and that constantly annoys twenty year veterans by playing Furniture Police games over what office furniture they are and aren't allowed to have. Summer interns at Fog Creek have better chairs, monitors, and computers than the most senior Microsoft programmers.

      Recruiting has to be done at the Bill and Steve level, not at the Gretchen level. No matter how good a recruiter you are, you can't compensate for working at a company that people don't want to work for; you can't compensate for being the target of eight years of fear and loathing from the slashdot community, which very closely overlaps the people you're trying to recruit, and you can't compensate for the fact that a company with a market cap of $272 billion just ain't going to see their stock price go up . MSFT can grow by an entire Google every year and still see less than 7% growth in earnings. You can be the best recruiter in the world and the talent landscape is not going to look very inviting if the executives at your company have spent the last years focusing on cutting benefits , cutting off oxygen supplies, and cutting features from Longhorn .

    3. From Steven Sinofsky's Welcome to TechTalk!

      I wanted to start this blog to share information and views about how Microsoft recruits and hires college graduates, and what a career at Microsoft is like, at least from one perspective. I invite questions, points, and counter-points. Im excited to use this forum to have a discussion about college hiring at Microsoft. The name TechTalk comes from the series of seminars we do during the summer for interns at Microsoft--one of the most fun times of the year for me is to get to present to this group and learn from them how they feel about the work we're doing and the future of Microsoft.

      By way of introduction, my name is Steven Sinofsky and I am a senior vice president at Microsoft in the Office group. You can read my "official" bio on http://www.microsoft.com/presspass/exec/ssinofsky . Ive worked on Microsoft Office since Office 4.2d (the last 16 bit release). Ive been a program manager and a software design engineer, in addition to a general manager.

    Despite what Shelley thinks I know for a fact that we have a hard time filling positions at work. Whether this is because of a lack of qualified candidates in the US or because the Slashdot crowd hates Microsoft [as Joel puts it] is something I dont know. I do know our product teams spends a lot of time talking to folks who sound good on paper but dont do so hot when we talk to them. As for whether H1B visas are a good thing or not, well I'm here on an H1B visa so I guess I'm biased. :)

    It is good to see high level execs like Sinofsky getting directly involved in recruiting efforts. One of the things that is missing in the hundreds of Microsoft blogs is a sense of why the Microsoft internships are so cool. Looking back at my blog posts from when I was an intern four years ago it is fun to see how I became infected by the B0rg. Having someone like Sinofsky take part in showing off why it is so cool to be an intern at Microsoft is goodness. Microsoft's best hires are usually folks who started off as interns.

    The Office guys definitely rock.

     


     

    Categories: Life in the B0rg Cube

    It looks like Karen will be attending the BlogHer conference. From her post it seems she'll be part of a session with the following abstract

    Women around the world are leveraging blogs to get their message across - whether it be to share their experiences, promoting their business or voicing their opinions. But changing the blogosphere doesn't just happen from blogging about it - change can also happen from the source - those who are building the tools and software. Technology isn't as male-oriented as you might think.

    Did you know that many of the big-name blogging tools have women helping to design and build them? Ever wonder how decisions get made or why things are designed or work the way they do? We invite women interested in helping to shape blogging tools and those currently building blogging tools to participate in this forum. You don't have to be a techie - share your thoughts and gripes on blogging tools today.Tell us what you what to see happen.

    To many people the most familiar female face when it comes to blogging tools is Mena Trott. However there are a bunch of women working on building popular blogging platforms such as MSN Spaces who have been quite influential as well. For example, when I joined MSN the Spaces team had women in key positions; Karen owned the blogging experience, Divya owned photos and Lydia owned profiles. Since then some folks have come and gone and although Divya & Lydia are no longer with us we've added Maya who works on cool top secret stuff and DeEtte who now owns the photo experience.

    Although A-list and tech blogs tend to be filled with testosterone totting geeks pontificating about pointless geekery this doesn't mean that there haven't been women involved bringing one of the biggest revolutions in personal publishing to the world. 

    Hopefully, the BlogHer conference will be a useful way for some of these women to network and find a way to increase the visibility of their efforts. If that is what they want.


     

    Categories: MSN

    From the Microsoft-Watch article Google Pinches Another Microsoft Exec 

    Google continues to hire away top Microsoft talent. But this time, Microsoft is fighting back. On Tuesday, Google announced plans to open a product research-and-development center in China, and said it was appointing former Microsoft vice president Kai-Fu Lee to head the operation. On Wednesday, Microsoft announced it was filing a lawsuit against Lee and Google, claiming breach of both employee confidentiality and non-compete agreement.
    ...
    Other mid-level Microsoft executives have joined Google over the past couple of years, as well. And
    Google opened a product-development office in Kirkland, Wash., late last year. Some industry watchers speculated that Google did so in order to attract more hires from Microsoft, which is headquartered in nearby Redmond, Wash.

    It's the mid-level product and program managers whom Microsoft and other tech companies should guard most jealously, said Directions on Microsoft analyst Michael Cherry.

    "While a lot of people make a big thing about the executives and senior vice presidents that leave, these people rarely ship software," Cherry said. "I think it is a bigger issue when the group program managers and program managers with ten plus years of experience silently leave. No one mourns their departure, but these are the people that take the grandiose architectures and wild-eyed visions and actually make them into products that people can use—and do so in a timely manner.

    "The loss of these silent but hard working employees who keep the teams working together may have a bigger effect on the schedules of products like Yukon and Longhorn, and have a bigger long term impact on the company than any of the growing number of VPs and visionary architects," Cherry added.

    From the Seattle PI article Ex-Microsoft exec sued over Google job

    Microsoft also accused Google of "intentionally assisting Lee."

    "Accepting such a position with a direct Microsoft competitor like Google violates the narrow noncompetition promise Lee made when he was hired as an executive," Microsoft said in its lawsuit. "Google is fully aware of Lee's promises to Microsoft, but has chosen to ignore them, and has encouraged Lee to violate them."
    ...
    Tom Burt, a lawyer for Microsoft, said Lee announced Monday that he was leaving for the Google job and had given no indication that he planned to honor an agreement not to work for a direct competitor for one year.

    "To the contrary, they're saying, 'In your face,'" Burt told The Associated Press.

    Google shot back with a statement saying: "We have reviewed Microsoft's claims and they are completely without merit. Google is focused on building the best place in the world for great innovators to work. We're thrilled to have Dr. Lee on board at Google. We will defend vigorously against these meritless claims."

    Um, OK...

     


     

    Categories: Life in the B0rg Cube