Events

GDG Montreal > Events

Android Study Jams 2021

2021-08-27 |by droidmtl | 0 Comments | Events

Learn new skills and deepen your Android chops

Starting on September 22nd and for the next 7 weeks, we will be holding weekly events over lunchtime where we will talk about new Android libraries or tips and tricks you might not already know about. Each week, we will present a new subject and set you off with an in-depth codelab, then we will answer questions about the previous week’s subject. We aim to do both sections within 35-40 min.

We also will be available on slack in the channel #android-study-jams-2021 to help you out if you’re blocked in the codelab, or simply want to ask a question. If you know about a subject already and want to help out on slack, you are welcome to join the channel 🙂

Schedule*

  • Sept. 22nd: Welcome + Coroutines
  • Sept. 29th: MotionLayout
  • Oct. 6th: Using Hilt in your Android Apps
  • Oct. 13th: Advanced WorkManager
  • Oct. 20th: Advanced Testing: Survey of Topics
  • Oct. 27th: Jetpack Compose Basics
  • Nov. 3rd: Last questions + Thank you

* Please note that these subject and associated codelabs are for advanced developers. Prior knowledge of the Android platform and Kotlin is expected. We’ll do our best to make it interesting to devs of all levels but can’t cover all the fundamentals during the short presentations.

Link

Join us every week at noon: https://meet.google.com/fxm-fncw-hoo

 

 

KEEP READING

Google I/O Extended 2021 – Online

2021-05-25 |by droidmtl | 0 Comments | Events

Saturday, June 12th from 12:30 PM to 5:30 PM

GDG Montreal in collaboration with Flutter Montreal presents Google I/O extended. The event will be held on June 12 and is open and free to everyone who wants to participate. Join us for this online event where we will explore in more detail some of the announcements that were made by Google during I/O 2021. We’ve prepared an afternoon full of incredible talks by experts where we’re sure to learn a lot. We will have two tracks during this event. You can pick one track or jump from one to the other.

Schedule

Link for sessions in Room A:
https://gdgmontreal.whereby.com/io-room-a

Link for sessions in Room B:
https://gdgmontreal.whereby.com/io-room-b

 

Hours  Room A Room B 
12:30
Socialize + Welcome word
13:00
Exploring Jetpack Compose Canvas 🎨
by Julien Salvi
Google IO Flutter new features
by Louis-Philippe
13:15 Build native looking macOS apps with macos_ui
by Groovin Chip (Reuben Turner)
13:45 Break
14:00 Benchmark et MacroBenchmark
by Boris Dubois
Flutter Tips for Productivity and Learning
by Roman Jaquez
14:45 Break
15:00
Google I/O 2021 for Android Developer Recap
by Etienne Caron
Getting the Most Out of Your Mobile Platforms with Flutter
by Paul Ruiz
15:45 Break
16:00
Why Everyone Needs CI/CD and How to Make It Easy
by Scott Stoll
Flutter UX: Material State Properties
by Neevash Ramdial
17:00 Raffle + End word

 

Link to Gathertown:
https://gather.town/app/B9f2a9MH7BxjNyHg/googleioextendedmtl
password: extended_montreal

Details

Exploring Jetpack Compose Canvas 🎨

by Julien Salvi, Aircall

In this session, we are going to explore the Jetpack Compose Canvas and its capabilities. Let’s see the different ways of drawing custom shapes with Jetpack Compose: exploring the Canvas Composable and its APIs, building custom Shape or overriding the canvas of any existing Composable. Then, we’ll see how we can animate the shapes we drawn and how you can access the native Android canvas to bring your existing shapes to life with Jetpack Compose.

Google IO Flutter new features

by Louis-Philippe Papineau, Flutter Mapp

New features on Flutter 2.2 [Null safety on default / Payments and monetizations / flutter flow / Material You]

 

Build native looking macOS apps with macos_ui

by Groovin Chip (Reuben Turner)

Details to come

 

Benchmark et MacroBenchmark

by Boris Dubois, Transit

Details to come

 

Flutter Tips for Productivity and Learning

by Roman Jaquez, Philips

In this talk, Roman Jaquez, a seasoned Flutter Developer with several published apps on the App Store and Google Play, as well as being a GDG NorthEast Mentor and GDG Lawrence Organizer, will share with us useful tips both for people new to Flutter embarking on their Flutter-learning journey and experienced Flutter developers to make them more productive

 

