Challenges

Featured Challenge:
#154 β€” Tic Tac Toe AI with Minimax Algorithm

In this challenge I take the Tic Tac Toe game from coding challenge #149 and add an AI opponent for a human player by implenenting the Minimax algorithm.

dec 11, 2019

Tic Tac Toe AI with Minimax Algorithm
βŒ₯

Filter by Language

Pick a language to filter
β˜†

Filter by Topic

Pick a topic to filter

In this coding challenge, I use the Leibniz formula (aka infinite series) to approximate the digits of Pi and graph the convergence.

Leibniz Formula for Pi

It’s groundhog day on the coding train as I demonstrate another noise loop GIF technique, this time with 4D OpenSimplex Noise in Processing (Java).

4D OpenSimplex Noise Loop

In this multi-part coding challenge I show how to use a noise field and polar coordinates to create a perfect GIF loop.

Polar Noise Loops

In this multi-part challenge, I use a parametric equation (from Wolfram Mathworld) to draw a heart curve in Processing (Java).

Heart Curve

In this video, I follow Mike Ash’s guide to Fluid Simulation and port Jos Stam’s "Real-Time Fluid Dynamics for Games" algorithm and code in Processing (Java).

Fluid Simulation

In this coding challenge, I simulate the β€œBouncing DVD Logo” meme in JavaScript with p5.js.

Bouncing DVD Logo

In this holiday coding challenge, I create a "Brownian Tree Snowflake" in Processing (Java). This video was recorded as part of a fundraiser for the Processing Foundation.

Brownian Tree Snowflake

In this coding challenge, I implement Omar Pol’s fractal toothpick sequence.

Toothpicks

In this coding challenge, I visualize a Fourier series for a square wave in JavaScript with p5.js.

Fourier Series

In this coding challenge, I create a flocking simulation in JavaScript based on Craig Reynolds "boids" algorithm.

Flocking Simulation

In this multi-part coding challenge, I visualize the "Chaos Game".

Chaos Game

In this multi-part coding challenge, I take a closer look at the Quick, Draw! dataset and create a simple node API to "replay" drawings of rainbows and cats using p5.js.

Quick, Draw!

In this coding challenge, I discuss turtle graphics and make a Logo Interpreter in JavaScript.

Logo Interpreter

In this coding challenge, I talk about bitwise operations, and more specifically, bit shifting.

Bit Shifting

This coding challenge is an exploration of binary numbers with p5.js. Watch me build an interactive sketch that converts binary to decimal numbers!

Binary to Decimal Conversion

In part 1 of this coding challenge, I create a node.js Mastodon bot that posts images (fractal trees) generated with Processing code. In part 2, I revise the node.js Mastodon bot to post images (fractal trees) in response to user mentions.

Mastodon Fractal Tree Bot

Yes, sorting numbers can be fun! In this challenge I attempt to implement the "bubble sort" algorithm in Processing (Java) and visualize the process itself with animated lines.

Bubble Sort Visualization

Can I draw and rotate a 3D cube using Processing's 2D renderer with just some math?!?! Yes! Watch to learn more about rotation and projection matrices along with perspective and orthographic projection!

3D Rendering with Rotation and Projection

In this coding challenge, I load a sprite sheet and create multiple animated sprites with the p5.js library.

Animated Sprites

In this coding challenge, I visualize the RecamΓ‘n’s number sequence using the p5.js library and go on to generate a series of musical tones using p5.js sound.

RecamΓ‘n's Sequence

In this coding challenge, inspired by Numberphile I visualize "sandpiles" with Processing (Java).

Sandpiles

In this coding challenge, I implement a pixel-based β€œfire” algorithm using Processing (Java).

Fire Effect

In this coding challenge, I attempt to simulate 2D water ripples using Processing (Java).

2D Water Ripple

Happy Star Wars day! May the fourth be with you! In this challenge, I code the iconic text scrolling/title crawl in Processing (Java) in 15 minutes!

May the 4th Scrolling Text

In this challenge, I use my JavaScript neural network library and a genetic algorithm to train an agent to play Flappy Bird.

Neuroevolution Flappy Bird

In this multi-part coding challenge, I implement a Quadtree data structure in JavaScript and visualize it with p5.js.

Quadtree

In yet another β€œPi Day” coding challenge, I attempt to generate a pdf β€œBook of Pi” with the first 10 million digits of Pi mapped to color. Processing (Java) is used for this project.

The Book of Pi

In this multi-part coding challenge, I code the sliding puzzle game 2048 in JavaScript using canvas and p5.js.

2048 Sliding Puzzle Game

In this coding challenge, I create a double pendulum simulation in Processing.

Double Pendulum

In this coding challenge, I use my Toy Neural Networks library to solve the XOR problem.

XOR Problem

In this multi-part coding challenge, I attempt to create a simulation of the classic board game Snakes & Ladders (also known as Chutes and Ladders).

Snakes & Ladders