Voglio raccontare per me e per chi altri fosse interessato i passi che sono stati necessari, negli ultimi mesi, per tornare in controllo del mio corpo e, di conseguenza, della mia vita. Nota bene: condivisione di esperienza personale! Questo è un diario che documenta un percorso di salute e benessere intrapreso personalmente da un uomo di quasi 60 anni in buone condizioni cardiovascolari. Non si…
When developing a fairly complex web application, one of the things I hate most is how mangled and tangled the 'scripts' section of package.json becomes over time. There has to be a better way. Open any "well-seasoned" fullstack nodejs web application, and take a look at its scripts section inside the package.json file. What a mess, isn't it? You can't even add comments, because json right? Who's…
Dopo una visita di una settimana nella città che non dorme mai, ho raccolto qui qualche indicazione, qualche riflessione, qualche sciocchezza. New York, dal 2 al 9 marzo 2024. Il viaggio in sé non è stato assolutamente niente di particolare. Abbiamo volato con SWISS e non siamo rimasti troppo positivamente impressi: il servizio è stato eccellente, ma le file dei sedili sono troppo vicine e…
After a week-long visit to the city that never sleeps, I've gathered some tips, reflections, and nonsense to share. New York, from March 2 to 9, 2024. The journey itself was absolutely nothing special. We flew with SWISS and were not too impressed: the service was excellent, but the rows of seats are too close together, and the entertainment system is too old. The return flight was with United…
Let's take a moment to talk about password security, starting with a somewhat absurd example to clear up an issue that has constantly bothered me. Which of these would you consider the best recommendation for creating a secure password (read carefully)? "Your password must be exactly 2 characters long." "Your password must be exactly 2 characters long and must contain an uppercase letter and a…
Yet another starter kit from yours truly; this time we talk HTMX, JSX and Fastify! I am very happy to release yet another small project! It is, again, a "starter kit" for a Server Side Rendered application that moves away from Expressjs and "old school" templates. This one: uses Fastify uses JSX on the server for templating uses HTMX for client side UX enhancement uses TypeScript everywhere…
How I got lost in a simple idea. Disclaimer: I am addicted to using the shell for a lot of things, but most importantly working with git. I tried more than once using a graphic helper or a very well-known and used GUI for it, but eventually, I always go back to my beloved zsh. The problem Imagine being deep inside a project folder structure and for one reason or another, you want to change the…
You should focus on making things good enough from the start, rather than relying on a mythical "Future You" to fix issues down the road. Let's put it this way: you think that writing code fast and furious (which is a practice so highly respected, unfortunately, that looks always as the only True Way) means cutting corners, taking shortcuts, and delegating the "making it better" to the Future You,…
Not everything about Regexp is complicated and boring. The most controversial topics among software developers are anything related to Regular Expressions. Love them or hate them, if you want to make a successful and debated post among your peers, just throw a question (any question!) about RegExp. Inevitably, you'll find someone who: tells you to NOT use regexp for your specific use case, and…
I tried to run Mastodon on my laptop and I almost fully succeeded. One of the interesting things about Mastodon is that it may be a nice way for you to start hacking into an important project which is gaining a lot of traction. In fact, I have heard so many people in the past asking "How could I start contributing to an open-source project?" and the answer is not plain simple: there are so many…
I have used Copilot daily for three months now, mostly writing TypeScript, React and nodejs code. I think I have quite clear in mind its use cases and the reasons why I don't want to go back to not using it. I am also pretty sure there is nothing to worry about it (at least not for the current generation); too many people are writing about doom scenarios where Copilot will take over our job as…
Do you know the reason why we are so accustomed to writing self-closing tags as <Something /> and not <Something/> , with the space in between? Is it just a style preference or is there something more? Well, it's an interesting story… Back in the early days of web development, a new markup language was trying to establish itself as the standard for structuring documents. The old HTML lazy syntax…
New job, new laptop, new Gmail? Maybe you will find these two tips useful. Gmail (desktop): manually set an email as read. This is for me a huge productivity improvement (I already wrote about that in the past); by default, once you tap on an email subject, the email is set to read but this behavior supposes that you are processing that email immediately, somehow. Not my case: I want to keep it…
After having enjoyed a full week on the beautiful Zakynthos island, let me share with you some tips and ideas for your next trip to the island. As Wikipedia says , Zakynthos is a Greek island in the Ionian Sea. It is the third largest of the Ionian Islands. Zakynthos is a separate regional unit of the Ionian Islands region and its only municipality. We wanted a place to stay for a week in total…
After having spent a full week on the Gran Canaria island, I want to share some of my impressions so to give some ideas to future visitors and of course as a journal for the future self. I consider the Canary Islands to be the best location to spend some relaxing days whenever you want, stress on "whenever" of course. You can really never go wrong with that archipelago: the weather is always at…
No, non inizierò dicendo che "pare ieri" perché non lo pare affatto. Anzi, pare passata proprio una vita intera e sinceramente credo che questa allegoria si possa estendere ad un suo significato ancora più profondo. Berlino mille anni fa . Mentre fuori piove male e soffia il solito vento vigliacco mi salta alla mente il fatto che siano dieci anni esatti che sono arrivato a Berlino. Dieci anni,…
Small engineering teams working in a startup usually have the luxury to be allowed to try several approaches and ideas toward their main goals, when it comes to product development optimizations: _leverage integrations, worship simplicity _and maintain _cost-effectiveness. I have been leading one of those "small teams", let's say one with less than 10 members, for quite some time in Remagine where…
Follow me while I'll be diving into the details that made it possible to get a perfect score in Lighthouse, while having fun developing this website. As I already mentioned in a previous post , after a long period of having my "web presence" scattered around different services, I decided to bring everything home building this website. As a software engineer, a web developer and as someone who…
It has been a really long time since I had my own website so I decided to do something about it. A perfect score in Lighthouse pays for a bit of hard work! Since some years ago I have been lazily blogging on Medium, which eventually became part of my web presence together with the usual social media platforms. To add even more fragmentation, I was also using a landing page on about.me as a place…
I am not sure I really like “serverless” software development. I mean, I use it, I get it, I appreciate a lot of aspects of it but — do I like it? Is there any fun in developing serverless applications or are we maybe doing it just because is the right thing to do and we should suck it up? My experience is currently limited to AWS Lambda , so what I am saying here may or may not apply to other…
I just came back from a week on the bike: this time I took the way to the Baltic Sea, pedalling for about 310km in 4 days. I did this trip at the end of August. There are already plenty of guides about this route, which is easy and very well signed, so I am not going to get too much into details but I will just lay down the stages I did and add some final notes about gears and tools. Berlin Mitte…
OK, I know, this might sound quite a peculiar topic at first but maybe you can get some interesting tips from the whole story. So I work with Confluence and since Atlassian is continuously improving their product removing useful features , we need to adapt and find workarounds; one feature that I am missing the most is the ability to drop a shadow behind an image that you can put on a Confluence…
My own definition of “ drawing seriously ” is more or less the same that applies to “ running seriously ”; you get to that status when you look forward to the next moment you’ll be only with yourself and your paper and pens, or your running shoes. It’s that feeling you get at the end of your new drawing, when you breath that sensation in: you have accomplished something, and you actually like what…
This one has been my second year in Lisbon, attending the glaring WebSummit. There are a few things that I consider worth saving for myself or others in preparation for the next year. There are two terminals in Lisbon airport (T1 & T2). You can register to the WebSummit directly from there (Terminal 1). The procedure takes 5 minutes top; I didn’t find any queue… To get to and from the airport you…
As my birthday present, C invited me to visit with her the town of Dessau , in Saxony-Anhalt . What is so special about that small city is that in 1925 the BAUHAUS college moved in there from Weimar, from where they were forced out. BAUHAUS, an art movement founded by Walter Gropius , is well known for its furniture design and architecture all strikingly modern and minimalist. The year 2019 is…
During our recent trip to France I had the pleasure to drive a rented car of a class I have never driven before: a new Mercedes C200 convertible . Being the geek I am, I played with it and all its perks until the very last minute of the last day of rent. We spent 9 days with it, making 2100 km in total. Most of the things that intrigued or fascinated me are by all means nothing out-of-this-world,…
I just came back from a relatively short vacation–a week – in Crete and I would like to share some of my impressions of that experience with you, fellow travelers. I flew in Heraklion (the “capital town”) from Athens, I booked a motorbike and a hotel there and went around the island trying to reach all its highlights. I failed that specific goal, more on that later. Exploring the island with the…
Over the past few months, I got involved in the world of cryptocurrencies and I played a bit trading some of them. After a few days, it was more than clear that I needed a simple and effective way to keep an eye on the crazy by-the-hours ups and downs of the markets and get a sense of the performances of my small portfolio. Warning: trading cryptos may cause dependency and should be avoided at all…
In this article I’ll tell you how I fixed my Node.js development environment to be able to use a “macro” reference (or an “alias”, if you wish) for my TypeScript modules so that instead of writing an awful… import { Something } from "../../../../lib/some-module" ; …I am now happily able to just write import { Something } from "@lib/some-module" ; As you can see, I basically created the alias @lib…
I hope you agree with me when I say that Visual Studio Code (from here on just VSC) is today’s best text editor. The feature set is growing over a nice monthly based release cycle, the customization options cover almost everything you’d need and the integration with Git is top-notch. It even has an integrated terminal! 😇 [ UPDATE , August 2017] With version 1.15, VSC has improved a lot in this…
The end of the century was without doubt (surprise!) a big event. For my personal career and professional development, it meant moving from a quite comfortable permanent work position to something different, something more challenging. This is the second part of this series. You might want to read the first part if you haven't already, of course. As always I was not really following a plan or a…
I guess this is the mandatory blog post at the end of my (first) Whole30 Program. When I started the program, exactly one month ago, I was looking forward to write about it: if anything, it would have meant for me the end of the challenge and with it a reasonable amount of that subtle pleasure you get when you accomplish something relatively important. The Program (which is not really a diet) is…
The idea is to create a repository on each server, set them as two new remotes and then just push to them to deploy, using the post-receive git hook which is run after the push has terminated. Update from the future self: this is obviously quite an old setup which I only leave here for the sake of archival purposes. This is a strategy I have used to deploy an application of mine in the following…
I received my first salary in the “software industry” as a software developer at the beginning of April 1988, which was 30-something years ago. I guess it might be interesting–at least just for myself–to go through some of these years and see what I’ve done and what I’ve learned. This is the first part of this series. You might want to read the second part after this one. I’ve decided to split…
There has been quite an interesting discussion blossomed from a recent article about the Senior Developer role and what it really means. I basically agree with everything Mark says, but I’d like to go even a bit further down the road of defining what is what in the software industry. At least, for the part I am familiar with. First of all I think that a really important distinction needs to be…
Questo è il racconto dei miei cinque giorni in bicicletta, da Praga verso Berlino . Che poi ho notato che per il cicloturista, le persone che camminano o pattinano sulle ciclabili sono un po’ come gli uccelli per i naviganti. Per il marinaio indicano la vicinanza di un’isola, per il ciclista l’avvicinarsi di una città. Questa è la storia, ricca di dettagli insignificanti, del mio viaggio in…
Have you ever wanted to stop an animated GIF? Like, when you are reading an article and the author has embedded some of those things into it which keep flashing and looping when you’re trying to concentrate on the text? It happens to me and it happens quite a lot recently which means that I had to do something about it, specifically a Chrome Extension. I would like to share my experience building…
I recently came to find a limitation on the otherwise amazing Github API. My goal was to download a big file (specifically, a tar.gz) from a private repository, using the command line, via a bash script that is. As it turned out, this task has been much more difficult that I initially thought. First of all, the OAuth token . Nothing amazing here: just head to the proper, detailed help page ,…
Sono a Regensburg e il treno che mi deve portare a Hof è in ritardo di dieci minuti e quei dieci minuti potrebbero essere un problema, visto che a Hof avrò solo nove minuti per prendere la coincidenza successiva. Il treno finalmente arriva ed è un treno difficile, difficilissimo. È affollato e tra la gente che sale e che scende in tutta fretta è il caos. E nel caos devo trovare il vagone delle…