Monday, February 28, 2011

swwug 2011

I have been invited back to present for the SWWUG vConference in April. I will be flying down to Tucson on March 8th and recording my 4 sessions. These are not the exact titles, but from the top of my head.

Documentation. You know you love it.
Data file sizes.
Profiler / Traces
DBA Tasks

At this point, Documentation has been completed, and actually practiced as a presentation already. The others are nearing completion. I had set a goal to have them completed by this last weekend, and failed to accomplish that goal. I have a bit more work to do on some of them. But most are already well planned and created. Just need to be fluffed up at this point.

One of the tools that I used to help me was a mindmap software where I simple was able to link ideas together and list them all out. I used a couple different versions of the software, and a few different computers, including my Galaxy Tab, to simple brainstorm with myself and come up with the skeleton for each presentation. I believe that I will actually use this document in the the Documentation presentation, as an example of how to simply start documenting. Its been a work in progress, and the mindmap software allows me to simply keep adding ideas to the map and utilize those when the time comes to flesh out the presentation.

I'm nervous and excited, as always, as the date approaches. I love the creative process, I love actually presenting, I love teaching and talking and always hope that i can do a descent job and help folks. However, its still a nerve wracking process. Once its all done, I always appreciate the effort put into it, the experience as much as I do that its over. Its a funny process to look forward to something that scares you, kinda like a rollercoaster. I keep getting back in line for another ride, but am scared while in line and on the ride, yet I always return to the line and ride.


Tuesday, February 15, 2011

SQL Saturday 66

This started out as a simple review of the SQL Saturday 66 in Colorado Springs. Then it needed some back story. Then it simply became a novel. So, enjoy, or jump out now. Your choice.


Sometime last year, I decided that I would try to get to some regional SQL Saturday events. It didn't know exactly how I would accomplish this, for there were a couple obstacles standing in my way. The first was time.


The second was money. Those were the big ones.


Time was hard to come by, as it seemed that I didn't really have a lot of time to do professional development since it consistently seemed to be impacted by work. Ironic that I was unable to learn about skills that would help me in work, because I really needed to be at work instead...


Money was a difficult resource to acquire and use for this type of venture. Its benefit is obvious. Its a great education and networking opportunity to attend any SQL Saturday event. Yet it was always difficult to come up with the slush money to fly myself and get a hotel, car and anything else needed in order to go to somewhere else for a couple days.


Let's keep it simple, and keep it to those two obstacles. Time and money.


If I was one of the lucky ones, those that work at a company that has a vested interest in attending an event such as this, I'd be lucky to be sent, with expenses covered. This is an obvious win win for company and employee. I, however, am not one of those few lucky ones.


There are also those that are in the consulting gig that see their attendance at these events as a business expense to drum up potential business for their own company and skills. This is a noble gamble to bet on yourself, all the while giving back to the community as you do. This is a win win as well. I am not one of these either.


I'm just a working stiff, like many of the other DBAs and Database Developers out there that attend these events. However, something changed in my life a couple months ago. A job change changed everything. I now have more discretionary time that allows me to attend an event like our beloved SQL Saturdays. So, the time element was relaxed and I decided to simply throw the money part out the window. After discussing it with my CFO, she and I decided that we'd spend the money to fly me to a location and spend a couple nights. I can keep it cheap, and doing so would allow me to learn, grow and experience professional development on a budget.


So, I looked at the events coming up, and thru my hat into the Colorado Springs SQL Saturday event. It's close by, and I know some of the folks from the area. I am also the Regional Mentor, so it would be good for me to meet more of the local SQL people and get some face time with them as well as their leaders in the community. From my house to their home is about a 10 hour drive, and with the gas prices as they are, it would be 6's to fly or drive as far as cost went. However, there is a significant cost to spend 10 hours driving, instead of 2 hours flying. So a choice was made to fly to Colorado Springs. A couple nights in a hotel would be $50 or so, maybe $100 each. This isn't too bad of a cost. But its still a cost. I had a few opportunities to cheapen my hotel cost with a few options that presented themselves to me. One was to rent a cabin with Chris Shaw (twitter|blog) and split the cost. Another was to split a room with some local community people. Another was to stay with a good friend that lives in the area. Since this last option was going to give me some good time to catch up with a good friend, i chose it and made arrangements to spend the night at his place. In order to get there with enough time to hang out, I decided that I needed to fly out a bit earlier (1:50pm) instead of the later time (8:00pm).


This decision meant that I needed to ask for a bit of time off on Friday to leave early. This means I need to talk to my boss. In the past, when events of this nature occurred, this didn't always work out well. When work seems more important than anything else, a SQL event falls way short. I was worried to ask, but needed to, and did. As I informed my boss, he started asking me questions. The conversation went something like this.


Me: I need to take off a bit early on Friday to fly to a SQL Saturday event.

Boss: What is this event?

