Papers

Building iOS App with Kotlin using AppCode (introduction)

Speaker: @tommyputranto

In this talk we are going to Introduction how we can building iOS Application using kotlin with AppCode IDE . We will explore techniques and strategies that you should use to build iOS and Android Application only with kotlin native.

  • introduction about AppCode IDE
  • step by step how to integrate kotlin to iOS Application
  • show how one function kotlin programming use in android an iOS Apps

Audience Level: All

45mintues

Cross-platform Development

Kotlin

Productivity and Tools


Fantastic Async and Where to Find Them

Speaker: @ParthDroid

As Android developers, we’ve got many asynchronous tools at our disposal: RxJava, LiveData, Kotlin Coroutines and recently, ListenableFuture! We’ll try to find the async solutions to your concurrency problems, discussing how to implement a flexible, scalable architecture for your application.

As Android developers in the modern age, we’re spoiled for choice when it comes to asynchronous tools: RxJava, LiveData, Kotlin Coroutines and now with AndroidX, ListenableFuture! But how do these architectures scale? How easy is it to onboard new developers? How performant is it?

In this whirlwind expedition, we’ll adventure in search of fantastic async solutions to your concurrency problems, spending time to discuss how to implement a flexible, scalable architecture for your application, big or small.

Audience Level: Beginner

45mintues

Kotlin

Mobile Development

RxJava


Key strategies to help you and your team move to Kotlin

Speaker: @_carlospaulino

In this talk we are going to take a look at some key strategies to overcome what’s preventing developers from moving to Kotlin in order to help them start using one of the most beautiful, pleasant and productive languages.

The last couple of years have been amazing for Kotlin Developers. A good amount of Software Developers especially those who work on Android apps, have jumped ship and fully moved to Kotlin as their primary language. Despite all the growth, Kotlin is far from becoming one of the top used languages.

In this talk we are going to take a look at some key strategies to overcome what’s preventing developers from moving to Kotlin in order to help them start using one of the most beautiful, pleasant and productive languages.

Audience Level: All

45mintues

Android

Kotlin


Build - Test - Ship - Repeat: Effective testing and delivery using Continuous Integration

Speaker: @_carlospaulino

In this talk we are going to explore how we can improve product quality, stability and delivery speed by embracing Continuous Integration and Firebase Test Lab. We will explore techniques and strategies that you should use to automate your most time consuming processes.

Android testing is hard and ensuring product quality is even harder. Both of these processes are very time consuming and unfortunately time is a very limited resource. As software engineers we should automate as many processes as possible and let machines do they heavy lifting in a more efficient and faster way.

In this talk we are going to explore how we can improve product quality, stability and delivery speed by embracing Continuous Integration and Firebase Test Lab. We will also explore which techniques and strategies that you should use to automate your most of the processes that are time consuming and hard to implement manually.

Audience Level: All

45mintues

Android

Testing

Continuous Integration


Real Time Face Detection on Android with Firebase

Speaker: @nshred

Firebase ML Kit is the perfect place to begin your journey into Machine Learning. Firebase offers simple SDKs to allow you to get up and running quickly and effectively. Nick will take you on a journey into Facial Recognition, to demonstrate just how simple yet powerful Firebase ML Kit really is.

By the end of the presentation you will have learned how to get setup in Firebase, how to take a photo or image, detect faces within it and alter them, then finally, how to analyse your camera feed detect faces in real time and overlay a graphic of some kind to parts of the faces - maybe a moustache or rabbit teeth?

Firebase is making is easier and easier to start using technology that, 5 years ago, was simply not accessible to the average developer. Now, SDKs that provide simple API’s for face detection, text detection, speech recognition (and recently even smart replies!) are becoming freely available in offline mode. This opens many doors for both hobbyists, startups and enterprise alike. Demonstrating this potential is crucial to getting this technology into the hands of as many young developers as possible so that the most creative minds are not hindered by something so trivial as access.

Audience Level: Intermediate

45mintues

Android

Firebase

Machine Learning

Kotlin

Android Studio


SELECT * FROM SqlDelight JOIN Multiplatform

Speaker: @AndriiRakhimov

For the last years, Room was the preferable solution for work with SQLite. But recently was released a new version of SQLDelight with kotlin multiplatform support, overhauled API and full generated kotlin code. With its feature of live typesafe code generation from SQL queries is hard to compete.

