How to harden your premium Content Deliver Network

Prelude If you miss the beginning of my series, here’s my article about how to build an e-learning platform on AWS. Otherwise, if you are following this serie, the last time we build our backend to safely produce and store our HLS contents (if you miss it, follow the link). If you want to provide premium content you have put in place a solution to ensuring secure and efficient distribution of premium content to end-users. AWS CloudFront, coupled with signed cookies, provides a robust solution for precisely this purpose. This article will delve into the mechanisms of leveraging AWS CloudFront and signed cookies to deliver premium content seamlessly. ...

July 15, 2023 · 8 min

Produce HLS content ready for streaming with AWS Media Convert

Prelude To build a streaming platform, as discussed here - read it if you miss it! - you first need to know what’s behind a streaming. Have you ever notice that streaming from streaming platform constantly adapt to your network, trying to avoid buffering and slowing down of the stream itself? Today it’s pretty hard to have connection problems, but even only 10 years ago this was a problem for many of us. Moreover, have you ever tried to download a video from a streaming resource? From time to time it’s hard to do it, you only get some empty file or “small pieces”, even using downloader extensions… ...

June 22, 2023 · 5 min

AWS Amplify in 2023: the good, the bad, and the evil

Prelude Today I want to deep dive into how you can leverage AWS Amplify, a tool that provides a comprehensive set of tools and services that streamline the process of developing and deploying web applications on AWS infrastructure: we will explore how to build a web application served by AWS API Gateway and Lambda functions. We will walk through the steps of initializing an Amplify project, adding Lambda functions, linking them to an API, and implementing authentication mechanisms. ...

May 5, 2023 · 8 min

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: X \rightarrow Y\) and \(g: Y \rightarrow Z\) 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