Going crazy (in a good way)

Every once in a while, I’ll start thinking random thoughts. For whatever reason this morning, on the last day of 2021, my brain randomly started thinking about one of my favorite movies, Field Of Dreams. At the beginning of the movie, Ray Kinsella (played by Kevin Costner) said this: “And until I heard the Voice, I’d never done a crazy thing in my whole life.”

Even Billy Joel once sang, “…said he couldn’t go on the American way… now he gives them a stand-up routine in LA…”

And again, my (dangerously) wandering mind started thinking: how many crazy things have I done in my life?

A little perspective is in order here. When I say “crazy,” I don’t mean psychotic, dangerous, or harmful. I’m not talking about a dangerously unhinged person who decided to injure large numbers of people because “the little voices in the head told him or her to do so.” Rather, how often have you done something that’s out of character for you, something you ordinarily wouldn’t do, taken some kind of calculated risk, decided to do something random because “it sounded like fun,” decided to jump in your car to travel somewhere, stepped out of your comfort zone, and so on?

I’ve had my share, some of them significant, some of them trivial. I’ve driven two or more hours to concerts or sporting events on nights where I had some kind of commitment early the next morning. (I’m finding that as I get older, I can’t do those things like I used to.) I’ve submitted presentations to various major conferences, with varying levels of success. I’ve written music that I’ve submitted to publishers and contests. I once randomly stopped by a gym to ask for advice about getting into shape. And I once drove five hours on a whim to meet up with my then-girlfriend.

How have they turned out? Well, let’s start with my music. I had a publisher tell me (and I’m paraphrasing here), “I can’t use your stuff right now, but definitely keep at it, because you definitely have talent!” (The main reason why I haven’t kept up with it is because — well, life happened.) I even got honorable mention recognition for a song contest to which I submitted. For my presentations, I’ve spoken three times at PASS Summit (or its equivalent), and I’ve spoken at many SQL Saturday and Data Saturday events. There are a couple of non-PASS conferences where I’ve submitted (I was recently picked to speak at one, and I was rejected for another). That gym where I stopped? It was a CrossFit gym. That was in 2015, and I’m still going! As for those late night concerts and sporting events? Well, I had to drink extra coffee the next morning, but I enjoyed myself at the events, and I had very few regrets about attending them!

And my five-hour trip to see my then-(now ex-)girlfriend? Okay, so they don’t always work out. Win some, lose some. That said, I have no regrets about that trip.

Many of those calculated risks have bore fruit. Friends and colleagues have told me that I’m a good speaker; Grant Fritchey, a rockstar in the PASS SQL community and a person whom I greatly respect, once told me that “you’re a good speaker, and you deserve the PASS Summit slot” when I was selected to speak this year. That statement from him meant a lot to me. And while I haven’t become a rockstar (I mean that literally — an actual music rockstar), I’ve found that I’ve gained a measure of respect for what I do from other musicians. I’ve gained a lot of confidence in what I do, and I think it’s done a lot to help me advance my career, as well as my extracurricular activities.

There are a number of other friends who’ve had similar experiences. Off the top of my head, one friend decided to audition for an acting part; he is now active with his local community theater. Another friend actually got married on the Today show. (Yes, seriously — the groom is a friend of mine from high school!) While those are two that immediately come to mind, I’m sure there are others. How many of you randomly decided to go skydiving, sing karaoke, speak in front of an audience, write a poem or a song, sent a resume to a job listing for which you thought you had “no chance,” asked out the girl or guy you liked, or tried out for a part? And how did they turn out?

The thing is, if you want to get ahead in life, you need to step out of your comfort zone. This isn’t to say there’s anything wrong with just maintaining the status quo. If you only aspire to sitting on the couch watching TV, so be it. But if you want to get ahead, make something of yourself, and maybe even make yourself better (and possibly, happier), sometimes, you just have to do something a little crazy.

Hope you all have a happy and healthy New Year. And I hope you all do something a little crazy in 2022.

Advertisement

What a TV ballgame can teach us about design

This afternoon, the 2021 slate of spring training games started for Major League Baseball. And of course, being the big baseball fan that I am, I took to it like a lion to a steak.

I wasn’t thinking too much about design or layout until I heard Michael Kay of YES mention, “I think our fans will like the new clean design of our scorecard.”

At least that’s what I think he said. It threw me for a loop, because I am enough of a baseball fan that whenever I go to the ballpark, I’ll buy a scorecard and keep score during the game. So when he said “scorecard,” I thought about a pencil and paper in my hand (and, usually, a hot dog or a beer in the other). At that point, I realized that he was referring to the score display in the upper left-hand corner of my TV, as pictured below.

It then occurred to me: “wow! That’s a TON of information contained in that one graphic!” At that point, I felt compelled to write this article.

So, let’s break down just how much information is contained here. (A warning to those of you who don’t know anything about baseball: for most of this article, I am going to “speak baseball.” If you’re not a baseball fan, you’re just going to have to bear with me.)

First, I’ll start with a paragraph as to what information is contained in this graphic. Be forewarned: I am about to inundate you with information.

In the top of the third inning, Toronto leads New York, 3-0. There are runners on first and second, with nobody out. Jansen, the Blue Jays’ number 7 batter in the lineup, is facing Wojciechowski, the Yankee pitcher. Wojciecowski has thrown ten pitches, and has a full (three ball, two strike) count to Jansen.