For the last couple of years, Room was the preferable solution for work with SQLite. But recently was released a new version of SQLDelight with kotlin multiplatform support, overhauled API and full generated kotlin code, RxJava2 extensions, paging library support and many more. With its feature of live typesafe code generation from SQL queries with the help of Android Studio plugin is hard to compete. So is it still worth considering other solutions?

In this session, we will go through the core features of SQLDelight and in the live demo, we will see how SQLDelight works. We will go through the main use cases and will think about future possible use cases of multiplatform application of SQLDelight. You’ll leave this talk with a solid understanding of how SQLDelight works and the confidence to get started.

Audience Level: Intermediate

45mintues

Kotlin

Android

Multiplatform


How to build a messenger for Android?

Speaker: @AndriiRakhimov

It looks so simple outside, the app which can send messages from one user and receive from others. This is what we were thinking from start. 9 months passed we’re still on it. In this talk, I will go through the main parts of the messenger project as well as explain common mistakes.

It looks so simple outside, the app which can send messages from one user and receive from others. This is what we were thinking from start. 9 months passed we’re still on it. In this talk, I will go through the main parts of the messenger project such as transport, synchronization, architecture, storage, pagination as well as explain common mistakes we’ve made on the way to instant messenger.

You’ll leave this talk with a solid understanding of how modern messengers are built and the confidence to get started.

Note:Lead Android Engineer at Lalafo. More than 6 years working with mobile. Have experience of scaling apps from several thousand to millions of users. Passionate about mobile and technology as well as about giving back to the community.

Audience Level: Intermediate

45mintues

Android

General


Jetpack Navigation Components

Speaker: @nshred

Navigation has been a thorn in the side of every Android developer for a long time. Activity intents, back-stack management, fragment transactions, deep linking, what to do on back button… these are all problems Navigation Components seek to solve.

Navigation has been a thorn in the side of every Android developer for a long time. Activity intents, back-stack management, fragment transactions, deep linking, what to do on back button… these are all problems Navigation Components seek to solve. By the end of this session you will have a good understanding of how to get started with Navigation Components as well as what problems they can solve for you and how. You will also have a roadmap to help you navigate the common misconceptions in navigation and how to avoid leading your users to places they weren’t expecting.

Note:I am an Australian who lives in Munich, Germany. I also have had the pleasure of working with several outsourcing teams in South East Asia so I’m excited to visit them while at the conferences.

Audience Level: All

45mintues

Android Framework and Jetpack

Android Studio

Android Platforms, UI and Design


Dagger Multibindings for Android

Speaker: @AdrianSchfer

Dagger needs much time to learn so the full potential is often missed. I would like to show how dagger multibindings can help to implement solid code in the context of Android.

One of the first steps towards a proper software architecture is to separate your business logic from your object creations. The most popular way on Android to do this is to use dependency injection with Dagger 2. Unfortunately it needs a lot of time to learn it and often the full potential is missed.

One of the new features of Dagger 2 which is often missed is multibindings. Even though it can have a big impact on your code quality, especially on one of the most important aspects of your code, flexibility.

This talk will show how to use multibindings to build a solid code base. It focuses on practical examples for Android: - Use the open-closed principle in your RecyclerView adapters - Create all your viewmodels with a single factory - Remove your base activity and compose your functionality

Note:Once i came up with the idea to divide my life in two parts. The first part to learn and experience as much as possible and the second part to teach and give back. I already started teaching in Berlin and now want to start talking on conferences to give something back and increase my network.

Audience Level: Intermediate

45mintues

Clean Architecture

Designing App Architecture


A to Z of Animations in Android

Speaker: @mohak1712

Who doesn’t like beautiful animations! This is what this talk will be about. I will be talking about various animations that are present in the Android framework and how to implement them. We will be targeting API level 16 for all of the animations, that’s supporting over 99% of Android devices. I will be starting with some basic view animations like visibility and will cover activity transitions, shared element transition, vector animation, path morphing, and constraint set Here is a list of things that I plan to cover during this talk

  • Animating views
  • Transitions (single screen, shared element)
  • Animating vector drawables
  • Animations with constraint layout

Note: I am a google certified android developer who cracked GSOC(Google Summer Of Code) 2018. I am currently working as a Product Engineer at GO-JEK where we handle over 3 million orders every day. I have been working with android since my college days and I am also an active open source contributor. My projects have around 1.4K stars on GitHub.

