A log of the the articles that I have read.

Week 2016-11-7

“The idea of keeping the same job for life becomes less realistic as technology advances.”
Lihsuan Lung @ 8thlight blog
Make Yourself Dispensable

Week 2016-10-3

“I need to display data on a page, not perform Sub Zero’s original MK fatality.”
Jose Aguinaga @ hackernoon.com
How it feels to learn JavaScript in 2016

Week 2016-9-21

“Android Studio 2.2 is the update you do not want to miss.”
Jamal Eason @ Android Developers Blog
Android Studio 2.2

“Kotlin Android Extensions is basically a view binder that will let you use your XML views in your code by just using their id”
Antonio Leiva @ antonioleiva.com
Kotlin for Android (IV): Custom Views and Android Extensions

“Charge people what you think it’s worth, do what you can with what you have, and focus on doing a really damn good job.”
Claire Lew @ Medium
How we generated $712,076.64 in revenue with two people in a little over two years

Week 2016-7-25

“We need to choose a language, or two, or three. A small set of simple frameworks. Build up our tools. Solidify our processes. And become a goddam profession.”
Robert C. Martin (Uncle Bob) @ The Clean Code Blog
The Churn

“If technology would be better we will be not talking about patterns”
Rob Pike @ OSCON OSCON 2010: Rob Pike, “Public Static Void”

Week 2016-6-01

“Type Aliases When you want to pass a function (say, a foo and bar to buzz), you end up repeating this function signature many times. That is why people want some abbreviation mechanism, to give a name to this complex type.”
Andrey Breslav @ Kotlin Night
Where We Stand & What’s Next for Kotlin

“If you have a big project and want to arrange your folders, quickly see which layout, drawables, values, etc. belongs to which screen try to use resource folder — per screen android project structure.”
Dmytro Danylyk @ Medium
Android Project Structure — alternative way

” There are three main ways this can be done: programmatically, in XML, or automatically via an annotation.”
Ian Lake @ Medium
Intercepting everything with CoordinatorLayout Behaviors

“Actually, the LinearLayout already manages a notion of spacing between elements.”
Cyril Mottier @ cyrilmottier.com Grid Spacing on Android

Week 2016-5-23

“First Find a View, then perform an action on it and finally verify the resulting state.”
Wojtek Kaliciński @ Android Developers Channel
Android Testing Support - Android Testing Patterns #1

“UnitTesta are the more basic tests, but basic is not the same as unimportant”
Wojtek Kaliciński @ Android Developers Channel
Android Testing Support - Android Testing Patterns #1

“Do Less / Be Lazy”
Addy Osmani @ Google I/O 2016
Progressive Web Apps across all frameworks

“They were able to prevent Oracle from setting a dangerous precedent”
Quincy Larson @ Medium
Who won Google VS Oracle? Developers won

Week 2016-5-16

“With Vector Asset Studio you only have to think about one asset file”
Kaushik Gopal @ Fragmented Podcast All about Vector support on Android

“You need social interaction, Cabin Fever is a real thing.”
Donn Felker @ Fragmented Podcast Working Remotely

“Can the image be a Vector Drawable? VP, No? -> Do we support WebP? WebP, No? -> Does it need transparency? PNG, No? -> Is it simple? PNG, No? -> Is it complex? JPG”
Colt McAnlis @ Google IO 2016
Image compression for Android developers

“Exhausting multiple implementations and solutions to a problem is essential for ironing out the best approach.”
Jake Wharton @ jakewharton.com
Coercing Picasso To Play With Palette

“You want your classes to be named after the behaviour they exhibit, following the Single Responsibility Principle you should know what this responsibility/behaviour is.”
Paul Blundell @ novoda’s blog
This one simple change for better class naming will blow your mind

“Adding a hash at the end of the URL is one way to represent that the dialog box is visible”
Jason Follas @ falafel’s blog Fixing the Back Button: A Simple SPA Behavior using Location Hash