That’s a lot of information to glean from a single graphic, isn’t it? Let’s break it down.

  • We’ll start with the score. Toronto 3, New York 0. (I’m sure that will please many Yankee haters out there.) The score dominates most of this graphic. I don’t want to say that’s obvious, but it does take up most of the image, and is the largest takeaway.
  • Underneath the score are two names, located under the teams for which they play: Jansen for Toronto, and Wojciechowski for New York. The 7 in front of Jansen represents his spot in the lineup (which would be a number from 1 to 9). “10 P” indicates that Wojciechowski has thrown ten pitches. (Note: since Wojciechowski is an unusually long name, the pitcher’s name and the number of pitches would not ordinarily run into each other like that.)

On the right side of the graphic, we see a couple of smaller graphics.

  • Let’s start with the box containing the shapes. We see three boxes, two of which are blue (and the third is gray), denoting baserunners on first and second base. The boxes represent the bases (going right to left, first, second, and third base). The boxes that are blue indicate that they are occupied by baserunners. If the bases were loaded, all three boxes would be blue; if no one was on base, all three would be gray.
  • Under the boxes representing the bases, there’s a “3” indicating the inning. The arrow (represented by the triangle next to the 3) denotes whether it’s the top or bottom of the inning. Therefore, the arrow pointing up and the “3” indicates that it’s the top of the third inning.
  • Now, let’s look at the “3-2” with the two gray circles underneath. The 3-2 refers to the batter’s count. For those of you who are baseball-challenged, a “count” represents the number of balls and strikes on a hitter. A batter who gets four balls is allowed to go to first base (called a “base on balls” or a “walk”). A batter who gets three strikes is out. So the “count” represents the batter’s status, and is always represented as numbers denoting balls-strikes (2-1, 1-2, 3-2, etc.). Therefore, 3-2 indicates that the batter has three balls and two strikes on him.
  • Finally, the two circles under the count represents the number of outs. Each blue circle represents an out (there are three outs in an inning). That these circles are gray indicates that there are no outs in the inning. (And no outs, with a 3-2 count, and two baserunners are a pretty good indication that the pitcher — Wojciechowski — is in trouble.)

The point is that within a relatively small space, a great deal of information can be gleaned. This concept carries over into many concepts of design, including data visualization and interface design. A person who understands how to read that information can obtain a large amount of information from a well-designed graphic.

Whomever it was that designed this score display definitely knew what (s)he was doing. Kudos to the person who designed it. I think this is a great example of how good design can effectively convey information.

#TheBestOf… Visiting the ballpark

This is part of a series of articles in which I contribute to uniting our world by showing off a part of my own. A while back, I proposed writing articles to bring people together by showing us something special about your world that you want to share.

Today’s topic: the joys of taking in a baseball game.

I’m one of those fans that you’ll see at the ballpark keeping score!

One of my favorite activities is to take in a ballgame. It relaxes me, it’s fun (although I understand why a lot of people find baseball to be boring), and (for those of us who do “get” baseball) it can be mentally stimulating. I’m one of the people that you’ll see keeping score at a ballgame. People who find baseball to be boring often don’t understand that baseball is actually a chess match — the managers are making moves based on probability, and certain strategies are employed based on certain situations (e.g. what kind of pitch to throw, whether or not to steal a base, substituting a player, and so on). I’ve had a lifelong love affair with baseball, going all the way back to my early teens, and I will take in a ballgame whenever I have a chance to do so. I’ve even been known to schedule vacations around Major League Baseball schedules. I even wrote a previous article in which I talk about the ballparks and arenas that I’ve visited.

With that, there are things that I make sure I do whenever I visit a ballpark. Every ballpark is an experience, and with the number of different stadia around the country, each experience will be different.

  • Mingle with the fans around you. Fans are often representative of the local culture, and you can often experience a lot just by talking to fans. They can often tell you about things to experience, places to eat, and maybe talk a little about the history of the home team or the area that you’re visiting. Conversations with local fans can often be quite interesting. And often, you’ll speak the common language of baseball, even if you’re rooting for opposing teams!

    I once attended a game at Fenway Park (a dangerous place for a Yankee fan like me, I know), and I struck up a conversation with a lady sitting next to me. After a while, she said to me, “you’re from New York, aren’t you?” I said, “yeah, how’d you know?” She said, “something you said. You definitely have a New York accent.” To this day, it’s the only time I’ve ever been told that I have an accent of any kind!
  • Sample the ballpark fare. I mentioned in my previous #TheBestOf article that I make it a point to sample food that’s representative of an area that I’m visiting. The same holds for ballpark food. Most, if not all, ballparks have their standard hot dogs, of course, but a lot of ballparks will often have fare that’s representative of their locale. I’ve sampled, among other things, streak sandwiches and bacon on a stick (a friend who accompanied me to a game once said to me, “that’s not bacon, that’s a pork chop!”) at Yankee Stadium, Fenway Franks and hot cocoa at Fenway Park, coffee and garlic fries (not together, mind you!) at Safeco Field (now T-Mobile Park), and French fries at SkyDome (now Rogers Centre). Granted, a ballpark isn’t a four-Michelin-star restaurant, but a lot of concessions have come a long way since the days of a hot dog and a beer (although you can still get those).
