Blocking Google

Rupert Murdoch has been blustering about Google stealing his content and shutting down access to Google to any of his websites, including MySpace and some newspapers. This is a really strange position and most pundits, including myself (if I can call myself a pundit), think it is extremely poor judgement. Murdoch wants people paying for his content – probably because the advertising revenue he’s getting isn’t covering costs yet.

Google isn’t the Internet, and they aren’t the only search tool in town, but the idea that Google is stealing your content is pure ignorance. Google drives traffic to your sites. It’s what Google does – sell advertising by getting people to stay on the Internet as long as possible! Having Google link to your content is good news for any publisher!

But then I read this post at Neowin and my mind reeled. Microsoft is encouraging websites/content owners to block Google and partner with Bing, Microsoft’s search tool! OK, way to go Microsoft for trying to capitalize on a billionaire’s lack of internet savvy, but this isn’t good for Bing! But Murdoch wants people to pay for the content on his sites! If I have to pay to visit all of the search results I get from Bing there is no way I would switch from Google.

This could be an opportunity, but Bing is still the real underdog. Google is a real Goliath, but we haven’t found a real David in Bing yet. I wish Bing luck, but I still Google almost everything.

What Makes A Good ORM?

I’ve been using a few ORMs with a few projects, including NHibernate, SubSonic, Linq-to-SQL (L2S) and Entity Framework (EF) and even Strongly-Typed DataSets. Each provides an abstraction from the database, a few have Visual Studio integration, and they all simplify data storage for you, but I’ve found some are definitely better than others.

Continue reading “What Makes A Good ORM?”

A New Start, A New Discipline

I’ve been working as a consultant for a few years now, and while I think I’ve enjoyed a fair bit of success, one thing that is missing for me is the ownership of the projects I’m working on. In the last two years I’ve worked on five or six different web sites and web applications: one was put on indefinite hiatus and I’m unsure of its current state, one was completed by another developer, and at least three were canceled just short of completion because of lack of funds. It’s the canceled projects that are the most discouraging because excellent progress was made and hard work was put into them, but now they are in limbo and out of my hands!

Continue reading “A New Start, A New Discipline”

Google Chrome OS / Microsoft Bing

Google and Microsoft are starting a real “battle” of the titans, with Microsoft releasing a new search engine (Bing) and Google announcing Chrome OS.

The thing is, why are these two competing?  They both have their own monopolies in their own right, Google is now a verb meaning to search the web, and Microsoft Windows is the nearly ubiquitous operating system, even on netbooks.

The biggest problem I have with Google’s Chrome OS is that Microsoft is on the verge of releasing Windows 7, which according to many reviewers will be the best version of Windows yet – and it runs well on current Netbooks.  Chrome OS is going to be a ‘lightweight’ OS designed for running a web browser and web-based content.  This will mean that Netbooks based on Chrome OS can only run apps like Google Docs online instead of Microsoft Office, YouTube instead of Windows Media player.

I see the same problem with Microsoft’s Bing.  It doesn’t do anything I’m not already getting from Google search.  It just does the same thing, in the same way.  There is nothing really to help me do more, or bring me better quality search results than I’m already getting.

Continue reading “Google Chrome OS / Microsoft Bing”

Web Services, Overhead and Performance

Earlier this week a friend of mine asked me for some advice over an argument that some developers at his company were having.  They are collecting data from a device, and one developer wanted to have the device send the data to a web service to receive the data.  The other developer thought a web service would be to much “overhead” and wanted a different solution using direct writes or XML to the database and a UDP socket notifier for the server to parse the data.

Continue reading “Web Services, Overhead and Performance”

Fluent Interface API Design

I’m working at a new client and have written a few services to support a DotNetNuke CMS install, as well as a few modules.  To support the modules I’ve written one or two of my services using a Fluent Interface API.  This was fun and exciting, but some APIs didn’t make sense to be used fluently, or it complicated things more than I would have liked.

As a developer I think it is important to write the API so that it is usable and easy for a junior to understand.  Fluent is one way to do it, but it isn’t necessarily the only or best way!

Continue reading “Fluent Interface API Design”

NHibernate vs. SubSonic Another Look

Earlier I had compared NHibernate and SubSonic and chose SubSonic because it had migrations.  I’ve done two projects, one using SubSonic and the other using NHibernate and I can now compare the features a little better.

NHibernate is documented better than I originally thought if you look at nhforge.com, not at the hibernate site.  It also does some nice schema generation based on your mapping.  You still have to go through “XML Hell” to map the site, unless you use another mapper or FluentNHibernate (which does the mapping for you in code) or another tool.  As an ORM SubSonic feals cleaner and quicker since it generates the ORM classes from the database, where-as NHibernate generates the Schema from your mappings and ORM classes.

Continue reading “NHibernate vs. SubSonic Another Look”