miniblog.

Perl 6 may be moving to a C vs C++ distinction with Perl 5: similar languages, but not the same.
The only reason I sometimes use `more` instead of `less` is that `more` doesn't clear the screen, so you can see output in your scrollback. Turns out that `less -X` does this! Handy.
An actively exploited security issue in keyfobs that work by proximity: malicious users can replay signals from the house to the car! https://geekologie.com/2019/08/gone-in-thirty-seconds-doorbell-cam-foot.php Newer cars use rolling keycodes so you can't replay the same code after locking, but this seems harder to defend against.
Measuring performance of different distro package managers, with a big range of install times and even package size for the same program!
Designing effective delivery robots seems to require making them really cute: https://www.sfchronicle.com/business/article/Kiwibots-win-fans-at-UC-Berkeley-as-they-deliver-13895867.php Mixing ML with human driver supervision is an interesting design too.
It's weird removing syntactic features from a programming language. Do you provide tests? The odds of regression are small (unlikely to accidentally reimplement it unless there are bad merges). I feel it's good to exercise the change somehow though.
Signify, OpenBSD's alternative to GPG, is really elegant: https://www.openbsd.org/papers/bsdcan-signify.html No key servers, a simple CLI, a crypto algorithm without random inputs that you can screw up, and readable keys!
Benchmarking web assembly, and discussing its maturity for large projects: https://www.pdftron.com/blog/wasm/wasm-vs-pnacl/ While it's viable for many purposes today, wasm still feels like it has a ton of potential to grow and evolve.
I still love the demo of abstract types for hash map access. If you have a function K -> Map<K,V> -> V it's almost certainly looking up the key. It's nifty because there are very few other implementations that fit this signature.
Amazing story of how Coinbase detected and responded to a sophisticated attack using two Firefox 0-days and spear phishing:
Adding machine learning to technology design wisely: https://www.mindtheproduct.com/2019/08/5-machine-learning-lessons-for-product-managers/ (Includes a cute example of faking an AI chat bot with real people to see if a chat bot is a good solution!)
How Rust models generators and async functions as memory efficient state machines:
Merge any sequence of patches (e.g. rebasing a branch) feels like it relies on hope. Whether or not you get conflicts, whether or not the output is syntactically valid or does the right thing: sometimes the computer does too little, and other times it does too much.
A significant part of development practice is trying to work out "should I manually change this, or should I write a complex editor macro / sed/awk script / program using an AST and refactoring library?". It's easy to make the wrong decision in both directions IME.
One of the most un-Emacsy things I've done to my configuration is binding C-x C-g to 'find all files in this repo' command. It's really useful (right next to C-x C-f!), but binding C-g (quit) feels like bad practice. Emacs doesn't judge though :)
Showing 1,846-1,860 of 7,549 posts