Shipped
Everything I've shipped since 2010, newest first: the company, open source, side projects, games and the posts I wrote along the way.
2026, 1 shipped
- Froststead
A survival and village-building game in the ice, made in my spare time. On TestFlight two days after the first commit.
2025, 1 shipped
- Parse Dashboard contribution
Its AI agent can now be configured through environment variables.
2024, 7 shipped
- 180 merged pull requests at Okteto
All of them, from the CLI to the docs.
- okteto validate and the manifest JSON Schema
Okteto manifests checked against a JSON Schema, from the CLI and in editors.
- Okteto CLI 3.0
The breaking-change cleanup that removed legacy commands and manifest fields.
- okteto test keeps its results
Test results and files are exported even when tests fail.
- AWS Lambda: TypeError: Wrong arguments
ERROR Invoke Error
- Masked secrets and .env defaults
Secret values hidden in logs, default values in .env files.
- okteto up survives the night
Development sessions reconnect after overnight disconnects.
2023, 8 shipped
- Friendlier manifest errors
Clear messages that point to the mistake in an Okteto manifest.
- okteto pipeline list
Development environments listed with their status and labels.
- Short-lived Kubernetes tokens
The CLI uses short-lived tokens by default.
- Images copied, not rebuilt
Images already built in the shared registry are copied to the developer's registry.
- AWS Lambda: Lessons learned over 5 years and 100 functions in production
Our hands-on experience: the good & the bad
- Combining Node.js and Python in a Single AWS Lambda Function
Leverage Docker and Serverless Framework
- 83 merged pull requests at Gitpod
All of them, from the gp CLI to the JetBrains integration.
- gp rebuild
Test a workspace image or .gitpod.yml without leaving the workspace. Today it's gp validate.
2022, 8 shipped
- JetBrains Rider and CLion in beta
Two more JetBrains IDEs for Gitpod workspaces.
- Workspace resources in JetBrains
CPU, memory and workspace class in the JetBrains control center.
- gp top
Workspace CPU and memory at a glance, from the terminal.
- Pick your editor at sign-up
New users choose VS Code or a JetBrains IDE during onboarding.
- gp tasks
List the tasks of a workspace and attach to their terminals.
- Deploying GFPGAN to AWS using Docker and Fargate
Deploying a Machine Learning container to AWS ECS Fargate
2021, 4 shipped
- Onoranze Funebri Cloud becomes a company
I'm co-founder and CTO.
- How to configure ECS Fargate Scheduled Autoscaling
Optimise your AWS bill leveraging Scheduled Autoscaling
- asyncapi-react keeps its styles
Stopped bundlers from stripping the component's CSS.
- Backstage Scaffolder actions
fs:delete, fs:rename and github:actions:dispatch, now part of Spotify's Backstage.
2020, 3 shipped
- Lambda@Edge plugin fix
Made configSchemaHandler optional, so the plugin works across Serverless versions.
- serverless-bundle: __dirname for Node.js
Fixed __dirname in bundled Node.js functions.
- Cobra bug fix
Fixed an undefined variable in the Go CLI library.
2019, 1 shipped
- Thundra Lambda examples
Fixed a typo in a dependency version.
2018, 4 shipped
- Middy docs
Fixed a broken link in the docs of the Lambda middleware engine.
- fatturazione-elettronica-aruba
A Node.js client for Aruba's Italian e-invoicing API.
- Tools to boost your DX
DX = Developer Experience
2017, 9 shipped
- The Picasso code
10 things you should NOT do when writing JavaScript code
- Elastic{ON} Tour London 2017
Developer notes
- Bundling React 15, Bootstrap 4, Storybook 3 with Webpack 2
With few alpha versions
- Datadog PNG snapshot not showing
in Slack incoming webhook attachments
- OrientJS dependency upgrade
Upgraded request in OrientDB's Node.js driver.
- Serverless examples: Auth0 secret
Pass the Auth0 client secret as a string, without base64 encoding.
2016, 11 shipped
- How to fix broken base64 image using image-webpack and file-loader
in a ReactJS project
- Serverlessconf London 2016
comments on the conference
- Render ES6 javascript template literals contained in a variable
using node.js and recursion
- es6-template-render: nested objects
Added support for nested objects in templates.
- Randomize variables in a string in javascript
using pipe and square brakets
- node-caldav-mod
A CalDAV calendar client for Node.js, the one behind PlannerBot.
- New plugin for Passwordless.net based on Node-Cache
My first package published on NPM
- LyricsBot
A Facebook Messenger bot for song lyrics, built for fun.
- How to create a smart Slack Bot in Node.js
that schedules events using text analysis API
- How to create a simple Slack Bot in Node.js
that interacts with a CalDAV calendar
2015, 2 shipped
- WP Snow Effect Pro
A WordPress plugin that lets snow fall on a website, sold on CodeCanyon.
- UK counties dataset
The 94 UK counties as CSV, shapefiles, KML and Google Maps files.
2014, 1 shipped
- PDF Stamper
A PHP script that stamps images and text onto PDFs, sold on CodeCanyon.
2012, 1 shipped
- Tor Vergata Totem
An Android app for Tor Vergata students to check exams, bookings and grades. Over 1,000 downloads.
2010, 1 shipped
- Xstronauta
My first game, a space shooter for Xbox Live Indie Games, with 8 ships and 30 levels.