Epic Life Quest: Another million dollars.

Blog Posts

Teaching in Portland, 2016

In my Epic Life Quest, sometimes I post [Redacted] achievements. It’s stuff that I’m really proud of, but I’m not quite ready to talk about publicly yet. The last one was hitting the $1mm/year total revenue mark.

A while back in Level 7, I wrote:

[Redacted] – I set a revenue goal for our company’s online sales (training classes & videos), and we crossed it. I’m not sharing the goal publicly yet, but I’ll circle back in a couple/few years and blog about it in my Life Quest category. Completed September 2015.

It’s been a while now, so let’s un-redact that and discuss it. We hit:

  • $1mm/year in training revenue (including both live & recorded classes), and
  • $2mm/year in combined revenue (training and consulting)

For numbers geeks, I’m measuring on a rolling 12 months basis – for young, growing businesses, you don’t wanna wait for calendar years to measure stuff. (Also, at the risk of stating the obvious: these numbers are revenue, not profit.)

How we got there: steadily building training

When we started the company, Jeremiah, Kendra, and I had a limited amount of presentations built. Since our day job was teaching customers what was broken in their SQL Server, we found ourselves continuously writing new training. That customer training material was designed to be super-concise, and it used real examples from their environments. Writing public training material is much harder.

We started with some online 1-day events, then gradually expanded to a 2-day in-person class. Over the course of a few years, we ended up with a huge library of online stuff plus three 4-day live classes: The Senior DBA Class, Advanced Querying & Indexing, and SQL Server Performance Troubleshooting.

Steadily building a tolerance for risk, too

Selling live training class seats means:

  • Paying a large deposit to a training class venue, typically in a hotel
  • Committing to a minimum spend for food, A/V, and hotel rooms
  • Buying your own travel to the event
  • And if enough students don’t show up, you eat some of the food/A/V/hotel costs

As an extreme example, I had a January class in Newark, NJ (SHUT UP I KNOW NOW) where only 5 students showed up. I lost something like $15k that week on hotel fees, and that’s not even including the money I could have earned doing consulting or something instead.

If you have one or two of those bombs every now and then, it’s no big deal – but as a small company starting up, those are big eye-opening events. We started with just a little risk, and then gradually added more and more risk, signing several contracts for class dates throughout the year, and forking out tens of thousands of dollars in hotel deposits at once.

We also faced risk in that there were only three of us, and we didn’t have complete topic overlap. All of us had written modules that no one else knew well enough to teach: I couldn’t teach Jeremiah’s dynamic SQL module or Kendra’s THREADPOOL module, for example. If one of us broke our arm right before class, we had to put our game face on and keep going.

But with risk comes reward, thus this blog post.

Training powered the company buyouts.

When the company bought out Jeremiah & Kendra, this trove of training material was key to making it work:

  • Jeremiah & Kendra chose to leave their intellectual property (training classes) in the company
  • This meant I could deliver those modules, generating cash flow to pay them off over time
  • But this also meant I had to learn to deliver the live in-person modules all by myself (the self-paced online recorded classes weren’t an issue, obviously)

Teaching a class is more than just reading stuff off a slide. (Well, that’s all you get in a lot of crappy vendor classes, material taught by people who’ve never actually done it in real life, but I won’t settle for that kind of garbage.) I had to dig deeply into the material and be prepared to answer tough attendee questions on it.

This also meant a spectacularly high level of risk. One instructor teaching a series of 4-day live classes, all by himself? No missed travel allowed. No sore throats acceptable. No off/downer/slow days. No second instructor to turn to for questions. Those initial 4-day classes were really challenging. (But also rewarding! I’ve been able to sustain and grow those training revenue numbers, and they powered the company through the really dark times – more about those in next week’s installment of my annual How the Company-Startup Thing Worked Out for Me series.)

Read the Comments

At New Clients, What’s the Worst That Could Happen?

Blog Posts

Sooner or later, you’re going to get a new client with a request that makes you a little nervous. Here are a few examples I’ve seen over the years:

  • “We have a multi-terabyte mission-critical database with no backups, and we want it to go faster.”
  • “We have a 15 year old system, long out of hardware and software support, and it’s never been patched.”
  • “We’re storing personally identifiable data about minors without any permission or encryption.”

Alarm bell, rocket ship, or bomb?

When my admin-senses go off, I ask myself:

What’s the worst that could happen if this system goes down? Will people die or be injured? There are computer systems that control hospitals, life support, pharmacies, nuclear power plants, etc. You wanna know doggone well what’s happening on the other end of the wire. Will people lose jobs? Lose money?

Once it starts going down, can you stop it? One of the best answers here is, “I can fail over to another system where there’s a known-good backup, and the well-documented failover process has been tested repeatedly and recently.” The ugliest answer is, “We don’t have backups, and we don’t have any other systems capable of sustaining our production workloads.” In the latter situation, once things start going south, you’re simply screwed. You may not have the authority or capability to bring up a replacement system.

Could you make a mistake that brings the system down? I’m not asking how likely it is – I’m just asking if it’s even possible. Can you conceive of ways you could accidentally knock it down? If that chance is even remotely possible – and it’s always possible – then you need to think about how you could communicate those risks to the client, and how you could reduce those risks.

