I am pretty sure Sam has already sold the majority of his personal belongings and only rents whatever he needs when he needs it. What a great example for us all.
963 karma · joined August 19, 2015
I am pretty sure Sam has already sold the majority of his personal belongings and only rents whatever he needs when he needs it. What a great example for us all.
The Mac Studio that replaced it is practically silent and very energy efficient, while not being significantly slower.
The question here is not whether we need human written code, it's whether we need abstractions. Perhaps I could have worded that better.
I did some road trips in 2009 and made pictures with a compact camera. I was able to determine the almost exact locations I shot these pictures thanks to street view, so I could see route that we took back then. One picture was shot in the dark but had a distinctive logo sign on the side of the road. Given the timestamp on the photo and the extremely blurry restaurant and motel logos on the sign, I had a good idea of where to look, but it turned out this sign was only up in a single year and it was quite hard to navigate to!
Unfortunately, I don't think you can "lock" the street view date? Nor does the map view on go back in time? I guess you can use Google Earth to view satellite images. There is a whole neighborhood in Seoul that's been completely leveled on the satellite pictures, yet you can still use street view from 2018 to travel around.
For pushing updates, we use ActionCable, but we do it in a different way from what we used to do with Turbo Streams: when a record is updated, instead of sending HTML from the server to the client with instructions on what to replace, we only send a small JSON payload with the ID of the element that was updated. On the client side, an event is dispatched that any DOM element with <hx-trigger="<resource-id>:updated from:body"> will trigger on. For the rest it's just basic HTMX, only the trigger is "custom".
It's a niche B2B SaaS app and luckily we know most of our users personally. They all use modern browsers, usually Chrome or Edge on Windows. There is not a lot of mobile usage although we do support it.
The only hard thing is still to position a popover near the element that triggers it, such as when you want to create a context menu that has to render above/below the button that triggered it. There is anchor positioning in CSS now but support is still limited and I find it hard to wrap my head around.
LLMs are also terrible at these new standards. If they even know about them, they often think they're not baseline yet and they have almost zero training data compared to the giant mountain of weird JS and CSS that people had to use before the introduction of these standards.
> When experts started speaking out about the Ocean Cleanup several years ago, I witnessed several of them endure online harassment from supporters of the organization, often phrased as “At least they’re trying to do something to help, all you do is complain.” (Note that this was being said to people who devoted their lives and careers to evidence-based solutions to cleaning up the ocean).
Besides the memes, it is absolutely not hype-driven, but hypermedia driven. It asks the question: could HTML be even more powerful than it already is?
The creators of HTMX even want to standardize core ideas of HTMX into the official HTML specification: https://triptychproject.org/ Please read this and reply when you still think it's hype.
This, I absolutely hate it. And like the author said, it must be intentional, so that someone at Google can show the usage numbers and get a promotion.
So well put, my good sir, this describes exactly my feelings with k8s. It always starts off all good with just managing a couple of containers to run your web app. Then before you know it, the devops folks have decided that they need to put a gazillion other services and an entire software-defined networking layer on top of it.
After spending a lot of time "optimizing" or "hardening" the cluster, cloud spend has doubled or tripled. Incidents have also doubled or tripled, as has downtime. Debugging effort has doubled or tripled as well.
I ended up saying goodbye to those devops folks, nuking the cluster, booted up a single VM with debian, enabled the firewall and used Kamal to deploy the app with docker. Despite having only a single VM rather than a cluster, things have never been more stable and reliable from an infrastructure point of view. Costs have plummeted as well, it's so much cheaper to run. It's also so much easier and more fun to debug.
And yes, a single VM really is fine, you can get REALLY big VMs which is fine for most business applications like we run. Most business applications only have hundreds to thousands of users. The cloud provider (Google in our case) manages hardware failures. In case we need to upgrade with downtime, we spin up a second VM next to it, provision it, and update the IP address in Cloudflare. Not even any need for a load balancer.
I think this is probably true, and basically how I got into software myself.
I always dabbled in writing software and things for the web, but for some reason I never thought studying computer science would be any fun and that a career as a software developer sounded boring. But then I got an actual full time office job and oh boy, did my perspective on things change fast.
That first job did not have anything to do with writing software at all. But I saw people struggle with things that seemed to me trivial to automate, such as making annotations on paper bank statements and entering them into the system line-by-line. The bookkeeping system did support electronic bank statements, but lacked features to match certain descriptions to certain cost places. In the end it was indeed faster to go the paper route... It took me a couple of hours to write something that saved hours every week and that basically kick started my software career.
Would AI have made much of a difference here? Yes, in terms of getting to the correct solution faster, but probably not in terms of who would have done that. People would still come to the person who came up with the solution to ask for maintenance and new features.