SlideShare a Scribd company logo
Insert date here
Droidcon 2021
summary
@bkosarzycki
Droidcon Berlin 2021
2
Women in Computer Science
3
Women in Computer Science
Margaret Hamilton
She was director of the Software Engineering Division of the MIT Instrumentation Laboratory, which developed on-board
flight software for NASA's Apollo program.
Kathleen Booth
Kathleen Booth wrote the first assembly language and designed the assembler and autocode for the first computer systems
at Birkbeck College, University of London
Barbara Liskov
Liskov has led many significant projects, including the Venus operating system, a small, low-cost timesharing system; the
design and implementation of CLU; The syntax of CLU was based on ALGOL, Argus, the first high-level language to support
implementation of distributed programs and to demonstrate the technique of promise pipelining; and Thor, an
object-oriented database system.
Ada Lovelace
Methematician. Ada Lovelace emphasised the difference between the Analytical Engine and previous calculating machines,
particularly its ability to be programmed to solve problems of any complexity
Grace Hopper
Hopper's belief that programs should be written in a language that was close to English (rather than in machine code or in
languages close to machine code, such as assembly languages) was captured in the new business language, and COBOL
went on to be the most ubiquitous business language to date.
4
5
Droidcon
superstar Chet Haase
6
build
cache
7
Gradle profile
8
Gradle doctor
9
Nelson Osacky, Soundcloud -
Gradle doctor
10
Gradle doctor
11
What about our 16 GB mackbooks?
Gradle doctor
12
Gradle doctor
13
Check how many daemons you’re using:
Gradle doctor
14
Check how many daemons you’re using:
Gradle doctor
15
Check Java home:
build
cache
16
build
cache
17
Gradle doctor
18
More about Gradle doctor here:
build
cache
19
MORE INFO:
https://speakerdeck.com/runningcode/what-is-the-android-cache-fix-plugin-and-why-do-i-need-t
o-solve-my-own-cache-misses?slide=14
https://medium.com/@cesarmcferreira/using-gradle-build-cache-server-73d7680baf2a
https://stackoverflow.com/questions/60528123/how-to-disable-gradles-local-build-cache-but-keep
-remote-cache-enabled
Idiomatic Unit Testing - Kotlin
Similar to:
https://phauer.com/2018/best-practices-unit-testing-kotlin/#recap-what-is-idiomatic-kotlin-c
ode
TLDR: don’t use static variables; favour val instead of var and try to write common logic
between test suites
20
Jetpack Compose
21
Jetpack Compose
22
Jetpack Compose - samples
23
https://github.com/android/compose-samples
Jetpack Compose - testing
24
- don’t have to put Id’s
- jetpack preview performance has been greatly improved
Jetpack Compose - testing
25
Jetpack Compose - testing
- we can add additional tags for testing
26
Jetpack Compose - useUnmergedTree
- then we can ui-test using these tags
more here: https://developer.android.com/jetpack/compose/semantics
27
Jetpack Compose - testing
28
ATD - Automated Test Devices
29
ATD - Automated Test Devices
API for Android Emulators:
30
Gradle Managed Devices (GMD) - more info here
ATD - Automated Test Devices
31
Jetpack compose - lottiefiles ?
Do you know any alternative to lottiefiles which can be used with Compose?
> you don’t need one -
Lottie already supports
Compose
LINK
32
dependencies {
implementation 'com.airbnb.android:lottie-compose:1.0.0-alpha02'
}
Josef Raska - Module Rules [gradle]
Reference:
https://github.com/jraska/modules-graph-assert/blob/master/presentation/REFERENCES.md
GRAPH ASSERT plugin
33
Josef Raska - Module Rules [gradle]
34
Josef Raska - Module Rules [gradle]
35
SAMPLE
Josef Raska - Module Rules [gradle]
36
Flutter: Animation examples
37
Flutter: Animation examples
38
Flutter: Animation examples
39
Flutter: Animation examples
40
Flutter: Animation examples
Emily Fortuna - Animation - Flutter Europe
https://www.youtube.com/watch?v=wnARLByOtKA
41
Flutter: Animation examples
Web app:
https://roszkowski.dev/animations/
Pdf:
https://github.com/orestesgaolin/
animations_samples/blob/master/docs/
presentation.pdf
42
Don’t kill my app
43
Don’t kill my app - benchmark
44
Android 12 - Exoplayer
45
https://github.com/google/ExoPlayer/releases/tag/r2.16.0
Android 12 - Exoplayer
46
THANK YOU
@bkosarzycki

