Where I’m Going

:: Personal, SoftwareEngineering

By: Onorio Catenacci

There are a few things in terms of technology that I’ve had my eye upon. I’d like to share some thoughts with you for whatever it’s worth.

Things I’m interested in:

1.) Elixir

I’ve been interested in FP for years because to my mind it gives us a nice way to remove one accidental complexity that seems innate (but is not) in software development. That is accidental mutation of values. As I’ve said to people repeatedly mutation of itself is neither good nor bad; it’s simply something that is essential in certain situations. Accidental mutation—that is the unintentional changing of values—is an accidental complexity that we should strive to remove as much as possible. A lot of people have set a lot of bytes discussing why accidental mutation is a problem so I won’t belabor the point.

Elixir has the wonderful property of being functional first and being built on the industrial strength Erlang VM. I’m sure there are lots of folks who will see this and think to themselves “Oh God here’s another shiny new object for developers to chase” and that’d be underselling the importance of the fundamental change of approach that is present in Erlang and it’s VM.

2.) Racket

You may have guessed by the fact I used Frog to create this static site that I have some interest in Racket. I confess I’ve always had a bit of interest in LISP family languages but like so many others I wish John McCarthy had picked something besides parentheses to express syntax.

The reason I find Racket so interesting is the fact that after years and years of hearing about creating domain specific languages (DSL) within our coding paradigms here is a tool that actually gives you the ability to create a DSL and a pretty robust one at that.

3.) Formal Methods and Formal Modeling

I’ve been trying to wrap my head around these similar ideas for a few years now. When you’re self-taught that wonderful moment of the light of realization breaking through the clouds of confusion can take a while to arrive.

The fact that more than one extremely smart person seems to have some interest in Formal Methods and Formal Modeling seems to indicate this is worth the time I’ve been struggling to understand it.