Coder Social home page Coder Social logo

Hello! 👋

⚠ī¸ Recruiters I'm very happily employed and not looking for a job, sorry.


I'm Alec, I live in San Diego. I'm an adrenaline junkie software engineer.

  • Coding đŸ–Ĩī¸
  • Flying airplanes and aerobatics 🛩ī¸
  • Rock climbing 🧗‍♂ī¸
  • Skiing ⛷ī¸
  • My adorable dog Ada (yes, named after Ada Lovelace) đŸļ

I've been all over the software stack, working on ChromeOS (low level firmware, and high level CI systems) at Google, games at Sunblink, and web stacks all over the place. I have a passion for GPUs, hardware and bare-metal software, and cutting edge web tech (WASM, WebRTC and WebGPU).

In 2020 I founded Tungsten Labs with my tech lead back from Google, we created Maglev, a peer-to-peer RPC framework built on WebRTC. I'm still very passionate about that project, but it's on hold for now.

Projects

My favorite personal project is https://github.com/AThilenius/logic-paint-rs It is:

  • Based on a game by Zachtronics called KOHCTPYKTOP, which sadly isn't playable any more because it's a flash game
  • Written in Rust (because I'm obsessed with Rust)
  • Compiled to WASM
  • Uses WebGL2 for fixed-cost (by pixels) hardware accelerated rendering
    • Each 'cell' is a single 16 bit unsigned texel and rendered entirely in a fragment shader.
  • Lets you edit and simulate transistors (something between BJT and CMOS, for you hardware people)

Once I finished with the editor I then built a functional 16 bit CPU in it, modeled after the CL-3B ISA. It's micro-coded with a common 16-bit bus, 8 registers with dual output and a 16K of RAM (not drawn here).

CPU

I love this project dearly, because it requires knowledge of how a computer works all the way from the transistor up to WASM running in Chromium (which is what VSCode is build with). Next up is a toy language with a homemade compiler for it 😊 Have to rewrite my parser-generator first though!

Alec Thilenius's Projects

amethyst icon amethyst

Data-oriented and data-driven game engine written in Rust

atlas icon atlas

A modern tool for managing database schemas

bevy icon bevy

A refreshingly simple data-driven game engine built in Rust

bme280-rs icon bme280-rs

A platform agnostic Rust driver for the Bosch BM[PE]-280

bno055 icon bno055

Device-agnostic Bosch Sensortec BNO055 9-axis Sensor Fusion IMU driver

cad icon cad

A repo to store general CAD files.

ezpb icon ezpb

Easy browser and NodeJS Protobuf RPC over Websockets

fast-voxel-traversal-rs icon fast-voxel-traversal-rs

Voxel traversal (2D and 3D) iterators based on the infamous Fast Voxel Traversal algorithm by Amanatides & Woo

filament-rs icon filament-rs

Rust bindings for Google Filament https://github.com/google/filament

flame icon flame

The flame Minecraft plugin for the ScorchForge project.

forge icon forge

The web Frontend for Scorch.

leveldb icon leveldb

LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values.

logic-paint-rs icon logic-paint-rs

A transistor-level logic simulator inspired by the Intel 4004 and Zachtronic's KOHCTPYKTOP, build with Rust + WASM

mapreduce icon mapreduce

A MapReduce framework in C++ using Policy Based Design

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤ī¸ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.