Archive: December, 2020

2020 Review

posted by Jeff | Thursday, December 31, 2020, 12:53 AM | comments: 0

I've been doing these for years, and I have to say, I never thought I would be revisiting a year like this. It's safe to say that I've never had a year like this, and probably no one else has either. I'll try to break it up into the usual categories, but I can summarize by saying the year was a shit-show, if not always for me personally, it was for the world at large.

To that end, I like to reflect on the previous year, every year. This is just my story, and whether or not it's better or worse than someone else's isn't the point. It's real to me, and that doesn't preclude me from being empathetic to others enduring difficult circumstances. Don't be one of those people who wants to out-woke others and be judgey. There's a lot I'm leaving out this year, so what I am reflecting on is not a complete picture. It never is. This year took a lot from us, and having income did not make up for it.

The pandemic

Obviously the thing this year will most be known for is the Covid-19 pandemic. We end the year with over 340,000 deaths in the US alone, losing 3,000+ people per day because of multiple levels of failure in government and personal responsibility. The enormity of that weighs on me, even though there's little I can do about it.

Early on, in March, we understood so little about this virus that most societies reacted the only way they knew how: stay home and avoid people. The science evolved and it was fairly well understood, but poorly communicated. Avoid the three "C's:" close contact, confined spaces and crowds. This led to some counterintuitive behaviors, where going to Walt Disney World was relatively safe, but having a dinner party or your parents over was not. A lot of people just did whatever they wanted anyway, so you ended up with places where the hospitals were overwhelmed, in both space and staff, and literally 1 in 800 people of the population of North Dakota simply don't exist anymore. Nationally, 1 in 1,000 people in the US have now died.

My friends have lost family members, and those who were infected more often than not had lingering symptoms for weeks. We've done our best to be careful by just observing the basic protocols. With Diana's history of respiratory health problems, Simon's two bouts with pneumonia, and my overweight ass, we all have varying degrees of higher risk factors.

A lot of the things we would normally do this year we simply couldn't, even if we disregarded the risk. We couldn't cruise, we couldn't keep our guest room occupied by friends from Norway or Seattle. We couldn't road-trip up the coast to amusement parks. No Food & Wine Festival. No parties. Instead, we had solitary beach trips and Zoom playdates. School happened through a screen.

Like everything in America, it was disappointing to see a disregard for science and binary, divisive thinking informing people's actions. For people unwilling to go just a little deeper, the binary choices were shutting everything down indefinitely or going about life as usual with no regard to the consequences. Of course, the reality is that we're suffering economic chaos and the greatest public health crisis of our time, but people don't seem to see that either. Meanwhile, Australia has daily cases in the single digits, and is having a proper summer. I hate that American exceptionalism has become about what we can't achieve instead of what we can.


Funny how things change from year to year. I ended last year feeling like I had set up a path for success this year, having reached all the measurable goals I had. After getting back from the holidays and a tech conference, I realized that my enthusiasm was not shared, for reasons I'll probably never fully understand. I spent a lot of time analyzing the situation, to learn from it, but regardless, it was time to move on. The next move came down to two options. The one was a contract gig that would have been the most ridiculous rate I've ever seen. It was yet another fixer-upper kind of gig. I feel like that's where I've landed over and over again since I landed in Florida, whether it was consulting or SaaS companies. Build from the ground, rip and replace, fix all this... it was a pattern, for sure. The other option was to join a growing company where I had to manage a team after the previous manager was promoted. It was not a fixer-upper. I took that job.

We've all had that friend that was in a toxic relationship, where they didn't see how terrible their partner was, and from the outside, you wonder how they could possibly not see it. Professionally, for me, that pattern was the fixer-uppers. I've had a lot of success in that respect, and my special sauce is definitely team building and adapting situations toward predictable outcomes. Grooming people to think for themselves about the outcomes works and scales. I assumed that the challenges in the last decade just came with the territory of my career stage, that it was natural to be in a constant pinch. I was wrong about that, and I just had to see a better scenario to prove it.

Part of this also has to do with company size. Large to huge companies tend to have more opportunities to do whatever you're good at, get promotions and have reliably high compensation up front. Smaller companies require you to do more of everything, probably not as well, with potential but uncertain long-term financial incentive. I've landed in a place that's somewhere in the middle, for the first time. Almost everywhere that I've previously worked had less than 150 people or more than 10,000. This middle road is interesting, because I have many peers with similar backgrounds, while the most senior leaders trust us to create the high level outcomes they're after. It's challenging without being difficult, and no one has made the asinine suggestion that maybe I'm not enjoying work very much or that my talents are underutilized.

In fact, it has given me the room to really think about my own skill inventory, and how I want to develop, without having to waste time on the aforementioned toxic relationship stuff. The consulting on and off for the last two decades has given me a lot of experience in areas of project and product management, team building, development processes and of course all the technical architecture stuff that I now mostly rely on others for. Where I want to grow is a number of areas that are somewhat more abstract, but slowly coming into focus. Most obvious is just navigating and collaborating across a larger organization, and figuring out how best to segment it in ways that continue to be more outcome based and not hierarchical. I also want to better understand where I sit on the vision-operator spectrum (the Steve Jobs vs. Tim Cook spectrum, if you will), and how I can strengthen the end where I am not, or both if I'm in the middle.

I had a great year-end review, which was not unexpected (if you're surprised by any review, your manager isn't doing a very good job). A number of people have tapped me to work on more global things while my directs have given me positive and constructive feedback. It has been a great year. It admittedly causes some survivors guilt in a year where we've seen entire industries suffer in the pandemic.

The hobby business

Continuing with the weirdness theme, this was the year that I thought I'd spin up a new opportunity to counteract the continuing slide in ad revenue. Late last year, I decided I should make a commercially hosted version of POP Forums, and early this year, that's exactly what I did. You give me a credit card, and in a matter of minutes, you have a hosted forum. It has a dozen or so themes built-in, you can roll your own and it can even support ads. The performance is off the chart high and the scale can go a lot further than I've tested it. To prove this out, I moved the PointBuzz forums there so we could decouple the rest of the site and work on it independently. It's. So. Fast.

My intention was to let that marinate a bit, to prove it out, then start to sell it. Then Covid hit, and I started the new job. I never came up with any real marketing plan, and definitely wasn't going to spend money on marketing it, because I didn't have the mental bandwidth, and I've been fiscally risk averse for obvious reasons. So to date, I'm the only customer.

The site revenue took a huge, huge shit this year, by 32%. Traffic was obviously down, because many amusement parks didn't open, or were opened at reduce capacity. CoasterBuzz was down about 20%, so the 20th anniversary was a bust. PointBuzz I'm not sure, because I wasn't tracking traffic on the new hosted forum until late in the year. The club revenue on CB really took a dive with almost no events this year.

On the plus side, I was able to migrate everything to the latest .NET bits, which means that it all runs on Linux now, another sure sign of the apocalypse. What this means is all of that performance and redundancy is only costing me about $200 a month. I've had zero downtime this year.

Acts of creation

The forum work led to a lot of code commits early in the year, but that barely scratches the surface of the nearly 400 open source contributions I've made this year. I finally open sourced my blog app, and added the bits necessary to also syndicate a podcast (necessary to migrate the old CoasterBuzz Podcast to Linux).

My biggest and most unlikely accomplishment is that I built my own cloud music service, which I called MLocker (as in music locker). If you would have told me a year ago that I would endeavor to do something like that, I'd say you were silly. But with the death of Google Music, I needed a place to park all of the stuff that I already paid for, because the only music service I'm paying for is the curated one from SiriusXM. I use it every day, on my phone, and it's fantastic, if not perfect. I've got almost 8,000 MP3's that no longer need to be moved from place to place.

All told, I wrote about 12,000 lines of code this year for the open source projects, which doesn't count the proprietary stuff written to host the commercial forum version. Not bad for someone who is more manager than maker.

I also decided to do a radio show called the Modern Gen-X on PRX, and it aired in Alaska, Guam and Maryland. I made 21 hours of radio, and then abruptly stopped. I may pick it up again at some point, because I really enjoyed it. It was just something to pass the time and revisit the old days. I did it "live" style, not scripted or edited, because that's what was fun when I did radio for a living and radio sucked less.

I wrote over 200 blog posts this year, because I really concentrated on doing it more toward the end of this year. My rhythm in recent years has been around a dozen a month. When I do write, I write deeper than I used to, but I still wanted to do more of it. Writing helps me cope with anxiety by processing things out of my head.

