This Week In School

From the first day of classes I’ve worried about a week like this. I think I’ve mentioned I’m only taking three of the prereqs I need to apply to PA school. That’s not a horribly heavy load, but this week everything came to a head at once.

  • Monday – Anatomy & Physiology I Exam
  • Tuesday – Bio I Exam
  • Wednesday – Bio Prelab due and Bio Lab Quiz
  • Saturday – General Psych Exam Due
  • Sunday – General Psych Paper Due

Literally the only thing that’s NOT happening this week is my A&P lab quiz on bones and their facets and attachments points and more. I suppose I should be grateful for small favors.

And to make things worse, none of my study group for A&P was available this weekend.

Now fortunately, the General Psych paper can be submitted for review early, so I knocked that out Saturday morning and got feedback by Sunday night. So I’ll upload that shortly. And the General Psych test is online and available starting tomorrow night, so I can put off studying for that a bit and take it at my convenience.

And finally, the Bio Prelab is almost literally cut and paste and can be submitted on-line. So that’s been knocked out.

But the A&P I and Bio I exams: those made me nervous. Fortunately they’re mostly multiple choice, with the Bio exam having some essay questions.

I’ve always been a decent test taker, but I have to admit, multiple choice does make things easier. In fact, one of the topics we covered in General Psych last week is memory and how recognition is “easier” than recall. i.e. it’s a bit easier to see 4 possible answers to a question and recognize the right one than to be simply asked the question and have to recall the information and write it down.

That said, for me, one thing I often like to do when taking a multiple choice test is see if I can think of the right answer before I actually see the choices, i.e. make use of recall to reinforce my recognition. This gives me more confidence when I eventually choose my final answer.

And if you add to this the fact that there are actually skills one can learn when taking multiple choice tests, such as recognizing distractors, knowing certain answers are simply wrong and sometimes being able to think through to the right answer.

This came into play on question on yesterday’s test. I went back and checked all my answers before handing in the Scantron (yes, they still use them!) and had marked a few for “definitely look at” and one I wasn’t 100% sure on. But I was able to rule out two answers of the 4 and was down to two answers. I had initially checked one of them, but the more I thought about it, the more I realized the other was the right one.

So, one test down, another in an hour and then on to the rest. Wish me luck.

… Other Duties as Assigned #2 in a series

I wrote last year about how my job title seems to be DBA and other Duties as assigned. A little incident yesterday got me thinking about that again. This time though, it got me thinking more about the DBA side of that title.

I’ve mentioned before I’ve written a number of ETLs for various clients. Some are fairly complex and some are fairly simply PowerShell scripts. In most cases, at the end of the script I send an email with a success or failure status and some additional information if appropriate.

Over the last two weeks I had noticed that the email for one particular ETL was coming in later and later. I finally found somet time to investigate. I looked at the destination table and noticed that some of the tables had extremely large numbers of rows. Now, my first inclination was that the source data had increased (which would be a good thing, it meant the client was basically selling more widgets). But the increase seemed too dramatic and large. My next thought was perhaps the export itself was simply giving me more data.

So I decided to look more closely at the data and I noticed something interesting. Picking on of the tables at random, I simply did a

select * from RandomTable order by GoodIndex

SSMS returned approximately 24,000 rows. But something stood out. There appeared to be duplicates rows. Lots of them. This raised a lot of suspicions.

I then ran the query on my UAT box which in this case actually loads a copy of the production data. I got back about 1,600 rows. VERY curious.

Back on production now I ran

select distinct * from RandomTable order by GoodIndex

This time I got back the same number as UAT. Extremely curious.

Then it dawned on me, about 2 weeks ago, we had made a change to where the script looked for the source data, a number of CSV files. UAT had not changed, but Prod had. The reason for this change was to be able to get the ETL PowerShell script to run on the proper production server (the original location had security issues reading from the original CSV file location.)

So my first thought was that the team that had updated their export had somehow left out the command to delete the old file and was simply appending. I was about to write a pointed email when I stopped myself.

