Great Developers

This editorial was originally publised on March 12, 2012. It is being re-run as Steve is on vacation.

Is a great software developer worth 100 average ones? On one hand I think there are some good arguments that it’s not true. One developer certainly can’t write the amount of code that 100 average ones can. However there’s another way to look at things. A great developer can do things that the 100 will never think of, or never consider. He might not write the code that does as many things as 100 people, but I think a great developer could easily write code that performs a hundred times faster than the code 100 developers write.

That’s why you always have an open position available for a great developer. If one is available, and they rarely are, you hire them if they want to work for you. You can always find things for them to do, and they can make improvements in code that your other 5, 10, or 20 developers will never come up with. I’d make sure they fit in your team and get along with others. You can get less work done if you have someone that is too difficult to deal with or too critical of others. While a great developer can accomplish things that others can’t, or won’t, they can’t do all the work.

Ultimately I think that managing great developers is hard, and they are unlikely to stay with your company for a long period of time. However they are rarely available, and for a few years, they might jump start the evolution of your software, and potentially build something that makes your software great. I’d always have an open spot in my team for a great developer, and hire them as soon as they came available, if I thought they would fit in well with the rest of the team.

Steve Jones

Specialist or Generalist

What would you rather be: a expert specialist in some narrow area of SQL Server or a generalist that’s competent in many areas? The same question could apply to any area of technology, like C# or Windows, or even any subject in which you work. What’s your preference?

Most of us don’t have to make a strict choice. Often in pursuit of deep knowledge in one area, say indexing, the effort will lead to lots of good general knowledge in other parts of the platform. I think it’s important that gain both types of skill, as you work through your career and grow your abilities. I find that there is always more to learn, especially in technology. Even in areas that I think I have deep knowledge about, I continually add to, and refine, my skills.

Brent Ozar had an interesting post on this topic, looking at the maturity of a particular subject area. He noted the more mature some area, the more you might learn towards specialization. I think that’s good advice for your career, though I do think that if you find a deep passion, don’t be afraid to specialize in some area. While you might not get a monetary compensation directly back for the effort put in, I think the reward of learning something you love, and achieving expertise is extremely valuable and important to you as an individual.

As we move through our careers in computing, we find there are always new technologies, techniques, and architectures that we will need to understand. We need to grow our knowledge. In many cases we see older ideas re-packaged and updated for the modern times, but that doesn’t mean skills we can rely on prior knowledge. Instead, you will need to update your skills.

I also think more and more we will be driven to give guidance to others as much as use specific expertise to solve problems. With that in mind, I think whether you choose to be a specialist of generalist, you’ll need to continue to learn more about both implementing technology, as well as communicating your recommendations.

Steve Jones

The Voice of the DBA Podcast

Listen to the MP3 Audio ( 2.8MB) podcast or subscribe to the feed at iTunes and LibSyn.

Get Inspired – SQL Inspire 2011 New York

Coming up next week is the SQL Inspire 2011 event in New York City. It’s an event with a number of SQL Server community speakers that are here to inspire you in your career, your life, and with SQL Server. The talks cover a variety of topics, and they look interesting. I am very excited to attend the event, and give my talk as well.

The event is from SQL People, the brainchild of Andy Leonard and Brian Moran, designed to build a stronger community by having us inspire each other. This event is based on the TED events, which are inspirational and informative talks that look to explore new ideas in a variety of topic areas. I have loved watching many of the talks, and while I’m not sure I’m up to the same level of presenting as many of these people, I’m going to try.

Please come if you are in New York on the 12th of November. It will be a lot of fun, and hopefully a very motivational event.

It’s Your Career

It’s your career. It’s something you have to take ownership of and work on. I know that life is busy, and training budgets are tight. That’s one reason we started SQL Saturday; it’s a way to bring a training event and a conference experience to many people.


I posted this tweet almost a year ago, seeing Brent in a class somewhere, learning and taking notes during some session. It was in humor, but I’m a little serious here. We all have more to learn, and while you don’t need to cram it all in this year, you should be taking advantage of your user group, local events, conferences, classes, even reading something in a newsletter on a regular basis.

Many of us are out here to help. I’ve spoken at 12 events this year, 10 of them free, and will be at another free event this week (SQL in the City – LA). However, you’ve got to make the effort to improve yourself. I , and many others, will try to help you, teach you, but you’ve got to do some work yourself.

Pace yourself, learn at a reasonable rate given the other responsibilities in your life, but don’t ignore this aspect of your career.

PS – If you’re in the LA area, there’s still time to register for SQL in the City and get a free day of training. I’ll also be at DevConnections next week and SQLInspire the week after that.

Build Your Own Event at the PASS Summit

There’s a bunch of stuff scheduled for the PASS Summit next week. You can see some of the events on the After Hours page, but there are a few other events happening during the week as well. Most are private, which is fine for the people that get invited, but what about everyone else?

