Leaving Vercel

I recently discovered the photo of Guillermo Rauch with Netanyahu, I guess this was bigger news in tech circles about six months ago but until yesterday I was entirely uninformed. I have subsequently removed all my projects from Vercel (the platform Rauch founded and serves as CEO of) and written this letter to the Vercel team:

Vercel is, and has always been one of the best products I’ve used, the developer experience is flawless and over the years I’ve hosted half a dozen personal projects on the platform as well as bringing on a long-term customer.

It saddens me to leave and I did so only because I cannot in good conscience continue to support or use the product in any way. Although the original post was over six months ago I was just made aware of CEO Guillermo Rauch’s post on X posing with Benjamin Netanyahu. At that point Netanyahu had an international arrest warrant, had presided over the genocide of 60,000 people (at least a third of them children) and wholesale destroyed 80% of a city that was home to 2 million people. I believe individuals are entitled to their personal opinions but Rauch is not just an employee, as the founder and one of the original authors of the flagship product it’s hard to separate Rauch’s actions from the company. Also it’s one thing, I suppose, to post “I support Israel” in your personal socials and entirely another to actually meet and pose with a war criminal then post it on your public X which you have used for years to promote your company.

For these reasons I can no longer continue using Vercel.

Updating some Backbone.js code… What a blast from the past, over the year’s I believe I’ve worked on three Backbone projects. It’s fun to dig into legacy hotness from 10 or 15 years back it allows you to judge the code with more clarity. The code today was pretty clever, the Backbone stuff I worked on a year ago; not so much.

New script to kill the rails s: lsof -i:3000 | grep "ruby" | awk '{print $2}' | xargs kill -15 I’ve set that as a workflow in Alfred that runs when I hit command-control-r (⌘⌃R). I set this up last year because I find Rails gets hung up and control-c isn’t enough to kill it. However, prior to right now I was using lsof -i:3000 | xargs kill -15 which would also kill Firefox (Zen), grep for Ruby and then grabbing the specific processes fixed this.

Args and Params

I think I’ve always used args and params interchangeably; TIL parameters are what the function accepts and arguments are the values passed in. For example in Elixir:

def my_func(name, age) do 
  ...
end 
# above name, and age are parameters
# then at the call site:
my_func("Travis", 34) 
# "Travis" and 34 are arguments

Just read the term “React Engineer”, I know it’s cliche but I need to scream into the void on this: there is no such thing as a “React Engineer”; engineers are licensed professionals and highly regulated, slapping components together to “make the graphql look pretty” is not an engineering job.

I get that these terms are conflated, but I never call myself a “software engineer” because I didn’t do an engineering program.

Whenever I get a spammy text my first move is to run:

 loadtest -c 50 -n 1000000 --rps 10000 https://spammy_url.com

They generally don’t use beefy servers so it’s fairly easy to crash them at least for a few minutes. Thinking of creating background script to run this constantly for any spam texts I get, might be enough to spike a Lambda or Vercel bill a bit.

I’m a firm believer that 40-60% of jobs in the modern world do not need to exist. AI is driving those jobs out of existence, unfortunately it is not doing so by creating a simpler more utilitarian world, instead it serves as a multiplier for that waste and will likely create even more layers of pointless abstraction.

I’m a firm believer that 40-60% of jobs in the modern world do not need to exist. AI is driving those jobs out of existence, unfortunately it is not doing so by creating a simpler more utilitarian world, instead it serves as a multiplier for that waste and will likely create even more layers of pointless abstraction.

Last week I added internationalization to an large B2B app I’ve been working with for the past 6 years. It’s pretty gratifying to see this app that dozens of employees and hundreds of customers use every day now in Italian, Spanish, German, Polish and Dutch!

I was thinking of embedding Calendly directly on my website so people could schedule meetings with me but it drops 3 cookies and makes about 11 network requests on page load… That’s a hard pass.