Announcing forms

Today marks the first public release of forms, a Racket library for web form validation. Racket’s formlets module from the standard library already does something similar, but, unfortunately, it lacks any facilities for easily showing validation errors to end users which is a big part of what I want from this kind of library. Another nice thing about this new library is it’ll be able to validate things other than forms – like JSON – soon!

Try Firefox

Since Microsoft officially announced that they will switch Edge’s rendering engine to Chromium, many people have written about how this poses a danger to the future of the web. I’m not going to repeat those same arguments, as I feel others have done a good job of it. What I want to do is urge you to try Firefox for a couple of days this week. That’s it. Give it a try.

Advent of Racket 2018

I decided to do this year’s Advent of Code in Racket and stream the whole thing. We’ll see how far I make it (getting up this early is rough!), but so far I finished day one. The code is here and the playlist for the recordings is here.

If you want to get notified as soon as I jump on to start streaming, you can follow me on Twitch.

Announcing geoip

Racket support for MaxMind’s geolocation databases.

Announcing net-ip

Racket support for working with IP addresses and networks.

Announcing component

Dependency injection for Racket.

Announcing cursive_re

I released cursive_re today. It’s a tiny Python library made up of combinators that help you write regular expressions you can read and modify six months down the line.

Racket

I’ve been playing around with Racket every chance I got since early September of this year. This post is going to serve as a sort of experience report of my foray into Racket so far.

Prometheus with Molten

How you can leverage the built-in support for Prometheus in Molten.

Announcing Molten

A modern API framework for Python.