The following Codepen’s are quite old (mostly done in 2012/2013 when I was super into CSS and getting started with programming), but are super cool. They showcase some of my early experiments with CSS3 animations, transformations, and visualizations. See the Pen CSS Gyroscope by Christian Fei (@christian-fei) on CodePen. See the Pen ...
In the past few years I embraced the mantra “Wanna learn something? Recreate it”. What do I mean by it? Here some examples: I wanted to better understand how a static site generator (SSG) worked, so I created devblog, and even converted this very site to be compatible with it Are you easily stunned by charts, real-time updates, and perhaps crypto...
If you navigate to store.epicgames.com on an iPad with iOS 18 beta you’ll have the ability to scan a QR code on your iPhone to download Epic’s app store. But you don’t want that! You want to install it on your iPad to play Fortnite, Fall Guys and Rocket League! There is an easy way around it. – update 2024-10-12 The procedure to install the store...
Let’s say you have an eleventy blog, and want to show the tags related to a given blog post. E.g. this post is tagged with eleventy as you can see above. But, it has also other tags attached, e.g. post and featured for example, that are mainly used for creating the posts and featured collections. The HTML/nunjucks code for showing the taglist on...
Recently I converted my old Kindle Paperwhite 3 (jailbroken) to a Tapo surveillance cam viewer. It was fun, but I recently had the idea to make a better use for it. Namely making an image carousel showing nice pics I took over the years. – Project overview The idea is quite simple: create an init.d conf to start the script at boot prepare the...
To manage your custom Kindle scripts I found the following trick super useful. Let’s say you have a script that shows the time on your Kindle e-ink display, under /bin/custom-clock Place your script configuration under /etc/init/.conf (e.g. /etc/init/custom-clock.conf) with the following content: start on started lab126_gui stop on stopping...
On my jailbroken Kindle I wanted to display information about it (e.g. its IP address, battery level etc.) There is a command on the Kindle, namely lipc-get-prop that you can use to gather information about your device, e.g.: lipc-get-prop -i com.lab126.powerd battLevel Additionally, to find the information you’re looking for, you can leverage...
Ok this is clickbait, but hear me out. The alternative to imagemagick for simple scaling, rotation and image conversion actually works. And I’ll explain why I didn’t/couldn’t go with ImageMagick (on my Kindle), which would be my go-to tool. – I rooted my Kindle. The shell is very limited. The Kindle runs on Linux kindle 3.0.35-lab126 #8 PREEMPT...
As crazy/stupid as it sounds, I did it. Managed to show the local RTSP stream from a Tapo surveillance camera on a rooted / jailbroken Kindle Paperwhite, without servers, just ffmpeg and eips – The idea eips is a custom e-ink support program for kindles Find more info here Fortunately on a Kindle (rooted) there is also a build of the ffmpeg lib,...
Wanna get started fiddling around with your freshly jailbroken Kindle? Below I’ll show you a script to display the IP address using eips on your Kindle e-ink screen. – The idea is simple: run a cron every minute get the Kindle’s current IP address display it on the top-left corner using eips Make the filesystem writable This will give you the...
Found a way to make good use of my older Kindle Paperwhite 3 thanks to the Jailbreak “LanguageBreak” You need to be at version 5.16.2.1.1 or else you’re effed. Here is the official guide Wanted to make this post because I tried several days to jailbreak it without success. One day, I noticed the collapsable section at the end of the original post...
After struggling to add my tp-link tapo devices (specifically cameras) to my homeassistant instance, found a way to get everything working properly. Everyone gets a static IP First of all, I suggest you assign your cameras a static IP. If you struggle to find your camera’s IP in your router settings, check out the MAC address of your camera...
I really do like 3d-printing stuff, but lately I had some trouble with PETG. My main problems were stringing on the first layer and the damned PETG blobs that impacted print quality and ultimate the end result. After a few days of trying to get PETG to print like it should, these are my findings for a better overall printing experience. If you’re...
Squarespace acquired Google Domains this year… This is yet another reminder that Google services are ephemeral. If you want to move away from Squarespace, and you’re using Cloudflare’s nameservers, this is the guide for you. – Consider this process might take a few days, so first of all: calm down, and most importantly prepare your wallet....
update: just found out why it was slow If you ever needed to access your spreadsheets via web on an iPad, I feel you. It’s quite a strategy game you have to play: you need to understand/feel how Google Sheets will lag in the next few seconds, so that you can optimize your next move, in foresight of the next lag while scrolling or changing cell -...
update: just found out why it was slow Yess! I don’t know which update on which side got things finally working. Whether it was on Apple’s or Google’s side. Google Sheets is finally usable on the web on an iPad! What a glorious day. PS: In november of last year I complained about how the experience of using Sheets on the web on an iPad was...
In this blog post I wanted to share my experience of programming on an iPad Pro (no PC at the moment). With the right software tools (and optional hardware accessories), an iPad can serve as a powerful mobile development environment. I’ll get into using Visual Studio Code on the web mosh, ssh and bashy stuff with Blink Shell GitHub Codespaces for...
Today is my lucky backup day. TLDR; restored ~ 1 year of analytics data for Plausible analytics. I really do care about my data, but apparently not enough to have a proper backup strategy. That’s at least what this lesson taught me. So let me elaborate/rant a bit. I am using a simple Ansible playbook to provision my server with all the stuff that...
I’ve been playing around with a home-made, super simple ChatGPT UI clone, mainly with the excuse to try out htmx and Alpine.js It’s a fun little project that I’ve been working on for a few days. I’ve been programming it on an iPad Pro (as my main device), and it’s been a fun experience. In this post I want to get deeper into the technical details...
I’ve been using htmx and Alpine.js in the past few weeks, and I have to say, they’re pretty awesome. Made a stupid ChatGPT UI clone with both of them and they brought a breeze of fresh air to my frontend development. How will I use them in the future? I don’t know, but I’ll definitely try to use them more often. Especially for small projects,...
I’ve been using an iPad Pro since the beginning of 2023 and it’s been a great experience so far. This digital “toy” is a real power-station and suits most of my needs. Although I don’t expect certain features to ever be available, I’m still hopeful that Apple will come up with some great implementations. btw, check out my /uses page – 1. Better...
Today I noticed I can finally listen audio on my iPad when connected to an external display! I am currently on iPadOS 17.1 (with Developer Beta active). This changes a lot for me, as I can now use my iPad as a second screen and still listen to music or podcasts on it. I know, this sounds obvious, but it wasn’t possible a few weeks ago. This...
In the past days I got my hands dirty with htmx and alpine.js It was super refreshing and an smooth learning curve. A lil steep and kind of depressing at the beginning, but once you get the hang of it, it was a breeze of fresh air in my development toolkit. Here I want to get a bit into the details of how I used htmx and alpine.js to create a...
Cable reel It took 5+ hours to print all three parts for the bigger version, and perhaps 2 for the small one. I suggest to print it in high quality since it has a screw mechanism. 👉 https://www.thingiverse.com/thing:2856991 Raspberry Pi 4 case This one is a level-up to the one I purchased, because it has way better ventilation, plus I printed it...
Here I want to share how I slightly improved the tags on each of my blog posts. The idea is super simple, a script should do the following: read each blog posts content parse the front matter containing the tags (the header part at the beginning of markdown files) create the prompt containing an excerpt of the blog post call OpenAI’s API and...
Wah gwaan, man? Lately I have been trying to get a basic knowledge of Jamaican Patois. And it’s known that it can be helpful for language learning. But never would I have thought that I could use it as an additional tool for learning Jamaican or other Creole languages. Recent di time, mi a try fi get a basic knowledge a di Jamaican Patois. An yuh...
Below you can find a stupid simple web component, that’s it. – On this page I defined the following template: template> style> #cig-component-container button { font-size: 1.5rem; } #cig-component-container h1 { background: black; color: white; font-weight: bold; font-size: 2rem; padding: 0.75rem...
Here I want to write down my personal use cases for the Apple watch. – View time as you please, together with other widgets, analogue, or plain vanilla digits. To me the Apple watch is like an iPhone remote. Quickly lookup information with Siri, start timers while cooking, etc. You can check notifications, also respond to messages directly from...
Have been using Protonmail since 2020 I think, and it’s been a positive experience. Recently I gave them some feedback and the team prompty implemented or solved the issue. Awesome! This post is not sponsored or whatever. – iPad second display issue There was a strange quirk when opening the Protonmail app on the iPad main display. Another window...
Per fare soldi? Full remote per azienda estera e trasferimento a Catanzaro Mi ha fatto sorridere questo commento su un post sul subreddit di ItaliaPersonalFinance, ma poi ho scoperto il concetto di “SouthWorking” Lavorare dove desideri fa bene a te e ai territori Commento su Reddit ItaliaPersonalFinance
In today’s fast-paced software development industry, Scrum has emerged as a popular framework for agile project management. However, opinions about Scrum vary greatly, with some praising its effectiveness while others criticizing its limitations. In this blog post, we will delve into these diverse perspectives to extract the most valuable...
For now this is just a collection of useful links while organizing my thoughts on web components. learning https://www.webcomponents.org/ https://javascript.info/shadow-dom https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots https://open-wc.org/codelabs/basics/web-components...
Alcuni lo chiamano MiCA, altri MiCAR. Markets in Crypto Assets (Regulation): una prima regolamentazione per garantire l’accessibilità dei servizi bancari alle imprese che hanno a che fare con criptovalute. MiCA si applica a persone o entità coinvolte nell’emissione, offerta al pubblico e negoziazione di cripto-attività o che offrono servizi...
Needed to unblock t.co because it was getting annoying over time. Finding the menu item was simple and intuitive, but the suggestions on that page to unblock a certain domain were not working. I resorted to the following to get t.co links to work: @@||t.co^$important
Upon receiving the notification of low battery on your Airtag, you purchase fresh CR 2032 batteries, unpack them, and proceed to replace the Airtag battery. You open the “Find My” app to check the battery status, only to find that it is still low. After conducting a quick Google search and referring to some Apple documentation (found here), you...
The COVID-19 pandemic changed the way we work, forcing many organizations to adopt remote work as the new norm. Some years have passed and many want to continue this trend, while others wish to go back to the office. Let’s take a look at what people are saying on HackerNews: Advocates Quite a few people see the advantages of working fully...
Below you can find my favorite channels I use to listen to music while programming You can even rap about Node.js and JavaScript on these beats if you feel like it 😅 Anabolic Beatz My all-time favorite producer. Lofi Girl That famous girl that studies 24/7. Alternatively via lofi.cafe or Spotify Fat Cat Beats Amazing old school / boom bap beats...
The World Wide Web Consortium (W3C) has introduced a RC version of the web standard called Secure Payment Confirmation (SPC) to streamline user authentication and improve security when making payments on the web. It uses Web Authentication (WebAuthn) to register and authenticate users, enabling them to make purchases using Touch ID or Windows...
Voglio portarti un pò indietro nel tempo in questo esercizio di ricordi sparsi e parziali dei miei primi passi su internet. Un paio di settimane fa mi è venuto in mente “Jumpy”, l’ISP che utilizzavo nei primi anni 2000. Costava un occhio della testa ai miei e si navigavabarcollava a 56 Kbit/s. Quali sono le principali differenze tra il nuovo...
Let’s talk about weekly 1:1s. Some people swear by them, and others think they’re a waste of time. But what makes them effective? Context: Discussion on HackerNews about “What’s your opinion on weekly 1:1s?” One thing that many people agree on is the importance of consistency. When everyone shows up for these meetings week after week, it builds...
With import maps you can map external module names to their relative URLs, on a CDN for example, which makes it super easy to use external modules, natively in 2023. By defining a tag you can map the various modules you like to include in your web application, leveraging ES modules. Put the mapping the in the tag of the document and can import...
While exploring how to build an RSS reader, I stumbled across the idea of using Google Sheets to display RSS feed content. Just for fun, I decided to give it a shot and see how far I could get. I am using Miniflux daily, but I am also having some fun coding up a stupid RSS reader on my own. I found the idea of creating an ‘impractical’ RSS reader...
The repository accompaining this blog post can be found on GitHub It contains the whole code to get your Raspberry Pi up and running with Docker and Docker Compose, set it up for network access through USB-C and configure a few other things. There is an excellent post about configuring your Pi to connect to your iPad via USB-C. I automated the...
Node.js 20 has been released, and it brings several new features and improvements for developers. Let’s take a closer look at some of them. Stable test runner Node.js 20 introduces a stable test runner module! You can use describe, it/test, and hooks to structure test files, as well as watch mode, running multiple test files in parallel, and...
I have been using miniflux for a while now, and I really like it. It’s a great RSS reader. Here I want to share my experience with self-hosting it with docker and nginx. The provisioning is done with Ansible. Pretty simple, and I think it’s a good starting point for anyone who wants to self-host miniflux. TLDR; Provisioning with Ansible Running...
Found this discussion on HackerNews about “How are you using GPT to be productive?” and thought it was interesting. I’ve been using ChatGPT for a while now and have found it to be a great tool for getting things done. ChatGPT has become an indispensable tool for many professionals in various fields. Its ability to understand natural language and...
You can use GitHub CodeSpaces to develop your Jekyll site. But you need to install Node.js and npm to use e.g. TailwindCSS. So, if you haven’t already, create a file called devcontainer/devcontainer.json in your repository, with the following content: { "name": "Jekyll", "image": "mcr.microsoft.com/devcontainers/jekyll:0-bullseye", ...
In this blog post, we’ll create a minimal Ansible playbook that will allow you to quickly and easily provision a new server. With just a few simple steps, you’ll be able to set up a server with all the necessary software and configurations in no time. Install Ansible You can do this by following the instructions on the Ansible installation page....
In this article, we will explore the different ways to use an iPad for 3D printing, from designing to slicing and printing. What you’ll need: a Raspberry Pi (yes, calm down and stay with me) basic design experience with tools like Fusion360, or alternatives like Tinkercad, OnShape and Shapr3d basic setup for slicing the STL in Ultimaker Cura This...
Recently I upgraded to 11ty 2.0. Noticed a failing build on CloudFlare Pages, and found out I was using the default Node.js version, namely v14! 😅 So I updated the package.json to use the latest LTS version of Node.js available on CloudFlare (node 17): { "engines": { "node": ">= 16" } } and in the CloudFlare Pages dashboard, I updated...