Monument Park is one of my favorite places in Yankee Stadium to visit!
  • Explore any unique features of a ballpark. Not all ballparks are created equal. I love to explore ballparks, especially one that I’m visiting for the first time. Fenway has the Green Monster. Yankee Stadium has Monument Park and the Yankee Museum. Tropicana Field has the manta ray tank (I was going to mention the Ted Williams Museum, but was sad to see that it had been closed). Many ballparks have features that are usually worth checking out, and if they’re fan-accessible (Monument Park is one of my favorites), I suggest you go check it out!
  • Buy a souvenir. Any tourist will often get souvenirs unique to his or her trip. Ballparks are no different. I have a small collection of items from ballparks I’ve visited. I have caps, shirts, jerseys, and other swag for the Toronto Blue Jays, Seattle Mariners, Tampa Bay Rays, Baltimore Orioles, Montreal Expos, and Colorado Rockies (and maybe a few others that I’ve missed). (Okay, as a Yankee fan, the only memorabilia I won’t buy is anything for the Boston Red Sox or New York Mets! 🙂 ) They all represent ballpark experiences I’ve had, and even though I’m a Yankee fan, I will wear these items proudly!*

    (*Well, okay, maybe except on days when the Yankees play them!)
  • Keep score. I regularly keep score at ballgames. A scorecard does a number of things. It makes you pay attention to whatever is happening on the field of play (and, if you’re new to baseball, it can help you better understand the game). It can be a conversation piece; often if other fans around me see that I’m keeping score, they’ll often ask me things like, “what did such-and-such batter do his last time at bat?” (I remember someone once said to me, “if you’re keeping score, you immediately become the god of that section where you’re sitting!”) And at the end of the game, your scorecard becomes another souvenir of the ballgame!
  • Admire the history and the architecture. It’s often said that sports are a reflection of society. As such, a great deal of history comes along with a ballclub. (If you want a good synopsis of the relationship between baseball and history, check out Ken Burns’ Baseball.) Understanding the history of a ballclub, as well as the architecture of the ballpark, often reflects the history of the municipality that it represents.
  • Enjoy the environment. There’s a reason why baseball is called “America’s Pastime.” For me, there’s something very satisfying and relaxing (or exhilarating, if an exciting play happens) about spending a beautiful summer day at the ballpark along with good friends (or even by myself), a scorecard, a hot dog, and a beer.
  • Visit the surrounding area. Areas surrounding ballparks can often be attractions in and of themselves, and they often provide great destinations after the game is over. Baltimore’s Inner Harbor is within easy walking distance from Camden Yards. Denver’s LoDo neighborhood is a stone’s throw from Coors Field. Fenway Park is right around the corner from Kenmore Square and Boston University. And Safeco Field/T-Mobile Park is only a short distance from Seattle’s Pioneer Square and the waterfront.

If you are as big of a baseball fan as I am (or even if you’re not), and if you like to travel, make sure you take in a ballgame. It will enhance your travel experience so much more!

The #SQLSaturday All-Star Game #PASSSummit

After my surprise selection for PASS Summit, I went poking around the speakers list. I’m pleased to see that a number of good #SQLFamily friends that I’ve made throughout my years as a SQL Saturday speaker were selected. I’m also awed that my name and photo are listed along with a number of SQL rock stars in the industry.

It prompted me to tweet this.

As people who know me are aware, I am a huge baseball fan. I’ve often heard people refer to PASS Summit as being “the Super Bowl of SQL Saturdays.” Looking at the speakers list (and being the baseball fan that I am), I equate it more as being the “SQL Saturday All-Star Game.”

People such as Bob Ward, Steve Jones, and Grant Fritchey (yes, you, Steve and Grant!) represent the big hitters. They are Willie Mays, Ken Griffey Jr., and Mickey Mantle, people who are perennial SQL stars and are pretty much shoo-ins for being selected to Summit year after year. (And I’m sure that if my friends Steve and Grant are reading this, they might give me an “aw shucks!” for equating them with Junior and The Mick!) On the other hand, people like me are more like Willie Randolph or Kent Hrbek — players who had solid careers and made an occasional All-Star game now and then, but weren’t necessarily household names outside of their home teams’ markets.

When I gave my first SQL Saturday presentation, never did I think that it would end up getting me to PASS Summit!

I’ve seen interviews with ballplayers who talked about how humbled they were about being selected to play in the All-Star Game. Having been selected to speak at PASS Summit for the second time, I understand how they feel. I am awed and humbled with being associated alongside some of the great players in the business.

#SQL101: Create tables from CSV flat files

With my previous article about getting into REST applications, I figured it would be a good idea for me to set up a data source so I could practice. Besides, I had reinstalled SQL Server 2019 on my machine, and I needed to import some data so that I could brush up on my SQL skills as well.

Being the baseball nut that I am, of course, I had to import baseball statistics, so I decided to reimport the most recent data from Sean Lahman’s baseball database. The last time I did this exercise, I downloaded a database format. I don’t remember what format I used (the links all say “Access” — which I don’t remember downloading), but the files I used had an .sql extension. This time, I used the comma-delimited version, which downloaded a zip file containing files with a .csv extension.

I wanted to import the files directly into my database and have them create the tables upon doing so, so I opened up my SSMS, created a new Baseball database, and looked into how to do this. After poking around a bit (and a little bit of Googling), I found that flat files could be imported by right-clicking the database of your choice (in the below example, “Baseball”), clicking Tasks, and selecting Import Flat File.

Selecting this opened an Import Flat File wizard. First, it prompted me to select the input file. (Note: if you are importing multiple files, as I did for this little exercise, the wizard is smart enough to remember your last folder when you click Browse.)

When it looks at the flat file, it gives you a preview of the data that you’re importing. Since, for this exercise, I’m importing comma-delimited flat files, it was able to put my data into nice, neat columns.

Clicking “Next” brought me to a screen where I could modify the columns. I like this option a lot, as it gives me an opportunity to set up my data schema the way I want. If you’re a SQL or database newbie, I strongly suggest that you learn about primary keys and data types and take the time to set them up at this point.

