Marshall Bowers

Conjurer of code. Devourer of art. Pursuer of æsthetics.

Greetings, Traveler

Sunday, November 10, 2019
479 words
3 minute read

Greetings, traveler.

Welcome to the first issue of Errata Exist!

On Errata Exist

Given that this is the first issue of Errata Exist, I thought I'd touch a bit on my ideas and goals for the newsletter.

Firstly, let's talk about the name. The term "Errata Exist" can be found at the top of various RFCs and is used to indicate that errors exist in the RFC and the reader should refer to the existing errata for the corrections.

I remember when I first saw "Errata Exist" on the OAuth 2.0 RFC something about it really resonated with me. As a software developer I'm well-acquainted with errors; finding and fixing them is a decently-sized part of my job. But I am also acquainted with errors as a human being. Errata exist within myself, and I am always looking to track down these errors and correct them.

This newsletter is about improving the quality of ourselves just as much as it is about improving the quality software that we write.

Right now my goal is to send out the newsletter weekly on Sunday nights so that it will be waiting in your inbox on Monday morning.

What you might expect in a weekly newsletter:

  • Links to blog posts I have written
  • Assorted musings that may not warrant a full post
  • Links to articles and blog posts that I find interesting

One of the goals of this newsletter is to encourage an open dialog between myself and you, the reader. If you have any thoughts on what I have written or shared, I would be thrilled if you would talk to me about it. I always have an open invitation extended to you.

New Blog Post

This week I published "Implementing a Case Conversion Library in F# and Haskell". In this post I take a small F# library I wrote for performing case conversion and convert it to Haskell.

I would encourage you to give it a read and let me know what you think. If you're like me and are familiar with F# but not Haskell then you can see how Haskell isn't really all that different (at least in the context of this particular problem).

If you're not familiar with either language—or even functional programming in general—then you can still see how this problem is solved in a functional style.

Article Recommendations

I read a great article this week by Alexis King titled "Parse, don't validate". What Lexi touches on in her article mirrors a lot of the thoughts that I've had recently about modeling data in such a way that illegal states are impossible to represent.

Until next time,