You break it, you bought it

I’ve been trying to figure out what to say here in the wake of Trump’s reelection. I think it was among the stupidest things human beings have ever done in history, and that it’ll pay negative dividends for decades, but what do I know? I’m just some guy.

So what I’ve concluded I’ll say is simple: America: You broke it, so you bought it.

You don’t get to claim that whatever comes next isn’t what you voted for, good or bad. Price of gas and eggs goes down? Dow Jones goes up? Jobs come back to small towns? You can totally claim those results. Trump starts internment camps, collapses the economy, declares war on France? You bought the crazy bad results too. You don’t get to blame the Democrats this time: Republicans are now 100% in charge in Washington, DC, so if you voted red, you own all of it. Credit where credit is due on the successes, but you’d better man up and accept any failures you get too.

Lest there be any doubt, here’s what you all voted on. (And I included for rent both a red state and a purple state, just so you can see I’m not cheating.)

ItemNovember 2019November 2024
Eggs (dozen)$1.28$3.37
Ground beef (pound)$3.84$5.59
Milk (half gallon)$3.12$4.04
Gasoline (gallon)$2.58$3.04
Rent (in Philadelphia, PA)$1,440$1,868
Rent (in Dallas, TX)$1,364$1,761
Dow Jones (DJIA)28,05044,860
Nasdaq8,66018,791

Let’s review these after a year or two of Trump running the show, shall we? I’m sure the prices will definitely go down when they’re managed by such a fabulously successful businessman. I’d love to see them go down — and I’ll freely credit Trump if they do — but I’m not betting on it.

As for me, I’m likely going to be sitting back with a bowl of popcorn occasionally shaking my head — assuming, that is, that there’ll still be farms in America to grow that corn, and not nuclear blast holes filled with Nazi stormtroopers.

But not that that would happen, would it?


Loosely related, I’ve ditched Twitter (X) for good. I was sorta poking at it again for the last year occasionally, but I’m done with visiting wretched hives of scum and villainy, and I couldn’t be happier having said goodbye to it. And no, I haven’t signed up anywhere else: You might enjoy sadomasochism, but it’s definitely not for me.

Comments Off on You break it, you bought it

Filed under Uncategorized

The Power of the Refactor

“We have to rewrite it!”

I’ve done a lot of interviews recently, and a common theme among them — and among prior interviews over the years too — is companies who want to go from an existing “legacy” system to their shiny “new” system: They’ve concluded that the existing “legacy” system isn’t meeting their needs, and that a “new” system is necessary.

I call these “version 2.0” projects, because quite a lot of them involve taking an “original” system that’s been keeping the company alive since its inception, and making a replacement for it. I’ve been on several teams doing “version 2.0” projects over the years, and I’ve even started a couple of those projects, and there’s one truth that has been consistently valid among every single one of those exercises:

Don’t do it.

Continue reading

1 Comment

Filed under Uncategorized

My Copyright

The recent hullabaloo over Roald Dahl’s works being edited censored has me utterly incensed. Sure, Roald Dahl was kind of a terrible person, and he wrote several things I too find offensive. But that gives no-one other than Roald Dahl himself the right to censor his writing. He wrote what he wrote, and if you don’t like it, read something else. There are plenty of sanitized, safe, bland, milquetoast books out there if you don’t like having your sensitivities offended.

But it occurred to me that the reason that Puffin Books can get away with this censorship is that they (and Netflix) own the copyright, and by law copyright terms are ridiculously long. It’ll be four decades yet before anyone else can re-publish the stories the way Dahl wrote them.

I don’t want to be a part of this.

But I’m a creator: I make things, I write things, I draw things, I code things, I build things. I’m constantly contributing to a system I never signed up for. In my life a ton of work has been fixed in a tangible medium by me, to use the legal copyright terminology. Per copyright law, I hold the rights to a mountain of content, and because I keep creating, the mountain keeps getting bigger. These very words will join that pile, and if I die just after writing this sentence, my heirs or estate would hold the copyright in it for another 70 years — these words would enter the public domain in February 2093, which is utterly insane.

So I’m making an addendum right here to my last will and testament, and as soon as I’m done typing it, I’m going to print a copy and sign it to give it the force of law. And this addendum is simply this:

My works — all of them — will enter into the
public domain exactly one year after my death.

Not 70 years. One year. Every story, every essay, every picture, every pixel, every line of code, every last byte, everything I’ve made that could possibly be copyrightable and in which I hold the copyright will be up for grabs to the world one year later.

Does the world want it? Probably not, but you all get it anyway. Once I’m gone, my family gets a year to prepare for its release, and then it belongs to everybody, the whole kit and kaboodle. Anyone can have whatever debates you want over what I might have intended for some picture or some character or some design or whatever, but everybody is free to put their own spin on them all after the one-year mark. Once I’m gone, I don’t have a say in it anymore.

