Articles

53 articles · page 5 of 6

2024

  1. Scala Cats Type Class Intro

    Learning the type classes provided by Scala's Cats library step by step, guided by their dependency diagram.

    Programming
  2. 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.

    Programming
  3. Trying ForkJoinPool

    Exploring how ForkJoinPool, the engine behind CompletableFuture and Stream's parallel processing, works by writing code with it.

    Programming
  4. 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.

    Emacs
  5. 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.

    Programming
  6. 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.

    LLM
  7. 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.

    Nix
  8. 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.

    Nix
  9. 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.

    Programming
  10. 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.

    Programming