My name is Dan Appleman, and I've had a rather varied career. I run a software company
called Desaware that sells a
and various software components. I've written a variety of books and eBooks on Visual
Basic and .NET programming. I co-founded Apress,
which publishes some great computer books. I have a personal blog at
danappleman.com. I also do a bit of consulting, speaking at conferences,
and so on.
Like most developers, I spend a lot of time searching for information. Whether it's
trying to learn a technology, or find an solution to a problem, I spend a lot of
time online, especially on Google. Unfortunately Google (like other search engines)
suffers from some significant problems from a .NET developer prospective:
- It does not easily allow you to limit yourself to a subject domain. Many typical
developer search terms (like "cryptography" or "Url") apply to many technologies,
not just .NET. When I search for cryptography, I don't want to know how to do it
in PHP, nor am I interested in the latest government policies on the topic. I want
to know how it works in .NET.
- Google's idea of relevance may not match mine. For example, the relevance of a blog
written by the Microsoft developer who implemented part of the cryptography classes
in .NET may not be popular or have a high page ranking, but it's gold to me.
- There are many aggregator sites (not to mention troll sites) that republish blog
and forum information. So when I do find an relevant result, Google often returns
dozens of copies of the same content across multiple sites.
When I saw Google Custom Search (for the first time) I was very excited about the
possibilities it presented (as described
on my blog). Within 24 hours of seeing
it, I had launched searchdotnet.com.
How sites are chosen for the search engine
The initial sites were chosen based on my own experience of which sites tended to
be most useful in my own work. Since then visitor recommendations have been an important
source. When I evaluate a site for inclusion, here are some of the factors I consider:
- Is the site or domain a source of true expertise? If the site is authored by someone
on the Microsoft dev team, an MVP, or a well known author or speaker, not only am
I likely to include it, the site will also be tagged as "by_expert". This tag can
be used to refine results further after a search and is ideal when you're looking
to solve a tough problem and want to see if it's been addressed by someone with
- Does the site contain original articles or material? Whether it is an active forum,
or a blog, or a site heavy in code samples, if I see even a moderate amount of original
content it is more likely to be included.
- Does the site aggregate material from other sites? There are some great sites and
blogs out there that primarily republish or link to some great material. These sites,
even when they are really good, are NOT included in the search. Why? Because in
most cases SearchDotNet is already searching across the sites that are being aggregated,
so including this site would only result in an increase of duplicate entries.
- Is the site primarily .NET related? There are lots of great general software sites
that include some .NET material, but this is SearchDotNet, so a site requires a
substantial amount of .NET material to be included. In some cases where a good site
has a .NET specific section, the .NET section alone will be included (yes, the search
engine can include parts of sites).
- Is the site focused on marketing or supporting a product, tool, component or open
source project? If so, in most cases the site will be included on SearchDotNet.com/components
- a distinct custom search engine that only searches tool/component sites.
SearchDotNet obviously can't include everything .NET on the web, but that's ok.
My goal is that you be able to use SearchDotNet.com for your first attempt at searching
and get a high quality result quickly. If you don't, you can always do a full Google search, but
hopefully SearchDotNet will prove an effective first step. It's certainly working
SearchDotNet.com does not collect any personal information unless you provide information
(such as your email address) when making a recommendation. Once we process a recommendation,
it is discarded and any information you provided is ignored. The Google Custom Search
If you'd like to recommend a site or book to include on searchdotnet.com, please
use the recommendation form. You can reach
me directly via e-mail.