Skip to content

When Work Gets in the Way of Work

It seems I find myself in this situation more and more. I’ve got work to do at SQLServerCentral. There’s a constant stream of articles to edit, content to review and schedule, questions to build, and of course, writing these pieces on data related topics. That goes on 220+ days a year, as we keep the site going and send a newsletter every weekday of the year.

However the last few years I find myself crunched to get work done in my work week with the addition of other tasks to my routine. I’ve moved from 2-3 events and 5-6 presentations to 20+ events and closer to 40 talks a year that I deliver. Not only is there a high frequency of events, but there’s also a number of new presentations to build. It seems I have 3-4 (at least) new talks to assemble, which can be quite time consuming. That’s in addition to keeping SQLServerCentral moving.

This isn’t different than many of the jobs I’ve had in the past. Often I’ve had a set of tasks that I need to work through regularly. Whether these were admin tasks, or development projects, I usually have found that I can develop a routine throughout most weeks. However things crop up. Bug fixes are reported, or hardware fails, or some other project takes some priority, but I need to somehow fit this into my week, along with everything I normally do.

It’s tough, and I think far too many people with salaried jobs try to just work harder and longer to complete their work. That makes some sense for a short period of time (2-4 weeks), but after that it’s a mistake. Productivity declines and people burn out. They become cranky, and more importantly, they lose a substantial portion of their life over time.

I’ve learned to push back when things become too busy, and while I’ve had managers that weren’t thrilled, even angry, almost all of them understood the problem and worked with me and others to change things.These days that means I cancel or skip events. More often I decline to accept engagements in the future to bring balance into life. 

This month is tough, with a lot of commitments made months ago, and flying to the UK this week doesn’t help. However I’ve learned a few things about scheduling my time this year and hopefully I’ll do a better job next year.

Steve Jones

The Voice of the DBA Podcast

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

Anatomy of a tSQLt test

I’ve been doing some work on testing database code, and working with the tSQLt framework. I really like the framework more and more, and want to continue to use it. The whole idea of testing is a bit immature in database code, and perhaps software in general, but at least the software people are trying to move forward. At least in places.

As I’ve been learning, and presenting on this, I’ve started to adopt and follow the simple pattern espoused by the tSQLt framework. It makes sense, and it provides what I think is a good format for unit test. The structure is:

  • Assemble
  • Act
  • Assert

It’s simple, and it makes it easy to see how a test works.

Assemble

Declare variables and create tables you need. Insert data, initialize values and ensure that you have an expected environment on which to base your tests. I think this is especially important for database code tests.

Act

This is the place you call your code, or perform some action. Usually easy to do, but there are some thing that might be tough to set up.

Assert

This is where you assert, or declare something to be true. A value is equal to another. A result set looks like another. Something that you declare to be true, which could be some condition, like an error has occurred. If it’s true, the test passes. If not, it doesn’t.

More to Learn

There is lots more to learn, and I’m trying to do more. However I also need others to not only try to write tests, but evaluate how well they work and also publish some code. Explain to people what has worked, AND what hasn’t. Having that information out there, for a large variety of cases, will help others better test their code.

Why Would You Move?

I was reading a thread on Quora about why SQL Server is chosen by companies, and another on StackOverflow about why Oracle is a good choice. As much as I sometimes joke about the Oracle RDBMS, I think it’s a solid platform, and certainly wouldn’t resist working with Oracle databases if the opportunity presented itself. I like working with technology and enjoy learning about how different platforms work. However I also know that if I started working with Oracle, I’d be much less efficient, and certainly quite slower, in producing work than with SQL Server.

I’d also probably make a lot of relatively poor decisions about how to run the database instance.

I’m sure I’d get better writing PL/SQL, but that would take time. And in any setting, that also means that I’d be costing my company money while I learned the tricks, best practices, and skills needed to produce a well tuned, efficient Oracle-based application. It’s really no different than the way I have seen many highly skilled Oracle developers and DBAs come to work with SQL Server and try to treat SQL Server as if it ran the same way as Oracle (<shudder>cursors</shudder>).

That’s why when I hear about companies making a quick switch to a new platform or language, I question the move. Certainly there are domains of problems that Oracle might solve better than SQL Server. There are situations where MongoDB is better than an RDBMS or Java makes more sense than C++, but there should be strong, solid technical reason why it’s worth trying something new. Not because a manager wants to save some licensing fees or a developer wants to try something new.

By all means, experiment, but do so in small ways. Try new technologies with limited investments, and if they work, increase the investment. However for large projects, stick to what your staff knows best. Their skills are often the limiting factor in producing well written software, and in almost every situation, their salaries will far outweigh any cost of software that you license.

Steve Jones

 

The Voice of the DBA Podcast

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

It’s about Perception

This editorial was originally published on Dec 9, 2009. It is being re-run as Steve is on vacation.

