OAuth2 authorization code flow

A few notes on oauth2 authorization code flow. Photo by The New York Public Library OAuth2 is an authorization delegation protocol. Meaning: to grant some third party granular access to user resources on their behalf without impersonating them or sharing secrets/passwords. The RFC6749 and [RFC6750(https://www.ietf.org/rfc/rfc6750.txt)] cover the protocol flows in detail: Authorization Code Grant Implicit Grant Resource Owner Password Credentials Grant Client Credentials Grant In these notes the authorization code flow is covered....

June 1, 2022 · 3 min · 587 words · Gonçalo

A quick look at fuel prices in Brazil

A simple dashboard showing how fuel prices have evolved in Brazil since 2004 until 2018. Just a set of plots organized by time and brazillian regions. Results discussion is left to the reader. Photo by Austrian National Library The dataset behind the plots is provided by the brazillian government through ANP (Agência Nacional do Petróleo, Gás Natural e Biocombustíveis). Fuel prices in Brazil The dashboard tries to address three questions:...

November 3, 2019 · 1 min · 203 words · Gonçalo

Quick setup of a proxyDHCP with dnsmasq and PXE boot

Jotting down some notes on how to setup a proxyDHCP using dnsmasq in order to boot a device from a network rather than from a local drive. Photo by Kvistholt Photography How to netboot a device in a few simple steps. Since we will be relying on PXE, we need to ensure that our booting device has a network card that runs a PXE ROM, i.e it runs a firmware that implements some necessary internet protocols: UDP/IP, DHCP and TFTP....

May 26, 2019 · 3 min · 500 words · Gonçalo

Building python wheels for many linux-es

On building and pushing python wheels for Linux. An example is shown with nb-cpp, a python package implemented in C++ with pybind11. Photo by Austrian National Library Packaging and distributing is certainly one crucial step in the process of creating an app/lib. This is the moment you expose your app to the world,hopefully in a way that people can easily install. However, python is not known for its reputation with packaging, specifically for Linux based platforms where glibc version may differ among distros and building and distributing portable binaries can be challenging....

January 27, 2019 · 7 min · 1387 words · Gonçalo