Image for post
Image for post

Voici un sujet à prendre au second degré (quoi que, finalement très sérieux quand même, true stories inside !) abordant les messages des recruteurs adressés aux potentiels candidats développeurs (voir d’autres domaines de la tech). Pas tous les messages, seulement les pires : il s’agit là du Top 5 des messages les plus agaçants !

Le résultat de ce Top 5 provient de notes que j’ai prises pendant les 2 dernières années, en discutant avec mes différents collègues et amis développeurs. Nous sommes tous à peu près d’accord sur le fait que l’envoi de tels messages devrait être prohihé par un code de déontologie du recrutement ! …

Image for post
Image for post

C’est l’objectif que je me suis lancé en ce début d’année : vais-je réussir à signer un premier contrat de mission en quelques jours, en commençant ma prospection un lundi de bon matin, avec pour envie de commencer mon activité le plus tôt possible ? Tout en gardant en tête, bien évidemment, mes critères de recherche (l’idée n’étant pas la recherche d’un client à tout prix, mais plutôt de commencer mon activité le plus rapidement possible).

Pour rappel, je suis développeur Android freelance, et je viens tout juste de monter mon EURL pour y excercer cette activité.

Deux idées principales se détachent de cet article…

Image for post
Image for post

What is Android Automotive? What are its strengths and weaknesses? Will it revolutionize the mobility of tomorrow? Here are some possible answers.

This article has been written by a colleague of mine, Jordane Serreau. Originally in french, I’ve translated his great work in english with his kind permission.

What is Android Automotive?

Android Automotive is a variant of the Android operating system from Google, especially adapted to the new connected car challenges. It has been presented by Google in March 2017. This platform is the result of a collaboration between Volvo, Audio, Google and Intel.

Do not confuse Android Automotive and Android Auto* (Android Auto is just a cast of some of your applications (such as Waze, Google Maps…) on your infotainment system). Here we are talking about Android directly embedded in your car system. …

Image for post
Image for post

About this article

This article is written in french, because it mainly concerns french people since I talk about specific legal forms of business available in France and about Pôle-Emploi, which is a State company to manage the employment in the country.

It recounts why and how I created my company, in order to become a freelance developer as my full-time job. This way, it is my own feedback, and it probably does not represent the general case.

I hope that this article would be useful for anyone who would like to become independant.

Avant de monter ma société

J’ai travaillé pendant à peu près 8 ans en tant que développeur Android : 2 ans en tant qu’apprenti, puis 6 ans dans 3 sociétés de différentes tailles, de la startup à la multinationale (toujours en CDI, car dans ma tête, le CDI représentait la sécurité de l’emploi). …

Image for post
Image for post
Vector drawable are probably the best addition to the Android SDK for the last years

Today (most of the time), you don’t have to use PNG anymore in your apps. Instead, you now use vector drawables.

That’s so cool. Your UI are well-designed, very smooth, and you don’t have to care to the dpi-variants of your icons anymore.

You’ve migrated all your icons to vector drawables in your app? Well done! But wait… have you tested your app on Android 5.0 Lollipop or previous? (such as ICS or KitKat ?)

Damn… your app crashes. …

Image for post
Image for post

You’ve defined the set of color of your Android application, and your design now looks beautiful!

But sometimes you need more colors. For example to identify specific things, or to order objects by priority.

Should you define new colors? Should you define a set of X colors per color, as a gradient?

I’ve seen a lot of apps achieving this like that:

Image for post
Image for post
Tast the rainbow!

Sometimes it’s nice to sort UI elements by color.

Since colors are defined by integers in Android, the first idea is to sort according the color value.

Bad idea, this would not do anything good!

The HSL representation

Most of time, we are using the RGB representation (Red-Green-Blue) when we work with colors.

But sometimes it’s a good alternative to work with the HSL projection: Hue-Saturation-Lightness.

Properly sort your colors

First step, get the HSL representation of your color:

fun Int.getHSL(): FloatArray {
val hsl = FloatArray(3)
ColorUtils.colorToHSL(this, hsl)
for (i in 0 until hsl.size) {
hsl[i] = hsl[i] * 100
return hsl

Note that hue, saturation and lightness are Float values between 0 and 1. We multiply then by 100 to work with percentages instead, and it will be easier to handle the value comparisons in our…

Consider an application with a color picker, for example. You let your user to pick a color (it can be white, black, or any color in the rainbow).

He choose WHITE. and you apply this color to the text of one of your TextView. But the background of your Activity is also WHITE.

Of course, your user could not read the text anymore, since it is WHITE on a WHITE background.

So the main question is: how to know when I should adjust my Activity’s background color, according to the color my user picked?

The answer is very simple. Don’t try to do complex computations between the colors by yourself. Use the ColorUtils class from android. …

I’m Anthony, senior Android developer, from France.

Android user since 2009 (my first Android was a Xperia X8, with Android Cupcake 1.5)

Android hacker since 2010 (participation in the ROM developer’s community, JIT hacks, section manager of the FrAndroid forum…)

Android app developer since 2012 (for Alcatel-Lucent, Parrot, Xooloo, Renault-Nissan-Mitshubishi… and for myself ;) )

Developer of Printoid for OctoPrint since 2016, a smart interface for any 3D printer(s) connected to OctoPrint: (more than 35k users over the world)

Developer of Filament Spool Manager since 2018, a 3D printer’s filament stock manager app:

Freelance developer since 2020, I’m the funder of the AS Mobile Development company, in which I propose my Android development experience for startups and french companies. …


Anthony Stéphan

Senior Android Developer (Freelance), funder of AS Mobile Development and developer of Printoid for OctoPrint (on Google Play)

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store