It’s not just the code. Sure the code’s important, but it’s not necessarily the most important thing. It’s more than just the way something works, even if the code is written correctly and performs all the right calculations. That matters, to various degrees in different applications, but it isn’t the most important thing. The important thing is the way the application gets used, and the way the users feel about it. In other words, the perception of the application.

The perception of all of our systems and the services we deliver is what really counts. I heard someone recently paraphrase a well known saying. I don’t remember it exactly, but it was something like “People never remember the quality code we deliver, but they never forget the lack of quality in our code.”

That’s true, no matter what we deliver. Our users don’t remember the 500 days our database server ran without an issue; they remember the day it was down. They remember when our application rollout broke something or made them work more. And they definitely remember when the application is slow or doesn’t help them in their jobs.

As an IT group, even as technologists in general, we have to  take this into consideration when we design and build solutions. Building great software doesn’t just mean meeting the specifications we were given to  the letter, or duplicating the functionality that we think is being performed or we think is needed.

We need to make sure that our systems work with the user, that help the user and make their jobs easier. It has to provide some tangible benefits to the end user or they just don’t perceive it as being useful to them.

I’ve rolled out applications before that had cool, new features that hadn’t existed before, or we had incorporated new functionality they had requested. But for some reason it didn’t work well, or smoothly, or the user didn’t understand how to use the system. The perception was that the application was a failure.

None of us wants to be in that situation. We don’t want our work to go unappreciated. To do that we need to take the users’ perception into account when we’re designing and building software. We need lots of feedback as we go along and make sure we’re building the application the users actually want.

Steve Jones

 

What will you see at SQL in the City

London, Oct 24, 2014

Seattle, Nov 3, 2014

Come join us.

Learning Options in Seattle Next Month

The 2014 PASS Summit takes place next month. Actually a few weeks, on Nov 3-7, 2014 in Seattle. While many people attend the conference, there are some additional options for learning that you might think about in addition to the conference itself. While the conference is great, getting deeper dives on topics that last more than an hour is something you may consider.

Make SQL Server Go Faster – A two day class, Monday Nov 3 and Tuesday Nov 4, from Brent Ozar Unlimited. You’ll get two days in depth training on practical tips for improving SQL Server performance. $695, but worth it.

SQL in the City 2014 – Seattle – From Red Gate, my employer. We’ll have the hour long sessions, but we’ve split things into two tracks and have linked sessions. Our development track, focusing on Continuous Delivery, is really 3 hours of content that has breaks. Lots of admin stuff, and the chance to see how Red Gate tools make your job easier and faster, but we cover concepts that can be applied to other tools, or your own processes.

Pre-Conference Sessions – Each year there are two days of pre-conference, all day sessions. We’ve had post-conference sessions as well, but not for a few years. This year there are lots of choices, and a couple I struggled to choose between. I decided on Allan Hirt’s pre-con as I could use some HA skills beefing and as a former sysadmin, I find it interesting. If you can swing the $495, it’s a good investment.

SQL Saturday #337 – Oregon – The Saturday before, if you’re in the area early, Portland is a short drive/train/flight away from Seattle. A free, full day of SQL to get you warmed up for the Summit.

Also, don’t forget about our Monday Networking Dinner as well. Come join us. It’s free, and you get to meet other SQL Server pros.

Networking at the PASS Summit

The 2014 PASS Summit is coming up in a few weeks and thousands of SQL Server professionals will be coming to Seattle for the event. Many will arrive early, and many will be there for the first or second time in their careers.

Many of them will be that guy (or girl).

Don’t start the week off by yourself, or with a few friends. Come network a bit and meet your fellow SQL Server professionals and #sqlfamily. If you live in Seattle, you’re welcome as well, whether you’re attending the Summit or not. It’s free and everyone is welcome.

The last few years have had Andy Warren and I holding a Networking Dinner on Monday night. It’s been a large success, which by our standards, means that lots of people come and meet each other. We meet new people, and they have a good time. That’s it.

Anyone can come, just register so we have some idea of how many people to expect. Andy has written a short post, but I wanted to add a bit more detail and spread the word.

This is a self-funded event, meaning everyone buys their own food and drinks. Or buy something for a friend. We really built this event with the idea that we wanted to organize something for people to come to and meet each other. No pressure, and no expectation of costs or expenses. The first few years we packed a restaurant on the Seattle waterfront and heard from many people that they really enjoyed it.

Since then, we’ve tried to look for more open environments where people can talk and enjoy some SQL Server talk in a casual atmosphere. We try for a venue that’s not more than 3-4 blocks from the convention center, and we should have a venue soon.

Our goal is to get people to meet each other. Whether its your first Summit or 14th, whether you started working with SQL Server in the last decade or yesterday, this is just a chance and an organized event to meet others.

Come join us, tell friends, and be prepared to introduce yourself and have a conversation with someone else. That’s networking, and it’s the most valuable thing you can do for your career.

We’ve organized a time (and place to be disclosed soon). You can do the same thing. Lots is happening in Seattle, and if you know 20 people, think about creating your own event, dinner, or just casual get together. Pick a time and place, and let PASS know so others can attend.