More Related Content

PDF
Droidcon Online 2020 quick summary
PDF
GraphQL IN Golang
PDF
Inroduction to golang
PDF
Golang from Scala developer’s perspective
PDF
GraphQL in Apache Sling - but isn't it the opposite of REST?
PDF
Paving the way to a native Sling
PPTX
Developing Cross Platform Applications with Golang
PDF
Golang Project Layout and Practice
Droidcon Online 2020 quick summary
GraphQL IN Golang
Inroduction to golang
Golang from Scala developer’s perspective
GraphQL in Apache Sling - but isn't it the opposite of REST?
Paving the way to a native Sling
Developing Cross Platform Applications with Golang
Golang Project Layout and Practice

What's hot (20)

PPTX
Wonders of Golang
PDF
Repoinit: a mini-language for content repository initialization
PDF
Refactoring a go project
PPTX
Open-Source Analytics Stack on MongoDB, with Schema, Pierre-Alain Jachiet and...
PDF
Dependency management in golang
PPTX
Golang Channels use cases
PDF
re-frame à la spec
PDF
Sling and Serverless, Best Friends Forever?
PPT
Come With Golang
PPTX
Golang for OO Programmers
PDF
Debugging Python with gdb
PDF
Building Command Line Tools with Golang
PDF
How to build a tool for operating Flink on Kubernetes
PDF
[INNOVATUBE] Tech Talk #3: Golang - Takaaki Mizuno
PDF
Serverless - introduction et perspectives concrètes
PDF
Ať se z kódu nepráší! 2013
PDF
Swift2 smalltalk osxdev
PDF
Fix: static code analysis into our project
Wonders of Golang
Repoinit: a mini-language for content repository initialization
Refactoring a go project
Open-Source Analytics Stack on MongoDB, with Schema, Pierre-Alain Jachiet and...
Dependency management in golang
Golang Channels use cases
re-frame à la spec
Sling and Serverless, Best Friends Forever?
Come With Golang
Golang for OO Programmers
Debugging Python with gdb
Building Command Line Tools with Golang
How to build a tool for operating Flink on Kubernetes
[INNOVATUBE] Tech Talk #3: Golang - Takaaki Mizuno
Serverless - introduction et perspectives concrètes
Ať se z kódu nepráší! 2013
Swift2 smalltalk osxdev
Fix: static code analysis into our project
Ad

Similar to Droidcon Summary 2021 (20)