In this particular example, I set my yearID to char(4), stint to int (I will likely change this to tinyint), teamID to char(3), lgID to char(2), and pretty much everything after lgID to int. I also set my first five columns as a composite primary key and everything else to be nullable.

I must have set these columns up successfully, because when I ran it, it did so without complaining.

I wish I could say that I imported all of my flat files without a hitch, but I did run into a few that didn’t run successfully the first time. Here are some of the issues that I came across.

  • I had opened a file in Excel to check data types, forgotten to close it, and the import complained that it couldn’t work because the file was still open.
  • I miscalculated a few field sizes, and came across messages saying that my column sizes were too short (for example, setting nvarchar(10) for a column that included data with 15 characters).
  • There were a few cases where I simply had the wrong data type.
  • My Pitching table included a column for ERA, which I was surprised to see. Reason: ERA (Earned Run Average, for those of you who are baseball-challenged) is a calculated statistic, like batting average. However, batting average was not included in the Batting table. So, I set the column data type to float. However, when I tried to import it, it failed. When I looked at the data, I found entries under ERA that said “inf” (for “infinity”)*. In this case, I did some data cleansing. I got rid of these entries and saved the flat file. It then imported with no problem

(*Some of you might be wondering, how do you get an ERA of infinity? Answer: you give up runs without getting anyone out! Mathematically, you would get a divide-by-zero error for calculating ERA, but in baseball parlance, it means you give up runs and can’t get anyone out!)

So hopefully at this point, you now have an idea as to how to import flat files into a SQL Server database (and maybe even got a small taste of data types and primary keys). And hopefully, this little utility saves you a lot of grief when trying to import flat files.

The sports venues that I’ve visited

I enjoy attending sporting events. My previous post got me thinking about the sports venues that I’ve visited, and I thought it’d be fun to compile that list!

A few caveats: I only list venues (along with their home teams and/or events) in which I’ve actually seen a game. For example, I’ve set foot in Michigan Stadium in Ann Arbor, but I didn’t actually see a game there, so it’s not on my list.

I don’t list opposing teams. I’ve been to so many events that I don’t remember them all. Also, for “home” arenas in which I’ve seen large numbers of games, they’d be too many to list, anyway.

I also denote any arenas that are homes to “my teams.” While I live two hours away from Syracuse, I still consider the Carrier Dome as my “home” arena. Geographically, Siena and UAlbany are only minutes away from me, and I do root for the home team in those arenas, but they’re not necessarily “my” teams or home arenas.

I only consider organized professional (major or minor league) and NCAA (any division) teams or events. Organized non-professional or collegiate events (e.g. Little League World Series, Olympic games, etc.) count too, although I’ve never been to one. The pickup game of touch football in the public park doesn’t count.

These are listed in no particular order, although I try to list my “home” arenas, places I’ve visited more often, and places geographically close to me first.

I mark arenas that either no longer exist or are no longer used for that sport with an asterisk (*).

All games are regular season games, unless denoted.

I have never been to an NBA, NHL, or major soccer game, which is why you don’t see them listed.

So without further ado, here’s that list.

Arenas I’ve visited

Baseball

  • Yankee Stadium (new), Bronx, NY — NY Yankees (home arena), ALDS
  • Yankee Stadium* (old), Bronx, NY — NY Yankees (home arena)
  • Joseph Bruno Stadium, Troy, NY — Tri-City ValleyCats (home arena)
  • Heritage Park*, Colonie, NY — Albany-Colonie Yankees (home arena), Albany-Colonie Diamond Dogs, NCAA Div-III tournament regional
  • Robison Field, Troy, NY — RPI Engineers (home arena)
  • Fenway Park, Boston, MA — Boston Red Sox
  • Shea Stadium*, Queens, NY — NY Mets
  • Citi Field, Queens, NY — NY Mets
  • Kingdome*, Seattle, WA — Seattle Mariners
  • Safeco Field (now T-Mobile Park), Seattle WA — Seattle Mariners
  • Camden Yards, Baltimore, MD — Baltimore Orioles, All-Star Game
  • SkyDome (now Rogers Centre), Toronto, ON — Toronto Blue Jays
  • MacArthur Stadium*, Syracuse, NY — Syracuse Chiefs
  • Alliance Bank Stadium (now NBT Stadium), Syracuse, NY — Syracuse Chiefs
  • Olympic Stadium*, Montreal, PQ — Montreal Expos
  • Veterans Stadium*, Philadelphia, PA — Philadelphia Phillies
  • Tiger Stadium*, Detroit, MI — Detroit Tigers
  • Coors Field, Denver, CO — Colorado Rockies
  • Tropicana Field, St. Petersburg, FL — Tampa Bay Rays
  • Damaschke Field*, Oneonta, NY — Oneonta Yankees
  • East Field*, Glens Falls, NY — Glens Falls Redbirds, Adirondack Lumberjacks
  • Stade Canac, Quebec City, PQ — Quebec Capitales
  • Dwyer Stadium, Batavia, NY — Batavia Trojans
  • Silver Stadium*, Rochester, NY — Rochester Red Wings

Places where I’ve never seen a game, but are on my wish list: Wrigley Field, Chicago; Dodger Stadium, Los Angeles; Oracle Park, San Francisco; Kaufmann Stadium, Kansas City; Petco Park, San Diego; Nationals Field, Washington DC; PNC Park, Pittsburgh; any Nippon Professional League game in Japan

