The blog home of Jeff Putz

We don't have a pandemic exit strategy, but we should

posted by Jeff | Friday, September 18, 2020, 4:39 PM | comments: 0

As we get six months into the US side of the pandemic, the striking thing is that we have no exit strategy. We know a lot more than we did early on. Remember when everyone was concerned that every surface was a transmission vector? Now we know that's not really true, but we know that masks are a pretty great mitigation tactic, and interior shared spaces are less than ideal.

Right now though, the American mentality (insert "herd mentality" Trump joke here) is that the exit strategy is there's a vaccine and a week later we all go licking door knobs. Of course, the scientists, drug makers and everyone qualified to be an expert says, no, the ramp for manufacturing and distribution even once approvals are granted by the FDA will be far from instantaneous. Once we understand the efficacy of the vaccines, there will likely be a necessary regimen for additional booster dosages, and mask protocols will not go away for some time greater than what people really understand. In fact, that's one of the key things missing, is a plan for science-based reopening of certain services and the gradual off-ramping of mitigation protocols in general. While part of that should rely in part of the vaccine trial results, it's not impossible to start mapping the strategy out, even if it doesn't have all the details. The benchmarks at which you take action will likely be the same regardless of the trial outcomes.

But we don't have any of this.

This isn't surprising at this point. The Trump administration has been useless in responding to the pandemic, which is why our outcomes are generally worse than most of Europe. Today there was email evidence that CDC scientists were silenced because the extent of the problem is not convenient for the president. None of this changes the underlying fact that the pandemic simply doesn't go away. We can't turn everything back to "normal" instantaneously, but we can get there with less sickness and death, and do it faster, than if we just wing it.

Because there is no realistic way out in the next four months, we could really use some guidance by experts who can tell us what the ideal path is for the holidays. People traveling around we know introduces certain risks, but are there ways to mitigate them? That's not a political issue, we just need to know how to keep our immuno-compromised grandma safe. But you'll never hear anything from Washington about it.

The fascism and racism are certainly things I can do without, but honestly, right now we could really use someone with the most basic abilities to understand what it means to govern like a responsible adult. That's what you should be voting for this year. (Hint: It's not for the guy that wants to protect you from the brown people who are not a threat in the first place.)


The crossroads of management advice

posted by Jeff | Thursday, September 17, 2020, 8:46 PM | comments: 0

Over the years, I've been around a great many leaders in a great many companies, though I'm not sure I would describe many as great. (That's today's word play, but I'm here all week.) I've also read books, Twittered people, had conversations at conferences, done hundreds of one-on-ones with bosses, peers and employees and other enrichment activities. It's all starting to congeal into a less wiggly mass of a dynamic framework to figure out how to be a better leader.

Let me preface this by saying that people are the biggest variable, and because they're wildly unpredictable and capable of doing things ranging from brilliant to stupid, there's a certain amount of instinct you have to develop, and I'm not convinced that you can teach that.

There are shreds of advice though that keep surfacing and seem important:

  • You can only concentrate on so many things, so just pick a few. I keep going back to Bob Iger's book, in that he picked three things to drive Disney, and he was relentlessly focused on them. I think he chose wisely.
  • People rally with purpose. Purpose varies in scope, so while Disney prioritized using technology to engage people, what does that mean for a line worker at a counter service restaurant? (Making sure their mobile order is out on time, obviously.)
  • The business is the product. You don't let your widgets get stale, so don't treat the process as a static destination instead of a dynamic, always evolving journey.
  • People have strengths and weaknesses, but if they're net-positive, professional development is about growing their strengths in a way that benefits everyone, not just pointing to their weaknesses as "room to grow."
  • Leaders likely serve more than one team. This one became obvious to me this year. If you lead and are led, but don't feel you have any peer relationships, whatever claims there are of collaboration are probably not real and you are not valued or effective, maybe through no fault of your own.
  • People fundamentally want to be respected, valued and appreciated. I got that one from my professional man-crush. While the world of adult relationships at work is not a utopia, it won't be good if you don't recognize what people do with you, in every direction of the org chart.

I'm thankful for the lessons learned that reinforce this advice.


It's time to rethink social media

posted by Jeff | Wednesday, September 16, 2020, 5:00 PM | comments: 0

A whole lot of people are talking about The Social Dilemma, a documentary that just landed on Netflix. This movie basically charts the growth of the social networks and how their revenue models are basically perpetual engagement engines intended to hook you. Some of the consequences are harmful. You are in fact the product, not a customer. If you work in technology and understand it, you probably already know this, but I'm surprised at how few people get it. I'm also astounded at how harmful it has been to older generations in particular, especially Boomers. The harm for post-Millennials seems extreme as well.

To be clear, social media wasn't the earliest example of this. As cable TV was able to carry more and more channels, it was possible to use mass-media to serve many more niche interests than it was before. Right around the turn of the century, Rupert Murdoch realized that you could sell advertising to a bunch of people who were ready to fiercely consume whatever deeply divisive grievance politics that a segment of the population wanted, and that became Fox News. There was the initial model. But with the Internet and nearly limitless computational power, imagine tailoring for an audience in that way for literally every sliver of interest or politics... that's why you have Facebook and YouTube.

Remember when Facebook started forcing the algorithmically driven feed on everyone, instead of just showing what all your friends posted, in sequence? That was the point at which I started using Facebook less, because it started showing me stuff I wasn't interested in, instead of what my friends were sharing. Anecdotally, I think that my fellow Gen-X'ers, and to an extent the older Millennials, used Facebook largely as a tool to remain connected to others, particularly as we moved around the country, had kids and such. I might be totally wrong about that, but that's my perception. To this day, there are fewer of us still using it. For me, I never used notifications, and the only thing that tickles my leg is a text message or phone call. I do, however, when bored, scroll. The timers say I sometimes spend a half-hour to an hour a day between Facebook and Instagram, which isn't great.

I want a social network that's simply a tool. I don't want an algorithm, I don't want advertising, I don't want to be the product. I do want to share things in both directions with friends. I don't care if people "like" things, but maybe it helps to have "acknowledgment" so I feel I'm not talking to myself. All of this means that such a network would have to be for a fee, because there is no such thing as "free." Look, if I'm willing to give Vimeo $80 bucks a year to host sentimental videos without ads, I'm perfectly willing to give $25 to a network.

I've recently observed how messed up the algorithm can be. Instagram recently edged toward the Facebook model when it started showing you "recommendations" after you scrolled past all of the stuff you followed. These used to just appear on the search page, which I almost never go unless I'm looking for someone. Very early on when I started using Instagram, which was in late 2015, I had read something about it being a source of inspiration for women looking for hair color and styles. As I've always had a fascination with hair color and styling (you know, in case this software career doesn't work out), I found that I could search for #bluehair and see a ton of styles. I followed a few people, and before you know it, it was all I would see. A few months later I unfollowed most of those. Fast forward four years, and what do you think is recommended? Photos of people with blue hair. Nevermind that most of my follows are friends and celebrities (and lots of cats) with decidedly natural hair colors. The algorithm still thinks that's what I care most about. So imagine if I was into conspiracy theories, flat earth, anti-vaccine or some other illogical bullshit. The algorithm would be happy to show it to me.