Google I/O 2021 for Android Developer Recap

by Etienne Caron, Consultant

Google I/O 2021 is behind us and has left us with a ton of new information to look at. In this session, I’ll share what caught my attention as an Android developer.

We’ll cover subjects like Android 12, Jetpack Compose, upcoming changes in Material Design, new features with Dev Tools, the Android Wear announcements, improvements to ARCore, and what’s new with Firebase.

 

Getting the Most Out of Your Mobile Platforms with Flutter

by Paul Ruiz, Google

As developers, it’s not uncommon that we will need to create complex apps that run on multiple platforms, either as separate apps for each platform, or using cross-platform tools. While it’s easy enough to say “just build it with Flutter!”, this talk will introduce you to how you can add Flutter into your existing apps, some of the available tools for supporting multiple operating systems with Flutter, and how to reuse some of your already written native components.

 

Why Everyone Needs CI/CD and How to Make It Easy

by Scott Stoll, Appcircle.io

Many individuals and small teams think CI/CD is complicated takes too much effort and costs a lot, but it doesn’t have to be that way. We’ll take a look at how CI/CD saves more work and time than it takes, and how to get up your pipeline up and running in under ten minutes!

 

Flutter UX: Material State Properties

by Neevash Ramdial, Stream

Over the years, Flutter has evolved from being a cross-platform mobile framework to a fully-fledged portable UI toolkit available on multiple operating systems and platforms.

For businesses, this is great since they can ship applications on multiple platforms and reach more users, but for us developers, it leaves us asking the question, How do I handle and respond to interaction on different platforms?

Join us as we explore Flutter’s Material State properties and look at how it can help us respond to user interaction on multiple platforms.

 


KEEP READING

February MeetUp – Online

2021-02-16 |by droidmtl | 0 Comments | Events, Meetup

Thursday, February 25th, 2021

For this event, we will be using remo  https://live.remo.co/e/gdg-montreal-february-meetup

 

Schedule:

  • 18:20 Welcome!
  • 18:30 The D-KMP Architecture: Declarative UIs + Kotlin MultiPlatform + MVI pattern by Daniele Baroncelli
  • 19:15 Break (time to get another coffee / beer / etc.)
  • 19:30 Custom Lint Rules by Boris Dubois

 

The D-KMP Architecture: Declarative UIs + Kotlin MultiPlatform + MVI pattern

by Daniele Baroncelli

Year 2020 has not only been the year of the pandemic, but also the year which set the division between “The Past” and “The Future” in apps development. With JetpackCompose and Kotlin MultiPlatform reaching “Alpha” stage in August 2020, The Future will already start in 2021, the year where both technologies will reach “Stable” stage.

The Future is a clean cut from the The Past, as “MultiPlatform” will become the preferred choice. We will see many platform-specific technologies (LiveData, RxJava, Dagger, Retrofit, Room, etc.) losing their centrality, replaced by KMP technologies such as StateFlow, Coroutines, Ktor, Serialization, SqlDelight, etc.

In this talk I will present the D-KMP architecture which is based on the 3 pillars:
– DeclarativeUIs (JetpackCompose on Android, SwiftUI on iOS, Kotlin/React on Web)
– Kotlin MultiPlatform (KMP)
– MVI pattern.

Bio

I am a mobile architect (client/server), with over 10 years experience. I started Android development in 2009 and iOS development in 2015. I am also one of the early Golang adopters, starting in 2013.

I have architected the highest-rated travel app in Europe (called Trenìt!), which has 4.8 stars on both Android and iOS, out of over 110,000 reviews.

I have historically focused on “thin” client architectures, with most logic residing on the webservices. I am now envisioning a future of “rich” client architectures, thanks to declarative UIs and Kotlin MultiPlatform.

Custom Lint Rules

by Boris Dubois, Transit

Custom lint rules or how to enforce your code style to your coworkers without them knowing 🙂

 

KEEP READING

DevFest Montreal 2020

2020-11-11 |by Laurence de Villers | 0 Comments | Events, Meetup

Wednesday, November 25th, 2020

Fo our event, we are using remo  https://live.remo.co/e/devfest-montreal-2020

 