Register today and I’ll see you in a couple Mondays.

T-SQL Tuesday #59–My Hero

TSQL2sDay150x150It’s October, and another busy fall is underway for me. It’s also the second Tuesday, so it’s T-SQL Tuesday time again. The invite this month is from Tracy Mckibben, and it’s a neat topic. Not really a technical one, but a fun one that I like.

My Hero! is the title, and we’re asked to write about our heroes, those that we admire and who inspired us. You can participate, just write a post on your blog and link back to Tracy’s post.

If you’d like to host, contact Adam Machanic. This was his idea, and it’s a great idea.

My Hero

I’m middle aged, approaching 50, and really grew up with the explosion of the Internet taking place as my career grew. I watched the personal computer market grow as I went through school and then explode as I worked for a living. I think that really impacted my career with some admiration for two men that are linked with those times, and who become household names.

Bill Gates and Steve Jobs.

I think I admired Steve Jobs early on, when the Apple II was one of my early computers. I appreciated how he helped shape something that was popular, but also an amazing computer that could be expanded, and hacked, and enjoyed. It felt much better than earlier Commodore and TRS models, and more open (ha!) than Atari computers.

I think Jobs stumbled with the Lisa, but I appreciated his investment thoughts later, and was amazed by the NeXT. It was good to see him come back to Apple and build the colorful iMacs, and then turn the music world around with the iPod, and the subsequent iDevices.

I don’t think he’s someone I’d want to work for, or really emulate, but his focus on quality, on pushing for something different inspires me. I don’t know I have the skills or talent to work like him, but the results from his times at Apple still change the way I think today.

For Bill Gates, it’s simpler. He’s a geek. He’s a programmer that built a company I have worked with throughout my career. They haven’t always had the “best” software (however you define that), or even the easiest to work with, but I think MS software, combined with the IBM PC truly caused computing to explode. Before that, the *NIXes were expensive, and were hard for buinesses to implement. MacOS, with the limited hardware and other companies like Lotus and Wordperfect, weren’t advancing their software or making it easy for businesses and Microsoft came in to make something amazing.

I’ve seen Mr. Gates speak a few times, and I’ve always enjoyed it. I have been excited by many of his goals, and the work he’s done to create platforms on which I’ve enjoyed working.

Again, I don’t know that I’d like to work for him, or think all his actions and decisions were good, but I do find inspiration in much of what he’s done.

There are many I admire in the world, and appreciate what they’ve done, as individual actions, or in aggregate, but I certainly have found Mr. Gates and Mr. Jobs to be heroes in my career.

Mercenary

I was listening to a few people talk at an event about the software they were working on. For some of them, there was a true passion in solving the problems they faced. However these weren’t applications that eased poverty with cleaner water, or more efficient transportation. These weren’t applications that dealt with medical issues impacting human health. In many cases these were simple, consumer applications that entertained people, but these developers were quite proud of the applications they worked on.

However the challenge of practicing their craft well elicited quite a bit of passion from these developers. They not only took a lot of pride in building an efficient set of methods in Java or C# quickly, they really enjoyed the process of taking a development task, writing code and tests, and delivering software that worked. They would even find pleasure in receiving a bug report, finding the issue, and delivering a corrected version of code. Most of all, however, they believed their software was making the world better in some way.

There were also plenty of developers that didn’t really care what they worked on. They didn’t find anything special about software development, and were happy to get assigned a task, write some code, and deliver it. They weren’t looking to produce shoddy applications quickly, and many of them were talented developers. They just didn’t much care where they worked or what the function the software performed.

Is this you? Are you willing to work on whatever application comes your way? Or do you have a passion to build something in particular, to work on projects that have some meaning to you? I think I’ve usually been one of the former, willing to work on any application. I’ve always been more concerned about the coworkers I have than the project we work on, but there are times I’ve felt our applications were a little special, and made a difference in some way.

Without a doubt I think most of us would prefer to work in an area that means something to us, an area that elicits some passion. I just wonder how many of us actively seek out such positions or projects.

Steve Jones

The Voice of the DBA Podcast

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

Final Prep for SQL in the City

I can’t believe this will be the fourth SQL in the City in London next week. It’s amazing to me that we’ve managed to build this great series of one day events that is so popular with SQL Server professionals.

I’m heading back to London next week, a quick trip, but one I enjoy (once I’m there), as I get to see lots of old friends and meet new ones at the event. It’s always fun, and despite the long trip, it’s worth it.

However I still have lots of prep. A few days off  this week to spend with my kids (I’ve been gone too much lately), so I’ll be pressed to finish my talks this week, and then have lots of rehearsals next week before I fly (and probably more while flying).

If you’re in the UK and can get to London next Friday, we still have some space, and we’d love to talk to you about better database development, and administration, for your SQL Servers.

Follow

Get every new post delivered to your Inbox.

Join 4,805 other followers