Me: Its put on by individuals for individuals, part of the SQL Community, all over the nation.

Boss: This sounds like a Professional Development event

Me: Yeah... (waiting for the hammer to fall, some excuse why it would be difficult to attend)

Boss: This sounds like something tht we should be paying for.

Me: (shocked) Yeah.


This is the simple version, but they decided to not only allow me to take off a bit early on Friday, but they were intending on paying for the flight and hotel. I was shocked and amazed. Time and money. Solved. Woohoo!!


Off we go to SQL Saturday in Colorado Springs.


Luckily, as the dates approached, my friend Randy Knight (twitter|blog) also decided to attend. This meant that we could travel together and split some of the costs. We headed up to the airport Friday afternoon, and after a moment of slowness as we passed an unfortunate accident, we were again on our way, albeit a bit late.

Once at the airport we cruised thru security, leaving only a single bottle of Strawberry Jam behind that apparently is insidious enough in nature as to not be allowed into the airport proper for fear of use as a weapon of some sort. This bottle was an intended gift for the wife of my buddy, as a thank you for allowing me to spend the night at her house. It was also a bottle canned by my wife at the LDS Cannery, which made it something special from us to them. It was not meant to be though...


The plane ride was uneventful, dumping us into a different version of winter than we had at home, but similar enough to not be terribly different. As I left the airport, and watched as Randy grabbed his rental car and departed, I waited for my ride to appear. Even though it was clear and sunny, I was soon cold, having forgotten it was winter here too. I stand outside for a bit, until i start communicating with my buddy. The text messages and voice conversation soon took an odd turn as questions were posed but unable to be answered to anyones satisfaction. It turned out that my ride was in Denver at the airport as I was standing outside the airport in Colorado Springs. Funny. Even funny to us at the time. A bummer. But funny nonetheless. What a mix up. With all the communication tools that we have and at our disposal, neither one of us seemed able to clearly indicate which airport I was arriving at for this event. Funny. Sad kinda funny, but funny nonetheless.


I end up calling Randy back to retrieve me, as he had a head start to the speaker dinner from the airport already. Luckily he was able to return to get me, leaving the nearly empty freeway to return to the airport with plenty of time to allow the rest of Colorado Springs residents to embrace the Friday afternoon rush hour traffic, allowing us to gain a more full experience of the clogged freeway. This irony was repeatedly brought to my attention by my new chauffeur as we were stuck driving behind residents on their way home from work. We took off, driving north to the speaker dinner. We initially went to Randy's hotel to check in, and I even checked on a price for a room there that night, in case I wasn't able to hook up with my friend for the evening. I then checked on the hotel that I was going to stay at the next night, to see what the price would be for the first night, again, in case. After this, I went to Mr. Biggs to assist with the preparations for the event in any way that I could. It was great to meet some of the speakers and organizers. I already knew Marc Beacom (twitter|blog) from past SQL Community events, and it was great to catch up with him. He was the only person that I already knew IRL though. The others, some friends, others acquaintances, were mostly known to me via twitter already. I got to give Chris Shaw (twitter|blog) a big bear hug to great him as we had become friends over twitter, facebook, Im and email for the past couple years. I have always felt like he was a brother. Funny how our community becomes family. SQL Community -> #SQLFamily.


Soon it was the speaker dinner and time to shmooze, cavort, meet, discuss, talk, enjoy and share. It was also the first meal of the day for me, as I had barely eaten anything for breakfast and completely missed lunch because of the time suck that flying can be. Luckily I survived on some snacks from my bag while on the plane, as well as those incredible Biscotti cookies. Dinner was great and we had a great time talking to new people. One of which, Jeremy Lowell (twitter|blog), was nice enough to allow me, a stranger, to get into his vehicle and deliver to the house of my friend for the evening. Jeremy was headed home anyway, which turns out was about 5 minutes from my end location. So it turned out that it was a win win for us. We talked about SQL, but soon turned the conversation to other random topics that we found out we had in common. Its always amazing to meet people in these events that are just as human as you with the same concerns, ambitions, interests and whatnots. We had a great time talking for an hour. A friendship began.


Once at my buddies house, I was honored to meet the kids. Gifts were given, minus the Strawberry jam which now lives in a trash in SLC airport. Soon we were simply talking, telling stories, and having a great time. We both do woodworking and it was great to see his work space. Later in the evening I was even able to help feed the horses, which made me feel like I was channeling Mike Rowe as I attempted to perform a task I was unaware of how to perform. Standing in the cold Colorado night, helping feed the animals in the snow was invigorating. Fun to do once. Once back in the warmth of the home, it was time to get to bed, so that we could get up early the next morning and make the 1 hour commute down south to the SQL event. Off to bed we went. Me, grateful for the time spent, the stories told, the experiences had and the roof over my head and bed offered within their home. Thanks.


