Skip to content

Instantly share code, notes, and snippets.

@sporto
Last active May 31, 2016 04:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sporto/899e9e87e078a500fbb77d2d22b3c29e to your computer and use it in GitHub Desktop.
Save sporto/899e9e87e078a500fbb77d2d22b3c29e to your computer and use it in GitHub Desktop.
Thoughts on programming languages

I think we need to adopt a more robust programming language in the future than ruby. Ruby has been great in terms of letting us build things fast up to now. But Ruby falls shorts in speed and robutness.

At the moment we do thinks like:

  • Guard for the type of an argument functions, we raise if incorrect
  • Use Json.schema to validate hashes
  • Check for nils and return nils if nil
  • Create unit test that check what would happen when an input is nil

All these things should be unnecessary with a different language.

What I think we should look for:

  • Something very fast for data processing
  • Something with much better type safety, specifically having nils in Ruby is a big problem for us, as we do cost and financial calculations, nil are something that we need to check everywhere and can be easily forgotten.
  • Something that has a fair amount of libraries

I think we should pick a language that has the concept of Maybe or Option. Dealing with nil for the work we are doing is very error prone.

My suggestions are Haskell or F# on the back end. Elm on the front end.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment