Archi & Techno

Archi & Techno

How does it work? Docker! Part 5: Get some work(ers) done!

Hey there! TL;DR I hacked another thing together, this time in order to install a highly available Docker Swarm cluster on CoreOS (yeah, Container Linux), using Ansible. The whole subject was way too long for a single article. Therefore, I’ve divided it into 5 parts. This is episode 5, regarding the actual implementation of the local cluster’s Worker nodes, using Vagrant, CoreOS and Ansible. If you want to try it: git clone https://github.com/sebiwi/docker-coreos.git cd docker-coreos make up You will need Ansible 2.2+, Docker, Vagrant and…

Read more
Archi & Techno

Better network layer on iOS with synchronous calls

In most iOS apps, as app developers, we pay a very special attention to the user interface. For example, we try to perfectly implement the graphical design as proposed by the designer. But on the other hand, we pay very little attention to the other parts of the app such as the the data management or the network layer. In this article, I will explain why, during my last project, as we were trying to improve the unit tests of our network calls, we decided…

Read more
Archi & Techno

How does it work? Docker! Part 4: Control your Swarm!

Hey there! TL;DR I hacked another thing together, this time in order to install a highly available Docker Swarm cluster on CoreOS (yeah, Container Linux), using Ansible. The whole subject was way too long for a single article. Therefore, I’ve divided it into 5 parts. This is episode 4, regarding the actual implementation of the local cluster’s Manager nodes, using Vagrant, CoreOS and Ansible. If you want to try it: git clone https://github.com/sebiwi/docker-coreos.git cd docker-coreos make up   You will need Ansible 2.2+, Docker, Vagrant…

Read more
Archi & Techno

How does it work? Docker! Part 3: Load balancing, service discovery and security!

Hey there! TL;DR I hacked another thing together, this time in order to install a highly available Docker Swarm cluster on CoreOS (yeah, Container Linux), using Ansible. The whole subject was way too long for a single article. Therefore, I’ve divided it into 5 parts. This is episode 3, regarding Swarm Service Discovery, Load Balancing and Security. If you want to try it: git clone https://github.com/sebiwi/docker-coreos.git cd docker-coreos make up You will need Ansible 2.2+, Docker, Vagrant and Molecule  

Read more
Archi & Techno

Android library development best practices guide

As Android developers, we are used to having to integrate many libraries in our applications. It can be from quite small .jar files to huge .aar archives which embed multiple screens. Sometimes the integration of these libraries goes smoothly but in some cases, it can be quite painful and lead to the addition of some “hacks” into the app in order to integrate it properly. In some other cases, it can also lead to time-consuming exchanges between the person who integrates the library and the…

Read more
Archi & Techno

End to end testing from the trenches with Protractor

Standing on the top of the test pyramid, web end-to-end tests are aimed to automate user acceptance scenarii through a browser window. In practice, those tests are often either disregarded by the development team or, on the contrary, used as the single line of defense to catch all problems in a web application development. If none of those extremes are a likable target, end-to-end testing certainly has a role to play in a sustainable quality development. However, they drag with them a bad reputation among…

Read more
Archi & Techno

How does it work? Docker! Part 2: Swarm networking

Hey there! TL;DR I hacked another thing together, this time in order to install a highly available Docker Swarm cluster on CoreOS (yeah, Container Linux), using Ansible. The whole subject was way too long for a single article. Therefore, I’ve divided it into 5 parts. This is episode 2, regarding Swarm networking. If you want to try it: git clone https://github.com/sebiwi/docker-coreos.git cd docker-coreos make up You will need Ansible 2.2+, Docker, Vagrant and Molecule

Read more
Archi & Techno

What Redis deployment do you need ?

Redis is an in-memory database that I really love. It’s one of the rare technologies that make both devs and ops happy. For those who don't know Redis already, here is a small introduction. There are four main topologies of Redis, and each one has and uses different and incompatible features. Therefore, you need to understand all the trade-offs before choosing one. Here we go: Redis Standalone The old classic. One big bag of RAM. Scale vertically, easy as pie, no availability, no resilience. Pros:…

Read more
Archi & Techno

API designs for low-connectivity

When designing Web APIs, we are -sometimes without our knowledge- effectively designing distributed systems. Think about it and count all the actors you can find in your typical web application (API-first of course): browsers, phones, watches, a set of databases, scalable web servers, workers, etc. That’s excluding other applications with which you most probably want to integrate. However some of these actors exist beyond a notoriously bad layer of network: phones. You may find that mobile connectivity has improved on your iPhone but it’s still…

Read more