Week 2016-5-9

“In the Activity lifecycle, there is this beautiful step onSaveInstanceState() that will be called before onDestroy().And, when your Activity is created, there’s a matching step onRestoreInstanceState()”
Joanna Smith @ Medium
Activity Revival and the case of the Rotating Device

“Functions are contravariant in the input type and covariant in the output type.”
Alvaro Polo @ Type Inference
Covariance and Contravariance

“The layout scrollFlags attribute is the magic that will make it go” Joanna Smith @ Android Developers Channel AppBarLayout and scrolling gestures (Android Development Patterns Ep 6)

“The trick is to use the tools:text="@string" to see your views pre filled with data on the preview window. “ Alexandru Simonescu @ alexsimo blog Mastering tools namespace on Android

Week 2016-5-2

“Tu código no debería ser menos testable porque utilices un singleton. Es menos testable porque invocaste a getInstance donde no tenías que invocarlo.”
Sergio Arroyo @ Fatiguitas de un Informático
Los singletons no son malos, es la sociedad que los corrompe

Week 2016-4-18

“I prefer to call it Isolated test instead of Unit tests” JB Rainsberger @ youtube J B Rainsberger Integrated Tests Are A Scam HD

“XP: A progression of ideas from broad and abstract values through principles, to concrete practices” Martin Fowler @ martinfowler.com

“Now any class can use the code that we want to reuse, they just need to reference the dependency that has the code we want to share.”
Rui Figueiredo @ Blinking Caret
Why composition is superior to inheritance as a way of sharing code

Week 2016-4-11

“Los requisitos del cliente van en la capa de dominio” Jorge Juan Barroso @ GDG DevFest Córdoba 2015. GDG DevFest Córdoba 2015. Track 1.Persistiendo que es gerundio

“There are 3 common mistakes custom views: Useless calls to onDraw(), useless pixels and wasted CPU cycles.”
Ian Ni-Lewis @ Google Developers Youtube Channel Custom Views and Performance (100 Days of Google Dev)

“Rather than allocating an object each time once is needed it makes more sense allocate a group of free objects at one time”
Colt McAnlis @ Google Developers Youtube Channel
Object Pools (Android Performance Patterns Season 2 ep5)

“Dalvik and ART (for the moment) don’t use a compacting garbage collector, a model in which the GC will run through the heap and move living objects into adjacent memory locations”
Michael S. @ Yelp Engineering Blog

Week 2016-4-4

“Whenever you’re really confused, break things down.”
Andy Bartholomew @

“The main idea behind Model View Presenter is to decouple the view implementation from the domain layer adding a concept named Presenter where the presentation logic is implemented.”
Pedro Pedro V. Gómez Sánchez @ Karumi Blog
Inside Rosie - The Presentation Layer

“Dependency injection is passing dependencies (inject them) via constructor” Antonio Leiva @ antonioleiva.com
Dependency injection on Android: Dagger (Part 1)

“La antifragilidad, la propiedad de un sistema que más allá de la resiliencia y la robustez, consiga MEJORAR a partir del fallo.”
David Bonilla @ La Bonilista
El pastor de Cisnes Negros

Week 2016-3-28

“Alert Dialog is where we easily can find the Builder pattern in Android” Donn Felker @ Fragmented Podcast 016: Effective Java for Android developers : Item 2

“A static factory method we use in android is the Toast class.” Kaushik Gopal @ Fragmented Podcast
014: Effective Java for Android developers : Item 1

“When gradle in in its initialization phase in order to determine what is executed in which order it use DAG (direct acyclic graph)”
Annyce Davis @ Fragmented Podcast
033: Talking Gradle with GDE Annyce Davis

Week 2016-3-21

“Si alguien con un salario de 31.000€ está entre el 20% de los profesionales mejor pagados en España es que algo marcha mal, muy mal.”
David Bonilla @ La Bonilista
Big Macs y barro