So what do I do about this? I still find value in keeping in touch with people, but I have the moral issue of knowing that I'm fueling a machine that acts not necessarily immorally, but definitely amorally and without acknowledging the consequence of its actions. It's a little like working for a health insurance company. I want that thing that:

  • Makes me a customer, not the product.
  • Doesn't track what I do.
  • Has no algorithm, just straight up ordered posts from my friends.
  • Does not do things to "drive engagement."

The struggle is exhausting

posted by Jeff | Tuesday, September 15, 2020, 5:00 PM | comments: 0

I mentioned two weeks ago that we've been really struggling at Puzzoni HQ. Things haven't gotten any better, and sometimes they feel worse.

For Simon, the challenges arise in unsuspecting ways. His doctor wanted to raise his ADHD med dosage, and we were thrilled to see him not just grasp the multiplication work he had, but just kill it. Then he woke up at 2:30 a.m., stayed awake, and at 4:50 just decided to get dressed and play quietly. You can only imagine how school went after that. That was all after the FOMO created in the afternoon by spending time with his ESE teacher led to a full meltdown trying to rejoin the regular class virtually. On the plus side, he's able to articulate how lonely he is, but even if there was no pandemic, the local kids are mostly unkind to him, and his time spent virtually with his cousin, area friends and such is limited. I'm not sure that being able to articulate the loneliness is even good, because nobody wants their kid to be lonely. See the weird places you start looking for light?

Diana basically has to be on standby all school day, from 8:30 to 3, so she has very little time to herself. She's knocking out puzzles because she can do them while near Simon, but she's not really sewing, exercising, watching stuff or really anything that's mostly for her. She's definitely not going back to her job, because theaters will probably be the last thing to open. I marvel at her ability to deescalate Simon and try to keep him on task, but I know from my limited success with that how exhausting it is.

Meanwhile, I'm sitting there with something like survivor's guilt, because I get to go to work with brilliant adults from all over the country doing great work in a difficult time. The work isn't easy, and takes a lot of sustained focus and thought, but when I hear tears in the next room, I feel like I'm comparatively in a better place. When you factor in my baggage around family relationships and a failed marriage, not amount of reassurance makes it easier for me to not wonder if I should be doing something more. I want to help, but don't know how. And then when things go south at bedtime over something simple like teeth brushing, with increasing frequency, to say I don't feel like I'm ever winning is an understatement.

Maybe the biggest part of this is that the circumstances are largely something that we need to endure, and can't really change. There are a lot of negative things that you can make deliberate choices about, like leaving an abusive relationship, leaving a suboptimal job (aren't those really the same thing?), making lifestyle changes for health reasons, committing to education to better yourself, etc. Raising a child with certain special needs in a pandemic has no out, and it can't be improved with money. That's an ominous reality.

Sure, we can all say that we're physically healthy at least (relatively), but the physiological toll of having the brain always on high alert and anxious is real. Last weekend, we were all in total slug mode, too spent to really want to do anything (it didn't help that it was a rare rain-out weekend). I think it's a long road ahead to endure and overcome. I've never felt quite this tested.


Do you fear the powerless, or the powerful?

posted by Jeff | Sunday, September 13, 2020, 5:34 PM | comments: 0

Diana was watching the Divergent movies series, followed by The Hunger Games, which should tell you all kinds of things about the mood on this rained-out weekend. Nothing like a little dystopian future to lift the spirits! The latter though is interesting in part because there's a war of propaganda, not just one with weapons. It's about shaping the sentiment about who and what to fear.

That got me to thinking about the current state of our divisive politics. It occurs to me that a portion of our society now fears not the people with the power, but the people with the least power... immigrants, minorities, women and such. They won't say that it's fear, and instead wrap it in some seriously epic grievance politics about how unfair things can or will be. They accept a reality where despite already having the advantages, they are willing to marginalize the powerless to keep it that way. Maybe this isn't the intent, but it certainly is the product.

To be clear, I don't think that you necessarily should fear those with power, especially in a democratic form of government, but at the very least, you should always be skeptical about what they do with the power that they wield. I'm astounded at the number of people who are not skeptical of the president at all, but they fear the people he marginalizes.

Look, if you want to align yourself with a political party, cool, you do you, but the election of officials begins with a contract of trust that they will not abuse the position. If "your" person wins, the next step is to hold them deeply accountable, and not reward their failure, let alone any abuse of the power they've been entrusted with.

Definitely don't fear the powerless though. I can assure you that they do not seek your destruction.


Empathy at odds with hyper-individualism

posted by Jeff | Sunday, September 13, 2020, 11:20 AM | comments: 0

