droidmtl

GDG Montreal > Articles by: droidmtl

Android February Meetup

2024-02-13 |by droidmtl | 0 Comments | Meetup

A big thanks to Transit for the venue!

Join us for our first Meetup of 2024 on Wednesday, February 21st. We will talk about Android more specifically Compose, architecture and Tensorflow.

5333 casgrain, bureau 803, Montréal, H2T 1X3

 

Speakers:

  • Etienne Caron – GDE and Consultant
  • Samuel Dionne – Android developer@Transit
  • Nav Singh – Senior Mobile Software Engineer @Manuvie

 

Schedule:

  • 18:30 Welcome!
  • 18:45 Quick intro to Computer Vision on Android by Etienne Caron 
  • 19:30 Break
  • 19:40 Compose all the way with Circuit by Samuel Dionne
  • 20:00 Generics gotchas in Kotlin by Nav Singh
  • 20:30 Discussion and continue networking
  • 21:00 End of the event

 

Quick intro to Computer Vision on Android

by Etienne Caron

Join us for a quick dive into using OpenCV and TensorFlow Lite on Android, packed with insights from the Instacart Caper Cart team. We’ll cover the basics, touch on overcoming some common hurdles, and touch on boosting performance with Perfetto. Perfect for anyone interested in exploring computer vision projects. See you there!

Compose all the way with Circuit

by Samuel Dionne

We will explore the library called Circuit from the developers of Slack and see what it means to use Compose beyond the UI layer.

Generics gotchas in Kotlin

by Nav Singh

I recently worked on updating a version of the SDK. While the SDK has been migrated to Kotlin, it still uses Java internally.

Following the SDK update and removing the nullability, everything seems to be working fine. There is however a crash as indicated by the following stacktrace:

java.lang.NullPointerException: Parameter specified as non-null is null: method com.*.*.viewmodels.ViewModel$1.onSuccess, parameter result

Therefore, in this talk, we will cover the generics in Kotlin, as well as the upper bound on its type system.

 

KEEP READING

April flutter meetup (in-person)

2023-04-08 |by droidmtl | 0 Comments | Meetup

Monday, April 17th, 2023

A big thanks to Unity for the venue!

1751 Rue Richardson Suite 3500, 3rd Floor Montreal, H3K 1G6

 

Flutter is a fast-growing framework. Many companies and start-ups use or already migrated to Flutter for its fast development and performance.

Join us for a second full fluter event in Montreal. Whether you’re a flutter developer, assessing, or curious about flutter, you can join our in-person event in Montreal. This is the best moment to find and get to know Flutter developers and the companies that use Flutter in their products.

 

Speakers:

  • Ali Yazdi – Flutter developer and open-source contributor
  • Jhin Lee – Full-Stack Developer@Unity
  • Samuel Dionne – Android developer@Transit

Subject: state management in the Flutter application

In this event, we are going to talk about state management in the Flutter application. If you have experience in any state management, be prepared to talk about that at the event. We’re going to present why you would want to use a state management solution and two options we worked with: BLOC and RiverPod

 

Schedule:

  • 18:00 Welcome!
  • 18:30 Introduction about state management by Ali Yazdi
  • 19:00 Break
  • 19:15 BLOC state management by Samuel Dionne
  • 19:35 RiverPod state management by Jhin Lee
  • 20:00 Discussion and continue networking
  • 20:30 End of the event

 

Introduction about state management

by Ali Yazdi

BLOC state management

by Samuel Dionne

 

RiverPod state management

by Jhin Lee

KEEP READING

KotlinConf’23 (in-person)

2023-03-10 |by droidmtl | 0 Comments | Uncategorized

Wednesday, April 26th, 2022

A big thanks to Mirego for the venue!

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

 

Schedule:

  • 18:30 Welcome!
  • 19:00 KotlinConf’23 keynote (recorded)
  • 19:45 Break
  • 20:00 Recomposition in Compose
  • 20:30 Discussions + Raffle

 

Join us to watch the keynote from KotlinConf’23 and have some discussions about the announcements. It will be a good opportunity to learn what’s new. If you just started using Kotlin, don’t fret, a lot of knowledgeable people are going to be present to answer any question you might have. We look forward to seeing you and sharing the excitement around everything Kotlin!

We will have a recorded session, the KotlinConf’23 keynote, then after the break, Mirego is going to talk to us about Recomposition in Compose.

 

 

KEEP READING

March flutter meetup (in-person)

2023-03-01 |by droidmtl | 0 Comments | Uncategorized

Monday, March 13th, 2023

A big thanks to Unity for the venue!

1751 Rue Richardson Suite 3500, 3rd Floor Montreal, H3K 1G6

 

Flutter is a fast-growing framework. Many companies and start-ups use or already migrated to flutter for its fast development and performance.

We are so proud that finally, we organized a flutter event in Montreal. Whether you’re a flutter developer, assisting or curious about flutter, you can join our first in-person event in Montreal. This is the best moment to find and get to know flutter developers and the companies that use flutter in their products.

 

Speakers:

  • Ali Yazdi – Flutter developer and open-source contributor
  • Jhin Lee – Full-Stack Developer@Unity

 

Schedule:

  • 18:00 Welcome!
  • 18:30 Introduction about the flutter community
  • 18:45 Introduction about the dart and flutter framework and its advantages by Ali Yazdi
  • 19:15 The history of flutter and the latest updates on flutter forward by Jhin Lee
  • 19:30 Recap and closing talk about the flutter community and the next meeting
  • 20:00 Continue networking and ending the event

 