College football

  • Carrier Dome, Syracuse, NY — Syracuse Orange (home arena)
  • ECAV Stadium, Troy, NY — RPI Engineers (home arena)
  • ’86 Field*, Troy, NY — RPI Engineers (home arena)
  • Bob Ford Field, Albany, NY — UAlbany Great Danes
  • Alumni Stadium, Chestnut Hill, MA — Boston College Eagles
  • Navy-Marine Corps Memorial Stadium, Annapolis, MD — Navy Midshipmen
  • Michie Stadium, West Point, NY — Army Black Knights
  • Veterans Stadium*, Philadelphia, PA — Temple Owls
  • Yale Bowl, New Haven, CT — Yale Bulldogs
  • Met Life Stadium, East Rutherford, NJ — Syracuse Orange
  • Giants Stadium*, East Rutherford, NJ — Syracuse Orange
  • Ohio Stadium, Columbus, OH — Ohio State Buckeyes
  • Louisiana Superdome, New Orleans, LA — Sugar Bowl
  • Pontiac Silverdome*, Pontiac, MI — Cherry Bowl
  • Tampa Stadium*, Tampa, FL — Hall of Fame (now Outback) Bowl
  • Sun Devil Stadium, Tempe, AZ — Fiesta Bowl
  • Yankee Stadium, Bronx, NY — Pinstripe Bowl
  • Camping World Stadium, Orlando, FL — Camping World Bowl
  • Jacksonville Municipal Stadium (now TIAA Field), Jacksonville, FL — Gator Bowl
  • Fenway Park, Boston, MA — Fenway Gridiron Classic

Places where I’ve never seen a game, but are on my wish list: Harvard Stadium, Harvard; Memorial Stadium, Clemson; Beaver Stadium, Penn State; Rose Bowl, UCLA; Michigan Stadium, Michigan; Notre Dame Stadium, Notre Dame

College basketball

  • Carrier Dome, Syracuse, NY — Syracuse Orange (home arena), NCAA tournament
  • Manley Field House*, Syracuse, NY — Syracuse Orange (women — home arena)
  • RPI Armory*, Troy, NY — RPI Engineers (home arena)
  • Times-Union Center, Albany, NY — Siena Saints, MAAC tournament
  • Alumni Recreation Center*, Loudonville, NY — Siena Saints
  • SEFCU Arena, Albany, NY — UAlbany Great Danes, America East tournament
  • Pittsburgh Civic Arena*, Pittsburgh, PA — Pitt Panthers
  • Lundholm Gymnasium, Durham, NH — UNH Wildcats
  • Case Gym, Boston, MA — Boston University Terriers
  • Hubert H. Humphrey Metrodome*, Minneapolis, MN — NCAA tournament
  • Reunion Arena*, Dallas, TX — NCAA tournament
  • Madison Square Garden, New York, NY — St. John’s Red Storm, Big East Tournament, NIT Preseason Tournament
  • Barclays Arena, Brooklyn, NY — preseason tournament

Places where I’ve never seen a game, but are on my wish list: The Palestra, Penn; Allen Field House, Kansas; Pauley Pavilion, UCLA; Cameron Indoor Stadium, Duke

RPI has a new arena: ECAV (East Campus Athletic Village) Arena. I have yet to see a game there.

College hockey

  • Houston Field House, Troy, NY — RPI Engineers (home arena)
  • Messa Rink, Schenectady, NY — Union Dutchmen
  • Times-Union Center, Albany, NY — Mayor’s Cup/Capital Skate Classic, NCAA tournament
  • Glens Falls Civic Center*, Glens Falls, NY — Mayor’s Cup/Capital Skate Classic
  • Lynah Rink, Ithaca, NY — Cornell Big Red
  • Starr Rink, Hamilton, NY — Colgate Raiders
  • Tate Rink, West Point, NY — Army Black Knights
  • Bright Hockey Center, Cambridge, MA — Harvard Crimson
  • Yale Ice Arena, New Haven, CT — Yale Bulldogs
  • Thompson Arena, Hanover, NH — Dartmouth Big Green
  • Olympic Ice Arena, Lake Placid, NY — ECAC tournament
  • Walter Brown Arena*, Boston, MA — Boston University Terriers
  • Cumberland County Civic Center (now Cross Insurance Arena), Portland, ME — Maine Black Bears
  • Hartford Civic Center (now XL Center), Hartford, CT — I don’t remember the event, but it was four teams: RPI, Maine, Colgate, and I don’t remember who the fourth team was.
  • Madison Square Garden, New York, NY — Rivalry On Ice (Yale vs. Harvard)

Places where I’ve never seen a game, but are on my wish list: Alfond Arena, Maine; Hobey Baker Rink, Princeton; Matthews Arena, Northeastern

AHL Hockey

  • Times-Union Center*, Albany, NY — Albany River Rats, Albany Devils

NFL Football

  • Giants Stadium*, East Rutherford, NJ — NY Giants (home arena)
  • Rich Stadium (now New Era Field), Orchard Park, NY — Buffalo Bills
  • Sullivan Stadium*, Foxborough, MA — New England Patriots
  • Veterans Stadium*, Philadelphia, PA — Philadelphia Eagles

Although I’ve been to Met Life Stadium, it was for a Syracuse game. I have yet to see the Giants there.

CFL Football

  • Landsdowne Stadium*, Ottawa, ON — Ottawa Roughriders

Arena Football

  • Times-Union Center*, Albany, NY — Albany Firebirds


Wow, I’ve attended a lot of sporting events!

Anyway, this was a fun exercise, and a neat list to put together. I’m hoping to add to it!

A trip to New York City for #SQLSaturday #SQLSat912

(Photo source: britannica.com)

As I promised in my previous article, here is the article that details my trip to SQL Saturday #912!