As research and study around the pandemic continues to occur, one of the recurring areas of interest is why the United States has had such poor outcomes relative to other industrial nations. The observations usually have to do with the fact that the US is culturally more individualistic and less authoritarian than places like China. This certainly has some broken implications to it, and we've seen that in the way that some treat mask wearing as a political issue. A pandemic is somewhat unique among problems because it's not one that is solved without exercising some empathy toward others and a common good.

That got me to thinking, is this the reason that empathy does not come easily to Americans? Yes, I want to attribute it to selfishness and narcissism, and it's probably those things too, but the individualism covers a lot more ground. Take the angle on racism, for example. I ask how is it not the most vile of things, but extreme individualism makes it easy enough to not see it as your problem if you're white.

This can be applied to a great many things that make empathy impossible. If you're not an immigrant fleeing an oppressive regime, the humanitarian crisis isn't your problem. If you eat every day, hunger isn't a problem. If you have a job, unemployment isn't a problem. If you have health insurance, healthcare costs aren't your problem. If you have a neuro-typical child, the needs of a kid with ASD aren't your problem.

But why do people lack empathy about these issues? I'll be the first to admit that the world can be a shit show, and you can't solve all of the problems, but I'm not suggesting we all have to solve all the problems. What I am saying is that we should be sensitive to the fact that they exist, and others struggle and may need help. There are two nearly universal truths about all of this adversity: One, yes, the existence of this adversity does not affect you. Two, mitigating the adversity also does not likely affect you. With this reality, lacking empathy frankly makes you not the best kind of human.

Walking a mile in the shoes of others doesn't mean you have to give up anything about yourself or your lifestyle, unless you want to. Everyone has their own things to deal with, and often your own situation is the result of little more than the birth lottery. It's not lost on me that I have enjoyed certain advantages by being born a white, hetero male born into a Christian family in America. It's my belief that this comes with certain responsibilities, not to preserve my way of life, which is virtually guaranteed anyway, but to figure out how I can improve the lives of others.

I can't solve racism alone, but if others can join me in being empathetic about the situation, it can change. This is true of nearly every problem we face as a society. If we position our lives in a way that only benefits ourselves, history has shown over and over again that the inequities of people destabilize and destroy societies. Do we really have to make those mistakes again? It's not a zero-sum game... improving the lives of others does not come at our expense.


On 9/11, we all come from away

posted by Jeff | Friday, September 11, 2020, 11:50 PM | comments: 0

Prior to this year, it's safe to say that 2001 framed the world differently for those of us in Generation X. The events of 9/11 were unlike anything that we had previously seen, including the AIDS crisis, the Challenger disaster and the assassination attempt of Reagan. We were too young to remember Vietnam or other events at that scale of terrible.

That year was also a time when I saw the potential of humanity, as the world stood with the United States, and our president at the time, for all his faults, frequently reminded us that we are a nation of diverse races, ethnicities and religions, and the sick people who committed such violent acts must not divide us along those lines.

Unfortunately, it felt like that sentiment expressed by President Bush didn't last very long, and it undoubtedly drove us to war against someone to respond to the pent up rage, though it had nothing to do with the terrorists. It felt like "never forget" was co-opted from a term meant to honor the people that died that day, to a call for revenge. It still makes me feel uneasy. When I finally visited the memorial and museum a few years ago, I felt that it captured the sentiment from the months following the attack, and it gave me peace. I'm not sure if that matters or not, because beyond the temporary unemployment I endured, I can't say that I was that connected to the day. Ultimately, it doesn't matter much what I think as much it does to the families that lost someone that day, so I think it's best that I defer the "right" way to view the day to others.

Still, I was witness to it, even from afar, and of course it affected me. Last year, because I'm me, a musical called Come From Away reframed 9/11 for me. If you haven't heard of it, it's an extraordinary show that chronicles the five days starting that morning, only entirely in Gander, New Foundland, Canada. There were 38 planes that were diverted to this small town when everything was grounded. This small town happens to have a big airport that is mostly unused, but in the days before jets, it's where everyone had to stop before crossing the Atlantic or coming from Europe. The 7,000 passengers there essentially doubled the population of the town.

The show is based on a number of real people who lived there or were on those planes, and it shows what can happen when humans are thrown into a difficult situation. It's largely what you would expect... the town does everything it can to help the stranded people, and everyone helps each other out regardless of color, religion or sexual orientation. It's funny and sad and wonderful, and will likely always be one of my favorite shows. Prior to the pandemic, it was playing all over the world.

I hang on to that show tightly these days. The level of selfishness that I see in our society makes me sad. Many people seem unwilling to exercise empathy for people who are in vastly different circumstances of wealth, racial inequality, discrimination based on any number of attributes, health challenges, difficult relationships, etc. And objectively, this pandemic is far worse, the equivalent of a 9/11-sized death toll every few days that could be mitigated if we had any real leadership and shared sense of purpose the way people did around 9/11.

One of the themes that Come From Away explores toward the end of the show is that the people of Gander and their guests somehow became better, but only because of the tragedy that occurred. That's what I really wish for the world, that out of the worst things, something better can come from it. That's my dream.


Hosting software documentation

posted by Jeff | Friday, September 11, 2020, 5:00 PM | comments: 0

When I productized (we make up words in my line of work) POP Forums earlier this year, I wanted to a simple way to update and write documentation. For the open source version, I was just using the built-in plumbing that GitHub provides for "pages," which takes markdown files and makes them into a static site using Jekyll. That works well enough, but for the commercial version I needed to park it somewhere that I had more control.

Initially, I used Nuxt.js because it seemed pretty good at generating a static site, and it was easy enough to automate it because you just run an npm command over your code. I really wanted to use something markdown based, but none of the solutions were as simple as I would have liked. This one at least was just using straight up HTML, so the templating and what not was easily taken care of. I wasn't thinking about it at the time, but at that point I could have just as easily used Razor pages in ASP.NET Core for about the same thing. But cool, I learned how to use some different tooling.