Introduction about the dart and flutter framework and its advantages

by Ali Yazdi

 

The history of flutter and the latest updates on flutter forward

by Jhin Lee

KEEP READING

Google I/O Extended 2022 – In Person

2022-06-14 |by droidmtl | 0 Comments | Uncategorized

Wednesday, June 22nd, 2022

The magic of I/O doesn’t end after the main event!

Come to our first event in person since the pandemic at Mirego!
We will talk about news announcements about Android and showcase how to develop with news tools.
We will also have some gifts to draw. Don’t miss your chance, places are limited.

A big thanks to Mirego for the venue!

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

 

Schedule:

  • 18:30 Welcome!
  • 19:00 What’s new in Android 13 by Nav Singh
  • 19:45 Break
  • 20:00 Introduction à Jetpack Compose by Mathieu Larue

 

What’s new in Android 13

by Nav Singh

Dive into the new things that Android 13 brings us

  • Features: Predictive back gesture, Photo picker, Per-app language preferences.
  • Behavioral changes: Notification permission, Foreground services task manager, Granular media permissions, Intent filters block non-matching intents, Battery Resource Utilization,
  • Clipboard preview, etc.Tools & IDE updates: Revamped LogCat, LiveEdit, Device mirroring, Preview annotation for multiple previews, Firebase Crashlytics integration, Accessibility scanner integration within IDE.

Introduction à Jetpack Compose

by Mathieu Larue

Explication des composants de base en Jetpack Compose ainsi que des outils de développement

 

KEEP READING

Flutter Festival – Online

2022-03-03 |by droidmtl | 0 Comments | Uncategorized

Saturday, March 19th, 2022

This event will be held online on Bevy
https://gdg.community.dev/j/jwqqy8m9fwpqk/

 

Schedule:

  • 18:30 Welcome!
  • 19:00 Flutter Hooks by Samuel Dionne
  • 19:45 Break (time to get another coffee / beer / etc.)
  • 20:00 Serverless Backends for your Flutter Apps by Roman Jaquez

 

Flutter Hooks

by Samuel Dionne

A Flutter implementation of React hooks. Why would we want to use those and how do they work. We will explore the inner workings of that library to better understand how the “magic” happens and the impact they can have on the code we have to write and more importantly the performance cost of them.

Serverless Backends for your Flutter Apps

by Roman Jaquez

Flutter GDE, Google Certified Cloud Architect and GDG Lawrence Lead Organizer, Roman Jaquez, will give us an architectural walkthrough of how developing the GDG Lawrence mobile app using Flutter as the front end and leveraging the Google Cloud and its serverless capabilities for the application’s backend (Firebase Authentication, Firebase Cloud Firestore, Cloud Storage and Cloud Functions) simplified its development without provisioning physical servers while achieving scalability, low maintainability and high availability – all under the Free Tier!

KEEP READING

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

GDG Monctorontreal!

2020-09-15 |by droidmtl | 0 Comments | Meetup

Wednesday, September 23rd, 2020

We’re teaming up with GDG Moncton and GDG Montreal for virtual Android talks by speakers from across the east coast, join us in welcoming Phil Shadlyn and our very own Samuel Dionne for two outstanding talks on the latest Android tech!

The event will be hosted on Remo here:
https://live.remo.co/e/gdg-monctorontreal

To check if your computer is ready for participation, please run the Remo System Check: https://remo.co/mic-cam-test/

Join us on September 23rd to talk about

  • Kotlin Contracts
  • Dagger and Hilt
  • and Web Components.

 

What’s the Deal with Kotlin Contracts?

by Phil Shadlyn

Are you tired of arguing with the Kotlin compiler when it insists on telling you a value could be null, even though you know it won’t be? Me too. Enter Kotlin Contracts, a new feature that allows us to better inform the compiler of our code’s behaviour, so it can make better decisions and allow us to write more concise, readable code. Join us and we’ll talk about: – Why we should be interested in Kotlin Contracts, and what problems they solve for us; – How to use contracts in your code; – Where are contracts are currently being used in the Kotlin standard library; – How far you can go with them, and what limitations they have.

Using a dagger is safer from the hilt

by Samuel Dionne

Using a dagger is safer from the hilt We know by now that we should be using dependency injection in our projects, but Dagger is still really hard to master and painful to setup. The Android team decided to give us a handle so we don’t cut ourselves too badly. We’ll cover the following: – 10 thousand feet overview of dependency injection – Why use Hilt over Dagger – New tools in Android Studio 4.1 – What happened when we migrated Transit App from Dagger to Hilt.

uilding the Modern Web with Web Components

by Simon Gauvin

The browser technology behind the web has come a long way since the days of hyperlinks and HTML. Referred today as the “web platform” developers now have a rich set of tools to build enterprise-grade applications for both desktop and mobile. The promise of “write once run anywhere” has moved closer to reality with the ability of developers to dynamically define their own HTML tags. Combined with CSS styling and JavaScript code Web Components completes the missing parts of the browser to allow for true component-based development of applications. In this talk we will explain what a Web Component is, how it is used to build everything from a button to an app, and review modern tooling and UX libraries allowing you to build your next multi-platform project.

KEEP READING