#CareerAdvice from a friend

My friend Steve Jones posted a couple of career-oriented articles on his ‘blog that caught my attention, and I figured they’d be helpful for people possibly looking to make career adjustments. I thought they were worth passing along.

First, Steve talks about job satisfaction. Is your job or career fulfilling to you? Do you enjoy working a hundred hours a week, or would you rather work fewer hours for less pay but manage to balance your work and your life? While Steve’s article doesn’t necessarily answer those questions outright, it does make you think, and I think a number of people can benefit from his thoughts.

Second, he also mentions an offer by Andy Leonard. In an effort to help those who are recently jobless due to the COVID-19 crisis, he is offering free training to those who have lost their jobs. The courses are about SSIS, and you need to email Andy directly to register for the courses (follow the instructions on his ‘blog article).

In that same spirit, while I don’t have wide course offerings I can give, I can provide a link to my online presentation about ‘blogging that I did back in January. I hope you find it helpful.

How I’m dealing with #Coronavirus #COVID-19

Image result for doctor wearing mask

As is the rest of the world at this moment, the current COVID-19 crisis is affecting my world. It is, indeed, an unnerving event; I’ve seen Outbreak and read The Stand, and never did I think I’d be living in an environment akin to the 1918 flu outbreak or the Black Plague.

I’ve already had events on my calendar canceled, postponed, or rescheduled (including, among other things, SQL Saturday Chicago and Albany Code Camp), and as a sports fan, I’m disappointed that the NCAA Tournament is canceled and the start of the MLB season is being delayed, among other events all over the sports world. It’ll be strange turning on the TV and not being able to tune into a sporting event. But I understand why these things are happening. Events can always be rescheduled, and there are some things that are bigger than sports.

Nevertheless, all we can do is adapt and persevere. In case anyone is wondering (or cares) about how I’m dealing with the COVID-19 crisis, here you go…

Things I’ve been doing anyway, even before COVID-19

Not panicking

Should we be concerned about COVID-19? Of course we should. The WHO has declared a pandemic, which is not something that should be taken lightly. That said, for me, life goes on. I’m still getting up and going to work. At the moment, I haven’t gone out of my way to change my routine, unless I have to.

I’m also not one of those people who’ve rushed out to stock up on toilet paper or hand sanitizer. I still have that big package of TP that I bought from BJ’s a few months ago, and I still have a number of rolls left.

I am not walking around wearing a mask. According to CDC guidelines, only those who are sick should wear a mask. To the best of my knowledge, I am not yet sick. Hopefully, I’ll stay that way.

Bottom line, I’m following common sense guidelines, and doing what people who know more than I do (such as the CDC) suggest I do.

I live in a region where we get snow during the winter. I refuse to panic any time we get reports of heavy snow. And I refuse to panic now.

This isn’t to say I’m doing nothing. Keep reading…

Washing my hands

C’mon, people, this is common sense. Wash your hands after using the toilet or when they get dirty. This is something I do, anyway. Can I tell you how disgusted I get whenever I see people walk out of the bathroom without washing their hands? Seriously?

Stay hydrated

I don’t know how helpful this is (if a medical professional who know more than I do is reading this and tells me to refrain from passing this information along, I will gladly do so), but I regularly drink lots of water during the workday, anyway. I keep a Nalgene bottle at my desk, and I fill it with ice and water at least two or three times a day, if not more. My thinking is that staying hydrated is a good thing to do anyway, and it’ll help flush nasty things out of my system.

Helping others out when possible

In this time of crisis, there are other people out there who might need some extra assistance. If you see anyone in this situation, it pays to be a good neighbor and lend a hand.

Staying informed

Probably the best thing we can have is information — good information (and not propaganda). I’m checking the CDC’s Coronavirus website for updates and advice. The WHO site is probably another good site to monitor. Additionally, the NY Times is providing free access to a page providing news and information about the crisis, as are other reputable media outlets such as Syracuse.com.

(Note: at the risk of sounding political, if there was ever a reason why we still need good, reputable, unbiased, and accurate local news coverage, this is it. That’s another conversation for another time.)

Things I’ve changed because of COVID-19

Getting more vigilant

“Life goes on” doesn’t mean that I’m not trying to stay on top of the situation. I’ve become much more wary of people around me. Whenever I hear anyone cough or sneeze, my ears immediately perk up. To the best of my knowledge, none of my coworkers are sick. I usually try to avoid people who are sick, anyway, but I’m a lot more wary about it this time around.

