Articles
53 articles · page 5 of 6
2024
Scala Cats Type Class Intro
Learning the type classes provided by Scala's Cats library step by step, guided by their dependency diagram.
A Gentle Tour of Java Optional for People Who Want to Understand It Better
Explaining what map/flatMap on Optional and Stream really mean, building toward the concept of a Functor from scratch.
Trying ForkJoinPool
Exploring how ForkJoinPool, the engine behind CompletableFuture and Stream's parallel processing, works by writing code with it.
Customize Icon Display in nerd-icons-dired
Configuring nerd-icons-dired to customize icon display in Emacs's dired, for users of the Setup El framework.
Relearning Scala (Environment Setup)
Setting up an Emacs development environment while relearning Scala 3, with some personal thoughts on why Scala fell out of fashion.
Trying a Local LLM
Setting up a local LLM with Ollama after upgrading to an M4 Pro Mac mini, and sharing impressions from trying it out.
tmux Default Shell Became sh
A note on a home-manager bug where the nixpkgs tmux 3.5a update makes new panes default to sh, and how to fix it.
Using the ni Command with home-manager
A note on the configuration and fix needed to get the package-manager-agnostic ni command working under home-manager.
About Optional
Framing Java's Optional as part of the lineage of Haskell's Maybe, and clarifying how to use it in line with its design intent.
Pitfalls of Collectors#toMap
Explaining why Collectors#toMap throws on duplicate keys when converting a Stream to a Map, and how to avoid it with a merge function.