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).
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
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?
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.
(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.
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.
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!
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!)
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.
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.
It was not, however, the farthest I’d traveled for a PASS event; that would be PASS Summit. This year, I was selected to speak at PASS Summit. Being selected to speak at this event was quite the feather in my cap, and an enormous honor!
Ever since I was a kid, I’ve been a big baseball fan. I’ve attended countless baseball games since I was thirteen. For NYC SQL Saturday in October, I attended my first-ever postseason ballgame — something that had been on my bucket list for quite some time.
Speaking of bucket lists, I fulfilled one of mine that involves one of my extracurriculars. I’ve been a musician since I was seven. What is the goal of just about every aspiring musician? To play at Carnegie Hall, of course! Guess who got a chance to do that this year!
“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.
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.