Technological generalist. Agile pragmatist. Functional programmist. Dynamic typist.

London
Joined November 2007
Creating the perfect abstraction isn't hard, but it does take patience. A beginner can get it right with three examples in hand. We need to wait until then. Planning is extremely useful but we need to be aware that no amount of it will grant us omniscience.
1
4
185
If you're looking for your next FLOSS project, coding a vim plugin for the open source ML model ReplitML might be a good candidate: github.com/replit/ReplitLM
1
2
201
My version (as an alias): tmp() { zsh -c 'cd "$(mktemp -d)" && npm init --yes >/dev/null && zsh' }
New little script that pops me into a temporary directory for a while until I Ctrl-d. I'm always going to ~/tmp && mkdir blahblahwahtever to test something out. `tmpsh` saves a few seconds. :)
1
294
Next.js Server Actions looking good: nextjs.org/blog/next-13-4#se…
112
It was only a matter of time. Now you can create declarative cloud infrastructure using natural-language: pulumi.com/ai
113
ACID transactions are best practice & every distributed product should support them. There are probably weird corner cases where the data isn't essential & you can try to get by without them. But in this case you should just assume that some of your data is corrupted. 9/x
1
1
4
368
Yes, your PostgreSQL triggers also need tests. I've built myself a script to run tests on code change (feedback loop, good for TDD) which I might open source one day.
113
New Pulumi Docker Provider builds images 50x faster now (ie it finally does layer caching) pulumi.com/blog/build-images…
1
135
Sub 1/10th of a second billable container instance time
For scrapers, Google Cloud Scheduler + Google Cloud Run is magical. So robust. Publish the data to a PubSub and you can connect more consumers on demand. All cloud infra neatly written and documented as Pulumi scripts of course.
99
- If we want to preserve the zero-install experience of the web *and* enable rich web pages, we need *some* way to share objects across sites. We can't and shouldn't rely on browsers to implement the majority of APIs. There has to be some way for developers to do this.
4
3
34
3,011
For scrapers, Google Cloud Scheduler + Google Cloud Run is magical. So robust. Publish the data to a PubSub and you can connect more consumers on demand. All cloud infra neatly written and documented as Pulumi scripts of course.
1
1
206
With Hasura, it's easy to start with entity-centric GraphQL and add "custom" business logic mutations as required. Or you can use REST just for the latter too, nothing wrong with that.
Another question came my way, this time about entity-centric REST. In short, don't do it. Clients will have to do crappy round trips for joins. GraphQL helps with that. But when it comes to multi-entity updates/inserts? You don't have transactions. That's going to be trouble.
143
Of all the things that bring joy, controlling your laptop remotely from your phone with x11vnc over a ZeroTier VPN is one of them. You should try.
2
4
1,956
No more writing API endpoints between frontend and backend. This is the future.
1
1
3
390
Been waiting for this! Electric allows you to inline backend and frontend code, colocated, as it should be.
Electric Clojure (formerly Photon) is now public! Electric is a reactive signals DSL for fullstack web UI, with compiler-managed network sync. - fully reactive language - multi-tier - network-transparent - strong composition - multiplayer native
2
3
9
884
Is it me or vanilla npm is super fast these days.
1
3
240
Prop drilling? Sometimes all you need is a little restructuring.
83
678
80
4,618
908,355
Declarative tools like Pulumi and NixOS really be keeping me sane these days.
2
299