Could you afford to defend yourself? Think about the size of the company on the other side, the number of affected end users, and the severity of the incident. How much are they going to invest in a legal effort to come after you? Even if you didn’t cause an outage, could they make your life miserable in court?

What business am I giving up by taking this? If you don’t have anything else going on, you’ll be more tempted to take risky work. That isn’t wrong, necessarily, but you just want to be honest with yourself about why you’re doing it. When your plate becomes more full, you need to make different decisions.

Given all the risk, is the reward worth it? Sometimes folks will say, “If you just fix this one really bad problem on a completely antiquated and un-maintained mission critical system, you could earn a lot of business with us. We’re sure it will only take you an hour or two.” They’re not going to suddenly start investing the right amount of money in their IT systems – as soon as this emergency is over, they’re going right back to getting by on a shoestring.

Sometimes the reward is worth it – but sometimes, you just need to politely decline.

Read the Comments

Comparing Conferences: AWS re:Invent, Google Cloud Next, Microsoft Ignite, PASS Summit, and SQL Intersection

Blog Posts

I have this weird job where I get to pick which conferences I go to, so, I, uh, go to a lot of them. Here’s how a few of them stack up.

Amazon Web Services re:Invent

  • Audience: About 30,000 AWS users.
  • Database session quantity: not a lot. (I didn’t go for the database sessions here – it’s more of a wide-ranging conference covering Lambda, EC2, S3, etc.)
  • Presenters: AWS employees, with an occasional customer testimonial.
  • Session material: Simply not worth the time. Every time Richie and I sat through a supposed “deep dive” or 300-400 level session, we ended by saying to each other, “We could have presented that.” Often, the deep dive material was an exact copy of an earlier intro-level session. Heavy on the marketing, light on the technical details.
  • Organization & logistics: it’s hard to handle 30,000 simultaneous attendees who all want to get into the same sessions. 2016 was their first year to allow booking your seat in advance for a session, and that worked alright.
  • Expert availability: only for short periods, and were overwhelmed with attendees.
  • Recordings: all available on YouTube for free.

I love AWS. I use AWS products every day. But I wouldn’t go to this conference again regardless of price, and that says a lot. You’re paying to get mostly low-level marketing spam. If you think you want to go, watch a few sessions on YouTube, and then decide.

Best I can tell from talking to attendees, this conference is best suited for entry-level education (folks who haven’t used AWS technologies before, and want a lot of primers, fast) and people who want to network with a lot of other AWS users & vendors, fast. If you want to find a new job in the AWS field, it might make sense.

Google Cloud Next

Eric Schmidt at Google Cloud Next

  • Audience: About 10,000 Google Cloud users like Google Compute Engine, Google App Engine, Cloud Spanner, GMail, etc. The sessions I attended were about 3/4 developers and 1/4 DBAs. (Presenters often asked for a show of hands.)
  • Database session quantity: about one continuous track, say 3-4 sessions per day. Enough that I had session conflicts a few times because I wanted to attend a couple of different sessions. However, only 1 session covered SQL Server – the rest were open source and cloud databases.
  • Presenters: Google employees, with an occasional customer story. They weren’t professional presenters, but they were really well-rehearsed – I only once got the feeling somebody made up their deck the day prior, and talking to that presenter, he was a last-minute addition.
  • Session material: The sessions all seemed to be 20 minutes of slides, 20 minutes of demos, and 20 minutes of Q&A. I really, really liked the levels of technical depth and honesty. Google employees would simply say, “That doesn’t work” or “That’s on the roadmap but we don’t have it” or “You shouldn’t do it that way.” I didn’t feel like I was marketed-to during the sessions. (The day 1 keynote was 100% marketing, but days 2 & 3 went into more technical details.)
  • Organization & logistics: freakin’ amazing. Easy/fast registration, coffee/donuts/snacks handed out as you walked into the keynotes, snacks and drinks all day long, well-organized vendor expo hall, session seats reserved in advance through the app.
  • Expert availability: huge areas of the conference center were set aside for experts from every cloud team at Google. If you wanted to find the product managers for your favorite product, you could just walk up to their area, start asking questions, and see creative demos of the products in action. (My favorite: the Cloud Functions area where they built customized coffee cups for you as you talked to their engineers.)
  • Recordings: available within 24 hours for free on Google Cloud’s YouTube channel.

I would totally attend this conference again. There is no way they’re making money on this conference – they’re losing their shirt, and you can tell. The value for attendee dollars spent is huge. (I do regret not getting my Google SRE book signed, though.)

Microsoft Ignite

  • Audience: About 20,000 Microsoft infrastructure admins & managers. (Microsoft Build is their developer-focused conference, and I haven’t been to that yet.)
  • Database session quantity: only a handful.
  • Presenters: Microsoft employees and community volunteers chosen by MS. Generally one presenter per session.
  • Session material: The titles, abstracts, and material are all vetted by Microsoft. For example, one year I submitted “Fixing Slow SQL Servers” only to be told by Microsoft that there is no such thing as a slow SQL Server. Instead, we had to call it “Building the Fastest SQL Servers.” If you’re looking for brutal honesty about shortcomings in Microsoft technologies, this is not the conference for you. Having said that, if you’re looking for insight about upcoming stuff, this is pretty much the best place to get it – the presenters are the people who build the products, and they love answering questions.
  • Organization & logistics: I went in 2015 in Chicago, and it was legendarily awful. Bad food, huge lines, non-walkable part of town, long waits for buses to/from the venue. I can only assume it’s improved since.
  • Expert availability: full time expo hall booths staffed by a combination of MS staff and MVPs. Probably the most underrated benefit of the conference – there’s always someone there waiting to help with your technical or design question.
  • Recordings: all available online for free.

