Cool Links
Links with a write-up or notes
Links with no write-up
2024
- Writing for Software Engineers: Beyond the Basics [Source]
- Coalton: How to Have Our (Typed) Cake and (Safely) Eat It Too [Source]
- The algebra (and calculus!) of algebraic data types [Source]
- Practical Common Lisp [Source]
- Where is the programmer inspo? [Source]
- Defense of Lisp macros: an automotive tragedy [Source]
- Clojure - Transducers [Source]
- Copying is the way design works [Source]
- Tests you love to read, write and change [Source]
- Running Lisp in Production [Source]
- Dabblers And Blowhards [Source]
- What's the value for a programmer to learn Common Lisp these days? [Source]
- FastHTML - Modern web applications in pure Python [Source]
- A skeptic's first contact with Kubernetes [Source]
- A Few FORMAT Recipes [Source]
- Clojure - Transducers are Coming [Source]
- Exploring the Power of Negative Space Programming [Source]
- My mental model of setf was wrong [Source]
- Go is a Pretty Average Language [Source]
- Tiger Style! - ratfactor [Source]
- The Power of Prolog [Source]
- Picat Language [Source]
- My Programming Beliefs as of July 2024 [Source]
- Testability = Modularity [Source]
- Abilene paradox [Source]
- My Principles for Building Software [Source]
- Basic Things [Source]
- Worst practices should be hard [Source]
- The Perceived Speed of Computers [Source]
- pyinfra [Source]
- Save the Web by Being Nice [Source]
- Webmentions (Dev) [Source]
- A Forth Story [Source]
- Beautifying Org Mode in Emacs [Source]
- A Pattern Language [Source]
- Optimizing SQLite for servers [Source]
- Exploratory Programming [Source]
- 40 years of programming [Source]
- Optimal SQLite settings for Django [Source]
- Black Grouse Theory [Source]
- Failing at Combinatorics with Haskell [Source]
- Your Interview Process Is Too Damn Long [Source]
- A rational design process: how and why to fake IT [Source]
- Functional False [Source]
- What Factors Explain the Nature of Software [Source]
- A Note on Essential Complexity [Source]
- Why books don't work [Source]
- Book: Naming Things [Source]
- Pivotal mental states [Source]
- Dynamic Programming is not Black Magic [Source]
- The Hearers to Collection: T.S. Eliot’s The Waste Land [Source]
- Think more about what to focus on [Source]
- GitHub Copilot Research Finds 'Downward Pressure on Code Quality' [Source]
- A 2024 Plea for Lean Software [Source]
- A Tour of the Lisps [Source]
- Approaching a New Speed Limit for ILP [Source]
- Safely making database schema changes [Source]
- Review: A Philosophy of Software Design [Source]
- epoll: The API that powers the modern internet [Source]
- How we Increased Search Traffic by 20x in 4 Months [Source]
- Common Lisp Resources [Source]
- Kubla Khan [Source]
- Comments on fast vs slow compile cycles [Source]
- 12 Modern CSS Upgrades [Source]
- Why Is Everything So Ugly? [Source]
- Bottleneck #06: Onboarding [Source]
- Optimal function length [Source]
- Programming: Lessons Learned [Source]
2023
- Belief and its role in science [Source]
- Maybe Haskell [Source]
- Why your F# evangelism isn't working [Source]
- Stop building databases [Source]
- Code is run more than read [Source]
- Parse, don't validate [Source]
- Why Do Everyone’s Logo Fonts Look the Same? [Source]
- Many explanations of JOIN are wrong [Source]
- How to Read a Paper [Source]
- Confusing git terminology [Source]
- The Wizardry Frontier [Source]
- “Useless Ruby sugar”: Argument forwarding [Source]
- Decker [Source]
- Why is it so hard to buy things that work well? [Source]
- Push Ifs Up And Fors Down [Source]
- The Decline of Usability: Revisited [Source]
- This is your brain on books [Source]
- In defense of simple architectures [Source]
- When static types make your code shorter [Source]
- The Revised Psychology of Human Misjudgment [Source]
- Things you're allowed to do [Source]
- Open Data Structures [Source]
- A Better Explanation of the Liskov Substitution Principle [Source]
- Just because it's old, doesn't make it tech debt [Source]
- Choose Boring Technology [Source]
- The C4 Model [Source]
- Bad Emacs defaults [Source]
- Component Programming in D [Source]
- What is .NET, and why should you choose it? [Source]
- Lets just try it [Source]
- The Gentle Art of Patch Review [Source]
- Fortunes Algorithm: Explanation and Implementation [Source]
- Elixir for Cynical Curmudgeons [Source]
- Leaving Haskell behind [Source]
- Je ne sais quoi [Source]
- The Elmish Book [Source]
- Taboo OO [Source]
- Git Magic [Source]
- How to Roman Republic 101, Part I: SPQR [Source]
- Without Belief in a God, But Never Without Belief in a Devil [Source]
- It's 2023, so of course I'm learning Common Lisp [Source]
- Building a Programming Language in Twenty-Four Hours [Source]
- Haskell Fan Site [Source]
- The Staff Engineer's Path [Source]
- Reading Slightly More Incrementally [Source]
- Forth: The programming language that writes itself [Source]
- Where have all the hackers gone? [Source]
- The Ultimate Deliberate Practice Guide: How to Be the Best [Source]
- Litestream - Streaming SQLite Replication [Source]
- Mental Liquidity [Source]
- Writing Python like it's Rust [Source]
- Caddy [Source]
- Imaginary Problems Are the Root of Bad Software [Source]
- The Timeless Way of Programming [Source]
- Sixteen Days of Haskell [Source]
- Fear of Macros [Source]
- Raku is pretty damn Cool [Source]
- An On-Ramp to Flow [Source]
- Kata, Kumite, Koan, and Dreyfus [Source]
- Coding Challenges [Source]
- OOP vs type classes - HaskellWiki [Source]
- How To Survive Your Project's First 100,000 Lines [Source]
- Radical Simplicity in Technology [Source]
- Characterizing Tech Debt [Source]
- The seven programming ur-languages [Source]
- Local state is harmful [Source]
- First Principles of Interaction Design [Source]
- 916 days of Emacs [Source]
- Laws of UX [Source]
- It’s worth putting in the effort to regularly update dependencies [Source]
- Explore the In Our Time archive [Source]
- Category Theory Illustrated [Source]
- Combinatory Logic [Source]
- Demystifying Type Classes [Source]
- SQLite performance tuning [Source]
- Janet for Mortals [Source]
- All you need is data and functions [Source]
- The Codeless Code [Source]
- Rust-based platform for the Web – SWC [Source]
- 'Modules Matter Most' for the Masses [Source]
- Dream - a web framework for OCaml [Source]
- Writing - Apple Human Interface Guidelines [Source]
- A fast, local neural text to speech system [Source]
- Edward Tufte: Books - Envisioning Information [Source]
- Haskell is not category theory [Source]
- My Future with Elixir: set-theoretic types [Source]
- Rewrite, refactor, or reinvent? [Source]
- I learned 7 different programming languages so you don't have to [Source]
- Monadic Comprehension Syntax via LINQ in C# [Source]
- The case for frameworks [Source]
- Beautiful Binary Search in D [Source]
- On Technical Debt: Shoveling forward [Source]
- Squeezing a Sokoban Game into 10 Lines of Code [Source]
- The Market for Lemons [Source]
- The Case for Models [Source]
- Right and Wrong - ten choices in language design [Source]
- Understanding Onion Architecture [Source]
- How the Blog Broke the Web [Source]
- Protection System Conceptual Design [Source]
- Component Programming with Ranges [Source]
- Challenging DSAs every programmer should try [Source]
- Surviving disillusionment [Source]
- Why and how to write things on the Internet [Source]
- The Art of Money Getting [Source]
- More challenging projects every programmer should try [Source]
2022
- What to Blog about [Source]
- The Art of Not Thinking [Source]
- Intentionally Making Close Friends [Source]
- Zettelkasten [Source]
- Python Asyncio [Source]
- Learning by Writing [Source]
- Advice that actually worked for me [Source]
- Pulumi [Source]
- Only solve one new problem at a time [Source]
- Programming in the 21st century [Source]
- Speed Reading is Bullshit [Source]
- Brian Lovin - Writing [Source]
- Work is Work [Source]
- React I love you, but you're bringing me down [Source]
- A complete guide to useEffect [Source]
- Unbounded sieve of Eratosthenes [Source]
- Transitional Apps with Phoenix and Svelte [Source]
- Calculus Made Easy [Source]
- C++ Frequently Questioned Answers [Source]
- Ruby for the self-taught developer [Source]
- Making the world's fastest website, and other mistakes [Source]
- Algorithmica / HPC [Source]
- How To Design A Chat Bot [Source]
- A walk through lightweight blogging [Source]
- Hyperscript [Source]
- Effortless personal productivity [Source]
- Failing to Learn Zig via Advent of Code [Source]
2021
- Assign Multiple Engineers to the Same Task [Source]
- An Integer Formula for Fibonacci Numbers [Source]
- Polymorphism in Python [Source]
- Open Logic Project [Source]
- Here's Another Voronoi Code [Source]
- Hash Visualisation [Source]
- Book: The War of Art [Source]
- Book: Daily Rituals [Source]
- Book: The Now Habit [Source]
- F# is the best coding language today [Source]
- Generating JSON Directly from Postgres [Source]
- Against SQL [Source]
- Docker Compose Production Best Practices [Source]
- Obsidian [Source]
- Umami [Source]
- Working in Godot with SQLite and C# [Source]
- How to Get Rich [Source]
- Use Google like a pro [Source]
- Functorio [Source]
- Redux vs. XState [Source]
- Complicated Haskell Words - Isomorphism [Source]
- Code Browser [Source]
- Are You User Friendly? [Source]
- aria2 [Source]
- Preql [Source]
- Serverless SQLite [Source]
2020
- OWASP Session Management Cheat Sheet [Source]
- Haskell for Imperative Programmers [Source]
- To compute a constant of calculus [Source]
- Functional Design and Architecture [Source]
- Beginning Raku [Source]
- pg_cron [Source]
- Game of Life (32b) [Source]
- Modern Object Pascal Introduction for Programmers [Source]
- Getting Started with Org Mode [Source]
- The Construction and Use of C++ Algorithms [Source]
- Typeclassopedia [Source]
- Building a Desktop App using Svelte and Electron [Source]
- On The Shoulders of Giants [Source]
- NOAA Satellite Signals With a PVC QFH Antenna and Laptop [Source]
- Lambda? You Keep Using that Letter [Source]
- Org Mode Reference Card [Source]
- C++20 Concepts - Testing constrained functions [Source]
- OWASP Authentication Cheat Sheet [Source]
2019
- re2c [Source]
- Functional Programming in OCaml [Source]
- 3D Cube World Level Generation [Source]
- Postmodernism [Source]
- Lazy Functional State Threads [Source]
- The Surprising Rigidness of Higher Rank Kinds [Source]
- Use constexpr for faster, smaller, and safer code [Source]
- Recursive Permutations | Programming Abstractions [Source]
- Empirical analysis of programming language adoption [Source]
- Some thoughts on security after ten years of qmail 1.0 [Source]
- Cache Oblivious Algorithms and Data Structures [Source]
- Game Engine Programming - Animation Playback [Source]
- A Practical Theory of Programming [Source]
- Painless Functional Specs (Part 1 of 4) [Source]
- Software Requirements Spec [Source]
- GrassGIS RaPlaT Main Page [Source]
- Links to Ada Gems [Source]
- How to remember everything you'll ever learn [Source]
- The True Power of Regular Expressions [Source]
- Game Engine Programming - Animation Groundwork [Source]
- R-trees with Voronoi Diagrams for Spatial Nearest Neighbor Queries [Source]
- CMMI [Source]
- Declarative Behavioural Requirements with Control State Hierachy [Source]
- How to build static checking systems using orders of magnitude less code [Source]
- Computational Geometry - Algorithms and Applications [Source]
- Learning Skills You Can Practice [Source]
- Generation of polygons characterizing the shape of a set of points [Source]
- Precomputed Atmospheric Scattering [Source]
- Write-up - Out of the tar-pit [Source]
- Investing Advice Inspired by Jack Bogle [Source]
- Code generation with templates [Source]
- Software Verification - Model Checking vs. Testing [Source]
- Finite and Infinite Games [Source]
- The Sound of Space-Filling Curves [Source]
- Code Review Checklist [Source]
- Terrain Erosion 3 Ways [Source]
- Alloy [Source]
- A viewshed algorithm for large terrain maps on a CUDA GPU [Source]
- Programming from the Ground Up [Source]
- Creating a language using only assembly language [Source]
- Write code that is easy to delete, not easy to extend [Source]
- Perl, the first postmodern computer language [Source]
- Marian Petre and Andre van der Hoek on Software Design [Source]
- Pharo by Example 5 [Source]
- Generating call graphs for Python code [Source]
- Smooth Voxel Terrain [Source]
- Lessons from Building Static Analysis Tools at Google [Source]
- Traditional assignment considered harmful [Source]
- Collection of good talks/videos [Source]
- The Smalltalk-80 System [Source]
- How to Solve It [Source]
- Ada Concurrency [Source]
- Functional Data Structures [Source]
- Divisibility by 7 is a walk on a Graph [Source]
- A high-performance parallel radio coverage prediction tool for GRASS GIS [Source]
- Continuous Distance-Dependent Level of Detail for Rendering Heightmaps [Source]
- PyColorPalette [Source]
- TRPL PDFs [Source]
- Fortune's Algorithm - The Details [Source]
- AVL Tree Tutorial [Source]
- Mental maths prime factorisation [Source]
- FreeCAD [Source]
- Groups - A Primer [Source]
- Fast Computation of Generalized Voronoi Diagrams [Source]
- Word numbers, Part 1 - Billion Approaches [Source]
- Information Theory, Inference, and Learning Algorithms [Source]
- Perlin Noise Explanation [Source]