aboutsummaryrefslogtreecommitdiff
path: root/static
diff options
context:
space:
mode:
authorXe Iaso <me@christine.website>2022-11-25 19:01:10 -0500
committerGitHub <noreply@github.com>2022-11-25 19:01:10 -0500
commitcc933b31fd23bb06e95bf41f848a1c99353d44ae (patch)
treeaf8288dbd4db2ad886d6b326bffb1c9d5b568de3 /static
parent551e0384c923ff3ee98cfddf7e3eb42c6dbb2941 (diff)
downloadxesite-cc933b31fd23bb06e95bf41f848a1c99353d44ae.tar.xz
xesite-cc933b31fd23bb06e95bf41f848a1c99353d44ae.zip
Start version 3 (#573)
* Start version 3 * Change version to 3.0.0 in Cargo.toml * Add metadata for series * Change types for signal boosts * Add start of LaTeX resume generation at Nix time * Add start of proper author tagging for posts in JSONFeed and ldjson * Convert templates to use Maud * Add start of dynamic resume generation from dhall * Make patrons page embed thumbnails TODO: * [ ] Remove the rest of the old templates * [ ] Bring in Xeact for the share on mastodon button * [ ] Site update post Signed-off-by: Xe <me@christine.website> * fix nix builds Signed-off-by: Xe Iaso <me@christine.website> * fix dhall build Signed-off-by: Xe Iaso <me@christine.website> * fix non-flakes build Signed-off-by: Xe Iaso <me@christine.website> * make new mastodon share button Signed-off-by: Xe Iaso <me@christine.website> * remove the rest of the ructe templates that I can remove Signed-off-by: Xe Iaso <me@christine.website> * refactor blogposts to its own file Signed-off-by: Xe Iaso <me@christine.website> * move resume to be generated by nix Signed-off-by: Xe Iaso <me@christine.website> * write article Signed-off-by: Xe Iaso <me@christine.website> * blog/site-update-v3: hero image Signed-off-by: Xe Iaso <me@christine.website> * add site update series tag to site updates Signed-off-by: Xe Iaso <me@christine.website> Signed-off-by: Xe <me@christine.website> Signed-off-by: Xe Iaso <me@christine.website>
Diffstat (limited to 'static')
-rw-r--r--static/js/.gitignore1
-rw-r--r--static/js/conversation.js36
-rw-r--r--static/js/hnwarn.js35
-rw-r--r--static/js/xeact-html.min.js1
-rw-r--r--static/js/xeact.min.js1
-rw-r--r--static/resume/.gitignore1
-rw-r--r--static/resume/resume.md171
7 files changed, 2 insertions, 244 deletions
diff --git a/static/js/.gitignore b/static/js/.gitignore
new file mode 100644
index 0000000..4bf7e61
--- /dev/null
+++ b/static/js/.gitignore
@@ -0,0 +1 @@
+mastodon_share_button.js
diff --git a/static/js/conversation.js b/static/js/conversation.js
deleted file mode 100644
index 0e6eea5..0000000
--- a/static/js/conversation.js
+++ /dev/null
@@ -1,36 +0,0 @@
-import { g, h, x } from "./xeact.min.js";
-import { div, span } from "./xeact-html.min.js";
-
-export const mkConversation = (who, mood, message, extraClasses = "") =>
- h("div", {className: "conversation gruvbox-dark " + extraClasses}, [
- h("div", {className: "conversation-picture conversation-smol"}, [
- h("picture", {}, [
- h("source", {type: "image/avif", srcset: `https://cdn.xeiaso.net/file/christine-static/stickers/${who.toLowerCase()}/${mood}.avif`}),
- h("source", {type: "image/webp", srcset: `https://cdn.xeiaso.net/file/christine-static/stickers/${who.toLowerCase()}/${mood}.webp`}),
- h("img", {alt: `${who} is ${mood}`, src: `https://cdn.xeiaso.net/file/christine-static/stickers/${who.toLowerCase()}/${mood}.png`})
- ])
- ]),
- h("div", {className: "conversation-chat"}, [
- h("span", {innerText: "<"}),
- h("b", {innerText: who}),
- h("span", {innerText: "> "}),
- span({}, Array.from(message))
- ])
- ]);
-
-export class Conversation extends HTMLElement {
- constructor() {
- super();
-
- let root = this.attachShadow({mode: "open"});
- let who = this.getAttribute("name");
- let mood = this.getAttribute("mood");
-
- root.appendChild(h("link", {rel: "stylesheet", href: "/css/hack.css"}));
- root.appendChild(h("link", {rel: "stylesheet", href: "/css/gruvbox-dark.css"}));
- root.appendChild(h("link", {rel: "stylesheet", href: "/css/shim.css"}));
- root.appendChild(mkConversation(who, mood, this.childNodes));
- }
-}
-
-window.customElements.define("xeblog-conv", Conversation);
diff --git a/static/js/hnwarn.js b/static/js/hnwarn.js
deleted file mode 100644
index c56bcfe..0000000
--- a/static/js/hnwarn.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import { g, x, r, t } from "./xeact.min.js";
-import { div, ahref, br } from "./xeact-html.min.js";
-import { mkConversation } from "./conversation.js";
-
-// list of regexps for potentially problematic referrers to display the nag to
-const FLAGGED_REFERRERS = [
- /^https?:\/\/((.+)\.)?reddit\.com/i,
- /^https?:\/\/news\.ycombinator\.com/i,
-];
-
-const addNag = () => {
- let root = g("refererNotice");
- x(root);
- root.appendChild(
- div(
- {style: "padding:1em"},
- mkConversation("Cadey", "coffee", [
- t("Thank you for reading this article. If you have any questions or thoughts about its contents, please comment civilly on it and remember the human on the other side of the screen. Due to facts and circumstances surrounding our fundamentally subjective reality, I may experience things differently than you do. If this is somehow unacceptable to you, please feel free to "),
- ahref("https://zombo.com", "go somewhere else"),
- t(". Have a good day and be well!")
- ], "warning"),
- br(),
- br()
- )
- );
-};
-
-r(() => {
- const ref = document.referrer;
- if (!ref) return;
-
- if (FLAGGED_REFERRERS.some(r => r.test(ref))) {
- addNag();
- }
-});
diff --git a/static/js/xeact-html.min.js b/static/js/xeact-html.min.js
deleted file mode 100644
index 8f76bfe..0000000
--- a/static/js/xeact-html.min.js
+++ /dev/null
@@ -1 +0,0 @@
-import{h,t}from"./xeact.min.js";const $tl=d=>(l,$={},s=[])=>(s.unshift(t(l)),h(d,$,s)),h1=$tl("h1"),h2=$tl("h2"),h3=$tl("h3"),h4=$tl("h4"),h5=$tl("h5"),h6=$tl("h6"),p=$tl("p"),b=$tl("b"),i=$tl("i"),u=$tl("u"),dd=$tl("dd"),dt=$tl("dt"),del=$tl("del"),sub=$tl("sub"),sup=$tl("sup"),strong=$tl("strong"),small=$tl("small"),hl=()=>h("hl"),br=()=>h("br"),img=(l,t="")=>h("img",{src:l,alt:t}),ahref=(l,$)=>h("a",{href:l},t($)),$dl=$=>(l={},t=[])=>h($,l,t),span=$dl("span"),div=$dl("div"),ul=$dl("ul"),iframe=(l,t={})=>(t.src=l,h("iframe",t));export{h1,h2,h3,h4,h5,h6,p,b,i,u,dd,dt,del,sub,sup,strong,small,hl,br,img,ahref,span,div,ul,iframe};
diff --git a/static/js/xeact.min.js b/static/js/xeact.min.js
deleted file mode 100644
index 1703a9c..0000000
--- a/static/js/xeact.min.js
+++ /dev/null
@@ -1 +0,0 @@
-const h=(e,t={},r=[])=>{let n=Object.assign(document.createElement(e),t);return Array.isArray(r)||(r=[r]),n.append(...r),n},t=e=>document.createTextNode(e),x=e=>{for(;e.lastChild;)e.removeChild(e.lastChild)},g=e=>document.getElementById(e),c=e=>document.getElementsByClassName(e),n=e=>document.getElementsByName(e),s=e=>Array.from(document.querySelectorAll(e)),u=(e="",t={})=>{let r=new URL(e,window.location.href);return Object.entries(t).forEach(e=>{var[t,e]=e;r.searchParams.set(t,e)}),r.toString()},r=e=>window.addEventListener("DOMContentLoaded",e);export{h,t,x,g,c,n,u,s,r};
diff --git a/static/resume/.gitignore b/static/resume/.gitignore
new file mode 100644
index 0000000..ce0acdb
--- /dev/null
+++ b/static/resume/.gitignore
@@ -0,0 +1 @@
+resume.pdf
diff --git a/static/resume/resume.md b/static/resume/resume.md
deleted file mode 100644
index ec1a2ca..0000000
--- a/static/resume/resume.md
+++ /dev/null
@@ -1,171 +0,0 @@
-# Xe Iaso
-
-#### Full-stack Engineer
-
-##### Ottawa, ON &emsp; [xeiaso.net][homepage]
-
-`Docker`, `Git`, `Go`, `Rust`, `C`, `Stenography`, `DevOps`, `Heroku`, `Continuous
-Integration/Delivery`, `WebAssembly`, `Lua`, `Mindfulness`, `HTTP/2`, `Alpine
-Linux`, `Ubuntu`, `Linux`, `GraphViz`, `Progressive Web Apps`, `yaml`, `SQL`,
-`Postgres`, `MySQL`, `SQLite`, `Ordained Minister`, `Dudeism`, `Tech Writing`,
-`Kubernetes`, `Command Line Apps`
-
-## Experience
-
-### Tailscale - Software Designer &emsp; <small>*2020 - present*</small>
-
-> [Tailscale][tailscale] is a zero config VPN for building secure networks.
-> Install on any device in minutes. Remote access from any network or physical
-> location.
-
-#### Highlights
-
-- Go programming
-- Nix and NixOS
-- SQL integrations
-- End-user facing blog content and customer support
-
-### Lightspeed - Expert principal en fiabilité du site &emsp; <small>*2019 - 2020*</small>
-
-(Senior Site Reliability Expert)
-
-> [Lightspeed][lightspeedhq] is a provider of retail, ecommerce and
-> point-of-sale solutions for small and medium scale businesses.
-
-#### Highlights
-
-- Migration from cloud to cloud
-- Work on the cloud platform initiative
-- Crafting reliable infrastructure for clients of customers
-- Creation of an internally consistent and extensible command line interface for
- internal tooling
-
-### Heroku - Senior Software Engineer &emsp; <small>*2017 - 2019*</small>
-
-> [Heroku][heroku] is a cloud Platform-as-a-Service (PaaS) that created the term
-> "platform as a service". Heroku currently supports several programming
-> languages that are commonly used on the web. Heroku, one of the first cloud
-> platforms, has been in development since June 2007, when it supported only the
-> Ruby programming language, but now supports Java, Node.js, Scala, Clojure,
-> Python, PHP, and Go.
-
-#### Highlights
-
-- [JVM Application Metrics](https://devcenter.heroku.com/changelog-items/1133)
-- [Go Runtime Metrics
- Agent](https://github.com/heroku/x/tree/8572eb9d3d69016dabefd342506fe9951830c358/runtime-metrics)
-- Other backend fixes and improvements on [Threshold
- Autoscaling](https://blog.heroku.com/heroku-autoscaling) and [Threshold
- Alerting](https://devcenter.heroku.com/articles/metrics#threshold-alerting)
-- [How to Make a Progressive Web App From Your Existing
- Website](https://blog.heroku.com/how-to-make-progressive-web-app)
-
-### Backplane.io - Software Engineer &emsp; <small>*2016 - 2016*</small>
-
-> [Backplane](https://backplane.io) (now defunct) was an innovative reverse reverse proxy that
-> helps administrators and startups simplify their web application routing.
-
-#### Highlights
-
-- Performance monitoring of production servers
-- Continuous deployment and development in Go
-- Learning a lot about HTTP/2 and load balancing
-
-### Pure Storage - Member of Technical Staff &emsp; <small>*2016 - 2016*</small>
-
-> Pure Storage is a Mountain View, California-based enterprise data flash storage
-> company founded in 2009. It is traded on the NYSE (PSTG).
-
-#### Highlights
-
-- Code maintenance
-
-### IMVU - Site Reliability Engineer &emsp; <small>*2015 - 2016*</small>
-
-> IMVU, inc is a company whose mission is to help people find and communicate
-> with eachother. Their main product is a 3D avatar-based chat client and its
-> surrounding infrastructure allowing creators to make content for the avatars
-> to wear.
-
-#### Highlights
-
-- Wrote up technical designs
-- Implemented technical designs on an over 800 machine cluster
-- Continuous learning of a lot of very powerful systems and improving upon them
- when it is needed
-
-### VTCSecure - Deis Consultant (contract) &emsp; <small>*2014 - 2015*</small>
-
-> VTCSecure is a company dedicated to helping with custom and standard
-> audio/video conferencing solutions. They specialize in helping the deaf and
-> blind communicate over today's infrastructure without any trouble on their end.
-
-#### Highlights
-
-- Started groundwork for a dynamically scalable infrastructure on a project for
- helping the blind see things
-- Developed a prototype of a new website for VTCSecure
-- Education on best practices using Docker and CoreOS
-- Learning Freeswitch
-
-### Crowdflower - Deis Consultant (Contract) &emsp; <small>*2014 - 2014*</small>
-
-> Crowdflower is a company that uses crowdsourcing to have its customers submit
-> tasks to be done, similar to Amazon's Mechanical Turk. CrowdFlower has over 50
-> labor channel partners, and its network has more than 5 million contributors
-> worldwide.
-
-#### Highlights
-
-- Research and development on scalable Linux deployments on AWS via CoreOS and
- Docker
-- Development of in-house tools to speed instance creation
-- Laid groundwork on the creation and use of better tools for managing large
- clusters of CoreOS and Fleet machines
-
-### OpDemand - Software Engineering Intern &emsp; <small>*2014 - 2014*</small>
-
-> OpDemand is the company behind the open source project Deis, a distributed
-> platform-as-a-service (PaaS) designed from the ground up to emulate Heroku but
-> on privately owned servers.
-
-#### Highlights
-
-- Built new base image for Deis components
-- Research and development on a new builder component
-
-## Writing
-
-> Articles listed below will be either personal or professional and do not
-> reflect the views of any company or group I am affiliated with. The writing is
-> my own, with the help of others to make things legible.
-
-- [My Blog](https://xeiaso.net/blog)
-- [NAS 101: An intro chat about Network Attached
- Storage](https://tailscale.com/blog/nas-101/)
-- [The Sisyphean Task Of DNS Client Config on
- Linux](https://tailscale.com/blog/sisyphean-dns-client-linux/)
-
-I have gotten to the front page of [Hacker News](https://news.ycombinator.com) several times. Here are a few of the comment threads:
-
-- ["Open Source" is Broken](https://news.ycombinator.com/item?id=29522941)
-- [The Surreal Horror of PAM](https://news.ycombinator.com/item?id=29167560)
-- [Systemd: The Good Parts](https://news.ycombinator.com/item?id=27175960)
-- [I Implemented /dev/printerfact in
- Rust](https://news.ycombinator.com/item?id=26845355)
-- [A Model for Identity in Software](https://news.ycombinator.com/item?id=25978511)
-- [I Put Words on This Webpage so You Have to Listen to Me now](https://news.ycombinator.com/item?id=18577758)
-- [TempleOS: 1 - Installation](https://news.ycombinator.com/item?id=19961082)
-- [WebAssembly on the Server: How System Calls Work](https://news.ycombinator.com/item?id=20066204)
-- [Olin: Defining a New Primitive for Event-Driven Services](https://news.ycombinator.com/item?id=17896307)
-
-## Ordination
-
-I am an ordained minister with the [Church of the Latter-day Dude](https://dudeism.com). This allows me to officiate religious ceremonies in at least the United States. I would be honored if you were to choose me to officiate anything for any reason. Please [contact](/contact) me if you have any questions.
-
-[homepage]: https://xeiaso.net
-[twitter]: https://twitter.com/theprincessxena
-[twit]: http://cdn-careers.sstatic.net/careers/Img/icon-twitter.png?v=b1bd58ad2034
-[heroku]: https://www.heroku.com
-[lightspeedhq]: https://www.lightspeedhq.com
-[tailscale]: https://tailscale.com/