In concurrency with futures in rust: borrowing parameters, I've described my issues when migrating some code form intra-task to multi-tasks concurrency while using borrowed parameters. My actual issue is actually deeper as my code is not only using borrow…
Following Intra-task vs multi-task concurrency with futures and tokio in rust, I wanted to migrate some code from intra-task to multi-tasks concurrency. But I have some issues with borrowing parameters that I explore in this post. Concurrency & borrow…
Those are personal notes about concurrency in rust with futures and tokio. Those notes were driven by some discussion with Alice Ryhl on discord, talking about the difference between intra-task concurrency vs multi-task concurrency. Intra-task concurrency…
At the scala meetup in Berlin, I presented my investigation on how the mongo java driver, reactive streams and FS2 are working together. By comparing akka-stream and fs2, I could find out a difference in how many elements are asked to the reactive publish…
I am in a lucky situation: at commercetools, I've experienced the adoption of GraphQL as a public API, started as an experiment in 2015 until full support in production. I've already related about this experience at a GraphQL Meetup and I was invited at G…
Hash codes can be surprising I'd like to write about a performance issue I found out on production. This issue is coming from change to a Scala function. That change looked totally innocent at the first place. The code in question is about fetching JSON o…
Sangria and Future Sangria is a Scala library implementing GraphQL on the server side. To use it, one defines the GraphQL schema by defining types, fields, and, for each field, how to solve it. When Oleg started this library, he used the Scala Future as m…
I am in a lucky situation: I can experience how my company is using GraphQL, started as an experiment in 2015 until supporting it a public API. I was invited at a GraphQL Meetup to speak about this experience. If you are interested, you can have a look at…
Open source and sole maintainers Last year I was in the very sad situation of losing one colleague and friend, Oleg. He was the creator and the maintainer of some open source libraries. Among them the famous Sangria, a scala implementation of GraphQL. Thi…
The objective We want to create a function that takes a list of scala classes as input, and outputs a list of all elements, each element being encoded as json. For encoding in json, we use circe. This function should be generic and works for any type we c…
This is my contribution to the #Rust2018 blog posts. Why I started with Rust My daily job is to implement scalable backends in Scala. I very like Functional Programming and async IO. But I have some pain point in Scala/JVM and I was very interested to see…
Edit: Update (May 25) I am learning Rust and, as a beginner, I have sometimes problems achieving some little tasks that would be so easy in other programming languages I know better. But when I met some Rust developers and they ask me about my difficultie…
Honeypot organized the first meetup about GraphQL in Berlin and I had the pleasure to be invited to talk about my experience. My topic was Performance optimisation with GraphQL. You can find the slides for the other talks here.
Recently I migrated several play applications from the version 2.3 to the version 2.5. As this experience may interest other people, I decided to write about it. So let's start! Migration from 2.3 to 2.4 First, we will migrate the application from the ver…
Disclaimer: I am continually learning, and this post reflects my current understanding of the topic. I may be wrong. Do not believe directly what I write. Test what you need. If you want to provide some precisions or corrections, please contact me on twit…
I had the pleasure to review the book "Essential Slick" about Slick 3. I really enjoyed reading it. For anyone starting a project with Slick, I highly recommend this book, in particular to learn about: how to build queries that can be composed …
During the play framework meetup in Berlin in November 2015: for a better workflow between designers and developers Laura made a very good talk about how to better organize the work between front-end designers and developers. For that, her team build some…
During the play framework meetup in Mai 2015, there were 3 talks about Dependency Injection (DI) in Play 2.4: from Micheal: runtime DI in Java with Guice, the default framework introduced in play 2.4: https://github.com/schleichardt/play-2-4-di-talk f…
My notes from the goto conference Berlin 2014: Thursday Opening Keynote: Software Design in the 21st Century - Martin Fowler We, developers, take responsibility in the code we write. We cannot simply say: "I implemented that because I was told so&quo…
A Play application does not need any container and runs directly in production. However some organizations prefer to run play applications within a servlet container and can use for this the WAR Plugin. I am very pleased to share that this plugin is now c…
At the beginning at the year, I had the chance to present how to organize a play application with the Cake pattern at Ping Conf. I showed how this pattern enable designing the application as components, how to reduce visibility of specific gateway's model…
I'd like the share with this post one solution I found to use a Mapped Diagnostic Context (MDC) in an asynchronous environment like the play framework. Edit (September 2014) Based on one implementation from James Roper, I added one solution based on Akka …
Flicker effect with JavaScript applications A lot of web applications are nowadays build with a JavaScript framework, rendering the HTML in the browser (client side). There are a few reasons for this, like: avoiding server-browser round-trips to modify o…
In January, I had the pleasure to participate and give a talk at the ping conf. Ping conf was the first world wide community conference about the Play Framework!. This conference was very well organized. I'd like to thank all the organizers one more time …
direct from DevOpsDay Berlin 2013, my notices: Program Videos Day #1 From the presentation from Immobilienscout - Marcel Wolf, Felix Sperling Dev AM rotation: exchange between Dev and Ops Self service VM unique configuration server, accessible to anyo…
Handling data streams As the version 2 of Play! Framework was published, I was very interested in its new capabilities to handle data streams reactively. As a technical proof of concept, I wrote a parser that works with chunks of data instead of loading t…