Which languages have the shortest/longest half-life?
If you didn't write any code in language X for five years, how easily could you continue maintaining an old project?
miniblog.
Linux 5.18 may drop support for the a.out executable format!
https://www.phoronix.com/scan.php?page=news_item&px=Linux-Remove-a.out
I really like instruction counts for measuring performance. It's not perfect, but it's a very stable metric, even if I'm listening to music whilst developing and benchmarking.
The Rise of the Stupid Network: a remarkable 1997 essay on what ISPs as dumb bit pipes enables, moving innovation to client devices on the internet, and avoiding the scarcity mindset from when hardware was expensive:
https://www.hyperorg.com/misc/stupidnet.html
TIL about Rust's NonZeroUsize, which is an integer that is never zero. Rust can optimise Option<NonZeroUsize> to be the same size in memory as usize!
The irony of getting bad diff displays in difftastic unit tests is not lost on me.
Maybe I've been staring at difftastic output for too long, but I find this before/after display from my tests to be pretty hard to read.
Finding meaning in open source projects, the principle of charity, and avoiding a mindset of scarcity.
Really great reflections on the motivations of open sourcing Rails.
https://world.hey.com/dhh/i-won-t-let-you-pay-me-for-my-open-source-d7cf4568
TIL that npm does not allow you to unpublish popular packages!
How Racket started, the etymology of MzScheme, and why the GUI has older commits than the stdlib!
I've come to realise that the goal of a diff tool isn't to say what's changed. You want it to say what *hasn't* changed.
Unchanged content is crucial for deciding how to group changes into hunks and how to align lines. You need matched content pairs for this.
TIl that >>> is a valid JS operator! https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Unsigned_right_shift
The ability to define small commands for npm with package.json is incredibly convenient and powerful.
I wonder why this hasn't caught on for other languages?
Displaying syntactic diffs is a really hard problem. GumTree has instructions for using it with Docker, so it's easy to try: https://github.com/GumTreeDiff/gumtree/tree/main/docker#usage
I compared some C++ with difftastic. GumTree does pretty well in the first case, but it's highlighting too much in the second.
OpenBSD's pledge is intentionally designed to be simple and easy to add to projects. It's still more granular than I expected: there are several different network permissions, and even a separate permission for tape drives!
Phabricator has 'moved line' detection in its diffs, and a comprehensible UI for it!
Source:
Showing 361-375 of 384 posts