DevFest is a global, community-led event series offering speaker sessions across multiple products and areas of technologies, hack-a-thons, codelabs, and more!

Join us on November 25th to talk about

  • Stately and Composed
  • State Management with MobX, it just works
  • And more!

We will be using remo.co as a platform to allow smaller breakout sessions and ease discussions between us all before and after the talks. Presentations will be shorter in time to allow for more questions in the split groups. So come prepared with your questions and we will do our best to answer all of them.

Please join us here : https://live.remo.co/e/devfest-montreal-2020

Stately and Composed

Level: Intermediate
Language: English

by Etienne Caron

Libraries like RxJava, LiveData and Flow have made it easy to build, observe and react to data streams. But the story sours when you try to consume those streams with a static, XML-backed UI.

Jetpack Compose is the missing puzzle piece. We’ll soon have an excellent first-party solution that will make it easy to build reactive UIs with dynamic data streams.

In this session, we will explore how Jetpack Compose empowers us to push the envelope of UI and UX interactions. We’ll learn about State management, Unidirectional Data Flow, and how Jetpack Compose keeps things efficient while reacting to changes in your application State.

Bio

Etienne Caron is part of Google’s Developer Expert program, an instructor for Caster.io, and a freelance software development consultant.

Etienne has been an active member of the Android developer community in Montreal since 2010 and regularly devotes his time to mentoring startups, developers and students in the mobile space.

https://twitter.com/kanawish

 

State Management with MobX, it just works

by Joshua maiquez de guzman

In this talk, I will cover MobX’s core principles and its practical usage. With the examples, you’ll see how intuitive and declarative MobX is when using it for your Flutter applications. Lastly, I will also share our team’s experience building an app for a startup, using MobX as its core state management tool.

Bio

Joshua is a software engineer with a passion for learning and teaching. He is a Google Developer Expert for Flutter and Dart and a Software Engineer for Betterbank, a fintech startup based in Brooklyn, New York.

Life outside work, Joshua enjoys engaging with the community through meetups, conferences, writing articles. He also enjoys reading books, solving the Rubik’s cube and recently, have been enjoying playing Among Us with friends!

https://twitter.com/joshuamdeguzman
https://www.linkedin.com/in/joshuadeguzman/

KEEP READING

February MeetUp #2

2020-02-11 |by Boris Dubois | 0 Comments | Events, Meetup

Wednesday, February 26th, 2020

The meetup will be held at Mirego!

1195 Wellington, bureau 401, Montréal (QC) H3C 1W1

Schedule:

  • 18:00 Socializing!
  • 18:30 Kotlin Multiplateforme par Nicolas Presseault et Martin Gagnon 🇫🇷
  • 19:15 Break
  • 19:30 Performance tweaks for Android Studio and Gradle by Samuel Dionne

Sponsors

https://www.mirego.com/en

Kotlin multiplateforme

NB : 🇫🇷 this talk will be in French 🇫🇷

   

par Nicolas Presseault et Martin Gagnon, Mirego

Introduction à Kotlin multiplateforme. Nous allons évoquer les principales raisons qui font en sorte que Kotlin multiplateforme a été le choix logique pour le développement de nos nouveaux projets multiplateformes.

Nous survolerons les principales différences du développement multiplateforme en kotlin (kotlin native et JS) versus le développement sur la JVM et les outils qui sont mis à notre disposition.

Bio

Martin Gagnon, Directeur, développement mobile

Avant de cofonder Mirego, Martin a travaillĂ© comme dĂ©veloppeur de logiciels et chef d’Ă©quipe chez Copernic. Chez Mirego, il met son expertise en R&D, en dĂ©veloppement mobile, Web et Cloud au profit de nos clients afin de concevoir pour eux les meilleurs produits numĂ©riques. Ă€ titre de Directeur, dĂ©veloppement mobile, il est responsable de l’amĂ©lioration continue de l’équipe mobile et de la mise en place de processus et d’outils pour livrer des produits remarquables. Il chapeaute aussi la formation de l’équipe mobile et son dĂ©veloppement continu.

Nicolas Presseault, DĂ©veloppeur Android

