Tom MacWright

tom@macwright.com

Recently

Listening

My friend Dave Infante has been busy – he launched his own beer-centric podcast, Taplines, and guest-starred on the enormous Chapo Trap House podcast.

Reading

It’s been a slow few weeks for books, but since I skipped Recently in May, I can still talk about Achieving Our Country, which was a pivotal read. It’s a political-philosophy book on the left about the shifts in American leftism in the 1900s. It really clicked with me: someone who wants there to be a thriving left and is fully on board with the theories in Piketty’s Capital and many of Henry George’s ideas, but is constantly surprised and disappointed by the mainstream brand of socialism that I find in DSA chapters in major cities and online. I keep wondering why the American left is so enthusiastic about homeownership, skeptical of reform and political participation, accepting of libertarian-tinged ideas, and attached to a class politics and “class analysis” that seems skin-deep and more interested in identity than anything else. Why do they waffle about their support of Ukraine and give space to so-called tankies?

Achieving our Country gives a compelling theory for why: that the 1960s marked a shift from a reformist leftism to one dominated by radical and Marxist thought. Writing radical Marxist here might set off some “Fox news” alarm bells, but it’s meant literally: that people shifted from wanting to reform a system to radically replace it. And that the explicit influence of the Marxist strain of Socialism – his historical materialism, emphasis on labor, ideas about the proletariat - are the underpinnings of a lot of what you hear at the average DSA meeting or in your issue of Jacobin.

Of course, it’s a thoroughly opinionated book that is trying to summarize a lot of different movements and influences, and it’s impossible to write any statement about what Marx proposed without getting blowback about another place where he proposed something different.

But anyway, I was born long after the Vietnam War, so I can’t tell for sure, but broadly this seems correct and explains why I feel a little lost as someone who’s more an early 1900s leftist than a late 1900s one.

Watching

Guardians of the Galaxy was just as enjoyable and goofy as I expected. I’m just fully on board with James Gunn-style movies that are romps. I watched The Accountant and am convinced it would have flopped in exactly the same way as Music if it had been released five years later.

Casey Neistat’s AI Vlog is my favorite video AI take so far. Of course, there are extremely cool things happening in the rest of the AI/Video industry - Runway ML especially - but I just found his story hilarious.

Elsewhere

I wrote on the Val Town blog about how we moved away from Supabase. It was an interesting kind of thing to write, and was pretty well-received, even from Supabase.

In one way, it was a throwback to when I was writing about Placemark’s components - I wrote about Render, the web host, react-aria, and so on. It was fun writing all those posts, and I tried to follow principles in those decisions and articles:

  1. Emphasize how all decisions are approximate. There is more than one good choice, and decisions are based more on finding the right kind of thing than the exact right thing.
  2. I’m not writing about why I didn’t choose the other 999 solutions, but why I chose the solution that I decided on.
  3. Even the solutions that I didn’t choose exist for a reason, for people with different requirements or preferences than I did.

At a different stage, Supabase worked really well. And I’ve heard from a lot of people that love it. But we at Val Town kept running into places where both our needs and preferences were mismatched with what Supabase provided, and it got frustrating.

The other thing is decisions. I’ve made a lot of decisions in my career and I might have a sort of reputation for making decisions. I try to make them from a place of equanimity and humility, but nonetheless: I’ve made a lot of decisions.

I’m okay with it mostly because I see decision-making as work and responsibility, rather than as about power. I would never want to feel like I’m forcing a decision on someone else, and when something that I decided on turns out to be wrong, I’ve consistently called it like it is and made changes.

But obviously, I’ve also come into, now, three early-stage companies with prototypes and been mainly in charge of getting them into production-readiness: which means choosing which parts of the early-development stack should be replaced. In some cases, this was pretty dramatic: I advised the stealth startup that I worked for in 2020 to switch from Rust & Next.js to Rails. As far as I can tell, they’re still on, mostly, Rails. I think that was a pretty good decision, having considered it deeply and personally delivered the rewrite.

