miniblog.

Programming should be exercising the brain, not the fingers. Ideally not the part of the brain that can handle irregular verbs.
There are still interesting unsolved problems in live programming. Most live systems ignore multithreading and low level hardware access.
Another great post by @Ngnghm, this time discussing why kernels are poor abstraction:
Profound (if rather odd) comparison between ants and labour coordination in developer teams:
calloc has a copy-on-write feature that can produce surprising speedups:
I'm beginning to understand org-mode. It's basically markdown on steroids with a great set of commands for manipulating it.
If you're using zsh then substring history: https://github.com/zsh-users/zsh-history-substring-search and highlighting: https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/INSTALL.md are huge timesavers.
Houyhnhnm Computing: Non-Stop Change https://ngnghm.github.io/blog/2015/09/08/chapter-5-non-stop-change/ (thought provoking discussion on live programming and mutating programs)
LLVM's undef value can have surprising behaviour and even inhibit useful optimisations!
Installed a new Arch Linux system today! Full disk encryption, LVM, Gnome, WiFi all straightforward. The wiki is wonderfully clear.
Mind-expanding worked example of partial evaluation, exploring the interpreter/compiler divide, in Scheme:
'The success of Unix is due to its design of small composable tools.' Is this true, or was it the lack of other open source options?
(let fac ([n 10]) (if (zero? n) 1 (* n (fac (sub1 n))))) Interesting, I've never seen this style of let before. I believe it's Scheme-only.
'Fold is better than looping because the loop is incidental' yes, but using lambda is incidental too! Perhaps an accumulate macro is better?
Emacs tip of the day: you've probably got C-x C-s in muscle memory, but https://github.com/bbatsov/super-save will save you all that typing. Automate!
Showing 901-915 of 922 posts