Skip to content

Instantly share code, notes, and snippets.

View Falconerd's full-sized avatar
⚙️
Crankin'

Dylan Falconer Falconerd

⚙️
Crankin'
View GitHub Profile
@Falconerd
Falconerd / arena.c
Last active February 14, 2024 10:31
Some game code stuff
#include "common.h"
uintptr_t align_forward(uintptr_t ptr, size_t alignment) {
uintptr_t p, a, modulo;
if (!is_power_of_two(alignment)) {
return 0;
}
p = ptr;
a = (uintptr_t)alignment;
@Falconerd
Falconerd / isq_ui.h
Created June 30, 2023 07:19
IMGUI with Flexbox layout
// Usage:
// ISQ_UI_RENDER_RECT(buffer, count)
// must be defined by the user.
// buffer: pointer to an array of rects
// count: number of rects in the array
// rect:
// vec4 min, max;
// vec4 color;
@Falconerd
Falconerd / init.lua
Last active April 29, 2023 03:27
Simple nvim setup Odin+C
vim.cmd([[
let mapleader = ' '
]])
require('packer').startup(function(use)
use "BurntSushi/ripgrep"
use "danilamihailov/beacon.nvim"
use "folke/todo-comments.nvim"
use "folke/trouble.nvim"
use "goolord/alpha-nvim"

Lost Knowledge - Programming mastery will save lives

Introduction

As the layers of abstraction get piled onto our software solutions, we have lost

@Falconerd
Falconerd / machine.js
Created April 28, 2021 04:53
Generated by XState Viz: https://xstate.js.org/viz
Machine({
id: 'Dog API',
initial: 'idle',
context: {
dog: null
},
states: {
idle: {
on: {
FETCH: 'loading'
/* dict.h */
#pragma once
#include <stdlib.h>
struct dict {
int *hashed_keys;
void *values;
int count;
<sentence> ::= <subj> <obj> <verb> <part>
<sub> ::= <noun>
<noun> ::= dog | cat | man | woman | robot | pen
<obj> ::= <noun>
<verb> ::= kick | whack | dance | own
<part> ::= now | earlier | later
<subj> <obj> <verb> <part>
man pen own now == "A man owns a pen"
dog cat dance earlier == "A dog was dacing with a cat"
Hero Primary Secondary
Ana Hitscan (Flicking) Projectile (Sleepdart and Grenade)
Ashe Hitscan (Flicking) Projectile (Dynamite)
Baptiste Hitscan (Flicking) Projectile (Healing)
Bastion Hitscan (Tracking)
Brigitte Hybrid
D.Va Hitscan (Tracking) Projectile (Rockets)
Doomfist Projectile
@Falconerd
Falconerd / gulpfile.js
Last active April 10, 2019 17:16
Gulp + Watchify + Babelify + BrowserSync
/**
* This gulpfile will copy static libraries and a index.html file as well as
* merge, babelify and uglify the rest of the javascript project.
*
* TODO:
* - Separate media, libs and src with different watchers.
* - Media and libs should only be copied to dist if they are different sizes.
*
* The expected project is to be laid out as such:
*
@Falconerd
Falconerd / stuff.js
Created October 29, 2016 06:14
webpack 2, react, redux
$ npm i -S react redux react-redux react-dom webpack@2* webpack-dev-server@2*
$ npm i -D babel-core babel-loader babel-preset-es2015 babel-preset-react
// webpack.config.js
module.exports = {
context: __dirname + '/src',
entry: {
app: './index.js'
},