Google Site Reliability Engineers chatting about outages

If you want to ask deeply technical or architectural questions to Microsoft employees who wrote the products you use, this is a great conference to attend. However, when in doubt about attending a session or not, just skip it – and spend time in the Microsoft experts areas on the expo hall floor instead. That’s where the real value is for Ignite.

PASS Summit

  • Audience: About 3-5,000 Microsoft SQL Server, Azure SQL DB, Power BI users. (The numbers have been kinda vague coming from PASS – sometimes they’ve counted pre-con attendees two or three times as separate “registrations.”)
  • Database session quantity: Over a dozen simultaneous tracks. All data, all the time. You will have session conflicts most of the time.
  • Presenters: Generally one presenter per session, coming from one of two groups: community volunteers chosen by a community panel, and Microsoft employees.
  • Session material: All over the map, from phenomenal to not so good. It’s up to you as an attendee to craft your schedule, and PASS doesn’t give you much help. Choose wisely.
  • Organization & logistics: given that Summit is a smaller community-based conference that can’t afford to lose money on the event, the logistics are good. No, you can’t reserve your seat in a popular session, so you’re probably going to miss out on a few. The food/drinks/snacks are sustenance, but nothing to get excited about. (I stopped eating at the conference years ago, and walk outside to Seattle instead – there are so many good, cheap options like the crepe place out front.)
  • Expert availability: Microsoft sends a lot of people to the conference, but the MS areas of the show floor are usually deep with attendees waving questions around. It takes longer to get the help you want than, say, Ignite, but when you do get someone, they’re deeply technical. If you want to talk to a community presenter, be aware that there’s usually a 20-30 person line for Q&A after popular sessions. It can be very, very hard to get more than a couple of minutes’ time if you have a specific person in mind – but as long as you’re flexible with the expert, then you can always find someone to talk to.
  • Recordings: available 6-8 weeks after the conference via free streaming for attendees, $200 download for attendees, $1,000 to non-attendees. Most session recordings don’t include a camera, only the audio and the presenter’s screen. (I’m weird, but I can’t watch a recording without being able to see the presenter.)

I’m known for my willingness to criticize PASS publicly when they’re not doing a good job, but the Summit is really good bang for your buck. If you’re a Microsoft data professional, and you want to go to a big conference, go to the PASS Summit. (It might sound like that’s the only answer – but keep reading.)

SQL Intersection

  • Audience: About 500 developers, DBAs, and sysadmins.
  • Database session quantity: 4 simultaneous database tracks, plus tracks on Visual Studio, ASP.NET, Azure, SharePoint, and O365. (There are several Intersection conferences happening at the same time at the same venue, and your badge gets you into all of them.)
  • Presenters: This is a little different because the agenda is curated by SQLskills. The SQL presenters each have hundreds of hours of teaching experience each. You’ll see new decks, but you don’t see inexperienced presenters – the delivery here tends to be pretty polished.
  • Session material: Really good, and I’m not just saying that because I’m a presenter, ha ha ho ho. Paul & Kim are really good about hand-crafting a balanced agenda from really experienced speakers.
  • Organization & logistics: Smaller conferences have an easier time doing a great job on logistics. It’s easier to feed 500 folks at once than 20,000. Still, the team does a good job of making things easy for attendees and fantastic for speakers. It’s held at places you want to go, at times you want to go – the next one is at Walt Disney World in Orlando in May.
  • Expert availability: Really, really good because of the ratio of presenters to attendees. If you have a specific expert in mind, this is your best chance to have a half-hour long chat over coffee with nobody elbowing you out of the way, or end up going out to dinner with presenters.
  • Recordings: not available.

So if Intersection is smaller, why would you go? Because it’s smaller.

If your biggest conference goal is to bring tough questions to specific experts, and if those experts are on the Intersections presenter list, then you’re going to get more time with them at Intersection. (I’ve had attendees bring Visio diagrams of their infrastructure and we’ve spent 20-30 minutes sketching things out on paper – something I can never do at Summit.) Same thing goes for software vendors – if they’re exhibitors at Intersection, you can spend a lot more time with them asking more detailed questions.

If you’re worried about the smaller conference not having enough sessions you’d wanna attend, check out the schedule. There’s a ton of good stuff on there. (And oh yeah, you can use coupon code OZAR to save $50 when you register, but trust me, I’m not in it for the referral codes, heh.)

Where I’m Going Next

  • May 21-24 – SQL Intersection in Orlando – because I really love the small-conference atmosphere, spending lots of time with attendees and presenters
  • Oct 31-Nov 3 – PASS Summit in Seattle – because it’s like the Super Bowl meets family reunion, and I get to see so many people I wouldn’t ordinarily get the chance to see

