How to convert a Java/Spring project to Kotlin
In the last week I converted a medium-sized legacy Java/Spring codebase to Kotlin. In this article I’ll discuss the pro and the challenges I faced during this transition.
My First Deno Experiment
This is another not-requested opinion on Deno! But what can I do? When I read “node replacement,” “TypeScript,” and “Rust,” I lose any inhibition. Therefore, I ported to Deno an old
npm package and wrote a brief report on my experience. What I liked? What I disliked? Will Deno be succesful in the overcrowded world of programming platforms? These are my answers.
Overwhelmed by your workflow? Reset it.
Productivity and organization workflows can quickly become addictive. If you like apps and all that comes with them, your workflows can snowball out of control. I run into this problem every couple of years, and until I become aware of that, I feel very frustrated. I feel like I am moving around a lot of stuff and spending many hours of my awake time producing nothing more than heat and entropy. Luckily the solution is easy: do a total reset.
Happy 5-Years Birthday Rust!
Today has been five years since Rust 1.0 release. I really want to wish happy birthday to this awesome language! I could write an article on it or I can link you to this wonderful post in the official Rust’s blog. Enjoy!
Swift announces official Windows support — maybe too late
Swift is a pretty language that hits a sweet, sweet spot: it is a compiled language built around LLV, it is modern, it took advantage of decades of programming language design efforts, and it is esthetically pleasing. It is the kind of language that could have taken a lot of market shares. Unfortunately, official Windows support will come only with version 5.3. It may be already too late to wash away the “iOS Language” stigma.
How to Export your Kindle Highlights
This is a quick article to share a very surprising and beautiful thing I discovered today: it is possible to request a PDF with all your Kindle’s highlights directly from the Kindle interface. How it is possible nobody told me this before!!??
Overview of Three Techniques for Procedural Storytelling
Inspired by a recent paper I read this week, I decided to explain the three major “classic solutions” to the generative storytelling problem: Simulation, Planning, and Context-Free Grammars. Let’s what they are and what to choose.
My favorite Visual Studio Code extensions
Visual Studio Code is my editor of choice. I started with it because of the top-notch TypeScript integration, and then I stuck with it for all the rest (all but for big projects in languages with outstanding IDE support, such as Kotlin). During the years, my extension page grew bigger and bigger; new extensions get installed, old extensions get removed. You know, the usual stuff. But during all these years, a bunch of extensions has always remained the same.
What makes a story a good story
At the beginning of January, I put my hands on a dirty cheap Play Station 4 because, in the new house, I have no space for a gaming PC. Since then, I decided to make up for a bunch of games I missed in the last years starting from these two: Horizon Zero Dawn (Guerrilla Games, 2017) and The Last of Us (Naughty Dog, 2013). I approached them with diametrically opposed expectations, and in both cases, my expectations were very wrong. So I started asking myself why I was wrong and what I look for in games and narrative media.
Marginalia: Rebooting AI by Gary Marcus and Ernest Davis
With this new year, let’s try a new format. Marginalia will be a series in which I’ll share notes and comments on interesting books I read. The name is directly inspired by the old word indicating the small notes on the margins of books. It will be a chance to discuss my readings without the need to write a full-fledged article. I hope it will be interesting as a review of the book or as a discussion starter.