The next morning had us up early to make the commute. After stopping at a gas station along the way, and after purchasing the first cup of joe ever, I was able to make a small effort at paying back my gracious host for the previous nights lodging. We had a great time talking about many many things and I truly enjoyed the time we had to spend together as the sun chased us. Soon we arrived at our destination and got on our game faces. It may seem otherwise on occasion, but we are all geeks at heart and want to simply sit in front of a computer, shunning human contact in all its forms. Attending an event such as a SQL Saturday seems against our nature, but it is such an important part of our Professional Development that we suck it up and go and put on our game faces, getting ready to talk and interact with each other.



Luckily Chris Shaw and the other organizers thought of this and planned to have many networking events that forced and allowed us to interact with each other, getting to know each other. The first event gathered us together in disciplines, into two circles. One inner circle faced an outer circle, one to one. We were to take 2 minutes with each person in the circle and perform some SQL Speed Dating, answering 2 questions. It was a simple exercise and allowed me to introduce myself to 13 people as well as get to know them. It was fun. Soon the sessions were underway. SQL Lurn was ON! Between each session, a networking event occurred. The first I chose to participate in was Lazer Tag. What a rush. This is always such a fun activity and we all seemed to have a blast shooting each other. There was lunch, which allowed us a chance to eat and talk with each other, performing our own networking discussions while cramming pizza into our gullets. More sessions and more networking occured. Lurnin and Networkin. Over and over. It was great, well organized, and well participated in by all.


I ended the day with my session in the last slot. I had participated in Lazer Tag just prior to my session in one of the networking events, which got my blood pumping and ready to stand in front of a group of SQL peeps and discuss Documentation. I believe that the session went well, and we had good discussions. Many speakers attending my session, which was always a bit nerve wracking initially, but enables me as a speaker to engage the audience even better than typically, as these are now friends and family that can be pulled into the discussions easily.


After the sessions, we had one more networking event. We all had to make a trek across the family fun center to the sand box, and retrieve an easter egg. Inside each egg, for each member of the event, a prize awaited them. The organizers had gotten many items to give away and each person received something. It was well received and I believe everyone went away feeling a bit more special at having received a thoughtful gift for simply attending. It was a nice touch.


And just like that, as quickly as it started, it was over. It was such a full day, with so many interesting topics, great knowledge, great networking, that it blew by so quickly. I for one barely noticed that I had been on my feet for many hours, had done a great many different things as well as learned and gotten excited about SQL stuff. It was exactly what was needed. Many thanks go out to the organizers. Great job!!


After the event folks retired to the bar to continue networking. I don't drink, so tend to not spend a ton of time at the bar, but did take the chance to relax a bit, talk a bit, and continue to network and build those relationships started previously. Discussions about the event ensued, Regional Mentor duties were performed with various members of the community, help given to those folks looking to setup new chapters and needing some ideas to get them going, and friendships were continued. It was a great time.


Randy and myself departed, after many handshakes, fist bumps and a few hugs. We took off to go get some dinner and relax before our 4:30 am start time the next day for the 6:00 am flight. Dinner was quick, once we finally found a place, got a seat and got our food. Having forgotten that this was a Saturday night and that many other people also wanted to eat dinner, we were slightly delayed in our own goals. Dinner did occur, bellies were filled and more discussions were had about SQL and other topics. Finally, bed awaited, its siren song calling me to slumber at 8pm, finally falling asleep sometime around 9pm. Rare for me to retire so early, yet needed to make the flight the next morning.


The next morning came quite a bit earlier than I could have expected. Its always funny to drive around in the dark, knowing its morning, yet being deceived into still believing its night. An odd juxtaposition. We arrived at the airport without a problem, albeit at the ungodly hour of nearly 5am. We got thru security easily, except for the TSA groping that occurred. Ironically I tend to travel in a tshirt and sweats, releaving myself of a belt, buttons or anything that would pose a threat to the metal detectors. However, this was the reason the TSA groper choose to use to get close and personal with my persona, the baggy sweats. Funny.


After arriving home a couple hours earlier than I would normally wake up on a Sunday, it was all over. I was home. Early and tired and spent. I laid down and rested for most of the day, getting ready to start my normal work week. Good times, good friends, good knowledge. Forging existing relationships and building new ones. Making the SQL Community into my SQL Family. Thats what I see occurs in these events.

Long live SQL Saturday!!!

Thursday, January 13, 2011

SQL Monitor - giving it a whirl

