Articles
Creating a private docker registry for Kubernetes
A docker registry can be run easily using as a docker container using docker itself.
Countries tracker
Nagoya Global Friends is an international community in Nagoya whose events gather people from all over the worlds. In order to visualize the various countries represented, I designed a simple Firebase application. The application allows users to register their home country, which gets stored in a Firestore database.
Cookies
Cookies are key-value pairs stored on a web browser. They can be set (i.e. created) using client-side JavaScript. Conversely, a server can get a client's browser to set cookies via instructions in an HTTP response. As such, cookies can be set by both the client and the server.
Cookie-session
User authenticates using username and password, server sets a signed cookie containing serialized user info
Controlling a motor using an H bridge
A DC motor model can be as simple as: T = K * I where T is the torque provided by the motor, K the motor constant and I the current that flows through it. From this simple model, one can see that if the sign of the current changes, that of the torque also changes. Thus, changing the direction of rotation of a DC motor is a simple as reverting flow into it.
Control IoT devices with a Xiaomi Mi Band 2
Smartwatches can be rather expensive and tend to be known for their poor battery life. On the other hand, Xiaomi's Mi band 2 is cheap and its battery lasts for up to 20 days. However, the Mi band 2 is mainly limited to fitness tracking functions, at least without the appropriate apps.
Containerization of a Flask application
Flask can be seen as the equivalent of Express for Python. However, although an express application is basically production ready, a Flask app outputs the following when executed by itself:
Combining two independent git repositories
This article presents how to combine two independent and unrelated git repositories.
Cert-manager Certificate Issuer
With cert-manager installed, SSL certificates can be automatically obtained for Ingresses deployed in a Kubernetes cluster. To achieve this, one must deploy the appropriate ClusterIssuers to the cluster. Here are example manifests to do so.
Cashless payment system
A company I worked for had a coffee machine for which employees could purchase coffee. However, the payment was done by putting coins in a jar. Not only did this present the obvious risk of theft, this system was also impractical for people not carrying spare change at all time. I decided to solve this issue by designing this cashless payment system.