1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
let xesite = ./types/package.dhall
let Resume = xesite.Resume
let Link = xesite.Link
in Resume::{
, buzzwords =
[ "Docker"
, "Git"
, "Go"
, "Rust"
, "C"
, "DevOps"
, "Heroku"
, "WebAssembly"
, "Lua"
, "Mindfulness"
, "Nix"
, "NixOS"
, "HTTP/2"
, "Ubuntu"
, "Alpine Linux"
, "GraphViz"
, "JavaScript"
, "TypeScript"
, "SQLite"
, "PostgreSQL"
, "Dudeism"
, "Technical writing"
, "Emacs"
, "Continuous Integration"
, "Continuous Delivery"
]
, jobs = ./jobHistory.dhall
, notablePublications =
[ Link::{
, url = "https://blog.heroku.com/how-to-make-progressive-web-app"
, title = "How to Make a Progressive Web App From Your Existing Website"
, description =
"An article summarizing how easy it is to make a webpage into an installable Progressive Web App using APIs available in the most commonly used browsers."
}
, Link::{
, url =
"https://web.archive.org/web/20210318102148/https://tech.lightspeedhq.com/palisade-version-bumping-at-scale-in-ci/"
, title = "Palisade: Version Bumping at Scale in CI"
, description =
"The release post for Palisade, a tool to automate version bumping, release tagging and more."
}
, Link::{
, url = "https://tailscale.com/blog/steam-deck/"
, title = "Putting Tailscale on the Steam Deck"
, description =
"An engineering log of all the steps taken to run Tailscale on the Valve Steam Deck and the tradeoffs between the various methods you could use to do this."
}
, Link::{
, url = "https://tailscale.com/blog/magicdns-why-name/"
, title = "An epic treatise on DNS, magical and otherwise"
, description =
"A deep dive into all of the problems that DNS has at scale and how Tailscale makes most of those problems go away, with the rest of them being easier in comparison."
}
, Link::{
, url = "https://tailscale.dev/blog/weaponizing-hyperfocus"
, title =
"Weaponizing hyperfocus: Becoming the first DevRel at Tailscale"
, description =
"A brief history of the developer relations team at Tailscale and how I found myself creating it. I cover one of my largest internal demons and how I managed to wield it as a force of empowerment rather than a limiting force of pain."
}
, Link::{
, url = "https://tailscale.dev/blog/headscale-funnel"
, title = "Using Tailscale without Using Tailscale"
, description =
"An award-winning April Fools Day post describing how you can use Tailscale via Headscale via Tailscale Funnel. This post is notable for demonstrating all five of the Tailscale company values at the same time."
}
]
}
|