I recently started a new gig, and there is little monitoring occurring on the database systems currently. Happily enough, I am aware of a fairly new product called SQL Monitor from RedGate that says it can fill the bill nicely. What better time to try it out than now?!? I get myself a copy of it and install it to my local hard drive, web presence and db together ( i know its not the best installation scenario, but its worth giving it a try). I initially only set it up to look at my machine, which has little or nothing going on on it anyway. This is done for a day or so, to see what sprouts up, what it finds, and what it suggests on a quiet system. It still finds plenty to complain about, like missing backups, no tlog backups, no maintenance (DBCC CheckDB, or as they are called in the tool, Integrity Checks). Plenty of entries appear each day. I was particularly fond of the Long Running Queries that it came across, especially when these were actions I was taking to remediate other issues that it had found. I found some of the Long Running Queries funny to me, since they were judging this execution against past executions. Lets say I had a process that took 5 seconds to run once. The next time it took 10 seconds to run. Well, this is twice the previous time, and warranted an alert as a Long Running query. Don't get me wrong, I can see the irony that a job that takes 10 seconds once and 5 seconds the next time is labeled a 'Long Running Query'. But the alternative is to have this process run, take twice as long, and no one be the wiser. I would rather know, and deal with it, remediate it, or ignore it than not know.

After watching my boring database, I turned it onto a couple other systems. It found a lot of the same things, which prompted me to create jobs to take those actions into account, and perform them on a much more regular basis than before. I had already launched into fixing the Backups from being a single Maint Plan for everything, to individualized jobs that would execute in proper sequence, and order, with proper notifications going to the newly minted email list 'DBAlerts@mycompany.com". A couple more processes in place, and I had all but eliminated those alerts that SQL Monitor was complaining about. The next morning, though, I was surprised to find myself inundated with over 300 alerts from one of the databases. It's a good thing that I hadnt hooked up email alerting to this yet, or it would have been a miserable night of sleep. As I waded thru the alerts, there were some obvious items that were of valor, and needed to be fixed. More processes needed to be added to the systems. Or the alerts needed to be configured to be a little more forgiving, or disabled, whichever be the case for the particular database and its alert. This went on for a few days, until the majority of the alerts were related to Long Running Queries again. From these, I have compiled a list of distinct queries that need to be investigated. When others within the company are asked if they recognize these particular items, they all sigh, groan, say how nice it is to have someone seeing these things, and more importantly, grin when they realize that they may in fact be 'dealt' with at some time, instead of simply ignored, as has been the process heretofore sans a DBA.

So, after dealing with a few days of many alerts appearing, two days ago, i simply wiped them all out. Keep in mind that they are still stored in the SQL Monitor system, simply with a cleared setting, so that they do not obfuscate the main portal shoeing 'active' alerts. I eliminated them to give me some breathing room, and start a new baseline of activity after having configured many alerts. The one that seems to appear the most is 'Long Running Queries', and I have not configured this one in any way, as it doesnt get specific with SQL Statements that can be ignored. Whereas Unusual Job Execution times are not only specific for SQL Server instance, they are for job name as well. So a similar job on 2 systems can have distinct handling of the alert, based on its specific configurations. Allowing for more leniency on one side and more strictness on the other, for example.

Its not all rosy and shiny though. I have had some alerts raised that when I clicked on them to dig in, the app simply coughed up an error. Support let me know that this is a known bug and will be fixed. When you click into an alert to handle it, there are a lot of options, but when you are done, you have to go 'back' to the alerts page, often losing your place. I wish that there was next or previous button within the actual alert, such that once the alerts is dealt with, you can traverse the list to the next one more easily. When you add a comment to an alert, there are 4 controls, 2 of which are buttons (cancel and the other, maybe its ok, i cant remember). Point being, when you add a comment, and then tab from the comment control, its actually highlighting on the cancel button, though you cant really tell, but if you hit space or enter at this point, it cancels the comment. I cant tell you how many times i have written the most beautiful comment, only to have it wiped out by my quick fingers on the apparently wrongly focused next key. I know that there is a lot left to learn about the product, and look forward to learning it, either on my own, or via training from RedGate (free webcast on the product is coming up in a week or so).

I'm almost out of time on my evaluation period, and have not been given the money to purchase the product yet. I may have to request a bit more time to test it out. Since I installed it locally, I do not have access to see it via any webpage, except my own host, and I am unable to send emails. Both these functions, i believe, are important to a true review of the product. I will attempt to get it onto a true web box soon, maybe tomorrow, and get it visible to me at least, via web page.

This is a rather quick run thru of the product from my memory, while at home, before heading to bed. I am sure that there are items I have forgotten to mention that warrant mentioning. I will sit down with the product and try to recall all these, and get a list of them for a future post. Since I didnt win a copy of the product, nor a fancy iPad recently, I am excited about getting pics of my eval version on my Galaxy Tab monitoring my systems from some place other than my office to show off to folks. If nothing else, the tool has given me a means to brag about DBAs abilities to become informed of goings on in the systems. I have reported some of the items found in our daily stand up meeting, and a Product Manager mentioned 'after hearing these things about our database, I am glad, today, that he (meaning me) is part of our company as the DBA'.

So far so good. This tool has done what it claims to be able to do. Its interactions with me have not left me frustrated or angry. It has provided me with information that is useful in my day to day duties. Configuring it properly will allow me to monitor my systems and keep an ear to the ground, even if I am not in the office to be present when things occur in my DB.