There are well over 1,000 people coming to the Summit, and the majority of them won’t get invited to private vendor parties, or many other events. However outside of the Gameworks party on Thur night, I have a feeling many of them will end up being “that guy”, spending the evenings alone or even working.

Andy Warren and I have started a few events that are relatively open to anyone. We have our Monday Night Networking event, which is full right because of capacity limits. We also started the SQLServerCentral party, which I run and is open if you have a ticket.

However we think you can start your own event. If you want to go see a band in Seattle, then wouldn’t you want to see if anyone else wants to go with you? Maybe share a cab? Perhaps you’re interested in a workout at a local dojo, or you want to attend the Underground Tour (which is very cool).

If you want to do something, and would like to network, have a little company from people that similar interests, we’d like you to do two things:

  1. Create an event at EventBrite. It’s free if you aren’t charging. Just tell people what you event will cost and let them pay their own way. Put a limit on the number of guests, if it’s appropriate.
  2. Post your event at MVP/MCM Denny Cherry (blog | @mrdenny) has set up the site to track what’s happening at the Summit.


That’s it. Post your event and let people sign up.

If you are looking for something to do, check out the page at and see if there’s something you’re interested in. The site will tweet your event, but feel free to publicize it around.

A week at a conference should be a lot of fun, packed with plenty of events for everyone. I hope we can get people to build their own get togethers, for anything from tasting beer at the Tap House to dinner at The Cheesecake Factory to taking a tour of the Museum of Flight.

Whatever interests you, set something up or look for people that have a similar interest at

An Awesome Job

Life is awesome and if you can't see it, read this book.

I recently watched The 3 As of Awesome with my daughter and loved it. It’s a short talk (17 min) from Neil Pasricha, the author of the 1000 awesome things blog. The talk goes through a roller coaster of emotions, at least for me, with a pleasant start, a sad middle, and a positive end. There’s some humor in it, and I highly recommend you watch it.

When we finished, my daughter and I talked about what awesome thing had happened to each of us that day. She said that me giving her 5 extra minutes to play with a friend before we left was great. I told her the crazy, illegal, solo, 5 hit volleyball return I made at her practice that made everyone laugh was the highlight of my day. We challenged the rest of the family to find an awesome thing from that day, and everyone enjoyed it. Since then we’ve made it a point to regular ask what awesome thing happened to each other.

The philosophy espoused in the talk is one I try to follow. I stop and appreciate the cool, little things in my life. A refill of my drink when I’m flying economy class makes me smile. I get a good feeling when I can stop and hold the door for someone behind me. I appreciate the health I have, and the fact I can run regularly. A good cup of coffee, the cat wanting to snuggle up when I’m typing in bed, or the chance to step away from my desk and give my wife a kiss during the day are awesome and amazing things in my life.

Work isn’t always awesome, but I’d like to think that you find little things you can appreciate on a regular basis. Maybe it’s code you write that works. Maybe it’s the knowledge that you saved someone else time because of something you did. Maybe it’s that second monitor that lets the work flow a little smoother. Maybe it’s that burst of bandwidth that made a download smoother. Maybe it’s the comment someone made on SQLServerCentral or on Twitter that grew a smile on your face.

We spend a lot of time at work, and it’s often work. I hope you enjoy your job overall, but even when it’s not the job for you, hopefully you can find and appreciate some little thing that occurs every week that shows the universe likes you.

Steve Jones

The Voice of the DBA Podcasts

Networking for your career

The more I learn about building a better career, and the more I talk to people that get new jobs or have success in business, the more I believe that networking is one of the most important things you can do for your career. It just seems to work better, be more reliable, and more effective than any other career improvement strategy. Even blogging, which I think really helps, isn’t as effective as having someone that’s willing to recommend you.

I never really knew how to go about networking, but a few years ago I attended Don Gabor’s seminar at the PASS Summit and it was well worth my money. I learned a lot and have practiced some of his techniques since then. I’ve even purchased a few of his books, which contain even more information on how to better network and work with others.

If you’re attending the 2011 PASS Summit, you can see Don’s Networking to Build Business Contacts seminar on Tuesday, Oct 11, from 3-5pm. It doesn’t interfere with the other pre-cons, and if you’re going to be in town, take this seminar. You will learn some practical tips and exercises you can use to build more contacts, grow your network, and hopefully use it to advance your career at some point. Even if you don’t need a job, at some point you will and the time to build a network is before you need it. If you’ve already registered, call PASS to add this seminar to your registration, or do it on site.

Don has become a friend over the last few years, and was helpful in working on The Mentoring Experiment with me. I find him very insightful and experienced in the world of business and interpersonal interactions and a very interesting person. If you get the chance to sit and talk with Don, take it.

How do you learn the advanced stuff?

