Josselin Auguste

Artisanal Retro-Futurist ⊗ Team-Scale Anarcho-Syndicalist, Real music lover

The OCaml Mooc week #1

What a great idea from the Inria: to propose a Mooc about the not-that-well-known OCaml functional programming language, which may be one of the best options to learn the basics of statically typed functional programming today. And even if OCaml is not that popular, it gets more and more exposure, as major companies like Microsoft (through F#) and Facebook (Flow is built using OCaml, and Reason is a modern OCaml compiling to Javascript) tends to get inspired by it. This first week is a kind of introduction to the introduction, talking about the history of the language and its basic...

Being able to read papers on my e-reader, at last

I truly wonder why papers are still made available as PDF documents on the Internet, rather than HTML pages. And moreover, why are they almost all formatted with a 2-columns layout? It makes them easy to read on a desktop screen, and I must admit quite nice looking, but the (huge) downside is that they are almost unreadable on an e-reader or a mobile phone screen, and that’s a pain considered that most of them are quite long, and demand a sustained focused effort to digest them. But luckily, thanks to this awesome repository of haskell papers reformatted to be...

Réduire la boucle de rétroaction par le typage

Au sein de la communauté des développeurs, l’éternel débat pour l’élection de l’outil le plus à même de nous épauler dans notre tâche ne prendra jamais fin. Les utilisateurs de langages fortement typés alà Haskell militent fortement pour l’idée que ces langages permettent de réduire significativement les bugs, par leur capacité à formaliser (plus ou moins) précisément une problématique, et à vérifier cette formalisation de manière autoritaire, lors de la compilation. Il reste néanmoins difficile de conclure sur cet avantage, comme le montre par exemple la récente étude A Large-Scale Study of Programming Languages and Code Quality in Github, qui...

Interesting Stuff #5

Piotr Moczurad - Visual-textual functional programming with Luna at LambdaDays 2018 Is Luna is ultimate come back of the visual development paradigm, proposed this time in a functional flavour? In a few words, it is a technology allowing to visually program functional pipelines for data manipulation. I haven’t tried it myself, but I can easily imagine use cases as a visual DSL intended to be used by non-programmers domain exports, to allow them manipulate data on their own. Here is a Fun Fun Function video showing Luna in action, giving us a better visualisation of what may be achievable with...

Interesting Stuff #4

Haskell at Work - Haskell Programming Screencasts A new haskell screencast serie, composed of (currently) short weekly episodes – quite interesting and well produced. The Death of Microservice Madness in 2018 - dwmkerr Why isn’t it a good idea to migrate an architecture to microservices to follow a trend, instead of doing so facing a real technical problem? What are the potential drawbacks? Another perspective on this question by Simon Brown: The monolith vs microservices debate is multi-faceted … this doesn’t capture everything, but here’s one way to look at it. pic.twitter.com/7V5VFY0RbY— Simon Brown (@simonbrown) 30 mars 2017 Anatomy of...

Le petit guide pour découvrir la programmation fonctionnelle

Découvrir la programmation fonctionnelle par le Texas Hold’em, c’est la bonne petite idée de Christophe Thibaut pour son livre The Little Haskeller. Le livre retranscrit une discussion imaginaire entre un novice et un haskeller sur la manière de modéliser une partie de Texas Hold’em. Ce mode narratif rend la lecture extrêmement didactique et la compréhension du sujet très progressive, à l’opposé de l’image austère que trainent bon nombre de livres sur le sujet1. Cela n’est d’ailleurs pas sans rappeler le format de coding dojo slow kata2, partageant les mêmes principes & objectifs, et dont ce livre pourrait être la retranscription...

Reason: a great language for the future

Reason (a.k.a ReasonML) is an almost new programming language developed by Facebook, compiling to Javascript. Thanks to the ReasonReact library, its aim is obviously to become the next de facto choice for building React applications (and indeed, it makes great sense). The language is based on OCaml, and so benefits from all the nice OCaml features: static typing, great module system, immutability by default, nice compact syntax. This ancestry reinforces Reason strengths for React development, which perfectly fits with functional paradigms. After only a few weeks of use, here are a few noticeable points about Reason I noticed: The Good...

Interesting Stuff #3

Haxl: A Big Hammer for Concurrency by Simon Marlow Haxl is an Haskell library which completely abstracts concurrency, allowing to use it almost transparently when possible, and as easily as by nesting our code in a do block. This gives us concurrency, caching, testability (or at least snapshot testing) and reproductibility for debugging for almost free. This looks like an interesting paradigm, at least conceptually, because, in the same way memory management was automated 20 years ago to drastically facilitate our daily job, it is still sad that we have to manually manage such a complex topic. On a side...

Interesting Stuff #2

Designing with Capabilities - Scott Wlaschin A talk by Scott Wlaschin at DDD Europe, about designing systems by exposing capabilities restricting the consumer (a user or a piece of code) to only be able to consume the features available to him, instead of testing everywhere if the code has the permission to be executed. This looks like REST hypermedia applied to domain modelling, which seems appropriate to increase the affordance of the code we produce and consume. GOTO 2015 • Applying the Saga Pattern • Caitie McCaffrey Caitie McCaffrey shares her knowledge about the use of the saga pattern in...

Interesting Stuff #1

Hewitt, Meijer and Szyperski: The Actor Model (everything you wanted to know…) A rare thing, a discussion between Carl Hewitt (the man who designed the actor model), Erik Meijer and Clemens Szyperski about the concepts behind the actor model. Way more valuable than the hordes of Akka tutorials. The wikipedia page about the Actor Model is also very knowledgeable on this subject. For further reading, the original paper can be found online: A Universal Modular Actor Formalism for Artificial Intelligence. Lambdada.org A french online meetup dedicated to non-mainstream technologies, held once a month, and for (I hope) many years to...