See more reviews of this product at the RedGate website itself http://www.red-gate.com/products/dba/sql-monitor/reviews. And look at more information about the product here : www.red-gate.com/sqlmonitor.

Tuesday, January 11, 2011

#TSQL2sDay: Resolutions

For this month’s T-SQL Tuesday, Jen McCown asks:

So tell us: what techie resolutions have you been pondering, and why? Are you heading for a certification? An award? Are you looking to pick up CLR because that guy at the Summit said it’s “bitchin’”? Go crazy…


What is T-SQL Tuesday? Let's read from the master's blog ( Adam Machanic (Blog| Twitter) ) the following :

Each month a blog will host the party, and about a week before the second Tuesday of the month a theme will be posted. Any blogger that wishes to participate is invited to write a post on the chosen topic. The event is called "T-SQL Tuesday", but any post that is related to both SQL Server and the theme is fair game. So feel free to post about SSIS, SSRS, Java integration, or whatever other technologies you're working with in conjunction with SQL Server. Even if your post includes no T-SQL we still want to see it.


I thought that the idea of doing these T-SQL Tuesday blog events was a grand idea, and couldn't wait for my first opportunity to contribute. You may notice that its been going on without my contributions for quite some time. I am finally contributing.

Last year, around this same time, there was a rash of resolution blog posts making the rounds. I thought long and hard on what I wanted to accomplish, and posted these here in a blog entry. My goals then, as in previous years, surrounded 10 distinct items. I would like to continue with these this year, albeit with modifications.

1. Local User Group
2. Produce presentations. 4-6 presentations for the year
3. Speak
4. Perform Regional Mentor Duties
5. Blog
6. Articles
7. MVP
8. Read
9. Topics
10. #InboxZero

1. Contributing the the local User Groups is paramount. Be it thru UG meetings, simply being part of peoples lives that are members, SQL Saturday events, Code Camps, and so on. There are many opportunities to contribute, and this last year I did so in some of these ways listed above. I strive to continue to do so this year. I will be branching out a bit, as money permits, to attend regionally local SQL Saturday events as well.
2. Presentations are a good way of documenting what you know, and sharing it with others. Its a good way to learn a subject more fully than you currently know it. I have had good success with SSWUG presentations, an will continue to pursue this avenue, as well as others that come my way. I love to learn, and love to share that knowledge with others. Presentations are an obvious outlet for this activity.
3. I had this goal more specific last year, indicating speaking at SSWUG. I have removed that specificness this year, and simply want to speak more, including SSWUG, SQL Saturday events, and the like. I would simply like to stretch those speaking and presenting muscles more and more.
4. As a volunteer with PASS, its important to define an avenue for your work, then contribute as much as you can to this. I am a Regional Mentor for the Southwest region, and I, along with my colleague Andrew Karcher need to support these Chapters and ensure that whatever they need, they can be provided with. This is a fun job, although I often do not busy myself as much as I feel I should with these duties. There are some side projects in the works as well that are fairly exciting.
5. Writing in a blog can be an interesting endeavor. I will often go days, weeks, dare I say, even months without posting something here. This is not to say that I do not find value in blogging, but simply that I often find value in only posting what I believe is necessary to share, or im simply to busy to do so. So, as in previous years, I vow to post more here, to glean more information from my day to day tasks that are worthy of this forum. Not to simply post to post, or get quantity. I'm going for quality. And in come cases, I need to prod myself to generate that quality, more often.
6. This last year, I did not write as many articles as I was happy with for myself. I vow to set this as a goal again, and produce, as mentioned, more content that is valuable not only to myself, but to others.
7. Nothing will change for this goal, as its a passive goal. All the other tasks will occur on their own, and this is simply there as a carrot.
8. Again, this goal fell short last year, and will remain on my list for the year coming up. I have extended this from simply reading books, to include other mediums as well, and have imported books to my android phone and other devices, with the intent of having them more readily available, and actually carving out time away from the TV to read more.
9. This year, with this new job, I am trying to be more open to topics that were previously shut off to me for various reasons. One of these is PowerShell, and I have actually started using this more already, and hope to do so more this year. Another topic that has come my way is simply general documentation. I have spent a lot of time in my last job documenting many many things for DB systems. I will implement this skill in my current gig to document everything that is missing documentation, which right now is everything.
10. I love that this goal has made it to my list, and will forever remain. This is the ever present goal of cleaning up my email, managing my email, and imply organizing myself, accomplishing my tasks at the same time. With a new job comes new vigor to keep the inbox down to zero. Home has suffered for far too long, and will be high on my list to sort thru these emails and get them processed as well.

