• Android at Scale Holiday Panel Discussion w/ Pinterest, Square, Twitter, Uber

    For our final SF Android GDG event of the year we have planned a special holiday event to close out the year with an Android at Scale panel discussion. We have picked engineers who have had a lot of experience on this topic working on large scale Android apps and the challenges that come with that. The panel members are Cesar Puerta (Twitter), Thorben Primke (Pinterest), Zach Klippenstein (Square), and Andreas Nomikos (Uber). Building an app with a small team is straight forward with mature tooling and straight forward processes, but what works for a small team doesn't always work for a large one. Some companies now have hundreds of mobile engineers! What happens when these teams and projects outgrow the standard tooling? For this meetup, we'll be hosting a panel of speakers from HUGE Android teams to to learn about how they organize, build software, their scale related pain points, and what tooling they've build to grow. Special thanks to the Pinterest Android team for sponsoring event, letting us use their beautiful venue, providing food and drinks, etc. About the Panel members Andreas Nomikos is a Software Engineer at Uber working on delivering smart and connected e-Bikes & Scooters to a city near you. He focuses on architectures and processes that promote rapid iteration and steady progress in dynamic environments. Previous stints include Android product and infrastructure at Facebook and web development at Linkedin. Cesar Puerta is the Technical lead for Twitter for Android, overseeing the architecture of the application. He focuses on helping teams collaborate on such a large-scale project, and on the migration of shared infrastructure towards design patterns which incorporate modern techniques such as dependency injection through Dagger and decoupled, modularized, and testable components. Thorben Primke is a Software Engineer at Pinterest working on topic based discussions and making collaboration easier. Prior to Pinterest, Thorben has worked on Android at Facebook, Gowalla and Jelly. Zach Klippenstein is a Software Engineer on the Square Android team. Crafting tools to make Square's apps as simple to build as they are to use. Our moderator: Joaquim Verges. Joaquim is an Android fanatic working at Twitch, previously Twitter. Creator of Falcon Pro, Hacked and Flyne. Co-organizer of the SF Android GDG.

  • Android Dev Summit Viewing Party

    AMC Metreon 16

    Can't make it to the Android Dev Summit this year? No problem! Come watch the sessions in your local movie theatre with the rest of the community! Reserve your spot here: https://events.withgoogle.com/android-dev-summit-viewing-parties/ You will get confirmation from Google once your spot is reserved. See you there!

  • Android Studio Tips and Tricks + Droidcon SF Pre-Party

    Android Studio Tips and Tricks by Michael Bailey + Droidcon SF warm up where the Droidcon SF folks will make some announcements and have some ticket give aways for SF Android GDG members. Check out the Droidcon SF sessions and speakers here: https://www.sf.droidcon.com/ Talk Abstract: Come learn about the new features and some tips and tricks to make you more productive. We will cover some features from the underlying IntelliJ platform. Speaker Bio: Michael Bailey is a Google Developer Expert and a Principal Engineer on the Android team responsible for American Express’ flagship consumer Android apps in the U.S. market. Development on these apps began in 2010. Since joining the company in 2008, Michael has worked on a number initiatives at American Express including analytics, enterprise content management, AmexLabs, iOS apps, international mobile applications, NFC payments, the U.S. homepage and the U.S. online card applications site. Michael holds a BS in Computer Science from Harvey Mudd College and an MS in Computer Science from the University of Southern California, where he specialized in computer security. Including the U.S. consumer apps that Michael works on, American Express has 8 Android apps in the U.S. Google Play Store (https://play.google.com/store/apps/developer?id=American%20Express) and more in the international Play Stores.

  • What's new in Android Studio 3.2 and What's Coming in 3.3

    TALK #1 ----------- Jerome Dochez from the Google Android Studio team will be presenting on the latest updates to Android Studio. About Jerome Dochez Jerome is the tech lead on the Android SDK team. He is the manager and technical lead for the Android Gradle Plugin. Previously Jerome was the architect of the GlassFish project at Sun Microsystems and Oracle. TALK #2 ----------- Title: Build is Fast in 3.2 but You Can Make it Faster Description: every major release of tools is expected to make things faster, and Android Studio is no exception. Build performance has always been in the center of attention and today with the release of version 3.2 and adopting the Gradle v4.10.2 we are one step closer to the ultimate 'Instant run'. Let's see how we can utilize new tools and what homework is left on us to make our apps compile faster both locally and on CI. About the speaker: Artem Chubaryan is a senior software engineer currently working at MOBITV. He loves optimizing things, squeezing out build performance from every line of code.

  • Introduction to Flutter + Live coding

    Google Launchpad

    Welcome back to another SF Android GDG tech meet up! This session will be focused on Flutter, the hot new cross platform framework from Google. Talk: Flutter is a new mobile app SDK that approaches apps like Unity approaches games. In this talk, we'll look at the fundamentals of Flutter, and we'll give the SDK a spin by implementing an app from scratch. Speaker: Filip Hracek Filip speaks, writes articles and builds sample code for Google and, more specifically, for Flutter and Dart. Previously, he lead Google's developer relations program in Central and Eastern Europe. Prior to Google, Filip was an independent IT instructor. In his spare time, he builds games, reads books, and occasionally enjoys pancakes. Hope to see you all there!

  • A View State Machine for Network Calls on Android

    Needs a location

    Speaker: Amanda Hill Senior Android Developer at Thoughtbot A not-at-all-recent grad from Cornell University, Amanda was born and raised in NYC but is now living with several houseplants in SF. She loves street vendor hot dogs, white sneakers, and taking pictures of food. She was the lead Android Dev at Venmo before moving over to the world of consulting where she now works at thoughtbot. Topic of the night: A View State Machine for Network Calls on Android Using Kotlin’s sealed classes, we can make a state machine for all UI-related to network calls. The reality of ever-changing design specs can, at times, be frustrating and miserable, but rather than focus on the negatives I like to think that it can also be a fun challenge in how we approach development. So today I am going to share some improvements I made to how I handle network requests in Android development to protect against UI changes.

  • Android and Deep Learning

    Google Launchpad

    This presentation focuses on Deep Learning (DL) concepts, such as neural networks, backprop, activation functions, and Convolutional Neural Networks. You'll also learn how to incorporate Deep Learning in Android applications. Basic knowledge of matrices is helpful for this session, which is targeted primarily to beginners. About the Speaker: Oswald is a former PhD Candidate (ABD) in Mathematics, an education junkie (6 degrees), and an author of 17 technical books (including Angular). He has worked for Oracle, AAA, and Just Systems of Japan, along with various startups. He has lived/worked in 5 countries on three continents, and in a previous career he worked in South America, Italy, and the French Riviera, and has traveled to 70 countries on six continents. He has worked from C/C++/Java developer to CTO, comfortable in 4 languages, and wants to become fluent in Japanese. Currently he is a consultant and provides training in Android, Angular, and Deep Learning. Where: Launchpad Space (4th floor, 301 Howard, SF (https://maps.google.com/?q=4th+floor,+301+Howard,+SF&entry=gmail&source=g)) Subscribe here (https://goo.gl/forms/kllPDSpCSzuJOX7I2) to receive biweekly event updates from Launchpad Space, Google's new event Space in SF where developers and startups can receive free technical training, one-on-one mentoring and more!

  • Android OS: Thoughts about the future of computing (from Google)

    For our June meetup, we are super fortunate to have Benjamin Poiesz, who is a Sr. Product Manager on the Android Framework at Google, who offered to share his thoughts on the future of computing with Android. More importantly, it turns out he is willing to take all of our crazy "Why'd they do that?" questions. Additionally, Benjamin will talk about improving Android quality and device performance, and provide more details about what's upcoming in the latest Android version. As far as Benjamin's bio goes, it's enough to say that he "does Androidy stuff, like all day" :-) Special thanks goes out to Nikola Novaković for putting this event together and to Twilio for hosting us!

  • An Android Double Feature.

    Yelp HQ

    We have two great talks planned at Yelp. You won't want to miss these! AARAWR! Fantastic bits and where to dex them This is the story of how we extracted delicious spaghetti code out of a dinosaur Android codebase to ship a fancy SDK as an AAR. We'll look into what's in an AAR, how we built our own (it's "just" a zip task!), how R files work, and how we messed with our own fork of the Multidex library. Speaker: Pierre-Yves Ricau Android Baker at Square, I enjoy leak-free wine & gluten-full code. Binders, Transactions, and Bundles Oh my! Yelp's app has traditionally passed data via Intents. Over time this data has grown quite sizable while bundle size limits have decreased. We'll cover Transaction Too Large Exceptions, changes in Android N/O, and how we go about solving these problems across 200+ Activities. Speaker: Diego Waxemberg A stalwart of Yelp's Android team, Diego is equally adept at recycling views as he is at dominating the pool table. Doors open at 6:00pm and security will stop letting people up at 6:30pm.

  • Advanced RxJava through concrete Android examples

    Google Developers Launchpad Space

    For our April event, we're demystifying some of the most advanced RxJava features, learning through a real, concrete Android use case: uploading videos. We are extremely grateful to Google for hosting us at their LaunchPad space (https://developers.google.com/startups/space)in SF where developers and startups can receive free technical training, one-on-one mentoring and more! Subscribe here (https://goo.gl/forms/kllPDSpCSzuJOX7I2) to receive biweekly event updates from them. About the speaker: Jag Saund, an Android Engineer with over 8 years of experience (pre Cupcake), specializes in the Android media framework. He's worked on the audio and video components of Tango, Amazon, Upthere, and Periscope. With a passion to understand the inner workings of Android, he strives to maximize the platform's potential. Currently, on the Periscope team, he's transitioning the app to MVP and integrating RxJava. In addition to Android's media framework, Jag also worked on several backend services and believes in taking a holistic approach to app development. In his spare time, he enjoys pursuing photography, hiking, and tinkering with hardware projects. Topic of the night: "Advanced RxJava through concrete Android examples" RxJava's growing popularity has developers looking for ways to incorporate it's capabilities into their apps. However, the combination of a steep learning curve, and the lack of practical examples, can make it challenging to leverage advanced functions in the library. This talk uses a complex, practical example to exemplify how RxJava can simplify the process of uploading files and persisting their state within Android. It also explores some of RxJava's more advanced constructs such as subjects, handling and retrying on errors, and publishing events to the UI.