Audience Level: All

45mintues

Animation


Cut your APK size with features on demand

Speaker: @agrawalsuneet

Do APK or app size matters? Yes, it does. The user thinks about the app size before downloading an app. The user thinks about the data also over which he will be downloading that app. He or she even think about how much space will it take on his or her device. How can we reduce the size of the app?

What if we provide very basic functionality and let the user decide whether he wants the advanced or additional functionality or not. What if he or she can download only the features he needs on demand and keep the app compact. What if he can download only his native language in which wants the app and can skip rest all the languages. Google new feature of dynamic delivery enables us to deliver the features on demand. This helps us to reduce the size of APK and even enables the user to choose what features he needs. From a developers perspective, this is very easy to implement and maintain. What is actually a dynamic delivery? How can we reduce the APK size with it? How it can help a user? How to implement it in Android? How difficult is it to implement in the existing code base? How will it look to the user in the app? Well, let’s get all these questions answered in the talk along with a demo.

Note: Read about my experience, my blogs, can try my apps and games or even check all open source contribution on the link below. agrawalsuneet.github.io/agrawalsuneet/

Audience Level: Intermediate

45mintues

Android Framework and Jetpack

Android Platforms


Cross-platform development in Android perspective

Speaker: @kajornsak_pp

Cross-platform development becomes part of discussion for developing mobile applications in recent years. By choosing the right tool for the right job can helps us in development a lot. But, will it replace native developers like us?. Can cross-platform and native live together?

This talk includes pros and cons of all cross-platform development tools in these recent years. Such as Cordova, React Native, Kotlin Multiplatform, Flutter, etc. And from Android developer perspective, what are the benefits of knowing these tools ? should we use it or not?

Note: I’ve experienced many cross-platform development frameworks from time to time and want to share these experiences to everyone. Each framework has its own advantage that we can use with Android development.

Audience Level: All

45mintues

Cross-platform Development


The Android Architecture

Speaker: @myolwin00

Let’s explore the android architecture components in the jetpack libraries. And figure out how can we take advantages of them.

What is the ‘Architecture’ in software development ? Why do we need to know about it ? Can these architectures really solve the common problems that the developers have been facing? And how do we choose which one is the best fit for our projects ? How did Google support these problems with the new Jetpack libraries ? In this talk, we are gonna discuss about these things and explore how can we take advantages of these architectures to make the development process easier.

Note: I’m exploring these architectures for a while and see how can we solve the problems according to the code base by using the correct architecture. And I want to share those knowledge with all developers who has been facing those problems.

Audience Level: All

45mintues

Designing App Architecture

MVC

MVP

Android Framework and Jetpack


Right way to handle fragment back stack in Android application

Speaker: @akexorcist

Handle the fragment back stack is not hard as you think.

Most people use Fragment in Android application and they have to manually handle the back stack of Fragment by code but which code should we use to handle the back stack in each situation? This talk will help you not to waste time on this kind of thing anymore. Worked on Android development with enterprise application that contain with a lot of fragment to handle.

Audience Level: All

45mintues

Android

Android Platforms


ML Kit: Machine Learning for Mobile Developers

Speaker: @Jirawatee

ML Kit lets you bring powerful machine learning features to your app whether it’s for Android or iOS, and whether you’re an experienced machine learning developer or you’re just getting started.

ML Kit comes with a set of ready-to-use APIs for common mobile use cases: recognizing text, detecting faces, scanning barcodes, labeling images and recognizing landmarks. You simply pass in data to the ML Kit library and it will give you the information you need - all in a few lines of code.

ML Kit gives you both on-device and Cloud APIs, all in a common and simple interface, allowing you to choose the ones that fit your requirements best. The on-device APIs process data quickly and will work even when there’s no network connection, while the cloud-based APIs leverage the power of Google Cloud Platform’s machine learning technology to give a higher level of accuracy.

If ML Kit’s APIs don’t cover your use cases, you can always bring your own existing TensorFlow Lite models. Just upload your model on to Firebase, and we’ll take care of hosting and serving it to your app. ML Kit acts as an API layer to your custom model, making it easy to run and use.

Audience Level: All

45mintues

Firebase

ML Kit

Android

Machine Learning