Then I moved everything to Linux app services, and the support site broke. The short story is that while Windows app services all run over IIS, a web server, that isn't the case on Linux. It just runs whatever platform you want, and under the hood binds listeners to the containers it makes. For .Net Core, it hooks up to Kestrel. Node, PHP, Java all work similarly. At first I tried to just let node handle it using PM2, but it wouldn't reliably do it. It could be something I was doing wrong, but it spontaneously started serving folder lists or not resolving deep links as if it were only a Vue app.

In this case, I just cut my losses and copied the HTML into Razor pages with a layout parent. It took like five minutes, and another five to spin up a new build/deploy pipeline. Trying to optimize with straight HTML may have been chasing nothing, since Kestrel is so fast anyway. I ended up doing this for the static asset sites that feed images to CoasterBuzz and PointBuzz as well, because just using PM2 wasn't doing any 302's or caching.

It was still worth it moving everything to the Linux app services, and I'm saving about $50 per month with twice the memory and CPU resources.


Just give me the best video I can display

posted by Jeff | Thursday, September 10, 2020, 5:30 PM | comments: 0

Now that we've actually joined the world of 4K television, and it sure is weird that I was not an early adopter, I wish the video services would stop screwing around with what they're serving to the thing that you're watching on.

This might explain why I was not quick to jump on the technology in the first place. There are only so many pixels that you can see anyway. We exceeded that density on phones a long time ago, so while it's neat that my phone can record 4K video, the screen itself can display less than a third of those dots. I don't care if a YouTube video was recorded in 4K, because I can't see it anyway. It's just marketing, like absence of the gluten that isn't hurting anyone without celiac disease.

We actually bought an inexpensive 46" 4K TV for $250 two years ago, for the playroom on a whim for some Prime deal. There weren't very many things that actually displayed at that resolution, but what I understood immediately at that size was that you couldn't really appreciate the density of pixels unless you got close. Otherwise, regular HD looks about the same at couch distance.

When I pulled the trigger on replacing the 10-year-old LED-lit TV in the living room, the primary motivators were to go from 55" to 65" and have an OLED screen. What I value is the dynamic range more than the resolution. Now that we've had it for a bit, I can appreciate the difference between 4K and HD, but you have to squint to see it at that size and couch distance. But it's very obvious to me when I get just a little closer. I find it to be a technological miracle that you can have something that looks that amazing in your house, and not only that, but the content is coming over a wire from the Internets. That's amazing.

