This document outlines an introductory session on Android development basics using Kotlin. The session will introduce Kotlin and why it is useful for Android, teach how to build a simple "Hello World" app, and discuss the Android architecture and components. It includes a schedule covering topics like Kotlin syntax, Android essentials, and how to get started with the Android Study Jams course to continue learning.
Software Project Health Check: Best Practices and Techniques for Your Product...
Android Study Jam 1 Jam intro and Android dev basics
1. This work is licensed under the Apache 2.0 License
Android Study Jam 1
Jam intro and Android dev basics
New to Programming Track
2. This work is licensed under the Apache 2.0 License
० Basic computer literacy
० Basic math skills
० Computer & headphones
० Internet connection
० (Optional) Android device & USB cable
Prerequisites
3. This work is licensed under the Apache 2.0 License
1. Why are you here?
2. What are you goals?
3. How do you plan to achieve them?
4. This work is licensed under the Apache 2.0 License
Let’s get started
5. This work is licensed under the Apache 2.0 License
Learning Objectives (in this session)
o Developer basics and Android Basics
o Native App development
o What is Kotlin? Why is it so powerful ?
o Build Hello World App
o Getting started with Android Study Jams course
6. This work is licensed under the Apache 2.0 License
TOPIC TIME
1. Introduction + Presentation 5:00PM - 5:15PM
2. Beauty of Kotlin 5:15PM - 5:25PM
3. Kotlin Koans, Run offline in IDE.. 5:25PM - 5:35PM
4. Developer Essentials ! 5:35PM - 5:45PM
5. Build Hello World App ! 5:45PM - 5:55PM
6. Get started with Android Study Jams course 6:00PM - 6:05PM
7. What's in Upcoming Jams? 6:05PM - 6:15PM
Celebrations
Today’s Schedule
7. This work is licensed under the Apache 2.0 License
Beauty of Kotlin ?
Power of Java
Simplicity of Python
Flexibility of JavaScript
Simple syntax
Dynamic variables with static types
String Templates
Extension Functions
Rich library
8. This work is licensed under the Apache 2.0 License
Learn Kotlin
• Kotlin Koans
• Kotlin documentation (Ref.)
• Kotlin Playground
• Use IntelliJ Idea (or)
• Use Android Studio
9. This work is licensed under the Apache 2.0 License
Text Editor
Let’s you write text
Developer Essentials - Part 1
Code Editor
Integrated Development Environment (IDE)
Syntax highlighting
Code completion
Refactoring
Version control
Debugging
Code search
Visual programming
Language support
Attitudes across different computing platforms
Take advantage of AI
Helps you write code
Terminal
Executes shell commands
10. This work is licensed under the Apache 2.0 License
Android Native basics
o Android runs on Linux kernel.
o To make Android app, we utilize Android SDK by Google.
o Android studio IDE is official tool to make android apps.
o Android apps can be written using Kotlin, Java, and C++.
o Every major version of Android is identified with API levels.
11. This work is licensed under the Apache 2.0 License
Android Architecture Basics
The major components of Android App are:
Activity Services
Broadcasts
Content
Providers
12. This work is licensed under the Apache 2.0 License
Android Native vs (Flutter/React Native)
o Android native is official, simplest way to make android app
o To make libraries for hybrid frameworks which access native
features of android you need to write native code
o To make custom extension/libraries to these frameworks we
need to write implementation of Native code.
13. This work is licensed under the Apache 2.0 License
Build Hello World App
Using Official tool Android Studio
14. This work is licensed under the Apache 2.0 License
New to Programming
track
Start Course
Android Jams Course
15. This work is licensed under the Apache 2.0 License
Android Basics
in Kotlin Course
16. This work is licensed under the Apache 2.0 License
Unit 1: Kotlin Basics
For Android
17. This work is licensed under the Apache 2.0 License
A Pathway
18. This work is licensed under the Apache 2.0 License
Take a Quiz
19. This work is licensed under the Apache 2.0 License
Pathway 1 Pathway 2 Pathway 3
Use Kotlin to start writing Android apps
Kotlin helps developers be more productive
Kotlin Programming Language
20. This work is licensed under the Apache 2.0 License
Write and run Kotlin
code in the browser
Kotlin Playground
Pathway 1 Pathway 2 Pathway 3
21. This work is licensed under the Apache 2.0 License
Pathway 1 Pathway 2 Pathway 3
Official tool to build Android apps
Android Studio
22. This work is licensed under the Apache 2.0 License
Android Emulator
Emulate an Android device on your computer.
Run your app on the emulator
Pathway 1 Pathway 2 Pathway 3
23. This work is licensed under the Apache 2.0 License
Unit 1
Pathways 1 through 3
24. This work is licensed under the Apache 2.0 License
Badges added to your dev profile
Developer profile
Carrie Sawyer
Photo by Christopher Campbell on Unsplash
25. This work is licensed under the Apache 2.0 License
Start here:
g.co/android/studyjams
Collect your first badge!
26. This work is licensed under the Apache 2.0 License
Struck at somewhere? Just ask!
Go to g.co/android/studyjams
Start Android Basics in Kotlin Course
Work on Unit 1, Pathway 1
27. This work is licensed under the Apache 2.0 License
Share what you’ve
learned with
#AndroidStudyJams
28. This work is licensed under the Apache 2.0 License
Stay tuned for Session 2
29. This work is licensed under the Apache 2.0 License
Continue learning!
More units in the Android Basics in Kotlin Course will be released soon!
Modify your existing apps and add more features to them.
Additional resources to check out:
● Official Android Developers Site: developer.android.com
● Learn Kotlin By Example
● Kotlin Vocabulary series
● Official Android Developers Blog (for announcements)
● Android Developers Medium Blog (for more technical articles)
● Android Developers YouTube channel
● Follow @AndroidDev on Twitter
● Subscribe to the Android Developer Newsletter
Editor's Notes
Hi everyone! My name is Pavan and welcome to Android Study Jams DSC GVP! This is session 1 of this study jam.
This session is for people with little to no programming experience, and who are new to android development. We start with basics at the beginning and you’ll learn how to build simple Android apps in Kotlin!
If you already have programming experience or you already have android development experience it would be easy for you, but still consider this session because we’re going to cover most exciting and undocumented content.
Assuming you are in the right place, here are some the prerequisites that will be helpful for this track. Having basic computer literacy and basic math skills is recommended. You’ll also need a computer and access to the internet to take the online course. [Mention WiFi instructions if necessary.]
After this short presentation, we’ll all be working independently on the course. Use headphones to play the videos, so it doesn’t disrupt others around you.
It’s also helpful if you have an Android device so you can test your app. A USB cable will be needed for connecting your phone to the computer. If you don’t have an Android device, don’t worry, you can still use your computer to emulate an Android device.
Before we dive into the content, I want to get to know you better and what brought you here. Please take out a piece of paper. Take a moment to think about your answers to these questions and write them down.
[Give 2-3 minutes to work and when most people have put down their pencils, proceed.]
Okay that’s it! In a moment, I’ll let you get started on the course. Work at your own pace. If you get stuck, you can ask me or the other facilitators who will be available. [Introduce facilitators if applicable.]
We’re here to answer whatever questions you have, for example, if you need help installing Android Studio or getting your app to run on your Android device. Also feel free to ask each other for help and work together to find solutions.
Let’s talk about what you will learn as part of this New to Programming track of Android Study Jams. First and foremost, the goal is for you to build your first Android apps. To do this, you’ll install Android Studio on your computer, which is an application to build Android apps. Along the way, you will be exposed to programming concepts and the Kotlin language.
At the end, we’ll also talk about resources on how you can continue learning and building apps beyond this event.
Let’s look at the schedule for this session. [Please update this schedule accordingly before your event.]
First, we have a short presentation, which we’re doing right now. We’re covering some logistics and a high-level introduction to the concepts, to help you with the hands-on portion of the session later.
Once I’m done talking, you’ll be able to dive into the course. You’ll be working independently on 3 pathways in the first unit of the course. This is just a suggested schedule. You can work through the pathways at your own pace and let me or any of the other facilitators know if you have questions. We’ll also have a short break in between. At the end of the session, I’ll bring everyone together and we can recap what we learned today and celebrate your progress!!
Let’s talk about what you will learn as part of this New to Programming track of Android Study Jams. First and foremost, the goal is for you to build your first Android apps. To do this, you’ll install Android Studio on your computer, which is an application to build Android apps. Along the way, you will be exposed to programming concepts and the Kotlin language.
At the end, we’ll also talk about resources on how you can continue learning and building apps beyond this event.
An Activity is an application component that provides a screen with which users can interact to do something. Activity is like main function in C/C++/Java Languages.
The user interface we see in apps are drawn by Activity.
Service is an android app component which does tasks without user interactions.
Music player apps play music even if the music app isn't running.
Broadcasts are responsible for communication between Activities and Services.
In music player, both UI (by activity), notification (by service) shows player information
Content providers can help an application manage access to data stored by itself, stored by other apps, and provide a way to share data with other apps
Contacts, Photos, Videos, Data are shared by different apps using content providers.
Let’s talk about what you will learn as part of this New to Programming track of Android Study Jams. First and foremost, the goal is for you to build your first Android apps. To do this, you’ll install Android Studio on your computer, which is an application to build Android apps. Along the way, you will be exposed to programming concepts and the Kotlin language.
At the end, we’ll also talk about resources on how you can continue learning and building apps beyond this event.
Then under the New to Programming track in the left hand box, click the green button to start the Android Basics course.
You’ll be working through the Android Basics in Kotlin course. This is a free online training course developed by Google for people like yourself to learn how to build basic Android apps.
The course is made up of units, and units are composed of pathways.
In this track, we’ll be focused on the first unit, which is shown here. It has made up of 4 pathways. In Session 1, you’ll work on the first 3 pathways: 1) Introduction to Kotlin, 2) Create your first app, and 3) Build a basic layout. In Session 2, you’ll work on the 4th pathway, which is a little longer.
You may be wondering, what is a pathway? It’s an ordered sequence of activities to learn a specific skill. An activity can be a video, hands-on coding tutorial (known as a codelab), an article, or quiz. You can see at least 4 activities in this first pathway. All these activities are meant to help you reach specific learning objectives by the end of this pathway.
There’s a quiz at the end of each pathway to check your understanding of what you just learned. Here’s what a sample quiz looks like. There are no limits to the number of retries for a quiz. But if you get a question wrong, try to understand what the concept is (even if you need to look back at the source material), before answering again.
In this course, you’ll be learning how to code in Kotlin. Kotlin is a programming language that you’ll use to build Android apps. Kotlin is a modern and popular programming language, known for helping developers be more productive. Kotlin allows you to be more concise when writing your code, and you can write safer code that’s less prone to errors.
As a result of many great language features, Kotlin has quickly gained momentum in industry. It is reportedly one of the fastest growing programming languages, according to GitHub, and ranked as the #4 most loved programming language among developers, according to the 2020 Stack Overflow Developer Survey.
Pathway 1 of the course is focused on helping you understand the basics of Kotlin.
[Read about Android’s Kotlin-first approach]
To make it easier for you to learn, you’ll be writing your code in the Kotlin Playground which you can access via the web browser. The site looks something like this. You can write your code in this window and hit the green arrow to run it. The result of your code (known as the output) will show up at the bottom of the window (where it says “Hello, world!”).
Pathway 2 is where you create your first app! You will need to download and install Android Studio on your computer. This is the official tool that professional developers use for Android development. This is where you’ll be writing your Kotlin code and building your apps.
In Android Studio, you can also use the Android Emulator, which can emulate various Android devices on your computer. The emulator allows you to run your app and it provides almost all capabilities that a real Android device would have. If you do have a physical device and want to use it, there are also instructions in Pathway 2 to get you setup.
[Students can either use the emulator or a physical device to test their app, it’s up to personal preference.]
Start by working on the first pathway in Unit 1 of the Android Basics in Kotlin course.
The badges you earn can be saved to your developer profile. When you are taking the course, be sure to sign in (in the top right corner) and create a developer profile if you haven’t already. It’s very quick to create. As you earn more badges, you can see them on your developer profile and favorite them, as shown here.
[Read more on the Google developer profile]
Open the course page with the link we provided you, and you will automatically be awarded this badge for attending Android Study Jams! Save it to your developer profile, and create a profile if you haven’t already.
Alright, go ahead and get started on Unit 1, Pathway 1 of the Android Basics in Kotlin course. [You can give them about an hour to work on this]
If you finish early, you can move onto Pathways 2 and 3. We will be taking a break at <Insert Time>.
Great job everyone on your progress!
You can post photos or highlights from today’s session on social media using #AndroidStudyJams. [Include your own developer community and chapter hashtags (i.e. #developerstudentclubs #dsccmu)]
We encourage you to share a screenshot of your birthday card app!
Stay tuned for our next session -- you’ll be learning more about Android and Kotlin to build an interactive app! Thank you for coming and see you soon.
[Insert details for Session 2 if it will start later in the day or on another day.]
First, you can continue learning on your own with the Android Basics in Kotlin course. At the moment, Unit 1 is available (which you already completed), with more units being released as they become available.
In the meantime, you can modify the apps we built together and learn by adding more features to them. You can use Google search or look at existing code samples and videos online for how to add additional features to your app.
To stay connected, check out these additional resources, which professional developers use to stay up to date on Android. As you get into more advanced features, you will likely need to learn more programming concepts. You can check out the Learn Kotlin By Example resource for that.
Thank you so much for being a part of Android Study Jams! Good luck on the beginning of your Android developer journey!