Remove all the old stuff

This commit is contained in:
Eryn Wells 2021-10-11 09:52:07 -07:00
parent 3098ed340d
commit c6199664aa
8 changed files with 0 additions and 689 deletions

View file

View file

@ -1,26 +0,0 @@
<!DOCTYPE HTML>
<!-- vim: set tw=120 -->
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="./styles/home.css" />
<title>Eryn Wells</title>
</head>
<body>
<main id="home" class="wrapper">
<header>
<h1>Eryn Wells</h1>
</header>
<div id="content">
<p>iOS accessibility engineer. Programming language geek. Calligrapher. Occasional chef. Hopeful gardener.
Yogini. Queer. Feminist.</p>
</div>
<nav>
<a href="https://github.com/erynofwales">GitHub</a>
<a href="./resume.html">Résumé</a>
<a href="https://keybase.io/erynofwales">Keybase</a>
</nav>
</main>
</body>
</html>

View file

@ -1,70 +0,0 @@
==================================================================
https://keybase.io/erynofwales
--------------------------------------------------------------------
I hereby claim:
* I am an admin of http://erynwells.me
* I am erynofwales (https://keybase.io/erynofwales) on keybase.
* I have a public key with fingerprint 7BDF 859E 4100 1C15 1A9F 0B11 FF6C 66F5 E56D 0154
To claim this, I am signing this object:
{
"body": {
"key": {
"fingerprint": "7bdf859e41001c151a9f0b11ff6c66f5e56d0154",
"host": "keybase.io",
"key_id": "ff6c66f5e56d0154",
"uid": "e3c165de478f7fda0bc5a88a1c77bd00",
"username": "erynofwales"
},
"service": {
"hostname": "erynwells.me",
"protocol": "http:"
},
"type": "web_service_binding",
"version": 1
},
"ctime": 1397745150,
"expire_in": 157680000,
"prev": "6a5ddb20f2462bdbe33cc3f196637f955d27c6f955176982c8a4f6002f70d5ff",
"seqno": 4,
"tag": "signature"
}
with the aforementioned key, yielding the PGP signature:
-----BEGIN PGP MESSAGE-----
Version: GnuPG v2.0.22 (Darwin)
owGbwMvMwMT4Pyft69NcxhDG0we+JjEE+z9TrVZKyk+pVLKqVspOBVNpmXnpqUUF
RZl5JUpWSuZJKWkWppapJoYGBobJhqaGiZZpBkmGhmlpZslmZmmmqaZmKQaGpiZK
OkoZ+cUgHUBjkhKLU/Uy84FiQE58ZgpQFIv6UrBEqnGyoZlpSqqJuUWaeVpKokFS
smmihUWiYbI50G4DA5DC4tSivMTcVJDqosq8/LTyxJzUYqVaHSWgRFlmcirI2SDb
kRSVp+bkFOsBuTpKBUX5JfnJ+TlAmYySkgIrkMaSygKQyvLUpHioGfFJmXkpQK8D
NZSlFhVn5ucpWRkCVSaXZIIMNTS2NDc3MTU0NdBRSq0oyCxKjc8EqTA1N7MwAAKQ
NallQCPNEk1TUpKMDNKMTMyMklKSUo2Nk5ON0wwtzcyMzdMsTU1TjMyTzUAMQ3Mz
SwujZItEkzQzAwOjNHODFNO0NCWQrwrz8pWsTIDOTEwHGlmcmZ6XWFJalKpUy9XJ
JMPCwMjEwMbKBIw9HQYuTgFYnO54xP/fO0di/UeNXWuOdywK9vu1M8Ay9UHK06Bf
W/T2p61b0n1q18TvX19/Vur29Jm4+TrnT5d9qeUXuOV2TmWLT45ZVPEgbL6frXNc
gaWySLet3Ddf/62+a65+s9zf+K/Aq9VeKVVlyrM+s3eub//d+/yjmemXrJPRnA+s
DdoKJturJu38a3qZ/YNvu3Dci7S1jb022w/c89XfUfqt8dO1N69N5xqY18UJ30+e
ZXnpRN3Wpkij7BfsE4U4Pa5ZVeuFsvw5+iC5qznYK3Pr/tV26csLxdVnFH1fHKry
RerHFA7DJKuu/b4La3OW7bu+yqdu9ueDx38tOO5WPi2nq0j71vmPd/4L+x1W/TzD
OGu+1oTFm+rWetZez9KtEvww+/K1V2xVx0qijl2r/ZZdYdMhLLZ7g9LmBe0F85at
C9RjzTnPo7TuWsuTq/8l7uXe4u4LeabvP5HjX6Xsin1LeOzfnYyctu5jSWL9yuOh
4T9Xd5t7su0O8jUtOM53OX/ztYUpmrse3o1U/zlNo77+MdO9D49k/B8lb7T211F7
V9f7Py12QybzS9kAoQMq5R2xHTfVSw0fz2bpv6Nx/ODfbR1sutbMF/4ocx+9aBl0
t/npjE3uGYlbn/1hMbnfvLpiwoW7d3/n5tr1Psx1u/rr3/2zNpMPTcwQzOHSsFq5
LOLyIwXth4q/N8/5LX88+O6BI453d11g25YkkBKxaW+z0Qe1VwA=
=GRS5
-----END PGP MESSAGE-----
And finally, I am proving ownership of this host by posting or
appending to this document.
View my publicly-auditable identity here: https://keybase.io/erynofwales
==================================================================

View file

@ -1,176 +0,0 @@
<!DOCTYPE html>
<!-- vim: set tw=120: -->
<!-- Updated: 2018-03-15 -->
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="./styles/resume.css" />
<title>Résumé &mdash; Eryn Wells</title>
</head>
<body>
<main id="resume" class="wrapper">
<header>
<h1><a href="./index.html">Eryn Wells</a></h1>
</header>
<section id="experience">
<h2>Experience</h2>
<section id="apple" class="job">
<header class="flex-date">
<h3>Apple<span class="location">Cupertino, CA</span></h3>
<div class="date">2016 to present</div>
</header>
<div class="subtitle">iOS Accessibility Engineer</div>
<ul>
<li>Engineering point of contact for accessibility of SpringBoard and Messages on iOS, and the Braille Screen
Input feature of VoiceOver.</li>
<li>Implemented new guidance features in iOS 13's Camera to assist VoiceOver users with taking better, more
artistic photos.</li>
<li>Participated in developer outreach at conferences (WWDC) and onsite events to promote the value of making
software accessible and answer developer questions.</li>
<!--<li>Implemented new features and improvements to core accessibility technologies on iOS.</li>-->
<!--<li>Drove the implementation of many improvements to first party apps, and worked with app teams within Apple
to enhance their support for our platform.</li>-->
</ul>
</section>
<section id="lumos" class="job">
<header class="flex-date">
<h3>Lumos Labs<span class="location">San Francisco, CA</span></h3>
<div class="date">2014 to 2016</div>
</header>
<div class="subtitle">iOS Engineer, Lumosity</div>
<ul>
<li>Migrated from a proprietary navigation implementation in C++ to UIKit components and established patterns
for further development</li>
<li>Authored process document describing our code review and QA approval process for patches</li>
<li>Implemented 1v1 competition feature, which had a greater than 50% engagement rate</li>
</ul>
</section>
<section id="vmware" class="job">
<header>
<h3>VMware<span class="location">Palo Alto, CA</span></h3>
</header>
<div class="subtitle">Member of Technical Staff</div>
<header class="flex-date">
<h4>Fusion, Product Development</h4>
<div class="date">2012 to 2014</div>
</header>
<ul>
<li>Restructured keyboard input handling to improve code architecture and accommodate multiple clients of our
OS X UI library</li>
<li>Redesigned outdated first-run and trial experiences to improve initial impressions, and make it easier to
try Fusion</li>
<li>Exposed Cocoa configuration UI for a USB device arbitration library written in C (through our
platform-independent C++ library, and OS X-specific Objective-C library)</li>
</ul>
<header class="flex-date">
<h4>View, Desktop Infrastructure Group</h4>
<div class="date">2011 to 2012</div>
</header>
<ul>
<li>Engineered an extensive rewrite of VDT to incorporate a new deployment backend relying on VMware vCloud
Director, and to allow greater flexibility in how deployments are created</li>
<li>Implemented stabilization fixes in the View Deployment Tool (VDT), which is responsible for deploying
instances of the View product during automated testing</li>
<li>Completed and stabilized system tests designed to exercise several of Views provisioning features</li>
</ul>
</section> <!-- vmware -->
</section> <!-- experience -->
<section id="education">
<h2>Education</h2>
<header class="flex-date">
<h3>Oberlin College<span class="location">Oberlin, OH</span></h3>
<div class="date">2006 to 2010</div>
</header>
<div class="subtitle">Bachelor of Arts in Computer Science with Honors</div>
</section>
<section id="side-projects">
<div class="flex-buttons">
<h2>Side Projects</h2>
<div class="buttons">
<button class="toggle" data-category="all">All</button>
<button class="toggle" data-category="graphics">Graphics</button>
<button class="toggle" data-category="langs">PLs</button>
<button class="toggle" data-category="systems">Systems</button>
</div>
</div>
<div class="project" data-category="graphics">
<header class="flex-date">
<h4>Charles</h4>
</header>
<div class="subtitle">C++, graphics</div>
<ul>
<li>Ray tracer written in C++11, utilizing libpng for output and libyaml for scene configuration.</li>
<li>Implemented perspective projection camera model, and ray intersection algorithms for a variety of geometric
primitives.</li>
<li>Researched and implemented basic Lambert and Blinn lighting algorithms.</li>
</ul>
</div>
<div class="project" data-category="graphics">
<header class="flex-date">
<h4>Metaballs</h4>
</header>
<div class="subtitle">Cocoa/AppKit, Metal, texture generation, graphics</div>
<ul>
<li>Leveraged Metal's compute and graphics pipelines to generate a pixel perfect 2D texture based on
the <a href="https://en.wikipedia.org/wiki/Metaballs">Metaballs</a> concept.</li>
<li>Implemented a variety of color blending modes to render the metaballs in interesting ways.</li>
<li>Planned a 3D implementation using the <a href="https://en.wikipedia.org/wiki/Marching_cubes">Marching
Cubes</a> algorithm.</li>
</ul>
</div>
<div class="project" data-category="systems">
<header class="flex-date">
<h4><a href="https://github.com/erynofwales/polka">Polka</a></h4>
</header>
<div class="subtitle">C++, operating systems</div>
<ul>
<li>Created a tiny booting operating system for x86, using virtual machine platform</li>
<li>Designed object-oriented approach to system architecture, wrapping key hardware features in object
abstractions</li>
<li>Implemented interrupt handling, segmented memory management, and console I/O. Laid groundwork for future
page table architecture.</li>
</ul>
</div>
<div class="project" data-category="langs">
<header class="flex-date">
<h4><a href="https://github.com/erynofwales/sibil">Sibil</a></h4>
</header>
<div class="subtitle">Rust, programming languages</div>
<ul>
<li>Implemented lexer for a portion of the Scheme specification</li>
<li>Studied unique language features of Rust, in particular type and lifetime safety</li>
<li>Utilized Rust's built-in unit testing facilities to develop in a test-forward way</li>
</ul>
</div>
</section> <!-- side projects -->
<section id="skills">
<h2>Skills &amp; Interests</h2>
<div class="subtitle">Skills ranked in order of experience</div>
<dl>
<dt>Languages</dt>
<dd>Objective-C, C, C++, Python, Rust, Swift</dd>
<dt>Frameworks</dt>
<dd>UIKit, Cocoa, Django</dd>
<dt>Tools</dt>
<dd>Vim, Git, Xcode, Perforce, Review Board</dd>
<dt>Spoken Languages</dt>
<dd>English, Spanish, French</dd>
<dt>Conferences</dt>
<dd>WWDC 20142019, PyCon 2012, She's Geeky 2012</dd>
<dt>Non-Tech Interests</dt>
<dd>Calligraphy, music, audio synthesis, cooking, baking, yoga</dd>
</dl>
</section>
</main>
<script src="./scripts/resume.js"></script>
</body>
</html>

View file

@ -1,78 +0,0 @@
const sideProjects = {
allButton: null,
categoryButtons: [],
projects: [],
categoryStatus() {
const stat = {};
let showAll = this.allButton.classList.contains('selected');
this.categoryButtons.forEach((btn) => {
let c = btn.dataset.category;
stat[c] = showAll ? showAll : btn.classList.contains('selected');
});
return stat;
},
populate(projectsElement) {
projectsElement.querySelectorAll('button[data-category]').forEach((btn) => {
let category = btn.dataset.category;
if (category == 'all') {
sideProjects._setupAllButton(btn);
} else if (category != null) {
sideProjects.categoryButtons.push(btn);
sideProjects._setupCategoryButton(btn);
}
});
this.projects = projectsElement.querySelectorAll('.project');
},
updateProjectVisibility() {
const stat = this.categoryStatus();
this.projects.forEach((proj) => {
let category = proj.dataset.category;
if (!stat[category]) {
proj.setAttribute('hidden', '');
} else {
proj.removeAttribute('hidden');
}
});
},
_setupAllButton(btn) {
this.allButton = btn;
btn.addEventListener('click', function() {
this.classList.add('selected');
sideProjects.categoryButtons.forEach((btn) => {
btn.classList.remove('selected');
});
sideProjects.updateProjectVisibility();
});
},
_setupCategoryButton(btn) {
btn.addEventListener('click', function() {
this.classList.toggle('selected');
if (this.classList.contains('selected')) {
sideProjects.allButton.classList.remove('selected');
} else {
const stat = sideProjects.categoryStatus();
const noCategoriesSelected = Object.values(stat).every((v) => !v);
const allCategoriesSelected = Object.values(stat).every((v) => v);
if (noCategoriesSelected || allCategoriesSelected) {
sideProjects.allButton.classList.add('selected');
}
}
sideProjects.updateProjectVisibility();
});
},
};
window.addEventListener('load', function() {
const projectsElement = document.querySelector('#side-projects');
sideProjects.populate(projectsElement);
sideProjects.allButton.click();
});

View file

@ -1,30 +0,0 @@
@import url(./main.css);
html, body {
height: 100%;
}
body {
/* Flex box: center everything vertically */
align-items: center;
}
.wrapper {
text-align: center;
}
nav {
text-align: center;
}
nav a {
color: #aaa;
font-weight: 200;
margin-right: 0.75em;
-webkit-transition: color 100ms;
transition: color 100ms;
}
nav a:hover {
color: #3486ff;
}

View file

@ -1,111 +0,0 @@
@import url(https://fonts.googleapis.com/css?family=Love+Ya+Like+A+Sister);
html,
body,
div,
h1, h2, h3, h4, h5, h6,
header, footer {
margin: 0;
padding: 0;
}
body, h1, h2, h3, h4, h5, h6 {
font-family: "Helvetica Neue", "Helvetica", Arial, sans-serif;
background-color: white;
}
body {
/* Flex box: center everything horizontally */
display: flex;
justify-content: center;
font-size: 10pt;
letter-spacing: 1px;
}
main > header {
border-bottom: 1px solid #ddd;
}
h1 {
font-family: "Love Ya Like A Sister", Georgia, serif;
font-size: 4em;
margin-bottom: 0.25em;
}
h1, a:hover {
/*color: #ee2e64;*/
color: #3486ff;
}
h1 small {
font-family: Helvetica, Arial, sans-serif;
}
h1 a {
color: inherit;
}
h1 a:hover {
color: inherit;
}
p, li, dt, dd {
font-weight: 200;
line-height: 1.4em;
}
a {
color: #44accf;
text-decoration: none;
-webkit-transition: color 100ms;
transition: color 100ms;
}
nav {
border-top: 1px solid #ddd;
padding-top: 8px;
}
@media only screen and (max-width: 500px) {
header {
margin-bottom: 20px;
}
nav {
margin-top: 20px;
}
.wrapper {
width: 100%;
padding: 0 8px;
}
}
@media only screen and (min-width: 500px) {
header {
margin-bottom: 40px;
}
nav {
margin-top: 40px;
}
.wrapper {
width: 480px;
padding: 0 0 8px 0;
}
}
@media only screen and (min-width: 760px) {
body {
font-size: 13pt;
}
h1 {
font-size: 4em;
}
.wrapper {
width: 640px;
}
}

View file

@ -1,198 +0,0 @@
@import url(./main.css);
.wrapper {
margin: 8px;
}
h1 a {
text-decoration: none;
}
.job header {
margin-top: 6px;
margin-bottom: 4px;
}
#resume section:first-of-type {
margin-top: 1em;
}
h2 {
margin-bottom: 4px;
}
h3, dt {
font-size: 1.17em;
}
h3, h4 {
margin-bottom: 2px;
}
.flex-buttons, .flex-date {
display: -webkit-flex;
display: flex;
}
.flex-date {
align-items: baseline;
}
.flex-date .date {
margin-left: auto;
}
.flex-buttons {
align-items: center;
}
.flex-buttons .buttons {
margin-left: 1em;
}
.date {
font-size: 80%;
font-style: italic;
font-weight: 200;
}
.subtitle {
font-size: 85%;
font-style: italic;
}
h3 .location,
h4 .location {
font-weight: normal;
font-size: 80%;
}
h3 .location:before,
h4 .location:before {
content: ", ";
}
#resume > section {
margin-bottom: 2em;
}
ul {
clear: both;
margin: 0;
padding-left: 1.5em;
}
li {
list-style: none;
margin: 0;
text-indent: -0.80em;
}
li:before {
content: " ";
}
dt {
font-weight: 500;
margin-top: 3px;
margin-bottom: 0px;
}
dd {
margin: 0;
margin-left: 1em;
}
#side-projects button {
background-color: #f5f5f5;
border: none;
border-radius: 2px;
display: inline;
}
#side-projects button:hover,
#side-projects .selected {
background-color: #3486ff;
color: #eee;
}
@media only screen and (max-width: 500px) {
.wrapper {
margin-top: 8px;
}
}
@media only screen and (min-width: 500px) {
header {
margin-bottom: 0;
}
.wrapper {
padding-top: 0;
}
}
@media only screen and (min-width: 760px) {
.wrapper {
width: 640px;
margin: 0;
padding: 60px 0;
}
}
@media only print {
h1 {
font-family: Arial, Verdana, sans-serif;
color: black;
}
body {
margin: 0.25in 0.5in;
}
main > header {
border: none;
}
.wrapper {
margin: 0;
padding: 0;
}
.job header {
margin-bottom: 0;
}
h2 {
margin-bottom: 0px;
}
a {
color: black;
}
#side-projects .buttons {
display: none;
}
#skills dl {
margin-top: 0.5em;
}
#skills dt:before {
content: "";
display: block;
}
#skills dt:after {
content: ": ";
}
#skills dt, dd {
display: inline;
}
#skills dd {
margin-left: 0;
}
}