In 2018, if the scheduling works out, I’d also like to get to:

  • SQLbits – I’ve written about how much I love this unique UK SQL Server conference. The scheduling is tricky for this one, though, as it happens in different places at different times. The next one is next month in Telford, and I couldn’t make the schedule/travel work for that.
  • Serverlessconf – for folks who build apps on function-as-a-service platforms: AWS Lambda, Google Cloud Functions, and Microsoft Azure Functions. Richie’s going to this in April, so I’ll see how the report sounds.
Read the Comments

How I Ran Pricing Tests for Training Subscriptions

Lemme be the first to say that I’m not an expert on this stuff. There are SaaS experts doing a way better job of this. However, here in our smaller database server community, it’s a different story – so I figured you might enjoy reading how this works behind the scenes, dear reader.

I recently decided to change the pricing model on our training videos. Before, you paid a fixed price (say $299) for 18 months access to a single video, or $699 for 18 months access to all of our training videos. The vast majority of buyers just bought everything, so I wanted to rework the pricing a little. (Seems like a good problem to have, but I think I’m missing out on people who would spend a smaller amount.)

We’re lucky enough to have an active mailing list with over 90k folks, so I was able to run a series of polls to small subsets (like 1k recipients per test) to see which pricing they would prefer. I’m going to share three of the tests I ran rather late in the process after I’d already learned a lot from prior experiments.

Pricing Test #1: The Lowball

Here’s an example of one of the tests I ran. I’m jokingly calling it the Lowball, but only in the context of this blog post. I ran much lower-price tests too, like $9/mo, to see if it would convert more buyers.

Price Test #1

We sent this to readers and asked, “which one would you get your credit card out for, A, B, C, or none of the above?” (Yes, column B pops out brightly – that’s an example of another variable that I changed during different rounds of tests, including column titles of jobs vs video names vs aspirational titles, different savings displays of percent vs dollar amount, etc.)

You’ll notice that this poll is a bit of a hybrid: two of the answers are monthly subscriptions, and one of them is an annual prepayment. By the time I ran this test, prior tests had already determined that we have two types of customers:

  1. People who expense the training and just want to swipe their card once to get everything, and
  2. A price-sensitive audience who pays for the training out of their own pocket, and doesn’t want to fork over a large up-front cost

Here’s how they answered – note that there’s much more data here than what the survey-taker saw – this is the analysis side of the work:

Price Test #1 Results

Out of the 3 tests covered in this blog post, this one got the highest percentage of buyers, 88%. Remember how I said I ran even lower-priced tests, like $9/mo? If 100% of the responders bought at $9/mo, 136 buyers * $9/mo * 12 months = $14,688 annual revenue, or a $40k loss from the above test. Going that cheap doesn’t make sense.

A Word About Responses and Response Rates: “Distorted”

This survey was sent to about 2,000 folks, and after 24 hours, 136 responses came in (6.8%). 136 sounds like an awfully small number to make a decision on, and it is, but if you’re going to run a lot of tests, you don’t want to keep re-testing the same audience members. I was polling about 50k of our 90k subscribers, and those 50k were chosen for specific reasons.

While 88% of responses said they’d buy, that doesn’t really mean much without a credit card involved. That’s why in some SaaS pricing tests, you’ll hear the company actually let people sign up with their answer. That’s also why companies continue to run A/B pricing tests after going live, and measure results with real revenue numbers. There’s even WordPress plugins to help with A/B testing.

Our price tests will get more accurate after we go live, but I still needed basic numbers to go live with. Anyhoo, back to our testing.

Pricing Test #2: Everything Only

I don’t like the way the next test looks – it’s visually imbalanced – but whatever:

Price Test #2: Everything Only

In this one, there was no DBA-only or performance-only option: you just had different ways to subscribe to everything. (It’s the Pluralsight model.) Drumroll please:

Price Test #2 Results

Compared to the prior test, this one had less buyers (82%, down from 88%) but a higher average spend per buyer ($491, up from $461.)

That means that if 1,000 people hit the sales page, then:

  • Test 1 = 1,000 * 88% buyers * $461 annual spend = $405,680
  • Test 2 = 1,000 * 82% buyers * $491 annual spend = $402,620

It would seem at first glance that test 1 would be the winner, but they’re both pretty close. Another factor is that in test 1, 54% of the buyers were monthly subscribers, which means lower up-front cash flow, and a higher chance of monthly churn. In test 2, only 34% of the subscribers were monthly.

Price Test #3: The Highball

To show another variation example, let’s take test #1, and just raise the prices across the board. Instead of $29/$39/$499, let’s do $39/$49/$599, so it’s the highball of this set of 3 price tests:

Price Test #3: The Highball

Now remember, readers don’t have to get out a credit card, so they’re less price-sensitive during free email surveys. With that in mind:

Price Test #3 Results

Even though there’s no credit card required here, the number of “None” answers went up from 13% to 19% – there’s real price resistance as you up the costs. Less people buy here – but it’s not a dramatic drop, down from 88% and 82% in other tests to 81% here.

However, because the buyer average annual spend is up dramatically here to $572, it wins:

  • Test 1 = 1,000 * 88% buyers * $461 annual spend = $405,680
  • Test 2 = 1,000 * 82% buyers * $491 annual spend = $402,620
  • Test 3 = 1,000 * 81% buyers * $572 annual spend = $463,320

What It All Means

