Welcome to my page about category theory, functional programming, and other fun topics. You may be interested in some of the projects I'm involved in, or just want to know more about me.
How to Statically-link Haskell Binaries using Nix
2024-09-29
Example repo showing how to statically-link x86-64 Linux Haskell binaries with Nix
Cloudy: CLI tool for easily spinning up compute instances in the cloud
2024-09-25
Run one-off compute instances in the cloud with an interface similar to Docker
FODONUTs: Fixed-Output Derivations for Operating Network-Utilizing Tests
2023-07-24
Using fixed-output derivations to run tests that access the network
evil-nix: download files without requiring a hash
2023-06-28
A Nix library that allows downloading files without requiring a hash, even in pure-eval mode
Bound by a Free-Monad-like Structure
2023-05-11
A take on the bound Haskell library that uses a free-monad-like structure
binplz: easily curl static binaries
2023-02-26
Introducing binplz, a service that serves curl-able statically-linked binaries from Nixpkgs
Building Pandoc with stacklock2nix
2022-12-26
Use stacklock2nix to build a fully statically-linked Pandoc
Building the PureScript Compiler with stacklock2nix
2022-12-16
Use stacklock2nix to build the PureScript compiler.
Get Involved with Nixpkgs Haskell
2022-11-16
Explanation on how to get started with contributing to the Haskell subsystem of Nixpkgs
How to Setup LXD on NixOS
2022-09-10
Explanation on how to setup LXD on NixOS with a NixOS guest using unmanaged network bridge.
Who Would Find PureNix Easy to Use?
2022-01-05
What sort of developers would find PureNix easy to get started with?
PureScript Package Sets with Hashes
2021-12-10
PureScript package sets with hashes for consumption by Nix
Cross-compiling and Static-linking with Nix
2021-10-20
Easily cross-compile and static-link binaries using Nix
Xephyr for GUI over SSH X-Forwarding
2021-05-07
Xephyr can be used to show some GUI programs that don't work under normal X-Forwarding
How to Make Sure Nixpkgs Can Evaluate
2020-06-02
Explain a command to make sure nixpkgs is capable of evaluating
How Long Does It Take to Learn to Juggle?
2020-03-15
How many minutes do you have to practice to learn to juggle?
Announcing pretty-simple-3.0.0.0
2019-08-15
An easy-to-use pretty-printing library for debugging Haskell code
Open Sum Types in Haskell with world-peace
2019-07-11
The world-peace library gives easy-to-use open sum types in Haskell
ghcid for Web App Development
2019-04-07
ghcid is useful for quickly compiling and rebuilding a Haskell web application on changes
Nix Derivation for fast.ai Course
2019-03-16
A Nix derivation for a Jupyter environment for the fast.ai Practical Deep Learning for Coders v3 course
PlayStation 3/4 Controller Over Bluetooth on NixOS
2018-12-20
How to use a PlayStation 3 and PlayStation 4 controller over Bluetooth on NixOS
How to get into Machine Learning for a Haskeller
2018-08-21
How to approach learning about data science as a Haskeller
Install VirtualBox Oracle Extension Pack on NixOS
2018-08-19
How to install the VirtualBox Extension Pack on NixOS
Steps for Releasing a Haskell Package to Hackage
2018-07-16
Steps to follow when releasing a Haskell Package to Hackage
CLI Program for Pretty-Printing Haskell Datatypes
2018-03-02
I released a small CLI program for pretty-printing Haskell datatypes
Use packages from nixos-unstable in configuration.nix without nix-channel
2018-02-18
How to install packages from nixos-unstable in configuration.nix without using nix-channel
XMonad and Taffybar on NixOS using Stack
2018-02-16
Show how to setup XMonad and Taffybar on NixOS compiling with Stack
GHC Warnings You Should Use in Addition to -Wall
2017-07-28
List of important GHC warnings you should use that are not enabled by -Wall
k2pdfopt for Reading Academic Papers on a Kindle
2017-07-21
Using k2pdfopt to format academic papers to read on a Kindle
Inspecting generated Template Haskell
2017-01-16
Using -ddump-splices to look at generated Haskell code
Keter behind an nginx Reverse Proxy over HTTPS
2016-11-09
Steps to setup Keter behind an nginx reverse proxy server on Debian 8
Intro to PureScript for a Haskeller
2016-10-18
How to get started with PureScript for the Haskell programmer
Yahoo Finance API Wrapper in Haskell (updated to v0.2.0.0)
2016-10-15
Update to the Haskell wrapper for the Yahoo Finance API for real-time stock quotes
{-# OPTIONS_GHC -fno-warn-orphans #-}
2016-09-16
GHC pragma and flag for silencing warnings about orphan instances
Yahoo Finance API Wrapper in Haskell
2016-07-10
Haskell wrapper for the Yahoo Finance API for real-time stock quotes
5 Ways to Test Applications that Access a Database in Haskell
2015-11-20
Pros and cons of 5 different ways to test code that accesses a database.
Type-level Strings, Type-level Lists, Type-level Operators, and Type Families in Servant
2015-08-13
Type-level things in Haskell and how they are used in Servant
cabal init Now Creates Main.hs
2015-07-01
I got a small patch into cabal that makes the init create a Main.hs.
Passing -ddump-splices from Cabal
2015-03-24
Explain how to use the GHC flag "-ddump-splices" from cabal on the command line.
Multi-parameter Type Classes in Haskell
2015-03-14
Short introduction to multi-parameter type classes in Haskell, including functional dependencies and type families