Fragmented - Android Developer Podcast

  • Autor: Vários
  • Narrador: Vários
  • Editora: Podcast
  • Duração: 175:20:28
  • Mais informações

Informações:

Sinopse

The Fragmented Podcast is a podcast for Android Developers hosted by Donn Felker and Kaushik Gopal. Our goal is to help you become a better Android Developer. We chat about topics such as Testing, Dependency Injection, Android Patterns and Practices, useful libraries and much more. We will also be interviewing some of the top Android Developers out there. Subscribe now and join us on the journey of being an Android Developer.

Episódios

  • 030: Material Design for developers with GDE Mike Wolfson

    29/02/2016 Duração: 43min

    In this episode we talk to Material Design Master and Google Developer Expert Mike Wolfson. What does Material design mean to us developers? How does one use the numerous support libraries to help with this? What widgets should and shouldn't we be using? Listen to the show and find out. Show Notes Material Design - Official site Material Design - The Specification Google Color Palette - list of "approved" colors Google Color Palette Library - picking colors from an image Android Support Lib 23.2 video [twitter.com] Resource for getting better at Material Design: Materialdoc.com - curated blog post for developers Android Historian - Mike's Material Design demo PSD resources - Up Labs [materialup.com] Official PSD layout templates Official Material Design Icons DroidconNYC 2015: Material design everywhere using the Android Support Libraries - Mike's talk Sponsors Rollbar - special offer: Bootstrap plan free for 90 days [rollbar.com/fragmented] Contact Mike Wolfson: Twitter Google+ mikewolfson.

  • 029: All about the infamous 65,536 dex method count

    22/02/2016 Duração: 08min

    If you've been an Android developer in the last 2 years, you must have seen this dreaded exception: dex: method ID not in [0, 0xffff]: 65536 Quick googling would immediately bring up the phrase "65K method count" and the recommended solution "multi-dexing". But if you want to really understand this mysterious number and the reason behind its existence, listen on! Show Notes Official Dalvik specification [source.android.com] (look for invoke- prefix methods) Android and the Dex limit (great post) ADB Ep 11 : ART, pART 2 (Trash Talk) (discussion on ART) MultiDexing [developer.android.com] (solution to your 65K method count woes) Contact @fragmentedcast [twitter.com] @donnfelker [twitter.com] @kaushikgopal [twitter.com]

  • 028: Tips & Tricks for Android developers

    15/02/2016 Duração: 38min

    Feast yourselves to a grand bonanza of tips and tricks with this episode! Donn and Kaushik talk about the tips and tricks they've picked up over the course of 2015. Android Dev Summit demo - Structural replace [youtube.com] Software Design patterns [wikipedia.org] Reformatting code: Reformatting Source code [jetbrains.com] Reformat dialog [jetbrains.com] (only VCS changed text) Library dependency management: JitPack (publishing jvm and android libraries) Internal library dependency managment - Kelly Shushter Hadi Hariri on Fragmented Ep 20 talking Intellij shortcuts Using UiAutomatorViewer to help write espresso tests - Ep. 23: Caster.io [caster.io] git pre-commit hook [gist] Intellij - work with embedded Terminal [jetbrains.com] (yes, you can customize btw zsh/bash) KG's Update script - morning ritual [gist] Cyril on Grid Spacing on Android [cyrilmottier.com] (showdividers/divider) Tor's issue on maven vs jcenter [code.google.com] Contact @fragmentedcast [twitter.com] @donnfelker [twitter.com] @kaus

  • 027: Talking Realm with Christian Melchior

    05/02/2016 Duração: 43min

    Realm pro and overall genius Christian Melchior joins us in this episode to talk about all things Realm. Show Notes Realm.io for Java/Android Martin fowler on schema-less github issue on extending Realm Object Caster.io video tutorial - Intro to Realm for Android Devs Christian's talk at Droidcon NYC 2015 [youtube.com] Contact @chrmelchior [twitter.com] @realm [twitter.com] @fragmentedcast [twitter.com] @donnfelker [twitter.com] @kaushikgopal [twitter.com]

  • 026: LetMeExplainYou AndroidDev like a pro

    21/01/2016 Duração: 41min

    In this episode Donn and Kaushik chat with the one and only Israel Ferrer Camacho (@rallat). They discuss a talk Israel gave sometime back on "Android development like a pro", exchanging war stories on patterns like MVP, MVVP clean architecture etc. Show Notes Rallat's slides [pdf] Rallat's sample repo using different patterns [github] Burrito Design Pattern [twitter.com] Working Effectively with Legacy Code [amazon.com] The Clean architecture [blog.8thlight.com] Uncle Bob's talk on Vimeo Awesome Picks: Rallat: Rallat's tweet on Dagger 2 & Scope Provider Music for the week! The Weeknd Cmd Shift A - one shortcut to rule them all Donn: Philly ETE (April 11/12) (Donn's giving a talk) Life is Short [paulgraham.com] 7 videos on UI Testing and TDD with Espresso : Caster.IO Kaushik: Create a pared-down "lite" version of the app Pancakes library - alternative to Fragment Manager for views Contact @rallat [twitter.com] @fragmentedcast [twitter.com] @donnfelker [twitter.com] @kaushikgop

  • 025: Effective Java for Android developers : Item 7

    28/12/2015 Duração: 11min

    In this mini Fragment, we introduce Joshua's seventh Item and a momentous end to the first chapter: Avoid finalizers Stay tuned for more items from our "Effective Java for Android developers" Fragment series. Show Notes Effective Java (2nd Edition) - Joshua Bloch Avoid finalizers If you don't know what they are, ignorance is bliss. If you know what they are, avoid them! Finalizers in Java != destructors in C++ (C++ counterparts to constructors). In C++ destructors you reclaim resources here (Java has GC) you also reclaim non-memory resources (use the try-finally block in Java) (unpredicatable amt of time between object becoming unreachable and finalizer being executed) Never do anything time critical in finalizer! System.gc + System.runFinalization increase chances - no guarantee System.runFinalizersOnExit + Runtime.runFinalizersOnExit are the ones that do - but they are fatally flawed Java 7 has try with resources, which is also interesting and auto-closeables. [Android] devs can only drea

  • 024: Effective Java for Android developers : Item 6

    15/12/2015 Duração: 12min

    Joshua's sixth Item: Eliminate obsolete object references , in a distinctively croaky voice. Stay tuned for more items from our "Effective Java for Android developers" Fragment series. Show Notes Effective Java (2nd Edition) - Joshua Bloch Eliminate obsolete object references Supplemental reading (for the diligent ones that follow shownotes) Do click listeners leak memory? [stackoverflow.com] Square's LeakCanary How to leak a context - Handlers and inner classes [androiddesignpatterns.com] Avoiding Memory leaks [android-developers.blogspot.com] Contact: @fragmentedcast [twitter.com] @donnfelker [twitter.com] @kaushikgopal [twitter.com]

  • 023: Android Dev Summit Recap

    30/11/2015 Duração: 35min

    Donn and Kaushik cover the happenings of Google's very first Android Developer conference - "Android Dev Summit". Together, they attended the conference both virtually and physically! Listen on for the highlights. Android Dev Summit Schedule AndroidDev Twitter account Sessions Android Dev Summit 2015 Keynote [youtube] Android Studio for Experts [youtube] Android Testing [youtube] Firechat - Framework team [youtube] Firechat - Android Tools and Testing team [youtube] Sample projects Android Topeka [github] Android Bootstrap [github] u2020 [github] Google code labs + github link Contact us: @fragmentedcast [twitter.com] @donnfelker [twitter.com] @kaushikgopal [twitter.com]

  • 022: Effective Java for Android developers : Item 5

    20/11/2015 Duração: 12min

    In this mini Fragment, we introduce Joshua's fifth Item: Avoid creating unnecessary objects. Stay tuned for more items from our "Effective Java for Android developers" Fragment series. Show Notes Effective Java (2nd Edition) - Joshua Bloch Avoid creating unnecessary objects Google says - Avoiding creating unnecessary objects too Episode 10 with Michael Bailey - String optimization Snippet to demonstrate AutoBoxing problems // sum of all positive values Long sum = 0L; for (long i=0; i Integer.MAX_VALUE; i++) { sum+=i; } Contact: @fragmentedcast [twitter.com] @donnfelker [twitter.com] @kaushikgopal [twitter.com]

  • 021: Diving Deep with Dagger

    13/11/2015 Duração: 01h15min

    In this episode, Kaushik and Donn dive deep into the Dependency Injection library - Dagger. We have a cameo by Dagger creator Jesse! Show Notes In other news Donn in a Banana Suit KG as a Storm Trooper AndoridTO 020 – Talking Kotlin with Hadi Hariri Google entering podcast scene and we're on it Dagger Topological Sort Jesse Wilson Cameo Dagger Linker class Jesse's MiniGuice proof of concept Avoiding injects with library Assisted Injection for Dagger AutoFactory caster.io Activity Test Rule Other great references Jake Wharton - Architecting Android Applications with Dagger Awesome picks: Donn's picks: Dagger 1 [caster.io] Intro to RxJava for Android Developers [caster.io] Intro to Realm for Android Developers [caster.io] Custom Silicone earbuds [howtogeek.com] DHH - Reconsider [medium.com] KG's picks: Cold start illusion [github.com] Song Exploder - House of Cards [songexploder.net] Song Exploder - Game of Thrones [songexploder.net] Contact us: @fragmentedcast [twitter.com] @donnfelker [twitter.co

  • 020: Talking Kotlin with Hadi Hariri

    26/10/2015 Duração: 01h24min

    A tonne of folks have been asking for a show on Kotlin. We got the best person in the business to take us through what could possibly be our new hope. Show Notes No tabs in Intellij [hadihariri.com] Jetbrains products Java - IntelliJ .Net - ReSharper CI server - TeamCity Issue tracking - YouTrack Smaller IDES Web/Node.js - WebStorm Python/Django - PyCharm Ruby/Rails - RubyMine C++ - CLion ObjectiveC - AppCode Hadi's 3 tips for Intellij Don't use the Mouse! Mouseless driven development [vimeo.com] Cmd Shift A - look up other commands Don't use the Find box to find things: Prefer shortcuts like Cmd O/Cmd Shift O Kotlin Kotlin - An open source JVM targeted language Jake's doc on Using Project Kotlin for Android [docs.google.com] Execution in the kingdom of nouns [blogspot.com] Kotlin : a new hope - talk by Michael Pardo [realm.io] Tony Hoare saying Null is his Billion dollar mistake [wikipedia.org] Getting started with Kotlin Kotlin Tutorials [kotlinlang.org] Kotlin Koans [kotlinlang.org] Try Kotlin o

  • 019: Effective Java for Android developers : Item 4

    15/10/2015 Duração: 06min

    Singer and Android developer Donn Felker explores Joshua Bloch's fourth Item: Enforce noninstantiability with a private constructor. Stay tuned, cause we got more of these quick ones coming. Effective Java (2nd Edition) - Joshua Bloch Enforce noninstantiability with a private constructor. Examples where you don't want class to be instantiated class that groups static methods and static fields (Util like classes think java.lang.Math/java.util.Arrays) class that groups static methods (including factory methods) for objects implementing specific interfaces (think java.util.Collections) class that group methods on a final class (vs. extending the class) Considerations Makes no sense to instantiate such "Util" classes Private constructors prevent instantiation Important side effect: prevents subclassing Contact us: @fragmentedcast [twitter.com] @donnfelker [twitter.com] @kaushikgopal [twitter.com]

  • 018: Effective Java for Android developers : Item 3

    08/10/2015 Duração: 11min

    In this mini Fragment, we introduce Joshua's third Item: Enforce the Singleton property with a private constructor or an enum type. Stay tuned for more items from our "Effective Java for Android developers" Fragment series. Show Notes Effective Java (2nd Edition) - Joshua Bloch Enforce the Singleton property with a private constructor or an enum type Approaches Create a public static final INSTANCE variable and privatize constructor Same as 1 but privatize variable and expose access with provide factory method getInstance Single element Enums Considerations First two approaches are open to Serialization attacks (deserializing creates new instance) To protect from those declare the fields transient + provide readResolve method Enums are concise, provide free serialization and ironclad Singleton guarantees and are functionally equivalent to first approach Supplemental reading (for the diligent ones that follow shownotes) Dianne Hackborn regretting exposing the base Application class DH again sa

  • 017: Getting Close with Android Nearby

    21/09/2015 Duração: 01h01min

    In this power packed episode, Donn returns... If that wasn't amazing enough, Andrew and Akshay from Google join us to talk about Nearby. Show Notes Follow up Fragmented is on SoundCloud [soundcloud.com] ViewPropertyAnimator has better performance [twitter.com] Droid Inspector [sriramramani.com] Jake Wharton's Scalpel [github.com] Nearby 100 days of Google Dev, Episode 47/100 - Andrew on Nearby [plus.google.com] Chromecast Guest mode when Nearby [support.google.com] Examples/Documentation google sample for Nearby [github.com] Nearby official docs [developers.google.com] Awesome picks for the week: Andrew: svg-android [github] and its various forks inkscape tutorials by Derek Banas [youtube.com] Akshay Xiaomi mi band [engadget.com] DF: Karma Wifi (donnfelker.com) Working Remote (modess.io) KG: Google Tone - Chrome extension (chrome.google.com) Contact Fragmented @fragmentedcast [twitter.com] @donnfelker [twitter.com] @kaushikgopal [twitter.com] @andrewbunner [twitter.com] Akshay's email Soundclo

  • 016: Effective Java for Android developers : Item 2

    01/09/2015 Duração: 12min

    In our third Fragment installment, we introduce Josh's second Item: Consider a builder when faced with many constructor parameters. Stay tuned for more items from our "Effective Java for Android developers" Fragment series. [audio src="http://traffic.libsyn.com/fragmented/ep_14_fragmented.mp3" preload="none" autoplay="false"] [Download][1] Show Notes Effective Java (2nd Edition) - Joshua Bloch Consider a builder when faced with many constructor parameters Patterns available for constructing object with parameters: Telescoping Constructor Pattern - Provideconstructor with only required parameters, another with a single optional param, a third with 2 optional params... and so on. Advantage: Works well for small number of parameters Disadvantage: Does NOT scale well JavaBeans Pattern - Callparameterless constructor to create the object; then call setter methods to set required parameter and each optional param of interest. Advantage: Scales well, easy (but wordy) to

  • 015: Amanimations - Animations with Amanda

    21/08/2015 Duração: 01h04min

    In this episode we talk to Amanda about how she got started as an Android developer, working at Venmo, her path to mastering Java and Android, dabbling with the dark side and Animations in Android! Show Notes Learning Java and Android Java for Dummies [amazon.com] Effective Java (2nd Edition) - Joshua Bloch [amazon.com] Android programming: The Big Nerd Ranch Guide [bignerdranch.com] Computer Science CS50 by Harvard University: David Malan [youtube.com] CS61B by UCBerkely: Jonathan Shewchuk [youtube.com] MIT 6.00 by MIT Opencourseware [youtube.com] Venmo Venmo: The Musical 2015 (lip dub) Hack Week at Venmo [venmo.com] Swift/iOS and other languages Kotlin [kotlinlang.org] Animations Snowdream github repo [github.com] DevBytes youtube playlist Chet Haase on Animations in Honeycomb [blogspot.com] Droid Inspector [sriramramani.com] Android ObservableScrollView [github.com] Awesome picks for the week: Amanda On being a senior engineer [kitchensoap.com] KG: Guillotine animation how we developed the gui

  • 014: Effective Java for Android developers : Item 1

    10/08/2015 Duração: 17min

    We've mentioned the book "Effective Java" by Joshua Bloch quite a few times on previous episodes. At this point, everyone knows they should have read this book (quadruple times). But it's a dense read and everyone could use a reading buddy. Also, what does Effective Java look like through the eyes of an Android developer? In this second installment of our Fragment (a.k.a mini-episode), we thought we'll do our listeners a favor and help with that reading. We introduce the very first of these venerable "Items": Consider providing static factory methods instead of constructors. Stay tuned for more items from our "Effective Java for Android developers" Fragment series. Show Notes: Effective Java (2nd Edition) - Joshua Bloch Consider providing static factory methods instead of constructors static factory method makeText for Toast class [androidxref.com] ObjectAnimator [androidxref.com]: .ofInt [androidxref.com] .ofArgb [androidxref.com] .ofFloat [androidxref.com] Advantages: Y

  • 013: Corey Latislaw on TDD and Testing

    03/08/2015 Duração: 01h02min

    In this episode we revisit the topic of Testing, looking at it from a TDD perspective. Globetrotter, Kata Queen, TDD practitioner and overall boss of Android development - Corey Latislaw, joins us in this episode with thoughts, tips and tricks on pulling off TDD. She also shares some of her wicked sketchnoting tips and made a very special Sketchnote just for this episode! Have a  look at the sketchnote here. Show Notes GDG [developers.google.com] GDE [developers.google.com] GDE Android - Ms.Latislaw [developers.google.com] GDE Android - Mr.Felker [developers.google.com] Sketchnoting The Sketchnote Handbook - Mike Rohde [amazon.com] Sketchnoting for Techies [coreylatislaw.com] Corey's Google I/O Sketchnotes [coreylatislaw.com] Corey's live sketchnoting (with videos) [coreylatislaw.com] Kids on Computers [kidsoncomputers.org] Corey's books Android Activity Book [gumroad.com] (coupon “fragmented” for $5 off) Android Theory Book [gumroad.com] (coupon “fragmented” for $5 off) Running Code Coverage in Andro

  • 012: Continous Integration and Collective Code Ownership

    21/07/2015 Duração: 21min

    In this episode we're trying something new. Everyone has requested more episodes of the podcast. In short, everyone wants a weekly show. So this week, we're introducing what we call a mini-episode ... or as we like to call them a "Fragment". Fragment episodes will be shorter in length but still packed with goodness. They will range from ~7-25 minutes in length and will showcase either Kaushik, myself (Donn) or both of us. In the first "Fragment" installment we're going to talk about Continuous Integration (CI) and Collective Code Ownership (CCO). Donn talks about what CI is, why its important and how it benefits you and your team. He then dives right into CCO and how it can be facilitated through testing. We hope you enjoy these new mini-episodes ... aptly named ... Fragments. :) Show Notes Thoughtworks - Continuous Integration [thoughtworks.com] Working Effectively with Legacy Code - Michael Feathers [amazon.com] Continuous Integration solutions: Jenkins CI [jenkins-ci.org] Cloud solu

  • 011: The Fowler Road to a Clean Architecture

    14/07/2015 Duração: 01h07min

    In this episode - Donn and Kaushik dive into a topic that is very near and dear their hearts - application architecture. They talk about how Martin Fowler has inspired a lot of their architectural decisions and how they're moving towards defining what a clean architecture means to them and other developers. They talk about Model View Presenter, Model View Controller and many other topics that surround these two common patterns. Take a listen and go for the ride on architecture train ... all aboard! Show Notes Chit-chat: Exponential backoff with RxJava [github.com] RxJs - ReactiveExtensions for Javascript [github.com] Follow up: Moving GC only applicable when app goes into background: A closer look at ART in Android L (see last paragraph) [anandtech.com] Google I/O 2014: The ART Runtime [youtube.com] The road to a clean architecture: Bad practices: Cargo cult programming [wikipedia.org] God objects [wikipedia.org] Martin Fowler’s articles on Patterns of Enterprise Application Architecture: Supervis

página 12 de 13