Design System Android – A Problematic Situation

Reading Time: 5 minutes

Prologue

Picture this: you are an Android dev, and a new feature needs to be implemented. It’s a small screen, fairly straightforward layout, some inputs, nothing fancy.

And here you are, on one screen you got the Figma document open, in the other screen your IDE. You see this new button, seems a little bit larger than what you have in the rest of the app. It’s probably just a minor mistake on the designer’s part. You decide to use the regular size for the button.

And here’s where the fun begins.

Continue reading “Design System Android – A Problematic Situation”

Another of our projects goes open-source: Uppy!

Reading Time: 5 minutesTL;DR: We developed Uppy, an on-premises way to distribute Android and iOS apps via the open web. The SDK for iOS is here and the one for Android is here, whilst the backend will be published later because it needs a bit more polishing! 😜

I’m so excited to unveil this project publicly that I’d like to go straight to features, but first, let me introduce some of the backstories!

Why we built Uppy

As you may already know, internally we are developing two apps: one for customers and one for shoppers and while the first one is publicly available on major stores, the other one has very specific needs that can’t be achieved on those platforms.

Specifically, we value the shopper app as a Working tool with a capitalized “W”, meaning that the app should be not only as efficient as possible but updates must be on-point and align with regulations and new features in a timely fashion.

Continue reading “Another of our projects goes open-source: Uppy!”

Android Room: The good, the bad, the ugly

Reading Time: 5 minutes

In these series of posts (don’t worry, they’ll be only 3), I would like to dig a bit deeper on the experience of using Room for Android and how it compares to other existing technologies. Please, note that I won’t explain how everything works and how to wire together all the components – there are plenty of tutorials for that – but I will focus on some aspects of the library and on how it feels to use it every day. Moreover, we will try to give a few insights on why you might want or not to use it.

I think it’s best to hear first the bad news and then the good ones, so I’d like to start these series highlighting a few parts of Room which we didn’t find great. Let’s start!

TL;DR: Room is an improvement but we still need to write tons of SQL for trivial cases. Migrations became a chore instead of a pain: a good trade-off. Continue reading “Android Room: The good, the bad, the ugly”

Our View on Android Architecture – Part 1

Reading Time: 5 minutes

Einstein once said:

Only two things are infinite, the universe and the number of design patterns used for Android development.

He’s still got it.

But seriously, architecting an Android app has always been a mess. There was no “official” standpoint about that and everyone was doing what they felt was good. And that’s good, because there is nothing like an absolute truth and every app and every developer is born different, but without a common and solid starting point, this quickly escalated to a jungle, making it really hard for new developers to find their way. Continue reading “Our View on Android Architecture – Part 1”