Ever since we introduced the Everything Bundle, it’s simply dominated our sales at 80%+ of revenue. In these polls, though, the equivalent option (1 year of everything) consistently gets 32-35% of the votes. That could mean one of a few things:

  • Instead of buying the Everything Bundle, people might switch to spending less on a monthly subscription (which could be bad for our business), or
  • The core 32-35% of top-end responses here represent the people who were always buying the Everything Bundle, and the new 50% responses jumping for the monthly bundles would indeed represent entirely new buyers we didn’t get before (which would be awesome for our business), or
  • People are just clicking “yeah I’d buy a monthly subscription” when they really won’t

To figure that out, we also polled our existing Everything Bundle owners, plus folks who only bought 1-2 of our individual training videos.

For launch, we ended up going with Price Test #3, but with discount coupons available to loyal email readers (especially those who helped us out with the surveys.)

I could go on for pages about the work involved, and I absolutely love this kind of thing, but hopefully this gives you an idea of what it’s like to run your own sales at scale.

To learn more about price tests, check out:

Read the Comments

When Giving Advice Isn’t Working

Blog Posts
No Comments

In the https://sqlcommunity.slack.com/messages/consultants/ room, we were discussing a project that wasn’t going well. Someone was on a team where one of the team members wasn’t succeeding, and we were discussing ways to turn the situation around.

I’ve been a fan of the book Secrets of Consulting for years, and one of the most valuable lessons is that consultants in the business of trading advice for money.

If you find yourself in a situation where your advice doesn’t seem to be making the situation better, there are three things that could be going wrong.

It could be the wrong advice. Maybe we don’t really understand the situation we’re really being called in to fix. For example, on one project, I was talking to the client manager about how we just didn’t seem to be making progress on the goals we’d set for the DBA team. The manager told me, “Oh, that’s okay. I only brought you in here because if you’re not here, the DBAs don’t show up in the office. I needed them here for a while for some morale building. I don’t really care if you accomplish the goals or not.” Ah! Alrighty then.

It could be delivered in the wrong way. Everybody likes to get advice in different ways. Some people want it quick and to the point, others need it privately with some sugar coating. I used to think that my biggest challenge would be the SQL Server technical issues, but that’s far from the case – the hardest challenges are usually figuring out how to get the people to do what I want. As a DBA, you might have been successful in laying down a law or setting a standard, but when you’re called in for consulting advice, the stick doesn’t work. You have to figure out other methods of motivation.

It could be delivered to the wrong ears. Sometimes an executive is sponsoring the project, but your advice is being delivered directly to technical staff. If you’re advising the technical teams to increase the budget, they may not have the ability to do it. Similarly, if you’re telling a technical team member to up their game, they may not want to do it, and you may have to deliver that message to management instead. In another shop, I had a DBA flat out tell me, “Oh, I’ve only got about another month here. I’m looking for jobs in another state.” There was no technical advice that team member was going to take to improve the company’s situation.

Get the book. I can’t do justice to it here, but it pays for itself immediately.

Read the Comments

Logitech Brio Review: New 4K Webcam (2018)

Blog Posts

Logitech’s brought out a new 4K webcam called the Brio, and it goes for about $200. It’s quite a step up from the ~$100 former top-of-the-line Logitech C930e that I’ve been using for a couple of years. Here’s some sample comparison photos:

Bright Light Comparison Photos

My back wall is painted chroma key blue, and in these shots I’ve got a CowboyStudio light kit turned on in front of me.

Logitech Brio, bright lights – click to see full size

Older Logitech C930e, strong lights

The new Brio 4K captures good details, whereas the C930e blows out all the details in a smear of white. The Brio also has the same wide field of view (seems even a little wider) than the C930e, too – much wider than normal webcams.

Medium Light Comparison Photos

In this set, I have the room lights off, and only one of the CowboyStudio lights on, further away from me:

Logitech Brio, medium light

Logitech C930e, medium light

Again, the C930e just can’t deal with head-on lights. If the room isn’t lit perfectly evenly, it has a really hard time with highlights.

The Brio has it much easier, but note how much the background paint changes in color. It’s all over the place with the Brio.

Low Light Comparison Photos

In this set, the CowboyStudio lights are completely off, and the only light is the overhead ceiling fan light.

Low light, Logitech Brio 4K

Low light, Logitech C930e

The Brio 4K manages to capture more details, but notice how the color’s just gone from the background wall.

For comparison, here’s the low-light setup using an iPhone 7 Plus:

Low light, iPhone 7+

So in summary, the Brio gets way more detail in medium & strong light, but when it comes to low light, it’s still bested by a camera phone.

The medium & bright light results are so good, though, that I’d strongly recommend the Logitech Brio. (Strongly enough that we just got ’em for the company staff, too.) Shipping dates are already slipping on it – I bet enough people like me were frustrated with the crappy-cameraphone performance of all the other webcams out there.

About My Office Video Setup

If you read this far, you’re probably interested in the other gear I use these days:

The Focusrite Scarlett lets you plug pro microphones into your computer with USB. For a microphone, I use this, but fair warning, it ain’t cheap:

The ElectroVoice RE20 lets me get right up on top of it without a noise filter, and the bass sounds fantastic. Really gives you a lot more presence than the cheesy microphones that come built into webcams & computers.

