You can also also view the full archives of micro-posts. Longer blog posts are available in the Articles section.
Recursive data suggest recursive solutions. This is the key insight you need for understanding recursion. Not only does it make sense once you think about it, it also demonstrates why most other approaches to teaching recursion are essentially incorrect. — How Not to Teach Recursion
pytest supports running Python unittest-based tests out of the box. — How to use unittest-based tests with pytest
This is great since it allows me to use the same compiler (pytest) in Neovim, independent of the testing framework.
During the Internet’s adolescence, words (and thus blogs) were easier to come by, because for the most part, almost all of the interaction we had online was using devices designed for interaction via text. With the shift to phones as a more popular interaction device, the ease of pouring thoughts into a textual medium has decreased. — Blogging Shift
♪ Marianne Faithfull · Broken English (12" Remix)
Profiling in Haskell for a 10x Speedup: Great read. #haskell
Editing Lisp dialect in Neovim like a pro: beside Vim’s builtin (e.g., vib
to select inside brackets), paredit.vim (e.g., [[
go to top-level form), treesitter and nvim-treesitter-textobjects lets you navigate around your code easily, and incremental selection is a breeze. I originally used vv
(init the selection), va
(aka increase or <C-a>
) and vx
(aka decrease or <C-x>
), but now I just use <tab>
that other folks often use as an alias for %
. #vim
incremental_selection = {
enable = true,
keymaps = {
init_selection = "<tab>",
node_incremental = "<tab>",
node_decremental = "<S-tab>",
},
}