Friday, February 29, 2008

FxCop Custom Rules with v1.36

Good reference to an article on writing custom rules for FxCop.

Tuesday, February 26, 2008

What's the Primary Purpose of your Consulting Firm's Web Site?

Woohoo, look at all the cool services we provide! We're awesome! Did you see all the companies we've worked for? We won awards too!

Weeeaaaaahhh . Wrong. You just missed the boat, pal.

What does a consulting firm do? They solve problems. How do they solve problems? Occasionally they leverage products but for the most part, consulting firms solve problems with smart, experienced, motivated people. The industry-accepted term is intellectual capital.

So, what's the most important thing to a consulting firm? Well, cash flow and profitability rank number one but where does cash flow come from? That's right: services. And who executes on those services? People.

When is the last time you got a call like this? "Well, I was searching the Internet and your firm came up so I thought I'd give you a call." Never happens. I expect anyone handling calls for a consulting firm wouldn't even know how to route this call. Business operates on relationships. If I'm a company in need of help, I'll first contact folks I know and ask them for advice on finding services. Or, perhaps my company is big enough to leverage a procurement department. But I'm sure not going to waste my time on Google looking for service providers.

If this is all true, why do consulting firms focus their web sites so heavily on marketing to potential clients? I believe that's a mistake and a huge missed opportunity.

Consulting firm web sites should focus on acquiring talent. The target audience is talented, smart folks who are looking for a new opportunity. Everything about the site from the home page to employee blogs should scream: "We're the best place for you to work!" The site should be an extension of the firm. It should be as personal as possible--a hand extended and a warm smile to potential candidates sincerely saying, "We're absolutely thrilled to be speaking with you today."

Along with overall theme, here are a few elements I see as must-have's for a great site:
  • Personal profiles - get to know the folks. Here's what Lindsey does during a typical day. Cool, huh?
  • Culture expo - photos from the last outing. Hey, I could picture having a lot of fun with these folks.
  • Staff blogs - what excites these folks? What are they passionate about? What sets them apart?
  • Events - where are they speaking? What have they published? What can I learn from this firm?
  • Communities - how do they make their presence felt? What circles do they travel? How do they contribute to the community and make us all stronger?
Chances are, the potential candidate already established a connection point with your firm. They saw someone speak, they read a published article (you are presenting and publishing, right?), they attended an industry event you sponsored, etc. You've got them checking out the firm but now you need to sell them. You need to be so compelling that they become convinced they need to create an "A" task of reaching out to your firm and prompting for a meeting, or a lunch, or a coffee.

There's no better way to bridge the gap between initial connection point and establishing a relationship than an effective web site. Stop targeting potential clients and start treating your web site's primary audience as potential candidates. It will fuel the flow of candidates into your ranks.

Monday, February 25, 2008

Visual Studio: Help for the Monday Morning Developer

Lately, I've been refactoring a C# WinForms application that ported from VB6 via a commercial converter. Let's just say the resulting code wasn't pretty. As a result, I've been refactoring the heck out of it. I'm down about 3000 lines of code to date. Nice.

This morning, I decided to change the namespace. I used Visual Studio's refactoring tool to perform the rename. Love it. Then, I start getting this error:



I search everywhere. There's absolutely no evidence of this previous namespace in the code. Where is this guy? Finally, I re-read the error more carefully and decide to check Project Properties. Yep, sure enough, the StartUp object is still using the old namespace:

Ok, so I'm operating a little slowly this morning. My bad. However, how come VS.Net couldn't have included Startup object in the rename refactoring? Further, how about throwing the Monday morning developer a bone and simply direct me to look at the Startup object. Appreciate it.

Silverlight Twitter Client

This is a cool write-up on a topic I just submitted for Day of .Net: Silverlight Twitter client. I swear I didn't see this beforehand! Ironically, I used to work at Clarity. Great firm.

Thursday, February 21, 2008

Save the World...Use Blackle

Blackle is a low-power-consumption custom Google search engine. Creative.

Friday, February 15, 2008

Visual Studio 2008 Product Comparison

A colleague was just hunting for Code Metrics analysis under VS 2008 Pro. No esta aqui. It's only included with VSTS. Here's an excellent VS 2008 product comparison Rob Caron alerted us to from his blog a few weeks back.

Thursday, February 07, 2008

Want to Learn BizTalk Server?