Cowboy Studio lighting kit is a great price for 3 lights, tripods, and umbrellas. They’re not spectacularly robust, but I don’t take them out of the house, so it’s not a big deal. I put one on either side of my desk, and then when I’m doing green-screen techniques, I use one to light up the wall and reduce shadows. This is important though:

LimoStudio 85W CFL bulbs – the bulbs included with the Cowboy Studio kit are alright, but in my new condo, I’ve got one wall of windows in my office. Despite thick blinds, I couldn’t light my office evenly, and these monster bulbs make all the difference. They don’t get hot when they’re on, either.

I put these over the lights to make it easier on my eyes:

Read the Comments

My Home Office Setup, 2017

Blog Posts

We just moved into a new place and I added a few more touches to my home office setup. I use a motorized sit/stand NextDesk Terra Pro, so I can move the whole desk up or down with the touch of a button. I can’t say enough good things about that desk – it’s still rock solid, and survived a few moves.

I wanted to up my minimalism game, though, so I mounted some of my gear underneath the desktop:

Mounting the Mac Pro under my desk

The thing with the bright sticker is the NextDesk motor controller, and that’s always been mounted under the desk, and same with a power strip. Here’s the new stuff:

StarTech 1U wall mount rack bracket ($20) to hold my Blackmagic Design 4-drive SSD dock ($550) – fast storage for in-production videos and virtual machines. You can daisy-chain more Thunderbolt peripherals off it, too, like monitors or cameras. I’ve tried a lot of cheaper USB3 storage arrays over the years and been disappointed with them dropping offline under heavy loads. This thing is designed for the video industry and it’s bulletproof.

Rocstor Rocmount under-desk Mac Pro mount  ($95) – brilliant design, but really crappy wood screws included. I broke the heads off four of them before eventually getting more from Home Depot.

I wouldn’t recommend that people buy a Mac Pro today because the bang-for-the-buck isn’t there anymore, but it’s served me well for a few years. The thing with Apple gear is that if you buy it at the right point, it has a really long lifespan and great resale value. This one has 6 cores and 64GB RAM, and it’s even upgradable to 128GB RAM and newer CPUs.

Here’s another angle of it from directly under the desk:


I got my Nextdesk with the optional aluminum cable tray and two through-desk grommets, and everything routes through there. I’ll go back and clean up the cables more after a couple of weeks – I wanna make sure I’ve got everything right first.

The end result is less cables and gear on top of the desk:

My standing desk, 2017

The technical stuff left on the desktop:

Miscellaneous small stuff:

  • Fidget Cube – because I know somebody’s gonna zoom in and ask about this, and it’s awesome. It’s a knock-off of the successful Kickstarter, which just took forever to ship.
  • Nova – eye covered in Swarovski crystals by my favorite artists (NSFW), Sas and Colin Christian. (Their sites (and some of their art) are not safe for work, but I have a bunch of their SFW stuff.)
  • Playmobil Porsche 911 Targa – to tide me over until I can get the real thing.
  • Uisge Source Speyside water – a gift from a SQLbits pre-con attendee, this water is meant to go along with Speyside whiskey. I need to go back to Scotland and spend more time there.

Back to the tech stuff – the end result is that only a single power cable goes from the desk to a CyberPower sinewave UPS on the floor. Everything moves up and down at the touch of a button, and I don’t have to worry about rearranging cables. I can sit when I work on code or blog posts, then stand when I present or meet with clients. The easier it is to switch from sitting to standing, the more I find myself doing it – I probably switch 4-5 times per day these days.

Next up: unpacking pictures and decorating the walls.

Read the Comments

What It’s Like to Live in a Downtown High-Rise

Blog Posts

Erika and I moved to downtown Chicago 7 years ago to be right in the middle of everything. We’re moving out of downtown now, so I wanted to write up a quick recap of what we love about living in the middle of the 3rd biggest city in the US. (Population list at Wikipedia)

The big thing to understand about downtown: there are no houses.

Downtown residents live in high-rises and condos. (If you think you live in Chicago, and you read this blog, and you can afford your own house, you’re not in Chicago. You live in a suburb. Just because you own a Cubs jersey doesn’t mean you’re in Chicago, buddy.)

Shared-wall downtown buildings mean noise. Older buildings don’t have good noise insulation, so you’ll hear the neighbor’s subwoofer when they watch movies, hear the clinking glasses when they have parties, and hear the kids running around above you. But even in brand-new, well-insulated buildings, you’re still likely to hear noise from the street outside. In our current building, we’re 58 floors up, and we still hear the trains and sirens pretty clearly.

Our front yard: the Chicago Riverwalk

Downtown high-rise residents don’t get a yard. That’s great because you don’t have to worry about mowing grass, picking up leaves, landscaping, or shoveling snow in the winter. That’s not-so-great for dog owners – your dog ends up doing its business on small patches of grass that are heavily trafficked by other dogs. You start to look at dog feet a little differently – Ernie walks on some heavily-peed-on areas.

To some extent, city parks are our yard, and they’re awesome. Chicago and New York City have fabulous, huge downtown parks that put suburb parks to shame.

Your garage isn’t next to your front door. You park your car on the garage floor of the building, and then take an elevator (or a couple of elevators) to get into your apartment. In some buildings, shopping carts are available for you to bring your stuff from the car up to your place, but that’s fairly rare. City dwellers keep a Magna Cart in the trunk of the car to make this easier.