Early last year, I wrote about my trip to SQL Saturday #714, Philadelphia. That was an enjoyable trip (well, they all are), and I enjoyed writing that article. With my trip to SQL Saturday #912 in New York City, I thought it’d be a fun exercise to write another one. I figured it’d be a fun piece for people who’ve never traveled to a SQL Saturday, not to mention people who’ve never been to New York City.

So, come along with me as we take another trip!

The planning

Being the trip planner that I am, I mapped out my plans for this trip a while back. Plans for this trip have actually been in the works for months.

Planning began back in May, when I submitted my presentations. For planning purposes, whenever I submit presentations to any event, I assume that I’ll be selected to speak, even before I find out whether or not my submissions are accepted. As soon as I submit, my plans for whatever event I apply are pretty well written into my calendar, unless either (1) I end up not getting chosen for the event, or (2) some conflict that I can’t get out of comes up for the same date.

Ordinarily, I don’t firm up my travel plans until I know for sure that I’m selected to speak, but this time around, there were a couple of twists. First of all, I saw Thomas Grohser, one of the event’s organizers, at SQL Saturday in Albany in July. He told me that I was going to be speaking in NYC. Granted, Thomas is a friend, but nevertheless, it was still not an official selection. I wanted to make sure that I had the official selection email before I started booking my train and my hotel room.

In early August — still before I received the official acceptance notification — I got an email from Amtrak (I’m a Guest Rewards member) that included fare specials. I discovered a round-trip fare from Albany to Penn Station that was too good to pass up. Unfortunately, the deal had an expiration date, so I had to act fast. I decided to pull the trigger on it. Okay. I had a train reservation. Now I was committed to the trip, regardless of whether I was chosen to speak or not. It wasn’t a big deal; I regularly attend SQL Saturday in New York, regardless of whether or not I’m speaking.

I selected an early afternoon train to New York. I wanted to leave myself time to make the speaker’s dinner, if they had one. As it turned out, that would not be the case, as I’ll explain later on.

Now that my train was reserved, I needed to find a place to stay. My two siblings both have places down in The City, and my sister has repeatedly told me that I can use her place in Brooklyn. While I’m appreciative of the offer, I also wanted to stay someplace closer to the Microsoft office in Manhattan, preferably within walking distance, where SQL Saturday takes place. Of course, as anyone who has traveled to New York City can attest, inexpensive places to stay in midtown Manhattan are nearly non-existent. It also didn’t help that the office was located near one of the world’s biggest tourist traps. (I usually try avoiding it, but that was impossible for this trip.) I checked a variety of places, including a few on AirBnB and a few places that were farther away but near subway lines. I found a few places that had potential, but kept looking.

I hit the jackpot when I tried Hotwire. They advertised a deal where I could stay at an (unnamed) midtown hotel for $109. It promised that I would be booked at one of three hotels, which they listed. The actual hotel would be revealed after I booked. I looked at their locations, decided I could live with them, and decided to take the chance. I ended up getting booked at the Sheraton New York Times Square. The final damage was $173 after taxes and fees — granted, more than the advertised $109, but still a steal for a Sheraton in midtown Manhattan near Times Square!

At some point — I’m not quite sure when — I looked at my own speaker’s profile, and noticed that three of my submissions were now listed as “Regular Session,” not “Submitted Regular Session.” This is usually a pretty good indication that I’ve been selected to speak, although it still isn’t official yet. I was surprised, however, that three of them were listed. I figured, either (1) it was a mistake, (2) they were still working on the schedule, or (3) I was going to be one very busy boy on October 5!

In August, I got an email from Thomas Grohser. It was no mistake. Indeed, I had been selected to give three presentations! Thomas asked me, “let me know if this is too much or not.”

I sent him back a two word reply: “challenge accepted!”

So things were in place. Travel plans were set, and I was definitely speaking. I went about my business, awaiting the first weekend in October to arrive.

A funny thing happened along the way. I’m a big Yankee fan. The Yankees ended up winning the American League Eastern Division. At some point, I looked at the dates for the Yankees’ first two playoff games: October 4 and 5 in New York.

Hey, I was going to be in New York on October 4 and 5!

I looked into getting tickets for ALDS Game 1. They definitely weren’t cheap, but they weren’t so expensive that they would break the bank, either. The only thing that made me hesitate was that no game time was announced. If it was an early afternoon game, there was no way that I’d be able to make it. When they announced that it was a 7 pm game time, I pulled the trigger and bought myself a ticket! I’ve been going to ballgames for years, but I’ve never been to a playoff game before, and attending a postseason game has been on my bucket list for a long time. A weekend that was already going to be fun had just become more exciting!

At this point, all the plans were set. I only had to wait for October 4 to arrive.

The trip

Friday, October 4 arrived. My wife dropped me off at Albany-Rensselaer train station around 12:30. Other than the fact that my train, which was supposed to depart at 1:05, was about twenty minutes late, the train ride to Penn Station was uneventful. I arrived in New York around 4:00.

I took the E subway to my hotel. Upon exiting the subway, I had my first (pleasant) surprise of the trip. While I was at the street level, looking for my hotel, someone said hi to me. I was surprised to see that it was Michelle Gutzait, one of the SQL Saturday speakers, and her boyfriend! We spoke briefly. She was speaking at our user group in November, and said she was looking forward to speaking. They were looking for a theater for a show they were seeing that night, while I was looking for my hotel.

Randomly bumping into Michelle on the street turned out to be the first of numerous surprises on this trip.

I found my hotel, dropped off my bags, and proceeded up to the Bronx.

Here I am, attending my first-ever postseason playoff game!