DĂ©veloppeur chez Mirego depuis 7 ans, Nicolas a travaillĂ© sur plusieurs projets mobile multiplateforme, se consacrant principalement au dĂ©veloppement Android. Il a principalement travaillĂ© sur des projets multiplateforme (Android / iOS) avec la technologie de J2Objc mais dĂ©couvre tranquillement l’attrait pour Kotlin multiplateforme.”

Performance tweaks for Android Studio and Gradle

by Samuel Dionne, Transit

Android Studio is an awesome tool for Android development, but it may be sluggish at times. We’ll explore some of the way you can tweak it to make it faster. AS is not the only culprit when it comes to performance. Gradle builds are sometime, nay, always slow but there are some parameters we can use to improve its performance. When everything else fails, raw power does does it.

KEEP READING

Kotlin/Everywhere

2019-07-26 |by Laurence de Villers | 0 Comments | Events, Meetup

Wednesday, August 28th, 2019!

We have a special Kotlin/Everywhere meetup.

Kotlin/Everywhere is a global series of community-led events, where developers can learn the essentials and best practices of Koltin in Android, Google Cloud Platform and multi-platform development.

 

At Hopper, 5795 Gaspe Ave #100, Montreal, QC H2S 2X3

  

Schedule:

  • 18:00 Socializing
  • 18:30 Android functional testing made easy with Kotlin by Marc-Antoine SauvĂ©
  • 19:00 Delegation in Kotlin by Philippe Breault
  • 19:45 Break
  • 20:00 Coroutine + Flow = MVI ❤ by Étienne Caron

Sponsors:

https://www.hopper.com/

 

Android functional testing made easy with Kotlin

Level: Intermediate

by Marc-Antoine Sauvé,  Hopper

This talk will walk you through how Hopper leveraged Kotlin to build clean DSL based functional testing that separate the “what” from the “how”.

Bio

Marc-Antoine Sauvé is a Senior mobile developer at Hopper, a Montreal startup that use Big Data to predict the price of hotels and plane tickets.

He’s a mobile enthusiast, enjoying bleeding edge technology, app architecture, functional programming, reactive programming, Swift and Kotlin.

Delegation in Kotlin

Level: Beginner

 

by Philippe Breault, American Express

Ever heard of the phrase “Prefer composition over inheritance”? One of the better patterns to achieve this is “Delegation”. And thankfully, Kotlin has built-in support for this pattern.

This talk will cover class delegation and delegated properties as a mean to make your code more readable and reusable. We’ll take a look at both approaches’ strengths, weaknesses, and when you should use them. We will also take a look at the code that is generated under the hood to discuss performance implications.

Bio

Phil is an Android engineer who has been passionate about Kotlin since way before Google officially accepted it as an official language for their mobile platform. He worked on a wide variety of Android apps for banks, newspapers, startups, television providers, and more. He currently works at American Express.

Coroutine + Flow = MVI ❤

Level: Intermediate

 

by Étienne Caron, Google Developer Expert, Shopify

Managing state in Android applications can be painful. Over the years, various architectural patterns have evolved to try and tame it: MVC, MVP, and MVVM. MVI (Model-View-Intent) is an evolution of these patterns. Thanks to Immutable State management and Unidirectional Data Flow, we can finally say goodbye to race conditions and rogue mutations. Combine the power of MVI with Kotlin Coroutines alongside the recently released Kotlin Flows library. The result? Real magic. No RxJava incantations required! In this session, you’ll learn how to build a Model-View-Intent (MVI) Android App, using both Kotlin Coroutines and Kotlin Flows. You’ll walk away understanding the core principles of this pattern, as well as its key benefits. Get ready to fall for MVI❤!.

Bio

Etienne Caron is a developer lead at Shopify, a popular Canadian e-commerce company. He is also part of Google’s Developer Expert program, and an instructor for Caster.io

Etienne has been an active member of the Android developer community in Montreal since 2010, and regularly devotes his time to mentoring startups, developers and students in the mobile space.

3D animation, procedural content generation and VR are some of his hobbies, and he loves introducing other developers to this fascinating field.

KEEP READING

Google I/O special event

2019-05-20 |by Laurence de Villers | 0 Comments | Events, Meetup

Thursday, May 30th, 2019!

We have a special Google I/O meetup co-organized with ApplETS, a scientific student club.