But I'm still annoyed with the games that providers play with the resolution. Amazon on some movies would rather you buy them over again to get the higher resolution, but not all of them. Netflix wants you to pay extra. Disney+ seems to be the only one who will give you the highest possible resolution for the device you're watching on, and that's awesome. Look, I paid for Star Wars like six times, I'm not going to do it again. (If you're curious, VHS, VHS special edition, DVD, DVD collection, Blu-Ray and subscription via Disney+.)

Also, a word for the creators out there... no one gives a shit about your video because it's in "CINE 4K!!!11!!" If you have to even say that, it looks amateur. All of those pixels aren't useful if you over-exposed the video and have a high frame rate that makes it look like mini-DV video from 1999.


Seasonal signals are different in Florida

posted by Jeff | Wednesday, September 9, 2020, 9:05 PM | comments: 0

People famously claim that they couldn't live in Florida because they love seasons. OK, sure, I can kind of get on board with that, if it weren't for the months of horrible soul crushing gray skies that come with winter in places like Ohio. I actually enjoyed the cycle in Seattle, because it didn't snow very often, which is to say it's pretty, it melts, and then you enjoy it from a distance in the mountains. November to January could be intermittently damp (it mists, not rains), but it was never a deal breaker. But just as Northern Ohio or Western Washington had its indicators of season changes, so does Central Florida.

In Ohio, I always knew when we had our last summer thunderstorm. I'm not sure why, but you could tell. Then the leaves turn colors, Cedar Point would bust out the Halloween decorations, jacket weather started promptly in September, and for a few weeks at least, it was very pleasant. The summers there were not radically different from those we have here in Orlando, honestly. And when winter was finally done, the deadness turned to green seemingly instantaneously.

Central Florida is a little more subtle. The downside to being right in the middle of the state is that we don't get the regulating features of the ocean or gulf. Going to the coasts or the Bahamas is kind of a relief when it's mercifully just under 90 degrees. We have what I call swamp ass season, basically late June to early September, when for three months the humidity and heat is high, with daily afternoon thunderstorms. Being outside isn't great. The mosquitoes get bad after dark, too, and they suck into November.

Swamp ass season starts with the first few genuine, wrath-of-God downpours, when the air is so juicy and energy coming from the coasts converges. The end of this season has weird indicators that we just now realized were a thing. The first is that it seems to be the primary time of year when cockroaches manage to penetrate the pest control measures and get into the house. Yeah, it's creepy and gross, but we get one or two every year, and most of the time it's in September. They can't survive long in the air conditioning. The storms turn into rain showers, and you don't have to run the irrigation as much. Rocket launches are delayed less often for weather. It's all very Florida.

The other thing you see, in normal times, is that the Halloween decorations go up at the theme parks, and the fireworks schedule changes to match the special ticketed events at Magic Kingdom. And like magic, all of the decorations go from Halloween to Christmas overnight from October 31 to November 1. Christmas is by default a two-month affair here, and we're OK with that.

Jacket weather, especially in the evenings, lasts into early March, when spring arrives with virtually perfect weather every single day for three months. School ends at the end of May, and the next few weeks remind you that swamp ass seasons is returning.

We have seasons here, they just come with different signals and degrees of extremeness.


Working remotely the right way

posted by Jeff | Wednesday, September 9, 2020, 5:25 PM | comments: 0

I'm having one of those weeks where my calendar is booked solid with few breaks in it, mostly by my own doing. That tends to cause anxiety because there are inevitably things not on the calendar that fall through the cracks, or simply don't get any of my thinking time. But then I looked at what was going on next week, and my cooler head reminded me that this is not normally how things are. In fact, I'm generally working remotely the right way.

I've been working remotely on and off (but mostly on) for the last decade, and even back in the day when I hopped around between consulting gigs. It's amazing how your qualify of life changes when you don't have a long commute, and for whatever reason, I've never had jobs close to where I live. Being among people is a precarious trade off when it involves having to first drive among people. Even when you have a relatively short trip, say a half-hour or less, you're getting almost a whole day back per month and your life expectancy increases.

As much as one can sing the praises of comfort that come with remote work, to me the win comes from a satisfying higher level of productivity. As long as you manage the technology that makes noise, it's a lot easier to maintain focus and do stuff. The key is to not feel like this arrangement requires you to do more than you might otherwise do. It's important to set boundaries, including a hard stop for a quitting time. Working at home doesn't mean you should always work because you're always home. It's also critical to get up and move around from time to time, take real breaks and step away.

This is not as easy as it sounds. I've put in 40 hours by the end of the day on Thursday and not think much of it. Nothing makes you feel like more of a jerk than when your kid is knocking on your door at 6 asking if you're done yet. But what I've come to realize is that a lot of it has to do with who you work for.

At my last job, I tried to work remote one day a week, usually Friday, and I still found myself working a long day, and that was taking calls from my boss at dinner time during the week. I didn't realize at the time that it wasn't OK. The job before that, I just worked too much, classically diluting my own pay and really getting nothing in return other than acknowledging the silly American domestication that suggests that's what we should do. It was never like that in previous remote jobs, because there was a general expectation that it was important to have boundaries and look after yourself. Looking after you and your family is a real, top-down cultural expectation that's either there or not. Working an earnest week is not killing yourself.

Of course, it is a drag when you don't get to spend some amount of time with your coworkers in a more social setting. My teams are spread out across four time zones, but we have been known to do virtual happy hours. I do look forward to a day where we can actually meet up in person.


Writing fiction takes practice and time

posted by Jeff | Monday, September 7, 2020, 4:40 PM | comments: 0

I've watched a bunch of the filmmaker and writer courses on Masterclass, and I have more to see. So far I've done Aaron Sorkin, Spike Lee and Judd Apatow, and they're all pretty great. Ron Howard was a little too big budget to be useful. I still need to watch Werner Herzog, and if I can find time, David Lynch, Jodie Foster and Martin Scorsese. What was useful about the first few though is that they're writers, and they have a process for what they do. All three offered the harsh reality that indicates that writing is hard because you have to do it a lot to get anything useful or worth using.

Writing fiction, for the screen, is something I want to do, because other than one really bad screenplay I wrote years ago, and dozens of fragments, I don't have anything cohesive. I needed to hear the advice from the pros, because I need that reality check if I'm to ever act on it and make something.

It's a weird thing, because as much as I love to write, the idea of it taking a lot of time is daunting. Most of what I've written in any substantially longer form than an essay has come to me quickly, but it was all non-fiction. For example, writing about people I've met was not hard, and I could do it in a sitting or two. Heck, the software programming book I wrote back in 2004 generally came together a chapter at a time with me just cranking it out.

Of all the things I've said that I wanted to do, I've probably wanted to do this for the longest period of time. That comes with a fair amount of self-loathing relative to my inaction, but it's like anything else, in that I just have to commit to it. I mean, I'm close to writing a little code for open source projects for 100 straight weeks. I haven't had red meat in 15 years. Like anything else, I imagine you just have to develop the habit. That always seems so hard though, because creative endeavors seem to require a mood or inspiration, and those can be hard to come by.


What do I do about my music problem?

posted by Jeff | Saturday, September 5, 2020, 10:02 PM | comments: 0

We've been hanging out this evening, grilling, dancing (maybe), doing puzzles, and whatever, and listening to a great deal of music. Much of it was musical theater because, well, if you know us you get it. This was about as celebratory as we get without leaving the house or partying with other humans.

Here's the thing... I vaguely understand the mechanics and structure of how a guitar or a piano works. I'm obsessed with the sounds you can make with an 808. Multi-lingual harmony blows my mind. African a cappella musical songs are great. British rock operas turn me up. Blue weirdos banging on PVC pipes are a favorite. And with DJ experience, my rock music history knowledge isn't terrible.

But I couldn't carry a tune if it had a handle. I can't sing, and I can't play any instrument, unless you count being able to play taps on a trumpet (hint: it requires no valve movement). I can play music on the radio, and that's about as close as I get to musician.

It's a really odd situation, to be obsessed with music but not able to make any. Every time I get an email about a Steinway sale, I feel like we need a piano. Or I need to get an 808 software emulator. Or even a fucking ukulele, now that there's a Masterclass. The mental block to any of this is obvious enough, that you don't learn any of this overnight.

Diana has formal training, and in addition to that, she's a savant. They had PVC pipes at the science museum in Cleveland, with music playing in the background, and she listened for a moment, then started playing along. She picked up Simon's recorder and just starts playing shit. It's outright disturbing. But I feel like between the two of us, we could play stuff if I nutted up and tried to learn anything at all.


The state of video publishing

posted by Jeff | Saturday, September 5, 2020, 4:45 PM | comments: 0

The Internet has had an interesting arc of enabling and democratizing the creation of stuff. In the nascent hippie idealist days, people like me and tens of thousands of others were able to find a niche, publish content about something we cared about, and make a little money. You could put things out there for relatively low cost and potentially "compete" with traditional media for attention. I paid my mortgage through the recessions at the start and end of the oughts that way. A friend of mine "worked" his way through college that way.

A number of unfortunate things have happened since that time that have made the situation simultaneously better and worse. The social media platforms have enabled this bizarre concept of an "influencer," where people get paid mostly in attention for some fleeting amount of time. A few get enough of it that they can build an audience and get paid some percentage of ad revenue from YouTube. There are a fair number of people making a living this way. But just as advertising as revenue for content is almost entirely controlled by Google, the case is also true for video.

A couple of years ago, YouTube then put minimums on "partner" revenue sharing, requiring a certain number of subscribers and viewing time. Think about the volume of bullshit that is: Big YouTubers are going to generate revenue, but now they don't have the pay the long tail of creators who do. I used to make a couple hundred bucks a year by making one or two videos. They get my content for free now. The thing is, there aren't really any viable alternatives to YouTube, because it's where the audience and the advertisers are. What's worse, the partner requirements put the onus of engagement on the creators, which is why they're constantly asking you "LIKE AND SUBSCRIBE!" as if it were their only reason for being. It's icky, and it certainly doesn't encourage quality. If that weren't enough, these creative people are building their entire brands and identity on someone else's platform.

It's hardly a surprise that there is a bipartisan desire to beat up Google for antitrust behavior. I used to get ad revenue for my sites from as many as six providers at a time. I'm down to two, and 80% of it is Google.

Anyway, I've been thinking a lot about it because we want to publish Silly Nonsense, which is not a cohesive idea as much as it is a desire to make things. To that end, I'm not interested in making a living with it, but I can't simply accept the idea of Google making money for what I did and I get nothing. It's also worth noting that making something that's more than someone talking to a web cam or phone isn't free... cameras, lights, software, production music and my time have a cost. I've been putting stuff on Vimeo for more than a decade, and paying them for the privilege. They have a nice subscription model you can leverage. Twitch has something similar. But again, the discovery process often involves going to where the people are, which unfortunately is Google.

I'm going to give it a try, publish on YouTube, but there are things I'll do to make sure I'm still building something that I own. There will be a web site. I'm not above putting the same content in multiple places. If it does get any traction, I'll look at the self-sold advertising options.

I know it sounds like I'm hating on the platform, because there is a lot of garbage, but there's good stuff too, with high production values. The maker and science stuff like Adam Savage, Simone Giertz and Mark Rober is pretty great. I'm discovering some video nerd stuff that's also pretty great.


Giving more than you take

posted by Jeff | Thursday, September 3, 2020, 9:04 PM | comments: 0

One of the things that has come out of therapy is that I have in my life a history of giving more than I take. This is not inherently a bad thing or a character flaw, and I am not a victim in this observation. That said, I've got a history of professional and personal relationships that were not just inequitable, but wholly lopsided. When they get lopsided enough, you put yourself at risk to resent those situations.

I had to go pretty deep to figure this out. When I started talking it out, it started more with certain jobs, intermittently over the years, when I would treat work as an extension and vital part of my identity. Then I went back to college relationships and friendships, where the inequitable relationships were the default. Many family relationships were even worse. On top of that, the pattern includes a strong desire for me to fix that which I think is broken, even if it doesn't want to be fixed. Yikes, that's some pretty self-destructive stuff.

The good news is that this isn't something that I do as much these days, beyond being a parent, which necessarily requires you to give more than you take. But there's a long trail of damage to clean up that still has a surprising impact on my current state. It's wide ranging, and includes a lot of family issues and people I haven't even spoken to in literally decades. It's not a thing where I'm looking for reparation as much as it is a thing of letting go or being at peace with things that are frankly the ancient past.

Putting aside my therapy for a moment, there is an interesting thing going on here with the social and moral contracts that we accept as admirable. Leaving the world better than you left it is a good ambition to have. It gives us purpose and meaning. Helping those in need feels good and it's one of the ways you become a participant in a functional society. But it does seem like there's a proportional risk associated with the effort as well. The more personal the help, the more likely you might feel that you're being taken advantage of. It throws a wrinkle in that math.

I'm not sure what I do with these observations.


POP Forums: What now?

posted by Jeff | Wednesday, September 2, 2020, 7:00 PM | comments: 0

Every time I ship a new version of POP Forums, I inevitably reach the point where I think, "Now what?" Mind you, "version" is relative when it comes to my own use, because I have enough automation to get each commit into the hosted product and CoasterBuzz basically within a few minutes. But of course I want to keep improving it, and I generally enjoy messing with it. In fact, I really need to work on drumming up some business for the hosted version, because I basically never did that with the timing of my new job. I'm also not super interested in doing that, but if you know someone who could do some inside sales, I'd pay a nice finders fee for that.

The obvious thing that I've talked about for several versions is to modernize all of the front-end bits, and get off of jQuery. As I've said before, I'm not interested in building a single-page app (SPA), because it doesn't make sense, and it's not worth risking the generally robust Google juice in the forums that I run. CoasterBuzz has 45,000 pages indexed, PointBuzz has 38,000. The long tail of search traffic we land is insane, and the result of 20 years of consistency. Also as I've said, the text heavy nature of forums and relatively limited functionality is what makes them solid.

So I experimented with Vue.js when I rebuilt the admin side of the forum, which is not app-tastic and doesn't require a huge build process or anything. It just gets transpiled to the lowest common denominator and minified on the script side, and the markup is in a single file. No webpack or any of that nonsense. The result is 76k coming down the pipe, and 600k total on first hit if you count all of the libraries and CSS. I like it precisely because it's so flexible in how you use it.

This stuff isn't my strength though. I remember almost needing to get into Angular years ago when working for a consulting company, then wanting to explore React more for my own amusement but didn't like it (the node package house of cards really messes with me). I like Vue, but I haven't been particularly thoughtful about how I would use it for the forums. At the very least, I think there are at least four "pages" that exist: the forum index, the topic lists, the actual text of each topic, then everything else. Those first three are the hard-rendered things you want to be perfectly and simply indexed by Google. From there, each one would share components around being logged in, notifications and search bar and stuff. Probably the biggest "how would I" is with the text of a thread itself. It doesn't seem like you can "reverse bind" the individual posts to a data structure, which you then augment with new posts as they're made, or things are voted up, or whatever. Again, I'd like to start with what's rendered in the page.

I've looked at some of the other forums out there, and none of them even offer inspiration. The PHP-based forums haven't really changed in years, and they just keep tacking on more ugly to the UI. I took a look at Discourse, the only "new" thing in recent memory, but they've taken the UI too far from convention, and a thread with 7 replies takes 80+ requests and weighs in over a megabyte! (For reference, mine would be under 30 requests and about 700k.) I don't have a lot of ideas.

It would be easy for me to slip into more back-end optimization and reorganization, but honestly that's nuts. It's so stupid fast right now that it would be like squeezing water out of a stone. I have tried over the years to be very deliberate about keeping the UI as simple as possible, with as few dependencies as possible. This is why it was easy to get it looking decent in mobile. It's not refined, but reading posts and understanding who made each one works really well. I don't want to get away from that. What I do want is a real notification system, login/out state without a page refresh, some better way to do quoting. I really wish there was something other than TinyMCE that worked as well for the text editor, too.

I need to just branch the code and start experimenting. Like I said, I think it starts with that first page.


What do you do with time off right now?

posted by Jeff | Wednesday, September 2, 2020, 1:45 PM | comments: 0

I'm making a long weekend by taking this Friday off so I can...

I don't have any plan. I mean, taking time off of work is necessary and you should always do it as much as you can. To be clear, even in "normal" times, I've never had much desire to travel during a holiday weekend because too many people are on the move anyway. But travel to me is what I equate as time off, but you can't leave the country right now, and we're even letting Simon's passport expire. You can travel domestically, but as much as I think we're getting better at infection risk mitigation, I'm not in any hurry to get on an airplane. Our best options these days in Florida are outdoor activities, which other than the beach aren't great options during the summer because it's just not very pleasant. I think there's a good chance of having some coastal time before the end of the year though.

Maybe it's easier to frame this against the things we would have been doing. We would have gone to Alaska this summer, with some time in Seattle before and after to catch up with friends and family there. I would have gone to New York at least once for work, maybe twice, which is still work but vacation-like because it's New York. We were going to play it by ear, but a road trip to DC with potential amusement park stops was under consideration. In-law/gulf coast visits, a weekend cruise, etc. would also have been likely. Then I was also thinking about how much I'd like to visit Vegas with Diana for food, shows and light gambling. We're getting more serious about international travel, but I'm not sure how you plan for that right now.

I have to challenge assumptions here. First off, you don't necessarily have to travel when you take time off. There's something to be said for not traveling. I guess it depends, as even I divide travel into "adventure" and "comfort." Walking all over a new place you've never been (or have been, in the case of NYC) is adventure and not something I come back from physically refreshed. Getting on a cruise where you're in flip-flops as soon you park the car and you can turn your brain off is comfort. But there's also the issue of what you like to do. I'm not really "outdoorsy" unless it's exotic, like Alaska or Hawaii, or I would imagine the fjords of Norway or exploring old European towns. Hiking in the mountains, probably not.

Whatever, I'm overthinking this for the purpose of a long weekend. I'm content to nap, read a book, play with the kittens and get some good walks in. But I do intend to take some week-long time off before the end of the year. We're looking at even an AirBnB kind of thing during school, where I don't actually have to take time off because we can work and go to school from anywhere. My employer has a use it or lose it policy normally (because everyone gets four weeks plus holidays), but this year has amended it to allow some roll-over because of the weirdness. Where I'm stuck is that I know I need to step away from work in a meaningful way to avoid burnout (learned that the hard way the last couple of years), but I feel like I need to get something for that time.

To answer my own question, the answer is probably to do what I've been doing all year: Make stuff. I've been doing a radio show, shipping open source software, building Lego, roughly sorting through ideas for video content, writing way more... I'm producing more than I'm consuming, and that's deeply satisfying.


We're struggling... a lot

posted by Jeff | Tuesday, September 1, 2020, 5:00 PM | comments: 0

Life is pretty hard right now. I think that's the case in general for people, but I've been trying to figure out how to talk about it, or if I should at all. There are two areas that are particularly difficult for me right now, but I just want to talk about the parenting aspect for now. All of the earlier challenges with Simon were easy by comparison.

I want desperately to try and distill it all down to something that's easy to understand and packaged, but I think if it were that easy to define, it would be easier to solve. I think what I'm seeing is that the boy is easily overwhelmed by challenging things, and it doesn't matter how small the scope of the challenge is. By that, I mean it could be learning complex multiplication or brushing teeth, and literally everything in between. The moment he doesn't understand something, or can't immediately figure out how to react to a situation, he starts to panic, and it goes downhill from there. Meltdowns come hard and fast.

In the case of school activities, this is naturally aggravated by the remote learning. He's scared, embarrassed or ashamed (maybe all of the above) to ask questions, so if he misses an important detail or direction, the panic sets in quickly. We want him to be accountable and take responsibility, but it's difficult for him to do that when he slips into panic. What we've learned over the years is that he can generally be brilliant about anything, but only after he and his teachers (and often one of us) figure out how to teach it. This is definitely the case with math, though composition is harder, and things that are arbitrary with no "correct" answer are nearly impossible (art).

This translates into the most mundane activities as well. Last night he couldn't get comfortable in bed, which alarmed him so quickly that he couldn't be consoled in any possible way. The secondary layer to that is that he often wants someone else to figure it out for him, which we've been known to do. These things seem so insignificant, but you start to feel shitty when you realize that to him this is the worst thing in the world, and you're trying to invalidate his feelings by suggesting that it's not. Last night I got the "I hate you" and as much as you try to roll with it, it becomes hurtful when you hear it enough.

Diana takes the worst of it during the day at school, I tend to get it after dinner. It's exhausting, discouraging and disheartening. And mind you, this is all without the "normal" social challenges he would have under "normal" circumstances. It's not a good feeling when you feel as though your kid is miserable, all of the time. It's not a personality flaw, or a failure in parenting, but it sure feels like it.

I do think that there's another layer in this, and it's the part where a situation that can't be reconciled leads to the stress and reaction. Most meltdowns to date can be associated with situations he can't reconcile, for example a social contract you don't understand (you can't invite yourself to someone else's house) means that you can't join a group of kids playing inside (who are unkind and don't like you anyway). When you're in that end state, with no inputs you can change for a different outcome, the result is a frustration unlike anything most of us ever experience. Judging by the momentary and brief expressions he makes in the moments leading to a meltdown, I think he's cycling through some of the options and getting to the meltdown faster when none of them work for him. So for example, the bed comfort is irreconcilable because he has no tool that allows him to relax, and his most important job is to relax and fall asleep. In the case of the missed teacher instruction, the perception of classmates if he asks a question, the resulting inability to perform the work, and eventually a bad grade for not completing it, all happen in his mind very quickly. I talked to my therapist about this a little, and she believes without meeting him that these are likely issues of maturity. Autism and ADHD never go away, but by adulthood we're often able to develop coping mechanisms to operate as neurotypical people. That's not a thing when you're 10 but about as mature as an 8-year-old. There's no manual for teaching coping skills.

This is all easy to write down and think about in a calm moment sitting in a peaceful place, but trying to understand it, see it and react constructively to it in the moment as a non-professional is nearly impossible. It's not natural for a parent to be clinical. I don't like seeing him struggle, but I know he has to at certain things in order to build that repertoire of skills to be the brilliant person that I know he is. And yeah, you bet I'm projecting a lot of my baggage on him. I feel like we have to get this right not just out of love for him, but as a measurement of my own worth. The stakes are pretty high.


The importance of zoos and aquariums

posted by Jeff | Monday, August 31, 2020, 7:14 PM | comments: 0

One of the many treasures that have come with Disney+ is Secrets of The Zoo, which was shot over three seasons at the Columbus Zoo (fourth coming soon). It's an amazing zoo, I've been there, and it also has a huge 10,000 acre open environment about an hour to the east where they have a number of pack and herd animals, many of them endangered. One thing I like about the show is that it's not shy about showing the ups and downs for the keeper and veterinarian staff. The births and deaths are all there, as well as the stories of the humans that care for the many critters.

There are still a great many people who protest zoological institutions, usually because they believe that they exist solely for the purpose of making money. Of course, most of them are not for-profit in the first place, but even those that are for-profit, such as SeaWorld or Disney's Animal Kingdom, play a huge role in conservation, scientific observation and public education. The conservation effort in particular is well coordinated across institutions, in the US via the Association of Zoos and Aquariums (AZA).

Humans are notoriously skeptical of things they can't see (aside from religion), and this is especially true when it comes to the environment and its inhabitants. Having these animals where people can see them, especially children, raises awareness in a very tangible way. It's the reason people know about elephant and whale poaching, a shrinking panda population, the injury of manatees from boats, etc. Having grown up next to the Cleveland Zoo, and with the former SeaWorld of Ohio, they fundamentally informed my world view about the importance of looking after these species.

I would further opine that because humans are largely responsible for the destruction of the habitats of endangered species, it only makes sense that we take responsibility by looking out for these same species. While the feds keep cutting funding for programs under the Endangered Species Act, the role of private institutions is becoming more critical.

I'm proud to support the zoos in all of the markets where I've lived. They're critically important to the natural world.


All-Linux, all modern Azure migration results

posted by Jeff | Friday, August 28, 2020, 6:35 PM | comments: 0

Last weekend I moved the last bits of my sites off of Windows-based Azure app services, and all of the background stuff now runs on Azure Functions. Now that nearly a week has passed, I have some real metrics about what that means.

First off, I moved the forums from PointBuzz off of the main app and into the hosted POP Forums product earlier this year. The hosted product runs on two Azure B1 Linux app service instances, with the cheapest possible Redis instance to connect them. The forums use Redis more as a service bus (I know, potentially an anti-pattern) to copy cached data between the instances, kind of as a two-level cache, so I don't need a huge durable cache for this. I didn't invent this, it's what StackOverflow does. Meanwhile, the databases used in hosted forums are a SQL elastic pool running as "standard 50 DTU's," which is a crazy amount of compute given how much the app has been optimized over the years. Average CPU utilization for the app instances has been under 1%, RAM has been steady around 75% of 1.5 gigs (each instance), and they're serving around a peak of 20 pages per second. That's not a huge load at all, but it means that I could see a 100x increase and still be pretty safe, especially if I scaled up.

The elastic SQL pool is all of the databases on all of the sites, which is currently 13 databases that include CoasterBuzz, PointBuzz, this blog, test sites and other things I'm forgetting. Average "CPU" is under 3%, which is a relief because I used to see all kinds of weird spikes when I was using my own "search engine" to index the various forums. Again, plenty of room to grow and scale up if I had to. Having moved the search to ElasticSearch, which is running in Azure (not in the same region) by Elastic itself, queries are coming back in under 50ms on average across the sites, which is solid, and a bargain considering that I'm paying about $15 a month. Again, I'm at bargain basement scale.

The move last weekend was to get out of a Windows app service plan, bringing my cost from about $75 per month to $25. Everything now is running on .NET Core, which is generally faster than the full .NET Framework. Using only a single B2 instance, CoasterBuzz (including forums, busiest of the sites) and PointBuzz (not including forums, which is running in the hosted app), are averaging at most about 7% CPU and consistent page rendering well under 50ms. RAM usage is about 80% of the 3.5 gigs, but that makes sense because the local cache will use as much as it can until it starts evacuating aged cache entries. The big difference is the page rendering times, which for PointBuzz was consistently about 50ms. I wish I would have been more deliberate about benchmarks. But whatever, the point is it performs better at a third of the cost.

The forums, both the hosted app and CoasterBuzz, utilize Azure Functions to process all of the asynchronous stuff, specifically sending out email, search indexing, calculating point awards, cleaning up user session data and closing old topics twice a day (I don't use that last one). This "serverless" arrangement is crazy, because the total cost of this is going to average... a few cents per month. That's nuts, to be able to spin something up that is mostly idle but still does stuff thousands of times per day.

The biggest cost I have is by far the database pool, which by itself costs about $120 per month. The hosted forum app services (two B1 instances) and the other app service with everything else (a single B2) cost about $25 a month at the moment. The rest, storage, bandwidth and other stuff add up to around $210 per month, which still feels like a lot, but it comes with all of this redundancy and performance. It's a lot of cloud greatness for what it is. The hard thing right now is that ad revenue is just shit.