Skip to content
View yanns's full-sized avatar

Organizations

@play2war

Block or report yanns

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
yanns/README.md

Hi there 👋

I'm a software developer.

I have a blog that I update very infrequently 😓

My preferred languages

I'm using Scala since a very long time.

And since 2018, I'm very interesting in Rust 🦀, promoted it in my organization. I'm using it in production since 2023.

Why Rust?

  • I really appreciate its performance, very good even without profiling / optimization sessions. I have some fatigue in Scala where, for performance reasons, I often need to use imperative code instead of using functional programming (example).
  • The compiler is so good at finding issues in code that I feel very confident onboarding new developers on it, even junior ones. When a program is compiling, and when the tests are passing, I'm already pretty sure the quality of new contributions.
  • I struggle with slow startup times of JVM, especially in ecommerce field where we need to scale up very quickly. I've used technologies like CRaC to optimize this startup time, but this adds so much complexity.

Open Source

Since 2020, I maintain Sangria, a Scala implementation of GraphQL.

Since 2024, I also co-maintain axum, a Rust library for web-services.

Before that

I was involved in json parsers in Scala, especially how to make them more performant. I maintained for some time a comparison of different parsers.

In 2013, when I was using the Play! framework in Scala, I was involved in play2war, a project enabling a Play! applications to run inside a JEE container. I contributed to the asynchronous IO support.

In 2014, I've also created the Scala libary Play MockWS to easily write tests mocking dependant web-services. I'm very happy that this library found new maintainers and is still active.

Community Engagement

Between 2012 and 2015, I organized the Play! framework meetups in Berlin.

And between 2015 and 2022, I organized the Scala meetups.

In 2014, I talked at Ping Conf about how to use the cake pattern.

I gave some Scala trainings.

Pinned Loading

  1. play2-wiki-growth-sse play2-wiki-growth-sse Public

    Scala 16 1

  2. TPA TPA Public

    Structure a Play application with the cake pattern (and test it)

    Scala 14 7

  3. scala-workshop scala-workshop Public

    Scala 7 10

  4. leanovate/play-mockws leanovate/play-mockws Public

    Mock WS client for Play Framework

    Scala 139 34

  5. play-react play-react Public

    Proof of concept of running react.js on the server side with play

    Scala 43 5

  6. scala-json-parsers-performance scala-json-parsers-performance Public

    Compares performance of several JSON parsers used in Scala.

    Scala 55 8