Generating JSON Directly from Postgres
PostgreSQL has built-in JSON generators that can be used to create structured JSON output right in the database, upping performance and radically simplifying web tiers.
The latest blog posts to take off on Hacker News. 21,828 posts.
PostgreSQL has built-in JSON generators that can be used to create structured JSON output right in the database, upping performance and radically simplifying web tiers.
The other day, we started getting strange reports from some customers of incident.io. Their incident identifiers — unique numbers to identify each incident — appeared to have jumped unexpectedly.
Pharo is a pure object-oriented programming language and a powerful environment, focused on simplicity and immediate feedback.
In our 54th reading group meeting, we were looking for an answer to an important question in the distributed systems community: “What about Raft?” We looked at the “ Paxos vs Raft: Have we reached consensus on distributed consensus? ” paper to try to find the answer. As always, we had an excellent presentation, this…
4-day coding marathon
I recently got a new Macbook, and began setting up the Nix package manager to install my developer toolset. I mainly did this to try and have a working setup without installing Homebrew. Since I ran into a few issues, I wanted to briefly document what I did and why in case others wanted to try the same. Why Nix? (and…
Keynote at 15th ACM International Conference on Distributed and Event-based Systems (DEBS) , Online (originally planned to be in Milan, Italy), July 2021.
Learn how to beat TimSort at merging sorted lists in Python by creating a C extension. Discover the performance advantages of merging lists compare...
This article is about how to use the 'tail' command. Here is an overview of how you can use the 'head' and 'tail' commands to output different parts of a file:
The current Go language memory model was written in 2009, with minor updates since. It is clear that there are at least a few details that we should add to the current memory model, among them an explicit endorsement of race detectors and a clear statement of how the APIs in sync/atomic synchronize programs.
Cattle not pets The majority of AWS EC2 I need to operate these days are members of Kubernetes clusters. For remote access to them I’m more commonly authenticating to the Kube API to spawn a privileged ephemeral debugger pod rather than accessing the host directly. I have little need for host access even for the…
This is the first article of a series on the functional language Haskell for beginners
We wrote a Brainfuck compiler back in April . That one developed a simple architecture to support multiple backends. Today, I want to write a new Brainfuck compiler. One that can only run on a single system, OpenBSD /amd64. And one that is as small as I can possibly make it. I broke into the sub-256 bytes club with my…
Emma Catlin | Software Engineer
I recently had cause to take a beginners course in R - a language I'm fairly familiar with. One of the other students had never used it before, so we were buddied up in order for me to show them the ropes. The first lesson of R is always the same. Read a CSV, manipulate it a bit, draw a graph. We did it all without…
You remember that time you passive-aggressively completed a story in the most useless way possible to check that checkbox? That’s most…
The conventional view of Software Testing The hardware and software worlds may seem poles apart, and in many ways, they indeed are. But there’s a wealth of knowledge that each can learn from the ot…
How does AWS Lambda work under the hood? Let's find out together!
But SQL is the only widely-used implementation of the relational model, and it is:
Interruptions are one of the biggest sources of inefficiency for programmers. Now, to be fair, they’re probably a big source of inefficiency for everyone, but relatively speaking, they’re worse for programmers. To understand what I mean, let’s take someone whose job is in sales. A lot of the day is probably spent on…
Failure in computer systems is inevitable. Adopting Erlang's philosophy of "Let it crash" at the many layers of abstractions in software can have a huge positive impact on resiliency.
Facebook is using GraalVM to accelerate its Spark workloads and reduce memory & CPU usage. Keep reading to learn about their migration…
Craig Stuntz's personal website about programming languages, type theory, DIY synthesizers, compilers, and math.
Describes a regular expressions technique to match a word or pattern except in certain contexts: excluding tags, ignoring contents, word blacklist.
PlaybookUX is an all-in-one software that allows you to recruit, conduct and analyze both qualitative and quantitative research, enhanced by AI.
...though it's not the flagship borrow checking that's at fault. What I noticed, and would like to share with you today, is that the exhaustiveness checking performed by the Rust compiler on match patterns is a superset of the SAT problem.…
<p> Python standard library includes many great modules that can help you make your code cleaner and simpler and <code class="inline">functools</code> is d...