Flutter, a designer and a developer walk into a project

Speaker: @ykro

In this talk we’ll review some of this advantages of using Flutter, how to tackle common challenges when adopting it and how can it spark a better collaboration between designers and developers, including roles and responsibilities, a well-defined feedback process and our own experience.

Two longtime friends with complimentary skills meet a new mobile SDK for building high-performance apps from a single codebase, what could go wrong? Flutter is quite powerful but with great power comes great responsibility. Using widgets, building a meaningful UI in a new way, finding that library we need and getting used to a different architectural approach are some of the many challenges we face as developers and designers when going into the cross-platform world. In this talk we’ll review some of this advantages of using Flutter, how to tackle common challenges when adopting it and how can it spark a better collaboration between designers and developers, including roles and responsibilities, a well-defined feedback process and our own experience while building an app. Interested? let’s chat it over a beverage of your choice.

Audience Level: All

45mintues

Flutter

Design

UX


Hakuna matata: Koin, Koroutines & all the Kotlin love for Android

Speaker: @ykro

We’ll learn more about language features(Coroutines), libraries(Koin) and how these play together with Jetpack, particularly with architecture components. All to boost the development process, making our life easier reducing boilerplate and allowing us to build robust apps with full-flavored Kotlin.

Are you already enjoying the benefits of Kotlin in your Android app? If so, join us for tips, tricks & suggestions to make your development cycle more straightforward, and if not, you might get that final little push you’re missing to embrace Kotlin with both arms. It’s not only less verbosity and null safety but more (happiness/developer)² with each line of code. In this talk, we’ll explore some of that Kotlin delight in asynchronous programming and dependency injection, two areas that have been a struggle for many and whose understanding comes with a steep learning curve. We’ll learn more about language features(Coroutines), libraries(Koin) and how these play together with Jetpack, particularly with architecture components. All to boost the development process, making our life easier reducing boilerplate and allowing us to build robust apps with full-flavored Kotlin.

Audience Level: Intermediate

45mintues

Kotlin

Android


Effective DI for Multi Module Project

Speaker: @aditlal

This session highlights some of the key learnings and realisation with Dagger 2 in a multi-module project.

Dividing the module of a Monolithic Android app to realise multi-module application is considered as an important concern in recent Android development. This session distils all the pitfalls and best practices in building a complex app and take a look at the usefulness of multi-module application and how we implemented Dependency Injection in our consumer app at Gojek(superapp.is) Some of the highlight points of this session are :

  • Reintroduction to DI
  • Reintroduction to Dagger-Android
  • DI in single module projects
  • DI hotness in multi-module projects
  • Realise DI in multi-module projects using Dagger2

Note: Gojek Consumer app is largely serving 18+ services daily to millions across SE Asian countries. This talk is focussed on a complex multi-module project and how to manage dependencies with DI

Audience Level: Intermediate

45mintues

Kotlin

dagger

Android


Kotlin DSL - let’s express code in “mini-language”

Speaker: @aditlal

This talk introduces and highlights how we could use Kotlin language to build custom DSL’s in android and add some readability of code by enforcing the use of declarative code with minimum boilerplate, as well as look at why Kotlin is particularly good for DSLs with examples.

Easy to read and simple to debug code is more within reach today than ever. DSL (Domain specific language) though around for quite some time, it has gained more momentum in the recent times with Kotlin - which provides some powerful language features giving us the advantage of building internal DSLs. This talk introduces and highlights how we could use Kotlin DSL’s and add some readability of code by enforcing the use of declarative code with minimum boilerplate, as well as look at why Kotlin is particularly good for DSLs with examples.
Topics covered

  • Why DSLs General-purpose languages vs. DSLs Usage of DSLs - Examples on how to use DSLs in Android
  • Why Kotlin For DSL Being built on top of the core language makes Kotlin DSL considered as an Internal DSL which means that it does not have a syntax on its own, rather being a library that offers DSL readability by exploiting the language features, in this case, Kotlin.
  • Different use cases in Android Layouts, custom views, gradle build logic with DSL examples

Audience Level: All

45mintues

Kotlin

Gradle Kotlin DSL

Android


info@droidyangon.org

Android is a trademark of Google LLC. The Android, Google Play, Google Play logo, and
Google Inc.'s logo are registered trademarks of Google Inc.

© 2019 DroidYangon