Specter – Clojure API for immutable programming (2017)
After two years of being open source and a lot of development, Specter has reached 1.0. In this po...
Topics /
The most popular blog posts about software engineering on Hacker News. 14,540 posts.
After two years of being open source and a lot of development, Specter has reached 1.0. In this po...
Several PDF implementations advertise AES-256, but generate the 256-bit key from either a very small state space, or from insecure random sources.
Removing spaces from a string is a common task in text processing. Instead of removing single character we often want to remove all the white space characters or the punctuation characters etc.
In this post I will make the case for the concept of a “runtime resizable struct” in Zig. I will then design an API by exploiting Zig’s powerful comptime functionality.
This is an encoder (based on gifsicle ) which implements lossy LZW compression. It can reduce animgif file sizes by 30%—50% at a cost of some dithering/noise.
There’s something missing from the Docker ecosystem: a type-checker.
Update (2023-06-28): Added “I required a file, but I want to know what files were actually loaded” I love puts debugging I am a puts debuggerer. I don’t say this to disparage people that use a Real Debugger. I think Real Debuggers are great, I’ve just never taken the time to learn one well. Every time I try to lean…
This is a simple function that can be called from the command line, just like if it was a regular com...
In a way, these two books are responsible for my entire professional career. With early computers, you didn’t boot up to a fancy schmancy desktop, or a screen full of apps you could easily poke and prod with your finger. No, those computers booted up to the command line.
How to make an access-limiting proxy for any API
I’m a huge proponent of designing your code around the data, rather than the other way around, and I think it’s one of the reasons git has been fairly successful… I will, in fact, claim that the difference between a bad programmer and a good one is whether he considers his code or his data structures more important…
For the past year and a half or so I've been working full-time at Dumbwaiter Design doing Django development. I've picked up a bunch of useful tricks along the way that help me work, and I figured I'd share them.
Miguel de Icaza's Blog
In this article, we will perform a series of hands-on experiments that demonstrate the various Emacs commands that can be used to sort text in different ways. There is sufficient documentation available for these commands in the Emacs and Elisp manuals. In this article, however, we will take a look at some concrete…
Summary : I present a simple Python module that after imported, changes the values of two integers. The purpose is (a) show that modules can do harmful and unexpected things, (b) show an example of how to write a simple module in C, and (c) introduce a few things in CPython source code.
Vim 8.1 was released in May 2018. The “main new feature” was official support for running a terminal within vim. Along with this came a built-in debugger plugin, termdebug, which provid…
I spent a lot of time and effort digging up the numbers and facts for this post! Lots of people keep referring to the awesome summary put together by a friendly pseudonymous "Tim" which says that "53 out of 95" (55.7%) security flaws in curl could've been prevented if curl had been written in Rust. … Continue reading…
Kari Marttila’s Blog (e.g. cloud and Clojure related articles)
In which I provide easy instructions to try a new patch that drastically improves the start up time of Ruby applications, in the hope that with wide support it will be merged into the upcoming 1.9.3 release. Skip to the bottom for instructions, or keep reading for the narrative.
When I told my colleague Matt Gaunt I was thinking of writing a piece on microtask queueing and execution within the browser's event loop, he said "I'll be honest with you Jake, I'm not going to read that". Well, I've written it anyway, so we're all going to sit here and enjoy it, ok?
So a good while ago I added a fun curl version of my site, meant for viewing in the terminal. Try running these commands!
It's not about technology for its own sake. It's about being able to implement your ideas.