Now, I’ve been a baseball fan since I was around 12 or 13. I grew up rooting for the Yankees. I’ve attended numerous regular season games, more than I can remember. However, despite all those years going to regular season ballgames, I have never been to a postseason playoff game. It’s something that’s been on my bucket list for quite some time. When I saw that the Yankees’ first two playoff games were at home at the same time I was in the City for this trip, I jumped on the opportunity and bought myself a ticket for Friday night.

My scorecard from the game

Friends told me that it was a different atmosphere from a regular season game, and it did not disappoint. The atmosphere was electric, and the crowd was loud — much more than a regular season game. Fans hung on to nearly every pitch during the first seven innings. By the time the seventh inning rolled around, the Yankees had scored ten runs and held nearly an insurmountable lead. I stuck it out until the end of the game and hopped the subway back to my hotel. I did stop to get a couple of slices of pizza on my way back (I can’t pass up genuine New York-style pizza!). It was well after midnight by the time I got back to my room, and around 1 am by the time I went to bed.

SQL Saturday

My alarm went off at 6. After hitting my snooze button a couple of times, I got up around 6:20. I rolled out of bed, showered, dressed, checked out of the hotel, and proceeded to Ellen’s Stardust Diner for breakfast.

At Ellen’s Stardust Diner, it’s about the singing wait staff!

This was the second time that I had gone to breakfast at Stardust; the first was when I spoke at NYC SQL Saturday last year. Now, I’ll say that the food at Stardust is good, but not great. If I picked a place to eat based on the food alone, Stardust would not be my first choice. However, I love Ellen’s Stardust Diner. It isn’t about the food; it’s about the experience. Stardust is known for their singing wait staff, and they put on a good show!

Amusing note: my waiter was named Kansas. Kansas is my favorite band! I told him as much, and he told me he was so named because they were also his parents’ favorite band! I hoped that he (or someone else) could sing a Kansas song before I finished my breakfast, but it wasn’t to be.

I could’ve sat there all morning and listened to the wait staff sing (and I told Kansas this), but alas, my first presentation was at 9:00. I wanted to get to Microsoft as soon as I could so I could prepare. Upon finishing my breakfast, I proceeded to the Microsoft building and SQL Saturday.

I arrived at the Microsoft Times Square office, directly across the street from the Port Authority Bus Terminal, around 8:15, and came across several #SQLFamily friends, including, among others, John Miner, Matt Cushing, Taiob Ali, Michelle Gutzait, George Walters, James Phillips, Thomas Grohser, Steve Simon, Kathi Kellenberger, Kevin Feasel, Alex Grinberg, James Serra, and Chris Seferlis. (I hope I didn’t leave anyone out!)

Me doing one of my three presentations

I wrote earlier about my presentations, so I won’t rehash them here. I will say that the combination of doing three presentations, combined with waking up at 6 am after having gone to bed at 1 am made for a long and tiring day! After lunch, for the sake of my own sanity, I decided not to attend any more sessions until I presented my own. There were some couches outside the speaker’s room, so I attempted to take a power nap — a plan that was thwarted by a security guard who kicked me awake (literally — he kicked the couch I was on) and told me, “you can’t do that here.” Sheesh.

At one point during the day, Matt hilariously sent this tweet. I got a good laugh out of this!

My trip of fun surprises continued at the end of the day during the conference closing session and raffle drawings. I was sitting in the front row. James Phillips, one of the co-organizers, was running the raffle. Since I was in the front row, he had me pick one of the winners. I stuck my hand in the bowl with the tickets, mixed them up, pulled one out, and gave it to James.

Mind you, I did not look at the ticket. Upon seeing the ticket, James shook his head and said, “I don’t believe it.”

He showed me the ticket. It had my name on it. I had pulled my own ticket! I’d won a Bluetooth speaker!

After SQL Saturday was over, I proceeded to 32nd Street, where Koreatown is located. It’s one of my favorite neighborhoods in Manhattan. As a Korean-American, I feel somewhat obligated to visit this place now and then, but as one who was born in New York State, I also feel at home when I come to this place to visit. I picked out a Korean BBQ place — one where I’d never been before — and had myself an excellent meal.

While I was waiting to be seated, a gentleman who had seen my shirt came up to me and introduced himself as a fellow Syracuse University alum. Yet another example where my clothing became a conversation piece! We spent about ten minutes talking about our alma mater before we were finally seated.

I had purposely scheduled a late train back home so that I could enjoy dinner while I was in Manhattan. After dinner, I walked the block west to Penn Station so I could catch my train.

Yet another surprise on this trip; I ran into Greg Moore and his daughter on the train heading home!

Upon boarding the train and finding myself a seat, I heard a familiar voice say, “boy, they’ll let anybody on this train!” I turned around and saw Greg Moore sitting a couple of seats back. Yet another surprise on this trip!

Although Greg is very active in the SQL Server community, he did not attend SQL Saturday. Instead, he attended ComicCon with his daughter. (Greg wrote a nice ‘blog article about their ComicCon experience; you can read it here.) I moved back to sit across from them, but we didn’t converse much (if at all) during the ride; we were all pretty tired, and we planned to sleep on the train ride home. No matter; I see Greg often enough, anyway. (I’ll see him next week at our next user group meeting.)

I didn’t sleep well on the train; no matter how much I tried, I couldn’t get comfortable. My wife picked me up at the station, and I arrived home sometime after midnight.

Epilogue

Despite getting very little sleep, I had an absolute blast on this trip!

