My fix for shut-up is now on MELPA stable! It's also a fun example of how painful bugs need long commit messages, even if the the change itself is small.
https://github.com/cask/shut-up/commit/081d6b01e3ba0e60326558e545c4019219e046ce
miniblog.
It's the logical progression of vulnerabilities, but the weaponisation of zero-day exploits with no user interaction is scary.
https://citizenlab.ca/2020/12/the-great-ipwn-journalists-hacked-with-suspected-nso-group-imessage-zero-click-exploit/
A charming web page design: it comes with a battery indicator of the solar powered server!
https://solar.lowtechmagazine.com/2020/12/how-and-why-i-stopped-buying-new-laptops.html
It also makes me realise just how little I think about servers when I'm browsing.
Graydon's presentation is a wonderful romp across different programming language implementations, I really enjoyed it!
https://venge.net/graydon/talks/CompilerTalk-2019.pdf https://twitter.com/anewtf/status/1335230251123826693
I really like the framing of legacy code as "money making code".
Presumably if it wasn't making money (possibly indirectly), it would have been deleted!
Emacs survey results are out! Lots of interesting tidbits: people love magit, ivy and flycheck, and a striking number of respondents are fairly new to Emacs! This seems great for the health of the community.
Installing Linux on a NVMe device today. The naming scheme is helpful: /dev/nvme1n1p2 is the second partition on the device. /dev/sdb2 is little less explicit.
https://wiki.archlinux.org/index.php/Device_file#Block_device_names
If I'm about to run a complex or scary terminal command, I like putting echo in front of it:
$ echo dd if=/dev/urandom of=/dev/...
It's a nice way of having a last check of your command. The command is now in your scrollback, as well as your history.
The Futamura projections are really cool: partially applying an interpreter gives you a compiler!
I'm not really sure what this enables though. You'd get a pretty poor compiler.
Is this idea used much? I've occasionally heard it referenced for RPython.
I've always wondered why more compilers don't use parameters with basic blocks rather than phi nodes.
I enjoyed this post discussing tradeoffs, including comments on how GHC and Swift model blocks:
https://blog.ezyang.com/2020/10/the-hidden-problem-with-basic-block-procedures-in-ssa/
Python's pip is adding a full dependency resolver! https://pyfound.blogspot.com/2020/03/new-pip-resolver-to-roll-out-this-year.html
Fun fact: the `pip check` command recommended was originally written by me in 2013: https://github.com/pypa/pip/pull/1001
I really admire projects that put their goal in their name. For example, lastpass.
It's a great way of staying focused.
I once built a project called "one click deploys" to automate a manual deployment. The name stopped us adding unnecessary clickthroughts on big systems.
In celebration of my Brainfuck compiler being referenced on Wikipedia, I've given it a full website!
I discuss the compiler techniques used, tricks for fuzz-testing IR, and even discuss portability for the brave people that actually try it :)
https://bfc.wilfred.me.uk/
Fun, accessible introduction to metaclasses in Ruby: https://dumas-olivier.medium.com/what-i-didnt-know-about-ruby-classes-9de64ee40d4d
PL module systems impacting IDE design, and how salsa (Rust memoisation library for trees of function calls) is used in rust-analyzer:
https://rust-analyzer.github.io/blog/2020/07/20/three-architectures-for-responsive-ide.html
One consequence of moving all my personal projects to automatic deploy with Docker: I've started avoiding configuration files.
Command line arguments or environment variables are much easier to work with, and don't require fiddling with Ansible or similar.
Contrasting convolution to multiplication, and some great examples to build intuition: https://betterexplained.com/articles/intuitive-convolution/
io_uring enables applications to submit multiple syscalls at once, and eBPF allows arbitrary execution inside the kernel!
https://thenewstack.io/how-io_uring-and-ebpf-will-revolutionize-programming-in-linux/
I originally heard about Cranelift in the context of fast rustc builds in debug mode. TIL it was originally written to make webassembly run faster! https://github.com/bytecodealliance/wasmtime/tree/main/cranelift
(via https://hacks.mozilla.org/2018/10/webassemblys-post-mvp-future/)
Knowledge work, Getting Things Done, and productivity at an organisational level: https://www.newyorker.com/tech/annals-of-technology/the-rise-and-fall-of-getting-things-done
Showing 1,221-1,240 of 7,508 posts