Java on Truffle – Going Fully Metacircular
Up until now, GraalVM has offered two ways to run Java programs: using the Java HotSpot VM with the GraalVM JIT (just-in-time) compiler…
The latest blog posts to take off on Hacker News. 21,829 posts.
Up until now, GraalVM has offered two ways to run Java programs: using the Java HotSpot VM with the GraalVM JIT (just-in-time) compiler…
Python f-strings give you a readable, concise way to interpolate and format strings, and they beat .format() and the % operator on speed.
André Garzia made a nice blog post called “Lua, a misunderstood language” recently, and unfortunately (but perhaps unsurprisingly) a bulk of HN comments on it was about the age-old 0-based vs. 1-based indexing debate. You see, Lua uses 1-based indexing, and lots of programmers claimed this is unnatural because “every…
This short story is not really about htop, or about the feature request that I’ll use as an illustration, but about what are the core principles that drive the development of a bit of software, down to every last detail. And by “core principles” I really mean it.
Batching work is more efficient … until cost rises nonlinearly with batch size. Then smaller batches are the most efficient. So don’t delay maintenance!
I have come to the conclusion that Software Engineering is primarily a learning endeavour, the working code is rather a side effect. This quote is actually not mine but I am paraphrasing Alberto Brandolini who is making this very point in Event Storming (he was actually talking about Software Development, but I do not…
It's now roughly seven or eight years that I'm building dynamic front ends for the web. From digital art wallets to games (1, 2) and synthesizers, I've seen it all. And since my process
Effort estimation is an important component of any project, software or otherwise. While effort estimation is something that everybody in industry is involved with on a regular basis, it is a niche topic in software engineering research. The problem is researcher attitude (e.g., they are unwilling to venture into the…
There are a whole bunch of popular interview questions that can be solved in one of two ways: Either using common data structures and algorithms in a sensible manner, or by using some properties of...
Stale Bot’s are a type of automated bot on Github, which locks issues which are “stale” (as in have no recent activity). This seems like a helpful tool at first, but in reality it’s terrible for all p
I wanted to share a story of a segmentation fault I helped track down this weekend. I thought the final root cause of the segfault was interesting because of how unrelated it was to the code I was trying to debug.
js;dr = JavaScript required; Didn’t Read. Pages that are empty without JS: dead to history (archive-org), unreliable for search results (despite any search engine claims of JS support, check it yourself), and thus ignorable. No need to waste time reading or responding. Also known as, if it’s not curlable, it’s not on…
Comparing the core values of our text editors, describing the history of Neovim's development, and discussing the rise of VSCode.
Welcome! This is a series of blog posts that shows you how to build a text editor in Rust.
Retrospect of what happened in Deno in 2020
After working through “the book” on the Rust programming language and getting started with the first non-trivial, real-world application I found myself faced with a question I didn’t yet feel well-equipped to handle: “How should you structure error handling in a mature rust application?”
This is the first post in a series about writing REST servers in Go. My plan with this series is to implement a simple REST server using several different approaches, which should make it easy to compare and contrast these approaches and their relative merits.
Or: How to Remain Sane when Approaching Gradle (with apologies to Hans Dockter).
During a recent audit, we discovered that some third-party Chromium based browsers were able to integrate Google features, such as Chrome sy...
Description of what we have learned
technology blog about ruby, scala, java, golang, software engineering and programming in general
NoSQL was the next big thing in system architecture in 2011, but overall interest in it has plateaued recently. What is NoSQL, what does it have to do with modern development, and is it worth implementing in your project?
It is not just the borrow checker
If Zig code doesn’t look like it’s jumping away to call a function, then it isn’t. This means you can be sure that the following code calls only foo() and then bar() , and this is guaranteed without needing to know the types of anything:
Earlier today Rich Hickey let the cat out of the bag that I’m joining the Clojure Core development team.