I wrote about the Atelierul Digital pentru Programatori in one of my previous articles. It’s a program started by Google Romania in 2018 and I am one of the mentors. I teach Android Fundamentals and I also created the curricula and the materials for this course that is organized in Bucharest, Cluj-Napoca, Timisoara, and Iasi. Until now I trained more than 180 students and it is an amazing experience.
As developers, we are focused on solving problems. And these problems exist in the space we call software development. The main challenge in this domain is to develop software with the right quality levels. So here comes the concept of Software Architecture which helps us to build a bridge between the problem space and the solution space.
Being a technical leader or manager you may think that the architecture is the job of the architect, but to truly understand the big picture, and to guide your team to achieve the mission of the product you all build, this aspect is mandatory to be on your to-do list, not just on your team’s list.
“Software architecture is the fundamental organization of a system embodied in its elements, relationships, and in the principles of its design and evolution.” [IEEE Std. 42010-2011]
“The shared understanding that the expert developers have of the system design. Architecture is about the important stuff. Whatever that is.” [Ralph Johnson, one of the authors of “Design Patterns: Elements of Reusable Object-Oriented Software”, GOF]
I am often asked how to start learning Android, or how to become an Android developer. So I was thinking that a blog post that will answer these questions might be a good idea.
Each one of us has our style of learning. So first of all it is important to identify your VARK learning style and after that check the dedicated resources.
VARK learning styles are:
Visual: you prefer the use images, graphics, schemas, videos to access and understand new information
Auditory: you understand new content through listening
Read & Write: you learn by reading through words and take a lot of notes about new information
Kinesthetic: you learn new concepts and skills through hands-on experiences
The studies estimate that between 50 to 70% of the population prefer a combination of several different styles of learning. So choose your matching combination. 🤓
RecyclerView is a ViewGroup that helps us to display a scrollable list of elements. It is one of the most used UI components in the Android apps and it involves having a data source, an adapter, and the RecyclerView. Other than displaying the content, RecyclerView is efficiently reusing the views that have scrolled off the screen by recycling them.
I recently presented this talk at DevCon edition on the Women in Tech online stage. I was honored and happy to be part of this event and to share my knowledge and experience about how to build a diverse and inclusive team.
My talk covered 3 main areas: what is diversity and inclusion, why they matter, and how to make diversity and inclusion a priority for the team you’re leading or you are part of by applying 5 best practices.
CameraX provides an easy to use api and the purpose of this article is to define a complete guide with different kind of resources about how this api could be easily integrated in our Android apps.
Image analysis and applying extensions when pictures are taken are use cases often accessed by the users. By using CameraX API we are able to implement them in a very simple way. If you want to learn more check the code samples and the theory behind these features in the current article.