I looked at my code and realized that when I had setup the script on the new production box, I had properly handled all the permissions except one: the step that truncated the destination table. Sure enough, my code was no longer truncating the table before I inserted new information. Fortunately I realized my mistake before sending that pointed email.

So was this a DBA issue or a “other duties as assigned” issue? I don’t know, but I’d say as a DBA I should have not created the problem in the first place, but thankfully, due to proper logging and emails I was able to catch it and solve it fairly quickly.

Moral of the story: Pay attention to details. Notice when things start to drift. They can be the sign of a larger issue.

SQLBits – My Thoughts

Many weeks I struggle with what I plan on writing about, but this post came to me last Thursday or Friday. It was clear to me that I should write about 2022 SQLBits.

Now, the more astute of you are probably thinking, “But Greg, you weren’t there. How can you write about it?”

Well you’re right. I’m not going to write about my experience attending it. Rather I’m going to write about my experience not attending it.

I had applied to speak at SQLBits, but didn’t make the cut this year. That happens. But this time there was more than mixed feelings. Had I been selected, I almost certainly would have tried to find a way to do so in person. However, as many of my readers know, I’m back in school taking classes as prereqs to get into PA school. And frankly, I’m loving it. But it is taking time and focus. This week, March 14-18 is Spring break for my fellow students. But last week I did have classes and I’m not sure I could have taken the time off to fly to the UK. And I’m not sure I would have wanted to; if only because of missing my A&P I lab this week (learning about the bones of the head and spine, including the axis and atlas (C1, C2 vertebrae).

So in a sense, I’m almost grateful that I wasn’t chosen to speak. It solved me the pain of trying to solve the dilemma of do I attend in person or not?

But dang, did I miss people. I saw posts from so many of my #SQLFamily that I was sad I couldn’t see them in person. And then, looking at the calendar, it dawned on me, I’m not entirely sure I can make the PASS Summit this year, again due to classes.

It just drove home how much so many of you have become family and how much I miss so many of you. And in some ways its just the start. As my plans continue, I’ll find myself making the slow transition from the #SQLFamily to hopefully a #PAFamily or whatever community I find there. And while I have often found myself in many communities, for example besides #SQLFamily I’m also heavily involved with the NCRC and plan on continuing my efforts there, I know over time my active involvement in #SQLFamily will slowly diminish. That said, I’m not walking away just yet and will continue to be involved as much as I can, both in presenting when I can and in running my local user group.

But that said, I miss you all. And do look forward to seeing any of you when I can.

A Birthday

For most people, today stands out in two ways: the one that happens every year is the anniversary of Washington’s Birthday. The other is fairly unique to this year, it of course being the date of 2/22/22 on a Twosday… err Tuesday. And of course at 2:22 AM (when most of us are asleep) or 2:22 PM for those who us who are awake. I won’t be doing anything special at that particular time, other than taking notes for class.

But for me, February 22nd has always had a different meaning in my heart, and this year even more so. My father was born 75 years ago today. He always got a kick out of sharing his birthday with the Father of our Nation, but for me, it was always more important to share it with the Father of me.

It’s been just under six and a half years since he left my life. But that’s not entirely accurate. While his voice has faded in my head and he’s no longer a physical presence in my life, he’s still there. More than once I’ll say something to my kids like “Oh your grandfather would….”. They were fortunate enough to be old enough to know him when he died, but of course I have far more memories of him than they ever will. Part of the reason I say such things to them is that it helps to keep his memories alive one more generation. I think that’s a worthy goal. And one I think he’d support.

He was an English major in college, so of course became a builder to pay the bills, and later in life an architect. He understood the power and the value of “the story” no matter what the story might be about. While we didn’t agree on genres, we agreed on that much. He was never much of a fan of Star Trek for example, but even years ago when the only Star Trek was the original series, he respected the stories it told and the archetypes it often drew upon, such as its reliance on Greek mythology and Shakespeare. So, I think it would tickle him pink to know he’s become a part of oral history, if nothing more.

A few weeks ago, I wondered to myself, “I wonder if my dad would be proud of what I’m doing (going back to school).” I immediately corrected myself and said “I know he would be.” Back when I first went to college, he decided he couldn’t be a builder his entirely life, his body just wouldn’t handle it, so he decided to become an architect. I’m still not entirely sure how he talked his way into Columbia, but he did. So for awhile we were both in college at the same time, me getting my Bachelor’s, him getting his Master’s. And to show that the apple doesn’t fall far from the tree, his mother, Chestene, at the same time decided to take some classes at her local community college in New Haven.

And in sort of an echo to the past, I find myself in college at the same time as my daughter. So history repeats itself.

I started by mentioning he would have been 75 today had he not succumbed to C. Difficile Colitis in 2015. It of course saddens me to know he’s not here. I won’t hear his voice again. I can’t ask him for advice on something. I can’t even argue with him over some trivial point where neither of our stubbornness will allow us to concede. He was part of my life for decades and I had hoped he’d be there for decades more. He was simultaneously one of the wisest and most compassionate man I knew, and also the most stubborn. He was a giant to me, both figuratively and at 6′ 4″ literally. And yet my memory of him, laying their in his hospital bed, he’s so small.

As I like to say, he wasn’t just my father. Biologically that’s the easy part. He was my dad. And at that, while sometimes he stumbled, he always would strive to do better. And this humble jumbled attempt doesn’t do him the service he deserves in recognizing him. But, I have now, included made you part of his story. And though not here, and he’d never admit it, I think he’d appreciate that.

A Month In

As I’ve previously talked about, I’m enjoying taking classes as I prepare to apply to Physician’s Assistant School. I’m a month in and still loving it.

As a toddler I apparently had a habit of turning on and off light switches. As a toddler, I have a vague memory of going with my parents to visit a friends apartment (which means it was probably in New Haven) and turning on and off a switch, not immediately sure what it did. I’m not sure it turned on the light in a closet or in the room at the end of the hall, but it wasn’t immediately obvious to my 2-3 year old mind what it did. But I was committed to flipping it until I found out.

I’ve always had a curiosity about how things worked. For some, simply knowing “it works” or “this is how I do something” is good enough. And to be honest, I often apply that in my own life. But, I have a strong bias that understanding the fundamentals goes a long ways to improving ones ability to do their job. In the world of SQL Server for example, I know many programmers who know enough to write a select statement, but have no clue how that’s executed under the covers in SQL Server. And for them, that’s fine. But as a DBA I’ve always wanted to know more. It’s a reason why I’ve read books such as The Database Relational Model by CJ Date and others. I want to understand better how things work.

And so, I’m loving my current classes, especially Anatomy and Physiology I. We’re still in the introductory phase, but starting to dive deeper. Yesterday afternoon’s class for example we started to dive into things like Carrier Mediated Transport channels and chemically gated ion channels and more.

Did you know that the inner well of the plasma membrane of a cell is typically at a -70mV potential compared to the outside, and this is due mainly to the cells ability, nay, requirement to transport Na+ ions outside to the extracellular medium? Well now you do.

“But why would one care?” you might ask. Well, from this we get to the point where in certain cells, by properly manipulating this potential we can cause cells to contract and then un-contract (I hesitate to use the word expand here). And by doing that, when we have large groups of specialized cells, we have muscle fiber and with muscle fibers we can build muscles, such as the heart.

And this all starts with a miniscule voltage difference between the inside and outside of a cell.

Honestly, the more I learn about just the basics of how a typical cell works and the amount of chemical activity in it and across its plasma membrane, the more I sit back and just say “Wow, that’s just so incredibly cool.”

So yeah, I’m over a month in now and still loving it.

Time Management

One of the side effects, happy I tend to think, of taking my prereqs for PA school is that it’s forced me to better about my time management.

I’ve often said that one of the advantages of consulting is I can set my own hours. And there’s truth to that. But there’s a flip side. Sometimes it can be hard to get started on projects or to even get motivated. With projects sometimes I feel guilty if I’m setting aside time for them and not hustling for more work. Or, motivation is low because well, sometimes it’s tough to get motivated when the highlight of your day is “Can you add this user to the database?”

But now, I have approximately 12 hours of the week I absolutely have to block out. I can’t make excuses to myself of “oh, I can do that later” or “Oh, I should be trying to drum up more work” etc. I have to be in a room or lab, focusing on a particular topic.

But more so, on top of that, I have to block out time pretty much every night and so far one day of the weekend, to go over notes, study the past week, prepare for the next and work on study aids. So this has forced me to get better about time management. Fortunately I’m not in the stage where it’s highly stressful. If anything I’m feeling a bit better. I feel like I’m accomplishing more. So, a side effect of my school work is I actually feel a little more charged because I feel like I’m using my time more effectively.

And part of that, is making sure I get this blog out in time to take care of the rest of my day.

Week 1 Update

Because last Monday was Martin Luther King Jr Day, my classes didn’t start until Tuesday. So technically I finished my first week yesterday and I’m starting my second week today.

And wow, I have to say, so far, I’m loving it. But there’s more to it than just that.

I’ve had a few friends close in age say, “Wow, I could never do what you’re doing!” Or, “Wow, I’m done with school. How are you doing it?”

For all of them, I understand. For one, everyone is different. Some didn’t have a great experience in school. Some are too busy. Some just don’t have the interest. I get it. But for me, wow, it’s been a great and heady experience and parts of me wish I had done this years ago. Of course I have to temper that with “it’s your first week Greg, give it a few more weeks.”

It is definitely a strange experience being the oldest students in the class. The only reason I say oldest student and not oldest person is because the four professors I have area all close in age to me or older. I’m only taking three classes, but my Bio I lab professor is not the same as the Bio I lecturer, hence having 4 total.

Bio I – so far, all review for me. Basic chemistry and some basic definitions. The professor has made a good point that we all have to start someplace and I agree.

Bio I Lab – basic safety and use of the micropipette and spectrophotometer. Good stuff. But not the most exciting. I do hope it gets better.

Psychology 100 – Strangely the class I felt oldest in for a minute when he was talking about the theory of playing classical music in utero and if the idea it might have an impact on fetal and baby intelligence. It was just a brief comment, but I had to remind myself, I was alive when this was all the rage back in 1998, including the governor of Georgia wanting to send CDs with classical music to all pregnant mothers. Meanwhile, the other students in the class, if they had heard of it, it was either as history, or because they heard the music itself!

Anatomy & Physiology 1 – The professor was out due to Covid for our first two classes and lab unfortunately, so we did stuff via Zoom. I can already tell I think this is the class I’m going to have the most fun in. It’s also probably going to include some of the most amount of rote memorization. So flash card time! I’ve already warned Randi on longer road trips I may have her ask me questions while we’re driving.

Besides enjoying the classes, I think I’m prepared to be a better student than I was 30 plus years ago. There’s a number reasons. For one, I’ve simply just accumulated a lot of general knowledge over that time between a lot of reading and then the learning and teaching I’ve done for NCRC and other programs. So for example, I’m already ahead on some of the terminology in A&P.

But it’s more than that. I’m simply a bit more focused, though that will be something I’ll have to keep an eye in, including keeping the balance with consulting in place.

But also, the technology obviously is different, and this has honestly helped me. Being able to communicate with the instructors via email (and Zoom) works well for my style. And the other thing I’m taking advantage of is my Rocketbook and OneNote to better take notes and organize things.

I have yet to really meet any of my classmates or learn their names and this being a community college and all of us are on different tracks, I suspect I won’t get too close to any of them. If/when I get into PA School though I suspect that part will change, in part because we’ll all be focused on the same thing and because having study partners will be an absolute requirement.

So, it’s only been week one, but I’m really enjoying it and looking forward to the rest of the semester.

In the meantime, an update on the Lego Saturn V I received for Christmas:

Lego Saturn V - S-IC stage sitting on a dining room table.
n

The Dream

The dream is always the same. … and I… find myself in a room full of kids taking their college boards. I’m over three hours late; I’ve got two minutes to take the whole test. I’ve… just made a terrible mistake. I’ll never get to college. My life is ruined. – Risky Business

Today is the day. For the first time in over 30 years I’ll be sitting down in a college classroom and taking a class. I distinctly recall taking my final exam for college. It was in Microbiology. I wasn’t overly concerned. I need to get something like a 40% on it to pass the class (and since it was counting as transfer credit, my actual letter grade didn’t matter as far as RPI was concerned.). It was multiple choice. Once I was confident I had gotten well over 40% I put down the pen and walked out. (For the record I ended up well over 80% on the exam.)

But I have to remind myself, that technically while that was the end of my undergrad career, I have taken classes since then. I took a class on SQL Server a few years later, I studied for and got my MCSE a few years after that, and starting in 2002, I started my career with the NCRC where I have since become an instructor.

But, this is different. For one, it’s 12 weeks of classes. There will be a lab. There will be homework. It’ll be harder in its own way than the other training.

Like many, for years after I graduated, I’d have a dream, usually around May, where it was exam time and I realized there was a class I had never attended and now had to take an exam in it. I’d always wake up a bit upset. One year though finally the dream changed. This time the setup was the same, but when I went to take the final exam, I aced it. Don’t ask me how. But I literally stopped having these exam dreams after that.

So I figure it’s appropriate that I had a dream about starting school last night. In my dream though, I was over in Schenectady (about 15 miles from the community college I’ll be taking classes at) trying to get folks to tell me what time it was, since I had to be at class at 2:00 PM. None would give me a straight answer at first until I got upset. Finally one person told me it was 1:45 PM. I was panicking because I knew there would be no way I’d make it to the Torrington CT Campus of UConn. It was then that I recalled that fortunately I didn’t have to drive that far.

All this is a setup to admit that yes, I am actually both excited and nervous. I’ve gone in a few short weeks from a feeling of ennui when it came to my career and life to one of stress and even a slight bit of panic. Of course it didn’t help that I had to get my vaccination status cleared, and then a bunch of other paperwork finished up late yesterday before it all became official.

I honestly have very little idea what my experiences over the next several years will be like. But I’m looking forward to them.

And more in the future.

Change My Mind… T-SQL Tuesday #146

Andy Yun (t | b) is this month’s host. Our challenge this month is:

 …to think about something you’ve learned, that subsequently changed your opinion/viewpoint/etc. on something.

I’m going to give a twofer for this one, since he’s also allowing non-technical answers.

8K Blocks

“SQL Server writes everything in 8K blocks.” I recall learning this probably close to 2 decades ago. And, it makes sense, at a lot of levels. And it was “confirmed” when we reformatted the disks on one of our production servers into 64K blocks so SQL Server could read/write 8 blocks at a time. Performance definitely improved. But, then I learned from Argenis Fernandez that this isn’t necessarily true. SQL Server will write what it wants to write. And if you think about it, that makes sense. If you update one record and it’s a single value you’re updating, SQL Server isn’t going to simply sit there and not write your 1 byte change to disk. And it’s not going to make up random 8191 bytes just so it can satisfy this rule of 8K. Yes, SQL Server will try to consolidate disk I/O and be efficient about it, but even then, it may not matter. Gone are the days where we’re writing data to bare metal (some of us are old enough to recall an option in early versions of SQL Server where one could create a database on a “raw” partition to get a performance boost). No, today we’re probably writing through multiple layers, more than we realize. For one client for example, a disk write from SQL Server will pass through an encryption layer, then to the OS, which will pass it through a disk driver layer that will then pass it on to the VM which will have its own layers. At that point, even if SQL Server were trying to only write 8K blocks, it’s quite possible every other layer has its own rules.

Yes, changing our disk formatting from 8K blocks to 64K blocks helped. It helped us. But, your requirements and situation may be different and ultimately you may end up writing more or less than 8K blocks all the time. (and I hope I summed up Argenis’s position accurately.)

Toss the Rope Down

As many know, I’m a caver. I’ve been caving for decades. Early in my caving career I learned vertical caving and back then we still used what was known as a “3-knot” system or “prussiks”. That hardware has improved and changed. But one habit took longer. It was (and unfortunately still is) common to tie one end of the rope to a tree or other rigging point, and drop the rest down the pit. Sure, you ended up with a pile of rope at the bottom, but no one really cared, as long as you didn’t step on it (which is another myth for another time). This helped guarantee that your rope actually reached the bottom. The only thing that sucks more than rappelling down a pit and reaching the knot at the end of the rope 50′ from the bottom of the pit is rappelling down a pit and realizing 50′ from the bottom of the pit that you forgot to put a knot in your rope.

But somewhere along the line, folks started to realize, “hey, that rope at the bottom of the pit is useless. It’s FAR more useful if we can leave it at the top of the pit.” As the depth of most pits are known, it’s actually not that hard to measure out the rope you think you need (plus a bit extra) and then rig the rope so that you have extra at the top. Why is this important? Some call this “rigging for rescue” (or more accurately, one part of the bigger concept).

Imagine the scenario where you’re ascending the rope and have an equipment failure. You can’t go up and can’t go down. If all the extra rope is below you, it doesn’t do you any good. You can’t do anything with it. But, if that extra 10′ or 20′ (or more) is at the top and you’ve rigged correctly, someone at the top can, without too much effort, safely change the rigging (with you still on the rope) to a 3:1 or if nothing else, a 2:1 haul system. Suddenly that extra rope sitting at the top of the pit becomes useful.

Beginners will still often toss the extra rope to the bottom of the pit, but more experienced cavers will rig it to stay at the top and this may literally save lives.

Conclusion

Stop and think about practices that you do now that you may have learned that could be wrong or no longer applicable. And more importantly, do those bad practices interfere with doing something that’s better or safer? With SQL Server, over the past few decades, a lot has changed and improved, but are you still doing something you were taught 2 decades ago because “well that’s the way things are done.” A lot has changed in 2 decades. Make sure your knowledge is still valid!

Wow…

As I posted in my 2022 Year in Preview on Saturday among other goals, I had decided to work towards a career change. On Facebook and elsewhere I asked folks to read it and by extension, for support.

Wow, I got it in spades. I’m humbled and thankful. Now if I could say I wasn’t nervous or even already feeling a bit overwhelmed.

I thought I’d provide a quick update.

One of the first steps I need to complete before I can even apply for PA school is to fulfill a bunch of prerequisites. This means taking a fairly full class load at the local community college. To do that, I needed to actually register for classes. I figured that would be the easy part, so I set off full of hope yesterday morning to do so. Their offices were closed last week, so yesterday was my first opportunity.

And I hit my first roadblock. I was told I needed to prove my vaccination status to the health office first. Well that’s a bit of a problem because for various reasons, I didn’t have access to my health records from when I was a kid, when I would have received the required vaccinations. After series of calls to various providers and the community college health office, I learned I could, if necessary get the shots from the health office. But, I needed to be registered for classes first. So effectively I couldn’t register until the health office said everything was OK, and the health office couldn’t say everything would be OK until I was registered for classes. Welcome to the classic Catch-22.

Eventually I was able to cut some red-tape and am registered and on the way to solving my vaccination status issues.

So, first hurdle cleared.

Then another one hit: I may have underestimated what prereqs I need and if that’s true, will have to 100% definitely push back one year for the whole process.

I’ll admit that gives me very mixed feelings. One one hand, it may mean a lot less pressure to get everything done this year. On the other, it definitely means another year before I can fully change careers.

So, yesterday was a roller coaster of emotions.

And it was just the first week. But I didn’t expect it all to be roses and flowers. But I’ve decided to t least share most of my ups and downs with my readers.

Oh and one upside: I finally got a Christmas present that I had wanted for two years: the Lego Saturn V. Thanks Ian. I’m going to take my time building it, spread out the enjoyment.