We have the pleasure to have a Firebase speaker for this event!
We will provide food for the occasion!

 

 .

 

1100 Notre-Dame St W, Montreal, QC H3C 1K3 (Room A1170)

Schedule:

  • 18:00 Socializing
  • 18:30 Build and scale serverless mobile apps with Firebase and Google Cloud by Doug Stevenson
  • 19:15 Break
  • 19:30 Jetpack Compose by Étienne Caron

 

Build and scale serverless mobile apps with Firebase and Google Cloud

Level: Intermediate

by Doug Stevenson, Google Developer Advocate, Firebase team 

If your app has millions of users, you need a backend infrastructure to support its growth.  Do you want to build that infrastructure?  Of course not!  Your time is better spent focusing on the app.  In this talk, we’ll take a look at the code for a mobile app that works like a “universal translator”.  It uses Firebase and Google Cloud services and APIs.  And we’ll do it “serverless” without having to manage servers or infrastructure.  A live demo of the app will be done with audience participation – bring a phone or laptop!

Bio

Doug is a veteran engineer, experienced public speaker, and developer advocate at Google with the Firebase team.  He developed web apps before the web had “apps”, and developed for Android since the very first Android device was on the market.  In the SF bay area, he’s bootstrapped the efforts of several startups.  Outside of work, Doug follows professional ice hockey and enjoys craft beer.

Jetpack Compose

Level: Beginner

 

by Étienne Caron, Google Developer Expert, Shopify

Jetpack Compose is an unbundled toolkit designed to simplify UI development that was released at Google I/O 19. It combines a reactive programming model with the conciseness and ease of use of the Kotlin programming language.

Bio

Etienne Caron is a developer lead at Shopify, a popular Canadian e-commerce company. He is also part of Google’s Developer Expert program, and an instructor for Caster.io

Etienne has been an active member of the Android developer community in Montreal since 2010, and regularly devotes his time to mentoring startups, developers and students in the mobile space.

3D animation, procedural content generation and VR are some of his hobbies, and he loves introducing other developers to this fascinating field.

KEEP READING

Google I/O Extended

2019-04-15 |by Laurence de Villers | 0 Comments | Events, Meetup

Vous n’avez pas rĂ©ussi Ă  avoir un billet pour le Google I/O ou vous ne voulez pas payer 1500$ USD pour y aller? Vous ĂŞtes chanceux, GDG Montreal Android et Desjardins organisent le Google I/O Extended de MontrĂ©al! En plus des deux Keynote de Google, il y aura 3 confĂ©renciers. / If you weren’t able to get a Google I/O ticket or you don’t want to pay $US1,500 to go, you’re in luck, GDG Montreal Android and Desjardins are organizing the MontrĂ©al’s Google I/O extended! Both keynotes will be streamed live and a few speakers will also be on hand.

Au programme / Program:

  • Google I/O diffusĂ© en direct / Google I/O LiveStream
  • ConfĂ©rences / Conferences
  • CafĂ©, thĂ©, eau, petites bouchĂ©es sucrĂ©s / Coffee, tea, water, sweet little bites
  • Une section RH pour faciliter les Ă©changes entrent les employeurs et ceux qui recherchent un emploi, Desjardins y sera ! / An HR section to facilitate exchanges between employers and those looking for a job, Desjardins will be there!
  • Prix de prĂ©sence (Liste des prix Ă  venir) / Attendance prizes (Price list coming soon)

Diner / Lunch

Pour 10$+frais, ne cherchez pas ce que vous allez manger / For $ 10 + fees, do not look for what you are going to eat

  • un sandwich options alĂ©atoire, vĂ©gĂ© ou sans porc / a random, veggie or pork-free sandwich
  • accompagnement alĂ©atoire / random accompaniment
  • dessert alĂ©atoire / random dessert

 

