Skip to content
View pjtunstall's full-sized avatar

Block or report pjtunstall

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
pjtunstall/README.md

I've been learning to code for the past two and a half years at 01Founders, a branch of the 01Edu family of coding bootcamps. We were introduced first to Go, then JavaScript, then Rust. This portfolio is a mixture of coursework and personal projects. An asterisk after the title denotes a 01Founders project.

Rust

  • almondala Online Mandelbrot explorer, in Rust/Wasm and TypeScript.
  • 0-shell* A simple shell.
  • a-ray-tracer-darkly* My resonse to the 01Founders project called rt.
  • holocron A program to encrypt and decrypt messages with a hybrid cryptosystem, combining a conventional key-exchange mechanism with one of the proposed post-quantum algorithms.
  • filler* A bot to compete against another bot at a game called filler.
  • smart-road* A rudimentary simulation of traffic at an intersection.

JavaScript

  • overreact* A mini frontend framework with virtual DOM, state management, event delegation, and routing.
  • react-tarot Personal project to introduce myself to React: a carousel of AI-generated tarot cards.
  • ziggurats An exercise to help me learn about Canvas animations and MVC architecture, which also turned into an exploration of performance.
  • spotify-scraper A program to scrape Spotify premium individual plan price data for all countries.
  • mad* The Mad Bomber's Tea Party. We had to recreate the '80s class Bomberman as a multiplayer browser game. The basis of this code is a single-player version by fellow students; see credits in game and in the README. Their work is most evident in the client-side code of the game itself.
  • retro-raiders* First JavaScript project for 01Founders. The brief: to remake a classic arcade game for the browser.

Go

  • penumbra A task manager web app, written mostly in Go, using Go's HTML templates, with minimal JavaScript, and the DaisyUI CSS framework for styling.
  • social-network* Group project to make a Facebook-style social media site using WebSockets, React, and SQLite. I was responsible for serverside aspect of the WebSockets. My code is naively structured and doesn't take full advantage of the duplex connection, having only one goroutine (thread) per connection, rather than a goroutine each to handle incoming and outgoing messages.
  • lem-in* First significant 01Founders project. I enjoyed this one a lot. We had to find an optimal way to send ants through a maze. It taught me some graph traversal algorithms and the concept of maximum flow. I kept thinking I had it, then realizing it went deeper. The breakthrough came when I found a paper by Schroeder, Guedes, and Duarte on how to adapt the Ford-Fulkerson technique to find a maximum flow in an undirected graph.
  • push-swap* 01Founders optional project about optimizing an algorithm. The challenge: to sort a circular stack of numbers using one other circular stack, with as few instructions as possible.
  • stock-exchange-sim* A playfully named 01Founders optional about task scheduling heuristics.
  • brainfuck An interpreter for the esoteric programming language Brainfuck.

Pinned Loading

  1. almondala almondala Public

    Online Mandelbrot explorer, in Rust/Wasm and TypeScript.

    TypeScript 1

  2. overreact overreact Public

    01Founders project: a mini frontend framework with virtual DOM, state management via a proxy object, event delegation, and routing.

    JavaScript 1

  3. 0-shell 0-shell Public

    01Founders project to write a simple shell.

    Rust

  4. a-ray-tracer-darkly a-ray-tracer-darkly Public

    The 01Founders ray-tracing project.

    Rust