-
I’d use Spinel for Ruby projects
-
Switched to Bear
-
Programming Videos
-
A Global Elixir Phoenix Multiplayer Game
-
Conway's Game of Life: A Functional Approach
-
Writing an Elixir/Phoenix based multiplayer Minesweeper game
-
Rewriting Strange Leaflet in Phoenix and LiveSvelte
-
Running Kafka locally in Kubernetes using Minikube
-
Rebooting this blog in Svelte and SvelteKit
-
Rewriting my Protohackers repo as an umbrella app
-
Add more OTP implementation of Speed Daemon - sdball/protohackers
-
Solving Protohackers Problem 6 - sdball/protohackers
-
Add MobInTheMiddleServer - sdball/protohackers
-
Rewrite ChatRoomServer to use active sockets - sdball/protohackers
-
Add UnusualDatabaseProtocolServer - sdball/protohackers
-
Add ChatRoomServer - sdball/protohackers
-
Add git-blog - sdball/dotfiles
-
Add helix shortcuts - sdball/dotfiles
-
Add AssetPriceServer - sdball/protohackers
-
Reduce the complexity of the IsPrimeServer - sdball/protohackers
-
Comprehensively redesign IsPrimeServer - sdball/protohackers
-
Things I've learned deploying a Phoenix 1.7 app using Bandit to fly.io
-
Things I've learned deploying a Phoenix 1.7 app using Bandit to fly.io
-
Getting AlpineJS to work with Phoenix 1.7
-
Maintainable Code
-
ElixirConf 2022 Talk: Livebook Smart Cells are Amazing
-
GIFs from my 2022 ElixirConf talk: Livebook smart cells are amazing
-
Strange Leaflet about Elixir - Page 8
-
Strange Leaflet about Elixir - Page 7
-
Strange Leaflet about Elixir - Page 6
-
Strange Leaflet about Elixir - Page 5
-
Strange Leaflet about Elixir - Page 4
-
Strange Leaflet about Elixir - Page 3
-
Strange Leaflet about Elixir - Page 2
-
Strange Leaflet about Elixir - Page 1
-
Let's query the GitHub GraphQL API from a Livebook smart cell
-
Let's write an Elixir Livebook smart cell
-
A subtle Go bug that types cannot help with
-
swapcase with the tr command
-
Better Go test output
-
See where vim settings came from
-
Containers in the real world and backpressure in distributed systems
-
Elixir Phoenix and "role postgres does not exist"
-
From awk to a Dockerized Ruby Script
-
Finding leap years with the cal command
-
The Problem of State
-
Clojure Functions in Four Ways
-
Basics of Clojure
-
A simple language spec isn't a feature when you're building applications
-
The Fastest Possible Tests
-
Shrink your data into bitfields (and out again)
-
Every if statement is an object waiting to be extracted
-
Choose Generic Tools
-
Links you might find interesting — #4
-
Running bundle install on rails master
-
Use tldr for command line examples
-
Friday Lunch Links — #3
-
Friday Lunch Links — #2
-
Logical Solver: Turn facts into conclusions
-
Programming with jq
-
Command line tools - jq
-
Friday Lunch Links — #1
-
Why diversity matters
-
Music for coding - October 2019
-
Code puzzles are a poor way to gauge technical candidates
-
Add vim to a pipeline with vipe
-
Connecting Objects with Observable
-
Let's write a shell script
-
What's a $PATH anyway?
-
Let's Use Hwacha to Scan URLs
-
Deliberate Git
-
Customize Your IRB
-
Increase Rails Performance with Database Indexes
-
Program Like a Videogamer
-
Gem Spotlight: interactive_editor
-
Things Most Interviewees Fail to Discover
-
Rails isn't for beginners
-
How to use bundler instead of rvm gemsets
-
How to write (and test) a gem to serve static files on the Rails asset pipeline
-
A Taste of Ruby Metaprogramming
-
Fun with Rock, Paper, Scissors
-
Let's Write a Gem: Part 2
-
Let's Write a Gem: Part 1
-
Parsing Dates and Times from Strings using strptime
-
Anonymous blocks as function arguments in Ruby