“Lambda is not exactly the same as an object”
Antonio Leiva @ antonioleiva.com
Kotlin recipes for Android (I): OnGlobalLayoutListener

Week 2016-2-29

“Do we want to put a limit on the technology that protects our data?”
Bruce Sewell @ Apple’s opening statement to Congress over its FBI fight, via engadget

“This type of misunderstanding happens between human drivers on the road every day”
Google @ Google’s February self-driving report, via The Verge
A Google self-driving car caused a crash for the first time

“Everyone has to has to care about performance: users leave feedback about bad performing applications 3 times more than anything else.”
Colt McAnlis @ Coffee with a Googler
Coffee with a Googler: Chat with Colt McAnlis

“La forma de garantizarte un salario digno no será usar software con más o menos habilidad, sino construirlo.”
David Bonilla @ La Bonilista
El día que los robots se comieron a los lobos

“Learn a new programming language this year”
Donn Felker @ Fragmented Podcast
028: Tips and tricks we picked from 2015

Week 2016-2-22

“As things are immutable you don’t have that many side effects” Hadi Hariri @ Fragmented Podcast 020: Talking Kotlin with Hadi Hariri

“React has values, about the way the software should be structure” Nick Schrock @ React Conf 2016 React.js Conf 2016 - Nick Schrock - Keynote

“Creer es crear” Mario Alonso Puig @ Agora Talentia Mario Alonso Puig , regalate estos 15 minutos de sabiduría

“In 2007, the two roommates living in San Francisco couldn’t afford to pay rent.” Biz Carson @ Business Insider
How three guys turned renting out an air mattress in their apartment into a $25 billion company

“It’s extremely difficult to convert an app into a profitable business” Enrique Dans @ Medium
The app economy: it’s all about critical mass

“Perder o vender los datos de nuestros usuarios debería ser una falta tan grave como romper el Juramento Hipocrático para los médicos”
David Bonilla @ La Bonilista
Enclave Seguro

“VR is going to be the most social platform” Mark Zuckerberg @ MWC Samsung Galaxy Unpacked 2016 Samsung Galaxy Unpacked 2016 Live Stream

“Idling: Espresso waits until the app is “idle” before performing the next action and checking the next assertion.”
Chiu-Ki Chan @ Square Island
Espresso: Custom Idling Resource

Week 2016-2-15

“After the first time registerIdlingResource() is called, all subsequent calls for an idling resource with the same name won’t have any effect”
Stefano Dacchille @ Jimbo Blog
Wait for it…a deep dive into Espresso’s Idling Resources

“Acceptance tests are the ones that make sure your entire feature (or a certain aspect of the feature) is implemented correctly.” Egor Andreevici @ egorands Blog Testing a sorted list with Espresso

“We run them because we are afraid. We are afraid because we are uncertain what the system will do.” Robert C. Martin (Uncle Bob) @ The Clean Code Blog
Stabilization Phases

“Good life is made of good relationships” Robert Waldinger @ TED Talks What Makes a Good Life? Lessons from the Longest Study on Happiness | Robert Waldinger | TED Talks

“Sad face” Rebecca Franks @ http://riggaroo.co.za/ Optimizing Layouts in Android Reducing Overdraw

“Your new friend, windowBackground”
Saul Molinero @ saulmm.github.io
Avoiding cold starts on Android

Week 2016-2-8

“A craftsman takes pride in his work an strives to do the best job he can.”
Micah Martin @ blog.8thlight
Definition of Software Craftsman

“I figured it would have been easier to publish to JCenter than it actually was!”
Danielle Emma Vass @ Medium
How to Publish Your Android Studio Library to JCenter

Un gran problema en el desarrollo software es la comunicación entre los desarrolladores y los expertos del dominio.
Carlos Morera de la Chica @ devexperto
Introducción a Domain Driven Design (DDD): Parte 1

“The drawback of working remotely is that it can feel like you’re surrounded by plenty of people.”
David Heinemeier Hansson @ Signal v. Noise
Cabin fever