I bought eight Lego sets this year, all of them fairly large. This isn't really creating things in the strict sense of the word, because you're following instructions, but it is one of the most calming activities I can do. My favorite of these was the Haunted House, which has a freefall tower amusement ride inside of it, of the most brilliant design. I did time lapses for most of these.

I bought a new camera this year, the only major purchase I made all year, hoping it would spark my video creativity. I just haven't been out in the world shooting stuff in a long time, and I miss doing it, even if I'm not even sure what I would make with it. So at the very least, we're going to make a series of videos with the aforementioned Lego time lapses, some videos about drinks, food and other stuff. I don't really have a formula in mind, and that's why I'm associating it with my now-ancient SillyNonsense brand. Yeah, I brought it back. I end the year with around 10 episodes complete, though they're not all yet posted. I don't really enjoy doing stuff on-camera myself, because I was never good at it, but I'm limited to doing stuff with the people in my house at the moment.

All this stuff made it a lot easier to feel good about doing passive things, for sure. I watched a lot of streaming TV and movies in the last year, and I feel strongly that we're in kind of a new golden age of episodic video. I read a bunch of books, all non-fiction, mostly a combination of memoirs and business advice books. I also subscribed to Masterclass again this year, and watched a ton of classes.

Many of the Masterclass series that I watched were about filmmaking and writing, which lead me to the one thing I did not do this year: Write a screenplay. I did finally buy a Final Draft license though! Judd Apatow's class really stuck with me, for one specific point: You have to write something terrible if you ever expect to write anything good. If I keep that in mind, I'm confident I can write something.

Creating all of this stuff has been incredibly satisfying in a way that I haven't felt in a long time. I don't really care what others get out of it, if anything, because it just feels good to make things. I listen to music every single day on a player that I built myself, which feels really good.


This was not a good year for health for people important to me. Covid doesn't even start to capture it, as we've seen more cancer and death than would seem normal. It's been rough. Those aren't really my stories to tell, but they've certainly impacted us.

For me, I am actually ending the year five pounds lighter, which would feel like failure in any other year where 12 months ago my risk profile was scary and a little more urgent considering I'm not getting younger. But the reality is that this year, with the stress of the pandemic, a work transition and serious parenting challenges, maintaining the status quo is a win considering my history of eating my feelings.

At the end of the previous year, my doctor (who Orlando Health let go of, in a pandemic, without notifying me) had all of the predictable advice: I had to get my cholesterol and blood pressure down, both just a little higher than normal. Weight loss would help with both. He suggested that I try intermittent fasting, which means no eating between 7 p.m. and 11 a.m. I was super consistent about that at first, which is why I lost those five pounds pretty early. It also helped that the job change and working from home meant no more snack closet and chef making meals three times a week. The flip side is that my physical activity basically stopped. It has been mentally difficult to get up and get out most of the year. The thing that probably helped the most is that I finally broke my soda habit by transitioning to flavored soda water. I still get a fountain Coke and a little Sprite now and then, but I've reduced my intake by a significant magnitude.

I'm not sure where my blood pressure is, because I used to measure that at the grocery store I don't go to anymore. I didn't get a blood panel in the summer because the replacement doctor in the office wasn't doing blood draws in the office anymore. I don't expect any material improvement in those because I haven't done the work. The last time I had 10,000 steps or more was February 19. In late spring and early summer, I was in a weekly rut of pigging out and making cocktails every Friday. Like I said, I'm approaching this all as "could have been worse."

The weird thing is that with all of the social distancing and mask wearing, I don't think any of us were "sick" this year. That's weird. All three of us had some interesting allergies, but no colds or flu.

After a crazy run of perfect vision, I've noticed now that anything within 18 inches of my face is harder to focus on than it used to be, but only when I'm tired and/or it's dark. Everything beyond that point in space is sharp as ever. I'm not expecting this to last forever, and genetically I don't know how my sight ended up the opposite of my parents.

Mental health has been a mixed bag, but not all bad. The lorazepam that my previous doctor prescribed has helped me a great deal when I get the panic attack symptoms, and when I observe that I'm not in fact having a heart event, it's calming and reassuring, breaking the anxiety loop around health. I don't need the drug very often, about every three weeks on average. Overall, I feel like I've been able to manage the anxiety better this year, and maybe even reduce it. My IBS symptoms have been less this year, and since my diet hasn't fundamentally changed, I credit the stress management inputs.

The world's apparent disregard for science and America's increasing tolerance of fascism definitely was a grind, but it was really parenting that caused the most mental health discomfort. I'll get into that later, but it's a pretty dark place to be when you feel like you can't steer your little human toward a life of relative success and sense of belonging.

I was inconsistent about seeing my therapist this year, and I don't have any excuse for that, considering it's remote and my benefits cover it. But I still landed some solid realizations this year that help. I've learned that I'm often too eager to give trust to others, to the point of being taken advantage of. I have been lonely for much of my life and compartmentalized that to the point of not even realizing it. I've made up my mind that I don't need validation or affection, so I do not seek or expect it, yet it's clear that when I get it, it transforms me in a big way. I harbor a lot of disappointment toward people, professionally and personally, that were supposed to be my champions but never provided the support I needed. The pandemic reminds me that I don't need to be widely adored or social, but I do need a small number of meaningful relationships, and that's clearer than ever.

What does one do with all of that? I have no idea, but it informs my daily recognition of how I behave in the world, which in turn helps me be a better person for myself and others.

Family and parenting

If there's one thing I can take from living in these "unprecedented times," it's that I am grateful for the maintenance-free relationship I have with my darling wife. I know this year has put stress on a lot of relationships, but ours functions as usual, which is to say without a lot of work. People famously say that marriage requires work, and with us, it just doesn't. We have minor, ephemeral frustrations with each other sometimes, as any two humans would, but they have almost no shelf life. Diana and I trust each other to use money wisely, we tag team on parenting, and defer certain responsibilities to each other. There's no score keeping. When one of us needs something from the other, we ask, and don't expect that we should just "know" what the other needs.

I wish I could say that the parenting was as easy, but this has certainly been the most challenging year yet. Some of it is rooted in the developmental delays associated with ASD. Simon is emotionally immature for 10, and the hardest part of this is that he can't deal with any challenging situations. What I consider easy, he considers challenging, so sometimes putting on a shirt is at the same level of difficulty as subtracting fractions. The distance from calm to meltdown is short. As a dad, I can rationally understand his wiring, but I can't always understand his motivations and what behaviors are just him being a stubborn 10-year-old.

For me, things typically go poorly around bedtime in particular. When I gently remind him that it's time to stop playing, to take a shower, he starts to get angry. In the shower, he'll demand help because there is soap over his eyes, and instead of solving that problem, he'll ask for help with a towel or not just put his face under the water. I am getting better at allowing him to just flail a little and not be angry, but as you can imagine, the situation often devolves into accusations that I don't care about him or the usual things that parents are often accused of. What makes that so hard is that it's over things that are not inherently challenging, they're just easier if someone else helps.

There's a thread here that I think helps explain this (one I've not yet talked to his therapist about). Simon is very, very lonely, which was an issue even before the pandemic. He openly expresses this sadness to us. He's a little "different" to say the least, and kids can be real dicks about it. He hasn't really found his people. Now it's even worse, because his social interaction is limited mostly to virtual play dates to play video games with his cousin or some of the area kids he knows. Because of all this, I theorize that his desire to be helped on relatively simple things is in part out of a desire for interaction.