Advanced Study is hard, but worth it when you want to get better at something

I was talking with someone recently about features in SQL Server and they mentioned that partitioning was something DBAs should know. It’s only available in the Enterprise and Data Center editions for production use, but my friend noted that it works in Developer edition and felt there was no excuse for a DBA not being familiar with a feature that’s been out since SQL Server 2005, nearly four versions removed from its introduction.

I can understand that, but if you don’t have the ability to actually tune large data sets and see the impact of partitioning in a larger, production environment, it’s easy to dismiss this as a feature that doesn’t provide many benefits in a smaller situation. The same could be said for clustering, SSIS imports, or any number of features that aren’t often used. So how do you actually learn to get some experience with these features?

The first thing you need to do is get a copy of SQL Server Developer Edition and install it as a virtual machine on your primary computer. I use VMWare, but you could use Virtual PC, Hyper-V, or VirtualBox as well. The important thing to do is have a sandbox to play in and a machine you can easily copy, clone, or destroy as needed. I would recommend a base install of Windows and SQL Server DE, and then copy that for a machine you can experiment with.

One way to learn is duplicate the work that someone else has done. Make a copy of your virtual machine and then implement partitioning as described in an article. See if you can duplicate the way the author used the feature and get the same results. If you can’t, find out why, and if you can, experiment with the feature and try to improve the author’s implementation. The SQLServerCentral Stairway Series is a great way to do this in SSIS, SSRS, or other features that you may never have seen. Set aside an hour or two a week to learn some feature. After a month or two, you might be surprised what you’ve learned.

The most important is to understand how a feature works and gain some experience in using it. You might not become an expert, but being able to talk about the feature, and explain how you might use it in a situation comes from practice. That ability  might get you the project or job that allows you to become an expert over time.

Steve Jones

The Voice of the DBA Podcasts

Big Gaps

Emacs was my favorite editor in college

I saw this piece on Learning Unix from Miguel  de Icaza that brought back memories. Michael is a well known developer that is working an open source implementation of .NET called Mono. He worked at Microsoft and continues to bring .NET to other platforms, but he primarily works on Unix based systems. The post laments the lack of basic Unix knowledge and tricks from many of the developers he meets. His recommendation is a few books and tutorials to learn shell commands, emacs, and more.

Those bring back memories for me since I learned to use emacs early in college. I went through tutorial and enjoyed the editor much more than vi and learned to take advantage of shell commands for quick scripts or tools that would make my programming tasks easier. Those skills helped me when I moved to the DOS/Windows world and scripted many tasks, and even helped in SQL Server with the scripting tasks is SSIS and SQLCMD. As I look over PowerShell scripts these days, I find myself seeing the same constructs as I saw in Korn shell, but with different syntax.

As I read the piece, I asked myself a question over and over, which I couldn’t answer completely. I did, however think it would make a good Friday poll and decided to ask the rest of you for your opinion:

What basics do you find many data professionals lacking and what do you recommend to help them?

I know people need to learn how to back up a database, and they should learn T-SQL to some extent, but what basic skills would you point people towards? What books or resources would you recommend?

I know we have some great basic articles here at SQLServerCentral that everyone should read, like Managing Transaction Logs. I think we’ve tried to address the basics with the Stairway series on various topics. However I’m sure there are holes in our catalog as well as some very common things that many of you would like to recommend to every DBA or developer. You have your chance today to help compile a list.

Steve Jones

The Voice of the DBA Podcasts

Free as in Beer

My Favorite Beer

This editorial was originally published on Feb 7, 2006.

It’s amazing to me that someone can take the words from another and publish them as their own. I guess that’s why sites such as And why other sites like have sprung up to help combat that type of behavior. Actually if you want to get a great Christmas Present for your kid’s high school, get parents to raise money to subscribe to some plagiarism prevention service.

Actually a Google search on “essay help” turned up entirely too many places where you can get an essay written. Amazing how many of these tout their essays as “100% non plagiarized”. I guess if you hire writers to write something, but that’s a small step away from stealing someone else’s work for profit or gain. It’s just plain wrong to hire someone to do your work, as is starting to happen on Rent a Coder, where people are paying to get computer science assignments completed for them. There was a great Wall Street Journal article on this very topic.

And unfortunately, another article today from me on the same topic.

This is a great quote from the WSJ:

“This is a fairly simple program,” wrote “Goradia” of Sammamish, Wash. “It is my homework, but since I am busy, I want someone to do this for me.”

If it’s so simple, just do it. It’s your work, you are paying (in college) to learn, or investing in yourself in high school. Just do the work and accept the grade for your work. I cannot fathom why people do not want to earn their own accomplishments. I guess there always will be people that cheat, but it’s still amazing to me.

The only things you have in life are those that you earn and the mistakes you make. Enjoy them, relish them, learn from them, accept your failures and work to do better.