Skip to content

Smiles

seheap

From the Stack Exchange chat.

A late night–sabbatical catch up

My company, Red Gate software, has given me a 6 week sabbatical. I’m documenting the time with all the posts under a tag if you want to follow along. The sabbatical is over, but I’m still catching up on things.

I took an extra day in the wood lab last night. The instructor offered to show up Wed night, with all projects and work due Thur, and I wasn’t the only one that needed the time. Almost the entire class was there, and it was fairly quiet with no other students or instructors working.

With my piles of parts close, the first thing I needed to do was cut tenons. I’ve done this before, by hand, with limited success. However since time is short this semester, we were given permission to use the bandsaw (and a little instruction).

I first marked things up.

Photo Jul 29, 5 47 21 PM

As with the mortises, I was thinking I could mark one board and use the setup for others. However when I showed the TA, he saw some problems. First, I needed to center the tenon. That messed up my reveal, but I could always plane the board to fix that. Then he noticed that when I’d cut left and right hand mortises, my setup was slightly off, so that they are slightly (1/64”) low on one side. Not a huge deal, but it means I need to account for R and L tenons differently.

So back to marking, spending the better part of an hour marking all 8 sides of the 4 boards, in stages to separate right from left. With that done, I turned to the bandsaw to cut the tenons.

Photo Jul 30, 8 14 15 PM

I went a little fat, having had experience with too thin. I ended up too fat, and spent most of the night fussing to get thickness, and then height, to the correct settings. Once they were cut, I felt like I was making progress, but little did I know.

Photo Jul 30, 7 53 50 PM

I went very slow on the router plane, making some passes that didn’t cut anything or generated dust. However I wanted a tight fit. Things were tight on the right tenons, but later I had to come back to this to thin a couple left ones. However I had tight fits all around.

Photo Jul 30, 7 53 44 PM

Once those were done, I re-marked, and shaved off the upper part of the tenon. Things still seemed to fit well, and I had a decision to make. The bottom shoulder was about 1/16”-3/32”, depending on left or right. I could lengthen the mortises and have no shoulder (tempting) or cut a small one. I opted to cut a small one. As much as I like the mortiser, it takes time to setup and at this point, I’d blown 2 of my 3 hours and wasn’t terribly close to having a single joint. I still knew I’d have shoulder work.

I lightly trimmed the bottoms, and as I worked on squaring the shoulders to the joint, I went back to the bandsaw a few times for small trims. I was trying to be careful, but also feeling pressure. Never a good combination.

Once things were cut, and thinned, I test fitted them together. The right hand ones seemed to do OK.

Photo Jul 30, 8 26 05 PM

You can’t see it well, but the shoulders on most were slightly off to way off. I spent about 15 minutes trying to get one to fit, before I got too frustrated and decided to work on them in the order of the closest to fitting to least.

Photo Jul 30, 8 26 00 PM

Back and forth to the vise, using a chisel to square, and then fit again. I’d hit the bandsaw for the ones that were way off to save time. Chiseling is satisfying, but slloooooowwwww and things are due Thursday.

When I had a good fit, with almost no gap, I’d mark the back of the board. I got the short aprons (sides) done first and I could put two legs on an apron and felt good. The long sides were harder, and 3:15 into extra lab time, people were cleaning up. I decided to try a test fit and see where I was.

Photo Jul 30, 9 42 06 PM

Things went together. I was amazed, and also somewhat proud. After all, I’d started with a pile of rough lumber board. I dropped the top on, just to see.

Photo Jul 30, 9 42 21 PM

It looks good. I actually built a piece of furniture that doesn’t need glue or screws, and looks decent.

Photo Jul 30, 9 42 27 PM

There are three bad gaps on the long aprons (front/back) that I need to fix tonight. I also need to run the bottom of the top (if that makes sense) through the planer to thin it and shorten my bevel. A little long for the side of the bottom.

I’ve also got the dimensions slightly smaller than I’d like, so I have to decide if it’s worth trying to shorten aprons slightly from a design aspect. Probably won’t do that, but it’s something I’ll think about.

Hoping to get to pin it with dowels tonight, but if I don’t, I’ll drill and add faux pins for decoration.