“It is a column data base that execute queries much much faster than row databases like SQLite”
Christian Melchior @ Fragmented Podcast
027 – Realm Realm Realm your boat (with Christian)

“No one likes your style”
Drew Hamlett @ Medium
How to fix Javascript… maybe

“They never wanted to host your app, they just wanted you to use Facebook login.”
Sascha Konietzke @ Medium
They never wanted to host your app. The real reasons why Parse shut down.

Week 2016-2-1

“J2ObjC is not a Java emulator, but instead translates Java to Objective-C classes that extend the iOS Foundation Framework.”
Tom Ball @ google opensource blog
J2ObjC 1.0 Release s

“You should consider process death a natural part of your app’s lifecycle”
Ian Lake @ Medium Who lives and who dies? Process priorities on Android

“DRAFF: Deliver Really Awesome Features Fast” Israel Ferrer @ Øredev Conference ANDROID DEVELOPMENT LIKE A PRO

“Cualquier instanciación de clases complejas o módulos es una violación de este principio”
Antonio Leiva @ devexperto
Principio de Inversión de Dependencias (SOLID 5ª parte)

Week 2016-1-25

“In the right environment event a turtle can be fast”
Paul Bakaus @ ampproject.org
What Is AMP?

“Use Fragments at your risk… They use the tasty Burrito pattern” Israel Ferrer @ Fragmented Podcast
026 – LetMeExplainYou AndroidDev like a pro

“minSdkVersion (lowest possible) <= targetSdkVersion == compileSdkVersion (latest SDK)”
Ian Lake @ Medium
Picking your compileSdkVersion, minSdkVersion, and targetSdkVersion

“Using React means being part of something bigger.” Sacha Greif @ Discover Meteor
The State Of Meteor Part 2: What Happens Next

“Ninguna clase debería depender de métodos que no usa” Antonio Leiva @ devexperto
Principio de Segregación de Interfaces (SOLID 4ª parte)

Weeek 2016-1-18

“But as a professional, putting my (or my team’s) productivity at risk it gives me pause.”
Reto Meier @ Medium
How Often Should You Update Android Studio?

“Si un método sobrescrito no hace nada o lanza una excepción, es muy probable que estés violando el principio de sustitución de Liskov.”
Antonio Leiva @ devexperto
Principio de sustitución de Liskov (SOLID 3ª parte)

“It’s no secret that Meteor is in a state of flux right now.”
Sacha Greif @ Discover Meteor
The State Of Meteor Part 1: What Went Wrong

“2015 is when web development went to shit.”
Drew Hamlett @ Medium
The Sad State of Web Development. Random thoughts on web development

Weeek 2016-1-11

“Una entidad de software debería estar abierta a extensión pero cerrada a modificación.”
Antonio Leiva @ devexperto
Principio Open/Closed (SOLID 2ª parte)

“Hacer un poquito cada día, pero todos los días, es uno de los pocos secretos que puede haber para seguir prosperando.”
Jorge Castillo @ devexperto
Qué he aprendido hasta hoy

“Nothing happens in our society unless it is mediated by software.”
Robert C. Martin (Uncle Bob) @ The Clean Code Blog
Prelude to a Profession

“Best knowledge workers view their time like the best investors view their capital.”
Kate Matsudaira @ The Spark Notebook
How to do time blocking

“Javascript Lost but Programming Won.”
Gary Bernhardt @ Destroy all Software
The birth & death of javascript

Weeek 2016-1-4

“You didn’t list the important decisions. You listed the irrelevant ones.”
Robert C. Martin (Uncle Bob) @ The Clean Code Blog
A Little Architecture

“I will continuously ensure that others can cover for me, and that I can cover for them.”
Robert C. Martin (Uncle Bob) @ The Clean Code Blog
The Programmer’s Oath

“Un objeto debe realizar una única cosa.”
Antonio Leiva @ devexperto
Principio de responsabilidad única (SOLID 1ª parte)