Anyway, Supabase is part of the early-development stack that changed, along with the web host and web framework. A lot of things stayed the same, but a lot of things changed. Part of the job is getting used to this: trusting that your diagnosis is roughly correct, that you’re improving the situation and not just a change-mad force of chaos. It’s about managing change and getting buy-in, and probably most importantly: owning the change. As a rule, I don’t dictate technical decisions that I’m not working on and responsible for.

Placemark

Not many updates with Placemark recently. The servers have been humming along, and I’ve been trying to keep up with correspondence, but I’ve been pretty late on my emails. Sorry to those suffering from my procrastination, it’s frankly a weird mental space to be in.

Reflect website

Rocicorp, the folks who made the realtime sync stack that Placemark uses, released Reflect, which is kind of like “Replicache v2”, making sync much faster. Their stuff is cool, and they’re extremely cool - they have a very unusual and innovative compensation structure and are one of the few startups that’s under an LLC structure, like Placemark.

LLC vs C CorpSummary: LLCs are simpler to set up and usually cheaper to run, but C Corps make it easier to issue and sell stock, and also C Corps allow you to use QSBS, one of the most important tax loopholes for startups.

Reflect is super neat, and faster by design in some ways than Replicache. I’ve been thinking through the tradeoffs here in my off-cycles, though I haven’t been spending much time coding on Placemark (something that causes me a lot of anxiety).

As far as I can tell, realtime sync of very large documents, without windowing the data and showing a small subset, is something that nobody has accomplished or is trying to accomplish. Essentially, I think I can focus on that as a true technical challenge, or avoid it like most other companies are. There just aren’t any systems that do realtime sync of multi-hundred megabyte files, and certainly not gigabyte-size files, but in the world of geospatial, those file sizes are typical. If you’re editing the road network of, say, Virginia, it’s going to be a gigantic amount of data: enough data to crash Figma, your text editor, and anything else.

But at the same time, are multi-hundred-megabyte files something that Placemark should support on the web? Maybe they are. I think there’s a real, interesting challenge to supporting that kind of thing efficiently. I have a few technical ideas about it that I won’t share because of industry secret, or they just aren’t that good, but… is that a good idea? Or is it a better idea to keep our big files local?

Anyway, let me know if you have ideas here - my contact info’s on the about page as always.

Browsers & tools

I tried switching back from Chrome to Arc again recently and switched back after a few weeks. I love Arc’s split windows: I use split windows constantly in my terminal, and use Rectangle to manage my Mac’s windows in half-and-half layouts.

But the rest of Arc is kind of annoying. I don’t like how tab search & web search are combined: I keep accidentally hopping back to an existing tab that is not what I was looking for. I don’t really like vertical tabs - I’m on a 13” MacBook Air and don’t have much horizontal space to spare, especially when I’m putting the browser in the left 50% of the screen and a text editor in the right.

I tried using Orion for a while after trying Arc. Orion is noticeably faster than any other browser I’ve used. It feels like a supercharged Safari. I really like the aesthetic and message of Kagi, the company that’s developing it.

But Orion doesn’t integrate fully with 1Password. It sort of works - you can use 1Password’s quick entry to get and paste passwords into form inputs, but the difference between that and the Chrome 1Password experience is enough to put me off. Plus, Chrome and Arc have the “Blink style” web developer tools, and Orion has the “Safari style” web developer tools. I know that Safari and Firefox’s develper tools are good, but it’s a big adjustment and I rely heavily on some very niche features of Chrome’s default devtools.

So, back to Chrome for now.

Cycling

I’m riding the Empire State Trail pretty soon and very excited about it.

It’s also kind of neat that, well – I made this map by downloading a KML file from the New York website, sliced and diced the data with Placemark, and created a nice map with Mapbox Studio. And it all worked really well!

I’ve had a harder time finding mobile maps that will work well for this trip – Komoot is slick but won’t route on the Empire State Trail, Ride With GPS is pretty barebones. I’m going with Gaia GPS so far.