Blog. PUTTING OUR HEADS TOGETHER.

A clean approach to deferred authentication in Android

Test driving authentication flow in a public-to-read / private-to-write application.

It is common for an app to need users to be authenticated to generate content. But from a user perspective, sign-up as the first screen feels kind of forceful. Why not let the users in, and only ask them to login for advanced interaction? Let’s test-drive this solution.

Android Dependency Injection – Why we moved from Dagger 2 to Koin?

An example using the new DI mechanism with Kotlin and the Android Architecture Components

Koin is a new option to consider to manage dependency injections when working with the Android Architecture Components and Kotlin. It provides much more clarity than Dagger 2 and is simple to implement. Here is an example of how to use it, compared to other more complex options.

Code Quality II: Metrics

Key indicators to measure the health state of your codebase

No metrics are unquestionable. Nonetheless, keeping an eye on churn, as well as cyclomatic and cognitive complexity is a good habit to help write and maintain a clean codebase

Metrics scales to measure performance and quality

Code Quality I: Good Practices

Clean code and other healthy programming habits

It is within ourselves to take action and turn our everyday activities into an upward-spiralling workflow. We might feel it takes longer in the short term, but it saves lots of time and headaches in the long run.

best practices for architecture and infrastructure of clean modern building

The quality pyramid in software development

Relying on everyday processes to reach high standards

We can think of our overall quality as the result of the functional, structural and process aspects of quality. Only by satisfying the lower levels of our pyramid will we be able to reach the uppermost level without sweat blood and tears.

high quality stone pyramid

Defining quality in software development

The importance of setting the bar right to meet expectations

Just like high jumpers, software developers need to clearly set their goals in order to meet their objectives and speak of quality.

Reaching a quality target, darts game

Joining a development team: picking up the necessary behaviors

5 Key tips for a successful employee onboarding program

Getting ready for a real project is a lot more than being ready to take on isolated tasks. It involves finding your place within the team, facing unknown situations and getting used to tons of things, from jargon to speed.

Custom design fried eggs representing being a new developer in a software company team

Joining a development team: a pet project to acquire knowledge and skills

The challenge of getting up to speed on technologies and methodologies

Being the newest junior developer to join the team is not an easy position. Unless you and the team decide to consider it a blessing and to engage in an intense real-life training and mutual adaptation.

Blue eggs in a nest

Rewiring Our Brain

Healthy players, Healthy Design and Development teams

How do upbringing and personality affect the way we perform and relate to others? Let’s focus on creating healthy teams with different people, cultures, ideas and expectations involved.

Human brain connections

Spark joins, avoiding headaches

Joining two datasets based on a single key

Spark is an amazing framework for big data processing. But it’s got its shares of OOM messages and weird concepts too. Here, we’ll focus on joining two datasets based on a single key!

Illustration of big data using spark