Pip's Page

  • Advent of Rust // Day 2

    The second day was still easy on the puzzle side. I guess I went a little overboard with the implementation, but I wanted to play with the language. I had a lot of first ones today: First struct, first enum, first use of impl to add functionality, passing functions as arguments, and adding behavior with derivable traits. continue reading
  • Advent of Rust // Day 1

    Today is December 1st and thus the first day of Advent of Code. This year I decided to give Rust a try. As with my attempt with Haskell two years ago, I come unprepared with virtually zero knowledge about Rust. The only things I did beforehand were install the Rust compiler, the IntelliJ Rust plugin, and run the canonical “hello world” program. continue reading
  • Colocating Tests and Production Code in PHP(Unit)

    Colocating tests and production code is the default in some programming languages and has become the de facto standard in others. I have to admit that while I liked it in Go and TypeScript, I always felt a little queasy about doing it in PHP. I couldn’t really name it; it was more a sense of “it doesn’t feel right”. continue reading
  • Keyreative KAM Wraith

    Even though I hoped people would come for my manifold and perceptive writing, one of the most visited pages on my little website is this picture in the pipstagram section. Someone even emailed me a while back asking where I got these keycaps. So, for all y’all folks interested, those are the KAM Wraith keycaps. continue reading
  • There's a new kid on the block...

    … and they have a sharpie. I like street art. Although I appreciate the well crafted ones the most, I often find myself fascinated with sophomoric dauberies or other ridiculous things that probably weren’t even meant to be art. A few weeks ago I walked by a torn-down poster and stopped because of the scrawl on it. continue reading
  • I wouldn't write a test for that

    Last week, I was helping a colleague who was working on a small application. One component was responsible for sending data to a configured recipient. I suggested writing a test to verify that an email was actually sent containing the relevant data in the body. This led to the following discussion: continue reading
  • Lost Tracks

    I often joke that I’ve lost more tracks than other people have produced in their lives. Regardless of whether that’s true or not, I certainly have the problem that I’m never satisfied with what I have. There’s always something to be improved, re-recorded, or worked on. Often it’s just not “right” yet. continue reading