Resume update
It's been a couple of years since this page has been updated. It has received a cleanup---removing information that I find to be unnecessary or redundant---and some minor updates. Note that the removed phone number has not been in use for at least a couple of years; I apologize for anyone who may have tried to reach me, however unlikely that is. I am not replacing it with a working number, since I don't want unsolicited calls. I decided to update all of this in a single commit rather than commenting on and rationalizing each individual change.master
parent
c5e3931450
commit
4a510f8286
|
@ -10,9 +10,9 @@
|
||||||
<body>
|
<body>
|
||||||
<div id="header">
|
<div id="header">
|
||||||
<div class="leftcol">
|
<div class="leftcol">
|
||||||
<h1 class="name">Michael T. Gerwitz</h1>
|
<h1 class="name">Mike Gerwitz</h1>
|
||||||
<h2 class="name-subline">
|
<h2 class="name-subline">
|
||||||
Software Engineer and Activist For User Freedom
|
Software Engineer, Activist For User Freedom
|
||||||
</h2>
|
</h2>
|
||||||
</div>
|
</div>
|
||||||
<div id="infobox">
|
<div id="infobox">
|
||||||
|
@ -25,17 +25,6 @@
|
||||||
<dd>
|
<dd>
|
||||||
<a href="https://mikegerwitz.com/">https://mikegerwitz.com/</a>
|
<a href="https://mikegerwitz.com/">https://mikegerwitz.com/</a>
|
||||||
</dd>
|
</dd>
|
||||||
<dt>Phone:</dt>
|
|
||||||
<dd>
|
|
||||||
<span class="nocss">
|
|
||||||
My phone number is obscured using CSS as a precaution against
|
|
||||||
scrapers.
|
|
||||||
Since you're not using a stylesheet,
|
|
||||||
simply reverse this string: 09299096171.
|
|
||||||
Ignore the garbage that follows:
|
|
||||||
</span>
|
|
||||||
+1 <div class="phone">9<span class="phony">76</span>80</div>
|
|
||||||
</dd>
|
|
||||||
<dt>GPG:</dt>
|
<dt>GPG:</dt>
|
||||||
<dd>
|
<dd>
|
||||||
<tt>D6E9 B930 028A 6C38 F43B</tt><br />
|
<tt>D6E9 B930 028A 6C38 F43B</tt><br />
|
||||||
|
@ -99,11 +88,10 @@
|
||||||
<section id="objective">
|
<section id="objective">
|
||||||
<h2>Objective</h2>
|
<h2>Objective</h2>
|
||||||
<p>
|
<p>
|
||||||
Full-time software engineer with a passionate team of
|
Software engineer or researcher with a passionate team of
|
||||||
hackers that <a href="https://gnu.org/philosophy/free-sw.html">respect
|
hackers that <a href="https://gnu.org/philosophy/free-sw.html">respect
|
||||||
users' freedoms</a>, strive to innovate, and embrace
|
users' freedoms</a>, strive to innovate, embrace
|
||||||
challenge. Looking to at some point transition into an educator
|
challenge, and seek to make a positive social and cultural impact.
|
||||||
and/or research role in any of my areas of expertise.
|
|
||||||
</p>
|
</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
@ -111,20 +99,31 @@
|
||||||
<h2>Summary</h2>
|
<h2>Summary</h2>
|
||||||
<p>
|
<p>
|
||||||
I am a self-driven and passionate hacker with over twenty years'
|
I am a self-driven and passionate hacker with over twenty years'
|
||||||
experience in various areas of software development. I am
|
experience in many areas of software development and computer
|
||||||
a <a href="https://gnu.org/philosophy/free-sw.html">free
|
science. I am an activist for user freedom with a focus on
|
||||||
software</a> activist with a focus on user privacy and
|
user privacy and security. I seek an innovative team of
|
||||||
security; a volunteer and maintainer for
|
hackers that are passionate about their work and will challenge my
|
||||||
the <a href="https://gnu.org">GNU Project</a>; and both author and
|
wide range of skills and interests. I focus primarily on
|
||||||
contributor to various free software projects. I seek an
|
compiler construction and the creation of declarative
|
||||||
innovative team of hackers that are passionate about their work
|
domain-specific languages and abstractions to simplify development
|
||||||
and will challenge my wide range of skills. A prospective
|
and improve the correctness of complex systems. Some of my
|
||||||
employer must be willing to use and write
|
personal interests include programming language history and
|
||||||
|
theory, formal methods and proofs, logic and type theory,
|
||||||
|
cryptography, philosophy and ethics, and writing.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
The focus of my research in recent years has been pursuant to
|
||||||
|
addressing problems of practical user freedom—to make various
|
||||||
|
aspects of freedom in computing accessible to more users in
|
||||||
|
concrete and tangible ways that are meaningful to them beyond
|
||||||
|
abstract principle and philosophy.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
A prospective employer must be willing to use and write
|
||||||
<a data-print="true"
|
<a data-print="true"
|
||||||
href="https://gnu.org/philosophy/free-sw.html">free software</a>,
|
href="https://gnu.org/philosophy/free-sw.html">free software</a>,
|
||||||
and be positive toward software freedom and the free software
|
and be positive toward software freedom and the free software
|
||||||
movement. I am also interested in academic/research settings as
|
movement.
|
||||||
both a hacker and as an educator.
|
|
||||||
</p>
|
</p>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
@ -134,18 +133,18 @@
|
||||||
<dt>Ryan Specialty Group (formerly LoVullo Associates, Inc.)</dt>
|
<dt>Ryan Specialty Group (formerly LoVullo Associates, Inc.)</dt>
|
||||||
<dd class="period">March 2009–Present</dd>
|
<dd class="period">March 2009–Present</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
Principal software developer.
|
Principal software engineer.
|
||||||
Designs, develops, and maintains web applications; application
|
Designs, develops, and maintains compilers for domain-specific
|
||||||
frameworks; server software; and compilers for domain-specific
|
languages (DSLs); application frameworks; server software; and
|
||||||
languages (DSLs) for an Excess and Surplus Lines Insurance
|
web applications for an Excess and Surplus Lines Insurance
|
||||||
Agency. Most work involves developing complex online raters to provide
|
Agency. Most work involves developing complex online raters to
|
||||||
comparative insurance quotes; integrating and automating various
|
provide comparative insurance quotes; integrating and automating
|
||||||
systems; and providing a suite of development tools and DSLs to
|
various systems; and providing a suite of development tools and
|
||||||
support those systems. Responsible for developer training and
|
DSLs to support those systems. Responsible for developer
|
||||||
knowledge transfer through design discussions, documentation,
|
training and knowledge transfer through design discussions,
|
||||||
peer programming, and code review. Involved in every aspect of
|
documentation, peer programming, and code review. Involved in
|
||||||
the development process and many decisions regarding the
|
every aspect of the development process and many decisions
|
||||||
technical direction of the organization.
|
regarding the technical direction of the organization.
|
||||||
</dd>
|
</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
A number of projects written for my employer have
|
A number of projects written for my employer have
|
||||||
|
@ -155,38 +154,16 @@
|
||||||
</dd>
|
</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
<ul class="lang detail-list">
|
<ul class="lang detail-list">
|
||||||
<li>Ant</li>
|
|
||||||
<li>Autotools (Autoconf, Automake)</li>
|
|
||||||
<li>AWK (Gawk)</li>
|
|
||||||
<li>CSS 3</li>
|
|
||||||
<li>Docker</li>
|
|
||||||
<li>GitLab (self-hosted)</li>
|
|
||||||
<li>Git</li>
|
|
||||||
<li>GNU ease.js</li>
|
|
||||||
<li>GNU Emacs</li>
|
|
||||||
<li>GNU/Linux</li>
|
|
||||||
<li>Graphana</li>
|
|
||||||
<li>HTML 5</li>
|
|
||||||
<li>Java</li>
|
|
||||||
<li>JavaScript (ECMAScript 3+)</li>
|
|
||||||
<li>M4</li>
|
|
||||||
<li>Memcached</li>
|
|
||||||
<li>MongoDB</li>
|
|
||||||
<li>MSSQL</li>
|
|
||||||
<li>Neo4j</li>
|
|
||||||
<li>Node.js</li>
|
|
||||||
<li>PHP (4–7)</li>
|
|
||||||
<li>Prometheus</li>
|
|
||||||
<li>RabbitMQ</li>
|
|
||||||
<li>Rust</li>
|
<li>Rust</li>
|
||||||
<li>Sed</li>
|
<li>JavaScript (ECMAScript)</li>
|
||||||
|
<li>TypeScript</li>
|
||||||
|
<li>XSLT</li>
|
||||||
<li>Shell (POSIX, Bash)</li>
|
<li>Shell (POSIX, Bash)</li>
|
||||||
<li>SQL Anywhere</li>
|
<li>PHP</li>
|
||||||
<li>Symfony 2+</li>
|
|
||||||
<li>Texinfo</li>
|
<li>Texinfo</li>
|
||||||
<li>TeX (Plain, LaTeX2e)</li>
|
<li>TeX (Plain, LaTeX2e)</li>
|
||||||
<li>Vim</li>
|
<li>HTML</li>
|
||||||
<li>XSLT (1–3)</li>
|
<li>CSS</li>
|
||||||
</ul>
|
</ul>
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
|
@ -194,15 +171,15 @@
|
||||||
<dd class="period">March 2006–March 2009</dd>
|
<dd class="period">March 2006–March 2009</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
Worked as a freelance web developer primarily through vWorker
|
Worked as a freelance web developer primarily through vWorker
|
||||||
(previously RentACoder) with a 10/10 rating, ranked higher than 99% of
|
(previously RentACoder).
|
||||||
all other developers.
|
|
||||||
</dd>
|
</dd>
|
||||||
</dl>
|
</dl>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="projects">
|
<section id="projects">
|
||||||
|
<div class="sec-header">
|
||||||
<h2>Projects</h2>
|
<h2>Projects</h2>
|
||||||
<p class="nopgbrk">
|
<p>
|
||||||
Listed here are both my own projects and those to which I have
|
Listed here are both my own projects and those to which I have
|
||||||
made notable contributions.
|
made notable contributions.
|
||||||
I have many miscellaneous projects and scripts that are not
|
I have many miscellaneous projects and scripts that are not
|
||||||
|
@ -211,9 +188,10 @@
|
||||||
href="https://mikegerwitz.com/projects">Projects page</a>
|
href="https://mikegerwitz.com/projects">Projects page</a>
|
||||||
for a full list.
|
for a full list.
|
||||||
</p>
|
</p>
|
||||||
|
</div>
|
||||||
<dl data-print-links="true">
|
<dl data-print-links="true">
|
||||||
<dt><a href="https://gnu.org/s/easejs">GNU ease.js</a></dt>
|
<dt><a href="https://gnu.org/s/easejs">GNU ease.js</a></dt>
|
||||||
<dd class="period">November 2010–Present</dd>
|
<dd class="period">November 2010–2017</dd>
|
||||||
<dd class="type">Author</dd>
|
<dd class="type">Author</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
A Classical Object-Oriented framework for JavaScript, intended to
|
A Classical Object-Oriented framework for JavaScript, intended to
|
||||||
|
@ -236,7 +214,9 @@
|
||||||
also my paper <a href="http://mikegerwitz.com/papers/coope"
|
also my paper <a href="http://mikegerwitz.com/papers/coope"
|
||||||
class="title">Classifical Object-Oriented Programming with
|
class="title">Classifical Object-Oriented Programming with
|
||||||
ECMAScript</a>. Copyright has been assigned to the Free Software
|
ECMAScript</a>. Copyright has been assigned to the Free Software
|
||||||
Foundation.
|
Foundation. I no longer maintain this project, and recommend
|
||||||
|
TypeScript in its place, which provides most of ease.js'
|
||||||
|
features and is a compiler rather than a framework.
|
||||||
</dd>
|
</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
<ul class="lang detail-list">
|
<ul class="lang detail-list">
|
||||||
|
@ -257,30 +237,26 @@
|
||||||
<dd class="type">Author</dd>
|
<dd class="type">Author</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
Data collection and processing framework developed at LoVullo
|
Data collection and processing framework developed at LoVullo
|
||||||
Associates to handle hundreds of complex conditional inputs for
|
Associates to handle thousands of complex conditional inputs for
|
||||||
even more complex comparative rating systems.
|
even more complex comparative rating systems.
|
||||||
It contains a powerful type and validation system and
|
|
||||||
controls inputs via predicates over a complex graph of
|
|
||||||
classifications.
|
|
||||||
Programs are defined using a declarative DSL which compiles into
|
Programs are defined using a declarative DSL which compiles into
|
||||||
JavaScript,
|
JavaScript.
|
||||||
drastically simplifying development and maintenance.
|
|
||||||
The client is a web application which integrates and shares code
|
The client is a web application which integrates and shares code
|
||||||
with a RESTful server.
|
with the server using Node.js.
|
||||||
It also contains its own tools for debugging and introspection.
|
It also contains its own tools for debugging and introspection.
|
||||||
</dd>
|
</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
This project integrates tightly with TAME for its classification
|
This project integrates tightly with TAME for its classification
|
||||||
system.
|
system and depenedency analysis.
|
||||||
</dd>
|
</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
<ul class="lang detail-list">
|
<ul class="lang detail-list">
|
||||||
|
<li>Rust</li>
|
||||||
|
<li>XSLT 2–3</li>
|
||||||
<li>JavaScript (ECMAScript 2016)</li>
|
<li>JavaScript (ECMAScript 2016)</li>
|
||||||
<li>Node.js</li>
|
<li>Node.js</li>
|
||||||
<li>XSLT 2–3</li>
|
|
||||||
<li>Shell (Bash)</li>
|
<li>Shell (Bash)</li>
|
||||||
<li>Autotools (Autoconf, Automake)</li>
|
<li>Autotools (Autoconf, Automake)</li>
|
||||||
<li>Rust</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
|
@ -291,10 +267,9 @@
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
This system was developed at LoVullo Associates to handle the
|
This system was developed at LoVullo Associates to handle the
|
||||||
complexity of comparative insurance rating systems.
|
complexity of comparative insurance rating systems.
|
||||||
It is a domain-specific language (DSL) that itself
|
It is a domain-specific language (DSL) that is itself
|
||||||
encourages,
|
a metalanguage through the use of templates,
|
||||||
through the use of templates,
|
encouraging the creation of specialized sub-DSLs.
|
||||||
the creation of sub-DSLs.
|
|
||||||
TAME processes only numerical input and output,
|
TAME processes only numerical input and output,
|
||||||
driven by higher-order predicates.
|
driven by higher-order predicates.
|
||||||
Calculations and predicates are written declaratively without
|
Calculations and predicates are written declaratively without
|
||||||
|
@ -309,14 +284,16 @@
|
||||||
LaTeX, dependency graph output, and others),
|
LaTeX, dependency graph output, and others),
|
||||||
linkers,
|
linkers,
|
||||||
and supporting tools.
|
and supporting tools.
|
||||||
The input grammar is XML,
|
The input grammar is embedded within XML,
|
||||||
and the majority of the project
|
and the majority of the project
|
||||||
(including the macro processor, compilers, and linkers)
|
(including the macro processor, compilers, and linkers)
|
||||||
is written in XSLT.
|
is written in XSLT.
|
||||||
|
The project is undergoing a rewrite in Rust (TAMER).
|
||||||
</dd>
|
</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
<ul class="lang detail-list">
|
<ul class="lang detail-list">
|
||||||
<li>XSLT 2</li>
|
<li>Rust</li>
|
||||||
|
<li>XSLT 2–3</li>
|
||||||
<li>JavaScript (ECMAScript 2016)</li>
|
<li>JavaScript (ECMAScript 2016)</li>
|
||||||
<li>AWK</li>
|
<li>AWK</li>
|
||||||
<li>Sed</li>
|
<li>Sed</li>
|
||||||
|
@ -358,8 +335,6 @@
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
<ul class="lang detail-list">
|
<ul class="lang detail-list">
|
||||||
<li>C (ANSI C, C11)</li>
|
<li>C (ANSI C, C11)</li>
|
||||||
<li>GDB</li>
|
|
||||||
<li>GNU Make</li>
|
|
||||||
<li>Gnulib (Test Headers)</li>
|
<li>Gnulib (Test Headers)</li>
|
||||||
</ul>
|
</ul>
|
||||||
</dd>
|
</dd>
|
||||||
|
@ -367,11 +342,11 @@
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
<section id="articles">
|
<section id="articles">
|
||||||
<h2>Articles, Talks, and Publications</h2>
|
<h2>Articles, Talks, and Papers</h2>
|
||||||
<p>
|
<p>
|
||||||
I am an avid technical writer and activist; my writings are
|
I am an avid technical writer and activist; my writings are
|
||||||
available
|
available
|
||||||
<a data-print="true" href="http://mikegerwitz.com/papers">on my
|
<a data-print="true" href="/papers">on my
|
||||||
personal website</a>. This section highlights the most
|
personal website</a>. This section highlights the most
|
||||||
notable. <span class="print-only">Direct links are provided in the
|
notable. <span class="print-only">Direct links are provided in the
|
||||||
online version of this résumé.</span>
|
online version of this résumé.</span>
|
||||||
|
@ -379,7 +354,7 @@
|
||||||
|
|
||||||
<dl>
|
<dl>
|
||||||
<dt>
|
<dt>
|
||||||
<a href="http://mikegerwitz.com/papers/tpl.pdf">
|
<a href="/papers/tpl.pdf">
|
||||||
The TAME Programming Language Living Document</a></dt>
|
The TAME Programming Language Living Document</a></dt>
|
||||||
<dd class="period">May 2021–Present</dd>
|
<dd class="period">May 2021–Present</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
|
@ -390,7 +365,7 @@
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
<a href="https://mikegerwitz.com/talks">
|
<a href="/talks">
|
||||||
Adopting Free Software Ideals</a></dt>
|
Adopting Free Software Ideals</a></dt>
|
||||||
<dd class="period">March 2021</dd>
|
<dd class="period">March 2021</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
|
@ -400,7 +375,7 @@
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
<a href="https://mikegerwitz.com/talks">
|
<a href="/talks">
|
||||||
Computational Symbiosis: Methods That Meld Mind and Machine</a></dt>
|
Computational Symbiosis: Methods That Meld Mind and Machine</a></dt>
|
||||||
<dd class="period">March 2019</dd>
|
<dd class="period">March 2019</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
|
@ -411,7 +386,17 @@
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
<a href="https://mikegerwitz.com/talks">
|
<a href="/2019/02/ghcq-exceptional-access-e2ee-decentralization-reproducible">
|
||||||
|
GHCQ’s “Exceptional Access”, End-To-End Encryption,
|
||||||
|
Decentralization, and Reproducible Builds</a></dt>
|
||||||
|
<dd class="period">Feb 2019</dd>
|
||||||
|
<dd class="desc">
|
||||||
|
Refutation of the GHCQ's “Principles for a More Informed
|
||||||
|
Exceptional Access Debate”.
|
||||||
|
</dd>
|
||||||
|
|
||||||
|
<dt>
|
||||||
|
<a href="/talks">
|
||||||
The Ethics Void</a></dt>
|
The Ethics Void</a></dt>
|
||||||
<dd class="period">March 2018</dd>
|
<dd class="period">March 2018</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
|
@ -421,7 +406,7 @@
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
<a href="https://mikegerwitz.com/talks">
|
<a href="/talks">
|
||||||
The Surreptitious Assault On Privacy, Security, and Freedom</a></dt>
|
The Surreptitious Assault On Privacy, Security, and Freedom</a></dt>
|
||||||
<dd class="period">March 2017</dd>
|
<dd class="period">March 2017</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
|
@ -432,7 +417,7 @@
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
<a href="https://mikegerwitz.com/talks">
|
<a href="/talks">
|
||||||
Restore Online Freedom!</a></dt>
|
Restore Online Freedom!</a></dt>
|
||||||
<dd class="period">March 2016</dd>
|
<dd class="period">March 2016</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
|
@ -454,7 +439,7 @@
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
<a href="http://mikegerwitz.com/2013/06/National-Uproar-A-Comprehensive-Overview-of-the-NSA-Leaks-and-Revelations">
|
<a href="/2013/06/national-uproar-a-comprehensive-overview-of-the-nsa-leaks-and-revelations">
|
||||||
National Uproar: A Comprehensive Overview of the NSA Leaks and Revelations</a></dt>
|
National Uproar: A Comprehensive Overview of the NSA Leaks and Revelations</a></dt>
|
||||||
<dd class="period">June 2013</dd>
|
<dd class="period">June 2013</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
|
@ -467,7 +452,7 @@
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
<a href="http://mikegerwitz.com/papers/git-horror-story">
|
<a href="/2012/05/a-git-horror-story-repository-integrity-with-signed-commits">
|
||||||
A Git Horror Story: Repository Integrity With Signed Commits</a></dt>
|
A Git Horror Story: Repository Integrity With Signed Commits</a></dt>
|
||||||
<dd class="period">May 2012</dd>
|
<dd class="period">May 2012</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
|
@ -488,7 +473,7 @@
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
<a href="http://mikegerwitz.com/papers/coope">
|
<a href="/papers/coope.pdf">
|
||||||
Classical Object-Oriented Programming with ECMAScript</a></dt>
|
Classical Object-Oriented Programming with ECMAScript</a></dt>
|
||||||
<dd class="period">February 2012–April 2012</dd>
|
<dd class="period">February 2012–April 2012</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
|
@ -500,27 +485,32 @@
|
||||||
<a href="https://www.gnu.org/software/easejs/manual/Implementation-Details.html">the
|
<a href="https://www.gnu.org/software/easejs/manual/Implementation-Details.html">the
|
||||||
implementation used by GNU ease.js</a>. Paper is incomplete.
|
implementation used by GNU ease.js</a>. Paper is incomplete.
|
||||||
</dd>
|
</dd>
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
These are from my early teenage years:
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<dl>
|
||||||
<dt>
|
<dt>
|
||||||
<a href="http://www.pcmag.com/article2/0,2817,1586638,00.asp">
|
<a href="http://web.archive.org/web/20080507155153/http://www.pcmag.com/article2/0,2817,1586638,00.asp">
|
||||||
PC Magazine Mention—iBrowser</a></dt>
|
PC Magazine Mention—iBrowser</a></dt>
|
||||||
<dd class="period">June 2004</dd>
|
<dd class="period">June 2004</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
Mention in PC Magazine for a project named iBrowser, the world's
|
Mention in PC Magazine at the age of fourteen for a project
|
||||||
first voice recognition web browser. Created with a remote friend
|
named iBrowser, a voice recognition web browser. Created with a
|
||||||
at the age of fourteen. Personally handled voice recognition,
|
remote friend. Personally handled voice recognition, popup
|
||||||
popup blocker, and most other aspects of development.
|
blocker, and most other aspects of development.
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
<a href="http://www.planet-source-code.com/vb/contest/AllTimeHallOfFame.asp?lngWId=1">
|
<a href="http://web.archive.org/web/20040213235111/http://www.planet-source-code.com/vb/contest/AllTimeHallOfFame.asp?lngWId=1">
|
||||||
Planet Source Code Superior Coding Contest Winner</a></dt>
|
Planet Source Code Superior Coding Contest Winner</a></dt>
|
||||||
<dd class="period">February 2003</dd>
|
<dd class="period">February 2003</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
Received Planet Source Code's Superior Coding Contest Award for
|
Received Planet Source Code's Superior Coding Contest Award for
|
||||||
the voice recognition tutorial
|
the voice recognition tutorial "Talk To Your Computer"
|
||||||
<a href="http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=43096&lngWId=1">
|
at the age of thirteen.
|
||||||
"Talk To Your Computer"</a> at the age of thirteen.
|
|
||||||
</dd>
|
</dd>
|
||||||
</dl>
|
</dl>
|
||||||
</section>
|
</section>
|
||||||
|
@ -533,14 +523,13 @@
|
||||||
GNU Project</a></dt>
|
GNU Project</a></dt>
|
||||||
<dd class="period">December 2013–Present</dd>
|
<dd class="period">December 2013–Present</dd>
|
||||||
<dd class="desc">
|
<dd class="desc">
|
||||||
I am the author and maintainer
|
I serve on the <a href="https://www.gnu.org/contact/gnu-advisory">GNU
|
||||||
of <a href="https://gnu.org/s/easejs">GNU ease.js</a>; one of
|
Advisory Committie (GAC)</a>; was previously one of
|
||||||
the <a href="https://www.gnu.org/help/evaluation.html">GNU software
|
the <a href="https://www.gnu.org/help/evaluation.html">GNU software
|
||||||
evaluators</a> that review software offered to GNU; exercise
|
evaluators</a> that review software offered to GNU; and used to exercise
|
||||||
various administrative duties; and participate in general
|
various administrative duties (GNUisance). I participate in
|
||||||
discussions regarding the GNU Project as a whole.
|
general activism pursuant to the goals of GNU, including
|
||||||
I participate in general activism pursuant to the goals of GNU,
|
addressing the issue
|
||||||
including addressing the issue
|
|
||||||
of <a data-print="true" href="https://www.gnu.org/s/easejs/whyfreejs.html">non-free
|
of <a data-print="true" href="https://www.gnu.org/s/easejs/whyfreejs.html">non-free
|
||||||
JavaScript</a>. Notably, I worked with Sytse Sijbrandij (GitLab
|
JavaScript</a>. Notably, I worked with Sytse Sijbrandij (GitLab
|
||||||
B.V. CEO)
|
B.V. CEO)
|
||||||
|
@ -548,7 +537,7 @@
|
||||||
license all GitLab EE JavaScript</a>, and worked on the
|
license all GitLab EE JavaScript</a>, and worked on the
|
||||||
<a href="https://www.gnu.org/software/repo-criteria.html">GNU
|
<a href="https://www.gnu.org/software/repo-criteria.html">GNU
|
||||||
ethical repository criteria</a>.
|
ethical repository criteria</a>.
|
||||||
Much of my free time is dedicated toward GNU volunteer work.
|
Much of my free time was historically dedicated toward GNU volunteer work.
|
||||||
</dd>
|
</dd>
|
||||||
|
|
||||||
<dt>
|
<dt>
|
||||||
|
@ -593,207 +582,6 @@
|
||||||
</dd>
|
</dd>
|
||||||
</dl>
|
</dl>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
|
||||||
<section id="skills">
|
|
||||||
<h2>Skills, Studies, and Interests</h2>
|
|
||||||
<p>
|
|
||||||
Each item below is ordered by experience, descending.
|
|
||||||
Languages actively used are those that I most often write projects in,
|
|
||||||
either personally or at work.
|
|
||||||
Infrequent languages are those that I have used to write or
|
|
||||||
modify software, but do not have intimate knowledge
|
|
||||||
of. Date, if present, indicates last year used.
|
|
||||||
</p>
|
|
||||||
<dl>
|
|
||||||
<dt>Languages—Actively Used</dt>
|
|
||||||
<dd class="desc">
|
|
||||||
<ul class="detail-list">
|
|
||||||
<li>(X)HTML
|
|
||||||
<ul>
|
|
||||||
<li>XHTML 1.1</li>
|
|
||||||
<li>HTML 5</li></ul></li>
|
|
||||||
<li>CSS
|
|
||||||
<ul>
|
|
||||||
<li>2</li>
|
|
||||||
<li>3</li></ul></li>
|
|
||||||
<li>PHP
|
|
||||||
<ul>
|
|
||||||
<li>4–7</li></ul></li>
|
|
||||||
<li>JavaScript
|
|
||||||
<ul>
|
|
||||||
<li>ECMAScript 3+</li></ul></li>
|
|
||||||
<li>Shell
|
|
||||||
<ul>
|
|
||||||
<li>POSIX</li>
|
|
||||||
<li>Bash</li></ul></li>
|
|
||||||
<li>C
|
|
||||||
<ul>
|
|
||||||
<li>ANSI</li>
|
|
||||||
<li>C89</li>
|
|
||||||
<li>C11</li></ul></li>
|
|
||||||
<li>TeX
|
|
||||||
<ul>
|
|
||||||
<li>Plain</li>
|
|
||||||
<li>LaTeX2e</li></ul></li>
|
|
||||||
<li>AWK
|
|
||||||
<ul>
|
|
||||||
<li>POSIX</li>
|
|
||||||
<li>Gawk</li></ul></li>
|
|
||||||
<li>Lisp
|
|
||||||
<ul>
|
|
||||||
<li>Elisp</li>
|
|
||||||
<li>RnRS Scheme</li>
|
|
||||||
<li>Guile Scheme</li>
|
|
||||||
<li>Racket</li>
|
|
||||||
<li>Chez Scheme</li></ul></li>
|
|
||||||
<li>XSLT
|
|
||||||
<ul>
|
|
||||||
<li>1–3</li></ul></li>
|
|
||||||
<li>Texinfo
|
|
||||||
<li>SQL
|
|
||||||
<ul>
|
|
||||||
<li>MySQL</li>
|
|
||||||
<li>SQLAnywhere</li>
|
|
||||||
<li>MSSQL</li></ul></li>
|
|
||||||
<li>Rust</li>
|
|
||||||
<li>Lua</li>
|
|
||||||
<li>M4</li>
|
|
||||||
</ul>
|
|
||||||
</dd>
|
|
||||||
|
|
||||||
<dt>Languages—Infrequent</dt>
|
|
||||||
<dd class="desc">
|
|
||||||
<ul class="detail-list">
|
|
||||||
<li>C++<sup>(2005)</sup></li>
|
|
||||||
<li>Scala<sup>(2012)</sup></li>
|
|
||||||
<li>Java<sup>(2014)</sup></li>
|
|
||||||
<li>Clojure<sup>(2014)</sup></li>
|
|
||||||
<li>x86{,_64} ASM<sup>(2013)</sup></li>
|
|
||||||
<li>Haskell<sup>(2014)</sup></li>
|
|
||||||
<li>Python<sup>(2006)</sup></li>
|
|
||||||
<li>Ruby<sup>(2014)</sup></li>
|
|
||||||
<li>Perl<sup>(2009)</sup></li>
|
|
||||||
<li>Troff<sup>(2011)</sup></li>
|
|
||||||
<li>MOS 6502 ASM<sup>(2013)</sup></li>
|
|
||||||
</ul>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
There are a few languages that I no longer use because they are
|
|
||||||
either <a href="http://gnu.org/philosophy/free-sw.html">non-free</a>
|
|
||||||
or focus on non-free operating systems.
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<dl>
|
|
||||||
<dt>Languages—Defunct</dt>
|
|
||||||
<dd class="desc">
|
|
||||||
<ul class="detail-list">
|
|
||||||
<li>ASP<sup>(2004)</sup></li>
|
|
||||||
<li>Visual Basic<sup>(2006)</sup>
|
|
||||||
<ul>
|
|
||||||
<li>6</li>
|
|
||||||
<li>.NET</li></ul></li>
|
|
||||||
<li>BASIC<sup>(2005)</sup>
|
|
||||||
<ul>
|
|
||||||
<li>QBASIC</li></ul></li>
|
|
||||||
</ul>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
Studies differ from interests in that the former are actively
|
|
||||||
or have been in the past researched; whereas the latter are
|
|
||||||
occasionally visited, but otherwise pending formal study.
|
|
||||||
</p>
|
|
||||||
<dl>
|
|
||||||
<dt>Studies—Computer Science</dt>
|
|
||||||
<dd class="desc">
|
|
||||||
<ul class="detail-list">
|
|
||||||
<li>Compilers</li>
|
|
||||||
<li>Type Theory</li>
|
|
||||||
<li>Programming Languages
|
|
||||||
<ul>
|
|
||||||
<li>Theory</li>
|
|
||||||
<li>History</li></ul></li>
|
|
||||||
<li>Security
|
|
||||||
<ul>
|
|
||||||
<li>Domain-Specific</li>
|
|
||||||
<li>Implicit In Other Skills/Studies</li></ul></li>
|
|
||||||
<li>Cryptography
|
|
||||||
<ul>
|
|
||||||
<li>Implementation</li>
|
|
||||||
<li>Algorithms</li></ul></li>
|
|
||||||
<li>Combinatory Logic
|
|
||||||
<ul>
|
|
||||||
<li>Point-Free Programming</li>
|
|
||||||
<li>Concatenative and Stack-Based Languages</li>
|
|
||||||
<li>Church-Turing</li></ul></li>
|
|
||||||
<li>Logic
|
|
||||||
<ul>
|
|
||||||
<li>Proof Theory</li>
|
|
||||||
<li>Propositional</li>
|
|
||||||
<li>Predicate</li>
|
|
||||||
<li>Higher-order</li>
|
|
||||||
<li>Modal</li></ul></li>
|
|
||||||
<li>Linear Algebra</li>
|
|
||||||
<li>Graph Theory</li>
|
|
||||||
</ul>
|
|
||||||
</dd>
|
|
||||||
|
|
||||||
<dt>Studies—Legal and Political</dt>
|
|
||||||
<dd class="desc">
|
|
||||||
<ul class="detail-list">
|
|
||||||
<li>Software Licensing
|
|
||||||
<ul>
|
|
||||||
<li>GNU General Public License and variants</li>
|
|
||||||
<li>Various licenses</li></ul></li>
|
|
||||||
<li>Copyright
|
|
||||||
<ul>
|
|
||||||
<li>Law</li>
|
|
||||||
<li>Fair Use</li>
|
|
||||||
<li>Copyleft</li></ul></li>
|
|
||||||
<li>Privacy
|
|
||||||
<ul>
|
|
||||||
<li>Cryptography</li>
|
|
||||||
<li>Law</li></ul></li>
|
|
||||||
<li>Surveillance
|
|
||||||
<ul>
|
|
||||||
<li>NSA</li>
|
|
||||||
<li>GHCQ</li>
|
|
||||||
<li>Five Eyes</li>
|
|
||||||
<li>FISA</li>
|
|
||||||
<li>Domestic</li>
|
|
||||||
<li>Snowden</li>
|
|
||||||
<li>Court Cases</li></ul></li>
|
|
||||||
<li>Patents
|
|
||||||
<ul>
|
|
||||||
<li>Court Cases</li>
|
|
||||||
<li>Reform</li></ul></li>
|
|
||||||
</ul>
|
|
||||||
</dd>
|
|
||||||
|
|
||||||
<dt>Studies—Miscellaneous</dt>
|
|
||||||
<dd class="desc">
|
|
||||||
<ul class="detail-list">
|
|
||||||
<li>History of Computing
|
|
||||||
<ul>
|
|
||||||
<li>Unix / Multics / Lisp Machines</li>
|
|
||||||
<li>MIT</li>
|
|
||||||
<li>Bell Labs</li>
|
|
||||||
<li>Hacking</li>
|
|
||||||
<li>Historical Figures</li>
|
|
||||||
<li>Machines</li></ul></li>
|
|
||||||
<li>Typesetting</li>
|
|
||||||
<li>English Writing
|
|
||||||
<ul>
|
|
||||||
<li>Predominantly American</li></ul></li>
|
|
||||||
</ul>
|
|
||||||
</dd>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
</section>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="misc">
|
<div id="misc">
|
||||||
|
@ -803,20 +591,20 @@
|
||||||
</div>
|
</div>
|
||||||
<div id="footer">
|
<div id="footer">
|
||||||
<p class="copyright">
|
<p class="copyright">
|
||||||
Copyright © 2021 <a href="https://mikegerwitz.com/">Mike Gerwitz</a>
|
Copyright © 2023 <a href="https://mikegerwitz.com/">Mike Gerwitz</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div id="footer-print" class="print-only">
|
<div id="footer-print" class="print-only">
|
||||||
<p>
|
<p>
|
||||||
This document is a print version of my online résumé; it has been
|
This document is a print version of my online résumé; it has been
|
||||||
modified to display certain information inline, whilst removing
|
modified to display certain information inline, while removing
|
||||||
other information not suitable for paper. For the complete
|
other information not suitable for paper. For the complete
|
||||||
résumé, please visit:
|
résumé, please visit:
|
||||||
<br />
|
<br />
|
||||||
https://mikegerwitz.com/docs/about/resume
|
https://mikegerwitz.com/about/resume
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
Copyright © 2021 Mike Gerwitz
|
Copyright © 2023 Mike Gerwitz
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
|
|
|
@ -33,8 +33,11 @@ abbr {
|
||||||
margin-top: 2ex;
|
margin-top: 2ex;
|
||||||
}
|
}
|
||||||
|
|
||||||
.pgbrk {
|
div.sec-header {
|
||||||
page-break-before: always;
|
break-inside: avoid;
|
||||||
|
}
|
||||||
|
dt, dd.perod, dd.type {
|
||||||
|
break-inside: avoid;
|
||||||
}
|
}
|
||||||
|
|
||||||
.print-only {
|
.print-only {
|
||||||
|
|
|
@ -124,7 +124,7 @@ h1 { font-size: 2.2em; }
|
||||||
#content dl > dd.desc > ul.lang::before {
|
#content dl > dd.desc > ul.lang::before {
|
||||||
display: inline;
|
display: inline;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
content: 'Languages/Tools: ';
|
content: 'Principal Languages/Tools: ';
|
||||||
}
|
}
|
||||||
|
|
||||||
/* using li nodes rather than ul itself rids extra whitespace */
|
/* using li nodes rather than ul itself rids extra whitespace */
|
||||||
|
|
Loading…
Reference in New Issue