Programme / Schedule:

  • 9h30 Ouverture des portes / Doors openning
  • 10h15 Mot d’ouverture par Chadi Habib (Premier vice-prĂ©sident Technologies de l’information, Mouvement Desjardins) / Opening remarks by Chadi Habib (Executive Vice President, Information Technology, Desjardins Group)
  • 10h30 Comment mobiliser une dĂ©marche centrĂ©e utilisateur pour intĂ©grer le talent dans une organisation ? (in French:  slides and talk) par LoĂŻc Nunez
  • 11h15 Assistant vocal Desjardins (Ok Google, je veux parler avec Desjardins) (slides in english and talk in french) by Yannic Luyckx and Loic Legault
  • 12h00 Diner et socialisation / Lunch and networking
  • 13h00 Google Keynote
  • 14h45 Scheduling Background Work on Android (all english: slides and talk) by Alexandre Boucher
  • 15h45 Developer Keynote
  • 17h00  Mot de la fin, tirage des prix de prĂ©sence et socialisation / Conclusion, attendance prices and networking
  • 18h00  Fermeture / Closing

 

Sponsors

Eventbrite - I/O Extended 2019 Montreal

KEEP READING

April Meetup

2019-04-09 |by Laurence de Villers | 0 Comments | Events, Meetup

Wednesday, April 24th, 2019!

We have a special meetup this month! It will be held by our sponsor Mirego!
They are providing food and drinks  🎉

1195 Wellington, bureau 401, Montréal (QC) H3C 1W1

Schedule:

  • 18:00 Socializing!
  • 18:30 Be a good citizen – Care about Android lifecycle and window size by Guillaume Bourassa
  • 19:15 Break
  • 19:30 Flutter 1.0, go or no-go by Samuel Dionne

Sponsors

https://www.mirego.com/en

Be a good citizen – Care about Android lifecycle and window size

Level: Intermediate

by Guillaume Bourassa, Mirego

Properly handling app lifecycle and window size is a challenge as old as Android itself. However, even today, many developers still don’t care enough about it, either because they don’t really understand the issue or because they think that they don’t really need to.
With Google pushing ChromeOS more and more, Android apps that work properly in a multi-window environment is more important than ever. And this requires proper lifecycle and window size understanding.

This talk will explain the different challenges of lifecycle handling, how to properly craft layouts that fits in any window size and, above all, why Android developers should care about all that. And why “my app is phone-only and locked in portrait” is not a valid reason to ignore these aspects.

Flutter 1.0, go or no-go

Level: Intermediate

by Samuel Dionne, Transit

Now that flutter have been in version 1.0 for a couple of months. Is it ready for prime-time? We’ll look at some good use cases for it and some less ideal situation. Hopefully this talk will get you excited and you might consider flutter for your next project that fits with the previous points.

KEEP READING

February Meetup 2019

2019-02-08 |by Laurence de Villers | 0 Comments | Events, Meetup

Tuesday, February 26th, 2019!

We have a special meetup this month! It will be held by our sponsor onepoint!
They are providing food and drinks  🎉

606, rue Cathcart, Office 400, Montréal (Québec) H3B 1K9

Schedule:

  • 18:00 Socializing!
  • 18:30 Using RecyclerView to show multiple different kinds of items by John Brohan
  • 19:15 Break
  • 19:30 MVVM on Android by Sami Lassed

Sponsors

 https://www.groupeonepoint.ca/

Using RecyclerView to show multiple different kinds of items

Level: Beginner

by John Brohan

RecyclerViews are very fast and offer a way to show a part of a larger database without concern for the full size of the database. It is an added complication to have more than one view to show, but this is well supported and works well.

My app gathers observations for a whole day and shows this as a recyclerView. Swiping moves up or down within a day and right to left changes days. I will use this app as the backbone of my presentation

Bio

I’ve been programming computers for rather a long time, mostly in real time data acquisition. The last LabView job was to instrument a simulator for a mine which happens to be in porous rock under a lake. The goal of the simulator is to see how best to freeze the ground before cutting out the frozen rock. Thermocouples, pumps valves flow meters and so on!
In the last ten years I’ve been trying to program mobile phones to help people with disabilities, especially Old People.

MVVM on Android

Level: Intermediate

by Sami Lassed, Bell Canada

How to do MVVM on Android

Bio

A team lead with more than 07 years of experience in depth knowledge of Android, J2EE, Android Embedded Development,iOS, Java Development Tool chain and a deep experience on Software analyses & Design, Cloud Development, Mobile and Distributed Solutions.
A highly motivated individual who is always willing to learn, be able to work to tight deadlines and who can communicate effectively. Someone who encourages learning and the sharing of ideas and who is always open to new ways of working.

KEEP READING