Java Development on an Apple M1 – A One Year Review
Collection of pitfalls, tips & tricks, and workarounds for Java development on an Apple M1 processor (ARM64): Testcontainers, Docker, Testing
Topics /
The most popular blog posts about software engineering on Hacker News. 14,540 posts.
Collection of pitfalls, tips & tricks, and workarounds for Java development on an Apple M1 processor (ARM64): Testcontainers, Docker, Testing
My experiences with Gradle and why I finally moved back to Maven
It's been a year since I first came across the concept of functional programming. To say it's changed my life, is an unjust understatement...
Bun is a JavaScript runtime that just released version 1.0! Now you have three choices for running JavaScript outside of the browser: Node, Deno, and Bun. One of Bun's selling points is speed! It makes some interesting decisions to achieve this.
I was reading the metr article on how llm code passes test much more often than it is of mergeable quality . They look at the performance of llm s doing programming when the success criterion is “passes all tests” and compare it to when the success criterion is “would get approved by the maintainer”. Unsurprisingly…
I cancelled my annual Replit Hacker plan and I'll let it lapse at the end of December of 2023. Replit is a popular and growing multi lan...
UPDATE: This blog post has been updated based on feedback from Reddit and Hacker News. HN discussion: https://news.ycombinator.com/item?id...
For a while now I’ve been hearing from engineers who run multiple coding agents at once—firing up several Claude Code or Codex CLI instances at the same time, sometimes in …
Let's look at Vec<T> to get a better understanding of its inner structure.
Collectively, we have been thinking about sorting for longer than we have had computers. There is still an active literature 1 , 2 , 3 . We are taught that how the counts of comparisons and swaps vary with problem size is what matters: as problems get bigger, order dominates, and anything else is buried in the noise…
I write a lot of command-line programs. For tiny programs I usually go with the typical UNIX approach: throw together a half-assed shell script and move on. For large programs I make a full Common Lisp project, with an ASDF system definition and such. But there's a middle ground of small ish programs that don't…
If you’ve worked with Django at some point you probably had the need for some background processing of long running tasks. Chances are you’ve used some sort of task queue, and Celery is currently the most popular project for this sort of thing in the Python (and Django) world (but there are others).
Disclaimer: This article mentions https://terra-cotta.ai/, an LLM experimentation platform I am building Introduction ChatGPT, Bard, and other large language models (LLMs) are very useful for a wide variety of tasks from writing code to answering complex questions to aiding with education. However, these models are…
A pragmatic new design for high-level abstractions Monads (and, more generally, constructs known as “higher kinded types”) are a tool for high-level abstraction in programming languages1. Historically, there has been a lot of debate inside (and outside) the Rust community about whether monads would be a useful…
This blog post is about how we added package versioning to Go, in the form of Go modules, and the reasons we made the choices we did. It is adapted and updated from a talk I gave at GopherCon Singapore in 2018 .
There are too many packages and too many dependencies, too deeply nested. Can we measure the problem? And what do we do about it?
Much has been written about Go’s interfaces . They’re one of the language features I like best, providing a very pragmatic trade-off between the complexity of more powerful type systems and the anarchy of duck typing. If you’re not already familiar with Go or Go’s interfaces, I’d encourage you to read an introduction…
Sometime recently in the past I complained about Maildir. You can go read the post, but the executive summary is that I think Maildir uses an actively user-hostile directory structure and extremely convoluted filenames that do not convey any meaning at all. For good measure, I will also reiterate that Maildir does…
How I develop software at 800 words per minute with a screen reader
Some good news is coming in Rust 1.86