srpablo
Joined 16 years ago
Joined 16 years ago
Show me the JavaScript framework (or tool that exports JS) that you can give it to a middle schooler and have them make a cartoon with audio and moving images that they can draw themselves, while responding to user input. Have the exported artifact be consistent across all major operating systems and browsers.
Yeah, Flash was never replaced
AIs are pushing many things forward, but due to training sets and context windows, I think meaningfully adding to actually valuable apps, at least as we currently write them (the kind with many DBs/caches/message queues, services) will take a fair bit longer.
Brex was a lot more all-in on Elixir, including being one of the languages "stars," but moved to a more conventional stack (IIRC Java/Drop wizard microservices with Kafka to talk between them).
A good example is mutable state: for a bunch of people, functional languages that enforce immutability has this calming effect, since you know your data isn't mutating where you can't see it. You've been burned by C++ code that's passing references as arguments, and you don't know if the list you received as an argument will be the same list after you've passed it as an argument to a different function. You don't know if you can futz with that list and not make a problem for someone somewhere else.
But for most people, they much prefer how "intuitive" it is to have mutable state, where they just change the thing in front of them to be what they need. This is especially true in the context of for loops vs. recursion: "why can't I just use a for loop and increment a counter!" A lot of Golang folks love that it explicitly rejects functional mapping primitives and "all you need is a for loop."
It's a very personal decision, and while IMO it doesn't really matter for the ultimate business success (usually companies fail because of something that's not tech-related in the least), it does shape _how_ it feels to work on a tech stack, and I'd argue, what kinds of technical problems you run into.
But a part of me is reading this and thinking "friend... if PostHog was able to do what they're doing on the stack you're abandoning, do you think that stack is actually going to limit your scalability in any way that matters?" Like, you have the counterexample right there! Other companies are making the "technically worse" choice but making it work.
I love coding and I recognize that human beings are made of narratives, but this feels like 3 days you could have spent on customer needs or feature dev or marketing, and instead you rolled around in the code mud for a bit. It's fine to do that every now and then, and if this was a more radical jump (e.g. a BEAM language like Elixir or Gleam, or hell, even Golang, which has that preemptive scheduler + fast compiles/binary deploys + designed around a type system...) than I'd buy it more. And I'm not in your shoes so it's easy to armchair quarterback. But it smells a bit like getting in your head on technical narratives that are more fun to apply your creativity to, instead of the ones your company really needs.
https://www.youtube.com/watch?v=xOPiSYUSrQ0
and the second, which is one of my favorite videos of all time (if you only watch one, I'd pick this one)
https://www.youtube.com/watch?v=tMVl5U3SlS0
I think he mentions Old Man Murray's piece in the second!
You tell a decent story at the start, but your choice of example couldn't be worse.
So I know it makes you feel intelligent and cool to say "ah, but you see: this is what they wanted," but in every other way you can measure it besides the very narrow way you're focused on, it's as untrue as it could be.
It's not a panacea, and the way people talk about it drives me crazy. There are many different modalities, with very different levels of effectiveness for any given person. CBT is awful for me, for example, and it's the most popular modality. I also did ketamine-assisted therapy and it absolutely changed my life.
There are definitely people who won't get anything from it, but the reflexive "therapy is useless" is a weird thing to perform when it's obviously helped a ton of people.
[1]: https://morepablo.com/2023/12/therapy-and-wellness.html
Bleacher Report is a funny example: it used to be a darling example of Elixir, where a migration from Ruby -> Elixir claimed a move from "150 Ruby servers to 5 (probably overprovisioned) Elixir servers."[2] But then management and politics got scared, moved it all to more conventional tech, and the whole system suffered (see this legendary post[3]).
Fred Hebert describes a similar thing happening with a migration from Erlang deployments to Go/Docker/immutable, where you lose some pretty valuable capabilities by migrating to more conventional tech.[4]
I don't see this changing anytime soon -- we came of age when it was viable to attract investment with the promise of tech innovation. These days, those are liabilities because managers misunderstood the "Use Boring Technology" post the way consultants bartardized "Agile" (taking decent advice and misunderstanding it into something wholly different and horrifying). The result is you've got companies with customers in the 1000s using k8s, calling it "simple" and "Boring," whereas that same company would be called amateur if they did things like stateful deploys on-prem.[5]
At least we'll always have WhatsApp.
[1]: https://www.baldurbjarnason.com/2024/react-electron-llms-lab... [2]: https://web.archive.org/web/20170204160005/http://www.techwo... [3]: https://www.reddit.com/r/erlang/comments/18f3kl3/comment/kct... [4]: https://ferd.ca/a-pipeline-made-of-airbags.html [5]: https://morepablo.com/2023/05/where-have-all-the-hackers-gon...
[1]: https://store.steampowered.com/app/246900/Viscera_Cleanup_De...
Paul is my favorite example of "brain gout." I learned what gout was as "a disease kings used to get by eating foods that were too rich." Paul's writing when he was closer to reality, in the early 2000's, was a lot more insightful, because he was closer to reality. But if you've spent 21 years never having a material concern, and increasingly interacting with other rich people (or young people who idolize them), it takes a toll on your grasp of things. It's a king eating rich foods for decades.
Like his "wealth tax" piece, he's very proud of doing elementary maths that ignore a major part of the reality at the start (in that case, he was assuming that their money wasn't growing, just being taxed, which... my man). It's sad to see, and I hope anyone who gets financially successful takes the lesson to try as hard as possible to keep living like normal people do. Buy your own groceries. Cook your own meals. Keep close to the friends you made before you were rich.