CSS as the back end – Cascading Server Sheets
Here we go again! Another one of these, and promise, you will be questioning my sanity after this...
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 21,835 posts.
Here we go again! Another one of these, and promise, you will be questioning my sanity after this...
Introducing new web service to determine if a number is odd or not. No new code dependency in your npm modules. Can use with almost any programming language, not just Javascript under node.js. No license. Easy to test in a web browser
Where does JIT-compiled code live? How does Ruby switch between bytecode and native execution? Why does TracePoint slow everything down? This post answers the JIT questions most Ruby developers have but rarely see explained.
Note: this post was written for Lean 3; the latest version, Lean 4, is a very different language. Turn back the clock to 2009: a confused physics major newly infatuated with math and computer science, I enrolled in MATH 273: Numbers and Proofs at the University of Calgary. This wasn’t my first encounter with…
Less talk, more action – Apple just approved two of my JavaScript games for the AppStore: Biolab Disaster and Drop . Both are free; go check them out. You can also play them in your browser here and here .
Welp, this is a weird blog post! Very unexpectedly, we quickly invalidated some of the core hypothesis that make Zaplib work as a startup.
Integrating my BM25 pandas search library, SearchArray, into BEIR, in order to embarass myself in public.
The Progress Report has come and with it some major changes and decisions. However, before we get into new things, we need to go over an ongoing change as we've seen some users struggling. In the last progress report, we updated our project solutions to Microsoft Visual Studio C++ 2019. We thought there would be no…
How a bit of algorithm engineering and low-level details can alter what seems like a straightforward trade-off on a blackboard.
Realtime rendering and videogame programming mostly, but I love computer science and visuals in all their forms. This is a notepad of my ideas.
What has caused you to slack off on the bug reporting? The cost of computer time or the human effort side? (I’m guessing the second.)
Isolating cloud sync and persistent storage in an app architecture.
Both my day job and my open-source work involve constant use of git and GitHub. These are some useful patterns that I’ve found myself using regularly. (From this point onwards, I shall abbreviate a “pull request” as PR).
This post is the second in a three-part series about Cranelift . In the first post , I described the context around Cranelift and our project to replace its backend code-generation infrastructure, and detailed the instruction-selection problem and how we solve it. The remaining two posts will be deep-dives into some…
A monkey. That’s the default name a part in the JavaScript Engine of Mozilla Firefox gets. Even the full engine has its own monkey name, ...
Distributed transactions are one of the meanest, baddest problems in relational databases. This post explains why distributed transactions are hard and how the Citus database supports distributed transactions by employing features like distributed deadlock detection, 2PC, and streaming replication in Postgres.
X X The recently released Million Song Dataset (MSD), a collaborative project between The Echo Nest and Columbia’s LabROSA is a fantastic resource for music researchers. It contains detailed…
Ruby provides support for lazy loading enumerators, allowing efficient processing of large or infinite sequences.
At the last Globo.com’s hackathon, Lucas Costa and I built a simple Lua library to provide a distributed rate measurement system that depends on Redis and run embedded in Nginx but before we …
Adrian Kummerländer's blog on software development, linux and open source
How bounded higher-kinded polymorphism arises in practice, and how to express it in OCaml, in several different ways. Some ways are rather concise -- but less widely known.
This post explains how to implement heap allocators from scratch. It presents and discusses different allocator designs, including bump allocation, li…
An esoteric, graphical functional language