Monitoring for Non Existent Events

I was catching up on work recently, reading the third installment of The 5 Worst Days in a DBA’s life, starring The DBA Team. Someone had asked me if I enjoyed having Paul Randal (b | t) of SQLskills join them team. The piece had been edited and published while I was gone, and I hadn’t had a chance to immerse myself in the adventure. I was anxious too read how Paul helped save the day.

It was a fun read, but one quote in the piece struck me. “A job that runs long or doesn’t run at all can sting just as bad as one that fails.” That’s a quote from my character showcasing a situation that few people actually think about. However jobs that don’t run or don’t finish are situations that DBAs should be monitoring for.

So many of us adopt a set-it-and-forget-it mentality with our jobs. We assume that things will work, or fail, as we set them up. However it’s easy to forget that there are other states we might find ourselves or our systems in that can cause issues.

Monitoring is critical to any well run system, but monitoring needs to be set up well. If we require that certain jobs run, we need to not only check for success or failure, but if the job has actually run and completed. It’s easy to accidentally disable the wrong job and not notice. It’s also entirely possible that a job gets stuck and doesn’t complete.

If you’re not watching for those other states, you might find yourself in a situation where you don’t have backups and your job is on the line. However you probably won’t have The DBA Team to call on.

Steve Jones

The Voice of the DBA Podcast

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

The Voice of the DBA podcast features music by Everyday Jones. No relation, but I stumbled on to them and really like the music. Support this great duo at www.everydayjones.com.

Creating a Table–Sabbatical continued

My sabbatical officially ended on Jul 14, but I still had a few weeks of class left. And I need to get my flagpole mounted, but that’s another tale.

I missed a week of classes with travel to SQL Bits and the Red Gate office, and last week I ended up cutting my wood in to pieces for the final project. Not a lot getting done there, and some simple planing of edges and sides, but I walked into class on Tuesday with this:

Photo Jul 29, 5 03 08 PM

The left boards were planed at home to size (perhaps a touch small), but were square and ready to become legs. The middle stack is the aprons, which were planed (by hand) and squared, and then machine planed to thickness. The right stack is the top, which I managed to get fairly smooth and needed to glue.

My first step was to mark up the legs for mortises. That’s one of those tasks I couldn’t do at home, so I wanted be sure I did that.

Photo Jul 29, 5 30 01 PM

I was in class early, with no instructor, so I had to remember from the last month how to mark these up. I did two, and then the instructor showed up to note I only needed one as the machine would do the rest.

This is my favorite machine.

Photo Jul 29, 6 03 29 PM

It’s a specialty machine, but it does such a consistent job of making mortises, way better than I could. Without it, I’d dread cutting more than 1 or two and certainly wouldn’t be sure I’d do them well. With it, I’d use this joint much more often.

It took 10 minutes or so to set up, and then another 20 to cut 12 mortises. By hand I’d likely have 2 done, tops. They looked good, too.

Photo Jul 29, 6 48 14 PM

With those cut, and the instructor around, I turned my attention to the top .He looked at my boards, and with a slight gap in the centers (more by accident than design, though I did want this), he clamped them dry and proclaimed them good. We added glue, clamped and set them to dry.

I wanted to watch him do this, even though I’d clamped a few boards at home. I was looking for hints and got a few. Hopefully I’ll do a better job next time. While those were drying, I went back to legs.

First I had to smooth them. While I can use a little sandpaper at the end, I needed to plane them first.

Photo Jul 29, 7 32 24 PM

Once that was done, I dropped them in the jig and cut tapers on the bandsaw. My first tapering, and while it was easy, it was also nice to have someone else build the jig and show me how to use it to build confidence.

Photo Jul 29, 7 47 54 PM

Once the top was dry, I had to flatten and square the edges. That went quicker than I thought and I managed to get it done with a few minutes to spare. The sides were easy, the top ,a little more challenging, but in the end, it was flat enough to grip the bed of a planer when I dropped it on.

Photo Jul 29, 8 32 18 PM

