Skip to content
View Jumbub's full-sized avatar
Block or Report

Block or report Jumbub

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
Jumbub/README.md

JavaScript is faster than people expect, in this project I highlight techniques for optimizing it for speed and efficiency:

  • Multi-threading: Leveraging web workers and atomics for concurrent execution.
  • Typed Arrays: Utilizing typed arrays to reduce memory overhead through and encourage aggressive optimisations in V8.
  • C++ Performance Comparisons: Conducting performance benchmarks between JavaScript and C++ for optimization insights.
  • Game of Life: Check out the app built with these techniques here!

I love diving deep into C++ code and finding ways to squeeze out every ounce of performance. This project highlights:

  • Branchless Logic: Improving CPU performance through better instruction-level parallelism, reduced branch mispredictions and optimized pipeline utilization.
  • CPU Caching: Optimizing memory access patterns to leverage the CPU cache hierarchy effectively.
  • Compiler Benchmarks: Exploring performance differences across various compilers and tweaking code accordingly.
  • Job Pooling: Implementing efficient job pooling techniques for parallel and asynchronous programming.

Sometimes, less is more! I've written my personal site with zero JS to illustrate the power and flexibility of CSS.

  • Semantic HTML: Naturally increasing accessibility and reducing DOM bloat by properly leveraging HTML semantics.
  • Native SPA: Effectively leveraging browser targets to create native single page app experiences.
  • Raw CSS: Exploring the limits of native CSS capabilities.

image

This Minecraft mod is what ignited my passion for programming all the way back in 2012.

I remember finding this challenge in the forums and being in awe at the knowledge required... So in this repository I go back and complete the challenge. Feels good 😌

  • The Challenge: Write an AI in Lua capable of replicating itself.
  • Capabilties: The robot forages, mines, smelts and crafts all while operating efficiently to minimise fuel usage.

image

Logical programming is interesting because the solutions almost write themselves, this is my first foray into the topic:

  • Backward Chaining: Implementing backward chaining algorithms for logical reasoning.
  • Pretty Diagrams: Visualizing logical structures and solutions with beautiful and educational diagrams.
  • Blockworld: Check out my logic solver in action here!

image

Solving expressions without floating point innaccuracies or implicit approximations:

  • Error Bounds Tracking: Implementing error tracking mechanisms to ensure accuracy when using transcendental functions such as sine.
  • Infinitely Large Fractions: Storing and operating on numbers in a lossless manor with infinitely large values.
  • Pure Functional Haskell: Building a calculator using pure functional programming paradigms.

A gift to my sister as I headed off to live overseas in Vancuover for a couple years. The idea was that while we were both on opposite sides of the country, we'd still have some level of live casual interaction.

  • Pico W: Developed firmware for the Raspbery Pico Wifi microcontroller board.
  • MQTT Messaging: Leveraged the MQTT messaging protocol for real-time communication between devices.
  • Touch Screen Panel: Integrating touch screen panels for interactive drawing experiences.
  • 3D Printing: Printing and shaping a case to fit the board and touch panel.

TypeScript's type system is truly fascinating. In this repository I explore some of it's limits and lack thereof:

  • Turing Complete Type Systems: Exploring the expressive power of TypeScript's type system.
  • Type-Driven Development: Leveraging types for program design and verification.

Pinned Loading

  1. game-of-life-cpp game-of-life-cpp Public

    Finding ways to optimise Conway's Game of Life

    C++ 1

  2. game-of-life-js game-of-life-js Public

    Attempting to match C++/SFML performance with JS/Chrome

    TypeScript 1

  3. jamiebray-ui jamiebray-ui Public

    Personal website

    CSS 2

  4. dotfiles dotfiles Public

    Personal configuration files

    Shell 4

  5. abusing-typescript abusing-typescript Public

    Abusing the TypeScript type system is fun.

    TypeScript

  6. do-math-right do-math-right Public

    Solve expressions without any floating point inaccuracies or implicit approximations.

    Haskell 2 1