Self-Taught Learning

Francesco Ciannavei

Self-Taught Learning

Sep. 2019-Today

I've been programming for {{yearsOfExperience}} years, and I started on my own. In high school I met programming through Java, but following the lessons wasn't enough for me: I wanted to understand how things worked and build my own.

First steps: Node.js and Discord

I started on my own with Node.js, writing bots for Discord. Projects that looked simple but taught me concrete things: asynchronous events, external APIs, data persistence, error handling. And above all, real people used those bots, reporting bugs and asking for new features.

How I grew

From there I didn't stop. I went deeper into JavaScript, studied Python and took up Go. I spent time on databases, PostgreSQL and MySQL above all. Every technology I study doesn't stay theory: I apply it in a project, however small.

The home server room

The place where I put what I learn into practice is my home server room, a Linux setup with Docker. There I try configurations and tools in real settings, and keep up work on artificial-intelligence models that run locally.

Today

I still spend part of my free time studying. Right now I'm most interested in Go, machine learning and LLMs. This self-taught path taught me to be independent at solving problems and not to give up in the face of difficulty.

Tools and languages used:

Developer PHP

PHP

Developer Golang

Golang

Developer Python

Python

Developer Ollama Api

Ollama Api

Developer Git

Git

Developer Laravel

Laravel

Developer CodeIgniter

CodeIgniter

Developer jQuery

jQuery

Developer Apache

Apache

Developer Astro.js

Astro.js

Developer Docker

Docker

Developer Linux

Linux

Developer CSS

CSS

Developer Bash

Bash

Developer JavaScript

JavaScript

Developer SQL

SQL

Developer Node.js

Node.js

Developer Composer

Composer

Developer Cloudflare

Cloudflare

Developer CI/CD Pipelines

CI/CD Pipelines

Developer Debugger

Debugger