With time left, I needed to bevel the bottom. One student was doing this by hand with a planer, but the instructor took pity on my lost week in the UK. He let me use the table saw. I lined it up and then he showed me how to safely run it through. I’d never run a board through vertically, so it was good to see how someone else does it

Photo Jul 29, 8 56 03 PM

I ended up with a nice pile of parts, including a beveled top.

Photo Jul 29, 9 07 38 PM

The next major step is to cut tenons and then assemble the thing.

And hope it fits.

Elevation of Privileges

At SQL Bits this year I attended a security presentation from Andreas Wolter. The session examined some attack methodologies, showing the flow that an attacker might go through to gain information about your database instance with SQL Injection. It’s a scary and eye-opening talk, and one that I might recommend to all DBAs and developers so that they can understand the dangers involved with poorly coded applications.

One of the most scary attacks was the elevation of privileges from a web user to a sysadmin on an instance, mainly because of the Trustworthy setting being enabled. I had never imagined this as an attack vector, but it was disconcerting to say the least. However it got me wondering about instances I’ve managed.

Would I detect if a new sysadmin were added? Or an existing user added to the role? I’m not sure I would, though that’s certainly something I plan on setting up with some sort of monitoring to detect. I would guess that most DBAs, whether professional or accidental, might not catch this either, at least until some audit was performed. At that time it might be too late to protect your data, and certainly too late to protect your reputation.

Security is a tough topic, and it’s an ongoing process to protect your systems. I hope to see more presentations like this at future events, and I’d encourage you to request them for any events you plan on attending. You can certainly do this for all SQL Saturday events (there’s a suggest a session on the schedule page).

Security requires vigilance and vigilance requires monitoring. Both of those also need knowledge, so be sure that you don’t neglect the security of your SQL Servers and continue to educate yourself over time as well as implementing technical solutions.

Steve Jones

The Voice of the DBA Podcast

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

The Voice of the DBA podcast features music by Everyday Jones. No relation, but I stumbled on to them and really like the music. Support this great duo at www.everydayjones.com.

 

 

Continuous Database Delivery from the Command Line

I’ve been working with Red Gate to learn more and the different ways in which we can help you ease and smooth the database deployment process. I know that I’ve dreaded deployments to production in most of my jobs, and only enjoyed them in one. The mission of one of the teams at Red Gate is to make this easier and easier and I’m learning about how they do that.

They’ve also been working with many others in the world of software, providing them with tools, getting feedback, and learning from their experiences. One of the people that has done some work with our tools is Matt Whetton, and he wrote a piece on how he’d gotten SQL Compare to work with his version control system (VCS) to get a Continuous Integration (CI) process in place. He’s using TFS, as many of you are, though he has the SQL Source Control plug in to SSMS to make managing his database code easier.

I won’t duplicate his process here, though it’s one that should work well. It has lots of pieces and parts, and might seem confusing, but it’s not. He describes in detail how he runs tools from the command line to build a more automated process. If you want us to do more of the work, we have an automation pack to smooth the entire process, and we’re improving it all the time.

I would encourage you to think about building your own automated process for database changes. It might seem like adding work for no good reason, but it can pay off as you expand the process through later environments to deploy to QA, Staging, UAT, Production and any other environments you might need to. If you move to the cloud, having automated processes become even more important.

You can also take a look at the Red Gate “Learn more about databass delivery and continuous integration” page.  We’ve got some resources up there and are looking to add more all the time.

On the Go

So much for limiting events. There was a time in May when I had nothing scheduled as far as speaking goes.

Now I have 12 events, and 9 trips in the pipeline. At least a few are local, with just an hour or so drive to speak.

Crazy and I still need to plan a trip with my wife in there somewhere.

One a Week

When Andy Warren and I first talked about SQL Saturday after the initial event in Orlando, we joked about whether we could have twelve events in a year, one a month. It seemed like a stretch goal, after all, how many events can you actually put on where the attendees don’t have to pay?

The latest PASS Connector newsletter had the headline of “SQL Saturday: Setting Records” in which there were 86 events in the last year, 34 around the world and 52 in the US.

52.

