❯ Guillaume Laforge

Talks

Choreography vs orchestration in microservices and best practices

We went from a single monolith to a set of microservices that are small, lightweight, and easy to implement. Microservices enable reusability, make it easier to change and scale apps on demand but they also introduce new problems. How do microservices interact with each other toward a common goal? How do you figure out what went wrong when a business process composed of several microservices fails? Should there be a central orchestrator controlling all interactions between services or should each service work independently, in a loosely coupled way, and only interact through shared events? In this talk, we’ll explore the Choreography vs Orchestration question and see demos of some of the tools that can help. And we’ll explore some best practices and patterns to apply when adopting an orchestration approach.

Read more...

Reuse old smartphones to monitor 3D prints with WebRTC WebSockets and serverless

Reuse old smartphones to monitor 3D prints, with WebRTC, WebSockets and Serverless Monitoring my 3D prints in my basement means climbing lots of stairs back and forth! So here’s my story about how I reused an old smartphone to check the status of my prints. I built a small web app that uses WebRTC to exchange video streams between my broadcasting smartphone and viewers, with WebSockets for signaling, and a serverless platform for easily deploying and hosting my containerized app.

Read more...

Skyrocketing Micronaut microservices into Google Cloud

Instead of spending too much time on infrastructure, take advantage of readily available serverless solutions. Focus on your Micronaut code, and deploy it rapidly as a function, an application, or within a container, on Google Cloud Platform, with Cloud Functions, App Engine, or Cloud Run.

In this presentation, you’ll discover the options you have to deploy your Micronaut applications and services on Google Cloud. With Micronaut Launch, it’s easy to get started with a template project, and with a few tweaks, you can then push your code to production.

Read more...

Serverless: panacea or not?

At DevDay Belgium, a few months ago, I had the pleasure to give a keynote on the theme of “serverless”. Let me share with you this talk today!

The Serverless Panacea… Or Not?

The term “serverless” has become a trendy buzzword: if you don’t have the checkbox ticked, you’re not cool anymore. Really?

Spoiler alert: There may be servers involved in serverless solutions. It’s not just about function-as-a-service. And it’s actually more complicated than it may seem!

Read more...

The developer advocacy feedback loop

For one of the closing keynotes of DevRelCon Earth 2020, I spoke about what I call the Developer Advocacy Feedback Loop. People often think about developer relations and advocacy as just being about external outreach. However, there’s more to it! Developer Advocates are here to represent users, developers, technical practitioners, to influence the roadmap and development of the services and products to suit their needs. That’s the internal advocacy that loops back into improving the products.

Read more...

Video: Getting started with Java on Google Cloud Functions

For the 24 hours of talks by Google Cloud DevRel, I recorded my talk about the new Java 11 runtime for Google Cloud Functions. I wrote about this runtime in this article  showing for example how to run Apache Groovy functions, and I also wrote about it on the  GCP blog  and Google Developers blog as well.

In this video, I’m giving a quick explanations on the serverless approach, the various serverless options provided by Google Cloud, and then I dive into the various shapes Java functions can take (HTTP and background functions), the interfaces you have to implement when authoring a function. And I also do various demonstrations, deploying Java functions, Groovy functions, or Micronaut functions!

Read more...

Video: the Pic-a-Daily serverless workshop

With my partner in crime, Mete Atamel, we ran two editions of our “Pic-a-Daily” serverless workshop. It’s an online, hands-on, workshop, where developers get their hands on the the serverless products  provided by Google Cloud Platform:

  • Cloud Functions — to develop and run functions, small units of logic glue, to react to events of your cloud projects and services
  • App Engine — to deploy web apps, for web frontends, or API backends
  • Cloud Run — to deploy and scale containerised services

Read more...

Implementing Webhooks, not as trivial as it may seem

You’ve certainly interacted with webhooks at some point: with a Github commit webhook, for Slack or Dialogflow chatbots, for being notified of Stripe payments, or when you receive an SMS via Twilio. The concept is fairly well known, but there are some roadblocks along the way, whether you implement a webhook handler (the URL being called) or a webhook backend (the service notifying URLs). It’s not necessarily as trivial as it may first seem. As I’ve been interested in Web APIs for a long time, I decided to look into this topic a bit more, by working on a new talk.

Read more...

App Engine 2nd generation runtimes and serverless containers with Cloud Run at Cloud Next Tokyo

Last week, I was in Tokyo for the first time, to speak at the Google Cloud Next conference. During the DevDay, I spoke about Google App Engine and its 2nd generation runtimes, and I also presented Cloud Run on how to deploy and run containers in a serverless fashion. It’s been awesome to visit Japan for the first time and get a chance to meet developers there. Here are the slides I presented:

Read more...

Update on the recent serverless developments on GCP at DataXDay 2019

At DataXDay 2019, last week, I had the chance to present an updated version of my introductory talk on the serverless compute options on Google Cloud Platform. There’s always something new to cover!

For instance, if I put my Java Champion hat on, I’d like to mention that there are new runtimes for App Engine standard, like the beta for Java 11, and there’s twice the amount of memory as before. On Cloud Functions, we have an alpha for Java as well (currently Java 8, but it’ll be soon moved to Java 11 instead, as customers are more interested in the latest LTS version)

Read more...