Well, there you have it. 10 items that I have found that are important to me, that I have continued to promote as my resolutions through a few years, with modifications as time marched on.
I hope to accomplish these in the coming years. Or at least, to stretch myself to become closer to attaining whatever task or goal each one indicates. Its good to have goals, ans we in our family just recently discussed this, coming up with spiritual as well as personal goals for each member of the family.

I challenge you to read thru my list, see if any of these things ring true for you, or impress you to set your own similar goals. Come back often and reference this, and ensure that you are accomplishing them as the year marches on.



Wednesday, January 05, 2011

Day 7

So, its been a week of work days at this new gig so far. In that time I have experienced 7 daily stand up meetings (read scrum) in which the members of the Server teams have said what they did yesterday and what they are planning on today, and any issues they have. Its a great group of folks and they are genuinely interested in helping each other out and accomplishing alls goals.

Ive experienced 2 group meetings on Mondays that share with us what the Executive Leadership Council discussed in their Monday meetings as well. The details and quantity of transparent information from top down is refreshing and engaging. The company is doing well, and they want all to know it. I've also had a company Christmas party, a launch party, a lunch out with the team, and even a meeting that blew thru the lunch hour, leaving us all hungry, but satisfied that we had discussed the important issues of the meeting.

The first few days were incredibly overwhelming with information, as the next few weeks are sure to be as well. A lot of new faces to learn, new systems, new product, new processes and policies. There are no cubes here, but each of us has a desk (a few varieties to choose from) that is mobile. The area in which we work and live is a large open space with our desks spread out into different areas and orientations to best suit our needs and the group we participate in needs.
Its an odd configuration, and requires some adjustment, but, its ok. Like everything else so far at this place, its all ok. Kinda even keeled, and nice. The people, the product, the stress, the mood... its relaxing, yet not to the detriment of work.

As far as the databases go, I was able to get access to them on day 2, and started looking into things. I have quite the list that I would like to accomplish on these systems, starting initially with a review, documentation of said review, and backups. Backups seem to be the first thing to delve into, and I immediately noticed that there was a failing job associated with backups. It turns out that the backup file repository can only hold 1 day of a certain databases backups, while 3 days for all others. Thus, the big db fails for 2 days, and the others succeed each day. On the third day, the big one succeeds, as its previous backup is removed. Simple issue. Instead of doing fulls daily on the big one, lets do Diffs. Or we could get more storage. Or... or... well, you get the idea, there are options, and I simply need to design a solution to fix the problem, test the solution, and implement it, then monitor it for success.

I created an email group to be used by all SQL Server jobs to send notifications of failure. I am investigating a couple monitoring tools, including #RedGate Sql Monitor and SQL Sentry's PA. There is development needs, perf tuning of slow running reports, security review, data file size monitoring and baselining, determining the release process, upgrading to SQL 2008 (r2), ensuring CPU speeds are properly being used, monitoring and reporting, and on and on...

It looks to be a great time ahead of me, with plenty to do. Today, I've started to investigate Change Data Tracking for a possible solution to a need. Color me excited and tag me as a happy DBA.

Wednesday, December 08, 2010

New gig, new changes and social networking

I've been at my current employer for 2.5 years. In a nutshell, I am a DBA for a very highly transactional system, a 24x7 shop that takes and processes payment for many different clients. If we have downtime of mere seconds, we loose a lot of transactions. Providing 'Service Delivery' to this system is paramount. Keeping the systems up and running requires a lot of planning, a lot of knowledge of the topology and a lot of time sensitive reactions.

During the past couple of years, I have definitely learned a lot. Skills that will help me forever in this line of work. I have also worked some random hours, long hours and extra hours. Many times I have been known to work the full day, only to find myself working the night as well. This is not uncommon in our line of work. It is understood that if you are supporting a database system, you become the goto guy/gal at any hours of the day or night to help keep your system up and running. You may often find yourself in a situation where your tasks require you to do specific things, and be unable to do other things. Meaning, our job requirements may be detailed for us, and disallowing us from performing certain activities. Roles and Responsibilities, division of duties and all that. These rules allow us to ensure that the right people are performing the right tasks at the right time.

Well, as I wax poetic about our jobs and responsibilities, I realize I got off topic a bit. So, back on track we go. A month ago, at the beginning of November, I received a random email from a Systems Engineer at a company I had never heard of. I have never heard of the individual that sent me the email either. It turns out that I am a secondary link thru the social networking wite LinkedIn. This individual seemed to have the need of a DBA's services, and knew that relying on his connections, may be able to uncover someone that was interested.

Whenever I receive requests of this nature, either thru a person I know, or a headhunter, or from whomever, I always entertain the information. It may be of interest to me, or maybe better suited for someone else. But I may as well listen to the option. If it is interesting to me, I'll follow up. Usually it is not interesting, and I can share this with others that may be looking, or members of the User Group or the local community. So, I entertain any job prospect. In fact, I looked back at my email and saw that about 12 different options had come across my desk in the last year. This is by no means a 'brag'. Most of these options were simply not interesting to me, or even worse, I was not qualified to be interested in them.