I’m also staying on top of my own health. I remain wary about potential symptoms, such as fever, cough, congestion, or shortness of breath. So far, I haven’t seen any symptoms, and I don’t think I’m sick. (Disclosure: I sleep with a CPAP machine, so it’s not unusual for me to wake up congested or with the sniffles.) Of course, if anything comes up, I’m ready to self-isolate, if I need to do so.

Preparing

Although my go-to-work routine hasn’t changed, I’m one of those fortunate enough to have the ability to work-from-home. Should my employer direct me to work-from-home, I am able to do so.

As I write this, it occurred to me that I likely should pick up some groceries at some point. Hopefully, all those who are panicking haven’t cleared out the aisles yet.


Did I leave anything out, or do you have any other suggestions to help people out? Feel free to leave them below in the comments.

We’re all in this together. Let’s work together to nip this thing. And by working together, we’ll get through this crisis.

Leaping before you look

(Image courtesy of The Telegraph)

Not long ago (I don’t remember how long — I’ll say a couple of weeks), I stumbled across a ‘blog post that someone had written. Apparently, this person was a new SQL Saturday speaker. I don’t remember his name, and from what you’re about to read, it’s probably just as well.

I don’t remember exactly what was said, so I’ll paraphrase: “I just applied to speak, and was accepted at, a SQL Saturday in (some city that’s not local to me). Now I have to figure out how to pay for my trip! Can you all help me? Here’s a GoFundMe page to help me out!”

I resisted the urge to write him back to say, “you’re a f**king moron. You’re not getting a single dime from me. Poor planning on your part does not constitute an emergency (or charity) from mine!!!”

SQL Saturday is an all-volunteer event, and organizers go through a great deal of time and effort to plan it and ensure that the speakers are lined up to the schedule. Committing to speak at SQL Saturday and not keeping that commitment disrespects the organizers, and it does not reflect well on you. If you renege on your commitment to speak at SQL Saturday, try seeing if you’re ever invited again.

It’s not just about travel planning, either. If I was interviewing this person for a job (note: I’m in no such position), I would highly question his ability to make smart decisions. Unless he could demonstrate to me that he learned from this mistake, I would not ask him back for a second interview.

Clearly, this person leapt before he looked, and in my mind, he has no common sense whatsoever. Whenever I apply to speak at a SQL Saturday, the first thing I do is check to make sure that I can do the trip. Among other things, I make sure the date is clear on my calendar, and I make sure that I can actually get there (there’s a reason why the large majority of SQL Saturdays where I present are ones to which I can drive).

On March 21 (a few weeks from today), I will be speaking at SQL Saturday Chicago. I Googled the driving time from Albany to Chicago, and it told me it would take 12 hours, which is much longer than I am willing to drive for a short weekend trip. I put together a hypothetical itinerary using Amtrak (I love traveling by train — I prefer it over flying whenever possible) and Chicago-area public transportation, Lyft (which I tend to prefer over Uber), and hotels. (I also looked into renting a car, but there were very few rental agencies near Union Station that were open for the hours that I needed it; besides, I didn’t want to deal with traffic in a strange city, and it was also more expensive than the other options.) I came up with a game plan that was workable and would not break the bank. When I realized that the trip was do-able, I went ahead and applied to speak (and was accepted) at SQL Saturday #945 in Chicago!

I wrote a previous article about choosing which SQL Saturday to submit. You can read the article here.

So before you commit to anything, make sure you can honor that commitment. It does not reflect well on you if you cannot keep your word. Don’t leap before you look.

I’ll be in the Windy City on March 21! #SQLSaturday #SQLSat945 #SQLSatChicago

I got the official word this morning that I will be speaking at SQL Saturday Chicago on March 21!

I will do my presentation about job hunting and networking entitled “I lost my job! Now what?!?

This is a milestone SQL Saturday for me. It will be the farthest I’ve traveled for a SQL Saturday (PASS Summit excluded), and the first where it is not feasible for me to drive to it. For me to drive to Chicago would take longer than a day, and that’s not a drive I’m willing to make!

This will also be only the second time I’ve ever been to Chicago. (Changing flights at O’Hare doesn’t count!)

Hope to see you in the Windy City on March 21!

The view from another side

In the movie Dead Poet’s Society, there’s a scene in which the teacher, John Keating (played by the late Robin Williams) stands on his desk, making the point of how important it is to see things from another perspective.