That’s one a week, though there wasn’t actually an event every week. We had some busy weeks, mostly in April and September, including 6 events on Sept 14, 2013. That’s an amazing number of events where SQL Server professionals around the world are getting a day of training for free. The cost of some events is a nominal fee to cover lunch expenses, but all the speakers give their time, often delivering the same sessions they’d give at a paid conference.

The success of SQL Saturday is due to all the efforts of the hundreds of organizers, volunteers, and speakers who work to give you a great event. If you attend an event, be sure to thank someone for their efforts. However much of the credit for the growth of SQL Saturday really belongs to Karla Landrum (b | t). The addition of Karla to the PASS staff, with her focus and support of event organizers, has made SQL Saturday grow far beyond what any of us might have thought possible at SQL Saturday #1, Orlando, 2007. If you get the chance, thank Karla when you see her.

If you get the chance, I’d encourage you to attend an event in the 2014-2015 fiscal year. If there’s not one near you, organize one. You can put on a small event, with a single track, a few speakers, and support from your community. Lots of us would love to help support an event in a new city, even a small one. You might be surprised to see a nationally known speaker at a small event, but you shouldn’t be. We love helping the community.

Steve Jones

The Voice of the DBA Podcast

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

The Voice of the DBA podcast features music by Everyday Jones. No relation, but I stumbled on to them and really like the music. Support this great duo at www.everydayjones.com.

Frustration with Bad Design

This is not how you handle things. When you find security issues, and they don’t get fixed, it’s one thing to attempt to prove a point with a PEN test. It’s quite another to publicly expose information. You might find yourself in trouble, and you should be in trouble. This is a violation of the professional responsibility you undertake when working for someone.

This is the type of frustration that occurs in many IT workers. I’ve seen more than a few people working in technology that are sure they know how to properly configure and manage an application. They know how to set up security, and they become upset with a company that doesn’t do a good job of running internal systems. They know that the architecture chosen for their application will fail when a load is applied.

There are some smart people in IT, but sometimes they think they’re smarter than they are. Bad design, bad decisions, mistakes, even poor security practices will occur. However it’s usually not your company, and it’s not your place to prove that there is a flaw in a system. It’s especially true that it’s not your place to prove things without having been given permission to do so. Proving a point on your own is something children do, not professionals.

When you find problems in your organization, it is your responsibility to report them. I hope you think it’s your job as a professional to do the best job you can, following the best practices as we know them. It’s also your decision to choose to leave a job if you can’t go along with, or abide by, the decisions made by your management.

If your company has chosen poorly in their technology decisions, I understand your frustration. I’ve often shared it, but I’d advise you to do what I’ve done. State your objections and either support the chosen path or find another job.

Steve Jones

The Voice of the DBA Podcast

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

The Voice of the DBA podcast features music by Everyday Jones. No relation, but I stumbled on to them and really like the music. Support this great duo at www.everydayjones.com.

Summer, Summer, Summertime

It’s getting close to the end of summer, at least for my family. The kids start school activities and sports on Aug 11, so we’re just a few weeks away from me starting to wake up early each day and move them around. It’s been an amazing summer for me, one that I never would have imagined at the start of the year, and we still have a couple more activities planned.

Most of my summer was my incredible sabbatical, which was the experience of a lifetime. My family had a few other events, and we’ve got a short vacation planned before school starts. While I’m sure most of you don’t have anything like a 6 week adventure away from work, I am hoping you had some memorable times. With that in mind, I wanted a poll away from work this week.

What fun things have you done this summer (or this year) away from work?

Many of you have kids, or at least plan some summertime holiday. We’ve seen traffic go down at SQLServerCentral, so we know at least a good percentage of you haven’t been diving into work each day and continuing your education. I suppose some of you have been working very hard on a project and haven’t had time to take breaks to learn something, which is a good problem to have. At least in the short term.

Perhaps you have exciting plans coming up, but in either case, let us know what was a fun break from work this summer.

Steve Jones

The Voice of the DBA Podcast

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

The Voice of the DBA podcast features music by Everyday Jones. No relation, but I stumbled on to them and really like the music. Support this great duo at www.everydayjones.com.

Follow

Get every new post delivered to your Inbox.

Join 4,554 other followers