Skip to content
View Tanner-Davison's full-sized avatar

Block or report Tanner-Davison

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.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

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

Report abuse
Tanner-Davison/README.md

Hey, I'm Tanner Davison 👋

Full-stack developer by day. Systems and graphics programmer by obsession.
I ship production web at Vasion, and on my own time I build a Vulkan engine from scratch and work through Knuth.

Vasion The Davison Boys Neovim config


What I do

I like knowing what happens underneath the abstraction. At work that means building fast, maintainable marketing sites in Next.js, TypeScript and Storyblok. Outside work it means going the other direction: GPU pipelines, memory, and the algorithms that everything else rests on.

Frontend and CMS React, Next.js, TypeScript, styled-components, Storyblok, GSAP
Systems and graphics Modern C++, Vulkan, SDL2/SDL3, ECS architecture with EnTT, CMake
Tooling Neovim (Lua), tmux, Linux, shell automation, CLI utilities
Hardware Arduino, embedded systems, electronics hobby projects

What I'm building right now

🎮 Tannery: a Vulkan engine from scratch

A passion project written in C++ on native Ubuntu & Metal. No engine, no wrapper library, just the API and a lot of validation-layer errors. So far I have working through:

  • Swapchain creation and recreation on resize
  • Dynamic rendering (no render passes) and pipeline layout
  • Memory allocation with Vulkan Memory Allocator, wrapped in RAII types
  • Depth buffering: depth image, depth test, per-frame clear and layout transitions
  • Next: 3D vertex positions, textures and descriptors, model loading, lighting

I keep Do keep AI notes/documentation on every step I complete and or need redone, including the mistakes worth remembering, because that is where most of the learning happens.

âš¡ A Neovim setup I actually enjoy

Fully on Neovim 0.12 with native LSP, blink.cmp, Snacks, DAP debugging, and a Glove80 split keyboard layout to match. Take what you like.

🤖 Working with AI, not around it

I use AI as a daily collaborator, and I try to be deliberate about it:

  • Claude Code in the terminal for exploring unfamiliar code, refactors, and migrations
  • Parallel agents in separate git worktrees and tmux panes, so one task can't trample another
  • In-editor assistance through CodeCompanion and inline completion
  • My rule: AI drafts, I review. If I can't explain a change then is doesn't ship. Also no AI can touch my Engine. Hard rule to keep my skills from atrophy.

📚 Reading list

The long game

The Art of Computer Programming by Donald Knuth, Volumes 1 through 4A:

  1. Fundamental Algorithms
  2. Seminumerical Algorithms
  3. Sorting and Searching
  4. Combinatorial Algorithms, Part 1 (4A)

Slow reading with a pencil. It changes how I think about code more than any framework has.

Shelf

  • C++ Primer (5th Edition), Lippman, Lajoie, Moo
  • Professional C++ (6th Edition), Marc Gregoire
  • Effective C++ (3rd Edition), Scott Meyers
  • The C++ Standard Library (2nd Edition), Nicolai Josuttis
  • Game Engine Architecture (3rd Edition), Jason Gregory
  • Design Patterns, the Gang of Four
  • Algorithms, Panos Louridas

Got a recommendation, especially on graphics or compilers? I'm open to suggestions.


Tech I use

Languages and tools

Data and backend Storyblok Vulkan SDL EnTT


Mindset

Always be a student.

"The most powerful tool a developer has is not their code, but their willingness to delete it."


Stats

GitHub stats Top languages

Let's build something extraordinary together.

Pinned Loading

  1. chatty-chatter chatty-chatter Public

    Hosted Live with Heroku

    JavaScript 2

  2. pgpool-cpp pgpool-cpp Public

    pgpool-cpp provides a thread-safe, RAII-compliant connection pool that automatically manages PostgreSQL connections in multi-threaded applications. Built on top of libpqxx, it offers efficient conn…

    C++ 2

  3. cpp-primer cpp-primer Public

    Organized Cpp Files / Projects / Examples for Teaching & Building Executable C++ Content Courses

    C++ 2

  4. ai-quiz-generator ai-quiz-generator Public

    AI-powered quiz generator built with React, TypeScript, FastAPI, and PostgreSQL. Enter any topic and get a multiple-choice quiz generated via Groq's LLM API, with optional Wikipedia enhancement for…

    Python 1

  5. forge2d forge2d Public

    C++ 2

  6. Tannery Tannery Public

    First attempt at a 3D engine using Vulkan & GLFW3 Hand Rolled NO AI

    C++