School has been really difficult in the remote situation. His grades have been pretty good, but he's had Mom at his side most of the time, every single day. When he's forced to work independently, he struggles to stay plugged in (we've switched ADHD meds already this year). We see this in testing scenarios in particular. It has been hard to figure out how to get him to understand the relative consequence of failure. The prospect of getting something wrong is an irreconcilable scenario for him, and irreconcilable scenarios are what causes a person with ASD to stop functioning and meltdown.

Next week, he'll be going back to face-to-face school, where he'll have the benefit of more frequent help from his teachers and ESE teacher. We struggled with this decision, but the school has followed the science and created protocols that reduce the risk pretty well. The Covid cases that have occurred have not been the result of in-school spread (because in these sub-communities they are rigorously contact tracing). Honestly, we don't know how he'll do wearing a mask all day (he still has some sensory issues), but if it doesn't work, we can move him back to remote.

For me, I'm trying to approach working with him in a more clinical, intellectual way, but it's hard not to react emotionally to emotions. One of the things we really miss out on is the old "boys' nights" that we had when Diana was regularly working. Sometimes they were as simple as doing something at home, or more often, going to a theme park for a couple of hours (because there's no cooking and plenty of activities). With outdoor stuff happening at Diana's work, she's slowly picking up some time there, and we had a couple of good nights together.


Second only to the pandemic on the list of things that are unexpected, is that we're ending the year with two different cats than those we started with. I think we've been anticipating Emma's end for a long time, because 18 is pretty old for a cat. Oliver was unexpected, and we figured he had at least another year or two. Losing both this year hurt. Maybe worse than losing them is seeing Simon's reaction when saying goodbye to them. Obviously in Covid times, you can't all go to the vet, so Diana took them in while I did my best to comfort Simon. Maybe that was better, because trying to explain euthanasia to a 10-year-old on the autism spectrum would have been rough. We didn't lie to him, indicating that the vets would give them medication to relax without pain as they died. Sometimes you have to settle for a half-truth.

These two were the last of the "blended pride," my cat plus Diana's three when she moved in with me. They traveled with us to Seattle and back to Cleveland, and then her three came with us to Orange County. It's strange now that none of them are with us.

In August, ragdolls Finn and Poe joined us. I can't really put into words how good the timing of their arrival has been, between the loss of the other cats and just the basic need for a distraction that sits on or next to you and purrs. All of the breed stereotypes have come true for these two. They just want to be loved, and don't mind being picked up. They follow you around like dogs, and they're rarely aloof like most cats. They're also enormous, which was one of the considerations for wanting this specific breed. At almost eight months, they're both well over 10 pounds already. They're very robust.

Finn is the ultimate cuddle cat, and almost every night, at least once, he jumps on Diana and kneads around her head while he purrs. He'll do whatever it takes to get belly rubs. Poe also flops on his back for the rubs, but his charm is that he's more food driven. He'll nibble your toes if there is no food to eat. They don't mind sleeping together and groom each other constantly. They're all asses-and-elbows when they chase each other around the wood floor with their fuzzy paws, sliding into each other and the walls. When they've exhausted their energy and crash, they're just adorable, stretching their furry legs and demanding that they be rubbed. There is so much love in these little guys. I can't imagine this year without them.


This was supposed to be an epic year for travel, but it wasn't, for obvious reasons. Right after the new year I flew in to Cleveland for the Codemash conference in Sandusky. It was a good reminder about why I was happy to not live in Ohio anymore, because of the weather. We had two cruises planned as well... a weekend hop in mid-March, and a grand revisit to Alaska in late June, while Simon stayed with his cousins in Seattle. The latter would have been the longest vacation that Diana and I had taken without the boy since his birth. It was going to be glorious.

We were two years into a tradition of going to New York in the spring around our anniversary, and I was hoping we would continue that given the shows and her friends there. And if that weren't enough, my work office is actually in One World Trade, so I have additional reasons to visit.

There were some other things potentially on the table as well, including an east coast driving trip, a DC visit, maybe some time at Cedar Point, and definitely some shoulder time in Seattle before and after the Alaska cruise. Instead, we've not left the state, and let Simon's passport expire. I didn't use all of my time off (a week rolled over), because all of things we like to do, and the new places we hoped to go to, we couldn't because stuff was closed.

In July, we did get a beach rental at a property that had about a dozen guest house units, in the Cocoa Beach area. That was a nice diversion for a few days. One of the neighbors was making noise at night, which was annoying, but being right on the beach in an area that was not in the big public parking beach areas, was great. I'm not sure why we had never done that before, because there are countless rentals up and down both coasts.

We also had a road trip down to Naples to pick up the kittens, which came at the same time as a dead 12V battery in my car, so I didn't enjoy the drive in a rental, unfortunately.

Even in the first half of next year, the good news is that we (as in the world) know how to roll relatively safely with Covid. Things don't need to close in a desperate way unless things get desperate, which is always a possibility while people are having dinner parties and holiday gatherings. But beach rentals and more exclusive outdoor things are very possible to do, and we'll keep looking at those.

Fiscal situation

I've been working hard for years to right the stupidity of my youth and the debt we were in around the time we were married. This year has been the strangest of all. If you were able to stay employed this year, the odds are good that there were less things for you to spend money on. I had no meaningful interruption in income, fortunately, and with our big trips cancelled, got a bunch of money back that I had considered spent. On top of that, well, we just didn't do stuff, and we didn't really buy much stuff. For the first time in my entire life, I actually have more than three months of savings. A decade ago I had over $30k of debt on credit cards and no savings. It took a long time to fix that.

And if that weren't enough, we just refinanced the house, after living in it only three years. Under normal circumstances, that's not something that people do, but when the interest rates bottom out the way they have, it would have been irresponsible not to. Going from 3.999% to 2.875% is basically like finding a few hundred dollars more per month, and the "pay back" period, to compensate for the costs of the loan, is about nine months. This draws a lot of attention to why home ownership is such an important aspect of American life, and why it creates disparity that is problematic. If you rent, you get nothing back for that expense other than a roof over your head. If you own property, you get the roof and (most of the time) it appreciates in value that you'll get back. This seems like an inherently broken system to me, especially when you can further reduce your cost in a time of economic distress.

On the plus side, I've been able to do more charitable giving this year than I ever have. I've typically preferred to give to organizations that meet needs, but this year I've given to a broader range, including civil rights organizations and museums and such. Vetting non-profits is a lot easier than it used to be, too, thanks to sites like Charity Navigator.

This year being what it is, we couldn't escape completely unscathed. Diana was in a car accident the day before Christmas Eve, and now we're having to consider buying another car, seven months earlier than planned. Her Nissan Leaf was up for a three-year lease in August, and so we expected to save our pennies in those months to put down a reasonable amount for its replacement. Not sure yet how that's going to play out, because we haven't officially received the "total loss" declaration. We may try to just have one car for awhile.

World outlook

As if the pandemic wasn't enough, we saw extraordinary attention brought to the fact that there are two Americas, and how you are treated by society has a lot to do with the color of your skin. This year I observed presumably intelligent white people proclaim that systemic racism is not a thing. As is the case with a great many things in the world, you can observe with math that this racism is real, and history is pretty clear about why and how it persists.

If that weren't enough, the same people who refuse to see how society has rigged its systems against people of color now believe, with no evidence at all, that the election was rigged against Donald Trump. Then you can pile on the irony that his party is the one that has been persistently trying to suppress voters for decades. They're the same people who think that climate change, another observable fact, isn't real, and then they extended this rage against science toward the pandemic. "It'll just disappear," their dear leader said. These folks can't even see that they supported a racist.

The spread of willful ignorance and war against expertise and experience is one that concerns me a great deal. That people can be manipulated into thinking that experienced experts are the enemy, or valued the same way that anyone with an opinion and an Internet connection is, scares the shit out of me. That 74 million people could vote for a person that followed the same pattern as history's most successful fascists is not encouraging. Again, this pattern is observable fact. And to write it off as "both sides are bad," that tired moral equivalence argument... how do you even get there?

My generation was supposed to right this ship, after our parents' generation showed little follow through with the civil rights movement. We basically got a Black president elected and called it a day. The younger generations show promise, but then you get these stories of entitled white rich kids slinging the "N word" like 8-year-olds making fart noises. It's hard to feel good about where we're headed.

The thing is, I can't live a life of pessimism, because that would be exhausting. If I am to point to the lessons of history, then I am forced to accept that things do improve, even if the rate of positive change is slow and there are setbacks. The old thing about only knowing happiness by way of pain rings true. It's hard to say what "normal" will look like, but vaccines, a boringly typical president and hopefully some real change toward reconciling America's original sin will restore some amount of sanity to the world.

What will I do? I'll stay involved. I'll keep donating to the organizations forcing change. I'll do my part to promote diversity and inclusion. I'll shine whatever light I can on the people who move the world forward.

But am I happy?

I'm not sure how I can arrive at a concrete answer to this question given everything I've taken inventory on, but the answer might be mostly "yes." As I discovered last year, a lot of the time, I was dealing with anxiety, and you can multiply that several times over this year, but being anxious and being happy are not mutually exclusive. The crazy thing is just how high the highs are, and ditto for the lows.

As I mentioned up front, this year took a lot out of us in a lot of different ways, well beyond the narrative here. It has been a long time since I felt the world took more than I gave. I think the only reason that I can call it a net win is because most of it is behind us. The transition to a new year is largely symbolic, but I can't think of any time in recent history that we're in more dire need of symbolic change. We just need to get through the next six months or so, and hope that others play along.

The 2020 Playlist

posted by Jeff | Wednesday, December 30, 2020, 3:26 PM | comments: 0

In what was otherwise a fairly terrible year, we did have a solid year for music. This year's playlist is not as long as others, but it isn't propped up by musicals, and we finally had entire albums that were good.

First off, yes, I copypasta'd Sofi Tukker's "Purple Hat" from last year, because as the year began, I just wasn't done with this song. Also, I might have a grade school crush on Sophie. When Covid hit, they committed to live streaming DJ sets every day, which they did for most of the year, and have since turned it over to various guest DJ's. But they also released "House Arrest," which became something of an anthem for a pandemic:

I decided not to leave my house and go outside
I held myself sweetly, made myself a lullaby
This won't last forever, treat your sadness with a smile
We can't have what's next 'til we hang inside it for a while

This is house arrest...

Meanwhile, The Naked And Famous, still one of my favorite bands, released Recover. It didn't grab me at first, but then I recall that their first album didn't either, and now it's one of my favorites of all time. Recover grew on me, and while it's not my favorite of the four to date, I dig it. I just wanted it to have more noise, which they tend to have less of as they become better song writers. The song "Come As You Are" is a wonderful, chill tune that puts me at ease every time I hear it.

Grouplove released Healer this year, and it unfortunately did not really grab me the way their previous albums did. But the first single, "Deleter," came at a time when I was completely disappointed with the people in the world (and my world) that we designate as leaders. Talk about the right song for the right time! I wish I could say the same for the Alanis Morissette album, which doesn't really stand out in any particular way. It's repetitive and down. I included "Smiling" in the list because it reminds me vaguely of "Uninvited" or "Still."

There was a time when I wondered if The Black Keys were just one of those radio-friendly rock bands that could keep churning out hits, but I don't even care now. "Let's Rock" is one of the best rock albums I've heard in a very long time. It's so good. I haven't really been much of a guitar-driven rock guy in a long time, but this album is a masterpiece.

The big surprise album for me was Missio's Can You Feel The Sun. The title track is just fantastic, maybe the best song this year. I'm also fond of "Vagabond" and several others. I investigated the album when the title single started playing on AltNation, and was surprised, because this is the "Middle Fingers" band. Not that that wasn't a good song, it just felt like a novelty. But they're the real deal, this is a great album.

The year had a number of predictable returners, like Billie Eilish. She's one of those people I recognize as a great talent, even if most of her songs aren't really my thing. Glass Animals is another one that surprises me, with three songs this year. AJR makes big radio hits at least a few times a year. I'm super excited about what beabadoobee might be. "Care" is a song that reminds me a lot of a cross of Juliana Hatfield and Liz Phair, and she looks amazing as this tiny guitar shredding woman. I'm very intrigued by Paris Jackson, whose first song is pretty good, and nothing like anything her late father ever made. Next year, I'm looking forward to the new Foo Fighters album, because the first single, "Shame Shame" is really good. Dave Grohl is gonna keep making music until he can't.

I also had to throw in the title theme from The Mandalorian. What a cool composition that is. I mean, who thinks to combine a plastic recorder with electronic elements and a full orchestra, and it still sounds like Star Wars? It's brilliant.

Of course, it's worth noting that music was a big deal for me this year, as I built my own music cloud service, and I did 21 hours of radio shows on PRX. I listened a lot this year.

I'm not sure what to do next with POP Forums

posted by Jeff | Tuesday, December 29, 2020, 12:25 AM | comments: 0

This has been a big year for me in terms of writing codez, and that's serious since I don't do it for a living at the moment (I'm manager, not maker, these days). I created a whole lot of stuff, and now that I'm coming up for a breath, the question is, what do I do with POP Forums next?

The goals in the last year or two were all exciting to meet. I wanted to make sure I could scale it out and up to handle most any traffic, not because I needed to, but I wanted to see if I could. I have no idea what the upper limit is, because I don't have the resources (or expertise) to load test it to the breaking point. I wanted to get it entirely on .NET Core so I could run it all on Linux services, because it's cheaper. I wanted to knock out some simple features that had been on the backlog for a bit. I wanted it to be current on all the packages. It's so damn fast and it generally works pretty well.

Now what? My issue is that I don't like that it still depends on jQuery on the front-end. I'm also not crazy about committing to any of the typical front-end frameworks because a forum has to be as easy for machines to index as possible to keep your Google juice in tact, and turning it into an "application" with dynamically loaded content could end badly. If I was just interested in eliminating jQuery and using vanilla Javascript, that's actually not a huge lift. I could go there, and maybe that's what I should really go after.

But there's something to be said for the template and data binding magic that you get with the frameworks. A version or two ago of the forums, I converted the admin area to use Vue.js, and once I started to "get it," I really enjoyed building it out. It has some quirks, but it's such a low-usage part of the app that I can live with the weirdness. What felt particularly good about that endeavor is that the whole admin "app" lives in two big old files, so other than some basic parsing, I'm not compiling and packing a hundred different files. I'm not sure why this triggers me, but it does. I hate when you create a project with these frameworks and end up with 30,000+ files on your computer. Still, I would overlook that if you could use Vue as little component fragments all over the place.

Templating is something you can definitely swing yourself with vanilla JS, too, but it sure feels like reinventing the wheel. I've experimented with that before, and it's not the worst thing ever. I just need to brush up on the "right" way to structure things, because I still write script like it's 1999. I haven't even gone particularly deep on TypeScript, when maybe I should.

Of course, after building MLocker, my personal music service, now I'm tempted to go deeper with Blazor. Yeah, there's an up-front download cost, which in practical terms looks like it's under 2 MB for most real conditions, but that's not really the big deal that I think it is. And from a search engine perspective, it's stupid easy to render pages on the server with the same components that run in the browser. It's hard for me to not look deeper into that. I could end up with less Javascript instead of more.

I'm sure I'll think of something and pick a direction.

Christmas crash curse

posted by Jeff | Thursday, December 24, 2020, 5:01 PM | comments: 0

Diana was in a car accident last night, because 2020 couldn't leave well enough alone. She was driving home from work around 11:40, on a road with relatively little traffic that time of night, when a very young girl traveling from the opposite direction turned left and tagged the back left of her car hard. She spun counter-clockwise another three car lengths past the start of the median. Side curtain airbag deployed and her arm is probably going to get colorful today, but she's otherwise OK. The wheel bowed out pretty hard, with damage to the rear right door, fender and bumper, and I've gotta think that the frame took a hard enough hit to sustain damage. I'm not sure how the battery modules are mounted in the 2nd generation Leaf, so it's not clear to me if it was damaged or not. I'm fairly certain whatever emergency disconnect there is was triggered, because the car was quite dead.

I got Simon out of bed and we went to wait for her. Nissan roadside assistant was pretty good about getting a truck out there, but there's a weird thing where the Orange County Sheriffs don't do accident reports in this case, Florida Highway Patrol does. They were busy with another accident down the road. The OCSO guy eventually told us to exchange information and self-report the crash online, so at the moment, no one has been cited. I don't see how Diana could be at fault from the sheer physics involved, but the wife of the guy who helped her out of the car did apparently make a statement to the OCSO officer.

The other driver said she had a green arrow to turn, which I doubt, because for her to hit with that kind of force, she would not have been turning from a stop, and without being in the lane, she wouldn't get the arrow. Florida (and maybe other places, I don't know) likes to do blinking yellow arrows, which I hate, because especially if you're from other states (Ohio at least, seven years ago), that's not a thing. You get a solid green and you turn left only if it's clear to do so. These arrows are suggestive in a way that seems counterintuitive.

This is pretty much my worst anxiety scenario, because when Diana texts me to say she's leaving work, I count the minutes, and have played out the whole thing in my head where she's late and I get a visit from the police about an accident. That's irrational, because I imagine there's more risk of accident during the day, but here we are. Hopefully we'll get news on the car soon, but because Leaf's depreciate so quickly, and who knows what has to be fixed because it's electric, I wouldn't be surprised if it ended up being totaled. The car is only worth about $13k if it's perfect. It's a lease, up this August, so it's not our problem long-term no matter what. If we have to replace it, that throws a wrench in my 2021 financial planning before it even begins. I was hoping to pay off the other car, then just have one payment, but that was supposed to happen over six months.

A few hours short of nine years ago, on Christmas Eve 2011, we were rear-ended by a woman in Bristol, Tennessee, on the way to visit my in-laws (which is why I always get the car rental coverage now). That feels like a very strange coincidence. That car ended up being totaled. If we go back a few more years, Diana and I followed a drunk driver on Christmas day, 2008, as he bounced off of other cars and eventually plowed into an off-ramp guardrail on I-71 in Cleveland. Again, it feels like a pattern, or a curse, when it comes to driving near Christmas.

Relearning so much video stuff

posted by Jeff | Thursday, December 24, 2020, 2:26 PM | comments: 0

If rediscovering video production has revealed anything, it's that I don't remember how to use the tools as well as I used to. It's funny how the composition skills stick with you, and don't need to change much over time, but tools, they change. And you know what's funny? Having learned to edit with tape, I was always so careful to make sure I shot coverage of everything I needed, and kind of edited in my head as I was shooting. Now, on the Internet, no one even cares if you have jump cuts, but it's easier than ever, because computers, to not have jump cuts.

Anyway, I'm still getting to know the C200 a bit, and the compromises with it aren't really as scary as I though they were since the release of the C70. For what I shoot, it would probably be better to have the 10-bit recording as the normal thing, but if I want to do serious shooting for a short film, being able to record raw and convert to 10-bit 4:2:2 after exposure correction. What I'm learning now is how to get good stuff without noise, and over exposing the highlights by as much as a stop seems to be a real win. If I did shoot raw, I could be totally sloppy.

The thing I'm really liking is that the face priority auto-focus is nothing short of amazing for this goofy standup work I've been doing. My only complaint, and it's really subtle, is that sometimes I can see a little bit of lens breathing, since my lenses are photography lenses. Most people don't know what that even is, fortunately. I imagine that if I do shoot a "film," I'll want to invest in some good manual cinema lenses that don't do that.

I've had to relearn lighting a bit too, now that everything is LED based. Relearn might be too strong a word, and instead I should call it discovery. It's so crazy easy to get a "look" with LED lights, because controlling their output is something you can dial in, instead of using physical means to control the output of the light. It's easier than ever to get that soft three-point lighting, and I have relatively inexpensive lights.

My audio game isn't great. I have some inexpensive Shure SM11 lavaliers that have been made for decades (pretty sure we had them in college). They're super durable, but they pick up too much ambient noise. I really need a fancy long shotgun mic, but need to experiment with the one I bought with my first pro camera, an Audio-Technica AT875. I know it sounds great for ambient sound or people in front of you, but I've never tried it in a standup arrangement.

The software is where I really feel like I'm restarting a bit. Adobe Premier Pro feels downright unfamiliar, and After Effects, which I loved when I first started working with it (in 1998!) fundamentally works the same, but can do way more. It's funny too how rendering simple motion graphics at 4K means that render times are still not much faster than they were with NTSC 20 years ago. The thing that has definitely improved is that there are plugins and features now that help compensate for crappy acquisition, like room echo.

I have to keep in mind that Hollywood professionals are posting stuff online that is suboptimal from a technical standpoint but often interesting (see John Krasisnki, Brie Larson and Josh Gad, for example), so content is what really matters. But I want to get the technical part right for the silly things that I make.

Star Wars finally found its potential

posted by Jeff | Monday, December 21, 2020, 4:30 PM | comments: 0

One of the most remarkable things about Star Wars is its cross-generational appeal. As a member of Generation-X, we probably have the deepest attachment to it. The original movies debuted when we were kids, and the toys were insane and comprehensive. I didn't have any of them (we were GI Joe and Transformers kids), but my step-brothers had pretty much all the Star Wars things.

When the prequel trilogy started, we were blown away at first. We managed to overlook the terrible dialog and acting just because it was so satisfying to finally get the Darth Vader origin story. By the time it wrapped with "Vader-Nooooooooo," and the goofy Luke-and-Leia-are-born-while-Padme-dies B-movie style, it felt good to see it through. As time passed though, and a hundred different variations of the originals were released (VHS, VHS Special Edition, DVD, Blu-Ray, streaming), we started to realize that the prequels were kind of bad. Terrible dialog, a political fascist subplot that people didn't get, a childish crush relationship story... it's a miracle that Natalie Portman's career survived any of it.

The sequel trilogy was definitely better. Even though episode 7 felt familiar in plot, it was at least self-aware. ("How do we blow it up? There's always a way to do that.") It didn't feel like Lucasfilm had a solid plan to end the Skywalker saga, and the changing directors and such felt like no one was really steering the ship. I don't blame JJ Abrams... he made it pretty clear that he was honored to start the new series, but got tired of being the reboot/sequel guy. They tapped him to finish it anyway. The sequels didn't have a tight story, but they did understand what it meant to advance the story in service of the fans and existing canon. There was a lot of joy in those movies. I mean, we named our kittens Finn and Poe.

The one-off side stories showed promise though. Solo was just OK, but I thought Rogue One was outstanding. The sequels gave a lot of reason and space to fill in some gaps, in fact, the way Rogue One did between episodes 3 and 4. The universe is so expansive that there's so much to explore in between, and Disney's larger content strategy, to emphasize streaming, where the people are, needed a seed. That seed was The Mandalorian.

The intention of the show was likely to take one of their most valuable properties and give people a reason to subscribe, which it definitely did. What may or may not have been by design is the discovery that Star Wars works really well as a serialized TV show. And just as they've found a ton of opportunities to tell more Marvel stories, the potential for Star Wars is equally huge. There was already a precedent for this, with the animated Clone Wars show, and it was pretty good.

I'm really looking forward to more Mando, as well as Ahsoka and The Book of Boba Fett.

Back to in-person school

posted by Jeff | Sunday, December 20, 2020, 11:44 PM | comments: 0

Simon made it to the holiday break with solid grades from remote learning, but to say it was a struggle doesn't quite capture it. After a lot of consideration, we decided he should return to face-to-face school for the spring semester.

The first step in making the decision was to consider where the science was. As is the case with a lot of the things about the pandemic that are counterintuitive, elementary school in-person is relatively low risk. Dr. Fauci is pretty confident about it, and what we've seen in our district follows the science and best practices. Classes essentially have their own bubbles that never interact, the kids aren't in close proximity, and importantly, when there have been cases from kids or teachers, none have spread within the school community. They've done an exceptionally great job tracing those situations. I wish they would do some kind of periodic testing, but they don't have the money for that.

If the remote learning was easy and successful, obviously we would just keep him home, because it's certainly more convenient in the way that remote work is. However, Simon needs a lot of attention and direction, which means that Diana essentially has to be the teacher's aide at all times. It's also difficult to really offer the additional help that his IEP requires. The technology itself causes meltdowns when it doesn't work, and they're really hard to recover from. Missing something because of a dropped call or garbled audio sets him off in the worst possible way. The thing that I worry about the most though is that these are the years when he has to develop the coping skills to adjust for his unique wiring, the thing that helps people on the autism spectrum operate in the neuro-typical world. He's just not having those experiences, and his maturity is behind by a few years.

If a case does surface in his class, they keep everyone remote for more than a week, and since it's a blended class of remote and in-person, he can roll from home if necessary. In our district, you can switch from in-school to remote at any time, but not the other way around. Granted, it's hard to say what will happen in January considering things are getting progressively worse in terms of infections, hospitalizations and death, but there are institutions and businesses that have figured out how to do this while mitigating the risks. I mean, the big theme parks are even relatively safe at this point, probably more than your average grocery store.

Normally, in school, Simon would have two teachers, an ESE teacher in the room part-time, a staffing specialist and counselor all working together on his behalf, but this doesn't translate well to the remote scenario. The bigger problem is that, for whatever reason, he doesn't really respect us to help him learn, which is endlessly frustrating for everyone. I can't explain why, because Diana is there to see precisely how the material is being delivered, so it's not like she's trying to help with common core math being sent home for homework. I think it's just the parent dynamic that every kid feels out, looking to test the boundaries but also count on us for rescues when things are difficult or uncomfortable.

We'll see how it goes the first week of January. I'm relatively comfortable with the risk, and hopefully teachers and staff get vaccinated sooner than later. I just want the kid to be led by professional educators. I hope that he can wear a mask all day, because with his sensory issues, I worry that it will be difficult.

Maybe I just needed something specific to look forward to

posted by Jeff | Thursday, December 17, 2020, 9:16 PM | comments: 0

As if things weren't weird already, we're simultaneously seeing the rollout of vaccines and the worst rates of death and hospitalization yet. It's a strange mix of optimism and dread. For me, I selfishly just wish I could get on a boat or a plane and leave the country for a bit. When contemplating the year, I realized that vacations are what keeps me sane. Any time I didn't have something on the calendar, I felt anxious.

I put something on the calendar.

We booked a beach rental for a few days, for a change in scenery. It's not quite leaving Florida, but with school still in session (funny how even now that limits our travel options), it's a chance to do some remote school and work from the beach, combined with the cathartic action of letting waves punish you. Just knowing that's happening has done wonders to reduce the non-specific anxiety I've had lately.

There's a lot of optimism about how maybe next fall will be normal-ish, but everything about the pandemic is not entirely predictable, which is part of the reason it makes everyone feel icky. Having some level of predictability, as well as the possibility to spontaneously do whatever, makes us feel safe and alive, respectively. Having neither is gross.

Navigating anxiety this year has been challenging, to say the least. I've been rolling with it periodically on and off for years, but this year has been particularly rough. I can't believe that I never thought to schedule certain events to help.

The acknowledgment of objective reality

posted by Jeff | Tuesday, December 15, 2020, 3:00 PM | comments: 0

As part of a desire to better understand my own biases, I've been thinking a lot about the differences between the Bush and Trump presidencies, with the only really common factor being that both ran as Republicans. Bush's legacy is that of strong leadership during a crisis, then leading us into a disastrous war on pretenses that were not true. I focus a lot on that, because while it's the biggest thing in that administration, it wasn't the only thing. When it was all said and done, we can say objectively that Iraq had no weapons of mass destruction. No one would debate that in 2008, or any time since, including George Bush himself.

The last few years have been wholly strange when it comes to objective reality, and this year in particular. Certainly this is a precedent set from the top, as Trump is still peddling the idea that there was widespread election fraud, and that's why he lost. The reality is that counting and basic math is still a universal truth, and there is no evidence of fraud. No matter how much you don't like the outcome, it doesn't change the reality.

The pandemic has unfortunately been an example of where rejecting objective reality has dire consequences. As someone recently put it, we're having the equivalent of a 9/11 every day in America, and the reason isn't because we don't understand how to mitigate spread of the disease, or do our best to balance economic damage with health safety. We've culturally decided that either the cost of lives is reasonable or we're not vulnerable enough to worry about it. We know that dinner parties are bad, but visiting Walt Disney World is fine, counterintuitive as that seems, but we ignore that reality and endure suboptimal economic and health outcomes. Again, it doesn't help that the guy in charge insisted masks were stupid and it would just go away one day.

I think we've been somewhat lucky that democracy has endured, and that patriotism still has at least some roots in doing what is right and moral, honoring the Constitution. Having different ideas about policy will always be a thing, but when we disagree about reality, mostly for the purpose of assigning power to those who have not earned it, that is a dangerous place we must avoid.

Oliver (2006-2020)

posted by Jeff | Monday, December 14, 2020, 12:00 PM | comments: 0

Today we said goodbye to Oliver, the last of the blended pride. When Diana moved in at the end of 2007, I had Cosmo, who was old and grumpy even then, and she had Emma, Gideon and Oliver, the youngest. Oliver was still a kitten then, about a year old. He never really matured, despite being really overweight at one point. He was kind of dumb, in fact, in a charming way. Never graceful, never really learned how to retract his claws when he was stuck to things, and mostly just wanted to be loved.

When Diana first moved in, Oliver wanted Cosmo's approval in the worst way, and he never stopped looking for it, right up to the day she died, five years later. He would seek the same attention from Emma, who was mostly as indifferent. In recent years, he would bow his head to her, she would lick him a few times, and then hiss at him. His real buddy was Gideon. Even though "Basement Cat" was generally larger, Oliver had no problem wrestling with him every chance he could get. They never really cuddled, except in the cross-country drives between Cleveland and Seattle. While he couldn't always get the close contact to cats, he had no problem getting it from his humans. He took an early interest in Simon, until Simon became mobile and had grabby hands, at least. He would routinely sit next to us, especially in the evenings. He was pretty reliably sleeping in one of our beds up to the end as well.

Oliver definitely missed Gideon, and my hope was that he would have a few years with the new kittens. They have been relentless in seeking his approval, especially Poe. Oliver assumed the role of grumpy old man, really up until the last month or so, when he started to tolerate Poe sleeping next to/partially on him.

I'll admit that Gideon was my favorite among Diana's cats, but Oliver was a reliable buddy. I liked to project the Up "Doug voice" on him because it seemed to suit him. He's been a family fixture for 13 years, since the day we decided to be a family. He loved being out in the patio, which is where I got to spend a little time napping with him yesterday.

Oliver had thyroid problems, and likely thyroid cancer, and maybe even lymphoma. There are all kinds of tests you could do to figure this out, but the endgame is pretty much the same. He hasn't been able to substantially eat and has been losing weight for four months. As fat as he used to be, it was sad to see him so skinny. It's tough to see him go so soon after Emma.

Oliver with baby Simon in March, 2010

The Prom obsession

posted by Jeff | Saturday, December 12, 2020, 10:52 PM | comments: 0

On our tenth anniversary last year, Diana and I saw The Prom on Broadway. It was one of the most surprising and wonderful things I had ever seen on stage, and this was in the same week that I saw the Harry Potter play, Waitress with Shoshana Bean as Jenna, and an enormous King Kong puppet. I bought the soundtrack that night and listened to it obsessively.

More than a year and a half later, with a little Covid delay in shooting, they got the movie version on Netflix, and of course we watched it the first night. It's musically 90% the same, with more dialog. It's not better or worse than the stage show, it's just different. "Unruly Heart" lands just as effectively. I struggled with the idea that the original cast, which workshopped and did that show out-of-town and in New York, had nothing to do with the movie. I've mostly gotten over that because it's great that the story is being told to a broader audience. Sure, it's full of gooey optimism and rainbows, but fuck, if we need anything this year, it's that. The film cast has mostly won me over. Streep and Kidman are as legit as ever.

They did chicken out a little on some of the lyrics early in the show, presumably because they might offend some people. They also went deeper on Barry's history, which made the movie longer, but I'm not sure it adds much. They also dropped most of "Acceptance Song," which is the weakest song in the show, but it had one of Barry's better gags in it.

I miss going to shows. This one is scheduled to come to town, eventually. The tours keep rebooking to later and later dates. Maybe next summer we'll get to seem them return.

Pros and cons of company sizes

posted by Jeff | Thursday, December 10, 2020, 12:00 PM | comments: 0

I had the realization today in a meeting that I work for the biggest company I've seen in about eight years. I was in a meeting where I didn't recognize most of the people. Technically SeaWorld Entertainment was bigger, but I was a contractor and IT/software isn't the business, so it's not a good comparison. I had a recent Facebook memory that reminded me of another job for a very small company, and what a difference in situation that was.

There are a lot of exciting things that come with a small company, not the least of which is that the scope of your impact is generally pretty huge. If you work with 10 people or less, what you do has very apparent daily consequence. You might be trying to validate a business or find product-market fit. If you get lucky, you might even be able to grow it into something that involves a big pay day.

Unfortunately there are a lot of negatives to this as well. Sometimes the small business is an experiment that will end in failure. There's nowhere to go in terms of promotion and pay raises. You may work with owners or founders who are megalomaniacs, or more likely, good idea people who are terrible at operating a business. Sometimes the business just loses focus and bets big on a side endeavor that tanks the company. In the software business, there's just a lot more risk.

Big companies can be a great place to work, often for the contrasting reasons that you would expect. There is often a great deal of flexibility to explore and do what you're interested in, and promotions are a thing. You can even change disciplines completely, in some cases (I did this at Microsoft). You're rarely the smartest person in the room, and surrounded by people you can learn from. There's some amount of safety and stability as well, and often better benefits.

The dark side of Gigantocorp is that it could be slow, dumb and bureaucratic. If it's poorly organized, you can be more number than person, and you don't have the opportunity to be impactful. I can be outright difficult to make things better and you don't know who to go to when you have something that could move everything forward. You're bound to processes that create little to no value.

Of course, these are all generalizations. I can't say that I inherently prefer one over the other, and it's interesting how the experiences in both inform working in both. Right now I'm in the "big and growing but not giant" category, which is exciting and new territory for me. I mercifully only had to hire two people this year (what are the odds they both came from PA?), so mostly I'm rolling in an establishment instead of building everything from scratch.

The energy sweet spot

posted by Jeff | Tuesday, December 8, 2020, 9:39 PM | comments: 0

One of my hobbies (don't be a hater) is obsessively tracking the way we generate and use electricity. I'm fascinated with the potential of renewables and the way you can easily measure everything. There are few technological, or even economic reasons that we can't get there quickly for a significant portion of our energy consumption. In the mean time, I can do my part at home.

The sweet spot for weather and such, in Central Florida, is surprisingly narrow for us. As it turns out, a large, two-story house is not easy to keep cool (or warm), even with modern construction standards. We weren't in the house for very long when that became obvious. It was always the plan to put solar on it, but we ended up having to wait for about six months because the money for that was tied up in the previous house when the first buyer bailed.

We've got about two years and change of data now, though it was slightly thrown off by an unusually warm winter last year. Some observations:

  • Spring is the best time of year for us because the days are long enough and dry enough that we over-produce many days. You get a lot of "perfect curve" days with no clouds. March to May this year, we were covering more than 85% of our energy usage with solar. Mind you, this was at the start of the pandemic, so we weren't driving our electric cars anywhere.
  • The days are longer in the summer, but because we're in the weather convergence zone, the energy and moisture from the coasts meets up and causes rain most afternoons, so July and August are not our best production months.
  • If we both commute, we "burn" about 200 kWh a month on the cars. I'm remote regardless, so in practice now we'd likely use at most 100 kWh for driving.
  • Our average total monthly consumption is 1,760 kWh, our average generation is 1,090 kWh, which is an average of $141 worth of power each month. I'm not sure if that's good for a 10 kW system, but our roof angles are not entirely ideal.
  • After the federal tax credits, the solar system was about $17k, which puts our "pay back' period, the time required to generate enough electricity to pay for the installation, at about 10 years even. That's disappointing, because the early estimates were more like 8.5 years. Still, with an expected lifespan of 30 years, that's a lot of free power.
  • Heat pumps are surprisingly efficient. Our blowers have traditional electric "toaster" coils, but they're never used. It seems so obvious that you can essentially run the air conditioning heat exchange in reverse. Apparently they work down to 30 degrees Fahrenheit!

The sweet spot is when the weather doesn't require a lot of cooling or heat, and you're generating enough to cover your usage. The spring is pretty good for that, with lots of days where we run the air maybe an hour or two. We can keep the windows open and it's not humid. We get a few days like this in November before it seems like we have to close up and turn the heat on. That's where we are this week.

Deeply understanding yourself is really hard

posted by Jeff | Tuesday, December 8, 2020, 12:00 PM | comments: 0

There was an opinion piece in The Times about a woman, 27, who officially received an autism diagnosis, with a side of ADHD. She's clearly found life to be more challenging than I have, but I still relate, because as I've written before, I really want to know if ASD and ADHD are me. The answer is probably yes, but sometimes I just want it to be official.

When I look at my grades in high school, and especially college, some of the things that she describes would certainly help explain a lot. Even now, I look at my college grades and think, "How did I get to a place where I could write software for a living, and actually ship things?" Of course, that wasn't easy either. I remember periods of time at and Microsoft where my output wasn't great.

As if being 40-something wasn't reason enough to be constantly introspective, we have a pandemic where the things we may have done for leisure are less possible or impossible, so we've got time on our hands. I've learned a lot about the events and people that have shaped who I am, which has unfortunately led to feelings of anger, resent and sadness for things long in the past. I can objectively look at my step-father's role in my life as net-positive, but he did a lot of damage to my self-esteem, too. In fact, it's startling how often that "adults" tried to tear me down, with plenty of examples in college and during my first real job. One of the lasting themes is that far too many of the people who should have been there to lift me up did exactly the opposite.

There were also a lot of missed opportunities that would have improved my social development when I was in high school and college. I was so naive and incapable of understanding romantic relationship dynamics. Of course, many therapists ago, I learned that you need a good blueprint to work from, and children of divorced parents rarely have that. There was one woman in college that I "dated" (read: made-out with) for a couple of weeks, and she was pretty aggressive physically. I liked spending time with her, but she never really said, "It's OK for you to be aggressive back and let this go where it's probably going to go." That was a lesson that sophomore me needed, as I think it would have started me down a road of discovery around what I needed from relationships that didn't really happen until after I got divorced and was forced to think about it.

In more recent years, I've learned that it's OK to seek praise and recognition, to a degree. I can't tell you why I was put off by the idea of this, but maybe it's because being "known" can attract unwanted attention. Stalkers in my radio days were creepy, and then when I built web communities people wanted them to be about me instead of the content. After leading others for many years now, I understand that people want to be respected, valued and appreciated, and as much as I try to recognize the people I work with, I know now that I need some of that too. I can believe that I'm pretty good at what I do without being arrogant about it, and if no one acknowledges that, or tries to actively counter it, that's a little like being in the professional equivalent of a toxic relationship. Work can and should be challenging, but if it's hard, that's probably a symptom of people. I had to get into a good situation to really see that.

Maybe the hardest thing to understand is that I'm parenting for the first and last time, and no one has ever parented my child. Every situation is unique, and while you can draw certain lessons from the experiences of others, no one has ever faced exactly the same scenario. To that end, one has to extend a little grace to yourself when you get it wrong or you're just overwhelmed or feeling defeated.

When I was younger, I never thought about understanding myself at all, I guess because when you're younger you don't have the wisdom yet to understand why it's important to how you exist in the world. Even now, I wish it were easier.

Pandemic mitigation is counter-intuitive, but pretty well understood

posted by Jeff | Sunday, December 6, 2020, 10:38 PM | comments: 0

Diana went back to work today, for the first time in about nine months. The arts center is doing a series of outdoor events, so she'll be masked up on the front lawn of the facility, with people seated in little pods that are properly distanced. The decision to return to work is based on a lot of scientific advice that has accumulated over the last few months, which seems counter-intuitive if you compare to what we knew or assumed in March.

As a friend pointed out in one of our forums, the Japanese advice comes down to three simple "C" things: Avoid close contact, closed spaces and crowds. This simple advice really covers it in a succinct way that no American authorities have clearly expressed, and along with other cultural things, it certainly seems to be working for Japan. What that means is that a capacity-limited Walt Disney World is actually reasonably safe, as is an outdoor concert where people are forced to have lots of space apart. I'm sure it helps when there's strict enforcement of the rules, too.

You would think early on that small gatherings with family were a good idea, but it turns out they're a pretty terrible idea, and huge vectors for the spread of the disease. This is the part that's so counter-intuitive, because you wouldn't expect that having the grandparents over would be a high-risk activity. Of course, packing in a restaurant or bar has the expected results, and I'm not sure why that's so surprising.

The folks in the Dakotas who made it all political, masks and social distancing, are paying dearly for that right now. One in 800 people in North Dakota have died from Covid. That's not just out of infected people, that's the entire state population. I just don't understand the resistance to the relatively basic things that can help to keep the economy at least mostly functional and bodies out of refrigerated trucks.

Avoid close contact, closed spaces and crowds. You can certainly keep living your life with those restrictions.

If you need permission, maybe you shouldn't

posted by Jeff | Saturday, December 5, 2020, 9:22 PM | comments: 0

A lot has been written about the pervasiveness of racism in America this year. One of the more obvious things to me was the observation that, for the better part of a decade or two, racism existed, but it was largely absent from polite conversation. It was occurring, but relegated to the shadows. Certainly, electing a black president had a part in that (and likely a part in agitating it in said shadows). It seemed to get worse, but why?

I probably don't have to explain that when a man enters politics and uses his platform to declare that a man, a president no less, is not American, for little reason other than he's black and knows the sentiment will resonate with certain people, it normalizes the racism. Then he runs for president and wins, along the way framing black and brown people as gang members, drug dealers and terrorists. Words matter, and in this case, a person with authority is giving people permission to be racist, in the open. If the president can be a racist, maybe it's OK for others to do the same.

When an authority figure like a president breaks other social conventions, it gives informal permission to people to do other things that are likely not to the benefit of our fellow humans. Look at the bizarre rejection of experts who have described ways to mitigate the pandemic. If the guy in the White House says it's all bullshit, well, then it gives me permission to reject that expertise as well. If he believes in whacked out conspiracy theories about the election, without evidence, then maybe it's OK for me to do the same.

It doesn't have to be that way. If we attempt to justify our own behavior by way of others, it's probably not right. There are countless social contracts that we engage in every day, like saying please and thank you, holding doors for others and not swearing in front of strangers or their children. If we see someone else rejecting those social contracts, even if they hold some authority, do we decide that it's OK to do the same? In most cases, no.

We know right from wrong. Someone else doing it wrong is not justification to do it wrong ourselves.

A case for cheap phones

posted by Jeff | Saturday, December 5, 2020, 8:35 PM | comments: 0

I scored a Pixel 4a (5G) for Diana this week, when I realized that her phone was three-years-old. Her battery life was getting shorter and technically it was out of the security update support range, even though she has still been getting updates. The thing is, the phone was only $350, and that's with 128 gigs of storage and 5G radios (which, as is the case in many places, isn't useful yet). I'll get another $45 in trade from her Pixel 2.

It's a remarkably good phone. The only two features it really doesn't have is wireless charging and some degree of waterproofing. The camera and image processing software is as good as anything on the market right now, including the iPhone 12. To Google and Apple's credit, their "regular" phones are not a grand ($700 and $800 respectively), but they're still not cheap. This goes back to the thing I bring up every year: Are the "top of the line" phones really worth hundreds more, or in this case, twice as much? Absolutely not. Even as a person who values the photography bits the most, it's not worth spending that much more. In fact, while it's subjective, much in the way that people debate Canon versus Sony color science in video cameras, I think Google's processing is still superior to Apple's, with a lot more dynamic range and not what I call "Best Buy demo TV" color saturation.

The Pixel 4a (both the 4G and 5G varieties) are also indicative of the poor product management happening at Google. For $350 they're selling a completely remarkable phone that doesn't necessarily have the most recent processor but it checks all the boxes you want: A great screen, a great camera and image processing, solid performance and great battery life. If I'm a Google product manager, I should be thinking, "I wonder if we can hit a $500 price point adding wireless charging and waterproofing." The only thing lagging then from the average Samsung or Apple phone at that point is a slower processor, for which most humans will never detect a difference.

(Sidebar: If you want to use Google Fi, which is awesome, especially when you're on wifi most of the time, you can get $400 off the newest Samsung phones, too. We've been on Fi for years, and currently spend about $40/month for two lines. They use the T-Mobile-Sprint-US Cellular networks, so coverage is solid.)

I upgraded my Pixel 2 to a 4 a year ago, which ended up being about $300 after credits. That was more than I wanted to spend, and I didn't need it, but it was appealing because of the camera updates. Unfortunately, this is the one and only phone they've made that uses face unlocking, which is sucks in a world where you have to wear masks in public. They went back to the fingerprint readers in the 4a and the 5, as they should have. It's still a good phone aside from the unlocking, but I would consider upgrading to a 5 if they offered the right credits. I'm ending most days at 30-40% battery. I value the wireless charging, and I do bring the phone into pools and the ocean.

Wanting your struggle to matter

posted by Jeff | Thursday, December 3, 2020, 6:33 PM | comments: 0

If there's one thing that you could say about this year, it's that a lot of people, maybe most people, did not have what you would describe as a "good" year. Job losses, deaths in the family, financial hardship, parenting and school challenges, the psychological impact of isolation, racial injustice... history will not view 2020 as a good year.

The extent to which we're affected by the shit-show varies. On one hand, I think that people are generally empathetic to each other, but I feel like it's hard to outwardly express my own misery because it likely scores lower to someone else's. I'm sure I understand where this damage comes from for me, but I'm compelled to think about all of the things that reduce the self-perceived "severity" of my challenges. Life might be hard, but I have a good job and a place to live and no one is marginalizing me for being a straight white guy. My therapist (or any therapist) would tell you that this kind of value scoring around pain is toxic and stupid, but it doesn't make me any less likely to do it.

I think being 40-something already causes you to question your life and evaluate where you are and where you want to go, but throw in some life crises on top of that, that would happen whether there was a pandemic or not. I have struggled, in very painful ways, as a parent this year. Only Diana really understands where my head has been in that respect, because as you would expect, blogs and social media tell a partial story at best. Then layer in the mostly-virtual profile of your social scene, and a job where all of your "off-site" meetings are just more virtual meetings. It takes a toll on you.

My life may not seem difficult to someone else, but there are times when it really is to me. I want that to be OK.

100 weeks of open source software contributions

posted by Jeff | Wednesday, December 2, 2020, 5:40 PM | comments: 0

Late in 2018, I got into a groove updating and improving my very-long-running open source project, POP Forums. It was a huge refactoring project, updating the CSS framework, embracing Dapper for object mapping from the database, rewriting the admin area to use Vue.js, adding support for ElasticSearch and Azure Functions... it didn't look new, but the internals were massively different. As that effort went on, leading to a release that following May, I committed to making at least one contribution to OSS per week. Having transitioned into more manager than maker, I wanted to keep some street cred, and frankly I still find the process and the learning to be fun. This week, I've contributed for 100 straight weeks!

I started to branch out a little, too. Last year I made a little library to break-out the external identity bits from the forums and .NET itself, with POP Identity. Early this summer, I finally put the code for my blog into the open source realm, not surprisingly called POP Blog, and added functionality to make it work as a podcast aggregator as well. I needed to get my old podcast off of 15-year-old code (and Windows), so it was a natural thing to do. And then, in a moment of temporary insanity and frustration with the direction of music services, I built MLocker, my personal music cloud service. I had a POP Forums release this year, too. I made a whole lot of free software this year!

Yeah, so I'm humble bragging a little, but I want to explain why I think it's important that we do this sort of thing.

  • On average, we take more than we give when it comes to open source. Most of us who code for a living work on things that are proprietary as it is, so it's hard to balance it out. I don't mind helping out.
  • For me personally, I wouldn't have a career if it weren't for the open source tools I've been able to use over the years. I feel somewhat obligated to give back. The scope doesn't matter... the smallest contributions help.
  • I get tired of hearing that the .NET open source community is not robust. I mean, the footprint on Github is huge, but this reputation persists. I'm here to say the reality is better than that.
  • Adopting stuff as it comes out creates the feedback loop necessary for rapid iteration and improvement. I mean, if I don't keep complaining that the Azure Functions emulator doesn't support v5, who will? 😀

I think we can still do a better job at participating in the community, but it has come a long way in a short period of time. I see far fewer issues logged that look like "IT DOESN'T WORK FIX IT FOR ME!" and more thoughtful, working-the-problem communication. I often say that software has become a practice of composition, and not so much one of algorithms and computer science. That can be true, while professionally we still do the work to improve our code and the code we consume.

Will I continue the streak? Maybe. It's not the worst habit to have. Try it yourself... maybe a month or two to start.

Giving Tuesday ideas

posted by Jeff | Tuesday, December 1, 2020, 12:01 AM | comments: 0

There was a report on the news tonight about how about 3 out of 4 charities are struggling this year, both in the amount of incoming donations and the demand for their services. This is hardly surprising when unemployment is around 7%, and worse regionally. It's 11% here in the Orlando area, and it peaked in May at 21%. It's not a good scene.

It's already been an unusual year for giving for me, because while I typically have some pet cause, I've found myself giving to civil rights organizations and professional associations, in addition to the usual non-profits. I really prefer giving to local organizations when possible, because it's easier to see the results, to help your community directly. I'm going to make some suggestions here, but I do think the closer to home, the better.

Feeding America has been on TV a lot in the last few months, because coupled with unemployment, uncertainty and the side effects of remote learning, a lot of families are having to choose between food and other bills. Of all the world's challenges, I still have a hard time believing that anyone can go hungry. This particular org has an incredible network and appears to be rated highly for transparency. The cool thing about their web site is that you can find local food banks and donate to them directly or get volunteering information. This might yield even better results, because in my case, the local charity is getting matching gifts from a car dealer, so it's like donating double!

Coats For Kids (Cleveland) has been around forever, and the local radio and TV stations were always a part of their fundraising drives. It came to mind today as the North Coast is facing its first big snow storm of the year. It's an example of the very local kind of group where you can see direct impact. I saw it in action first hand when I went to Cleveland schools, when certain classmates received new coats.

Give Kids The World Village is closed, since putting the families of children with life-threatening illness together in a pandemic is obviously not workable. They had to let go of most of their staff as well. Eventually, the village will have to rehire its entire staff, work to engage and schedule volunteers and get back to something resembling a routine. I realize that this isn't an urgent need, but I do think it's an important cause, as it always has been to the amusement industry. They have served families from every state, and probably in your community.

I think it's worth giving to the ACLU this year, because we've seen the unfortunate weaponization of our very form of government to make sure that we are not, in fact, all equal under the law. We have an outgoing president who has pissed on the foundations of free speech and tried to use the courts as a means to enforce executive action that contradicts the law. This kind of thing goes unchecked if an organization like the ACLU isn't there to challenge it in the courts. Related, it's still a good idea to donate to organizations like and others that battle voter suppression, which will not stop just because another presidential election is behind us.

And finally, I've given to the Actor's Fund this year because extended members or our social circles currently have no industry to work for. This includes performers and technicians here in our area. It's not just limited to Broadway, because the tours are idle and regional facilities aren't operating either. The arts are too important to ignore the people who normally bring us the joy of live performance, from on and off stage.

These are just suggestions, of course. I think the main point is that a lot of people need help in many different ways, and if you can help, I hope you will. If you can't help financially, maybe there are ways that you can lend your talents to help in another way, as safely as possible in the pandemic.