Initializing...

About

Welcome to my site. I'm Bryan, and I'm a programmer. I work with web-facing technologies like React, Node, and TypeScript/JS/CSS/HTML to create software that helps people and brings them joy. I've also dug deep into C/C++ and wrangled databases. I'm fascinated by the possibilities of GLSL in WebGL, and I'm eager to explore what comes next.

I'm a graduate and lifelong learner of physics, which has inspired several of my projects and helped me develop the quantitative skills I've needed to optimize software systems. I've found that drawing on dynamics from the physical world can improve experiences in the digital domain as well.

As a hobbyist artist, I believe that art and design are not just incidental, but are essential to the quality of user experiences. A great interface ought to be both beautiful and practical, and people are empowered to do their best work when both of those needs are met.

I also have a background in education. My experience working with students of all levels has given me an appreciation for the art of communication. When discussing complex subjects, it's important to be precise, but also to find forms of expression which suit their audience well. When a team is in sync, everyone benefits.

Thanks for taking the time to visit. I hope you enjoy your look around.

Portfolio

DaySift.net

Full-stack calendar service with a single-page app frontend. Users can instantly update their schedules through a fluid drag-and-drop interface.

Features

  • Instant interactions via optimistic updates to a mutation buffer. The update algorithm is fault-tolerant and will store updates indefinitely until the server can be reached. Concurrency conflicts are automatically resolved.
  • A local cache serves queries from subsets or composite supersets of previous views. Staleness is tracked per-view, minimizing network traffic.
  • User authentication managed via JWT. Correctness and security of backend API surface maintained via automated testing and CI hooks.
  • Intuitive, fluid interface makes it easy for users to reschedule their calendars whether on desktop or mobile.

Built with: React, React Router, TanStack Query, PostgreSQL, and Material UI.

Lights Out Solver

Optimal-solution finder for classic Lights Out puzzles. Users can input existing puzzles to obtain solutions, or generate new random puzzles to try.

Features

  • Finds fast (polynomial-time) solutions via Gauss-Jordan reduction over the prime field ℤ₂.
  • Unlike most other solvers, finds optimal solutions by identifying and permuting free variables in the puzzle's state transition matrix.
  • Achieves seamless user interaction by delegating calculations to a separate worker thread.

Built with: React, TypeScript, Tailwind CSS.

Archivia

A mock library catalog, implemented as a full-stack web service. Users can search a catalog of recorded books, update inventory, or import metadata from real-world library databases.

Features

  • Integration with the OpenLibrary API allows automated retrieval and population of database records. Non-relational record structures are parsed for a best-fit match to Archivia's catalog schema.
  • Rendering of a three-dimensional carousel gallery of recently added books based on imported metadata. Records unlikely to yield quality results are excluded from the recency queue.
  • Pages rendered via server-side templating for a nostalgic, vintage browsing experience.

Built with: Node.js, Handlebars, Bootstrap, PostgreSQL.

CrystalClearCopy.net

Portfolio website showcasing the skills and achievements of a technical writer/marketer. Key points are emphasized through CSS effects and lightly scripted animations.

Features

  • Original and flexible design elements are used to reflect the client's creative focus, without compromising legibility.
  • Smooth parallax animations implemented via style transformations.
  • Responsive design comfortably accomodates a wide range of browser platforms.

Built with: Vanilla JS, HTML, and CSS.

... and this site.

Visualization of a polychoron projected from fourth-dimensional space down to a two-dimensional viewport. Users can tap and drag the canvas to view the tesseract from different 4D perspectives.

Features

  • Specular, diffuse, and atmospheric lighting are calculated for fourth-dimensional light sources.
  • Performant GLSL pixel and vertex shaders enable smooth animation even on low-spec GPUs.
  • Optional settings allow users to switch touch interactions between ordinary and hyperdimensional rotation.
  • Quaternion algebra is used to perform smooth spherical linear interpolation between different fourth-dimensional orientations.
  • It's pretty.

Built with: No external libraries. Vanilla JS, WebGL, and GLSL.

Contact

Thanks for reaching out! You can contact me by e-mail at:

Settings

Animations
    Technical Details
     
    Initializing WebGL...
    Bryan Rauen Web Developer