2022, Jan 04 - Is Rust worth learning? Part 1: logs and secrets
2021, Sep 14 - Merge first, ask questions later - Optimistic Merging in practice
2021, Feb 02 - Two awesome Rust warnings
2020, Nov 19 - dmerej.info: now on the Gemini space
2020, May 30 - "It's a waste of time!"
2020, Apr 25 - Tips for better Python tests
2020, Apr 18 - symlinks and .so files on linux - what you need to know
2019, Jul 27 - I am a rusty frog
2019, Jul 24 - Requests: What You Need To Build Useful Apps
2019, May 05 - dmerej.info: now also in French
2019, Apr 21 - The virtue of incremental development
2019, Mar 25 - Crafting command line outputs
2019, Feb 07 - My Blogging Flow - Part 2 - Publishing
2019, Feb 06 - My Blogging Flow - Part 1 - Under the hood
2019, Jan 30 - Killing unwrap()
2019, Jan 12 - Letting the compiler tell you what to do - an example using Rust
2019, Jan 11 - I am writing a book about CI
2019, Jan 02 - A definition of the Linux desktop
2018, Oct 14 - ruplacer: find and replace text in source files
2018, Oct 04 - Syntax Highlighting Is Useless
2018, Sep 08 - Comparing directories: a case study
2018, Aug 28 - Tips From a Build Farmer - Part 2: Some concepts
2018, Aug 20 - Tips From a Build Farmer - Part 1: CI scripts are scary
2018, Aug 18 - Introducing "Tips From a Build Farmer"
2018, Aug 09 - Je cherche une asso
2018, Jul 17 - Please verify your email on pypi.org and test.pypi.org
2018, Jul 12 - Else after return: yea or nay?
2018, Jul 07 - Twitter Timeline Cleaner
2018, Sep 18 - Let's Build Chuck Norris! - Part 8: Using C++ in an iOS application
2018, Jun 18 - Let's Build Chuck Norris! - Part 7: Android and JNA
2018, Jun 05 - Let's Build Chuck Norris! - Part 6: Cross-compilation for Android
2018, Jun 04 - Adventures in CI land
2018, Jun 11 - Giving mypy a go
2018, May 27 - I don't need types
2018, May 18 - A boolean's story
2018, May 08 - Introducing rusync
2018, Apr 12 - Where Software Lives
2018, Apr 07 - Let's Build Chuck Norris! - Part 5: Python and cffi
2018, Mar 31 - Let's Build Chuck Norris! - Part 4: Python and ctypes
2018, Mar 25 - Let's Build Chuck Norris! - Part 3: A C wrapper
2018, Mar 18 - Let's Build Chuck Norris! - Part 2: SQLite and conan
2018, Mar 10 - Let's Build Chuck Norris! - Part 1: CMake and Ninja
2018, Mar 10 - Introducing the "Let's Build Chuck Norris!" Project
2018, Mar 01 - Porting to pytest: a practical example
2018, Feb 18 - Helping BBC subtitlers
2018, Feb 18 - Introducing "Quantum of Ideas"
2018, Jan 26 - Additions to: "How to Prepare a Talk", by Gary Bernhardt
2017, Oct 18 - My Javascript Workflow
2017, Sep 17 - Why You Should Try TDD
2017, Sep 09 - Parsing Config Files The Right Way
2017, Aug 20 - Exceptional Python
2017, Aug 05 - Non isomorphic C++ refactoring
2017, Jul 31 - Introducing tsrc
2017, Jul 08 - Let's have a pint of (vim) ale!
2017, Jun 21 - Lessons Learned From A Failed Pull Request
2017, Jun 10 - Rewriting z from scratch, part 2
2017, May 21 - Rewriting z from scratch
2017, May 17 - fzf for the win
2017, May 06 - Interfaces and Annotations in Python3
2017, Apr 14 - How I Lint My Python
2017, Apr 10 - Introducing python-cli-ui
2017, Apr 08 - CMake, Visual Studio, and the Command Line
2017, Feb 11 - Heard and Seen at FOSDEM 2017
2017, Jan 31 - symlinks made easier
2017, Jan 28 - Twitter and me, me and twitter
2017, Jan 22 - Introducing dmerej's newsletter
2017, Jan 23 - Is TDD Worth It?
2017, Jan 06 - How to build decentralized social networks
2016, Dec 17 - Neovim, cwd, NERDTree and CtrlP
2016, Dec 03 - Deploying Python Apps The Easy Way
2016, Nov 20 - A Simple Problem
2016, Nov 05 - This Blog Now Has Comments
2016, Oct 30 - Writing Clean Shell Scripts
2016, Oct 01 - Thoughts on Changelogs
2016, Sep 24 - docopt v argparse
2016, Aug 27 - Meaningful Variable Names and the Boy Scout Rule
2016, Jul 23 - Some pylint tips
2016, Jul 19 - Why I Don't Like Ruby
2016, Jul 09 - A Nasty Mac Virus, or How I Learned To Love the App Store
2016, Jun 28 - Why I Love Arch Linux
2016, Jun 18 - Is Line Coverage Meaningless?
2016, Jun 04 - My Thoughts on: 'Why Most Unit Testing is Waste'
2016, May 28 - Never Type the Same Path Twice
2016, Apr 30 - Vim, cwd, and Neovim
2016, Apr 23 - Don't Use Short Options!
2016, Apr 10 - Parsing nginx Logs
2016, Apr 07 - Finding a Good Project Name