Blog

This is my blog, where I write education material about various programming technologies and computer science concepts, and occasionally write about a new and upcoming project I've built! I post here a couple times per month, and also repost articles on the DEV community, where I interact with you all through the comments section.

I've written book reviews, articles about computer science history, posts about my latest projects, and quite a few tutorials as well. I hope you enjoy my content.

— Gabriel Romualdo, October 21, 2020

How to Generate the Sierpinski Triangle in Vanilla JavaScript with HTML5 Canvas

The Sierpinski triangle is a famous mathematical figure which presents an interesting computer science problem: how to go about generating it. In this article I'll explai...

Performance of AI Algorithms in Playing Games — Empirical Evidence From Jupiter, My 2048 AI

I recently worked on an open source project called Jupiter, an online AI written in JavaScript to beat the popular online game 2048. In this article, I'll be analyzing th...

Using the Monte Carlo Tree Search Algorithm in an AI to Beat 2048 (and other games)

I recently worked on an open source project called Jupiter, an online AI to beat the popular online game 2048. In writing this AI, I decided to use a machine learning met...

I Built Jupiter – A Machine Learning Based 2048 AI that Runs on the Web

Today I'm proud to release my online 2048 AI, Jupiter. Jupiter uses a machine learning method called the Monte Carlo Tree Search (MCTS) algorithm. I've released an articl...

How to Parse XML in Python

How to Parse XML in Python

  • August 8, 2020

  • Est. 3 min read

I recently spent a few hours refactoring some of the backend code on this site at xtrp.io. In changing the backend, I wanted to make sure the refactored code worked the s...

Build and Deploy a Discord Bot with Node and Discord.js in 5 minutes

Discord bots can be useful in doing a variety of things like playing music in a voice chat, or sending automated announcements when a Youtuber releases a new video. I'm a...

How to Create a Beautiful Custom Scrollbar for Your Site in Plain CSS

Custom scrollbars on the web can make a site or design stand out. They can help in portraying key design aspects of a site, whether that be a specific color or a particul...

AP Test Submission Problems Show Lack of Developer Adoption of .HEIC File Type

Due to lockdown and quarantine in numerous countries, this year's AP tests were moved to an online platform created by College Board, the creator of the AP program and ot...

I Built Coronavirus Live Monitor - stats, news, and WHO press releases on the virus all in one place

Today, I am proud to release my latest web app and project: Coronavirus (COVID-19) Live Monitor, your hub for news and information on the Coronavirus outbreak. The code c...

IIFE

IIFE's in JavaScript Explained in 3 Minutes

  • February 29, 2020

  • Est. 3 min read

Global variables can cause serious problems and bugs in large-scale projects and web apps. IIFE's solve this problem by wrapping code in an immediately invoked function, ...

Create a Reading Scroll Progress Bar for Your Blog in JavaScript and CSS

I just recently added a fun little feature on my website at xtrp.io: a progress bar when reading blog posts. The bar would show how far users have progressed in reading a...

CSS Variables Explained in 2 Minutes with an Interactive Demo

CSS variables have been around for quite some time now, but are nevertheless extremely useful. The value of a variable can be just about anything, from pixel values to co...

JavaScript `use strict` Explained in 2 Minutes

JavaScript `use strict` Explained in 2 Minutes

  • January 17, 2020

  • Est. 2 min read

In general, normal JavaScript allows for code that is badly written and includes bad syntax. But, use strict solves this problem. Introduced in ES5, the use strict direct...

I Built Daily Developer Jokes and the First Ever DEV Bot

Today I am proud to release my latest project — a website and the first ever DEV bot (as far as I know), called Daily Developer Jokes. The Daily Developer Jokes bot...

Hello World in LOLCODE: A Very Peculiar Programming Language

LOLCODE is an esoteric programming language, a type of programming language which is defined by the Esolang Wiki as follows: an esoteric programming language is a compute...