Because shopping is more awkward – especially fighting traffic during rush hour – downtown cities have lots of delivery service options. Peapod and Instacart will deliver your groceries, Caviar and GrubHub will deliver food, Drizly delivers booze, Postmates and Amazon Prime Now will deliver your just-about-anything.

Your garage space is muuuuuch more expensive, too, typically $200-$400 per month. In condo buildings, expect to have to purchase spaces to the tune of $30k-$50k, and they have taxes and HOA dues just like your condo does. In every building we’ve been in, wiring for an electric car simply hasn’t even been available even if you wanted to hire an electrician to do it for you.

You don’t have your own front door to the street. Home dwellers are used to just ordering big items like furniture or TVs, and the delivery guys can show up at any time. Not so in downtown – deliveries have to be arranged ahead of time in specific time windows. You may also have to reserve the loading dock and the freight elevator ahead of time because deliveries aren’t allowed through the front door of the building and the regular (fancy) elevators.

Chicago River in the winter

Moving, in particular, can be a pain in the butt. You have to schedule everything in advance. If you’re moving between high-rises, you have to coordinate elevator access in both buildings at the right times. Your reservation isn’t for the whole day, either – typically only 3-4 hour windows, like 9AM-noon – because other people need the elevators too.

Sharing has its advantages, though.

With a shared building come shared amenities.

Some buildings’ home associations vote to charge dues on all the owners, and use those dues for fancy gyms, pools, movie rooms, decks with BBQ gear, and more.

The ultimate amenity: 24/7 door staff. By door staff I don’t mean a doorman – someone who stands at the front door, helps with bags, gets taxis, and makes sure the riff-raff don’t get in. Residential buildings almost never have those (although hotels do.) I mean door staff, aka concierges, which are people who stand inside a building, behind the front desk. Door staff do things like:

  • Unlock your unit for you if you lock yourself out
  • Can let your dog walker or housekeepers into your unit (based on your OK-to-enter lists)
  • Send your dry cleaning or laundry out
  • Sign for deliveries if you’re not around
  • Accept grocery and flower deliveries and store them in a walk-in fridge room (obviously, not all buildings have stuff like that)

If we ever bought a unit in a downtown building, we’d want a building with door staff at least 9AM-5PM. The drawback of door staff: they add significantly to the ongoing monthly cost of your unit, since the unit owners have to pay the salaries.

How much does all this cost? Your homeowners association (HOA) dues are generally based on the square footage of your unit, so larger units absorb a larger part of the building’s cost. For extreme examples, check out Chicago Curbed’s special on the priciest HOA dues downtown. These are all multi-million-dollar condos, but the HOA dues are $8k+ per month. And it rarely goes down, either – it can go up at any time when the building has maintenance emergencies.

High rises aren’t for everyone, all the time.

Watching Top Chef Masters winner Rick Bayless at work

I love both the city and country life, but at different times. I like city life for making a living, and country life for retirement. I love sitting on a beach, unwinding, with nobody else around. (Other than the bartender who keeps bringing me drinks, and the cook making the food. They can stay. Everybody else, out.)

While I’m still working, I love the convenience of having anything around at a moment’s notice. I’ve had the chance to experience so many incredible things in Chicago – watching world-class chefs at work, marathon winners zip past, hear amazing concerts – and then just walk a few blocks home, or I can be at the airport and then anywhere in the US with no layovers.

Next, we’re trying a low-rise (3-5 stories tall) a little bit out of downtown near the Ukrainian Village. We lose the door staff, pool, crazy amenities, etc, but we’re still close in enough that we can be at our favorite restaurants in 10-15 minutes.

But while I still can, if you’ll excuse me, I’m going to go downstairs and get a cup of coffee and a freshly baked cookie from The Goddess and the Baker.

Read the Comments

How I Handle Intro Calls with Consulting Prospects

Blog Posts

In the SQLcommunity Slack #Consultants channel, Steph Locke (@StephLocke) asked if anyone was doing free consultations or office hours as a way of growing your opportunities. We had a good discussion in there, and I’d highly recommend that freelancers and consultants join that channel for help.

I’ve done a free 20-30 minute sales call for years, and here’s the process that works for me.

Let clients book the date/time.

I used to make folks email us first with a brief description of their pains. We’d read that, make sure our company was a good fit, and send back a reply with pricing and how to book a meeting with us.

When we let go of our salesperson, I made a conscious decision to make the sales process as frictionless as possible for everybody involved. That meant the pricing would be public on our web site, and people could filter themselves out faster. As long as they knew the pricing and could see sample deliverables, I figured they could just book sales meetings right then and there.

If that fits your style, there are online services integrate with your calendar to build a live web form where prospective clients can simply book themselves whenever you have open windows:

With YouCanBook.me, I set up “Available for Calls” windows on my calendar, set to free (instead of busy), and customers can book themselves during those windows. I can configure the meeting duration, plus have it automatically pad my meetings so that I don’t do two in a row.

Sketch out the call’s flow.

Here’s how mine works, and I have a slide for each of these:

  • I introduce us (the company) and give a 60-second elevator pitch about what we do.
  • I show a slide of questions asking about who the prospect is, what problems they’re having with SQL Server, and what success looks like to them
  • I take furious notes while they talk, asking followup questions.