Mind you, I always have fun every time I go to a SQL Saturday, but I especially have a blast whenever I travel to New York City. It was an opportunity to get together with #SQLFamily, it was an opportunity to network, I got to practice my presentation skills (again), and as an added bonus, I got to attend a postseason baseball game! I absolutely love taking this trip, and I hope to do this again for NYC SQL Saturday again next year!

This is my last scheduled SQL Saturday for 2019. I don’t have any more SQL Saturdays lined up — I applied to speak at Boston BI SQL Saturday, but I will likely withdraw because of a conflict. There are “save-the-dates” listed for Rochester, Philadelphia, and Boston (non-BI) set for next year, and I intend to apply for them once they go live. (I might also apply to Virginia Beach as well; we’ll see.) And, of course, our Albany group usually has our SQL Saturday at the end of July.

My next scheduled presentation is in Seattle for PASS Summit, which is in four weeks (!!!). I’ll ‘blog about my PASS Summit experience as I go along. Hope to see you in Seattle!

Thanks for taking this trip with me — we’ll see you later from the road!

Jumping on the opportunity

(Photo source: NYCgo.com)

As I mentioned before, I’ll be in New York City for SQL Saturday #912 this Saturday (come check out my three presentations! </plug>). I’m taking the day off from work and am traveling down to The City on Friday.

I also noticed something else that was going on in The City while I was there — and I decided to jump on the opportunity!

Did I mention that I’m a big Yankee fan? As it turns out, Friday and Saturday also happens to be Games 1 and 2 of the American League Division Series! It’ll be the Minnesota Twins vs. the New York Yankees those days. And lo and behold, I’ll actually be in The City on those days! Can we say, opportunity knocks?

The only issue was the game time. My train arrives at Penn Station at 3:45. If it was an early afternoon game, there was no way I’d be able to go. When I found out the game was at 7 pm, I went online and splurged on a ticket for Game 1.

I’ve never attended a postseason baseball game before. It’s been on my bucket list for a long time. Granted, I’d prefer that it was a World Series game. But it was a situation where opportunity was knocking. The first two playoff games are in New York, and I’ll be in town when they happen!

So I will be in attendance at Yankee Stadium on Friday evening!

As I’ve written before, every now and then, you need to say, what the heck! Your professional life is important, but so is taking the time to stop and smell the roses (or, for me, to catch a ballgame). Opportunities don’t come around very often. And if one comes around, and you have the wherewithal to make it happen, then jump on it. Make it happen, and enjoy yourself!

(P.S. Let’s go Yankees!!!)

Major League Baseball in Troy, NY

A friend of mine pointed out that a Wikipedia article about the Troy Trojans baseball team cited me as a reference!

The article was actually a project for a Writing for Publication class that I took in grad school. It was later republished as a feature article in a baseball preview issue published by The Spotlight News.

However, when I looked at the Wikipedia reference link, I realized that the link was an old one that I’d forgotten about, and didn’t know was still there! I figured I should give the article a new home. So I took my article and created a new page for it. You can find the new article page here!

The article is a neat history piece that dates back to a period around the Industrial Revolution. If you’re a baseball enthusiast (like I am), I hope you enjoy it!

The evolution of statistics

During my lunch break, I was perusing the ESPN website and stumbled across this article. It contemplates whether or not a .300 hitter (in baseball, for those of you who are sports-challenged) is meaningful anymore. As a baseball fan, the article caught my attention. I didn’t read through the entire article (it ended up being a much longer read than I expected — too long for me to read while on a lunch break at work), but from what little I did glean from it, a couple of things struck me.

First, they talk about Mickey Mantle‘s batting average and how important hitting .300 was to him. That struck me a little funny, because (as far as I know — as I said, I didn’t get through the entire article) there was no mention of the fact that he actually finished with a batting average under .300. His career batting average was .298.

The second thing that struck me was (Yankees’ first baseman) Luke Voit saying how he felt that “feel like batting average isn’t a thing now.” Indeed, baseball is a much different game than it was, say ten, twenty, or thirty years ago. Analytics are a big part of statistics these days. A lot of stats that are prevalent now — WAR (wins above replacement), exit velocity, OPS (on-base plus slugging), etc. — didn’t even exist when I was a kid growing up, closely following my Yankees. Back when I was eating and sleeping baseball, hitting was about the triple-crown statistics — batting average, home runs, and runs batted in (RBIs). But now, we have “slash lines,” on-base percentage, slugging percentage, and so on. Even as big of a baseball fan as I am, I haven’t a clue about many of these “new age” stats. I still have no idea what WAR represents, I’m not completely sure as to what the numbers in a slash-line are, and I don’t know what constitutes a respectable OPS.

That got me thinking about how statistics have changed over the years, and whether or not that applies to statistics outside of baseball (or sports, for that matter). Maybe people who study data analytics for a living might know this better than I do, but what business statistics have a different meaning now than they did ten, twenty years ago? Are there any numbers from way back when that I should now take with a grain of salt?

I’m sure there are many examples of this outside of sports, but I struggled to come up with any. Off the top of my head, I remember how a company where I once worked made a big deal out of perfect attendance — to the point that they gave out perfect attendance awards at the end of the year. However, that had to contend with situations such as coming to work when you were sick, and so on. Do you really want someone who’s sick coming into work? These days, workplaces do not want sick people in the office, and with the advent of work-at-home provisions, perfect attendance isn’t so meaningful, anymore. (By the way, my understanding is that company no longer recognizes or rewards “perfect” attendance.)

So I suppose the takeaway is, how well do statistics age? Can they be compared with the same statistics now? What needs to be considered when analyzing statistics from years ago? It’s true that numbers often tell a story, but in order to get the full picture, you also need to understand the full context.