So, back to this job prospect. Random email or pointed search, I entertained it, and shot my resume over to this person. Once they received it, they were interested, and asked to see me. I love this part of the process. It makes me feel loved, wanted, and validates my skills and work ethic. This first foot in any door makes you feel alive. You must remember that this feeling also was felt with your current employer, once upon a time. Its fun to feel again and again. But it was once felt, and there were reasons you chose what you chose at that time. Keep these in mind when you weigh the possibilities.

After a couple back and forths, me learning about them, and them learning about me, it seemed we were both interested in each other, and offers were made. This is when those feelings of excitement take an odd turn. All the rest leading up to this is simply flirting and is very exciting. Once an offer comes in, it's game time. The feelings get all mixed up. Remember, you once felt excited about your current employer, and made a decision to begin working there. What to do, what to do....

I spent a couple days agonizing about the pros and cons of each option. In the end, I decided to jump to the next opportunity. The pros of this shop are as follows.

The product that is being sold is to school systems around the country and internationaly. The goal of this product is to teach children to speak and read english. The product uses games and video and interaction to teach. There are databases that produce the learning experience, databases gathering data on what is going on, what users are doing, and so on, databases that are used to report on many aspects of the product. I plan being able to help with performance tuning, data warehousing, data migration, and building out the systems and databases to be more robust systems. I'll get to take the skills I currently have and utilize them in a variety of ways, as well as learn new and exciting things. The systems are all SQL Server 2008 databases, which is exciting to me, as I seem to have been stuck just behind that curve with critical systems being on 2005 and even 2000. I have often wanted to do more work with BI and DW, and this will give me that chance. The company is close by, which will not negatively impact my commute. I have heard nothing but good things from employees as well as families of employees of this new company. The money and other options are similar to what I currently enjoy, and are neither a huge increase or decrease. The company is not tiny, but is not huge either. I have had conversations, as per the interview process, with almost a dozen people and have been really impressed with what I have learned thus far. I will get to attend SQLPASS this next year, as this was one of those options I requested in the beginning.

So, new chapter, new gig. Life will change. Day to day work will be different. Different people will become my coworkers. Lots of differences to come. Its exciting and scary at the same time.

Monday, October 25, 2010

My SQLSaturday #54 Recap


A few years ago, Pat Wright (Twitter | Blog) was hard at work on some Community events, as a member of the Board of Directors of SQLPASS, that would be similar to SQLSaturday events we have seen popping up all over the country. We had been having discussions about having a larger than a User Group event, but didn't move forward at that time. After a few SQL Saturday's started popping up, we started talking to the organizers about doing one in Utah. I believe we were initially #5 or #6. But it didn't come to fruition at that time either.

Fast forward to May of 2010, and luckily, Pat Wright got us all involved again, and got an event in Utah going. I must say that without him, none of the large events that happen in Utah around SQL Server would probably happen at all. Our hats are off to him and the amazing work that he puts in behind the scenes for Code Camps, User Groups, Photo Walks, IT Professional User Groups, and now, SQL Saturday events. So, enough kissing his butt. Back to my recap.

With the event in full swing now, it was a matter of simply ticking off the tasks, completing them, and letting time march us closer and closer to the day of the event. We had various emails going around, discussions, phone calls, and so on, as the tasks were completed. None of these tasks are super time consuming or difficult. It does take help from a few or even many volunteers to ensure that they all get done. And the fine folks behind the SQL Saturday website and SQLPASS HQ really help you stay on track and be busy completing tasks. We had a few conference calls with HQ. A few calls amongst ourselves. In the end, we learned us a great many things.

One of the things that I was in charge of was advertising and trying to get speakers from around the country to come and speak to us. I hit up some of my close SQL friends, and some thought about attending, but in the end, were unable to for various reasons. Others did express interest over twitter to other organizers. Even local folks (these are really those that should be speaking at these events anyway) came out of the woodwork to volunteer their times and talents to present. In the end, we had 4 speakers from the global #SQLFamily traveled to Utah to give of their time and talents. A bunch of local speakers did the same. We thank each of you for this.


Fast forward again to a few days before the event... Sponsors had come out of the woodwork, willing to give us money, in exchange for visibility. The SQL Saturday website and folks behind the scenes of the website are super important to this. Sponsors know that this is good visibility. Some even want to come out from all over the country to show off their stuff, and are willing to pay. This is so incredible to have a central location, and allow us to be able to have this access to sponsors. With money in hand, we were able to concentrate on the last few tasks. Speaker Shirts. Lunch. Speaker Dinner. Attendee Shirts. Gathering swag. Stuffing Swag in bags. Getting prizes. And so on.

