I think I’m a very lazy developer. Being so lazy inspires (or even forces) me to constantly explore for things and techniques which makes my daily job much easier. I hate typing. Hence, I generate everything I can generate. I generate gitignore file, Parcelables, json models, unit tests, constructors… I don’t even create methods manually, well no, I do, but from unit tests, the moment when I declare an external API for the class I’m constructing, after that I just use the most out of my favorite IDE (Intellij IDEA), to declare an interface and implement it using just shortcuts.
Despite the fact I really love Java, at times I blame it for its verbosity. That’s why I’m happy to have Kotlin in my toolbox. I wish I could use it for my daily job, but my side project, so I can master my humble knowledge of it. It’s funcational, so concise and safe, I couldn’t ask for more!
I use Dependency injection library so they do dirty work for me.
I advocate for Clean Architecture, thanks to my typing attitude again. Using the clean way approach I keep application layers well separated and thus well replaceable; a Passive View pattern for Presentation layers helps me extract all business logic into (unit)testable objects, which for me personally means confidence in change, well-separated pieces of relatively small well understandable classes with low cohesion.
One of my favorite books states - “Change is the most constant in software development”. Those words resonate in my head each time I'm about to write(generate) some code. (Every time I commit I have a recollection the guy who created Git wrote it in two weeks... No :) )
Understanding Reactive was the moment I realised I'll never be the same again.
I love and hate Android.
I love my wife.
If you share the same values, excluding my wife, get in touch and let’s try to change the world!
p.s. I think I've never typed that much!
Q&A for professional and enthusiast programmers
Q&A for professional programmers interested in conceptual questions about software development
Q&A for speakers of other languages learning English
Q&A for peer programmer code reviews
Q&A for computer enthusiasts and power users
Q&A for linguists, etymologists, and serious English language enthusiasts
Q&A for enthusiasts and power users of the Android operating system
Q&A for passionate videogamers on all platforms