After about 5-10 minutes of listening and saying “tell me more about that,” I have a pretty good idea about whether or not we can help. At that point, I switch gears and cover:

One of the intro deck slides

  • How we’ve helped similar customers in the past
  • What a consulting relationship would look like
  • What questions they would need answered before they would sign a contract
  • Whether they want to move forward now, or talk it over internally

Now, look at that last and start to guess the time it’ll take to do justice to each topic. When you’re just starting out, expect to spend 30-40 minutes to cover that list, especially if you’re taking notes as you go. I’ve done a lot of these calls – a quick back-of-the-napkin guess yields 1k-2k over the last 6 years – so at this point, I’ve got it down to 20 minutes in total. (I can also type full speed as I’m listening and talking, so I was born for this kind of thing.)

Set limits on what you can cover in that time.

If I’m going to cover that list, then I can’t look at code, databases, or do screen sharing. It’s just way too easy to get bogged down in technical details. Having a slide deck with a specific set of talking points and questions really helps.

Every now and then, though, a prospect will say, “Can I share my screen, and I’ll show you what I’m talking about.” Here’s how I respond:

“Our lawyers and insurance agents won’t let us go near a system without a contract first. We just need to make sure everybody’s protected.”

At least in the litigious United States, everybody seems to understand that immediately.

If I was a BI or analytics person, I would actually be more comfortable sharing my own screen to demo work that I’ve done in the past, though.

Finish the call with authority.

If you let people talk about their problems forever, at no charge, they often will.

  • 10 minutes before the call ends, I say, “Just so everybody’s aware, I have a hard stop at HH:MM to join my next call.”
  • 5 minutes out, I say, “We’re in the final five minutes, and I want to make sure we cover the most important thing. Is there anything else you want to ask about working with me?”
  • If they’re still talking at the end, and they haven’t said the magic words yet, then I say, “I really do have to bail for my next call, but this is a great conversation. Let’s handle it over email from here – go ahead and send me the list of questions you’ve got, and I’ll tackle them between my other client calls.” And close it down – even if you don’t have another call, you probably need to bail if they haven’t said the magic words.

The magic words are, “What’s the next step?”

I use an extremely soft sell, so I’m looking for the client to say those words to me. That means they’re ready to move forward with signing a contract. At that point, we talk about dates and contracts.

If the client doesn’t say those words, they’re not ready to sign yet. And that’s completely fine – some sales take weeks, months, or even years to close. You can speed it up if you want to take a harder sell approach by asking that question yourself, finding out what the client’s next steps are. You can also ask what their timeline looks like for making a decision and moving forward.

Read the Comments

What Makes a Good Online Presentation?

Blog Posts
1 Comment

The inaugural GroupBy.org online event finished recently, and I had the sublime pleasure of watching a bunch of presenters at work.

Because I was staffing the Q&A, Twitter, and Slack, I also got to watch the community reactions firsthand.

People love different sessions for different reasons.

Let’s start with Pinal Dave. He runs SQLauthority.com, a site that has surely shown up in your search results countless times. I bet you’ve never seen him present, and I need you to spend just a couple minutes watching him get to work. Start the video, and either watch a few minutes from the beginning, or jump forward anywhere in the session and watch for a little while:

Regardless of where you play the session at, you’re going to notice that Pinal has an incredible, lovable, enthusiastic style. He sucks you into what he’s presenting. If you watch the whole thing start to finish, I guarantee he’s going to fool you with mistake #3.

Now consider this: it was midnight local time for Pinal.


While I was watching Pinal at work, I thought, “If I was a company owner watching this, I’d hire Pinal to come in.” His style is just so infectious that you can’t help but smile, and you just know that working with him would be a fun experience.

Now let’s take Adam Machanic’s session on 2016 Hidden Gems. Let’s join at about 3 minutes in when he starts telling the story of past SQL Server versions:

(I apologize for the white box in the middle of the recording – that’s my bad.)

Within a matter of minutes, Adam has you sucked into a story. He starts zoomed way back out, thinking of entire version differences, and then zooms all the way into specific feature demos.

During the session, someone joked in Slack that they’ve never seen someone as interested in a demo as I was in one of them. I was leaned in, looking closely at the screen.

What Adam and Pinal Have in Common

It’s possible that you loved one of these sessions and hated the other.

It’s also possible that you loved both of them. (I certainly did.)

But I don’t think it’s possible that you hated both of them. They’re both examples of presenters who have found their own voice, and are perfectly comfortable delivering sessions in their own voice. Both of them make presenting seem completely natural to them, even though they’re totally different styles.

And that’s not all – if you watch all of the GroupBy sessions, you’ll notice a lot of different styles.

Authors read a lot of books to learn about different styles of writing, different approaches, voices. Actors watch plays and movies. Musicians listen to other musicians. Similarly, if you’re a presenter, you want to watch lots of other sessions to learn about different presenting styles that feel comfortable for you to adopt yourself.

Understand that there are two different questions:

  1. Do you like the style of the session, and
  2. Would the session’s voice work for your own delivery?

The answers can be different. You don’t have to exactly mimic Pinal or Adam or me or anybody else – just take the parts of their delivery that you love, and adopt parts of them. (This is why I even watch presentations outside of my industry – after all, there’s a whole world of presenters out there in different industries, and you can learn from them, too.)

Read the Comments