It’s been a while since the last time I wrote here so today’s post will be kind of a summary of interesting stuff:
Talks I gave:
Functional Data Validation at the Eindhoven Haskell Meetup
I went through different ways of doing validation until I reached the functional way using Applicative Functors + Semigroup. In addition, I created the same demo in Scala using the Cats library.
- Slides: http://slides.com/volpegabriel/functional-data-validation#/
- Demo in Haskell: https://github.com/gvolpe/functional-data-validation
- Demo in Scala using Cats: https://github.com/gvolpe/cats-functional-data-validation
Fs2 + Effects at the Brabant Scala Meetup (Netherlands)
Due to unforeseen circumstances this event was cancelled (due to be rescheduled for 13th of July) but anyway I’m sharing with you the content of the talk that I already gave to some colleagues.
- Slides: http://slides.com/volpegabriel/fs2#/
- Demo: https://github.com/gvolpe/pricer-fs2-demo/tree/v0.10-cats-effect
I have started the development of fs2-rabbit just for a simple case of use and I had so much fun that I decided to open source it. It’s a stream-based client library for RabbitMQ built on top of Fs2 and cats-effect.
I learned how to mix different algebras by making use of Coproduct and Inject when using the Free Monad, described in the excellent paper Data types à la carte by Swierstra. In order to illustrate this, I have created a demonstration project using the Cats library. I have to say I was thinking about writing a blog post about it but later decided that there are already too many posts talking about this so I don’t think it’ll be necessary 🙂
I’m also researching about concurrent and distributed applications in non-JVM languages. It has already taken me to play around with Erlang programs, Pipes Concurrency (Haskell), Cloud Haskell and Transient (Haskell). Up until now, I’m between Pipes Concurrency and Transient + Transient Universe, not very convinced about static actions building closures in Cloud Haskell, but it might be too early to come to conclusions. Here are some examples:
It’s also quite interesting what’s going on in the cryptocurrency world. I keep my eyes peeled when it comes to Blockchain, Ethereum and all the good stuff built by Input / Output like Cardano SL (Haskell).
I’m attending the Scala Wave conference in Gdansk, Poland this Friday and Saturday. During the first day I will be participating at the Open Source Sprees organized by Scala Center where I hope to welcome new contributors! Second day I will assist to all the interesting talks 🙂
Available for hire!
We, the Lambda Team, are launching our own Software Consultancy based in Europe. Make sure you check out our portfolio and get in contact for more information!