The Developer Community (RSS)

Notes related to the Developer Community at large.

Attending the PASS Summit

Steve Jones makes some good points in his blog post Training. I find it difficult to believe the short-sightedness of some organizations when it comes to training events like the PASS Summit.

This year's Summit - like all previous years to date - had enough top notch presentations and labs to make it worth the cost of admission, travel and expenses, and the cost of allowing a database professional to leave work for three days combined. More than enough.

Like Steve, I don't get it.

Also like Steve, I bet we'll see these DBAs at the 2008 PASS Summit in Seattle - and working for another company.

I wonder if those responsible for denying database professionals opportunities for training factor in the cost of hiring and training a new DBA every six to eighteen months?

:{> Andy

Technorati Tags: EMPs Database Professionals PASS Training Changing Jobs

Thanks to PASS Attendees!

I'd like to thank the people that attended my sessions at the 2007 PASS Summit in Denver this week! I had a blast and hope you all did as well.

The code will be available from the PASS website and on a DVD. For those in my sessions, I promised I would post the code here for my custom Counts test condition for Team Edition for Database Professionals. Free registration to VSTeamSystemCentral.com is required. The site has been live more than two years. I've sent a total of two emails to registered users during that time. And I never share email addresses - ever.

Extending Team Edition for Database Professionals with custom test conditions is fairly straightforward once you understand it. (Like everything else in life, Mr. Obvious...)

If you are completely new to coding and would like to build a custom test condition for database testing, fear not! The last part of Chapter 4 (entitled Testing the Database) of the Wrox book is dedicated to a beginner's walk-through of building your first custom test condition.

Yes I am promoting my new book. There's a reason: it's a good book.

:{> Andy

Technorati Tags: Database testing Team Edition for Database Professionals Custom test condition PASS

SQLServerCentral.com and Solid Quality Socials at the PASS Summit

I just returned from a night on the town here in Denver! First, I mosied over to the SQL Server Central bash and got to meet lots of interesting people including Steve Jones and Andy Warren - how cool was that!

Steve was busy administering the event but we finally got to meet and talk for a few minutes face to face - well, I had to look up to Steve... he's a tall guy! But I've been looking up to Steve for a while now anyway.

Andy's a wealth of developer community knowledge and it was great to hang out with him and discuss User Group, Code Camp, and SQLSaturday stuff.

Then it was time to saunter to the Solid Quality Mentors party. It was great to finally meet the people who have been writing the books I've been reading all these years! Solid Quality has the most awesome support folks on the planet - it was great to finally meet them face to face! I still can't believe I'm part of this cool organization.

It's now time for another run through the material for tomorrow's presentation entitled Applied Team Edition for Database Professionals.

:{> Andy

Technorati Tags: Solid Quality SQL Server Central PASS Summit 2007 SQLSaturday

At the 2007 PASS Summit!

PASS stuff!

I'm at the 2007 PASS Summit!

I was wandering around the Colorado Convention Center earlier today in shorts, unshaven, tired... looking like I'd been rode hard and put up wet. But I caught the last half of Gert Draper's excellent presentation on Team Edition for Database Professionals! Gert is the man.

I'm presenting on the same topic tomorrow (yeah, I know - great move there, Andy...) and then on SSIS Development practices Thursday. This promises to be the geekiest week I've had in a long time!

:{> Andy

Technorati Tags: PASS Summit 2007 Denver Team Edition for Database Professionals

Getting Ready For The PASS Summit!

The PASS Summit is less than two weeks away!

I'm getting ready for my presentations. I need a couple laptops to host virtual servers for the demos, so I bought some new gear to take with me.

Check out my Network-In-A-Bag!

Network in a bag!

It's a power strip, a couple CAT6 cables, power supply, and a NetGear 1G 5-port switch - all in a 1 gallon Ziploc bag.

:{> Andy

Technorati Tags: PASS Summit 2007 Networking

Good Managers

It occurs to me today that there are two types of IT managers: those who lead teams everyone wants to be on, and those who lead teams no one wants to be on.

:{> Andy

Technorati Tags: Management IT Leadership Team

Tech bloggers: Heads up

I received an interesting email a few days back. The sender isn't important - the text is:

Hi ,
I am interested in purchasing textlink advertising on your website Let me know if you are interested and we can discuss further details. I can make a good offer to make it worth your time.

Let me know!

Thanks

No one had ever asked about advertising on VSTeamSystemCentral.com before, so I responded positively.

The conversation took a couple odd turns - enough to raise red flags.

I eventually refused politely, and then not so politely (begging, the final red flag). Compare the message I received to the one received by the blogger at phillsacre.me.uk. Again, I had a different name, but the same pattern of email domains - for me first it was Yahoo, then Gmail.

I'm not sure what these folks are up to but after the problems suffered by job boards last week, I'm sticking with the Google Ads for a while.

:{> Andy

Technorati Tags: textlink advertising your website bloggers tech

Getting Lucky

I was recently reminded how lucky I am.

It's true, pure luck has played an important role in my life, defining where I am today personally and professionally. Well, maybe not an important role, but it's been there.

How?

Mostly in the form of opportunities. But I then had to act on these opportunities to get the most out of them.

This is starting to remind me of a joke a pastor once told:

A local minister rides out to visit Farmer Brown one fine summer day. As he pulls off the main road onto Farmer Brown's acreage, he admires the tall corn and plush rows of tomatoes and beans. When he greets the old farmer, the minister says "You and the Lord are running a fine farm here!" To which Farmer Brown replies "You should've seen it when the Lord was running it Himself."


I can show a direct correlation between the number of 75-hour weeks I work and how lucky I am.

I can also demonstrate an inverse proportion between the number of mornings I awake completely rested and how lucky I am; as well as a positive ratio of 20-hour days / "luckiness".

So yep, I'm a pretty lucky guy.

:{> Andy

Technorati Tags:

Bad IT Project Management

My sister-in-law recently passed the PMP certification (congratulations Heather!). I'm waiting for a call from her asking if we need to add resources.


The resources comment above is a joke, but it isn't really that funny. It's indicative of my decades of experience with bad IT project managers.

I believe and hope I have worked with some of the worst project managers on the planet. Why do I hope? I'd hate to think anyone has had to deal with folks worse than the poor project managers I've dealt with.

As I type, we're experiencing a heat wave in Farmville, Virginia. It was 107 degrees Fahrenheit here yesterday. It's the "dog days of summer", as my Granny used to call them.

Somehwere, you will find 30 or more push mowers lined up wheel-to-wheel along one axis of a lawn. On command, the 30+ operators will start their mowers. On cue, they will push them across the lawn, maintaining the wheel-to-wheel alignment, cutting the entire area in one pass.

This, my friend, is the home of an IT project manager.


My experiences have led me to a couple thoughts:

  • Frederick Brook's should be required reading for all project managers.
  • Proof of callouses should be required for the application process.

(The same can be said for MBAs, but that's for another post...)

Inspired by the book, Brook's Law states "Adding manpower to a late software project makes it later." It is perhaps best summed up by the following statement by Brooks himself: "The bearing of a child takes nine months, no matter how many women are assigned."

As an IT professional, you can learn to detect when you're about to be "managed". I share the following indicators and advice from my years of experience:

"Do we need to add more resources?" This question in and of itself is harmless. It's actually the way project managers greet each other and has no more meaning to ordinary folk than "How are you doing today?" or "How about this weather?"

The best answer to this question is a non-answer. After years of trying to correctly answer this (as though it were a meaningful question), I stumbled across an answer that works for me: "I don't know." Why does this work so well? The last thing a bad IT project manager wants to do is make a decision - at least one traceable to them.

"I am (or used-to-be) a software developer." If you hear this, you're in trouble. Big, big trouble. My advice to you is to vacate the project - and the premises - as quickly as possible. This isn't a fire evacuation, it's a bomb evacuation. You may wish to consider jumping out a window if you're on or below the third floor.

Why? You are dealing with a person who believes they were promoted because they were such a good developer. Mind you, this is true in less than 25% of my experience. And even then, odds are their resume includes COBOL or they aren't nearly the project manager they believe themselves to be. At best you have 1/3rd of a 25% chance that you're working for someone who knows a definition for delegate - a definition that isn't "someone who attends a convention."

The truth of the matter is this person was likely promoted before they could delay or otherwise further damage the software project to which they were assigned.

"What do I tell my boss (or the stakeholders)?" This question is the prelude to a demand. Your answer isn't important, the demand in the mind of the IT project manager is important. And that demand is for you to do something no sane developer would ever do.

There are a couple options. If you're feeling froggy, you can document the fact you were asked to take this ridiculous course of action by your IT project manager, and then do it. Be sure to address the issue in writing and as soon as possible. CC someone else - anyone else. If you can CC the project managers' boss without looking like you're trying to make them look stupid, that's best. If not, CC someone else at your level on the development team (and allow the bad IT project manager to continue their work of making themselves look stupid unassisted).

Note: Never BCC. BCC'ing the boss is the equivalent of placing a bold, red, flashing banner across the top of your message which states "I'M INSECURE". The boss will get this message, loud and clear. Go ahead and CC them if you believe it's warranted - those dogs need to wake up eventually.

Make sure it's in writing and someone else sees it - that's the point.

The other option is to simply ignore it and do what you know to be right and good. There's risk here too. Some bad IT project managers will call in bigger dogs to shout you down. It's good to have your mugshot and name on a book somewhere if you're going to exercise this option.

"Umm yeah. I'm going to need you to come in Saturday. Sunday's not looking good either..." People are people. Bad IT project managers don't get that. They call people "resources". People aren't resources, we use resources, but we're separate and distinct from resources. People are people.


Bad IT project managers are the reason we have IT Project Leads. After all, someone who knows what they're talking about needs to have some authority if any software project is to stand a chance of succeeding.

:{> Andy

PS - This post inspired a new category at Applied Team System: Expensive Management Practices - gotta love the acronym. :{>

Technorati Tags: Project Management IT Software Development

Frank's Trying To Plan A Wedding

Frank La Vigne is trying to plan a wedding (Congratulations Frank and Roberta!) but ran into an error that appears SQL-related (in method name, at least):

:{> Andy

Technorati Tags: Frank La Vigne Sql Error

Iteration = Maturity

Introduction 

I was recently reminded that iteration matures software.

The History of Andy, Part 1 

Like many DBAs, I was a software developer in another life. I built web applications - working my way up from HTML through DHTML and finally to ASP - and could regale (and bore) you young whipper-snappers with war-stories of how things were "back in my day". [/DanaCarvey]

But I won't.

The Times They Are a-Changin'

I'll share instead something I've witnessed many times since starting with software in 1975 - and something you probably already know: stuff changes.

And thank goodness stuff changes!

I recently ordered 1G of RAM from an online retailer. It should arrive before my next son (but that's not a given as Riley refuses to provide a tracking number - the doctors will induce Christy into labor Friday if he hasn't been born by then - but I digress...). I remember my neighbor John, who introduced me to computers, purchased a 256-byte RAM chip in the mid-1970s for about what I paid for the 1G. That's 256 bytes of RAM - not a typo. As I recall it was either a 14- or 16-pin IC.

Things have changed since then. Improvements in technology, brought about by building and improving upon existing knowledge, have brought us to a day when I can purchase 1,073,741,824 bytes for roughly the previous price of 256. I don't know how you feel about that. I think it's a good thing.

The idea of "building and improving upon existing knowledge" defines iterative development. Although the idea is relatively new to the software development field, it serves as the basis for engineering disciplines. Engineers iterate - build and improve upon existing knowledge - and we get more powerful hardware for the same amount of money. What's not to like?

Iteration - it's not just a good idea... 

Iterative software development builds and improves upon existing knowledge within a specific domain. Most domains are defined by an application (wholly or in part), enterprise knowledge (again, wholly or in part), or - most likely - some combination of the two. For example, let's say you work for a large corporation as a software developer. Your domain could be the corporate website. In which case you possess knowledge about the business of the corporation and web development. You mix these together to do your job. In this case, you will probably pick up marketing savvy and current trends along with the latest AJAX techniques.

As you make successive passes (iterations) through the website design interacting with marketing, your domain knowledge is built and improves. As your domain knowledge increases, the website will become more valuable to the corporation - as will you.

Iteration adds value.

Got Iteration?

The same can be said for database development.

Perhaps you've experienced this in your own database development efforts: you receive a request for a database design to meet some desired functionality. Or you're handed a design and asked to optimize it. Or maybe even you had an idea to capture data - performance metrics or something similar - and you're designing a database solution to accomplish this.

You get into the development a few hours or a few days and realize a little tweak here or there would improve performance, or readibility, or better adapt the design to your intentions. So you make the tweak and continue.

This improvement leads you to re-examine other portions of the design and you make more tweaks. Maybe your last change broke things. Maybe you see an opportunity to add a parameter to a stored procedure and combine the business logic of three stored procedures into one.

A "Growing" Solution 

Pretty soon, you have iterated enough to feel comfortable promoting, integrating, or even releasing the results - letting the effort move to the next step.

Depending on the nature of your efforts, it may not end there. If your database development is the back end of a larger application - say, the corporate website, for example - there will likely be requests for changes over time as the site grows (scales) in complexity and size.

When the requests come in you are not likely to start over. You will most likely build and improve upon your existing knowledge. You will most likely iterate.

Scaling forces iteration.

Voilà

This is how solutions mature - be they applications, databases, or both - regardless of who writes them or how many are involved in the development effort. It doesn't matter if the development team is one lady in a cubicle in the European Union or a development team of thousands at Microsoft.

Iteration matures software.

:{> Andy

Team System Web Access Power Tool!

Microsoft (Brian Harry, actually) announces the availability of the !

Web-based TFS folks - get it while it's hot!

:{> Andy

Technorati Tags: TeamPlain Team Foundation Server TFS Power Tool

Prepping for the Upgrade

As I type this I am working out the details of an upgrade for this blog. If all goes as planned, I'll be moving these existing posts over to a snappy new Community Server instance - where my other blog, Applied Business Intelligence, is hosted.

The folks at GoDaddy Tech Support have been great. No, make that awesome! Like every other competitive IT vendor on the planet, they've been making changes to internal structure and support. One of the more recent changes allowed me direct access to databases containing my value-added applications (like Community Server). Prior to this, I couldn't directly access the databases.

To complicate matters, I'd installed an updated instance of Community Server in another directory on my site. So I had two instances of CS running - one of which I could not reach the files and data (that would be the instance containing this blog).

I would ask them about my Community Server instance and they would respond "It's right there - see it?" And I would have to explain to them I couldn't see one of the instances. It took more than a few emails, but they really hung in there with me, were very professional, and worked with me until I got the data I was after. Kudos GoDaddy Tech Support!

:{> Andy

Technorati Tags: GoDaddy Customer Service Tech Support Moving Applied Team System

Notes On Project Success - Part 2, to Stake-Holders

Yesterday, I addressed Technologists regarding Project Success; today I address Stake-holders.

I have participated in projects that have succeeded and in projects that have failed. One thing I noticed about the failed projects: expectations were poorly - or not - managed.

What are examples of project expectations?

  • Functionality - when completed, the application / upgrade / database / server will allow me to perform xyz.
  • Time - how much time one expects to develop the functionality. Can also include a schedule for deliverables and / or milestones.
  • Expense - how much one expects to pay for the functionality.

As a stake-holder you know what you want. And you can probably communicate your expectations - using the three areas above as a guide - effectively. Issues arise when, for whatever reasons, there is a disconnect between your expectations and the those of the IT team tasked with performing the work.

I've witnessed several unsuccessful executive responses to the disconnect scenario:

  • "Ostritch" - ignoring the disconnect in hopes it will disappear with time.
  • "Gambler" - belief that there's a big score (project or technical break-through) just-around-the-corner that will save the day.
  • "Taskmaster" - belief that threatening people is the way to motivate them to work around challenges.
  • "More-Resources" - a firm belief that more resources can solve any problem known to humanity. (I often imagine these folks live in subdivisions and get their neighbors to help mow their lawns. In my mind I see forty push-mowers aligned wheel-to-wheel along one edge of a lawn. On signal, they all puch across the lawn, mowing it from end to end in a single pass...)

I worked for a company that decided to employ Performance-Based Management techniques to a successful team. They actually applied the concept company-wide, regardless of whether the teams were successful or not. In this particular flavor of PBO, 20% of employees were considered outstanding, 60% were satisfactory, and 20% were acceptable losses that the company would be better without. These numbers were set in stone and never changed.

My questions were:

  • Who failed? Did HR fail 80% of the time by hiring mediocre to poor employees? or did our management disillusion and de-motivate these people into their non-excellent state?
  • Are we, in effect, planning to never get better?

Statistical control works on processes, not people - at least not well on people.


So what is the solution?

Communication.

It's that simple. Executives have to either be approachable by the IT team or someone representing them, or you must appoint someone to be approachable in your stead. Leadership dynamics (or just plain scheduling issues) may require you to appoint someone. If so, try to find someone who speaks both business and technology.

Realize that sometimes you do not know what you do not know. I run a couple small corporations and have an appreciation for the amount of work involved in merely administering such an entity. I also know technology changes every day. It's difficult for anyone to keep up - especially if you're minding stock-holders, regulators, and the lot. We may have moved beyond the technology you understand. If we haven't, we will soon.

Either hire people you trust or trust the people you hire. If someone violates the trust, respond accordingly. But do everything within your power to exude trust-worthiness as well as trusting-ness.

For truly innovative people to be free to succeed, they must first be free to fail.

The best tools were once toys. IT professionals are notorious tinkerers. You will be astonished at the return on investment for a weekly-scheduled hour of "play time" for developers.

:{> Andy

Technorati Tags: Software projects Success Failure Technologists

Notes On Project Success - Part 1, to Technologists

There was a very interesting article posted not long ago at SQL Server Central by Janet Wong entitled My Projects Have Never Failed.

In the article, the author explains projects that experienced varying degrees of success for various reasons - but in all cases a disconnect existed between the end-user or customer expectations and the delivered product.

Personally, I consider these projects failures.

Here's why: The stake-holder or executive has this expectation. It may be very unrealistic, but they hold it nonetheless. They may be very educated people or not. They may understand technology or not. None of this impacts the fact that they hold expectations.

Q: Who's in charge of communicating realistic expectations?

A: Technology people.

Or at least a member of the technology team.

A good technology team has several moving parts and people fulfilling different roles.
Note: If you're a one-person-show, this post is not about you.

At least one person on the team needs to be customer-facing. That person needs to be an expert in communicating with business people who hold unrealistic expectations. Make no mistake: this is a talent and an art.

Good communicators are rare in life, rarer in business, and practically extinct in the technology sector. Most good communicators abandoned IT departments decades ago and moved into sales where they could enjoy salaries orders of magnitude beyond what IT departments will pay them. But I digress...

I don't blame my customers when their expectations go unmet - I blame myself. Had I communicated something better - or even differently - the outcome would likely have been better for everyone.


So here are some tips for communicating with project stake-holders / executives:

  • You may understand what you mean when you say "Third-Normal Form Relational Database" at a meeting with executives, but few of them will. It's not their job to understand - that's why they're paying you. Step up. If you cannot translate your conversation into executive-speak, let someone else do the talking. If your point is to embarrass the executives, you'll probably not try that at your next job.
  • Identify someone on your team (or add someone to your team) to serve as a point-of-contact to the executives. If your team has a project manager, they may be the best person to do this. I've also seen horrible project managers who exacerbate the problem with their own inability to communicate (or worse yet, take the side of the stake-holders and hang the development team out to dry).
  • Keep it short.
  • Keep it as simple as possible. Stake-holders and executives do not need to know the history of iterations you went through to arrive at your conclusion. Take it as a sign of confidence in your abilities that they accept your judgment on the matter.
  • Stake-holders and executives have different priorities from you and I technology people - remember that.
  • If you deliver quality late, no one remembers. If you deliver junk on time and under budget, no one forgets.
  • The old consulting axiom ever applies: Under-promise, over-deliver.

This is business. This isn't academia; you do not get to interpret your own results.

It's not a success unless they believe it to be a success.


Me, I've had projects fail. Some of them have been spectacular in the scope of their failure. To date, I've stepped up, admitted the failed status of the project along with my errors, and promptly moved to correct the issues. I've found excuses to be a waste of my and my customer's time.

Having a project fail is bad enough; failing to manage the failure takes it to the next level.

Remember, if you fix it, it will be ok.


Tomorrow, I address Stake-holders.

:{> Andy

Technorati Tags: Software projects Success Failure Technologists

On the Road Again

Like Willie Nelson, I'm on the road again starting this week. I enjoyed my time working remote but look forward to getting back to SSIS training.

A bunch of friends are attending Tech Ed. I'm unable to attend because of work and life scheduling (I can't attend Tech Ed and take enough paternity leave), but it's all good. If, like me, you cannot make the conference, you can check out cool stuff at Virtual Tech Ed.

I'm hoping to get to the conference next year. The only conferences I'll make in 2007 are the PASS Summit and some Code Camps.

:{> Andy

Technorati Tags: Tech Ed 2007 PASS Summit 2007 Code Camp

Surface

If you have any interest in User Interfaces, you must watch - immediately.

, a coffee-table shaped computer with some unique UI characteristics. The coolest of these is the ability to respond to multiple "touches" simultaneously.

The obvious question is: How long before this screen technology makes its way to other touch-based devices (handhelds and tablets)?

:{> Andy

Technorati Tags: Microsoft Surface coffee-table computer GUI User Interface

Testing With Powershell

I caught this article on by in this month.

The article, combined with Kevin Hazzard's recent presentations at Richmond Code Camp and the Richmond .Net Users Group, piqued my interest in .

Unlike other scripting shells, Powershell works with .Net objects. It exposes all parts of the .Net framework, but truly exercises reflection.

This makes Powershell ideal for quick, interface-free testing.

:{> Andy

Technorati Tags: Powershell Testing

Managing The Thing You Cannot Touch

Yesterday I wrote about The Thing You Cannot Touch. Today I'm going to tell you some ways to manage the situation.

First, try to determine why You Cannot Touch The Thing. This is invaluable information in charting the waters ahead - especially if you're consulting.

Second, accept the fact that there's better than a 90% chance that you will not, in fact, be allowed to Touch The Thing. In my experience, three things must be true for you to overcome the business friction imposed by The Thing:

  • You have to try everything else first.
  • Everything else must fail to sufficiently address the issue.
  • The source of the issue must be mission-critical.

Regardless, your best knee-jerk reaction is acceptance. This is tough for a professional. In your heart of hearts you know what it takes to solve the real issue. And yet, you've been told You Cannot Touch It.

The good news? There's also a better than 90% chance you can find a way to solve the issue - or at least alleviate the client's pain - without Touching The Thing.

Modern enterprise applications are comprised of lots of moving parts. The Thing is probably not the sole source of pain. Addressing other bottlenecks may do the trick - at least for now.

And, if you're the person they called last time they had an issue and you solved it (and weren't "difficult" to work with), you'll likely get the call next time.

How cool is that?

:{> Andy

Technorati Tags: Consulting Software Development Satisfying The Customer Leveraging New Business

The Thing You Cannot Touch

I have this theory about consulting. I call it The Thing You Cannot Touch. Since a few friends have found it amusing I thought I'd share. It goes like this:

A potential client contacts your firm. A conference call is arranged to discuss the issue. During the call, the issue is defined. Resolution theories and attempts to date are shared, along with their results. The current status is explained - along with

The Thing You Cannot Touch.

Sometimes an attempt at justification accompanies the announcement: "We know it can't possibly be _______ so we're not going to waste any time looking at it."

Other times, it's just put out there for what it is: "You can't touch _______."

My experience has shown the heart of the issue almost always lies with The Thing You Cannot Touch. It needs to be fixed but someone, somewhere, for some reason does not believe it to be so - and so it Cannot Be Touched.

Sometimes it's political - It's someone's "baby". They built this application just ten short years ago - worked nights and weekends and toiled and sweated and bled to make it work - and rode it all the way to CIO, after all. Who are you, lowly consultant, to tell them VB 6 code should be re-written in this new fad known as .Net? Doesn't Vista support VB 6 until the mid-20-teens?

Sometimes the decision-maker doesn't understand the differences in the technologies.

Sometimes it's a purely market-driven business decision - and the decision-maker is right and justified in choosing to keep hands off The Thing. It's not all about technology folks... it's sometimes about what I like to describe as the (little "s") software (big "B") Business.

If you find yourself on a consulting conference call and The Thing You Cannot Touch comes up, pay attention. Tomorrow I tell you how to Manage The Thing You Cannot Touch.

:{> Andy

Technorati Tags: Consulting Software Development Thing You Cannot Touch Old Code Outdated Code VB 6

Raleigh Code Camp 2

A bunch of good people in the Triangle area are hosting their second Code Camp!

:{> Andy

Technorati Tags: Code Camp Triangle NC Developer Community

Popfly

Microsoft Popfly looks more like an experiment than a website that allows you to build websites with little or no programming skills. Maybe it's a little of both.

I like the concept - a lot - and encourage you to check it out. You have to register to play and you need a Microsoft Passport account to register (but seriously, who doesn't have an MS Passport account these days?).

Something to note: Adam Nathan, author of one the coolest new books about WPF () is one of the members of the development team.

Also note the domain extension ".ms" belongs to the island Montserrat, famous for Beatles producer George Martin's recording studios until a volcano closed the capital, docks, and aforementioned studio in 1995 (I love wikipedia!).

:{> Andy

Technorati Tags: Popfly Microsoft Nathan Developer Community

Looking Back...

In the spirit of an earlier post about growing as a developer...

If I look back on code I authored six months ago and feel all well and good about the job I did, I re-examine my skills upgrade in the last six months. I have to tell you - I look back regularly and cringe. But I think that's a good indication that my skills have improved and evolved past where I was at the time.

Mind you, I also look back and see concepts and principles in my old code that were great - some even ahead of their time. But those experiences are outnumbered by the former experiences.

:{> Andy

Technorati Tags: Old Code Skillset Update

posted Monday, May 21, 2007 12:01 AM by andy with 0 Comments

Frank About VB6

Frank La Vigne, Tablet PC MVP has something to say in an interesting post about Microsoft's decision to provide support for VB6 runtime through 2017. In my attempts to verify the new date, I found runs until 14 Jan 2014. Perhaps the site is out of date.

I have mixed emotions about Microsoft's decision to support any form of VB6 into the mid-2010's. Perhaps the best of all scenarios is this: a company depends on an application written in VB6 to continue operations. If support for VB6 dies, the company dies along with it. If this is the case, I have some phrases I urge you consider: "single point of failure" and "fault tolerance".

Software development is, at its heart, an engineering discipline - despite the fact that it's sometimes (most times, probably) not treated as such. I can accept there are businesses cases for keeping an application coded in VB 6.0 in 2007, but my acceptance dwindles with each passing day.

Software maintenance is like every other kind of maintenance - it costs money, time, and effort. The money part is pretty obvious - someone has to be paid to maintain the code, make changes, patches, and add the occasional feature. It takes time and effort to maintain an application - time for iterations to develop and test, pilot time, deployment time, and sometimes downtime. But this is a necessary part of the Software Development Life Cycle. Stuff gets old - beyond the patch and add phase - and needs to be replaced.

If you disagree, hop into your Model T, drive on over to Farmville, and we can discuss the matter face-to-face. ;)

Frank makes the point that this extension will give the development platform a 20-year life cycle: "which in the technology world equates to several eons." I've often said software compares to cars, except that 1 software year is roughly equivalent to 10 car years. If that analogy holds, this is like stretching support of a car model to 200 years.

This is nothing against Visual Basic. I happen to love the language - even today. But it's changed from when I started keying hexadecimal from the pages of Byte magazine one summer almost 32 years ago - it's changed a lot. I rode the changes through GWBasic and started using VB 1 right before VB 2.0 was released. I made the switch when VB 4.0 introduced classes and 32-bit support. The jump to .Net was simply the latest change.

I understand folks not enjoying the process of learning a new platform. I think there's a place for maintenance coders in our industry, but it's not the same place as cutting-edge developers. I don't think many people will have a problem with that last statement, so here's one sure to stir the pot: I don't think the pay should be near the same for maintenance coding compared to cutting edge developers.

I think maintenance coding is a great place to vet recent graduates or people otherwise new to the software development industry. It could also be a place for those who choose to not upgrade their skills for whatever reason.

I've said it before and I will say it again: There are careers out there that you can just learn once and do forever, but those jobs do not exist in the software development arena. If you're not willing to dedicate 25% of the time you spend coding improving your skillset, you are in the wrong business.

:{> Andy

Technorati Tags: VB6 support developer community

Geekette's Blogette

Robin Edwards wrote a nice post about Richmond Code Camp 3.

Robin is president of the Roanoke Valley .Net Users Group and a regular fixture / volunteer at all Richmond Code Camps. Check out her blog!

:{> Andy

Technorati Tags: Developer Community Robin Edwards Roanoke Valley .Net Users Group Richmond Code Camp

"Live From MEDC in Las Vegas, Nevada..."

"... heeeeeeeeeeeeeere's Frank!"

Frank La Vigne, Tablet PC MVP is having a blast at MEDC in Las Vegas. He even scored an interview with Mike Hall, Windows Embedded Guru.

:{> Andy

Technorati Tags: Developer Community MEDC blogger live Frank La Vigne

Richmond Code Camp 3 - Success!

Richmond Code Camp 3 was a success!

The most common complaint throughout the day was "How do I choose between these cool sessions?!"

The speakers did an outstanding job! The volunteers were awesome! And, as usual, the Richmond Code Camp Steering Committee did a great job with all the planning and execution!

The contributors really came through for us this time - browse over to the Richmond Code Camp 3 website for a complete list!

We start planning RCC4 in two weeks! Hope to see you all there!

:{> Andy

Technorati Tags: Developer Community Richmond Code Camp RCC3

Richmond Code Camp 3 in 3 days!

Can you believe Richmond Code Camp 3 is only three days away?! Wow, time flies when you're having fun!

It's not too late to (although registration is filling up fast!). Come on out Saturday, have something to eat, learn some cool new tips and tricks from local and regional developers, and - maybe - win an XBox, Zune, or copy of Vista!

:{> Andy

Technorati Tags: Richmond Code Camp 3 Developer Community MSDN

My Goals for the Richmond Developer Community

I want to see the Richmond Microsoft Developer Community grow. That's my goal for Richmond and the surrounding communities.

I want to facilitate free and open access to software professionals and experts for enthusiasts, hobbyists, junior developers, and anyone who just wants to know more about developing software for Microsoft platforms.

Some of the coolest .Net and SQL Server work on the planet is being done right here - although a lot of it is subject to NDAs, security clearances, and/or has patents pending, it is being done here nonetheless.

If you're interested in learning more and growing your skills, an excellent opportunity presents itself just seven days hence: Richmond Code Camp 3. !

:{> Andy

Technorati Tags: Richmond Developer Community Goals Code Camp

Today We Are All Hokies

Today We Are All Hokies

Virginia Tech has a fitting memorial on their website today. At noon, we will pause and pray for the friends, families, and loved ones of 32 fallen - along with individuals and families around the world.

It is a somber day in the Commonwealth.

Stevie Ray and I got up early this morning so we could stop by Walmart on the way to pre-school. We wanted to pick him up a Tech t-shirt, cap, or shorts to wear today. He's four years old and doesn't need to know the details of what happened, but it's a lesson in community. I'm proud of Farmville - there wasn't a single VA Tech item left in the store. There wasn't so much as a maroon or gold t-shirt left on the shelves.

I told him today we were remembering good people who are no longer here, and are praying for their friends who will miss them now that they're gone. I told him we need to appreciate the good people around us every day, and that it's sad that it takes bad things to remind us sometimes.

Again, he doesn't understand - and part of me hopes he never does.

His oldest sister, Manda, is a Virginia Tech alumnus. She's also a pastoral counselor who helps folks when their loved ones are in the hospital, so she sees a lot of pain. She's headed to the memorial today in Richmond along with lots of folks from the area.

So today, I invite you to join me and pause at noon and remember 32 good people - a lot of them heroes - taken from us too soon.

Andy

Technorati Tags: Today We Are All Hokies Virginia Tech Hokies Pause at Noon Heroes

Microsoft Announces Silverlight

Microsoft announces - the new web platform for delivering RIAs (Rich Interactive Applications) via the web.

One interesting twist on the name of this platform: it was named after web guru and Community-Credit founder David Silverlight.

So far as I know this is the first time Microsoft has after an individual. Congratulations David!

:{> Andy

Technorati Tags: Silverlight web platform

Virginia Tech

Our thoughts and prayers are with the families and friends of students, faculty, and administration of Virginia Tech this morning.

:{< Andy

Richmond Code Camp 3 Swag!

Richmond Code Camp 3 is less than 2 weeks away!

We have an awesome speaker / topic line-up - check out this schedule.

We have some awesome swag this time! In addition to the usual free magazines and best-selling technical books, we also have cool prizes!

It's going to be a fun and educational day - from Frank's opening keynote to Darrell's closing keynote! today!

:{> Andy

Technorati Tags: Richmond Code Camp Developer Community RCC3 Frank La Vigne Darrell Norton

posted Sunday, April 15, 2007 5:52 PM by andy with 0 Comments

Richmond Code Camp 3 (RCC3) in less than 3 weeks!

Richmond Code Camp 3 (RCC3) is less than three weeks away!

is filling up fast.

RCC3 will be April 28th. Code Camps are day-long events for and by developers. This the third Richmond Code Camp and it promises to be the biggest and best to date!

To receive the latest news, join the Richmond .Net Users Group or join the Richmond SQL Server Users Group!

If you're thinking of attending !

:{> Andy

Technorati Tags: Developer Community Richmond Code Camp RCC3

Congratulations Frank!

Frank La Vigne is published in CoDe Magazine!

Frank's article Exploring Ink Analysis is now available online. Congratulations Frank!

:{> Andy

Technorati Tags:

Solid Quality MVPs!

A bunch of MVP Solid Quality Mentors were renewed or awarded yesterday!

  • Marino Posadas
  • Dusan Zupancic
  • Eladio Rincón
  • Dino Esposito
  • Karol Papaj
  • Erik Veerman
  • Peter Myers
  • Chris Webb
  • Randy Dyess

These folks are not only really smart, they're also cool to work with!

Congratulations to all!

:{> Andy

Technorati Tags: MVP Solid Quality

It's called "Iterative" for a reason...

Iterative development has many strengths and a few weaknesses. But one thing is not in dispute: iterative means you make more than one pass through the code.

The major weakness of iterative development is its unpredictability. It's definitely time and material project work. This can be very frustrating to the folks trying to budget the project.

One strength of iterative development is the quality of the code and final product. Combined with test-driven development practices like Test-First Development, iterative development completes a project and leaves a suite of regression tests in place. This increases the development cycle for version 1.0, but pays for itself many times over with each subsequent iteration.

I was asked for an estimated delivery time once by a project manager. I'd been given time to do a thorough analysis (sometimes I miss those days) and had an answer: "6 months."

"Unacceptable, you have three months." the PM responded.

Undaunted I replied "Ok. You can have the application in six months, or you can have a three-month project - three months late."

They didn't like either option so they moved me off the project and hired new people. Last I heard, they're still working on it...

:{> Andy

Technorati Tags:

Cool Scripting Tutorials

is a cool site to learn scripting - from the Microsoft Scripting Guys!

Definitely worth a click for us old-timers too. I learned something, and I've been writing code since the days we had to carve our own chips out of wood.

:{> Andy

Technorati Tags:

Code Camps

Roanoke Code Camp was a rousing success! Congratulations to Robin Edwards, Harold Buckner, and the entire Roanoke Valley User Groups organization!

Richmond Code Camp 3! April 28, 2007

You can .

Richmond Code Camp 3 will be held 28 Apr 2007 from 8:30 AM until 6:00 PM with Welcome Time starting at 8:00 AM. The location of RCC3 is ECPI-Innsbrook - the same location we used for RCC2.

The call for presentations is now closed and the Code Camp Steering Committee is in the process of finalizing the schedule. We have some awesome presenters and presentations to sort through, and really cool contributors for this event contributing some awesome stuff to give away! This is going to be a blast!

:{> Andy

Technorati Tags: Richmond Code Camp RCC3 MSDN Code Camp

Roanoke Code Camp - Time for me to present!

Well, I have to go prepare to present!

I may blog more later - if I don't, Robin Edwards and the Roanoke Code Camp team really did a great job!

:{> Andy

Technorati Tags:

Roanoke Code Camp - Rob Ericsson - SQL Server 2005 XML Datatype

Rob Ericsson is presenting on the xml Data Type in SQL Server 2005.

As I arrive, Rob is explaining xml data type conversions: you can convert from text to xml, but it's very difficult to convert back.

Rob dives into a comparison between SQL Server 2000 and SQL Server 2005 xml functionality. It's nice that SQL Server 2005 gives us the option of formatting the XML into elements - where we were limited in SQL Server 2000 to an attribute-based format. By adding ",xmlschema" to the query, we can generate a schema along with the data - how cool!

Rob is a great speaker!

:{> Andy

Technorati Tags: Roanoke Code Camp Rob Ericsson XML data type SQL Server

Roanoke Code Camp - Geoff Snowman - BizTalk

After a tasty lunch (thanks !) Geoff Snowman is presenting on BizTalk.

If you've never heard Geoff talk about his passion, you've missed out.

Geoff is walking through BizTalk Adapter for Host Apps - explaining how BizTalk communicates with CICS on an IBM mainframe.

His demo is building a BizTalk message using Visual Studio 2005. When BizTalk installs, VS project templates are added to the IDE. Geoff is demonstrating defining a Context Property for use in routing BizTalk messages. He accomplished this by promoting a property in an XSD - which was auto-generated by a BizTalk plug-in (which, Geoff explains, is not installed by default).

Good info! And, as always, another stellar Geoff Snowman presentation!

:{> Andy

Technorati Tags: Roanoke Code Camp Geoff Snowman BizTalk

Roanoke Code Camp - Chris Love - Search Engine in ASP.Net

Chris Love, a fellow mentor at Solid Quality Learning, is creating a search engine in ASP.Net.

I'm digging the way he's approaching the topic: He mixes "war stories" into his presentation, and the demo consists of Chris building, debugging, and optimizing the application!

Chris is great in front of an audience. He's very intelligent, but breaks things down very nicely. The crowd here today is really enjoying Chris' highly interactive delivery style.

Chris did a great job presenting to Richmond Code Camp 2 last October (three sessions!). Since he didn't volunteer to present at RCC3 maybe I can guilt him into presenting to the Richmond .Net Users Group...

:{> Andy

Technorati Tags: Roanoke Code Camp Chris Love Search Engine ASP.Net

Roanoke Code Camp - Tim Tatum - T-SQL

Tim Tatum of Core Consulting is presenting Transact-SQL.

I met Tim and his lovely wife Sharon at the Speaker Dinner last night - they're good people.

Tim's a former school teacher who went back to school to obtain and MBA with an IT focus. I've met a lot of top IT professionals who were once in other careers and later moved to IT. In my opinion, these folks bring a diversity to the field like nothing else.

I learned Tim lives just up the road, so I've already bugged him (last night) about speaking at the Richmond UG meetings.

Tim is speaking on the fundamentals of SQL Server development and design. This is so very important. Why? Whenever I go to a new client who is experiencing performance trouble, inevitably they have designed something in violation of some fundamental.

Tim is, probably because of his teaching background, an excellent speaker! He breaks things down very well and has a soothing delivery style.

Good job, Tim.

:{> Andy

Technorati Tags: Roanoke Code Camp Tim Tatum Core Consulting

Roanoke Code Camp I - Omri Bahat - Best SQL Server Practices

Dr. Omri Bahat, SQL Farms guru, is sharing some serious knowledge about the internal workings of SQL Server as I type - focusing on the differences between SQL Server 2000 and SQL Server 2005.

Omri is a perennial favorite at Richmond Code Camps, speaking at all our events to date. His commitment to the regional developer community is obvious - and appreciated by all developer community leaders I know - and I know a few ;).

Right now, he's focusing on the impact indices have on insert statements. Indices are always good, right? Well... good for Select statements. Omri is laying out the difference between Unique Indices and Unique Constraints - hey, I learned something, but I always learn things when Omri presents!. :)

Did you know the statblob column in sysindexes in SQL Server 2000 contains a histogram of the indices? Thanks Omri!

:{> Andy

Technorati Tags: Roanoke Code Camp Omri Bahat SQLFarms

posted Saturday, March 03, 2007 12:20 PM by andy with 0 Comments

Notes From Roanoke Code Camp I

Robin Edwards, president of the Roanoke Valley .Net Users Group and, according to the staff of volunteers here, the heart and soul of Roanoke Code Camp I, did a fantastic job on the morning keynote.

I am typing this from Ashton Hobbs' presentation on .Net 2.0 Tips and Tricks. Although Ashton is a fellow Solid Quality Learning mentor, this iiis the first time we've met. He's drilling into creating a custom control in C# using the .Net 2.0 framework. He's doing such a good job even I can follow along! :)

I am missing Omri Bahat's (SQL Farms guru) presentation on Best Practices with SQL Server, but I may mosey over in a few minutes to check that presentation out.

The team here has done a great job! It's been obvious since I hit the door - the planning and execution of this code camp is outstanding!

Great job, team! Great job, Robin!

:{> Andy

Technorati Tags: Roanoke Code Camp Robin Edwards Harold Buckner Roanoke Valley SQL Server .Net User Group

posted Saturday, March 03, 2007 11:55 AM by andy with 0 Comments

Roanoke Code Camp is Tomorrow!

I just got back from the Roanoke Code Camp Speakers Social - what a blast!

I met several of the speakers tonight and I am very impressed with the line-up!

If you haven't signed up yet there's still time! You can and show up tomorrow! It's going to be a beautiful day in the Star City tomorrow, and some serious knowledge will be shared by a stellar group of speakers!

I will be there, and hope to see you there as well!

:{> Andy

Technorati Tags: Roanoke Code Camp Developer Community Roanoke Valley SQL Server User Group Roanoke Valley .Net User Group

posted Saturday, March 03, 2007 12:15 AM by andy with 0 Comments

Roanoke Code Camp - 3 Mar 2007

Roanoke Code Camp is 3 March, 2007!

You could win an MP3 player! You could win an XBox 360! You could win a copy of Vista!

One thing for certain: you will have lots of fun and learn something. !

:{> Andy

Technorati Tags: Roanoke Code Camp MSDN Code Camp Roanoke Valley .Net Users Group rvnug svssug Roanoke Valley SQL Server Users Group

Jim Gray Missing

Jim Gray, renowned computer scientist, has been missing for over a week now. You can follow the story here.

Itzik's blog contains a link to Amazon Mechanical Turk where you can scan satellite imagery from Gray's last known and projected locations for signs of a craft.

Our thoughts and prayers are with Mr. Gray and his family and friends.

:{> Andy

Technorati Tags: Jim Gray missing Amazon Mechanical Turk

Manny Siddiqui to present Windows Communication Foundation!

Manny Siddiqui present Windows Communication Foundation to the Richmond .Net Users Group meeting Thursday, 1 Feb 2007, at 6:30 PM.

Manny is an accomplished software architect, has written quite a few articles, and just started a new blog!

MaconIT is our sponsor. I've known Brock Barnett for over five years and Gregg Barnett for about a year now - they're good people.

It should be a great meeting!

:{> Andy

Technorati Tags: Developer Community Richmond .Net Users Group Manny Siddiqui Windows Communication Foundation

Richmond Code Camp 3 Registration Link!

for Richmond Code Camp 3!

Hope to see you all there!

:{> Andy

Technorati Tags: Developer Community Richmond Code Camp 3

SQL Programmability and API Development Team Blog

If you work with SQL Server and haven't checked out the SQL Programmability and API Development Team Blog, you should. Now. Immediately. I'm not kidding.

It's simply awesome!

:{> Andy

Technorati Tags: SQL Server Programmability API Development blog

A couple changes!

I've started a new blog: Applied Business Intelligence!

I will continue to blog here about Team System topics. I'll probably continue to share personal stuff here as well - I'm debating that...

I've also changed my login here at VSTeamSystemCentral.com. I'll no longer be posting as that dry and boring "admin" guy - now I'll be posting as me!

:{> Andy

Technorati Tags: New blog Applied Business Intelligence BI SSIS ETL Reporting Services

posted Tuesday, January 16, 2007 10:45 AM by andy with 0 Comments

Richmond MSDN Event - Digital Identity Lifecycle

The Richmond Microsoft Office is hosting an event entitled March 13, 2007 from 9:00 AM to 1:00 PM at their Stony Point Parkway offices.

From the website:

Hear from the experts, Microsoft, Microsoft Customers and Microsoft Partners – Quest and Logic Trends, on how to best map Identity and Access Management technology and processes to improve operational efficiency, reduce internal cost and address corporate compliance requirements (Sarbanes Oxley, HIPAA & GLB).

I am planning to attend!

:{> Andy

Technorati Tags: MSDN Richmond, VA Identity Management developer community

posted Tuesday, January 16, 2007 1:18 AM by admin with 0 Comments

Career Advice: Going Solo

I recently shared this advice with a friend who is considering becoming an independent consultant:


0) There's a great book about consulting by Tom Lambert called . I highly recommend it. I love Chapter 6. I just bought a used copy from Amazon for $4.20.

1) Don't take anyone's advice seriously - unless you know for a fact they have a fully licensed version of CrystalBall 3.2 software installed and running, and you've conducted the tests yourself to validate it works as advertised. I do not have a fully licensed version of CrystalBall 3.2 installed.

2) I'm a huge believer in going for it. Any comments I make are going to slant that way. But - and this is a big butt (double-entendre intended) - be aware of as many risks going in as you can possibly identify. When you go for it, identified risks provide metrics for measuring your progress.

For instance, if you are not independently wealthy, money makes a good metric. As I mention in The Clean Break : I remember looking at the checking account one day during my first few months of entrepreneurship and seeing $80 in there. I thought "I must've done something stupid." I was right, and this was the beginning of my understanding of business development.

3) There's a lot of hubbub out there about identifying your weaknesses and trying to "not do anything stupid." Hogwash. Quitting Harvard in your junior year to start an industry is stupid, but it worked out ok for Bill Gates.

4) Odds are you're not going to make as much money as Bill Gates. That's ok, you can live very well on substantially less.

5) I subscribe heartily to the philosophy. It basically states "you're good at what you're good at - go do that." Weaknesses will remain weaknesses but they do not have to stop your momentum with your strengths.

For instance, you are passionate about great coding. I built my first (and now my second) business on passion. I kid you not. The fact that I was good at what I did helped, but the passion sold.

It's like the scrawny kid who gives 110% every football practice. The coach is going to call that kid's number before long - and that kid will likely impact the game. Be that kid.

6) Speaking of sales, it will be good at some point to figure out how you're going to get new work. The inherent weakness in any consulting model (and this is a weakness for me too) is: you (and I) do not scale well. If all our business is generated by us, then performed by us, then invoiced and accounted for and business-developed by us - we are going to be very busy doing a lot of stuff which a) we may be no good at; and b) we may not like in the least.

This is business development. I've always managed this with channels. You probably know this already, but a channel is a company or individual that will tell others about you and your work - either for free or for some direct or indirect gain (money).

That aside, you will be amazed at the work that finds you once you go into business for yourself.

7) How much do you know about contracts? I didn't know beans about them until I got handed my [sic]hat once. It only cost me $6,500 to learn about contracts - which, I hear, is pretty cheap.

There's lots of approaches to contracts. Verbal contracts usually prove at some point to be as valid as the paper on which they're printed. I like work orders that specify deliverables and percentages expected for bid-by-job work. I like billing cycles (1st of each month, 15th and 30th, or my personal favorite: every Friday) for bid-by-time work. No matter what, you want to have terms (net 30, net 10, etc.) in writing up front.

The customer is not always right. In our field, a lot of customers are completely ignorant of what they're asking you to do for them. You need to keep this in mind when negotiating the contract. And protect yourself.

There is such a thing as bad business. Bad business will hurt you way more than no business. Bad business ends up causing you to work for free. And there are a substantial number of business people out there who believe they're doing you a service by teaching you this valuable lesson while consuming your single, non-scaling resource: you. They're on par with people who want to teach you how to play poker or pool... just bring money. ;)

Pop quiz: The nicest, most sincere people with whom you are negotiating are:
a) Truly the salt of the earth, genuine, will-do-anything-to-help-everyone-succeed people.
b) Sick bastards who are playing a game with your life and future by which they gain points the more you suffer.
c) You have no idea - until payday.

The answer, sadly, is c.

8) How much do you know about managing cashflow? You can actually lose money - for years in fact - and remain in business if you can maintain a positive cashflow. In my opinion, this is the key to the business side of things.

:{> Andy

Technorati Tags: Developer Community Career Advice Independent consultant

posted Sunday, January 14, 2007 9:17 AM by admin with 0 Comments

Career Advice: Team Building Activities

I had this experience once with Team Building Activities. I go into work one Monday and there's an email in the Inbox about this subject, and I open it and read that it's the Saturday after next.

Saturday?

Ummm Yeah.

Pop Quiz: You're president of a company with a dozen or so employees and you find certain parts of the movie Office Space highly offensive and usually talk to the television when the movie is playing saying things like "That's such an exaggeration!" The real problem is:
a) The market
b) Supply-side economics
c) Your employees
d) Mike Judge
e) You

The email - gosh I wish I'd saved it - said something about how important the event was, and I believe it stated it was voluntary but then implied you weren't a good employee if you didn't attend. All in all, very reminiscent of the "flair scene" in Office Space.


Here's some thoughts:

If you own a small company, you probably work Saturdays anyway. This is a fun outing for you and a chance to do things away from the office with people who work for you - a way to get to know them better and for them to get to know you better.

To the employees, this is a day when they usually would not be working, but now have to. They're just working in a different location - one which you thought would be a lot of fun. It's not as fun for them. The work- / game-face needs to be on - on a day when usually it's off. They're giving up a day of doing-nothing-for-the-company to do something for the company. You are stealing a day from them.

It's completely different if you're hiking on a mountain trail or walking on a beach and bump into one of your employees. They're doing what they planned to do that day - all by themselves and without your help - on their day off.

So, if it's that important, schedule it for a Monday or Tuesday or Wednesday or Thursday or Friday - one of those other days when important work-related stuff gets done.

:{> Andy

Technorati Tags: Developer Community Career Advice Team building activities

posted Saturday, January 13, 2007 8:59 AM by admin with 1 Comments

Career Advice: Interview the Company

I had a refreshing conversation with a Human Resources person recently.

I was asked by a friend to provide a reference for employment, and was honored to do so. During the course of describing my relationship with the person in reference, I mentioned that I had been fired from the company where we met and worked together.

The engineer in me mentions these types of things, with no value judgment assigned, as facts. I say it with no more passion or conviction than I state "The sky is blue."

But I learned something during this exchange. The HR person was impressed with my openness about the matter and told me my attitude about it indicated self-confidence. Indicating self-confidence is a good thing if you're talking to a human resources person, so I thought I'd pass this tidbit along: If you've been canned, bring it up!

It might help.


The details of my experience are not as important, but these sorts of things happen so I'll share some.

It was a small company that had been in business for a couple years when I joined them. My motivation for going to work there was to be closer to my girlfirend (to whom I am now happily married) which, I'm certain, affected my judgment while interviewing the company.

"Interviewing the company?" you ask. Yep - they're interviewing you, you should be interviewing them too. That "good fit" stuff (more on this later) is a two-way street.

Looking back, there were clues during the interviewing process that I ignored. When I took notice of potential warnings, I naively thought "I can manage this." Truth was, I could not manage it.

From my first week on the job, bad things happened. They continued to happen and grow in magnitude. Although I made a couple friends there - people with whom I will remain in contact for the rest of my life, most likely - I also lost one good friend as a result of my involvement with this company. And it happened within the first 30 days of arriving on the job.

Still, I persisted. Still thinking "I can manage this."

I put that episode behind me and resolved to "do better next time." I did do better, but things did not improve for me. In fact, they grew much worse.

At my 90-day review I was denied a raise discussed at the time of my hire. There were three measurements I was to achieve in order to earn the raise:

  • Provide technical leadership
  • Develop software
  • Generate a certain volume of sales

I hit two of the three. The owner of the company acknowledged this during the review. I missed the sales target.

Pop quiz: The resulting raise was:
a) 66.6666% of the agreed-upon amount + the percentage of the sales quota I did generate.
b) 66.6666% of the agreed-upon amount
c) 50% of the agreed-upon amount
d) 25% of the agreed-upon amount
e) 0% of the agreed-upon amount

Sadly, the answer was e.

Now I'm not one to make excuses. I believe if you agree to something - especially something involving money - you stick to it no matter what. That said, I started with this company in August 2001. Anyone recall any market-impacting events around a month after that?

It had already become clear to me, by the time of the 90-day review, that my career with this company was in trouble.

Why? In all fairness it was not a "good fit." That's what the owner told the Virginia Employment Comission when he protested my application for unemployment after firing me, and I have to agree.

Things I did - heck, things that are just my nature - irked the company president. I realized much later he really enjoyed having an impact on people's lives, and he measured that impact by their reactions to things he did.

Ask anyone who knows me, I don't react. It's not in my nature. I'm almost always content and happy. When life hands out a lemon, I wait for life to hand out a crab-stuffed flounder filet to squeeze it onto.

It's how I roll.

I also don't derive satisfaction from the misfortune of others, no matter how much effort they expend to bring said misfortune upon themselves. There were about 12 employees working there the day I got canned, including the company president and a vice-president whom I believe is part-owner. Of those, only the president and vice-president remain with the company, and last time anyone mentioned it to me (I don't ask about such things), the company had 2 or 3 employees.

Part of this is due to the general economy of the area.

But most of it probably isn't.

:{> Andy

Technorati Tags: Developer Community Interviewing Technical Personal You're Fired!

posted Friday, January 12, 2007 8:20 AM by admin with 3 Comments

Randy Franklin, SQL Server Notification Services, Tonight!

Randy Franklin presents an introduction to SQL Server Notification Services tonight at the January Meeting of the Richmond SQL Server Users Group!

The meeting will be held at the Markel Facility, 4600 Cox Road, Glen Allen. It starts at 6:30 PM and the public is invited.

Randy has been digging into SSNS for a while now and shares tips and tricks about this service for SQL Server 2005. Come on out this evening - bring a friend!

The pizza is free!

This month's sponsor is
Richmond Code Camp 3!
Richmond Code Camp 3!

Richmond Code Camp 3 will be held 28 April 2007 at ECPI-Innsbrook.

:{> Andy

Technorati Tags: Developer Community SQL Server Users Group Notification Services Richmond Code Camp

posted Thursday, January 11, 2007 7:56 AM by admin with 0 Comments

Vista Launch Events!

Microsoft is giving away Office Professional 2007 and Office Groove 2007 when you attend a !

How cool is that?

An event is coming to and another to .

Nothing in Richmond, despite my repeated begging. :{<

There are some cool events headed our way though, including Richmond Code Camp 3!

:{> Andy

Technorati Tags: Vista Launch MSDN Richmond Code Camp

posted Thursday, January 11, 2007 6:05 AM by admin with 0 Comments

Manny Siddiqui's Blog is online!

My friend Manny Siddiqui is blogging!

Manny is one of the many people I always enjoy seeing at Richmond .Net Users Group meetings. In fact, he's presenting on WCF and ASP.Net in February.

Now, if we can talk him into presenting at the next Richmond Code Camp... ;)

:{> Andy

Technorati Tags: Developer Community Richmond .Net Users Group Manny Siddiqui WCF ASP.Net

posted Saturday, January 06, 2007 9:13 PM by admin with 0 Comments

Richmond Code Camp 3!

Richmond Code Camp 3 is on!

The Richmond Code Camp Steering Committee is excited to announce another MSDN Code Camp event in central Virginia! The last two events have been fantastic - and this one is poised to be the best so far!

:{D> Andy

Technorati Tags: Code Camp MSDN Richmond VA Developer Community Richmond .Net Users Group Richmond SQL Server Users Group

posted Friday, January 05, 2007 2:29 PM by admin with 0 Comments

Joe Bennett's presentation to RDN

Joe Bennett, software architect and president of the Triangle .Net Users Group (TriNUG) in Raleigh, NC did a great job presenting to a packed house at last night's Richmond .Net Users Group meeting!

Slides and demo project will be available soon at the new RichmondDotNet.org website.

:{> Andy

Technorati Tags: Richmond VA Developer Community Richmond .Net Users Group Joe Bennett Triangle .Net Users Group TriNUG

posted Friday, January 05, 2007 1:36 PM by admin with 0 Comments

New RichmondDotNet domain!

The Richmond User Groups Leadership Team is proud to announce RichmondDotNet.org!

The old RichmondDotNet.com website remains active, but only with a link to the new site.

We're still getting our sea legs on this new site, but a site re-design is underway!

:{> Andy

Technorati Tags: Richmond VA Developer Community Richmond .Net Users Group

posted Friday, January 05, 2007 12:41 PM by admin with 0 Comments

2006 - the Year in Review

This is probably my last post of 2006. It's been a good year. Not perfect, but very good.


got lots of traction in the industry. Most SQL Server technologists I know agree five years was a long time to wait for a new release, but the feature set matches or exceeds the development effort.

Most shops I deal with have either migrated, are testing 2005, or have plans to in 2007.

was released and Service Pack 2 is on its .

- aka Data Dude - went from CTP1 to RTM in six months. Very impressive development cycle!


It's been a good year for the Richmond Developer Community.

We started a new SQL Server Users Group, which is now the official PASS chapter for Richmond, VA! We also held two successful MSDN Code Camps - and the leadership team is planning more for 2007.

Speaking of leadership, the team did an outstanding job in 2007 - thanks to all who led and participated at every level! You folks rock!


Personally, it's been a good year too.

Christy and I bought a house in Farmville, VA - completing our move from Jacksonville, FL back home to Virginia.

We recently learned we're going to be parents again! :)


Business-wise, it's also been a cool year.

I moved from a temp-to-perm position to a permanent consulting gig, and was then recruited by Solid Quality Learning! The relationship with Solid Quality allows me to be an independent consultant. It's nice to be working for me again, although my boss is sometimes a jerk... ;)

I learned a couple difficult lessons as well. Without going into detail, suffice it to say this year affirmed my long-held business standards regarding the importance of integrity, loyalty, and trust. At my age and with my experience with people and in the industry, I am not often surprised by people - but I was surprised this year. My lovely bride Christy has an applicable saying about such times: "Good judgment comes from experience, and experience comes from bad judgment." Amen. I believe it is best to always treat people as you want to be treated because you never know...

I also experienced new levels of trust and respect. I worked with an incredibly talented team on a cool project. Loyalty was a hallmark of our experiences on the team. The result? Against seemingly insurmountable odds and obstacles, both internal and external, we succeeded - and made it look easy! My experiences at Solid Quality Learning have underscored the value of loyalty and integrity in all we do. The professionals that lead this company are at once the most talented, intelligent, down-to-earth, humble, and open people on the planet. It is an awesome honor to be part of this organization!

I was honored several times this year:

  • one of the authors of (Wrox)
  • allowed to participate on the leadership team for the Code Camps
  • honored to lead the Richmond SQL Server Users Group
  • honored to lead the Richmond .Net Users Group
  • nominated for MVP
  • honored to deliver the Team Edition for Database Professionals keynote at the Philadelphia Launch Event
  • honored to be invited to Redmond several times to participate in TAP and certification discussions
  • honored to work with a fantastic team to develop an industry-changing application (which I cannot talk about!)
  • honored to be asked to join Solid Quality Learning as a mentor

I don't do resolutions, I merely set goals for the forseeable future. I was able to accomplish two of three goals I set at the end of last year. I find three is a nice round number for goals - and I am working on my three goals for 2007 this last afternoon of 2006.

Here's to 2007 - may you have a safe, prosperous, and happy new year!

:{> Andy

Technorati Tags: 2006 Year in Review trust Solid Quality Learning integrity new baby 2007

posted Sunday, December 31, 2006 4:44 PM by admin with 0 Comments

Condolences

Condolences are due to a couple families - one of which is Frank's family, at his Dad's passing.

You are in our thoughts and prayers as 2006 draws to a close and a new year dawns, friends.

:{> Andy

The Richmond Developer / User Group Community

The Richmond User Groups Leadership Team has been pretty busy lately with a significant re-organization and planning for 2007. It hasn't gone as smoothly as it could - and that's my fault - but we've accomplished a lot in the last few weeks. Good job everyone!

We've successfully migrated to a sponsored model. This wasn't as simple as it sounds, but it is complete now and we're excited about the new possibilities!

We're in the process of decentralizing areas of responsibility for the various tasks in each group. I've fumbled a couple hand-offs (analogy disclaimer: it's football season in the US, almost play-off season) but the Leadership Team has responded with the kind of professionalism that has built and will continue building this community.

We're planning two more Code Camps for 2007! Look for more information in upcoming blog entries.

A redesign of the RichmondDotNet website is underway! Check it out for meeting schedule and topic information - keep in mind some meetings are not at the usual meeting facility.

We're excited to have Joe Bennett speak at January's meeting! Joe hails from the Triangle .Net Users Group, where he's President and Executive Director. Joe will be speaking about Custom Attributes and Reflection - cool topic!

Most has gone very well - and I'd like to congratulate the team on a job well done!

:{> Andy

Technorati Tags: Richmond .Net RichmondDotNet Users Group January meeting Custom Attributes Reflection Developer Community Leadership Sponsorship

Visual Studio 2005 SP1

Microsoft announces the release of .

According to the MSDN website for the service pack:

... issues addressed range in severity from places where the syntax coloring was incorrect to customer reported crashes in various scenarios. In some areas, more than 50% of the bugs addressed were reported by customers through the MSDN Product Feedback Center and Microsoft Connect.

Sounds like Microsoft is trying to encourage users to utilize the MSDN Product Feedback Center and Microsoft Connect. ;) I don't blame them - it's not difficult to report a bug or request an enhancement using these engines.

The site lists the following among some 70 improvements for common development scenarios including:

  • New processor support (e.g., Core Duo) for code generation and profiling
  • Performance and scale improvements in Team Foundation Server
  • Team Foundation Server integration with Excel 2007 and Project 2007
  • Tool support for occasionally connected devices and SQL Server Compact Edition
  • Additional support for project file based Web applications
  • Windows Embedded 6.0 platform and tools support

There are SP1 editions for:

  • Visual Studio 2005 Team Suite
  • Visual Studio 2005 Team Foundation Server
  • Visual Studio 2005 Express Editions
  • Visual Studio 2005 SP1 Update for Windows Vista Beta

It's nice to see support here for the Express editions and Vista Beta - good job VS Team!

:{> Andy

Technorati Tags: Visual Studio SP1 Team Suite 2005 MSDN

posted Friday, December 15, 2006 12:06 PM by admin with 0 Comments

Contact Link

Curiosity finally got the best of me.

There's this Contact link hanging out on this page. Theoretically, you can click this link, fill out your name, email address, add a message, click the Send button and rest assured your message will come to yours truly.

Theoretically is the operative word in the previous sentence.

I did not have Community Server's email setup configured properly - proving the setup is not, in fact, idiot-proof.

After an hour or so trying various and sundry permutations of logins and email addresses, I convinced it to work. It dumped a bunch of messages into my personal email box - messages I am determined to answer before retiring for the evening.

My apologies to all who emailed me using this utility - and it is working now.

:{| Andy

Technorati Tags: id10t configure Community Server apology

posted Wednesday, December 13, 2006 2:10 AM by admin with 0 Comments

Team Foundation Server FAQ resource

From the OzTFS ListServ: Chuck Sterling’s "Ozzie Rules Blogging" contains a great FAQ containing Team Foundation Server tips and tricks.

The flow of the document is nice - beginning with the questions: "What is Team Server? What does it cover - version control? build processes? bug tracking? task management?" and continuing through such topics as "Notifications - email to users when builds are broken? How configurable is this?" and "Working from home / remote location?"

Thanks Chuck! (And thanks OzTFS!)

:{> Andy

Technorati Tags: Team Foundation Server TFS OzTFS Ozzie Rules Blogging Chuck Sterling

posted Tuesday, December 12, 2006 10:17 AM by admin with 0 Comments

Roanoke Valley .Net and SQL Server User Groups

Tonight's presentation at the Roanoke Valley .Net and SQL Server User Groups was lots of fun! It always good to see Robin, Harold, Joe, and the Roanoke gang - they're good people.

Tonight, Robin announced the first Roanoke Valley Code Camp! I won't steal her thunder - be sure to check the Roanoke Valley .Net User Group website for details!

:{> Andy

Technorati Tags: Developer Community Roanoke Code Camp .Net User Group SQL Server User Group

posted Friday, December 08, 2006 12:20 AM by admin with 0 Comments

Speaking: 7 Dec 2006 - Roanoke Valley .Net and SQL Server Combined UG

I will be presenting an Introduction to at the December combined meetings of the Roanoke Valley .Net and SQL Server User Groups 7 Dec 2006 at 6:00 PM.

I always enjoy trips to Roanoke!

Hope to see you there!

:{> Andy

Technorati Tags: Developer Community Roanoke Valley .Net SQL Server User Group

posted Saturday, December 02, 2006 1:23 PM by admin with 2 Comments

Team Edition for Database Professionals Launch Events!

The Philadelphia Launch Event for Team Edition for Database Professionals was a blast!

The crowd was awesome and very engaged. They added insight, made great suggestions, and asked some good questions - it was obvious most folks are excited about the product. From my informal poll, others present are taking a wait-and-see stance.

I hear both groups! I'm excited about the options and support the product enables for database developers, but I also understand the cautious response from most operational (system) DBAs.

I need to write more about this (when I have more time to blog!), but the same traits that make the operational DBA very good at their job also make them very resistant to change. I am working on ways to implement the cool new features of Team Edition for Database Professionals into the daily life of the operational DBA without upsetting the apple cart. To this end, I'm working with some of the smartest operational DBA types on the planet.

I don't believe adoption will be an issue on the developer side of the house. And, even if the product is not adopted into the operational DBA toolkit, it will still make their lives easier beacuse database developers and developers developing database object (yes, there is a difference) will now have integrated testing at their fingertips. Regression testing will become part of the DDLC (Database Development LifeCycle).

More later...


If you're in the mid-Atlantic region and haven't already registered, you can scheduled for Tuesday 5 Dec 2006 at the Grand Hyatt located at 1000 H Street, NW in DC.

:{> Andy

Technorati Tags: Data Dude Team Edition for Database Professionals Launch

posted Saturday, December 02, 2006 12:57 PM by admin with 0 Comments

Off to the Philadelphia Launch Event!

is about to launch! :)

If you read this blog and will be attending the Philadelphia Launch Event on launch day - Thursday, 30 Nov 2006 - please introduce yourself!

My lovely bride Christy and I will be there. We're making the road trip today - preparing to leave in a few minutes in fact (as soon as someone quits blogging and finishes packing!).

It's an honor to be asked to deliver a keynote at a Microsoft launch event - I'm so excited!

:{> Andy

Technorati Tags: Team Edition for Database Professionals Data Dude Philadelphia Launch Event

posted Wednesday, November 29, 2006 11:07 AM by admin with 0 Comments

I'm a Mentor!



My Solid Quality Learning business cards arrived in the mail yesterday. I like my new title: Mentor.

I believe the title is appropriate for the mission of Solid Quality Learning which is summarized:
Solid Quality Learning is the trusted, global provider of advanced education and solutions for the entire Microsoft database platform.

Cool.

:{> Andy

Technorati Tags: Solid Quality Learning SQL Mentor

The Clean Break

For the first time since 2001, I find myself sitting behind the president's desk in the global headquarters of my own business!

The new venture is called Andy Leonard Technologies, Inc. and this my first full-time day on the new office.

I mostly perform work for Solid Quality Learning as a mentor. For those who are unfamiliar with S. Q. L., it's a fantastic company! Not only are the people industry-recognized experts, they're actually cool! They engineer the entire process of joining their ranks so that it's low-stress. It has allowed me to ramp up quickly - and for that I am very thankful.

Mentoring is a great concept - it's a hybrid between consulting and instructing. Here's how it works: I join teams for a number of days or weeks. While working together, we develop a specific set of objectives - usually to develop template projects, best practices, and establish a foundation for the working environment. Together, we build out example projects using the templates to demonstrate their effectiveness.

In addition to this, I'm also a trainer. When training, I lead excellent classroom-based instruction courses. I currently lead the ETL with SSIS course, but I am ramping up on more course material - hoping to lead others.

In my previous jaunt into business, I operated ASI. ASI specialized in industrial automation and integration. It was a lot of fun for me because it brought together several disciplines I enjoyed (and still enjoy!): engineering, electrical control systems design, and software development.

ASI started in 1995 when I wrote one of the first completely web-based Manufacturing Execution Systems (MES) called Plant-Wide Webs. Plant-Wide Webs started using dynamic HTML before DHTML was widely available, then graduated to ASP. Writing the application and running the business were cool experiences!

I learned a lot about business and myself. :)

Most of those lessons were learned the hard way. I remember looking at the checking account one day during my first few months of entrepreneurship and seeing $80 in there. I thought "I must've done something stupid." I was right, and this was the beginning of my understanding of business development.

When Solid Quality Learning called I was ready. I understood the risks of making the leap. I knew it would be a lot of hard work. But, unlike last time, this time I have a fantastic team supporting me - and outstanding business development support!

The person who deserves the most credit has to be Christy. Not only does she support this decision, she's actively involved - booking my flights, making hotel arrangements, and renting cars... she's awesome! She even jumps onto mapping software and talks me in from the airport to the hotel so I don't drive around lost my first night in a new town! (The car rental people always ask "Do you know where you're going?" and look at me funny when I say "No, but I'll find it!") Christy does this in addition to taking care of Stevie Ray and Emma without help from me (when I'm out of town or holed up in the office) - and she does it without complaining.

Thanks, Cutie. I couldn't do this without you!

It feels good to be back. So far, the new boss is treating me ok... but it's still early on the first day... ;)

:{> Andy

Technorati Tags: Andy Leonard Technologies, Inc. Self-employment SQL Server Solid Quality Learning SQL

posted Monday, November 20, 2006 4:14 PM by admin with 0 Comments

Study: SQL Server is Safest Database

According to this report, SQL Server is the safest database engine on the market.

Security Vulnerability Count

  • Oracle: 70
  • MySQL: 59
  • Sybase: 7
  • DB2: 4
  • SQL Server: 2

I don't even have to search for them to know there are already howls of protest from Sybase, DB2, MySQL, and Oracle DBAs. I understand, truly I do.

Again, I haven't read the protests or complaints. I simply know the responses - because for years I've felt the same way when someone poked holes in my favorite database engine, SQL Server.

It's not that the holes don't (or didn't) exist - it's that these sorts of tests usually ignore the value any DBA brings to the table. The DBA knows about the vulnerabilities - at least the good one's do - and how to configure the system to be less vulnerable.

So Oracle, Sybase, DB2, and MySQL DBAs (once more, without even bothering to search), I understand.

Next time someone posts something about SQL Server, I expect you to also understand.

(... off to search for the responses now...)

:{> Andy

Technorati Tags: SQL Server Security Oracle DB2 MySQL

posted Monday, November 20, 2006 3:56 PM by admin with 0 Comments

Page Vest and SQL Server 2005 Service Broker

Page Vest did an outstanding job last night at the Richmond SQL Server User Group! His presentation on SQL Server 2005 Service Broker was well-received by all in attendance.

He did a good job digging into the inner workings of queues. I learned something: there's a system queue (sys.transmission_queue) where all messages land before moving to the destination queue. The reason? The destination queue may be disabled.

Page covered that and much more - good stuff!

:{> Andy

Technorati Tags: Developer Community SQL Server Service Broker Richmond, VA Page Vest

posted Friday, November 10, 2006 11:05 AM by admin with 0 Comments

Richmond SQL Server Users Group Meeting tonight!

Page Vest speaks on SQL Server 2005 Service Broker at the November meeting of the Richmond SQL Server Users Group.

Fahrenheit Technology sponsors this month's meeting - be sure to thank them for arranging the meeting room, providing pizza and sodas, and their continued support of the Richmond Microsoft developer community.

I look forward to learning more about this exciting enhancement to SQL Server 2005!

Hope to see you there tonight!

:{> Andy

Technorati Tags: Developer Community SQL Server Users Group Richmond, VA Service Broker

posted Thursday, November 09, 2006 2:38 PM by admin with 0 Comments

30 Nov 2006 Launch Event Keynote! Team Edition for Database Professionals

It's official - I am presenting the keynote at the !

After the keynote, I'll be participating in a panel discussion alongside some recognized names in the industry!

If you read this blog and you're going to be in the Philadelphia area 30 Nov, and then introduce yourself!

:{> Andy

Technorati Tags: Team Edition for Database Professionals Data Dude Philadelphia Launch Event

posted Sunday, November 05, 2006 5:33 PM by admin with 0 Comments

Transition

Changing jobs is tough. It's a job in and of itself.

Most regulars here know I moved from Jacksonville, FL last year to be closer to Christy's and my folks in Virginia. We've settled in Farmville, VA and love it here.

I recently received a call from Solid Quality Learning and have accepted an offer to become a Solid Quality Learning Mentor.

It's a huge honor to work with these legends of SQL Server. For someone who enjoys learning as much as I do, it is an added bonus! I am learning more than I have in a long while.

Most important, Solid Quality Learning is everything it appears - a very cool company of awesome technology professionals.

But I've been spoiled lately at my current position with CapTech Ventures, Inc. CapTech is also an awesome company. It's been an honor to work for them as well - and they have treated me well. CapTech is headquartered in Richmond, VA and most of their work is in the Richmond area. They're a consulting firm - putting people into strategic project roles with businesses to accomplish some business goal or perform a business role.

CapTech is growing like crazy. My theory about why is twofold: 1) they hire good people and 2) they treat them well. If you're a Richmond technologist (or a technologist thinking of moving to Richmond), you owe CapTech Ventures Careers page a look.

So I bid CapTech farewell with thanks for the experiences, and look forward with excitement to this new relationship with Solid Quality Learning!

:{> Andy

Technorati Tags: About Andy Solid Quality Learning CapTech Ventures Richmond, VA

Team Edition for Database Professionals CTP6!

was released Wednesday.

As with previous versions - notably CTP5 - projects built in previous versions will not load properly in CTP6. "Breaking features" were added and they're common in CTPs. It beats the alternative of no CTPs, so no whining!

One note: Connection passwords are stored in the registry - although encrypted - whether you check the "Save my password" checkbox or not. There are a few other gotchas, but they're documented in the ReadMe.

In a related note, Microsoft has started scheduling launch events for Team Edition for Database Professionals! Sign up today!

:{> Andy

Technorati Tags: Team Edition for Database Professionals Data Dude CTP

posted Friday, October 20, 2006 10:18 AM by admin with 0 Comments

Extended Developer Communities

The developer community in Richmond, VA enjoys the support of surrounding developer communites.

I don't thank these folks often enough, so I'm going to now.

Thanks to the developer communites in:

  • The Roanoke Valley - RV .Net Users Group and the RV SQL Server Users Group.
  • Hampton Roads / Tidewater - WeProgram.Net and the Hampton Roads SQL Server Users Group.
  • NoVa (Northern Virginia) - NoVa SQL Server Users Group, Cap Area .Net Users Group, and the Microsoft Integration and Connected Systems User Group (MICSUG).

These groups send folks to speak and volunteer for our code camps. They're simply awesome people who deserve our thanks. Thank You!

:{> Andy

posted Thursday, October 19, 2006 1:23 AM by admin with 0 Comments

The Second Richmond Code Camp - Success!

The second Richmond Code Camp was a tremendous success!

Many thanks to the presenters, volunteers, contributors, and steering committee - but most of all, to the attendees.

It was stormy most of the day Saturday. The weather was remarkably similar to the weather on the the day of the first Richmond Code Camp. We can make it rain! :)

It really was an outstanding event. We will begin planning the next Richmond Code Camp next month. It is currently scheduled for sometime in April.

:{> Andy

Technorati Tags: Developer Community Code Camp Richmond, VA

posted Friday, October 13, 2006 12:12 AM by admin with 0 Comments

Richmond Code Camp 2, T - 9 hours

The second Richmond Code Camp is nearly upon us!

Speakers are polishing up their presentations at the last minute - Ok, maybe not all speakers - but I am! There are things to be completed and picked up on the way to ECPI - Innsbrook, schedules of events, and to-do lists of epic proportion scattered among the Richmond Code Camp Steering committee members.

All the planning, emails, cell calls - it all comes together in a few hours. Or not. We shall see!

:{> Andy

Technorati Tags: Developer Community Code Camp Richmond, VA

posted Saturday, October 07, 2006 1:33 AM by admin with 2 Comments

Cool idea, cool site: CodeCampEvals.com

CodeCampEvals.com is an awesome idea! The site is very professional, the interface is intuitive, and the reporting is the best I've seen. Kudos to David Silverlight and crew for a job well done! (FYI, this same developer-community-oriented group also started Community-Credit.com - also worth a click!)

The second Richmond Code Camp will be using CodeCampEvals.com to collect speaker, session, and overall Code Camp experience evaluations. This will allow attendees to concentrate on what they came for - cramming as many new cool coding tricks and tips into their brains as time will allow!

One lucky evaluation submitter will be randomly selected to receive a

cool .Net Ninja shirt!

How cool is that?!

:{> Andy

Technorati Tags: Develper Community Code Camp Richmond, Va CodeCampEvals evaluations

posted Thursday, October 05, 2006 9:11 AM by admin with 0 Comments

Richmond Code Camp 2 - Saturday!

Have you for the second Richmond Code Camp? Have you checked out the schedule? See any names you recognize?

Darrell Norton has been an MVP for years. He will be presenting on Windows Presentation Foundation and Windows Communication Foundation frameworks. I plan to be there!

Ashish Jaiman works for Microsoft. He's an ISV Developer Evangelist focused on helping ISVs adopt new Microsoft technology - such as .Net30, Vista, Longhorn, and Office 2007. Read more at the team blog. Ashish will present on three topics - including a deep dive into WCF!

And they are just two of the many speakers we'll have! Hope to see you there!

:{> Andy

Technorati Tags: Developer Community Code Camp Richmond, VA

posted Monday, October 02, 2006 12:21 PM by admin with 0 Comments

Team Foundation Server SP1 Beta released

has been released. As with all beta releases, there are .

To receive access to the service pack, you must apply to participate. After applying, you will receive an email with instructions for acquiring the service pack.

Two notes: first, you must sign into the Microsoft Connect website using a passport account; second, the TFS beta SP1 is included in the Visual Studio 2005 SP1 beta. You access the TFS service pack by clicking the link to the VS srvice pack.

:{> Andy

Technorati Tags: Developer Community TFS Team Foundation Server SP1 Beta

posted Saturday, September 30, 2006 9:46 PM by admin with 0 Comments

FAQ Fridays

G. Andrew Duthie - our Microsoft Mid-Atlantic Developer Evangelist - has started a cool series of webcasts named FAQ Fridays.

Join Andrew and today's guest, Vishwas Lele, for an hour-long discussion about Microsoft Development Practices and then some Q&A! It all starts at noon ET!

:{> Andy

Technorati Tags: Developer Community .Net FAQ Friday

posted Friday, September 29, 2006 12:24 PM by admin with 0 Comments

RCC2-10 days: Countdown to Code Camp

Richmond Code Camp 2 approaches!
Have you ?

Only 1010 (decimal, lest you bit-heads think I mean there are only 2) days remain until the second Richmond MSDN Code Camp! (That's 10102 days for youwe bit-heads.)

The schedule has been posted!

:{> Andy

Technorati Tags: Developer Community Code Camp Richmond, VA

posted Wednesday, September 27, 2006 11:27 PM by admin with 0 Comments

OzTFS ListServ

Some cool folks down under have put together a snappy listserv and website called OzTFS.

by sending an email to with "subscribe" as the subject. You can also view archives at the site.

Cool idea!

:{> Andy

Technorati Tags: Developer Community Team System Oz TFS OzTFS

posted Sunday, September 24, 2006 1:41 AM by admin with 1 Comments

Yargh! Richmond Code Camp 2 approaches...

It's National Talk Like A Pirate Day. Hence, the "Yargh!" :)

Richmond Code Camp 2 is only 2 1/2 weeks away - can you believe it? Richmond Code Camp 2 - 7 Oct 2006 and ECPI-Innsbrook - is going to be a blast! If you haven't already, , maties! (sorry... couldn't resist...)

We have some awesome developers and architects presenting! Kevin GoffDarrell Norton, Frank La VigneJonathan Cogley, and Greg Postlewait return to present multiple sessions! I'm trying to talk Susan Lennon into sharing more of her SharePoint expertise, while Robin Edwards and Geoff Switz return to present on Web Part Pages and Data Warehousing, respectively. Chris Love, Joe Waldin, Kevin Israel, John Morales, and Ashish Jaiman are first-time Richmond Code Camp presenters! And I plan to present an Introduction to Team Edition for Database Professionals.

Hope to see you there!

:{> Andy

Technorati Tags: Developer Community Code Camp MSDN Richmond VA

 

posted Tuesday, September 19, 2006 11:07 AM by admin with 1 Comments

Richmond SQL Server Users Group September meeting

The Richmond SQL Server Users Group will hold its next meeting Thursday, 14 Sep 2006 at the usual meeting place: the Markel Facilities at 4600 Cox Road in Glen Allen, VA. [map]

I will be presenting on the topic: - Part 2: Testing and Data Generators.

:{> Andy

Technorati Tags: Developer Community Richmond Va SQL Server Users Group Team Edition for Database Professionals

posted Tuesday, September 12, 2006 9:53 AM by admin with 0 Comments

(Last) Call for Richmond Code Camp 2 Presentations

The second Richmond Code Camp will be held 7 Oct 2006 at ECPI - Innsbrook in Richmond's West End.

If you are interested in presenting, please .

:{> Andy

Technorati Tags: Developer Community Code Camp Richmond VA Presentations

posted Tuesday, September 12, 2006 8:19 AM by admin with 0 Comments

Five years later...

Everyone in the US remembers where they were on the morning of 4 years, 364 days ago: September 11, 2001.

I remember my wife Christy (who was my fiance at the time) calling me at work and asking "What's going on?" I remember telling her we were under attack. Later, my daughters called - each of them concerned that I would be re-activated for military service due to my previous experience in security.

The calls had things in common. Chief among them was the fear and concern in the voices of my loved ones.

All Americans were affected in one way or another that day. And everything changed that day - whether we want to believe that or not. Watching documentaries the past few weeks and reading blogs and online services has shown my experiences, while unsettling to me personally, pale in comparison to so many others.

A lot of organizations are marking the anniversary today and tomorrow. Some have been holding ceremonies all week. Some have continued since the event itself. Some have completed their mission and closed.

My friend Frank La Vigne is a survivor of the 11 Sep 2001 terrorist attack on the WTC.

Ever the web journalist and blogger, Frank documented his experiences of The Night Before, 9 - 11 - 2001, and his return to his apartment in lower Manhattan three weeks later at his personal website: FranksWorld.com.

I admire Frank for lots of reasons: He's a good friend, an outstanding technologist, an MVP, and a developer community champion for mobile computing and tablet PCs.

Frank has a passion for the developer community. And he adopted Richmond, VA as his home town for a while. While here, Frank became involved in the developer community. "Involved" is a loaded term for a person like Frank: it means "passionately revolutionized"!

He asked me one favor before his recent move to northern Virginia: "Andy, please don't let the developer community in Richmond die." This was what worried him about leaving - and it speaks volumes about his commitment to the Richmond developer community and user groups.

Frank's transparency is one of his stengths. I commend him for it and for his willingness to share everything he knows with the developer community - be it technology or his personal experiences.

If, like me, you find yourself thinking about heroes - those who survived along with those who did not - today and tomorrow, think about Frank.

Andy

posted Sunday, September 10, 2006 10:50 AM by admin with 0 Comments

Greg Postlewait's presentation to the Richmond .Net Users Group

Greg Postlewait did an awesome job last night presenting to the Richmond .Net Users Group! He really knows his topic: Object Oriented Concepts. And, he kept the audience engaged (and laughing) throughout most of the presentation!

Greg will be presenting at the upcoming Richmond Code Camp 2 - don't miss it! .

Great job Greg!

:{> Andy

Technorati Tags: Developer Community Greg Postlewait Object Oriented Richmond Code Camp

posted Friday, September 08, 2006 9:17 AM by admin with 0 Comments

Registration for Richmond Code Camp 2 is Open!

Register for Richmond Code Camp 2 at !

:{> Andy

Technorati Tags: Developer Community Code Camp MSDN Richmond VA

posted Wednesday, September 06, 2006 4:31 PM by admin with 0 Comments

Where in the world is Frank La Vigne?

...in case you were wondering...

;{> Andy

Technorati Tags: Developer Community Frank La Vigne Man Legend Tablet MVP

posted Monday, September 04, 2006 2:36 AM by admin with 1 Comments

September Richmond .Net Users Group Meeting

   September's meeting of the Richmond .Net Users Group will be held at the usual meeting place and time:
 
Thursday, September 7, 2006 at 6:30 PM
Location: 4600 Cox Road, Glen Allen, VA
[]

Topic: Object Oriented Concepts
By: Greg Postlewait, e-business team lead for AMERIGROUP Corporation
 
   Bring your Analysts and Managers!
   In plain English we will review and discuss the most basic object oriented concepts.  Objects are not only the building blocks of an application but a practical way to divide and work with complex business processes.  Renew your OOA and OOD resume credentials!
 
   Special thanks to this month's sponsor: Fahrenheit Technology. Be sure to thank the good people at Fahrenheit for arranging the meeting space - as well as providing pizza and sodas!
  
   The Richmond .Net Users Group plans to meet at 6:30 PM on the first Thursday of each month at the Markel facilities. Hope to see you there!
 
:{> Andy
 
posted Thursday, August 31, 2006 9:47 AM by admin with 2 Comments

Follow-up #2 to Database Professionals: An Enterprise Requirement

Eric Wise drew some heat from the developer community at CodeBetter.com with this post about the need for a DBA during development (see my post on the subject here).

I think Eric makes a couple good points, one explicitly and one implied:

1. (Explicit) A DBA - or Database Developer, more accurately (and there is a difference) - adds value to development.

2. (Implicit) There are Software Developers out there who can step into the Database Developer role long enough to solve most database tuning issues. Eric demonstrates this with himself in profiling and addressing a missing or ill-defined index.

I find most of the comments - presumably by software developers - typical. One developer stated:

My current project didn't have a DBA for 2 years, until recently since we're now at the stage of optimizing for performance. It seems to me that as long as the database is intelligently structured in the first place, a DBA's role would be rather small in most cases.

I agree with the sentiment expressed here - as much as I agree that code-generation tools can replace developers. It's true that you can utilize SQL Server or any database engine as a dumb file store. And it's equally true that you can build an enterprise application in C# that consists of thousands upon thousands of lines of nested If... Then... Else statements.

The question is: Why would you?

This goes beyond arguments over syntax, coding standards, methodology, and design philosophy. This is about putting competent professionals - at the height of their game - into the mix on a project.

You don't have to take my word for it - ask software developers who have worked (or are working) with competent database developers.

:{> Andy

Technorati Tags: Developer Community software developers DBA database developers SQL Server

Spam - The heart of the matter

According to this Consumer Reports article:

Too many consumers’ defenses are down. Twenty percent of the households surveyed didn’t have antivirus software installed. Thirty-five percent didn’t use software to block or remove spyware. And consumers in roughly 795,000 households continued to buy products advertised through spam. Most homes had a firewall installed to block hackers. Still, based on our findings, we project that about 2.4 million U.S. households with broadband, who are hackers’ prime targets, remain unprotected by a firewall.

 

Thing Number 1:

If you are one of the people in one of the 795,000 households I have a question for you:

1...,

2...,

3...,

4...,

5...,

6...,

7...,

8...,

9...,

10...

 

What the heck are you thinking? (This, mind you, is the edited version, after counting to 10 (and actually after even more editing)...).

You actually pay money to people who send you unsolicited email for their products and/or services? Did you get what you paid for? If not, were you too embarassed to report it?

Here's the simple truth: people that purchase items advertised (and I use the word "advertised" here extremely loosely) in Spam are the problem - not the spammers themselves. If you stop feeding them, they will go away!

Not everyone is computer- or web-savvy. That's ok. There's no test you must pass before you purchase or own a PC and obtain internet access - and I don't think there should be. The internet is a wonderful thing. But like all wonderful things, it can be abused. And it is being abused by people who are taking advantage of those less computer- and web-savvy than themselves.

Here's a few simple rules I follow regarding email:

1. If you don't know who the email is from, don't open it - period. It may contain some really important information, but if it's really that important, someone will follow up with a call.

2. If you know who the email is from and it contains an unexpected attachment, don't open it. You can always email the person who sent it to you and ask them if they sent you an email with an attachment.

3. If curiosity is just eating you alive and you cannot take it and you just have to see the picture the email subject states is attached just in case it's real and not botware that will turn your broadband connection into a denial-of-service attack in the name of some holy cause or other, please see item 2 above.

4. Never ever ever (ever) buy anything advertised (again, using the term loosely) in an unsolicited email. By unsolicited I mean an email that arrived in your email inbox through no action of your own. If you must have the item, please buy it somewhere else - even if it costs more. Trust me, you're doing us all - and probably yourself - a great service.

 

Thing Number 2:

There are lots of good antivirus software packages out there. AVG will allow you to download a free (as in beer) version of their software "for private, non-commercial, single home computer use only." This means you can download it and install it legally on your home computer for free. If you're in the 20 percent of households without antivirus software, please visit this link immediately.

 

Thing Number 3:

If you're part of the 35 percent of households that don't use antispyware software, and if you run a Windows operating system, you can download . Spyware can do lots of nasty things - you need to protect yourself. Windows is particularly vulnerable because it runs on the majority of desktops on the planet (not necessarily because it's less secure... a topic for another blog entry, perhaps...).

 

Thing Number 4:

Apologies for the tone at the start of this blog entry. Nothing torques me more than this sort of abuse of people and technology. And this entry discusses bad people using technology to abuse others!

 

Thing Number 5:

If you send a link to this post to everyone in your address book, something wonderful will happen to you during the next week. ;)    (... definitely a topic for another blog entry...)

:{> Andy

Technorati Tags: Developer Community Spam Virus Email

posted Monday, August 28, 2006 6:44 PM by admin with 0 Comments

Right on, Steve! (Giving back)

(Yes, I'm stating something about my age by utilizing the phrase "right on.")

Steve Jones has a great editorial about giving back to the developer community in this morning's SQL Server Central newsletter. Check it out here. I couldn't agree more!

:{> Andy

Technorati Tags: Developer Community MVP giving back writing PASS

posted Thursday, August 24, 2006 10:33 AM by admin with 0 Comments

Team Edition for Database Professionals CTP5 is available

Download it at the !

Note: Projects created in previous versions of TEDP will not open in this version - you must recreate them in CTP5.

:{> Andy

Technorati Tags: Team System Team Edition SQL Server Team Edition for Database Professionals CTP5

posted Wednesday, August 23, 2006 2:28 PM by admin with 1 Comments

Free! (for 180 days...)

I regularly speak to folks who tell me they wish someone would give them an MSDN subscription so they could play with all the cool new technology. I sincerely hope every single person with this desire gets their wish - if not from an individual (as happened to me), from their company. An MSDN subscription is a cool thing.

Until then, I recommend folks do what I did: get the trial versions!

You can build yourself a handy little enterprise on a workstation that has 1G RAM and some hard drive space. It won't be fast, but you can learn cool things nonetheless. Here's how:

1) Download and install  - it's completely free (as in beer). With this snappy software you can create virtual machines on your workstation and install any operating system you desire. Use Virtual Server to do just that - build a virtual machine before proceeding.

2) Download the 180-day trial version of . Install this as the operating system on your new virtual machine.

3) Download the 180-day trial version of . Install this on your new VM.

4) Download the 180-day trial version of . Install this on your new VM.

There you have it - a development virtual workstation that will allow you to learn and grow and try cool new things, for the next six months, at least!

:{> Andy

Technorati Tags: Developer Community VS2005 Visual Studio SQL Server SQL SQL2k5 Virtual Server MSDN Windows Server 2003 2005

posted Wednesday, August 23, 2006 10:34 AM by admin with 0 Comments

Announcing Richmond Code Camp 2.0!

Mark your calendars! Richmond Code Camp 2.0 is scheduled for 7 Oct 2006 at ECPI - Innsbrook.

Frank beat me to the announcement! :)

:{> Andy

Technorati Tags: Developer Community Code Camp Richmond

ECPI .Net Users Group Presentation Last Night

Thanks to the ECPI .Net Users Group for inviting me to speak last night. :) The group in attendance was awesome!

My presentation on Beginning SSIS Development went well. I look forward to returning to present to this group, the newest of Richmond's Microsoft User Groups!

:{> Andy

Technorati Tags: Developer Community SQL SSIS ECPI .Net Users Group

dsKUcXswAz5ndk5

posted Friday, August 18, 2006 2:18 PM by admin with 0 Comments

Database Coding Standards

Brian Kelley, noted author and database guru, offers insight on the necessity of T-SQL coding standards in this post.

"While they had naming standards for table, views, stored procedures, and other database ojects, nothing actually covered how best to implement stored procedures or what kind of T-SQL was acceptable and what needed to be justified."

Coding standards are always a difficult subject to address. I've had positive and negative experiences with them.

I've seen organizations create them in response to a coding tragedy, and I've seen organizations abandon them in response to the inflexibility of the standards.

Simply establishing a list of rules won't solve any real-world issue - at least not for long. This is especially true in the world of software where things change early and often. Coding standards need to be maintained. I believe a brief review of coding standards should be included in any project wrap-up / post-mortem process. It doesn't have to consume the meeting - it shouldn't, in fact. And it shouldn't be a philosophical debate; but rather a practical discussion of what the standards helped, hindered, or didn't address in the project.

:{> Andy

Technorati Tags: Coding Standards T-SQL SQL Project Management

posted Friday, August 18, 2006 10:08 AM by admin with 0 Comments

Identity Management

Joel Spolsky runs Fog Creek Software and writes really cool articles on his blog.

He knows how to manage talent and has an excellent article on the Identity Management Method posted at his site. It's worth a click!

:{> Andy

Technorati Tags: Joel Spolsky management talent identity management

posted Friday, August 11, 2006 11:29 PM by admin with 0 Comments

Richmond Combined Microsoft User Groups Social

Last night, we held the Richmond Combined Microsoft User Groups Social at Sharky's Bar & Billiards in Richmond's West End. From what I could tell, everyone had a blast!

Special thanks to for sponsoring this year's event, and to G. Andrew Duthie (aka DevHammer)!

:{> Andy

Technorati Tags: Developer Community Users Group Richmond, Va .Net SQL Server

posted Friday, August 04, 2006 10:12 PM by admin with 0 Comments

Team Edition for Database Professionals (Data Dude): Cool Channel9 Video

Some of the development team for Team Edition for Database Professionals (Data Dude) appear in a 52 minute demo video of the product on Channel9.

Definitely worth watching!

:{> Andy

Technorati Tags: Developer Community Team Edition for Database Professionals Team System MSDN Channel9

Announcing the ECPI Innsbrook .NET User's Group!

There's another Microsoft User Group in Richmond - the ECPI Innsbrook .NET User's Group.

I read about it first on Frank La Vigne's blog - thanks for passing on the information, Frank.

On behalf of the Richmond .Net Users Group and the Richmond SQL Server Users Group, welcome to the community!

:{> Andy

Technorati Tags: Developer Community User Group .Net Richmond, Va

posted Thursday, July 20, 2006 4:36 PM by admin with 0 Comments

Donald Farmer is blogging again

Donald Farmer, Microsoft's Group Program Manager for SQL Server Business Intelligence and Integration Services, is blogging again!

Mr. Farmer is a legend in the business intelligence community. Even so, he's always made time to answer questions from this aspiring author.

His post entitled Tales of Two Bills is an interesting read.

:{> Andy

Technorati Tags: Developer Community Donald Farmer SSIS blogs

posted Sunday, July 16, 2006 6:14 PM by admin with 0 Comments

Last night's meeting of the Richmond SQL Server Users Group

We had an awesome meeting last night! There must have been 25 people there and it was a great audience - lots of good questions and feedback.

As promised, here's the - now up to CTP4 in only a month! Great job, Team Edition for DBAs Team!

:{> Andy

Technorati Tags: Developer Community SQL Server Users Group Richmond, Va Team Edition for DBAs Team Edition Database Professionals

posted Friday, July 14, 2006 1:47 PM by admin with 0 Comments

Richmond SQL Server Users Group - July meeting

I'll be speaking at the July meeting of the Richmond SQL Server Users Group tomorrow night. The topic is "Introduction to Team Edition for Database Professionals." I plan to cover Schema Compare and Refactoring functionality.

Hope to see you there!

:{> Andy

Technorati Tags: Developer Community Richmond, VA SQL Server Users Group Team System Team Edition for Database Professionals

posted Wednesday, July 12, 2006 9:48 AM by admin with 0 Comments

MSDN Search

There's an updated MSDN Search available at . The feature I like the most is the ability to search MSDN blogs.

:{> Andy

Technorati Tags: Developer Community MSDN Search Blogs

posted Wednesday, July 12, 2006 9:40 AM by admin with 0 Comments

A metal card

The email I just received reads:
Congratulations!  Your order has been received.  You will receive your first
shipment of the Microsoft Visual Studio 2005 Team Suite with MSDN Premium
Subscription in approximately 4 weeks.

Thank you for your support of Visual Studio Team System, and congratulations on
your no-charge 1-year subscription license! 

How COOL!

And I owe it all to my good freind: Tablet PC legend and MVP Frank La Vigne. Thanks Frank! He spoke tonight at the Richmond .Net Users Group meeting on "Welcome to the Mobile World." If you've never had the opportunity to hear Frank speak, you've missed out on a great presenter. He's passionate about mobile technology and it shows. Great job tonight, Frank!

Frank presented me with the free MSDN Premium subsciption tonight as he transitioned the presidency of the Richmond .Net Users Group from himself to me. I'm really excited about the Microsoft Developer Community in Richmond - especially after all the good work Frank's done. It will be challenging leading two UG's in town (I'm also president of the Richmond SQL Server Users Group), but I'm sure it will also be fun!

I left the Richmond, VA area almost five years ago. When I left, there was a struggling Microsoft Developer Community in town. I moved to Roanoke, Va for a few months, then to Jacksonville, FL for four years. It was in Jax that I witnessed the good things a thriving Developer Community brings to the local IT industry.

When I returned to Richmond last year, I was psyched about joining the local Developer Community and user groups. I contacted the local Developr Evangelist, G. Andrew Duthie, and asked about the local groups. He put me in contact with Frank.

Frank and I hit it off immediately. There was a kinship from the first time we met - along with mutual respect and admiration. Together with Darrell Norton and Susan Lennon, we worked to bring the first MSDN Code Camp to Richmond in April. And we're working on another for the Fall!

Frank and I started the local SQL Server Users Group in May, and have both been actively speaking at regional User Group meetings and code camps.

He's just a cool person, good guy, and uber-geek! You can read more about him on the personal section of his website. He's had some interesting experiences.

:{> Andy

Technorati Tags: Developer Community Richmond, Va MSDN Frank La Vigne

posted Friday, July 07, 2006 12:30 AM by admin with 1 Comments

Windows Genuine Advantage vs. Privacy

Steve Jones has an interesting editorial about WGA () at SQLServerCentral.com.

Like many of you, I too earn a living implementing Microsoft software. In addition, I've openly declared my admiration for Bill Gates as an individual and Microsoft as a company in an earlier blog.

That said, I think this is a huge mistake. I believe Microsoft is capable of doing a better job fighting piracy at the expense of privacy, and I believe they should.

Several comments in this interview with Peter Cullen, Microsoft's Chief Privacy Strategist, smack of the Sony rootkit debacle - including "phone home" functionality (that has since been removed from the product).

Although I'm certain lots of time, thought, and effort went into the development of WGA, the only viable solution is to stop it before this goes any farther. Please.

:{| Andy

Technorati Tags: WGA Microsoft Developer Community

posted Monday, July 03, 2006 2:37 AM by admin with 0 Comments

Cap Area .Net Users Group Presentation

The Cap Area .Net Users Group rocks!

Thanks to Scott and Brian for allowing me the honor of presenting to such a cool group! Thanks also to Excella Consulting for sponsoring the event - Art and Krista really know how to sponsor a user group. I thought the barbeque was in honor of my southern roots, but it turns out they aren't pizza people. :)

I think I finally have a solution to my crashing VPCs: I'm running them in the new free (as in beer) engine. My laptop has only 1GB RAM, so I had to crank the Windows 2003 Enterprise-based Team Foundation Server down to 660 MB RAM. It is slow, but performs in Virtual Server - very impressive.

:{> Andy

Technorati Tags: Virtual Server Developer Community Team System Scrum CapArea .Net User Group

posted Wednesday, June 28, 2006 2:24 PM by admin with 0 Comments

Frank's Technorati Tag Generator

Frank La Vigne, MVP has built a cool TagGen utility for generating Technorati tags.

Technorati is a cool site that provides blog search capabilities. If you blog, registering will bring more traffic to your site. Check it out!

:{> Andy

Technorati Tags: Technorati Frank La Vigne Developer Community

posted Saturday, June 24, 2006 2:03 PM by admin with 0 Comments

Speaking at the Capital Area .Net Users Group 27 Jun 2006

I'm honored to present "Scrum Methodology with Team System" to the Captial Area .Net Users Group 27 Jun 2006 at 7:00 PM. I'll cover an introduction to the Scrum methodology - including war stories and tips for introducing Scrum to your organization - and then demonstrate the Scrum Plug-in for Team Systems from Conchango.

The meeting will be held at the AT&T building at 1900 Gallows Road, Vienna, VA 22182. Directions are available here.

If you read this blog and attend, please introduce yourself!

:{> Andy

Technorati Tags: Team System Scrum Developer Community

posted Saturday, June 24, 2006 1:49 PM by admin with 0 Comments

Bill Gates Announces Stepping Aside

I'd be remiss in my blogging duties if I didn't take a few moments to reflect on yesterday.

I'm an old-timer in computer years. I'm a few years younger than Bill Gates, but I started writing code a couple / three years after he did (I started in 1975 when I was 12). Computers have changed a lot since then. And a lot of those changes can be traced directly or indirectly back to Bill Gates and Microsoft.

I rarely meet someone in IT these days who doesn't have an opinion about Bill. Some hate him and others love him. Critics have been less vocal as Bill and Melinda have poured so much of themselves and their money into the Gates Foundation.

I have always admired Bill. He cofounded a company and co-led it from a couple geeks to a huge corporation. More than any other company - including IBM and Apple and Sun - Microsoft has worked to bring the power of personal computers to the masses. They are rarely first, and they don't always get it right on the first attempt, but they do a couple things better than most competing companies: 1) deliver value; and 2) integrate.

I'll start with integration. The idea of how integration works can be seen most recently in Team Foundation Server and Team System. Project management, software development, testing, and quality reporting and control are all now integrated into the developer's IDE and available to all in the enterprise via Reporting Services and Windows Sharepoint Services. This is just the latest example - there are lots more. What struck me early on as I began working with Microsoft Office was how much I learned about Excel while learning Word - and vice versa. That's integration too. An idea in one tool translates to all tools in the suite. And Microsoft has always integrated very well.

Then there's value. Microsoft software is roundly (and rightly, sometimes) criticized for security gaps and software bugs. But no one complains about the price. The reason? Microsoft software is a darn good deal! It always has been. When comparing bang-for-buck, there's always a sector - a large sector too - of the business community where Microsoft is simply the best horse on the track.

 

From a business perspective, I believe the comments made yesterday at the press conference: they've been planning this for some time, and the company will continue to innovate, lead, and consume marketshare. For Microsoft, I don't see this as devastating or even necessarily a bad thing.

For me personally, there has always been a sense of comfort and confidence in the knowledge that Bill was there somewhere with his hand on or near the rudder.  I'll miss that sense of comfort, but I have confidence he wouldn't hand leave the company in the hands of incapable folks. And I believe he's leaving Microsoft in very capable hands.

 

Personally, I wish Bill and Melinda all the success in the world with the Foundation. To Bill, I would just like to say, "Thanks."

:{> Andy

Technorati Tags: Bill Gates Microsoft Software Business Developer Community

posted Friday, June 16, 2006 9:31 AM by admin with 1 Comments

Reston Code Camp Rocks!

I just arrived home (literally) from the third Reston Code Camp. It was awesome! G. Andrew Duthie, Brian Noyes, Vishwas Lele, and company sure know how to organize a code camp! :) Great job guys!

I was honored to present Beginning SSIS Development early, then host a Chalk Talk about Agile Database Development Practices after lunch. Right after that session, I presented SSIS Development with Team System - which went well until my Virtual PC finally gave up the ghost... durnit! I covered with some SSIS development tips and tricks.

I learned a lot about Smart Clients from Brian's sessions. I'll have to read some of his books as soon as possible. I also enjoyed Vishwas' session on Atlas - some neat stuff there!

Frank La Vigne was also in attendance, and presented on Tablet PCs. Frank is the Tablet man!

Code and the decks from my two presentations is available for download at the Mad Code Camp website.

Congratulations to the Reston Code Camp Team for such a successful event!

:{> Andy

Technorati Tags: Reston, Va Code Camp Developer Community

posted Sunday, June 11, 2006 12:31 AM by admin with 0 Comments

Preparing for the Reston Code Camp!

I'm pretty psyched about heading to Reston tomorrow for the Reston Code Camp!

I get to meet some really cool people. And I'm looking forward to sitting in on a few sessions and learning some cool stuff! I'll have a few copies of on hand for swag.

This is also the weekend we begin moving into our new house - another thing to be psyched about!

If you read this blog and attend the Reston Code Camp tomorrow, please introduce yourself. Hope to see you there!

:{> Andy

Technorati Tags: Reston, Va Code Camp Developer Community SSIS

posted Friday, June 09, 2006 2:22 PM by admin with 0 Comments

June 8 2006 - SSIS Tips and Tricks Presentation

Last night's SSIS Tips and Tricks presentation to the Richmond SQL Server Users Group was lots of fun!

I tried a couple things different: First, it was nearly all code. I had one slide at the beginning of the presentation and then just dove into code for the rest of the evening. Second, I used Camtasia Studio to record segments of the presentation.

The first recording on SSIS Constraints is available online. and let me know what you think!

:{> Andy

Technorati Tags: Developer Community SQL Server Richmond, Va SSUG SSIS Constraints Camtasia

posted Friday, June 09, 2006 10:24 AM by admin with 0 Comments

Software Development... and searching for your car keys

I'm big on analogies. I believe good analogies are powerful teaching tools. And, of all the jobs and projects I've worked on or at, teaching at ECPI was the coolest - hands down.

While teaching basic electronics at ECPI, I once built a bridge rectifier out of LEDs (light-emitting diodes). A bridge rectifier converts alternating current (AC) to direct current (DC). It does this by switching the path of the alternating current and then summing the result. (Failure in my attempt to simplify this concept duly noted...)

If you haven't gathered it from reading the above paragraph, this is not an easy concept to grasp by simply reading about it.

But...

If you use LEDs, they glow when the current is flowing through them. In my lab, I used a function generator set to output a sine wave running at about 1 Hz (1 cycle per second). The students could then watch as opposing pairs of diodes conducted the applied AC - converting it to noisy DC, as all bridge rectifiers do.

It was (and is) a great analogy.

In developing software, I routinely (pseudo-) multitask. I don't actually multitask. My beautiful bride can attest to the fact that I'm quite incapable of thinking about more than one thing at a time. I pseudo-multitask by time-slicing. I work on task 1 for a bit, then task 2, then task 3. Three tasks seems to be a good fit - for me, at least.

I've worked through about eighteen task 1's and task 2's recenty while tackling a tough task 3. I won't go into details - there will be a blog about it here soon enough - but it wasn't difficult technically, it just stumped me.

I found the solution this morning and fixed it. Where was the solution? The last place I looked! :)

Herein lies a secret to software development: Don't give up. Make the problem give up before you do.

So if you're faced with a particularly difficult bug today, or any day; just when it gets so frustrating that you do not believe you'll ever solve it, take a break. Grab some green tea, go for a walk, get out of the building. Put your mind on something else for ten minutes. Maybe time-slice onto another task when you return.

When you get back to the issue or bug, you'll have a fresher perspective. And you will find it.

It'll be in the last place you look.

:{> Andy

Technorati Tags: Software Development Development car keys Developer Community

posted Tuesday, June 06, 2006 9:16 AM by admin with 0 Comments

Doers and Teachers

You may have heard, as I have, "Those who cannot do, teach." I couldn't disagree more. And, I believe the spirit of MSDN Code Camps proves my point.

The scheduled speakers for the upcoming Reston Code Camp in Northern Virginia 10 June 2006 are a great example of this. These folks teach and do.

If you haven't signed up for the Reston Code Camp event, you can still .

Hope to see you there!

:{> Andy

Technorati Tags: Code Camp Developer Community NoVa Reston, VA

posted Tuesday, June 06, 2006 12:25 AM by admin with 0 Comments

Visual Studio Team Edition for Database Developers!

Microsoft just announced , a new addition to the Visual Studio Team System family!

I'm excited about this! There are lots of cool features for database developers to be happy about, but the most exciting screenshot I saw dealt with database testing:

This just rocks! I can't wait to download this and put it into practice. The bits ship 11 June 2006, according to .

:{> Andy

Technorati Tags: Team Edition for Database Developers SQL Server Team System Visual Studio Test-Driven Database Development TDDD

posted Friday, June 02, 2006 12:10 AM by admin with 0 Comments

Phil Factor's SQL Sudoku Generator

Phil Factor demonstrates some snappy SQL programming with his Sudoku Generator - check it out!

:{> Andy

Technorati Tags: SQL Server Sudoku Phil Factor Developer Community

Speaking Engagements: June 2006

In June, I'm speaking at the following locations / dates:

1 June 2006 - "Scrum with Visual Studio Team System" to the Richmond .Net Users Group.
8 June 2006 - "SSIS Tips and Tricks" to the Richmond SQL Server Users Group.
10 June 2006 - "Beginning SSIS Development", "SSIS Development with Team System", and a chalk talk on "Agile Database Development Practices" to the Reston, VA Code Camp.
27 June 2006 - "Scrum with Visual Studio Team System" to the Capital Area .NET Users Group.

If you read my blog and attend one of these events, please introduce yourself and let me know!

:{> Andy

Technorati Tags: Developer Community Code Camp Speaking SSIS SQL Server Team System Team Foundation Server

posted Saturday, May 20, 2006 11:01 PM by admin with 1 Comments

Announcing the Richmond SQL Server Users Group!

Frank La Vigne and I are proud to announce the formation of the Richmond SQL Server Users Group!

The first meeting is scheduled for 6:30 PM 11 May 2006 at 4600 Cox Road, Glen Allen, VA. I'll be speaking, and since this is the first meeting I think I will start at the beginning - with a presentation on installing and configuring SQL Server 2005.

We're working on a website and hope to have it online sometime this month.

Special thanks to Fahrenheit Technology for sponsoring our inaugural meeting!

I hope to see you there Thursday!

:{> Andy

Technorati Tags: SSIS Sql Server Developer Community Richmond Virginia

posted Sunday, May 07, 2006 1:58 AM by admin with 0 Comments

Speaking at the Richmond .Net Users Group (Updated)

On Thursday, 1 June 2006 (updated from "4 May 2006"), I will be presenting at the Richmond .Net Users Group. I'll be talking about using Team System with the Scrum Development methodology.

If you're in the area, stop by and say "Hi!"

:{> Andy

Technorati Tags: Team System Scrum Developer Community Richmond Virginia

posted Tuesday, May 02, 2006 6:20 PM by admin with 0 Comments

Using Google Caching to Rescue a Lost Community Server Blog

I recently needed to move some blog entries from one site (where they were previously posted) to a new blog site (this one, in fact). Both sites utilize Community Server, but the old site was offline - hence the need to relocate the files. 

As I had been blogging at this site for nine months, there were quite a few entries there. And, because things had changed during the past nine months, I knew some of the material would be difficult to reproduce.

I realized I could get to Google's cached version of some of the entries, but I didn't know how to get to them all. After some casting about, I hit upon a method for retrieving the information I sought.

Here's what I did:

1. Browse to Google.com and search for some text in your blog, preferably an entry title:

2. When you locate an entry from your old blog in the search results, right-click the entry and select "Copy Shortcut":

3. Click "Advanced Search" beside the main textbox on the Google results page:

4. On the Advanced Search page, paste the contents of the clipboard (the copied shortcut to your old blog entry) in the Domain textbox and click the "Google Search" button:

5. The Google advanced search will likely only return one result - the desired page:

6. Click on the "Cached" link below the description to view Google's cached version of the page:

7. Heres where it can get tricky. If your Community Server theme includes a sidebar that displays Archives, right-click on the earliest archived month and select "Copy Shortcut" (If Archives is not visible, all is not lost...):

8. Return to Google and again click the "Advanced Search" link. Paste the copied shortcut into the Domain textbox (If you do not have access to the Archived link, Community Server Archive links are fairly standard. They follow the format "/archive/YYYY/MM.aspx") and click the "Google Search" button:

9. The search results should contain the latest cached version of your Community Server's blog entries for the archived month:

10. Click on the "Cached" link to view Google's cache of your blog:

11. You can then copy and paste the results into another blog editor, or save the page - thus rescuing your Community Server blog!

:{> Andy

Technorati Tags: Blog Rescue Blogs Google Cache Google Cache Developer Community

Richmond Code Camp - Success!

The first ever Richmond MSDN Code Camp was held yesterday. The event was an awesome success!

Many people deserve recognition and thanks. Indulge me while I say thanks to:

ECPI, for allowing us to use their Moorefield facilities. The ECPI Moorefield campus was the perfect location for a Code Camp! The administration and staff were more than accomodating and, without their help, there simply would not have been a Richmond Code Camp. Special thanks to Ada Gerard and Matt Keadle for their support!

Microsoft, for providing support, managing registration, buying lunch for all Code Camp attendees and for picking up the tab for the speakers-and-volunteers-night-before-dinner, and for all the cool swag. Special thanks to our Developer Evangelist, Andrew Duthie, for his tireless efforts on our behalf!

MaconIT, for the coolest Code Camp shirts ever!

TekSystems, for the surprise breakfast!

APress, Wrox, and Wiley for lots of books! (I believe every attendee received at least one book.)

 

Thanks to the speakers and volunteers (forgive me if I leave anyone out - and then notify me so I can add you!):

Susan Lennon,
Frank La Vigne,
Greg Postlewait,
Gary Blatt,
Mike Richardson,
Brian C. Lanham,
Kevin S. Goff,
Geoff Switz,
Omri Bahat,
Don Demsak,
Vishwas Lele,
Darrell Norton,
Andrew Duthie,
Jonathan Cogley,
Harold Buckner,
Robin Edwards,
Kevin O'Connor,
Teresa Shi,
Joe Waldin,
Christopher Berg,
and Jason Leonard.

 

Special thanks to the organizing team: Frank La Vigne, ; Darrell Norton, ; Susan Lennon, MCAD,MCSD,MCDBA, MCSE + I, MCT; and Andrew Duthie!

:{> Andy

Technorati Tags: Developer Community Richmond Virginia VA Code Camp

posted Sunday, April 23, 2006 2:06 PM by admin with 3 Comments

Last Minute Fill-In Speaking Gig

I had an opportunity to speak to the Richmond .Net Users Group last night as a last-minute fill-in guest speaker.

The folks in attendance were simply awesome! It was an honor (as always) to be able to present to a cool group of folks. Frank LaVigne, MVP (congratulations Frank on being awarded the 21st Tablet PC MVP on the planet!) and I had concerns about presenting a database-centric topic to a developer group. But it went very well. It turns out there are a lot of developers delving into SQL Server 2005 - either by choice or necessity.

"Hey you!
Do you know how to spell SQL?
Good.
You're our new database resource."


You laugh... this is a paraphrase of the discussion that converted Andy from a web developer to a SQL Server DBA...

I'm working on more Team System presentations for upcoming events, like the Richmond Code Camp. I will be presenting "SSIS with Team System" there and at upcoming user group engagements.

Plus, Frank and I are (re-) starting the Richmond SQL Server Users Group. The first meeting is planned for May 11, 2006 and we plan to hold monthly meetings the 2nd Thursday of each month. More details will follow...

:{> Andy

posted Friday, April 07, 2006 9:36 PM by admin with 0 Comments

April Speaking Engagements

My "Buy The Book 2006" tour rolls on! :)

In April, I will be speaking at the following locations:

  • 12 Apr 2006 - Triangle .Net User Group
  • 20 Apr 2006 - Roanoke Valley SQL Server Users Group
  • 22 Apr 2006 - Richmond MSDN Code Camp!

If you're going to be in the area one of those dates, please stop by and introduce yourself as someone who reads this blog!

:{> Andy

posted Thursday, March 30, 2006 6:36 PM by admin with 0 Comments

NoVa SQL Server Users Group

I was honored to present a session on Beginning SSIS Development at the NoVa (Northern Virginia) SQL Server Users Group last night. I met some great people and learned a lot.

I can hear you thinking "What? You learned a lot?" Absolutely! I always learn when presenting. In fact, I would argue presenting / teaching is the best way to learn.

Presenting forces me to remain knowledgeable in my field. And it provides immediate feedback about my success at ths endeavor.

Any new technology - especially one as flexible and powerful as SSIS - will be used in unanticipated ways. This will generate unexpected results, which will in turn generate perplexing questions to presenters - usually in front of a large crowd! :)

It is all good.

It's called "learning." Experience has taught me learning is best done in groups. No one can master it all and not all at once. This is why teaching teaches.

Thanks, Nova SSUG, for the opportunity and knowledge shared!

:{> Andy

You never know...

"You never know..." This is one of my Mom's favorite things to say. She says it most often when talking about treating people politely, because "you never know when you're going to cross that person's path again, Andy Ray." Mom calls me Andy Ray when she's trying to make a point.

And Mom is right. You never know what the future holds, so it's best to always treat people as you wish to be treated.

On the way into work this morning (circa 4:45) I stop at a local gas and grill establishment for a sandwich and some coffee. I'm wearing my Jax Code Camp speaker's shirt today and the young man behind the counter notices it. He asks, "What does MSDN stand for?"

"Microsoft Developer Network," I respond.

"What's an MSDN Code Camp?" he asks.

"It's a free event where local and regional developers present information about current and emerging Microsoft technologies to other developers. An MSDN Code Camp is happening in Richmond April 22 at the ECPI Moorefield campus, if you're interested."

"I am interested!" he responds as he manually advances the cash register receipt roll so he could jot down the info. "I've been working mainly with Linux, but I'm interested in learning more about Microsoft development."

"Aprill 22" I tell him, "at the ECPI Moorefield campus in Richmond. The website is RichmondCodeCamp.org."

I hope to see him there. This zealous young man may write the next killer app. You never know...

:{> Andy

posted Friday, March 10, 2006 6:31 PM by admin with 1 Comments

Announcing the Roanoke Valley SQL Server Users Group!

It's a cool time to be working in IT! I know good things are happening all over, but it's good to see groups and events going strong around Virginia! :)

Some technologists in the Roanoke area are starting a new SQL Server Users Group: the Roanoke Valley SQL Server Users Group. Harold Buckner and Robin Edwards are a couple of good people I've spoken with regarding this effort.

Founding a new User Group is hard work. A meeting location has to be located and usually prepared - and then cleaned after the meeting. You have to identify speakers and presenters willing to travel to your location, then schedule them and any resources they may require (LCD projector, etc.). Organizers have to then get the word out. I'm telling you, it's a lot of work!

I think Harold, Robin, and their associates are off to a great start - they had about 30 people attend their kickoff meeting last month! Go guys, go!

For more information about RVSSUG, visit http://www.rvssug.org/ or contact Harold Buckner at:

:{> Andy

posted Friday, March 03, 2006 6:28 PM by admin with 0 Comments

Call for Richmond Code Camp Presentations

Some of you must be thinking "Enough with the Richmond Code Camp already, Andy!" I can't help myself - Code Camp is too cool!

I don't know if you've attended or been involved with an MSDN Code Camp. My first experience was as a presenter at the Jax Code Camp (Jacksonville, FL) in August. It was a lot of fun, and I learned stuff too!

This time, I'm helping organize one and it's so cool! I highly recommend getting involved in bringing a Code Camp to your area. You get to work with cool creative people like Frank and Susan and Darrell and Andrew - and do something really positive for your local developer community! What more could you ask?

[:)]

With that said, the Richmond Code Camp is officially calling for presentations. If you live near (or will be near [or would really like to drive or fly to]) Richmond, Virginia on April 22, 2006 and you have or can develop a presentation before that date, you are cordially invited to sign up to speak. The committee - the aforementioned cool creative people - and me will review the submissions and let you know if you're selected by the end of March.

It is going to be so much fun!

:{> Andy

Do your patriotic duty!

March Speaking Engagement

I will be speaking at the Northern Virginia SQL Server Users Group Monday, 27 Mar 2006. If you're a reader of this blog and will be in the area, drop by and introduce yourself!

:{> Andy

PS - the Richmond MSDN Code Camp will be held 22 Apr 2006 in Richmond, Va!

Richmond Code Camp Update

The Richmond Code Camp website is now up and running!

The organizers and contributors are getting excited about this upcoming event. If you live in the Mid-Atlantic region or will be visiting 22 April 2006, please sign up for this free, educational, and fun-filled event!

:{> Andy

Update: You can now . :{>

posted Monday, February 20, 2006 6:25 PM by admin with 0 Comments

Richmond Code Camp!

Announcing the Richmond Code Camp!

Date: April 22, 2006

Location:
ECPI Technical College
800 Moorefield Park Drive
Richmond, VA 23236

More details to follow!

:{> Andy

posted Tuesday, February 14, 2006 6:24 PM by admin with 0 Comments

Echoing some thanks

In his excellent blog, my friend and co-author Haidong Ji thanks Andy, Brian, and Steve for SQLServerCentral.com. I second the sentiment! We, the SQL Server community, are indeed fortunate to count them among us. The innovation and vision offered by Andy, Brian, and Steve (listed in alphabetical order here...) in creating and maintaining the SQLServerCentral community often goes unnoticed - which is itself a testament to their hard work and diligence.

In short, thanks guys!

:{> Andy

posted Tuesday, January 17, 2006 6:21 PM by admin with 0 Comments

February speaking engagements

I will be delivering a Beginning SSIS Development presentation at the Baltimore SQL Server User Group meeting 1 Feb 2006, and at the Hampton Roads SQL Server User Group 16 Feb 2006.

Beginning SSIS Development covers:
 - Introduction to the new SSIS Integrated Development Environment
 - Control Flow and Data Flow discussion
 - An overview of controls, connections, and package flow
 - Troubleshooting techniques
 - A demonstration (or two, depending on time)
 
Details and directions are available at the respective websites. They should be fun evenings - I always enjoy presentations! If you're in the area and read this blog, stop by and introduce yourself!
 
:{> Andy
posted Wednesday, January 11, 2006 6:20 PM by admin with 0 Comments

Production Virtual Servers?

I recently documented building a virtual server for use with the Team Foundation Server Dec 2005 CTP. It was a lot of fun / work - and it's documented at VSTeamSystemCentral.com.

An opportunity at work prompted use of another virtual server to facilitate a data-transformation-intense software migration. In order to make this particular migration work, I needed to install an old ODBC driver. I did not have access to the driver installation - apart from installing a suite of software products purchased back in the day. I needed to land the migrated data on an existing test server and I did not want to corrupt other software currently installed there.

So... I built a VPC, installed Windows and SQL Server 2k. I loaded the legacy software package, which installed the driver, then built some DTS packages to migrate the data from the source to my target server. Voila!

It's worked wonderfully. Among the many benefits is the low impact to our existing Development / Test environment.

This experience - coupled with clustering functionality built into Virtual Server 2005 R2 - has me seriously considering Production Virtual Servers. Thoughts?

:{> Andy

Soloists vs. The Choir

I discovered blogs a few years ago reading Eric Sink's blog, Eric.Weblog(). I was led to his blog by his regular columns on the  (the series is still posted there): The Business of Software. For those who do not know, I once earned my daily bread running a small business. Eric expressed things about the software business that I had learned (or wished I'd learned) during that time. His blog remains at the top of my bloglines favorites - right next to Joel Spolsky - legend and founder of Fog Creek Software - whose blog I discovered through links on Eric's blog (isn't the internet wonderful?). The thing I admire most about these guys is their obvious passion for the business of great software development.

During the summer, Joel posted an awesome tome entitled Hitting the High Notes. In it, he delves into one motivation for starting a software company in the first place: "building the company where the best software developers in the world would want to work." Joel's premise is the Best Working Conditions lead to the Best Programmers which lead to the Best Software which leads to Profit! His post deals with a cornerstone of this philosophy: Is there really that great a difference between good and great programmers?

Joel cites some impressive statistics gleaned from Yale Professor Stanley Eisenstat, who teaches a software development class. The scatter plot says it all.

As Joel notes, "There's just nothing to see here, and that's the point. The quality of the work and the amount of time spent are simply uncorrelated." His conclusion: "You can't afford to be number two, or to have a 'good enough' product. It has to be remarkably good, by which I mean, so good that people remark about it. The lagniappe that you get from the really, really, really talented software developers is your only hope for remarkableness." (For my fellow vocabulary-challenged readers, lagniappe means "an unexpected added benefit." I had to look it up... isn't the internet wonderful?)

Please read the post in its entirety, I'm sure you will get more out of it than this summary provides.

A couple months after Joel's post, Eric responded with a post entitled My Comments on "Hitting the High Notes". Eric's post emphasizes the importance of teamwork in developing great software. The contrast in the two paradigms is summed in three paragraphs:

"For a soloist, hitting the high notes is an essential skill.  In a choir, the essential skill is the ability to blend.  Some of the most gifted soloists just don't have the stuff it takes to fit in a really great choir. 

Sometimes, they can't blend.  Their voice is the problem.  A really distinctive voice is an asset to a soloist but is a disadvantage in a choir.  They can't blend because that's just the way their voice is.

More commonly, they won't blend.  Participation in a serious choir requires a generosity that simply is not present in everyone.  Choir members don't get individual accolades or fame.  Soloists do."

The remainder of Eric's article answers the question: "So are you saying we should forget about the high notes?  Certainly not.  I am not suggesting that you hire 'mediocre programmers'." His conclusions (summarized by me):

  1. "Be it a choir or a team, you want every member to be at the highest possible talent level.  But the people on your team have to be willing and able to blend."
  2. "Great developers don't just make the product better -- they make everybody around them better."

Again, please read Eric's post in its entirety for the full effect.

I am interested in your thoughts on the matter.

Is solo talent the key to great software development? Is it team talent that leads to greatness? Or is it some combination of the two? Is such a combination possible and/or necessary? What do you think?

My two cents:

My experience has shown results matter - regardless of your market. But - and this is key - markets are different.

If you are, or work for, a small software shop, your results are directly tied to the consumer of your software products. This is your market. You don't have to guess whether you did a good job or not - you merely need to examine the corporate checking account.

If you work for a larger firm as part of an IT department, your market is comprised largely of internal customers. Internal customers consist of business people and analysts of all sorts, shapes and sizes; most of whom have or are seeking advanced degrees in business or marketing. This is your market. Your measure of success is feedback from these good people.

To sum:

  • Small software company, consumer, bottom line is your critical success factor (CSF).
  • Larger organization, MBA, feedback is your CSF.

Herein, I believe, lies a cultural disconnect.

Teamwork is essential in a large organization. If you cannot "play well with others" you will find your(talented)self out of corporate life quicker than you can say "I hate Microsoft" or "Open source rules." And yet, why can't we find a way in the corporate world to professionally and successfully manage talented, yet difficult, people?

My friend Mike Potts, the Efficient Coder, perhaps characterizes the bane of the coporate coder best in his essay entitled Where are you OOP??: "Developers in these shops are typically doing all they can just to meet their deadlines, probably have a very low team morale with hardly enough time to do their jobs much less truly analyze anything. A little Psycho meets MS Project."

Is managing talent that hard?

I've been a manager a couple times - most recently in the IT infrastructure for a large corporation (trust me, you would recognize the slogan...). I can criticize my peers and myself alike for errors handling talented individuals - but managing talented individuals comes down to some simple, yet often difficult, concepts:

  • Don't do anything stupid.
  • Don't tick off the talent.

Actually, ticking off the talent is kind of stupid, so Concept 1 would probably suffice.

Sometimes, however, the scales tip in the opposite direction and the talented individual hijacks an organization (or appears to) as discussed in this thread.

My experience managing talented people has been double-edged. It's great when you find a way to communicate the harsh realities of corporate culture in a manner which actually penetrates the talented psyche; and it cuts like nothing else when you fail at this endeavor. My practical advice to corporate IT managers:

  1. Don't be intimidated by talent - lead it.
  2. Communicate the (sometimes harsh) realities of the current corporate culture to your team - then challenge institutional bureaucracy at every opportunity.
  3. Greet individual or team success and failure with a predictable and balanced response - and protect your team members from unpredictable and unbalanced responses. Remember: You must be free to fail before you are free to succeed.

:{> Andy

PS - Every IT manager (ok, professional) in large corporations should read Career Calculus - another great post by Eric Sink.

posted Friday, November 11, 2005 6:05 PM by admin with 1 Comments

Want to Double Your Salary?

Catchy title, eh? :)

Salaries are one side of a trade. A salary is presented to you on a semi-regular basis from a business venture or organization. Most of us consider salary when choosing with which business venture or organization we should spend our time and effort - because time and effort are what we bring to the table.

The other side of the trade is what you bring to the organization. What do you do with your time and effort that helps the company achieve its goals and objectives? The key concept here is business value. (Apologies... the image of the banner from the movie Office Space proclaiming "Is this good for the company?" keeps popping into my head...)

The balance between these two forces of business physics - business value and your time and effort - determines your salary. (Perhaps that's naive. It's more accurate to say your understanding of these forces of business physics determines your salary. Increasing your understanding is the purpose of this post.)

Although you may learn nifty things at work and enjoy learning, businesses are not training centers. If you want to learn new, cool, and exciting things, there are places for that sort of thing - they're called "schools." If it's recognition you seek, try a book or speaking at seminars - or even starting your own website.

This may come as a shock, but businesses exist for the sole Gordon-Gecko-esque, Ebeneezer-Scrooge-ish purpose of making money. Work is a place to get things done - to accomplish things that bring business value - which in turn increase and/or sustain the amount of money flowing into the business. "Is there business value in learning and recognition?" Absolutely! Businesses wouldn't waste resources on these activities without a return on the investment.

"So, Andy, I'm confused... are you saying businesses should or should not engage in training and recognition?" I'm not talking about whether business should or should not do anything. Rather, I am attempting to explain some harsh realities regarding life in the business jungle. The brutal fact is: Businesses engage in these types of (expenses) activities as a means to an end - and that end is not solely to make you feel better about yourself. The reality of the goal is something closer to: "If you feel better about yourself and your job, you are more likely to produce more business value with your time and effort." It's not as much about the what as it is the why.

The software Business should be considered as it is addressed here - software with a lower-case "s;" Business with a capital "B." It is a Business first. Please keep that in mind.

The software Business has matured to adolescence at best. This presents a set of issues unique - but surprisingly predictable - to adolescent industries. Other industries have matured in the past. They offer models of the phases (into which I will not delve here) through which all industries grow. The current, adolescent state of the software industry is somewhat analagous to the American West - just about the time some semblance of law and order arrived on the scene - or the early years following the industrial revolution. My mother (who raised four "rambunctious" sons to adulthood - no small feat for any woman) would describe it as "scrappy."

"So, Andy, how do I double my salary?" you ask? "Quadruple your value - and split the difference."

"Lovely advice. How does one accomplish this?"

"I'm glad you asked."

You can be a good DBA. You can be a good coder. You can be nice. You can be fun. You can practice good hygiene (I hope you do, in fact!). You can get to work early and stay late. All well and good - but what have you done for the business lately?

Again, brutal.

Again, true.

We, as technology professionals, get paid to think. So how do we think better? One method is more familiar to technology professionals than others (but there are many ways to "think better" <-- loaded term, by the way...): Think about scale.

Enterprise technologists deal with scale daily. It's something we're uniquely qualified to comprehend. We usually learn about it as we watch the best laid plans of mice and men go awry right before our deploying or disaster-recovering eyes.

Does "scale" scale? Why, yes it does. It scales right out of our little (lower-case "s" software) world and into the (capital "B") Business world rather nicely. In fact, some business theory relies heavily on concepts of scale in organizations. At the very least, we should be among the first to identify a scaling business issue.

"Specifics, Andy - give me specifics!"

Ok.

How do you know your enterprise application has reached the limit? What are the symptoms of it maximizing its potential? hitting the wall? dashing itself to pieces against the rocky coast of your competition? For one, the "old way" - the way that has worked so well for so long - stops working. Processes bog, traffic slows, complaints mount, crises loom. Have you ever seen this in software? Have you never seen this in Business?

Your response requires strategy. Business Strategy For Geeks is a topic for another post. But simply recognizing - and effectively communicating - issues of scale will add to your business value. And it's really as simple as applying skills you already possess in a different field.

There is opportunity for you to improve your business value to your current orgainzation. As such, there is also opportunity to increase your current salary. It is a trade, after all.

:{> Andy

posted Thursday, October 06, 2005 6:02 PM by admin with 0 Comments

Which "flavor" DBA are you?

   I received a cool compliment today from a peer who's a developer. He said, "You know, I really like having a DBA on my team!" I have to tell you, it made my whole day!

   It led to a discussion about past experiences and expectations, and I shared something I thought was pretty much common knowledge: there are three types of DBAs. My peer was shocked, so maybe the knowledge isn't so common after all.

   The three "flavors" of DBAs I define are:

  1. System, Operations, or Production Support DBAs - these DBAs write maintenance plans in notepad and have no qualms whatsoever about executing in command-line. They were DBAs in the old days, when we carved our own ICs out of wood. They will get your server and database back online fast - and with less data corruption than anyone else on the planet. They live for torn pages and I/O faults.
  2. Application Support DBAs - these DBAs are familiar with one or more (usually complex) applications. I'm talking PeopleSoft, Seibel, and SAP here. If you want to customize a screen or write a one-off web application, you desperately need these folks.
  3. Database Developers - these DBAs are ruthless bit-heads. They use bigint and byte fields for masking binary states. They can optimize a stored procedure in their sleep and wrap an API around a database so developers never have to consider writing SQL that directly hits tables. They are performance freaks that will work 18-hour days on weekends to test in Production - when it's "safe."

   Do you think DBAs fall into these categories? Do you know any that do? Do you see yourself in there anywhere? Do you have more or less or different "flavors" for classifying DBAs? 

:{> Andy

Technorati Tags: Sql Server DBA flavor

BlogLines

I'm sure many of you already know about the blog aggregator site: BlogLines.

I did not know about it until the best C# Architect I know, my friend Mike Potts, shared the link this morning. It's an awesome way to keep up with gurus coding in the industry.

:{> Andy

PS - Thanks Mike!

posted Friday, July 15, 2005 5:42 PM by admin with 0 Comments

Jax Code Camp!

I'll be speaking at the Jacksonville Code Camp (Jacksonville, FL, USA)!

Sign up at .

Come on out!

:{> Andy

posted Thursday, July 14, 2005 5:40 PM by admin with 0 Comments

MSDN TV and GrokTalks

If you haven't checked out , you're missing out! There's some great stuff out there about SQL Server 2005, Visual Studio 2005, and more.

For similar content, check out GrokTalks too!

:{> Andy

posted Wednesday, July 13, 2005 2:11 AM by admin with 0 Comments