Posts

Are You Ready for Live ID?

Communism doesn't work because people like to own stuff. - Frank Zappa Microsoft has rolled out its Live ID Web Authentication SDK and from some of the forum posts I've seen, developers are already misunderstanding what they really have to work with. You see comments like "hey, but it won't give me their email", or "Useless!", etc. Wrong! Windows Live ID is the authentication used by Microsoft’s web sites and services - for example, Hotmail and Live.com. Windows Live ID is the evolution of the original Passport Service -- the name change ostensibly to focus on Window Live services and its ability to federate in a multi-property, multi-service identity world. If you don't believe this is big, let me give you one number: currently, more than 380 million users have credentials that work with Windows Live ID. D00d, that -- is big! Oh, and by the way - it's not just for the web. There is also a Windows Live ID Client SDK. Mostly the offering has be...

Dr. Dotnetsky's All time Grammar Pet Peeves

Is your server "loosing" Session State? Is your "Web Sight" not getting enought traffic? Why you should pay attention to your grammar, since it's a direct reflection of your professionalism on the web. The worst offenders, explained in plain English, with examples. read more | digg story

SEO: Does Yahoo Get It With Site Indexing? NOT!

Not only is there no God, but try getting a plumber on weekends. - Woody Allen After a lot of pain, contacts and fixing, I'm not sure that they do. I am not going to name names or point fingers, but really, Yahoo seems to have completely lost it in the search engine wars. You put up a new website, create a sitemap, submit it to Google, Yahoo, and MSN ("live.com"), and you do everything right, including adding the new accepted "sitemap" directive to your robots file. Google jumps right on it. Within a day or so, virtually every entry in your sitemap is going to get indexed. If you ping them via the various RPC Ping server addresses and you have engineered the ability to update and use their Webmaster tools, the googlebot doesn't seem to have any trouble at all indexing your "stuff". That's coolio with me, because over a range of websites, I've found that the Googly Bear is responsible for 90% of my search engine traffic to the site. And -...

Ultimate Developer Tool List and WSSF Woes

I first met Scott Hanselman at the bus stop outside the W Hotel in Seattle. A group of devs including Rob Howard, Scott and I were waiting to go the the Mother Ship to have our brains crammed full of Geek Food. This guy is a ball of fire, I'm not sure if he ever sleeps (Scott Guthrie is another one of those). N.B. -Hanselman is walking to fight Diabetes and you can help! Anyway, Scott has come out with his 2007 version " Ultimate Developer and Power Users Tool List ". Once again he features my litle UrlKicker tray tool that will band-aid broken copied urls together and take you there, search on a number of providers with a copied search phrase to the clipboard, and even has a little "notes" facility that enables you to make notes and view them. WSSF Woes One of the problems you may encounter when using GAT packages and framework - generation wizards like the WSSF (Web Services Software Factory) is that the wizards don't always want to allow you to do "...

Not so Random Coin Toss: Mersenne Twister

“The generation of random numbers is too important to be left to chance.” — Robert R. Coveyou Often when confronted with difficult decisions, I resort to a simple coin toss to "get objective". But, flipping a coin may not be the fairest way to settle disputes. About 13 years ago, statistician Persi Diaconis started to wonder if the outcome of a coin flip really is just a matter of chance. He had Harvard University engineers build him a mechanical coin flipper. Diaconis, now at Stanford University, found that if a coin is launched exactly the same way, it lands exactly the same way. The randomness in a coin toss, it appears, is introduced by us sloppy humans. Each human-generated flip has a different height and speed, and is caught at a different angle, giving different outcomes. But using high speed cameras and equations, Diaconis and colleagues have now found that even though humans are largely unpredictable coin flippers, there's still a bias built in: If a coin star...

Developer Evangelists Unite!

