The blog home of Jeff Putz

What if I went further down the lighting software rabbit hole?

posted by Jeff | Monday, October 14, 2024, 3:00 PM | comments: 0

My Code Camp talk about writing software for lighting is something that I've never really stopped thinking about. I'm starting to get more confident programming the MA3 console by coming up with various scenarios and trying to make what's in my head happen in real life. But "programming" lights is different from "coding" software that tells lights what to do. So when I'm setting up an effect or a series of cues, I'm thinking a lot about how that must be coded under all of that UI. The funny thing is that it routinely feels like the UI concepts were conceived by an object-oriented programmer, which makes me feel like there's a better UI approach that just hasn't been thought of.

I did some digging on the standards used for fixture definitions and such, and they're pretty straight forward, and easy to model in code because they have XSD's describing the schema. The thing that I keep coming back to is that this isn't nearly as hard as it looks, in terms of the engine and data structure to make things go. So it does come back to UI. There have been some attempts at this outside of the big names (MA, ETC, ChamSys, etc.), and they're all pretty bad. I am also not much of a designer, so I don't know that I could do better. The biggest thing is that the good stuff includes visualizers, taking into account how a show would actually look, as well as different approaches to adjusting curves and such to make effects go. The latter is really clumsy, in all of the things.

Still, if I were serious about this, I could get to a solid prototype to only do straight up theatrical style cue lists. In other words, an all-digital version of what boards did 20 years ago if they had internal memory. Well, except that it could control way more than dimmers. Also, I can't get off the idea of it being browser-based, so you could operate it from anything on the network with a browser.