I was reminded of this when I sat in on Mike Hayes‘ online presentation, “Blogging Rebooted.” Mike gave a very good presentation, as he always does, and he even gave me lots of props. (Mike, if you’re reading this, thanks for all the kudos! I will reciprocate when I do mine!) If you missed his presentation, a recording of it is available online. Go check it out!

Whenever I attend SQL Saturday (or any other conference, for that matter), I regularly make it a point to attend sessions that are similar to mine. I need to see how other presenters view whatever it is that I’m viewing.

Looking at the same thing from another angle is important for multiple reasons. It gives me a bigger picture of what I saw to begin with. It might give me ideas that didn’t occur to me. If another presenter touches upon the same points I make in my own presentation, it validates my own ideas. If (s)he offers points that are contrary to my own, it makes me reexamine my own view to ensure what I think is correct, or to make any adjustments.

In any case, I usually end up improving my own presentations and viewpoints, sometimes vastly.

So if you’re building a case, an argument, a presentation, or any other situation where you’re expressing your own viewpoint, also consider how it looks from another view. You’ll end up strengthening your own case in the process.

Another year down, another year coming

As I write this, it’s fewer than forty-eight hours until the new year, which, I figure, is just a good a time as any to review the past year, and look forward to the next.

Because I focus my ‘blog about professional development and technical communication, let’s start there. How about a run-down of my speaking engagements this year?

It looks like I’ve had a busy speaking year. While compiling this list, it also made me think about other events around my calendar.

So, those are some of what I did in 2019. What do I have coming up in 2020?

As of today, I have two confirmed speaking dates.

Also, as of today, I’ve submitted presentations to the following events.

I also intend to apply to speak at Boston on October 3. As of today, this event page is not yet live. I am also contemplating applying to speak at PASS Summit in Houston and SQL Saturday in Virginia Beach.

2019 was a busy year, and it appears that I will not be slowing down in 2020.

Happy New Year, all! I’ll catch you on the other side!

Consistent code infrastructure

“Any fool can write code that a computer can understand. Good programmers write code that humans can understand.”

— Martin Fowler

I’m currently working on a project in which I’m trying to deconstruct a database. In doing so, I’ve come across a number of things about it that, in the scope of databases, appall me. Who the hell creates a relational database with no defined primary or foreign key constraints??? And this thing is in a production environment, no less! While that’s a big part of my frustration, that’s another rant for another time. For this article, I want to focus on something else.

A big part of my task — and my frustration — is trying to figure out what the data columns are and how they’re being used in the application. I did come across a table that contains data as to what primary keys are defined (I have no idea why whomever built this thing didn’t actually create the primary keys), and I’m spending a lot of time trying to figure out how these tables relate to each other. As I already mentioned, there are no foreign key relationships defined. So a lot of my time is being spent trying to figure that out.

This is where my frustration — and the purpose of this article — kicks in. Whomever built this structure used names like “DataCounter,” “CrossReferenceCounter,” and so on, to define their “primary keys.” (I put it in quotes, because, like I said, they’re not actually there. And who uses the word “counter” to define them?) What I’m finding is that the corresponding foreign key isn’t exactly the same. For example, while the entity table uses ” DataCounter” for its “primary key,” other tables reference it using ” DataIDCounter.”

This might not seem like a big deal, but when you’re trying to figure out how to map large numbers of data tables and columns, you start questioning whether or not the relationships are correct. And I came across several others whose naming conventions are even worse.

Some of you might be saying, “that’s not a big deal. What’s your problem?” Well, trying writing an ad hoc query where you type in what you think is the column name, and it turns out to be something completely different. You end up wasting your time going back to look it up and trying to figure out what it is.

I remember a previous job in which I was looking at a piece of JavaScript code that contained two nested loops. You would think that the increment counter would use words that would make some sense, right? Wrong. Whomever programmed it named the variables “dog” and “cat.”

Explain to me how that is helpful to somebody trying to troubleshoot or edit the code.

In my previous life as a developer, I would write what I referred to as “open-ended code” — that is, I wrote it with the idea that it would likely be rewritten somewhere down the line. I wanted to make it easy for me (or someone else) to go back and edit or change the code, if necessary. I like to think that other developers have this same mindset, but, all too often, I come across examples like this that tell me that that is not the case.

If you’re a developer — whether it’s for an application, website, database, network, or whatever — keep your naming conventions and infrastructure consistent and meaningful. You will save another developer or support analyst a great deal of grief, frustration, and time.