Last Thursday, August 23 2007, I had the pleasure to get paid time off from my employer to attend a local Orlando MSDN Developer Evangelist event hosted by Russ Fustino , our Florida MS Developer Evangelist, in Orlando. I was both pleased and excited to see a real turnout of new faces I've never seen before, as well as good friends and several other MVPs who made the trip, either as attendees or presenters. Russ Fustino surprised me. Although Russ and his MS cohort Joe Healy and I have become friends because of our almost constant interaction at various developer events (Code Camps, MVP Summits, PDCs, Tech-Eds and even local developer user groups like our OneTug Orlando .NET User Group) I had never seen Russ do a full presentation. Bottom line, Russ is an expert presenter. This guy did four hours of "stuff" -- all by himself -- and I gave him an 8 out of 10. I've done some presentations at public user group meetings, and I intend to do more in the coming months. I ...

Visual Studio 2005: Project / Properties Display Errors

The quickest way of ending a war is to lose it. -- George Orwell I'm posting this fix because it is extremely difficult to find on the web. In certain situations, the underlying COM dll's or type libraries that "help" the Visual Studio IDE perform its various functions get unregistered, causing any number of different symptoms. This can happen for example if you've installed an Orcas Beta (which does it's own set of "stuff"), then uninstalled or done a repair or upgrade on Visual Studio 2005 on the same machine. Most of these COM Server "helper" dlls and tlbs can be found here: C:\Program Files\Microsoft Visual Studio 8\Common7\IDE You need to re-register those of these that are COM Servers. Of course, you cannot know which are and which are not, but running REGSVR32.EXE on all of them cannot hurt anything. What I did to make this easy is first to create a list of all of them. You can do this from a DOS window with the command: dir /b *.dl...

SEO Friendly Paging with ASP.NET 2.0 Data Controls

ASP.NET has lots of "out of the box" features that make the display of data easy, including pageable GridViews and DataGrids with little or no code. But the stock paging mechanism uses javascript to cause the postback, and the url of the new "page" doesn't change. This is not "SEO friendly", because the Googlebot won't index each page. Here's a fix in my recent article on eggheadcafe.com. read more digg story

ASP.NET: REGEX Parse the RSS / ATOM Feed Url from a Page

2 is not equal to 3, not even for large values of 2. - Grabel's Law I've been scraping again, I confess. Just can't resist it. One of the things I've run into when grabbing a bunch of web pages in a threadpool callback is how to determine if the page sports the autodiscovery tags (e.g. there is a feed for the site). Here is one way to do this with a little bit of REGEX: using System.Text.RegularExpressions; namespace WebLogsSearcher { public static class Matcher { public static string Parse(string htmldata) { Regex linkregex = new Regex(@"<link\s*(?:(?:\b(\w-)+\b\s*(?:=\s*(?:""[^""]*""'" + @"[^']*'[^""'<> ]+)\s*)?)*)/?\s*>", RegexOptions.IgnoreCase RegexOptions.ExplicitCapture); string url = ""; foreach (Match linkmatch in linkregex.Matches(htmldata)) { bool ok = false; Regex sublinkregex = new Regex(@"(?<name>\b(\w-)+\b)\" + @"s*=\s*(""(?<...

Analysis: Should You Publish Full or Partial RSS Feeds?

"After silence, that which comes nearest to expressing the inexpressible is music." -- Aldous Huxley This is an argument that comes up frequently among those who author content of any kind and publish RSS feeds of same - which is better - to publish the full content in the description field, or just a summary with say, a "read more" link that forces interested readers to go directly to the site to read all of it? I've done some research on the subject, as well as having some actual data of my own with which to make comparisons, and I am of the opinion that publishing the full content is the best way to go. There are basically two concerns that webmasters have that target this subject: 1. Since with a full feed RSS Subscribers will get to read the full blog content inside their newsreader, they would not visit the actual site - meaning lower pageviews would impact advertising revenue negatively. 2. A more ominous threat is from blog plagiarists and "Made F...