With Twitter allowing us to constantly talk about the event, and other speakers and attendees talk about the event as well, we just hammed it up for days and weeks before the event. As it drew closer, and travel took some of us closer to Utah, twitter was the way to get the word out. Planning meet ups, speaker dinner and others things were all discussed as we got closer and closer.

Friday before the event, I left work, ran home and grabbed my wife, printed off speaker names onto papers, and headed to the Speaker Dinner. Along the way, I stopped at Best Buy, and purchased a large giveaway product. Earlier in the day, I had asked the SQL Family over twitter for some ideas. I ended up picking a Flip Video camera. Thanks to Ronald Demeron (Twitter) for the suggestion. He actually won one of his own at another SQL Saturday event.

At the Speaker dinner, we got to meet and remeet a lot of the speakers. Denny Cherry (Twitter | Blog), Nic Cain (Twitter | Blog), Pat Wright (Twitter | Blog), and Randy Knight (Twitter), Ben Miller (Twitter), Scott Heffron and Craig Berntson (Twitter | Blog).

The next day I got to meet the other speakers. Bill Pearson (Twitter) and Jason Brimhall (Twitter | Blog). We even met some other folks like Meredith Ryan-Smith (Twitter), Stefan Nelson (Twitter), Dale Cunningham (Twitter), Lars Rasmussen (Twitter). Even more have joined twitter since the event. My favorite phrase that was used to answer most questions ceased being the typical ‘It Depends’ and transitioned to ‘Get on Twitter and use #SQLHELP’. A few attendees actually got on twitter for this purpose.

During the event, Pat Wright had hooked up a netbook to a large screen TV near the registration desk, and was running tweets with #sqlsat54 hashtag. Folks were able to walk around the event, and see all the conversations happening in the subtext of the Twitterverse directly related to the very event that they were attending. This was a great idea. It was a great addition to the event.

What should you do??

Getting to the event early as an organizer is imperative. This lends to some great networking opportunities, most likely some hard work being accomplished, as well as a fair share of OH tweetables. But don’t fret, if you pay attention, you will find yourself surrounded with both Physical and Logical OH fodder you can tweet about all day long. It’s also imperative that you add to the event during the event, as you did before it, and will inevitably do afterwards. Take pictures. Post tweets. Talk to people. Help people. Clean up empty boxes around the registration desk. Talk to the SQL Stalker while allowing your colleague a chance to escape. They will repay you later in the day by doing the same. Talk to the vendors, make sure they feel wanted and loved, and have what they need to be successful. Put yourself in the hallways, near the registrations desk, remain visible all day long, as often as possible. If you are an organizer or a speaker you will have the shirt to prove it, and should be visible to assist where needed. The only time I went into the speaker rooms was to actually prepare for my sessions.

Back to my report

I arrived a few minutes later than I should have. I was bringing some of the items for the registration table, and hefted them up to the registration table. I took up my post at the table, and simply greeted people as they arrived, explaining the name tags, the raffle tickets, and answering any questions. As I usually do, I mess with people, tell jokes, and tease. I ended up meeting quite a few of the attendees and ended up talking with them throughout the day because of these initial talks. I hung out at the registration desk for a couple hours in the beginning, as my first session wasn’t until just before lunchtime. As I dew nearer to the time, I migrated to the speaker room to run through my slides one last time. I went into the room I was assigned and setup about 15 minutes early. This is such an unnerving time for me. Standing there in front of various folks in a room, setting up my laptop, and realizing that this is it. I am running the show. I’m in charge of the room. It’s up to me to set the tone and get it going. No one else is there typically to do these tasks for me. It’s just me. Each time this happens, it’s as if it’s the first time, for a moment. As I setup, I randomly start talking about whatever pops into my head. I talked about my background on my laptop. I talked about the logo we added to the power point template. I just talked about whatever. It’s important to be social at this time, even before you start. It will help get the audience to participate, I believe. Tell some dumb jokes or whatever you need to do.

My first session had 20+ people in it, and we had a lively time discussing Database Switch preparation tasks. My next session was after lunch, and had less people, but the same amount of discussions about Profiler and Trace. Once both sessions were completed, I was able to unlax and simply hang out. I spoke with attendees, speakers, and even one poor woman who was trapped for a moment by the SQL Stalker.

Once the event was over, we all gathered in the big room, the room that Denny got to speak in, and gave out prizes to those that stayed. Tshirts were flung into the audience. And the big prizes were given out to a happy crowd. We ended up giving out some great prizes thanks to the sponsors. Folks were happy, and have even tweeted about playing with their newly acquired toys.

And that’s it. The event that seemed to take forever to get here, arrived a lot quicker than I would have thought it could have. Thanks to all those that had a part in helping fulfill it. Thanks for the lists and suggestions from SQLSaturday creators and PASS HQ. Many many thanks to Pat for doing almost everything for this event. It will happen again. We will repeat, and make it better. We hope to get more speakers, more attendees, and most importantly, more SQL Lurning for the #SQLFamily.