Processing math: 100%

Building an e-learning platform on AWS

Prelude In the past year, I worked on a project to build an e-learning platform (actually, it’s so much more!). I started using AWS Amplify, and I end up testing so many different services around it. I’ll cover the following topics: Choosing the right AWS services; Designing the application architecture; Developing the backend; Developing the frontend; Deploying the application; I hope this article will be helpful for anyone who is considering building an e-learning platform or something similar. Spoiler is: the platform is not ready yet, but I hope I will have the chance to conclude it by the end of this year 🙏 my time is super limited unfortunately :/ ...

April 17, 2023 · 6 min

CSP (better, ASP) in Clingo to bet FantaSanremo

Preamble Recently (false) I became nostalgic and fascinated with stuff from the past, but someone told me many times I’m a future-man cause I tend to project everything in my life. So let’s play with the future - TA-DA! Sanremo Festival, precisely the 2023 Edition1 is coming to town (not mine) so I decided to play for real to FantaSanremo. What is this? Formally, FantaSanremo was born in 2020 from the idea of a group of friends working in the entertainment industry (musicians, music teachers, sound technicians) who are fans of the Sanremo Festival and were inspired by the Fanta-Game of Thrones, a fantasy game based on the TV series of the same name. The FIF (Federazione Italiana FantaSanremo) is created, which consists of 8 people and has the task of drafting the first regulations. The virtual currency with which to buy the artists of one’s team is named Baudo in honor of the famous Pippo, an icon of the Festival with the greatest number of conductions to his credit. ...

January 30, 2023 · 17 min

The Doomsday rule

The Doomsday rule This is a repost of an old article :) A few months ago I came across the name of J. H. Conway: you’re wondering who the hell he is. Well, Conway is an English mathematician active in the theory of finite groups, knot theory, number theory, combinatorial game theory and coding theory. He has also contributed to many branches of recreational mathematics and he is the invention of the Game of Life. Ah, I was forgetting one last thing: he is currently Professor Emeritus of Mathematics at Princeton University in New Jersey1. Ok. let’s respect this guy but…what would I talk to you about? Well, in this article I will talk about a magic trick: the Doomsday rule. ...

December 23, 2022 · 9 min

A monadic reasoning around function composition in Golang

Introduction Function composition is something we as developers do every day, more or less. This concept come from Mathematics: if you search on Wikipedia, you find out that function composition is an operation that takes two functions f and g and produces a function h such that h(x)=g(f(x)). In this operation, the function g is applied to the result of applying the function f to the input x. That is, the functions f:XY and g:YZ are composed to yield a function that maps x in X to g(f(x)) in Z. ...

September 1, 2022 · 10 min

The Deutsch Algorithm

Much more than a post (again) What is the quantum theory? As said by quantumexperience official site by IBM, it’s an elegant mathematical theory able to explain the counterintuitive behavior of subatomic particles, most notably the phenomenon of entanglement. In the late twentieth century it was discovered that quantum theory applies not only to atoms and molecules, but to bits and logic operations in a computer. This realization has been bringing about a revolution in the science and technology of information processing: I decided to write some notes to better explain, from a physics-agnostic computer scientist’s point of view XD, what I understood - and it is certainly wrong - about Q until now and why I think it’s an amazing field for computer science. More on this story in my previous post. ...

July 20, 2022 · 15 min

?(DRY(KIS(afe)S)) => CF(ALB+TLS+SM);

Intro If you work with AWS, you might be involved in building infrastructure to enable some of your customers (both internal and external) to use a particular service, or just to try one of the hundreds open-source application available on Github. Furthermore, most of the ML/AI tools are shipped in docker containers and the philosophy -> if it runs on docker, it runs everywhere has been spread up to the highest level of management (nice, but… sometimes dangerous 😅 ed. ) And it’s pretty much true, buuuuut… ...

February 1, 2022 · 11 min

Security and Docker: tips and tricks

Introduction This is a repost of an old article :) Everyone use Docker and normally when something is so diffused, there’s always someone else that try to figure out how to leverage the diffusion to do bad things (you know what happened in Breaking Bad). Only a few months ago it happened that someone pushed some malicious software - cryptomining - over lot of images: this happened because, despite the fact that everyone use Docker, not so many people are really aware about security over Docker. Fortunately, during the years Docker put in place several tools and features to avoid (or at least drastically reduce) the damages that bad attitude could cause in your containerized systems or applications. ...

May 7, 2021 · 18 min

Home-as-a-service

Prelude Today I’m gonna talk about how you can leverage Traefik2, k3s, Cloudflare, and RaspberryPI to get the best out of your…apartment. After the image, I’ll go through the setup of everything needed! Why Traefik2 For those of you who never heard the word Traefik before, here it is: Traefik is an open-source Edge Router that makes publishing your services seamless. I already made some experiments in the past (look at my two-pieces series I run VSC in the browser and I am just fine - Part I and My team run VSC in the browser and they are just fine - Part II) and I’ve always been fascinated by the way Traefik just works. And… it’s written in Golang! Since I recently had to deal a lot with SSO and k8s (I finally made my raspberry cluster with pi4 and k3s, a more specific blog post is coming), I wanted to extend my experience with Traefik moving to the 2nd version of the tool and leveraging IngressRoute. Moreover, I used Google and Traefik2 Middleware to forward requests and authenticate them using my Google account. The cool thing is that if you already own a domain, a Google account, and a k3s cluster (both running on-premise at home and in cloud if they didn’t end up fired), you can get everything described in this article for free! 🥳 ...

March 24, 2021 · 10 min

How to: create a fleet of container-based-go-lambda with one command

Introduction As you might know, at the re:Invent AWS recently announced the capabilities of running Lambda by getting the code directly from a docker image you provide, as illustrated here. Moreover, they also announced the Amazon ECR Public and Amazon ECR Public Gallery that you can reach at https://gallery.ecr.aws/. And this was pretty much my reaction: What you might need to know before begin First of all: keep calm, because there’s already a Github Repo to build an entire fleet of microservices - with their respective ECR-based repository - with only one command from the shell. Hopefully, you can get up and running by simply opening a shell, cloning my repo, change the AWS_PROFILE_NAME at the top of the Makefile to point to your profile, and run: ...

December 12, 2020 · 6 min

I hacked my blog to let AWS Polly create podcast over it

Prelude Hi guys, after a series of back-to-the-future-I-didn’t-have-time-to-write-new-things… I’m back. What happened in the last months… ok, covid19 put the whole world in trouble, I bought an apartment, I opened a company and I resign my contract. Really. Nothing. Special. But TODAY - I wanna talk about a project I have since a while, and I worked on a boring Sunday afternoon: I hacked my blog to let Polly read it for you! 😎 😎 😎 ...

November 26, 2020 · 13 min