Presumably, I still have a lot of years left in me, and I can state my intentions and control my works for a few more decades. But whenever I’m gone, there’s one year on my copyrights left, and that’s it.

The copyright system is pretty broken, but with this, I believe I’m helping in my own small way to help right the ship. Maybe Congress will have some sense someday and shorten copyright terms to match, but until they take care of it, this declaration will have to do.

Comments Off on My Copyright

Filed under Uncategorized

Programming Is Writing, Not Math

Beginner and intermediate programmers often think that programming is math. After all, a lot of computer science is math, and computers run on math, and core concepts of the field like Turing Machines and lambda calculus are really pure hard math. You can’t get started in this field without knowing some math.

But programming — or software engineering if you prefer — really isn’t math. Programming, as Donald Knuth rightly noted all the way back in the 1970s, is really literature. We tell the computer stories about how to do things: We write plays, and the computer acts out the play for us. Some of the words that we use in those plays are based on math, but most programming is really a form of storytelling. Code is sometimes compared to poetry, but I think it has the most in common with prose — which is arguably why systems like ChatGPT are so good at it.

Continue reading

Comments Off on Programming Is Writing, Not Math

Filed under Uncategorized

And that’s that

IAM Robotics laid off most of its management and employees yesterday, myself included.

It’s a shame; it was a good place to work for the last year and a half. We had a whole lot of talent, experience, and drive all in the same place, and I really genuinely believed in what we were doing. I really would have liked to see all our hard work be shipped to real customers and make a real difference.

Cookies crumble, I suppose, especially if you’re working at a startup.

To the many friends and colleagues I made at IAMR, I will miss you all. It’s hard to say if our paths will cross again, but if they do, let’s at least do lunch 🙂

Not sure what comes next. I’m somewhat unexpectedly on the job market now, and while it’s not a great time to be on the job market in the tech sector, I’m sure I’ll find something. I’ve updated my resume here, so if you’re curious, feel free to take a look.

Comments Off on And that’s that

Filed under Jobs

🌺

My grandmother passed away today, early afternoon.

My cat passed away today, late afternoon.

Both were very old; my grandmother was 91, and my cat was 17.

But both happened on the same day, two hours apart. I was almost holding it together, after my grandmother passed. And then our cat started crying, her stomach in pain.

We’re deleting this date from the calendar. Henceforth, in subsequent years, we will all go straight from October 8 to October 10.

Comments Off on 🌺

Filed under Uncategorized

We Need to Have a Talk about Software Troubleshooting

So today, my Internet connection went out. The router got stuck overnight, and I rebooted it, and no big deal. Windows, however, still shows this, even though I have a perfectly fine network connection:

Sure, Windows. Whatever you say.

If you Google it, you’ll find lots of people have the problem, across multiple versions of Windows, going back years. The solutions vary from “just reboot” to complicated registry hacks to “reinstall Windows.” 🤦‍♂️

I can’t even.

I hear anecdotal stories about “weird problems” like the one above all the time: My friend’s father can’t get the printer to work without reinstalling the drivers every time he uses it. Your cousin’s word processor crashes every time she clicks the “Paste” button and there’s an image on the clipboard. My colleague’s video glitches, but only in a video call with more than three people. And invariably, the solutions are always the same: Reinstall something. This one weird registry hack. Try my company’s cleaning software!

So I’d like to let all of the ordinary, average, nontechnical people in the room in on a little secret:

This is bullshit.

All of it is bullshit. Start to finish. Nearly every answer you hear about how to “fix” your bizarre issues is lies and garbage.

Continue reading

1 Comment

Filed under Programming, Technology, Uncategorized

Godspeed. 🙏

Comments Off on …

Filed under Politics

We Don’t Talk about Semicolons

Seriously, we don’t.

I was asked on Discord today why some languages require semicolons and others don’t, and this is one of those surprisingly deep questions that to the best of my knowledge hasn’t been answered very well elsewhere:

  • Why do some languages end statements with semicolons?
  • Why do other languages explicitly not end statements with semicolons?
  • Why do some languages require them but it seems like the compiler could just “figure it out,” since it seems to know when you’ve forgotten them?
  • Why are they optional in some languages?
  • And, of all things, why the weird shape that is the semicolon? Why not | or $ or even instead?

So let’s talk about semicolons, and try to answer this as well as we can.

Continue reading

Comments Off on We Don’t Talk about Semicolons

Filed under Uncategorized

What is Crypto? A guide for the non-technologist

  • Q. What is crypto?
    A. Real cryptography is a difficult and important branch of mathematics. Crypto is a pyramid/Ponzi/MLM scheme — a scam designed to steal your money.
     
  • Q. What is Bitcoin?
    A. Bitcoin is a scam. It is a sophisticated computer program designed to steal your money by convincing you to trade your money for a magic bean number.
Continue reading

Comments Off on What is Crypto? A guide for the non-technologist

Filed under Humor, Technology