If I could get that far along, then I could go further and think about effects and such. Is it a product? I dunno. It would have to be awfully compelling for anyone to buy it. The thing is, the MA consoles are literally made by hand in Germany (likely why the big ones cost $80k). I assume ETC makes theirs in the US, probably close to by hand. ChamSys is UK-based. There are lots of terrible knock-offs and even illegal clones made in China, which is unfortunate. But what about something well crafted that you can access from your iPad or laptop? (Technically, you can do this with the other products, but then you've spent all of that money on those products.) I dunno, thinking out loud. I need a project that I'm genuinely interested in.


Where are my advocates?

posted by Jeff | Monday, October 14, 2024, 1:30 PM | comments: 0

If there's one thing that being a parent has taught me, it's the importance of being an advocate for your kid. I don't mean that in the helicopter bubble-wrap sense of advocacy, but more in the realm of enabling your child and making sure that they understand (even when they "hate" you) that you've got their back. Certainly this isn't new information, because I saw it all of the time as a coach. That, and I got very "Papa Bear" when it came to looking out for "my" kids. This was probably multiplied by the unevenness with which girls athletics were given attention at the time. I have always been an advocate for groups of people who are not treated fairly or kindly.

Looking at this role of advocacy as an adult, I've understood for some time that my life has been largely absent of advocates. Years of therapy have put me mostly at peace with this, but sometimes I get reminders about it, and it makes me sad. The feelings are not along the lines of, "Why am I not valuable enough?" probably because I'm not transactional in my human interaction, and maybe because of autism. What I do feel is a sometimes overwhelming sense of disappointment. It's not usually healthy to compare your life to others, but when I see the typical kinds of advocacy that others have received, the disappointment runs high.

When I was in high school, our athletic director got me involved in a bunch of support roles for athletics, even though I could barely pick up a ball at the time. That saved my entire high school experience from being awful. I wish I could find a way to contact her and thank her. A guy who worked for the city cable TV office saw my interest in TV production and I credit him with wanting to go to college and start a career in the field. I didn't live with my dad, but he showed up to some of my school activities, and helped me sort out college.

Professionally, my first radio boss coached me into being a better "air personality," which, with the self-awareness I have now about myself at the time, had to be challenging. When I flipped to local government TV, I had no one looking out for me. Somehow folks were surprised when I moved on from that after three years. I had one boss in my transition to software that advocated for me, and I'm not even sure if the transition could have happened were it not for him. In the 20 years that followed, I haven't had any professional advocates that I've worked directly with.

In fact, I've had mostly the opposite. I had one boss that desperately wanted me to conform to his idea of technical leadership, which I found ineffective and slow, relative to my ability to deliver. Instead of leveraging my experience, he leaned on his own, which involved only one job ever. In another job, I had several leaders that insisted we take on a project that I insisted was unnecessary and high risk. They committed support for this, but turned on me when it didn't go well, much as I predicted. It wasn't until the last few years where I had a leader that genuinely advocated for me, but then he went to another job.

My greatest advocate ever is Diana. We disagree on things sometimes, but at the end of the day, she's my biggest cheerleader. (And to be fair, my closest romantic relationships have largely functioned this way as well.) Seeing her advocacy for me and everything and everyone that she cares about defines a model for how it should be. That probably makes the disappointment of not finding it elsewhere worse.

There is a positive outcome to this. It's made me realize how important it is that I look out for Simon and be his advocate. I feel like I often fall short of this, and have to do the "tough love" thing, but he's said things recently that imply he does in fact look up to me and, in the long run, we'll have a good relationship. I also feel like I'm more committed to the people who report to me, and it's vitally important that they feel respected, valued and appreciated. I probably don't remind them enough that I am thrilled with their outcomes.

Sometimes experiencing anti-patterns leads you to learn the right things.


Midlife... "noncontentness"

posted by Jeff | Friday, October 11, 2024, 5:36 PM | comments: 0

For as long as I can remember, people have made jokes about the classic midlife crisis. In psychology, it seems to be controversial about whether or not it actually exists, because sometimes people just do wacky stuff because of some other reason. It's not because they are a certain age and aware of their mortality, which is the definition most settle on. But real or not, there's no debating that some of us go through a period of time where we feel like we just can't be... content. I decided some years ago that being "happy" was not the same as being "content." The former implies some kind of constant euphoria, which is not a sustainable human condition. The latter, however, describes a state where you can stop and look around, and things are more OK than not. It's the contentment that I'm after.

A friend of mine texted me today about this very subject. Much of his "noncontentness" is rooted in some professional chaos, and he's moved to a different state and tried to find some way to decouple his career from his identity. I can deeply relate to this, but it's a hard thing to do. And while we both understand that our feelings are not at all rational, they're very hard to change. We keep looking for the thing that we pass that allows us to be content, and we don't know what it is.

We don't think the stereotypical behaviors are a risk, you know, the hookers and blow and Porsches. Actually, we're both very satisfied in our marriages. (We both may have punched above our weight class, we concede.) The actual behaviors are more about a general malaise and difficulty engaging with stuff. I don't want to confuse that with depression, because I know what that is. When I was depressed, I didn't feel joy, or really any deep emotion. Bupropion has largely fixed that. I just can't be at ease. It always feels like there's something that I'm trying to outrun or fix, which makes it awfully hard to be in the moment.

It isn't death itself, because I understand how relatively unimportant I am in the grand scheme of the universe. It has been around for billions of years, and will be around for billions more. But what I do between now and my end does matter, which is illogical if I understand my place in history. We humans are so desperate to find meaning. And even if we conclude that there ultimately is no meaning, my naive self believes that our time is best spent trying to make things a little better anyway, even if it's just for our offspring (or anyone who outlasts us).

But wisdom suggests that while individuals can make good decisions, groups of people do not. We still have war and famine, when we don't have to. So this brings you back around to what it is that each of us needs to feel content, and the impact that time has on that pursuit. Almost counterintuitively, I think that routine is the enemy of feeling content, and I say that as someone who routinely feels like retracting into my own little bubble. But I know that my most content times were moving to Seattle and Orlando, when I was in Europe, when I'm on a cruise, when I was making things... anything that feels different, even if it's uncomfortable. (Sounds like getting a tattoo.)

What definitely feels better is to hear from someone saying they're going through something similar. I wish people were more open about this sort of thing.


Hurricane Milton

posted by Jeff | Friday, October 11, 2024, 4:00 PM | comments: 0

Another storm in the books, and it went a lot like the other two that we've had to deal with here in the Orlando area. There was some variability in the predictions as far as wind speed goes, but it was in the slot that is typical for a so-called "direct hit." Measured wind speed at the airport peaked at 46 mph, gusting to 74. If you look back through the various storms that have swept through here in the last several decades, it's about what is expected relative to our position in the middle of the state. Hurricanes don't do well over land. Comparing to the previous storms, many of the same areas saw flooding, and older structures were damaged. Things could in theory be worse, but the most probable outcome is what we got each time. Ian was about the same, while Irma had slightly higher sustained winds.

Don't get me wrong, that constant sound is terrifying, and it feels like it keeps getting louder. But we didn't have any damage, just a tree in our back yard leaning a bit. We had zero water intrusion, not that we were doing anything specific to help it. The door seals, including those on the garage, are pretty effective. We did lose power for about a half-day, which is a first in our 11 years living down here. The Internet died an hour or two later when the cable company's battery backup died. We were able to keep lights on and food cold with our battery, which feeds all of the non-high-voltage stuff. That means no AC, water heater or stove, but we have propane backups to cook with. In our immediate area, it was the usual debris and standing water all over the place, and some larger, older trees down. New neighborhoods with new construction show just how important the revised 2002 building code is, and frankly the water management is much better as well. Our "dry" retention pond was not dry this time, for example.

Obviously other parts of the state didn't do as well. Tornadoes were spawned, almost two dozen, on the front-right side of the storm, which happened to be South Florida this time. Storm surge was expected to be much bigger than it was, especially in Tampa, but that came down to a "wobble" in the storm's eye replacement cycle 12 hours out of landfall, and weakening from a front coming from the north. The surge was still pretty bad further south, including down in Punta Gorda, where my in-laws live. They narrowly avoided surge, and lost some shingles, but otherwise things look OK. They evacuated to our house for a few days.

Even though logically I know and understand what the outcomes are likely to be, it's still a lot for your brain to deal with. What doesn't help is the way that the entire TV weather apparatus handles it. I'm not sure if it's that they don't understand the prediction science, or don't care, as long as people are watching them. The Internet, like everything stupid, amplifies the noise. Much was made about the fact that it was a category 5 storm at one point over the gulf, but that's virtually meaningless in terms of outcomes for where we live. It would have to be the worst 1 in 1,000 scenario for wind to get much higher than it was here. The legitimate concerns are about flooding, tornadoes in that front-right quadrant and stuff flying around or down power lines. That's never the focus inland, when it should be. It annoys me.

So that's three storms for us in our Orange County tenure. The center of each passed around what I would guess was 20 to 30 miles from us, though that matters less since it has less of the concentrated energy over land compared to water. Hopefully we're done for the season, but that's even harder to predict.


Getting my redundancy right in Azure

posted by Jeff | Tuesday, October 8, 2024, 2:30 PM | comments: 0

Last year I outlined the costs to keep the sites on the air. Things have changed a little for various reasons, and I've learned some things.

First off, the hosted forums are still running, remarkably, on a pair of B1 app service instances, for $24 a month total. That's nuts. Even though the ad revenue tends to be less, the PointBuzz forums run on that platform and tend to have more views. It's surprising because there are only 1.75 gigs of memory. Granted, this is the only thing running on that service. But it's deeply satisfying to see it. The lesser virtual CPU time does mean somewhat slower response times though, averaging around 100ms. That's certainly not bad, but I really like to see sub-50.

The other service has 14 sites running on it, including this blog, some placeholders, my music locker, the non-forum part of PointBuzz and all of CoasterBuzz. It was running on a pair of B2 instances, which includes 3.5 gigs of memory, and it was pretty regularly maxing those out. While not instant, the platform mostly replaced the broken instances, but users would still see some temporary slowness. Sometimes I'd get text alerts too, which is annoying. I did my best to optimize all of the code that streams images from the database, worried that was part of the issue, and did the same on the music locker. It didn't make much of a difference.

What I did notice is that in moments of instability, I'd scale it up to P0V3 instances, and the total memory would just sit completely level and predictable. Odd. I realize that the basic tiers, as described by Microsoft, aren't meant for "production loads," but relatively speaking, the sites aren't particularly heavy loads. P0V3 does have a full 4 gigs of memory, but I don't think half-gig would make that big of a difference. But still, the data was indisputable in terms of stability. See the graph below. Each line is memory usage by an instance. So erratic! Then, mid-Monday, you can see it levels off, and the two instances sit right in the 83% zone and don't move.

I don't know the reason for this. I would assume that something is configured differently in the basic instances compared to the newer v3 "premium" tier. Sure, they turn some features off, but I would think the basic container running infrastructure would be more or less the same. Again, the hosted forums have a similarly smooth usage pattern.

I sucked it up and subscribed for a year on the premium, which will cost about $16 more a month. It's not like I'm making money anyway, so might as well just be happy with the performance.


A hurricane guide for our distant friends

posted by Jeff | Sunday, October 6, 2024, 4:15 PM | comments: 0

Every time there's a hurricane in the neighborhood of Florida, friends check-in and express concern, which is appreciated. But aside from the fact that Florida is a huge state, it is not affected by weather in the same way from one end to the other. Specifically, living on the western edge of Orange County, we are about 60 miles from the Atlantic coast, and about 65 miles from the Gulf of Mexico. As you probably know, hurricanes don't persist very well over land.

The big storms are serious, so I don't want to trivialize them. But for reasons I'll explain, they are often more of an inconvenience than anything else where we live. This doesn't mean that they aren't stressful or have potential for damage, it's just that it's more in a zone of acceptable risk. The Saffir-Simpson scale, the categories, are in some ways kind of useless for us, because it only describes wind speed. Sure, strong winds can rip the roof off of a building that isn't built to more modern standards, but water is often the bigger problem. Storm surge, which is the process of sucking water off shore, and then pushing it back on shore at high levels, is the thing doing the most coastal damage. Also, inland areas prone to flooding are at risk when the storms dump a lot of rain quickly. The front right quadrant of the storm is also prone to spawning tornados, which as any Midwesterner knows can flatten an entire town. And anywhere, flying debris can pose a danger.

When Walt decided to build the theme parks, one of the reasons that he did it here, cheap land aside, is that the inland position is less of a concern compared to the coasts. And no, they don't disassemble Cinderella Castle in a storm. Hurricanes weaken over land, because they can't suck up energy from the warm water found in the ocean and gulf. Here in the OC, while there are anecdotal measurements of one-minute wind speed in excess of 150 mph, sustained wind at worst usually tops out in the 50's, maybe low 60's. Gusts can go higher. Charlie, in 2004, sustained winds in excess of 80 mph in Orlando, which as best I can tell is the worst that is has been.

The building code, revised in 2002, has a map that indicates what you have to build for to guard against flying debris, relative to 3-second sustained gusts, which are expected to be the maximums reached once in 700 years. We're in the area that requires building for 130 mph winds. Our house was built in 2017, and it was interesting to see all of the things they do differently here. The lower floor is concrete block for the outer walls, and the upper framing and roof is tied down through those walls to the foundation. There are different kinds of brackets and things securing the roof, and in our case, you could see where it was connected closer to the center of the house, through the interior walls. I don't know all of the engineering specifics, but it's fascinating.

We're not in a flood rated area. The nearest pond is about six feet below our foundation, and the lake three blocks away is probably 10 feet below us. Water has a lot of places to go before it could get into our house. There are building tweaks for blown water, too, in that the foundation has a lip that's two inches lower than the floor, where the blocks sit. That's because the blocks are porous, and as we learned at our previous house, water can blow in under them, at the end of the stucco layer.

All this to say, we don't evacuate from the middle of the state, but people from the coasts do come here. The noise gets intense around the house for a few hours, and then it's over. We bring in the patio furniture and wait it out. We've never lost power, probably because we have a battery that never gets used. If we did lose it, the solar and battery could power the house indefinitely, except for the 240V stuff like the AC, water heater and stove. We have propane as a backup for the grill and a camp burner. But we should have refrigeration, lights and Internet. People hoard gas and stuff, which I find odd because supply chain disruptions to the area are brief, if at all. That, and where are you going to drive to?

Irma's center passed about 20 miles west of us in 2017, coming from the south, and Ian passed about 20 miles south of us in 2022, coming from the west. People get hung up on the eye of the storm, but remember that it generally doesn't stay well formed over land. Yes, the eye wall has the fastest wind over water, but it's not even well defined over land. So when you see those "cone of uncertainty" maps and the line goes right over our house, it doesn't matter for us the way that it would for someone on the coast.

I wouldn't describe any of it as fun, but you just avoid the TV hyperbole and watch the NHC's forecast updates every six hours. We don't have the same risk profile, and history of damage, that the coasts do. The variability of the forecasts can be wild, too, up until the last 24 hours. For example, last night, Milton was expected to bring us wind up in the 50+ mph range. As of now, the models all say mid-30's, which is frankly no worse than a really long thunderstorm. But tomorrow the forecast could call for something worse. Or less.

We appreciate your concern, but it's better directed toward the coastal areas, for sure. If you want to make donations, local organizations in affected areas can probably help the most, and I imagine the American Red Cross is also a safe bet.


Review: Lenovo Legion Tower 7i Gen 8 (Windows PC)

posted by Jeff | Sunday, October 6, 2024, 3:02 PM | comments: 0

About five years ago, I built my own PC, for the first time in at least 15 years, having used Macs in the interim. Last year I went back to a Mac Mini on the desk, and then recently decided to go back to Windows for reasons I wrote about yesterday. Building a computer is definitely satisfying, though the idea that these machines still require big bulky rectangles is a little weird. This time around, I didn't really want to build, provided there were solid options using fairly conventional parts. Lenovo seemed to get solid reviews for their gaming computers in that sense, though the wisdom of the Internet said don't buy anything that isn't well discounted. And so the algorithm pointed me at this monster.

The Mac Mini was $1,600 early last year, which is pretty steep, though the exact same model is now $1,300. When I priced stuff out last year, I probably would have had to spend well over $2,000 for a PC that met my needs. I misjudged the Mac situation, but you can read that prior post for that. What I landed on from Lenovo was a configuration that included an Intel i9-14900KF CPU, the current top of the line in the Core series, and an RTX 4080 Super GPU, the second-best from Nvidia's consumer line. The GPU right now is generally going for around $1,100 by itself. Then pile in 32 gigs of RAM, a terabyte of storage, a water cooler for the CPU, an 850W power supply, and all kinds of rainbow lighting packed into a pretty nice case. The regular price was about $3,200, but it was on sale for $2,000, or $1,900 after a credit card rebate. That's for almost-top-of-the-line everything. And I didn't have to build it! There was some price parity between Macs and PC's for awhile, but the extra RAM and storage costs don't make sense. This was a no-brainer.

The port selection is just OK. There are two USB-A 2.0 slots on the front, as well as two USB-A 3.2 Gen 2 that can do the 10 Gbps. The back has a pair of 2.0, four 3.2 Gen 1, one 3.2 Gen 2 and a single USB-C 3.2 Gen 2. It's not Lenovo's fault that there are so many standards, but why the hell did they include all of the flavors? Not having any Thunderbolt 4 ports (40 Gbps), or any Type-C on the front, is pretty weird for a machine of this caliber. They're less necessary when everything is so baked in, but it's still weird. On the inside, there's only one slot available, in part because the gigantic video card takes up three, and there were two open M2 slots for SSD's, where I dropped in the 4 TB I already had, and a 2 TB to put games in. There were also some SATA cables inside, so I put in a "slow" old 4 TB SSD that I can use for backups. So yeah, I guess there are 11 TB of storage in that thing now. As a side note, cable management inside is well done, and there are no "razor blade" edges to the metal parts in the case.

The system drive that it came with benchmarks around 6,200 MB/s, which is pretty great, while the two others I put in exceed 7,000 MB/s. I can't even wrap my head around that when the fastest thing in the computer I built in 2019 was 1,800 MB/s. The RAM is rated for some speed, but reviewers say that some motherboard decisions limit it from its full potential. I doubt it matters much.

I have a pair of 27" 4K monitors from LG that are five years old. Sadly, one has a dark corner, and even ghosts a little from time to time, which is disappointing. I don't want to replace it until the cost of OLED panels come down. In any case, every game I've tried to run from Game Pass or my Steam library will run at a full 60 fps, the refresh rate of the monitor, with all settings turned to their highest and at the full native 4K resolution. I would expect nothing less for a video card that is ordinarily that expensive. Still, it's something to behold. There are scenes in The Last Of Us that look insanely real, like they're from a live-action movie. The Xbox Series X does an OK job at 3D rendering relative to its cost, but the 4080 Super is 2x-4x at everything. Of course, the video card also consumes more than twice the energy, too.

Setup was pretty easy. The included keyboard and mouse were junk, which is fine because I have my own. The software preloaded is minimal, though first to come off was some McAfee crap. Lenovo has a tool to tweak overclocking the CPU and GPU, which is kind of neat, as well as a utility to find stuff to update that doesn't always come through the Windows Update channel, like BIOS updates. This was recently important because of a fix from Intel for the newer CPU's that were ordering excessive voltage and in some cases damaging themselves. Beyond that, no junk, just a clean build of Windows.

The system runs pretty quietly when you're not gaming, but obviously the fans have to work harder when the GPU is putting off all of that heat. I think the GPU has three fans, plus three on the front of the system, two on top over the water cooler radiator, and one fan on the back, plus whatever is in the power supply. I'm surprised that it isn't louder when idling. Even when you are gaming, it's not distracting loud. It does put a lot of heat into my office, which already runs warm in the summer. Oh, and those fans all have LED's in them that you can set to be whatever color or rainbow sequence that you want. The video card and the water cooler also have the LED's. It's kind of obnoxious, but typical gamer stuff, I guess. On my last self-built machine in the mid-aughts, I had to add some LED strips to the inside, and blue was the only color.

Overall, I'm really impressed with Lenovo general design of the machine, lack of Thunderbolt not withstanding. It's well thought out. I'm very happy with the performance so far. I did some testing in Davinci Resolve, and editing is super smooth, even with multiple streams. Rider, which I use for coding, gets around a large solution easily enough. The whole package is an extraordinary value for the price, and I will enjoy again having access to games.


I went back to Windows on my desktop

posted by Jeff | Saturday, October 5, 2024, 8:50 PM | comments: 2

Last March, I did the math and research, and after being insanely satisfied with my then shiny new MacBook Pro with an M2 Pro, I decided to put a Mac Mini on my desk with the same processor. Initially I was pretty happy with this arrangement, but I started to get frustrated with video editing and the inability to really get into gaming. Let me explain what I got wrong.

Those M2 processors are crazy fast and energy efficient. The developer experience on the laptop has been excellent, despite having only 16 gigs of RAM and a half-terabyte of storage. Video editing was also relatively smooth, because the drive inside could read at about 3,000 MB/s, which is good enough for 4K. Sort of. Actually, it was more complicated than that. The Mini and the laptop have the same specs, it's just that one happens to have a screen and a keyboard wrapped around it. It is not practical to edit anything long-form when you have so little internal storage. But with Thunderbolt 4, you can reach a theoretical speed on external drives that matches what's inside. In practice, this ended up topping out around 2,700 MB/s, which is still OK. Where it gets slower is when you're editing across multiple angles and adding color adjustments or effects. While the experience wasn't bad, I wouldn't quite describe it as good. As soon as you started layering things, scrubbing around a timeline got janky. Exporting and rendering was still fast, but the disk bandwidth appeared to be a serious bottleneck. That's what I get for trivial testing before getting the Mini.

There's also the issue of gaming, of which I've done a lot this year. It's a great escape for me, in a year where I've really struggled with anxiety. It felt like there was starting to be some momentum toward Mac gaming, but it fizzled out. That, and so much of my experience revolves around Xbox Game Pass, which is not a thing on Macs, obviously. When I got the dual-screen laptop for the lighting rig, I was able to do some lighter gaming, and I started to think more that I should have stuck to Windows. The cost then would have been close to equal. The small box just felt a lot more elegant.

As it turns out, costs came down even more in the last year and a half. The algorithm pointed me at a deal that I just couldn't pass up. Lenovo sells a computer that's normally $3,200, with the current second-best video card available and the fastest current i9 Intel CPU. It's topped off with 32 gigs of RAM and a terabyte of storage, and mostly standard parts. It has room for two more SSD's as well. It was on sale, and after card rebates, only $1,900. The video card alone retails for $1,100. Heck, my laptop that's closing in on two years was $2,600. I just couldn't pass it up. I'll do a review after I've had it for awhile.

Two things immediately stand out. The same SSD that I had plugged into the Mini via Thunderbolt went from 2,700 MB/s to 7,000. Yeah, the same hardware is 2.5x faster when you connect it to the inside of the computer. It's more than 2x the speed of the internal drives on both of my M2 Pro machines. That's nuts. It's worth noting that the SSD I originally had for my previous desktop (which I swapped out for a faster one when I passed it to Simon), only did 1,800 MB/s. So the sheer speed on modern PC hardware is crazy. 

The other thing is that, as you would expect, the 3D performance is ridiculous. Set whatever game you have, you set it at the maximum quality settings and the native 4K resolution of the monitor, and it still exceeds 60 frames per second. And I can run all of the things from Xbox Game Pass, Steam and GOG. Just the other day I finished The Last Of Us, and I can't even believe some of those environments aren't real. It's just spectacular.

Should I have stayed with Windows last year? Probably. The cost of Macs get ridiculous when you require more storage inside, and that's on top of costs that are already high. The Mini was $1,600, which in retrospect was high given the lack of storage and RAM, but I figured the sheer processing power was worth it. It would be, if the storage wasn't an issue. The only problem is that building my own last year would have meant steeper prices, especially for the GPU. I've never bought a pre-built PC, ever, but this one is an exceptional value.


I really like coding for C# and .Net

posted by Jeff | Saturday, October 5, 2024, 3:06 PM | comments: 0

I recently did some refactoring on the forums to have background jobs, which do things like update the search index, send email, etc., take advantage of .Net's background job infrastructure. It didn't exist when I hacked together a solution way back in the aughts. The amount of code was cut in half (but offset by unit tests, which I couldn't easily do before). It's really a great example of how far that framework and library has come over the last two decades.

That app is fairly mature at this point, but when I do work on it, I really enjoy working with C#, the language, and .Net, the library and runtime. I think Microsoft made the right decision to open source it all some years ago, and commit to a regular release cadence. It keeps getting faster and more optimized. The language gets more clear and concise. Maybe it's just my long-term familiarity, but I feel like it's faster than ever to get what's in my head into working code.

I don't write code in my day job anymore, which is fine, because I think most people are better at it. But when I'm working with it as a hobby, maybe to maintain some street cred, it's really enjoyable.


Starfield and Fallout

posted by Jeff | Saturday, October 5, 2024, 12:55 AM | comments: 0

I have played a lot of video games this year, which is worthy of its own post. However, I recently finished Starfield, the huge RPG/shooter from Bethesda on Xbox and Windows. It was a huge release from the studio known for the Fallout and The Elder Scrolls. It was the first new "world" that they had put into a game since Fallout. The idea was that it included a massive universe with a zillion planets to explore. Early reviews were critical to say that most of the planets had a lot of nothing in them. I started to play it but didn't go very far. The Fallout TV series started to stream on Prime, and I was so enamored with it that I immediately started playing that.

Fallout 4 is a few years old, but like Starfield, it was available on Xbox Game Pass. That's what's so cool about the subscription, is that you can try a huge number of games without having to buy them, for basically the cost of one game per year. Even for someone like me that I would describe as a recreational player, that's a huge value. Fallout has been a franchise forever, the basic story being that people were sold space in underground vaults to wait out nuclear war, and naturally this involves a post-apocalyptic world to run around in and shoot bad guys and mutants and stuff. I love the end-of-humanity genre, and the TV show just made me more interested.

With this game, I finally figured out what Bethesda's process was. Basically, there's a larger story arc to follow, with various paths, and then there are "factions" to work with that involve additional stories. On top of that, there are a ton of side quests to follow. It's the only variation on the massive game world design that I "got" enough to see it through. I understand though why some reviews of both games were critical, because if you don't understand the primary/faction/side quest structure, it seems like the game is just constant roaming. Fallout 4 managed to reveal the many missions with its, uh, mission menu. Once you get that, it feels like there's forward progress with the option to go about different ways. And there are different ways to go about reaching the end, which I thought was really entertaining. Also, the IP was so beautifully used in the TV show.

Starfield took this structure and made it even better. The slam dunk from a discovery standpoint is that the mission menu straight up separates the main line and faction missions, making it more obvious about how to "win" the game. The only negative is that it wasn't immediately obvious to me that I missed one of the faction stories when I finished the main story. So when I went back to this after Fallout, it felt familiar and improved. The level-ups were similar, the weapons and crafting to improve them were also similar. The added dimension was the use of space ships and crew members, and the crew was a more integral part of your movement through the stories. In fact, one of the achievements even was to reach the "highest level" of relationship. I tend to create female characters in these games (I guess as a reaction against old school shooters with dudes), and when I tried to flirt with one of my companions, it turns out he was gay and lost his partner prior to the story. Then I started traveling with a woman, and it turns out she was open to my advances despite concern for her home planet's view on same-sex relationships. So we got "married" and I got that achievement. Other NPC's came and went, and there were way more of them compared to Fallout 4.

I really liked both games. The depth of the story development, and the detail in the environment design was extraordinary. Fallout was great because it made bits of Boston a wasteland, with nature reclaiming everything, while Starfield created solid sci-fi motifs and truly weird stuff. It's obvious why these games take years to make with insane budgets, because there's a whole lot to create. And it's worth calling out that the technology on which you can play these things has come a long way, too. I played on a combination of the Xbox Series X and a Windows computer (more on that soon), and games are looking more and more like real life.

What's next for Bethesda? Indian Freakin' Jones, in December. It'll be on Game Pass as well. I can't wait.


Unclear leisure objectives

posted by Jeff | Saturday, September 28, 2024, 1:21 PM | comments: 0

It's always interesting to me that people who are good at something in one part of their lives are not good at similar things in other areas. For example, a therapist counsels people but stays in an abusive relationship. A doctor who is overweight. An auto mechanic with a broken sink disposal. As it applies to me, a manager who hangs his reputation on product delivery, but can't decide what to do in his free time.

I realize that there's a certain amount of absurdity in this, but right in this moment, on a Saturday, after showering and having lunch, I'm not sure what to do. The thing that's different from work is that there are generally clear objectives in work, and if there isn't, it's usually straight forward enough to reduce ambiguity until you know what the objective is. Leisure has no such environment.

You might be saying that I'm overthinking it, and that is definitely a part of the problem. The thought spirals are real. Between that hyperactive brain and ADHD, it's hard to settle on any specific thing. It's like analysis paralysis, only for doing the shit that makes you happy when you are not engaged in must-dos in the moment. I wouldn't even describe my interests as being numerous, because when I write my yearly retrospectives, there tend to be four or five things that I was all-in on. This year is different, because when I can't decide what to do, I fall back on TV/movies, and harmfully, eating. Video games are notorious for appealing to ADHD hyperfocus, so while that has been a pretty big part of life this year, at least it's not entirely passive, and I can't eat with a controller in my hand.

Let me give you a snapshot of where my head is right now. This is not entirely dissimilar to the aforementioned thought spiral, though this time I'm kind of editing and paraphrasing. Just know that it's a cycle that has probably repeated dozens of times in the last hour.

I've had computers on the brain a lot lately, which makes me think that maybe I need to get back to writing code. I could take that [REDACTED] project a little more seriously and do that. Also, I'm not at all on track to deliver a new POP Forums version this year, and that's not like me. But I do have some items on the backlog to crank through, even if they're not user-facing. Oh, remember that talk I gave on writing code for lighting control? Maybe that's something I could dig into more, maybe I could make my own product even. Although, I do have a real lighting console I've been learning, and last night I even figured out an effect I had in my head. That's cool. I wonder if I could time code an entire song? That's only been in my head since tenth grade. Dammit, why hasn't the Xbox store updated Against The Storm to the new version so I can play the new stuff in the DLC? I could play it via GOG, since I own it there, but I want the achievements. I wonder how many more achievements I can get in Starfield, since I finished the main story. The texture on the back of Xbox controllers is satisfying. The screen on my Windows laptop that I bought for the lighting stuff is really fantastic. Maybe I'll write a blog post. You should really edit your documentary.

Yeah, that's where I am.


The solitary comfort at the computer

posted by Jeff | Friday, September 27, 2024, 9:05 PM | comments: 0

Simon spends most of his free time at his computer. It also serves as a significant portion of his social interaction with kids he's met through school. Sometimes it's hard to pull him off the machine for things like dinner and bedtime, and I feel like we need to limit his time or take it from him as a consequence for certain behaviors. But most of the time, I can't.

When I was in junior high (middle school, as they call it now), every minute that I could get behind those IBM PCjr's unleashed dopamine storms. At one point, I decided I'd ask the math teacher if I could take one home for the summer, and just the idea of that happening kept me awake at night. I never got to take home the machine, but I did get to take home a pristine BASIC manual that was in a 3-ring binder inside of a box. I read every page. A year later my dad gave me an 8-bit Atari computer that he scored for watching a time share presentation or something, and the year after that, my step-dad was given an Apple II+ for his "early retirement." I didn't get my own PC until I started working at a CompUSA after college.

I found so much comfort, alone, sitting in front of the screen. It kept my mind off of everything that I didn't like about myself, my worries, my fears, and at times feelings of loneliness. It was a place where I was in control, and could do exactly what I wanted. It was a quiet retreat from places that I didn't feel I fit in. I was resentful toward the adults that didn't understand my obsession for computers as a kid. As an adult, the truth is that I still find solace sitting with that machine. The habits aren't even that different, as sometimes it involves writing code, sometimes it's games. I still feel the loneliness at times, too, when I'm alone some nights.

All of this context is the reason that I find it hard to be critical about Simon's screen time. I think I'd be a shitty parent if I treated his safe activity the way some people did mine as a kid. I get him, even if I get annoyed that I have to call him three times for dinner. If he feels that same sense of excitement, the way that I sometimes do, I can't deny him of that when other aspects of life are difficult. The cold bits of metal and plastic impossibly offer the feelings of a warm blanket, metaphorically speaking.


On the return of Linkin Park

posted by Jeff | Friday, September 27, 2024, 2:10 PM | comments: 0

A few weeks ago, the band Linkin Park announced a new album, new single, video, new singer, world tour, all at one time, and as a surprise to most everyone. Back in 2017, one of the lead singers committed suicide, effectively putting the band on ice outside of some live and compilation releases. Their career to that point had spanned almost two decades, so people of many ages were into them. For me, I suppose I'd describe myself as a casual fan, familiar with their stuff, but only owning a few singles. They were always kind of a standout, crossing genres. I thought it was sad when they had to stop.

The announcement featured a new female singer, who takes up that co-lead role. I'm surprised at just how well she fits into their sound, and I love the new single. The joy from the band on stage for their announcement stream was pretty obvious. The hate on the Internet didn't take long to bubble up, including from the son and mother of the deceased singer (the widow supports the band). The general accusation is that the band is trying to "erase" his legacy and somehow dishonors his contribution over the years.

Here's the thing though. The band has told the story repeatedly that they had not set out to recreate Linkin Park per se, but they did want to make music together again. Then they worked with the singer, started writing, and it felt like a new iteration of Linkin Park. I think it has been respectful and celebrates the passed band member. But I also look at it as an earned opportunity to give it another go. They had no say in seeing one of their own take his own life, and it would be unfair to expect them to just not do it anymore.

We've lost so many great rock singers over the years to suicide. Every time I see Eddie Vedder I'm relieved. Hopefully Linkin Park can continue on for another decade or two.


Wind and the waves

posted by Jeff | Thursday, September 26, 2024, 9:19 PM | comments: 0

Hurricane Helene is currently barreling through the Gulf of Mexico, and unbelievably just got upgraded to a 4. It's bad news for the panhandle, and even Atlanta. Heck, it should reach Nashville with the strength of a tropical storm. A week ago it was barely an organized system. Another system in the Western Caribbean could develop in the next week. All things considered, we've been lucky so far this season. Orlando is a weird place, and I have to frequently explain that this is not a place that you typically evacuate from, but rather coastal folks evacuate to. As I like to tell people, it's not serious unless Walt Disney World closes. They've only closed 7 times, and three of those were for the triple hurricanes of 2004, and two were since we moved here, Irma in 2017, and Ian in 2022. And let me tell you, those parks were amazing to visit in the days prior, as they were fairly empty and there was a lot of warning for people to change plans.

As I write this, our measured wind speed at MCO is around 31 mph, gusting to 52. So basically, it's like one of our nasty afternoon thunderstorms in the summer, just sustained. We haven't had any rain in hours, and I'm sitting here on the patio. (With the fan on, because the wind is out of the south, and our patio open sides are northwest and northeast.)  This is as bad as it's going to get today. They called off school, but it's back in tomorrow. Irma was nerve-racking because it was our first hurricane. We were in new construction and up to code, but it was a new experience. The code was changed significantly in 2002, so the potential for damage is pretty low if you're not in a flood zone. For Ian, we mostly slept through it, and both of those storms crossed Florida within 50-ish miles from us. They weaken quite a bit over land, and the center becomes disorganized and not as serious as it is on the coasts.

While I fear for folks in the direct path, we're fortunate that once again it's pretty minor here. And that's why I'm sitting here on the patio, because the sound of the trees and the wind reminds me so much of sound of the ocean. Nature's white noise is incredibly soothing to me, at a time when frankly the world generally feels heavy and kind of sad. I love the fact that I never need to worry about winter coats, or shoveling snow, and living inland in Florida definitely has advantages relative to the coasts.

I'll probably sleep well tonight, though it's terrible that my peace comes at the expense of a lot of suffering elsewhere. I guess it's the risk you take for living in those places.


Retail therapy (for computers)

posted by Jeff | Thursday, September 26, 2024, 1:23 PM | comments: 0

Back in 2018 I had a bout of stress where I felt like retail therapy would really help, but ended up not buying anything. I'm having another one of those bouts right now. Like, it's really bad. And as I mentioned back then, my approach to this is totally inverted. It used to be that I should have been more discretionary about buying stuff because of everything else. Now I can afford to be relaxed about it, but instead I'm more discretionary than I used to be.

This time I keep mulling over buying a gaming computer, in advance of Planet Coaster 2 coming out. Last year I gave Simon the rig that I built in 2019, and because I bought an expensive-ish video card, it's still pretty great. It might even be a little wasted on things like Roblox and Train Sim World, which aren't super demanding. I spent around $1,600 on that computer, which isn't bad considering how well it still works. But as I've been writing for the last two years, and after passing that computer along, it's hard getting the gaming situation right. Late last year I bought the handheld Legion Go, and an Xbox Series X shortly thereafter. When I bought the dual-screen Asus laptop for the lighting stuff, it turned out that it was adequate for gaming that didn't have a huge 3D component. The scenario not covered is any kind of mouse-and-keyboard game with heavy 3D usage, like city builders and other building sims, or Planet Coaster 2.

So I start going down this rabbit hole, starting with the idea that I would not build my own thing again. So I happened to find a desktop deal from Lenovo that had a $3,200 machine going for $1,900, and that was with a video card that is ordinarily a grand by itself. Basically I'd just go back to Windows on my desk and sell the Mac Mini. But then, there are solid gaming laptops well under $1,500. The screens tend to be non-touch and lower resolutions, but they'll run games well enough. I'd have three different laptops then for different purposes, which seems insane.

In any case, I backed away, and didn't buy anything. Not saying that I won't. I could buy some more lights, various Lego sets, furniture... lots of more useful things. I've finished many video games this year, probably more than in the prior five years combined. They keep my mind and hands busy when the world feels heavy, and it feels very heavy lately. Unfortunately it means not coding or editing the doc. It's just where I am this year.

My spend-to-escape strategy in recent years hasn't been to buy stuff, it has been to travel, especially short-term, luxury kind of arrangements (often DCL cruises). Heck, even our DC trip was kinda like that in March, because the hotel, restaurants and bars were generally premium. I'm just not sure where to go next.

I miss the satisfaction of spending an hour in a Best Buy or CompUSA in the late 90's and coming home with stuff that provided a somewhat enduring dopamine hit.


Apple is often behind on software

posted by Jeff | Saturday, September 21, 2024, 3:38 PM | comments: 0

When the M2 generation of Macs started to ship, I couldn't ignore it. The benchmarks and battery life were extraordinary. My main use of a laptop at the time was for writing software, and even being a .Net guy, it doesn't matter which OS I use. But this generation of hardware reversed a lot of the terrible ideas they ran with years ago that turned me to Windows machines. The silly touch bar was ditched for real function keys, good keyboards came back, and they had all of the ports, for USB-C and HDMI and SD cards, and the smart mag-safe power. I was apprehensive about the cost, $2,500, given the 16 gigs of RAM and only half a terabyte of storage, but I went with it anyway. I was, and continue to be, totally satisfied with this hardware.

But I can't say the same about Apple's software. MacOS hasn't changed much, and to be fair, it's pretty solid overall. There are little things that I miss from Windows, that I find myself always wanting. The file explorer doesn't show a tree view, which is a little annoying. But even more, the window snapping, where you can pin a window to a side tile them. Finally, they just added that feature this week. I still prefer the Start menu style of grouping things, too. Windows had a long way to go toward being polished, especially around its settings, but it's good now. Desktop OS doesn't matter that much to me. I have both in the house.

Mobile is different. Every release of iOS seems to add things that Android (or even the defunct Windows Phone) had years ago, or even from the start. The latest is the ability to organize the launcher icons in any way that you'd like. Also widgets, haptic keyboards, always on screens with the time... it's something every year. Going into the functionality of the photo apps, as well as maps and mail, were also behind by years in some cases. This year they're also, finally, adopting the newer RCS protocol for text messages (the green/blue bubble thing).

This sounds a little like me taking a shot at Apple, but mostly it's just disappointment. I was pretty deep in the ecosystem back in the day, with iPods, iPhones, Apple TV, Macs and iPads. When they started getting certain things wrong, like the laptops, I started to realize that the there was some degree of lock-in that I wasn't crazy about. At the end of the day, I just wanted to use the things that worked best for me.

I wonder how things will go now that Windows runs on Arm processors, and there's some great, less expensive hardware being made with great battery life. Heck, six months ago I bought an Asus laptop with two OLED touch screens, with top of the line everything for $1,700. It's really good.


My anxiety in focus

posted by Jeff | Thursday, September 19, 2024, 7:55 PM | comments: 0

I've been thinking a lot about anxiety, amidst my constant thought spirals. While I've learned that anxiety is often a product of your experience, and you have to figure out how to respond in the moment, I'm still obsessed with understanding if the context of life is part of what makes it worse. For some reason I think that if I get the reasons, I can better deal with it.

At the basic level, I understand that things that I can't resolve right now are the source of considerable anxiety. Being inbox-zero helps, but there's always something that's further away you need to resolve at work, while at home you are always working to get your kid to adulthood. The reinforcing side effect is that I'm often unwilling to engage in resolving those long-term things. And yes, I know, that's what anxiety is, the icky feelings about what's ahead.

The thing that seems to make it worse is my age and the passage of time. When you're less aware of your impending demise, it's easier to just blow things off, knowing they will pass. That's harder in midlife. Because what if this thing I'm doing is a "waste of time?" The passage of time seems faster when you encounter fewer novel experiences, and this itself is now a source of anxiety. We went to Europe an entire year ago. It still seemed fresh at the time of our last adventure, the DC trip in March. How can an entire year have passed already? I know that working remotely probably reinforces the routine. I feel like the weekends come so fast.

This is why I see a therapist, and she's right that being present in the moment helps a ton to get beyond the anxiety. Listening to music helps me so much. What I do less of lately is visit the theme parks, which are still surprisingly novel (perhaps because they've changed so much). And in the summer we don't have shows, one of my happiest places, where every show is a new experience. I have rediscovered this year that video games are really great at distracting my brain, and I've played and finished quite a few. I do wish I did more social things, but maintaining relationships is exhausting, and trivial interaction feels low-value. Very thankful for date nights.

The causes of anxiety can't be expelled from life. I mean, sure, there probably are some bigger situations and people you can get away from, but the baseline life stuff is baseline life stuff. Focusing on the immediate things is the cure for anxiety, but it's so hard. I think we're wired to be anxious, as a species that spend most of its history trying to survive. Now, in some cases, we may not even need to leave the house very often.


A tribute to the movie Singles

posted by Jeff | Wednesday, September 18, 2024, 6:38 PM | comments: 0

Today is the 32nd anniversary of the release of the movie Singles. Directed by Cameron Crowe, the movie is a coming-of-age bit that takes place in Seattle around 1991 or so. It's the time when the rise of grunge music happened, Gen-X was officially a generation and I was a sophomore in college. Campbell Scott, Kyra Sedgwick, Bridget Fonda and Matt Dillon were the leads. There were cameos by members of Pearl Jam, Soundgarden and Alice In Chains, and sadly the only singer who made it to today is Eddie Vedder. The soundtrack was fucking epic, and remains one of my favorite rock albums of all time. Also, the cameos... Paul Giamatti, Eric Stoltz, Jeremy Piven, Tom Skerritt, Tim Burton, Victor Garber, and of course, the bands.

I don't have to tell you what college is like, even if you didn't go. It's a super weird time when you've been thrust into an adult-ish environment and you're not a kid anymore. Crowe's movies are almost all coming-of-age, and to this day I'm obsessed with the idea because most of life is about that, figuring it out. At that time I still had a very naive and idealistic view of what relationships were supposed to be (which may account for my perpetual single-ness), and this romanticized version of hooking up was deep in my mind. Also, while obsessed with Sedgwick's amazing curls, I was totally into Fonda's dorky, redheaded Janet. Clearly I've always had a preference for redheads, which in retrospect makes it seem inevitable that I'd end up with one.

What I could not have predicted was that, 17 years later, I would actually live in Seattle. Before Simon was born, and with me living in a place that wasn't Ohio for the first time in my life, I thought it might be interesting to try and find some of the locations from the movie. We did find the Virginia Inn near Pike Place, where Steve and Linda meet for water and Giamatti makes out with that woman, and the spot where Debbie gets a flat on her bicycle is also Virginia St. We went to the city center area just before we moved away, which is where Linda rides the roller coaster with the bad date (the amusement rides had recently been removed). We never got to the apartments themselves, but saw the Gas Works from afar, and did go to Showbox Sodo to see Garbage, which was not where the movie saw Alice In Chains, but it was the area.

College wasn't easy for me, but it was a mix of positive and negative experiences. Singles represents a point where I realized how much I loved music and film, which supersedes any issues that I had with that era. To this day, I find myself quoting it, too.

"What took you so long?"

"I was stuck in traffic."


Autism in a Type-A, neurotypical world

posted by Jeff | Friday, September 13, 2024, 4:30 PM | comments: 0

I've noticed a pattern in the way that many people approach educating non-neurotypical kids. They come up with strategies that would generally work really well for someone who is Type-A, neurotypical. I see this frequently with things that experts (to use the term loosely) suggest will help Simon in terms of organization and execution around school work. Even in grown-up work, I've had jobs where "project managers," one of the most dubious of professions, are prescriptive about the way that engineering teams should organize and do things. It only leads to friction and wasted time.

I can't speak for everyone who has autism, and won't try to, but I can tell you that if you want me and a group of people in my charge to do something, you should just tell me what the outcome is that you're after. I'll keep communicating with you and start a feedback loop as we go to make sure that our assumptions are challenged and we course correct to the real outcome that's right for everyone. If you're going to give me a bunch of spreadsheets and mandate ceremony and structure, it's not going to go well. It's not even the busy work that you're creating for me, it's the fact that you're trying to impose same on a group of people who are every bit as different.

Getting back to education, I don't know how you solve for this. Individualized education does not scale in public schools, because they're underfunded and understaffed, and the depth of knowledge and capability of the staff they do have varies wildly. (And sometimes, you get psycho elementary principals that think kids and teachers need to be "managed" at all times.) It puts parents in a particularly shitty position, since we can't figure out what's best for our kids, but we can see what doesn't work plain as day. We're both the bad guys and the entitled. You have to fall back on a strategy that involves throwing everything at the problem until you find something that works, which is not efficient, and totally demoralizing for everyone involved.

What I know now about my own education is that my interests were almost totally driven by getting the degree. I was outcome-oriented even then. I'd guess that 80% of the subject matter I had no interest in. So I did only slightly more than necessary to get the degree, which, as it turns out, almost no one asks about, let alone what my GPA was. High school was kind of like that too, especially by my senior year. The thing that's scary about Simon is that he's already there, in some ways. He always asks how some bit of homework is something that he'll need in life. Yikes.

I don't like all of the prescriptive things from people who are box-checkers. I don't think that way, and I know that Simon doesn't either. He completely disregarded his packing list last trip, and packed one shirt for three days. For the record, I don't think that Diana is Type-A (she's too creative in a non-derivative way), but she's list oriented, while I think that anything that's important enough you'll remember.

If I may project for a moment, that may be the core issue. Many of us spectrum dwellers execute well against the things that we deem most important. Throw ADHD in the mix and this is even more evident. The trick might be to figure out how to promote things in our heads to be the right level of importance. I don't know if that's even possible. Intrinsic motivators tend to crowd out all the other things.

Sometimes I do encounter some text written by someone with ASD, and they're like, "This totally works for me!" But we're all so different that these "solutions" don't always transfer well between people. So here I am, that guy, dismisses the suggestions but doesn't have a clear path to the thing that ultimately helps me.


Everything is still about racism

posted by Jeff | Friday, September 13, 2024, 4:00 PM | comments: 0

I saw some random post on social media complaining that, "Everything is about racism." As usual, I wanted to respond with, "Imagine how non-white people feel, and for totally different reasons." I've learned that such engagement is rarely constructive, so I moved on. But the truth is, everything is still about racism, because when you strip out everything else, it's the only thing left.

I am of course talking about the team that has hijacked the GOP, co-opted the term "conservative," and generally brought the vile hate for others into the culture in a way that made many feel emboldened to engage in it. Some of it is just blatant, and there isn't much else to do with it. Trump's debate rant about "eating the dogs," a reference to an absurd conspiracy theory about (legal) Haitian immigrants in Ohio, is hardly a new racist talking point. That's been around forever, but used to be applied primarily to Asian folks. What's so striking about this is that, ten years ago, uttering something like this in public would make it certain that you would not hold any high public office, let alone be one party's candidate for president.

If we back up, "make America great again" was an obvious racist dog whistle from the start. The implied sentiment is that we were better when people of color were not participants in our society, women stayed home and didn't vote, and it was even more dangerous to be out and LGBTQ. Of course they dress it up as if it's a matter of policy, but facts and data do not support their positions. Strip that away, and you're left with the racism.

For example, the things they keep banging on are immigration and crime, and worse, conflate them. They use scary words like "invasion" to infer that you're in great danger. Controlled immigration is not the desire of just one side, I think everyone wants that. But there are a bunch of inconvenient facts to consider. For one thing, crime in the US has been plummeting for the last four years. The FBI is not making that up. Immigrants are less likely to commit crimes than so-called "natives," again, according to the same crime statistics. An anecdote indicating otherwise is not a trend, it's an anecdote (I don't think people understand the difference). Immigrants don't "take" jobs away from anyone, they only add to the necessary business to support a society, which boosts the economy and increases GDP. That's basic economics. Why do you think China is worried about a shrinking population? Because it shrinks the economy, giving it less leverage in world trade.

So when you strip all of that away, because none of the justification for "policy" is rooted in fact, the only thing that you're left with is hate for people who look different. If this were really about the rule of law, the people backing this nonsense wouldn't be supporting a convicted felon.

And with that, let me touch on the "undecided" voter. Various news agencies keep talking to these folks, and it seems like they fall into a few cohorts. The first is just sadly uninformed and doesn't understand civic engagement. The second is the people who make moral equivalence arguments, a throwback to, "All politicians are the same," which used to be more of a thing, but not these days. You may not agree with universal healthcare, and that's fine, but you can't pretend that the folks that want it are the same as people who seek to ban books, limit healthcare and discourage people from voting. And the third I think are people who have finally decided to confront the cognitive dissonance they've engaged in for years, realizing how terrible these hate and fear mongering people are. All three apparently fail to see that anything important is at stake, or at least, don't want to. I'll never understand how anyone can see a person who wants to ditch the Constitution and be a dictator is viable.

Let's stop pretending this is about policy. It's just thinly veiled racism.