PPTX
It's always your fault. Poznań ADG 2016
PDF
OSCON 2013: Using Cascalog to build an app with City of Palo Alto Open Data
PDF
Using Cascalog to build an app with City of Palo Alto Open Data
PDF
Java 8 Overview
PPTX
Legacy of Void*
PDF
Clean Infrastructure as Code
PDF
COMPARING PROGRAMMER PRODUCTIVITY IN OPENACC AND CUDA: AN EMPIRICAL INVESTIGA...
PDF
COMPARING PROGRAMMER PRODUCTIVITY IN OPENACC AND CUDA: AN EMPIRICAL INVESTIGA...
PDF
COMPARING PROGRAMMER PRODUCTIVITY IN OPENACC AND CUDA: AN EMPIRICAL INVESTIGA...
PDF
ewili13_submission_14
PDF
Boulder/Denver BigData: Cluster Computing with Apache Mesos and Cascading
PDF
Extending DevOps to Big Data Applications with Kubernetes
PPTX
不只自動化而且更敏捷的Android開發工具 gradle
PDF
Graal and Truffle: Modularity and Separation of Concerns as Cornerstones for ...
PPTX
It's always your fault
PDF
Decompiling Android Discover How Android Apps Are Compiled And Built To Secur...
PDF
OSMC 2022 | Providing a Rich Interface to the Prometheus Operator by David Fl...
PDF
Lean Model-Driven Development through Model-Interpretation: the CPAL design ...
PPTX
OpenACC Monthly Highlights September 2019
PDF
02 c++g3 d
It's always your fault. Poznań ADG 2016
OSCON 2013: Using Cascalog to build an app with City of Palo Alto Open Data
Using Cascalog to build an app with City of Palo Alto Open Data
Java 8 Overview
Legacy of Void*
Clean Infrastructure as Code
COMPARING PROGRAMMER PRODUCTIVITY IN OPENACC AND CUDA: AN EMPIRICAL INVESTIGA...
COMPARING PROGRAMMER PRODUCTIVITY IN OPENACC AND CUDA: AN EMPIRICAL INVESTIGA...
COMPARING PROGRAMMER PRODUCTIVITY IN OPENACC AND CUDA: AN EMPIRICAL INVESTIGA...
ewili13_submission_14
Boulder/Denver BigData: Cluster Computing with Apache Mesos and Cascading
Extending DevOps to Big Data Applications with Kubernetes
不只自動化而且更敏捷的Android開發工具 gradle
Graal and Truffle: Modularity and Separation of Concerns as Cornerstones for ...
It's always your fault
Decompiling Android Discover How Android Apps Are Compiled And Built To Secur...
OSMC 2022 | Providing a Rich Interface to the Prometheus Operator by David Fl...
Lean Model-Driven Development through Model-Interpretation: the CPAL design ...
OpenACC Monthly Highlights September 2019
02 c++g3 d
Ad

More from Bartosz Kosarzycki (17)

PDF
Provider vs BLoC vs Redux
PDF
Animations in Flutter
PDF
Flutter overview - advantages & disadvantages for business
PDF
Flutter CI & Device Farms for Flutter
PDF
Drone racing - beginner's guide
PDF
Optimize apps for Chromebooks - Meet.Intive Oct, 2018
PDF
Android - Gradle build optimisation 3d83f31339d239abcc55f869e5f30348?s=47
PDF
DroidCon Berlin 2018 summary
PDF
SCALA - Functional domain
PDF
Android things introduction - Development for IoT
PDF
Daggerate your code - Write your own annotation processor
PDF
Android antipatterns
PDF
Introduction to Flutter - truly crossplatform, amazingly fast
PDF
Git-flow workflow and pull-requests
PDF
ADG Poznań - Kotlin for Android developers
PDF
Kotlin advanced - language reference for android developers
PDF
Kotlin Developer Starter in Android projects
Provider vs BLoC vs Redux
Animations in Flutter
Flutter overview - advantages & disadvantages for business
Flutter CI & Device Farms for Flutter
Drone racing - beginner's guide
Optimize apps for Chromebooks - Meet.Intive Oct, 2018
Android - Gradle build optimisation 3d83f31339d239abcc55f869e5f30348?s=47
DroidCon Berlin 2018 summary
SCALA - Functional domain
Android things introduction - Development for IoT
Daggerate your code - Write your own annotation processor
Android antipatterns
Introduction to Flutter - truly crossplatform, amazingly fast
Git-flow workflow and pull-requests
ADG Poznań - Kotlin for Android developers
Kotlin advanced - language reference for android developers
Kotlin Developer Starter in Android projects

Recently uploaded (20)

PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
KodekX | Application Modernization Development
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
The Rise and Fall of 3GPP – Time for a Sabbatical?
“AI and Expert System Decision Support & Business Intelligence Systems”
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Unlocking AI with Model Context Protocol (MCP)
Review of recent advances in non-invasive hemoglobin estimation
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Understanding_Digital_Forensics_Presentation.pptx
MYSQL Presentation for SQL database connectivity
sap open course for s4hana steps from ECC to s4
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
NewMind AI Weekly Chronicles - August'25 Week I
Programs and apps: productivity, graphics, security and other tools
Building Integrated photovoltaic BIPV_UPV.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
KodekX | Application Modernization Development
Per capita expenditure prediction using model stacking based on satellite ima...
Build a system with the filesystem maintained by OSTree @ COSCUP 2025

Droidcon Summary 2021