Until recently, I labeled myself BizTalk-curious but more accurately it would have been BizTalk-clueless (and...curious). I ordered "Foundations of BizTalk Server 2006" but haven't had a chance to tear into it yet.

Serendipitously, (now there's a word you didn't expect to read here...) my firm just hosted BizTalk 101 for a client. As a Microsoft partner, Microsoft was good enough to deliver a 3-day, online introduction training. Vishal Arora, the instructor performed brilliantly.

I'm certainly far from expert status but with this training, I at least can eliminate my BizTalk-clueless moniker. If you're a partner and want to get into BizTalk, this training is a great place to start. I recommend leveraging it in conjunction with a client.

10 ASP.NET Performance and Scalability Secrets

This is an off-the-hook good article on ASP.Net 2.0 performance improvements.

MOCSDG: More Information

A bit more information on the Mid-Ohio Connected Systems Developer Group (MOCSDG) from Monish.

Wednesday, February 06, 2008

Windows Live Mail

I've written about the Microsoft Live product line before. Live Writer is one of my favorite on/offline-friendly tools. Now Live Mail comes along. It's still beta (but hey, Gmail has been beta for what...3 years?) but looks very promising.

My wife runs her business from her Hotmail account (I know, I know...it's on the list). She's traveling for a conference soon and wanted a way to plow through some of her mountain of emails while on the plane using her new Insprion 1525 Vista laptop. However, we've yet to pull the trigger on Office 2007.

Worst case, I figured she could leverage Outlook Express but I ran across a post referencing offline mail options. #2 on the list was Live Mail. Super. I'm loading it now and will report back.

...good grief Live products take forever to load...

Installing the .Net Framework 3.0 SP1 on Windows 2003 Server

I'm building an [automated] build server requiring the .Net 2.0 and 3.0 runtime. Unfortunately, at my client, they leverage a proxy server. The standard .Net 3.0 SP1 framework redist is really just a bootstrapper. Logged in as a local admin on the box, I didn't have the opportunity to authenticate the installation EXE with my domain credentials. So, the install kept timing out.

Finally, I found this helpful post from Aaron Ruckman on how to download the very elusive, full framework package. It's here, BTW (x86).

I finally get the full installation EXE downloaded to a fileshare, re-run the install and wham--"XPSEPSC: XPS must be installed..." Excuse you? This isn't an XPS...it's a VM.

I found a few MSDN posts here and here outlining the problem. I'm still not clear on what XPSEPSC does (Google yielded little) but you can download it here
(x86). After installing XPSEPSC, the framework installed without issue.

Update:
Somewhat related, there is no .Net 3.0 SDK, perse. Because 3.0 is more an add-on to 2.0, the SDK remains [mostly] the same as detailed in this post. If you need specific 3.0 tools, look here.

Monday, February 04, 2008

Wi-Fi under Vista

We just bought my wife a new Dell Inspiron 1525 for her business. It came with Vista Home Ultimate. This is our second computer with Vista and for the most part, I love it and haven't had any issues--except for wireless configuration.

Home
We have 802.11 pre-n at home so I configured it with all the security bells and whistles. However, oddly, I had to dumb down to WPA-Personal from WPA2-Personal to get the 802.11g laptop to connect. I'm still not sure why but WPA2 just wouldn't fly. This was also true for my Dell desktop talking 802.11g.

Public
I enjoy working at Panera from time to time: good snacks, quiet (relatively...compared to my house and work environments), and the Wi-Fi is decent (and free). My wife brought her laptop there recently and I could not for the life of me get the 1525 connected to Wi-Fi. I couldn't even get Vista to tell me what networks were available. Both my other two 802.11g laptops under XP connect just using the "View Available Wireless Networks" dialog.

Vista annoys me from a wireless standpoint because, coupled with Dell's proprietary dialog, there are at least four areas in which to configure wireless. What? With all the fancy wizards and usability, why do I need to visit three different spots?

Finally, I gave up and started trolling Google. Didn't find much there either. After bringing it home, I started from scratch: Start >> Network and boom. There it is: Network browsing and file sharing is not enabled... Hello! Where were you before? I swear it wasn't there. So, that was my issue. Enable this and the rest is downhill.



I'm all for features disabled by default for security but the help documentation should have highlighted this as one of the first steps to try in diagnosing the issue. Nope.

Well, it's probably because I'm dense but if you run into this issue, now you know. Happy [un-cabled] browsing.