Lobster Roll

Stories by mort

lobste.rs migrates from MariaDB to SQLite
lobste.rs entered read-only mode earlier today to migrate from MariaDB to SQLite. I found that interesting and found this GitHub issue with discussion, first around moving to PostgreSQL, then about moving to SQLite: https://github.com/lobsters/lobsters/issues/539 This is exactly the kind of inter...
Freenode is now nuking channels which mention Libera Chat in their topic
I think this is important enough to have a thread about in lobsters. It seems like Freenode is preventing channels from mentioning libera.chat in their topic, and nuked a whole bunch of channels which did yesterday. Here's an excerpt from one of the affected channels, #go-nuts: ``` 11:20 <mor...
Hard numbers in the Wayland vs X11 input latency discussion (mort.coffee)
The tar archive format, its extensions, and why GNU tar extracts in quadratic time (mort.coffee)
Browsers are _big_. (gitlab.com)
Chromium has a compilation time problem.
So, this is no long and insightful write-up, but I still think it's worth writing a few words about and submitting here. I recently needed to compile Chromium for work. Chromium has a total of 76924 C and C++ files. A single complete compile, with 32-bit ARM as the target architecture, on a build...
Faster virtual machines: Speeding up programming language execution (mort.coffee)
PSA: iTerm2 now has ChatGPT integration (iterm2.com)
What does your company use for documentation?
Recently, I've started to feel the pain of not having a central place to store general documentation where I work. I mean, for individual software projects, a readme in the git repository is usually enough, but there are times when you would like to document something which doesn't naturally live in...
Mouseless is a Firefox addon to browse without using the mouse as much which supports Firefox 57 (addons.mozilla.org)
As most of you know, Firefox will soon drop support for "legacy" extensions, and Vimperator, Pentadactyl, and Mouseless Browsing are all incompatible with Firefox 57. I just recently ported my modest alternative to those extensions to WebExtensions, and figured that some of the people on lobste.rs c...
Can we revisit the decision to hide comment votes?
A while ago, [Lobsters started hiding "fresh but boring" comment scores](https://lobste.rs/s/yrb1ja/experiment_with_hiding_fresh_boring). Personally, I haven't found this change to be great, for a couple of reasons: 1. It really doesn't make sense that I can't see how my own comment is doing f...
I've been toying with making a testing library for C, and I think it's coming together pretty well. (github.com)
I wanted to find out how nice of a unit testing "DSL" I could make by abusing the C preprocessor, and I think the result isn't too bad. One notable feature are the Go-inspired defer functionality, which I think makes tearing down tests really nice, and makes teardown basically "just work" even wh...
I made JCOF, an object notation which encodes data more efficiently than JSON (github.com)
C compiler quirks I have encountered (mort.coffee)
Some obscure C features you might not know about (mort.coffee)
I linked my Snow testing library here on lobste.rs two days ago, [and got a ton of great feedback](https://lobste.rs/s/un88in/ive_been_toying_with_making_testing), a lot of which I have incorporated into the library. I figured it would be fun to write up some of the more obscure C features I lear...
Lennart Poettering's new project: casync — A tool for distributing file system images (0pointer.net)
Biden signs executive order on Right to Repair (youtu.be)
Scientific Computing in Rust (aftix.xyz)
Remotedotool, remote controlling graphical systems over SSH (gitlab.com)
This might not be useful to most people, but it's probably really useful for some people. I've been doing a bunch of embedded and embedded-ish development for work and otherwise, and it's useful to not need a separate keyboard connected to the device just to poke graphical applications now and then....
mmenu, a wrapper around dmenu to add support for math and clipboard (github.com)
I've been annoyed that Mac (and Windows?) users have been able to write math in their launcher, while I with my i3wm and dmenu couldn't. I decided to do something about that today. mmenu is a short script intended to be a replacement for dmenu_run. It works the same, executing the program you sel...
Tim Berners-Lee Endorses DRM In HTML5, Offers Depressingly Weak Defense Of His Decision (techdirt.com)
Hacking on Clang is surprisingly easy (mort.coffee)
How I replaced an Apple TV with Linux and some JavaScript (mort.coffee)
HConfig, a human friendly config file for node.js applications (github.com)
Many tools written in node.js just use a JSON file (or a JSON-like file, like yaml or hjson) for configuration. That works well for some stuff (except JSON; that's generally a pain to write and has no comments), but they're all sorely missing a way to spread your configuration out across multiple fi...
Mongodb is significantly slower than both Cassandra and HyperDex (hyperdex.org)
The Nature of Lisp (2006) (defmacro.org)
I just encountered this article. I found it to be very nice, and figured I should share it.
PSA for Firefox users on Linux: set MOZ_USE_XINPUT2=1 to enable macOS-like smooth scrolling
I've been annoyed for a while that Firefox only supports the kind of two finger scrolling where moving the fingers on the touch pad a decent amount emits a scroll wheel event. I just now found out that if you start Firefox with the environment variable MOZ_USE_XINPUT2 set to 1, it will use xinput 2,...
Dedaemon, a program which manages displays and input devices and such like a desktop environment wou (github.com)
I'm posting this here because I know a lot of you guys, like me, uses window managers, and thus probably have encountered some of the challenges this tries to solve; displays and input devices not being as plug-and-play as they should be.
A general makefile that's easily configured using a conf.mk file (github.com)
I went through the process of actually learning how to make a Makefile a while ago, and it wasn't a very fun experience. There was very little information about how to actually make a good Makefile for a C project; there were lots of tiny examples, and a lot of theory about how make works, but very ...
Smake, a new set of implicit rules for Make (github.com)
It's interesting that [Xmake was posted here](https://lobste.rs/s/hqcpgr/xmake_modern_c_c_build_utility) just before I planned to post Smake, but having read through what Xmake does, it looks like there's space for both Smake and Xmake in the world (and maybe even on lobste.rs). The two projects...