From ZSH to Fish

Posted on 2021-11-07 in Blog

After several years of ZSH with oh-my-zsh, I decided to give fish (Friendly Interactive Shell). I heard and read several good things about it. I also wanted to test starship (a cross shell prompt) easily without messing with my ZSH configuration.

The least I can say is: I'm impressed. Most …


Continue reading

My take on GKE auto-pilot mode

Posted on 2021-10-17 in Programmation • Tagged with security, gcp, gke, kubernetes

I recently switched from a standard GKE cluster where I had to manage nodes to an autopilot one where Google does it for me. I must say the switch was easy to do (despite an interuption of our services) and greatly simplified the gestion of the cluster.

I noticed this …


Continue reading

Generate PDF from React components

Posted on 2021-09-26 in Programmation • Tagged with JavaScript, React, Chrome, Puppeteer

How do you generate a PDF from any React components? I am not talking about just allowing your users to print a page into a PDF with their browser, I am talking about transforming a page as PDF programmatically and saving it server side. The idea is for our user …


Continue reading

Check domains

Posted on 2021-09-22 in Trucs et astuces

Here is a small script to allow you to easily check that a domain your manage is correct (ie responds correctly, is available with IPv4 and IPv6, only supports TLS 1.2+…). It even has some color built in! You can of course adapt it to fit your needs.

You …


Continue reading

Small security checklist for public backend services

Posted on 2021-09-19 in Trucs et astuces • Tagged with security

Here are some security tips to check for backend services. It's mostly meant so that I can have a check list. So I don't develop them much but provide extra links where necessary. I also probably expand this list as time goes one and I learn more about this subject …


Continue reading

Small API to manage packages

Posted on 2021-07-10 in Blog • Tagged with Rust, Clojure, Haskell

At last, here is my follow up to small TODO apps where I created a small CLI TODO app in Rust, Clojure and Haskell to test functional (or functional like) programming languages. Like I said in my previous article, I also wanted to see how these languages behave for the …


Continue reading

Manage deployment transitions for static application

Posted on 2021-04-25 in Trucs et astuces • Tagged with Docker, Kubernetes

When you deploy a frontend app, most of the time the name of your assets contains their hash so you can easily cache the files. So instead of just having main.js you will have something like main.1234.js. The problem is that your HTML will reference main.1234 …


Continue reading

Build a sequence that is reset everyday

Posted on 2021-04-08 in Programmation • Tagged with Django, Python, PostgreSQL

How to create a database sequence that will be reset everyday? That is a sequence that will get one the first time of each day? It sounds easy but it's not that much.

Note

This article will focus on PostgreSQL since it's the database I use. A similar solution may …


Continue reading

Using DateTimeRangeField in Django

Posted on 2021-04-06 in Trucs et astuces

:tags:Django, Python, PostgreSQL :lang: en

The basics

If you need to store a datetime range in Django (for instance from which day to which day a listing is valid), instead of relying on two fields like valid_from and valid_to, you can use a single field validity_range of type DateRangeField …


Continue reading

Deploy a React app in kuberentes

Posted on 2021-04-01 in Trucs et astuces • Tagged with devops, k8s, kubernetes, Django, Python

I recently deployed a React app in kubernetes. It was initially deployed directly in a public bucket: I have an API that is already hosted on kubernetes, but the app itself is made only of static files, so it made sense. However, requirements for my app changed and I required …


Continue reading