Posted on 04 June, 2018 (6 months ago)
Last March, I had the chance to attend and speak at QCon London. I spoke at the event for its first edition, many moons prior, so it was fun coming back and seeing how the conference evolved.
This year, Eric Horesnyi of Streamdata was leading the Artificial Intelligence track, and invited me to speak about Machine Learning.
First, I gave an overview of the Machine Learning offering, from the off-the-shelf ready-made APIs like Vision, Speech, Natural Language, Video Intelligence. I also mentioned AutoML, to further train existing models like the Vision model in order to recognize your own specific details in pictures. For chatbots, I also covered Dialogflow. And I said a few words about Tensorflow and Cloud Machine Learning Engine for training & running your Tensorflow models in the cloud. You can watch the video by clicking on the picture below:
Eric hosted a panel discussion with all the speakers in the AI track, where we discussed many interesting topics, to demystify AI and answer questions from the audience. Click on the picture below to watch the panel discussion:
Posted on 01 June, 2018 (6 months ago)
Back to GR8Conf Europe in Denmark, for the yearly Groovy community reunion! I had the chance to present two talks.
The first one on Google's Machine Learning APIs, with samples in Groovy using vision recognition, speech recognition & generation, natural language analysis. I'll come back on ML in Groovy in forthcoming articles.
And the second talk was an overview of Google Cloud Platform, focusing on the compute and storage options, with demos using Groovy frameworks (Ratpack, Gaelyk, and the newly released Micronaut) and how to deploy apps on Compute Engine, Kubernetes Engine, App Engine. I'll also come back in further articles on those demos, but in the meantime, I wanted to share my slide deck with you all! Without further ado, here's what I presented:
Posted on 16 April, 2018 (8 months ago)
The venerable Google App Engine platform celebrated its 10th anniversary!
Back in 2008, it started with Python, as its first runtime, but I got way more interested in App Engine when the Java runtime would launch the following year. It's a bit of a special story for me, as I've always been a fan of App Engine, since the beginning.
Over the years, I've built several apps running on App Engine. For instance, this blog you're reading now is running on App Engine, as well as my personal picture / video sharing app, some Github post-commit webhook for the Apache Groovy project, or the Groovy Web Console to share / edit / run Groovy scripts in the cloud.
App Engine is my go-to platform for deploying and running my ideas in the cloud!
I like to focus on the idea I want to implement, rather than thinking upfront about infrastructure, provisioning, ops, etc. App Engine was the pioneer in PaaS (Platform-as-a-Service) and the new trendy Serverless approach.
Although I've ranted back in the day about the pricing changes (once and twice), it lead me to optimize my own apps and code. But ultimately, most of my apps run within the free tier of App Engine. The "pay-as-you-go" approach is appealing: for my apps, it's been pretty much free for my use, except on those few occasions where I had big peaks of traffic and users, and then, i only had to spend a few dollars to cope with the load, but I didn't even have to think about dealing with infrastructure, as App Engine was transparently scaling my apps itself, without any intervention on my part.
But let's step back a little and let me tell you more about my story with App Engine. In 2009, thanks to my friend Dick Wall, I was contacted by Google, signed an NDA, and worked with the engineering team who was responsible for the upcoming Java runtime. As the engineering team was working on its launch, they wanted to ensure that alternative languages like Apache Groovy would run well on the platform. So we worked hand in hand, patching Groovy to be more compliant with App Engine's sandboxing mechanism (which is now lifted, as past limitations are now gone in the newer runtimes.)
Thanks to this work on the Groovy and App Engine integration, I got the chance to present at Google I/O 2009 about running Groovy and Grails on App Engine!
And as I worked on the integration, I quickly found nice handy shortcuts thanks to the flexible nature of Groovy, and I arranged those shortcuts into a reusable library: the Gaelyk framework.
Max Ross, Toby Reyelts, Don Scwhartz, Dick Wall, Patrick Chanezon, Christian Schalk, and later on, Ludovic Champenois, Éamonn McManus, Roberto Chinnici, and many others, I'd like to say thank you, congratulations, and happy anniversary for this lovely platform!
Posted on 23 March, 2018 (9 months ago)
La semaine prochaine s'ouvre la conférence BreizhCamp ! Bien que cette année, mes sujets n'aient pas été retenus (snif !), l'année passée, j'avais parlé des millions de fichiers que l'on trouve sur Github, et comment les analyser avec BigQuery. Je n'avais pas eu l'occasion de mentionner la vidéo qui avait été mise en ligne, alors la voici !
Vous pourrez retrouver les slides ici également :
Posted on 12 March, 2018 (9 months ago)
A few months ago, I had some fun doing the keynote of Voxxed Days Singapore and JUG Summer Camp, and I realized I didn't get a chance to share my deck. Furthermore, the videos of both events are actually available online: one in English, one in French!
Thanks a lot to both the organizers of Voxxed Days Singapore and JUG Summer Camp!
I spoke about the so-called IT Holy Wars, you know, like Vi vs Emacs, Tabs & Spaces, or other funny things of that kind. How developers circle from client-side to server-side, how we are polarized across strong positions on certain frameworks or practices, on clean vs ugly code, on tooling (build, front, back), dark / light background themes for your IDE, how do you format dates, and more.
I had lots of fun preparing and delivering this talk, both in English and French.
Let's start with English deck & video:<script async class="speakerdeck-embed" data-id="d3cac7c15adb45e8bf10233754b04de9" data-ratio="1.33333333333333" src="//speakerdeck.com/assets/embed.js"></script>
And now "en français dans le texte" :<script async class="speakerdeck-embed" data-id="f15e5f8b54544fd29408ca72dfd29885" data-ratio="1.33333333333333" src="//speakerdeck.com/assets/embed.js"></script>