Objective
++ Full-time system, server, and/or web application software developer + with a passionate team of hackers + that respect users' + freedoms, strive to innovate, and embrace challenge. +
+ +Summary
++ I am a self-driven and passionate hacker with sixteen years' + experience in various areas of software development. I am + a free + software activist, a volunteer and maintainer for + the GNU Project, and contribute to + various free software projects. I am seeking a challenging and + innovative team of hackers that are also passionate about their work + and will take advantage of my wide range of + skills. A prospective employer must be willing to + produce free + software. +
+ +Experience
+-
+
- LoVullo Associates, Inc. +
- March 2009–Present +
- + Designs, develops, and maintains web applications, application + frameworks, server software, and compilers for domain-specific + languages (DSLs) for an Excess and Surplus Lines Insurance + Agency. Most work involves developing complex online raters to provide + comparative insurance quotes, integrating and automating various + systems, and providing a suite of development tools and DSLs to + support those systems. Also responsible for developer training + and extensive knowledge transfer through design discussions, + documentation, peer programming, and code review. + +
- + Some code written for LoVullo Associates has + been released as free + software, and I continue to liberate more. I drive this + effort almost exclusively. + + +
- Freelance Web Developer +
- March 2006–March 2009 +
- + Worked as a freelance web developer primarily through vWorker + (previously RentACoder) with a 10/10 rating, ranked higher than 99% of + all other coders. + + +
- Earth's Magic, Inc. +
- May 2006–September 2007 +
- + Created an online pregnancy journal website for a client based off of + the popular bulletin board software phpBB. + +
Education
+-
+
- Self Educated +
- 2000–Present +
- + Primarily self educated: learning through experimentation; hacking + free software; interaction with others; and extensive reading and + research. + + +
- Clarence High School +
- September 2002–June 2007 +
- + Attended technology and programming courses with pre-existing + knowledge that surpassed that of the instructors' and vastly + exceeded class scope. Helped to instruct students when instructor + was unavailable, and aided in the answering of any questions. + +
Projects
++ Listed here are my own projects, as well as projects to which I have + contributed notably. I have many miscellaneous playthings that are + not listed here; see + my GitLab profile for a + full list. +
+-
+
- GNU ease.js +
- November 2010–Present +
- Author +
- + A Classical Object-Oriented framework for JavaScript, intended to + eliminate boilerplate code and “ease” the transition + into JavaScript from other Object-Oriented languages. Features + include simple and intuitive class definitions; classical + inheritance; abstract classes and methods; interfaces; access + modifiers; static and constant members; and traits as + mixins. Became a GNU project in December of 2013. + +
- + GNU ease.js + was + created as a personal project to simplify development of a + project at LoVullo Associates, and supports ECMAScript 3 browsers + (as far back is IE + 5.5). Implementation + details and rationale are documented extensively in the manual + and comprehensive test cases. See + also Classifical Object-Oriented Programming with + ECMAScript. Copyright has been assigned to the Free Software + Foundation. + +
-
+
-
+
- JavaScript (ECMAScript 3, ECMAScript 5) +
- Shell (POSIX, Bash) +
- Autotools (Autoconf, Automake) +
- Texinfo +
- AWK +
- Sed +
- Git +
- LibreJS-Compatible +
+
+ - GNU Screen +
- November 2013–Present +
- Contributor +
- + Refactoring and cleanup of window message system and related code; + creation of supporting abstractions; introduced unit + tests. Working on integrating GNU Guile. + +
- + This began as a cooperative effort between myself and Amadeusz + Sławiński to resurrect the stalled development of GNU + Screen. Amadeusz is now a co-maintainer of the project and + my + changes have been merged upstream. + +
-
+
-
+
- C (ANSI C, C11) +
- GDB +
- GNU Make +
- GNU Guile +
- Gnulib (Test Headers) +
+
+ - Git Shortmaps +
- December 2013–Present +
- Author +
- + Concise (mostly one- and two-character), user-configurable + commands for Git with support for Bash tab completion. Developed + to drastically reduce tedious and frustrating repetitiveness of + common Git commands. + +
-
+
-
+
- Shell (Bash) +
- Git +
+
+ - shspec +
- May 2014–Present +
- Author +
- + Behavior-driven development (BDD) for Shell. Project is incomplete. + +
-
+
-
+
- Shell (Bash) +
- Autotools (Autoconf, Automake) +
+
Articles, Awards, and Publications
++ I am an avid technical writer and activist; my writings are + available + on my + personal website. This section highlights the most + notable. Direct links are provided in the + online version of this résumé. +
+ +-
+
- + + Gitlab, Gitorious, and Free Software +
- May 2015 +
- + Guest post written at the request of GitLab B.V. CEO Sytse + Sijbrandij to both explain the controversy surrounding GitLab's + acquisition of Gitorious, and to celebrate our joint effort to + license all of GibLab EE's JavaScript code—and any code that + generates it—as free software. + + +
- + + National Uproar: A Comprehensive Overview of the NSA Leaks and Revelations +
- June 2013 +
- + An extensive article with over sixty references written just after + the Guardian released the Verizon Order for the collection of + telephone metadata, acquired by the now-known Edward + Snowden. Maintained first or second ranking on Google for the + search term “NSA leak summary” for days, and to this + day is still within the top fifteen search results. + + +
- + + A Git Horror Story: Repository Integrity With Signed Commits +
- May 2012 +
- + An in-depth article on Git commit signing written shortly after + support was added to Git. It + maintained the + top rank on HackerNews for the entire business day, largely + introducing the Git commit signing concept to the + community. Widely cited, notably + by Metasploit, + Whonix, + Nmap, + Atlassian, + and + the CryptoCall + project thesis. References provided + in online résumé. + + +
- + + Classical Object-Oriented Programming with ECMAScript +
- February 2012–April 2012 +
- + A paper + exploring methods of implementing classical object-oriented + programming in ECMAScript 3. This paper describes common + patterns; addresses performance concerns; explores alternatives, + problems, and exploitations; and begins discussing the + the + implementation used by GNU ease.js. Paper is incomplete. + + +
- + + PC Magazine Mention—iBrowser +
- June 2004 +
- + Mention in PC Magazine for a project named iBrowser, the world's + first voice recognition web browser. Created with a remote friend + at the age of fourteen. Personally handled voice recognition, + popup blocker, and most other aspects of development. + + +
- + + Planet Source Code Superior Coding Contest Winner +
- February 2003 +
- + Received Planet Source Code's Superior Coding Contest Award for + the voice recognition tutorial + + "Talk To Your Computer" at the age of thirteen. + +
Affiliations
+-
+
- + + GNU Project +
- December 2013–Present +
- + I am the author and maintainer + of GNU ease.js; am one of + the four GNU + software evaluators that review software offered to GNU and + work with the author to resolve concerns and adhere to GNU + standards before submitting to Richard Stallman (RMS) for a final + decision; and participate in general discussions regarding the GNU + Project as a whole. + +
- + I participate in general activism pursuant to the goals of GNU, + usually addressing the issue + of non-free + JavaScript. Notably, I worked with Sytse Sijbrandij (GitLab + B.V. CEO) + to freely + license all GitLab EE JavaScript. + + +
- + + Free Software Foundation +
- October 2007–Present +
- + Associate member + (#5804) + of the Free Software Foundation (FSF) and a strong supporter of the free + software movement. Actively involved in + the free + software community. + +
- + I am also on the JavaScript Developers Task Force, part of the + FSF's Free JavaScript + campaign. + + +
- + + Master Chong's World Class Tae Kwon Do +
- February 2010–February 2012 +
- + Student at Master Chong's World Class Tae Kwon Do. While not a + technical affiliation, it was an enjoyable and rewarding + experience, and an important part of my life. Volunteered when + possible and attended class most days of the week. + +
- + I unfortunately had to stop attending classes due to a hip injury + and subsequent birth of my first child. I hope to return one day. + +
Skills, Studies, and Interests
++ 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 I have used to write or + modify software, but do not have intimate knowledge of. Academic + are those I research, but am not yet proficient in. Superscript + indicates number of years experience, which does not always + correlate to proficiency. Ranges indicate uncertainty due to + periods of non-use. Date, if present, indicates last year used. +
+-
+
- Languages—Actively Used +
-
+
-
+
- (X)HTML15+
+
-
+
- XHTML 1.1 +
- HTML 5
+ - CSS15+
+
-
+
- 2 +
- 3
+ - PHP10+
+
-
+
- 4 +
- 5
+ - JavaScript7–10
+
-
+
- ECMAScript {3,5,6}
+ - Shell10+
+
-
+
- POSIX +
- Bash
+ - C5–10
+
-
+
- ANSI +
- C89 +
- C11
+ - TeX5+
+
-
+
- Plain +
- LaTeX2e
+ - AWK3–5
+
-
+
- POSIX +
- Gawk
+ - Lisp2–4
+
-
+
- Elisp +
- RnRS Scheme +
- Guile Scheme
+ - XSLT3–5
+
-
+
- 1 +
- 2
+ - Texinfo5+ +
- SQL10+
+
-
+
- MySQL +
- SQLAnywhere +
- MSSQL
+ - WEB2+
+
-
+
- Org-mode +
- Other/Custom Literate +
- noweb +
- CWEB
+
+
+ - (X)HTML15+
+
- Languages—Infrequent +
-
+
-
+
- C++1–2 (2005) +
- Scala1- (2012) +
- Java1–2 (2014) +
- Clojure1- (2014) +
- x86{,_64} ASM1 (2013) +
- Haskell1- (2014) +
- M41- (2015) +
- Python1- (2006) +
- Ruby1- (2014) +
- Perl1 (2009) +
- Troff1- (2011) +
- MOS 6502 ASM1- (2013) +
+
+ - Languages—Academic +
-
+
-
+
- ML
+
-
+
- OCaml
+ - Joy +
- Erlang +
- Forth +
- Postscript +
- Lua +
- Coq +
- B +
- BCPL +
- Brainfuck +
- Octave +
- Ada +
- ALGOL +
- COBOL +
- Fortran +
- Pascal +
- PL/I +
+ - ML
+
+ There are a few languages that I no longer use because they are + either non-free + or focus on non-free operating systems. +
+ +-
+
- Languages—Defunct +
-
+
-
+
- ASP1–2 (2004) +
- Visual Basic5+ (2006)
+
-
+
- 6 +
- .NET
+ - BASIC1 (2005)
+
-
+
- QBASIC
+
+
+ Studies differ from interests in that the former are actively + researched, whereas the latter are occasionally visited, but + otherwise pending formal study. +
+-
+
- Studies—Computer Science +
-
+
-
+
- Compilers
+
-
+
- Construction +
- Static Analysis +
- Control Flow Analysis
+ - Programming Languages
+
-
+
- Theory +
- History
+ - Security
+
-
+
- Domain-Specific +
- Implicit In Other Skills/Studies
+ - Cryptography
+
-
+
- Implementation +
- Algorithms
+ - Combinatory Logic
+
-
+
- Point-Free Programming +
- Concatenative and Stack-Based Languages +
- Church-Turing
+ - λ-Calculus
+
-
+
- Untyped +
- Simply Typed
+ - Logic
+
-
+
- Proof Theory +
- Propositional +
- Predicate +
- Modal
+ - Linear Algebra +
- Graph Theory +
+
+ - Compilers
+
- Studies—Legal and Political +
-
+
-
+
- Software Licensing
+
-
+
- GNU General Public License and variants +
- Various licenses
+ - Copyright
+
-
+
- Law +
- Fair Use +
- Copyleft
+ - Privacy
+
-
+
- Cryptography +
- Law
+ - Surveillance
+
-
+
- NSA +
- GHCQ +
- Five Eyes +
- FISA +
- Domestic +
- Snowden +
- Court Cases
+ - Patents
+
-
+
- Court Cases +
- Reform
+
+
+ - Software Licensing
+
- Studies—Miscellaneous +
-
+
-
+
- History of Computing
+
-
+
- Unix / Multics / Lisp Machines +
- MIT +
- Bell Labs +
- Hacking +
- Historical Figures +
- Machines
+ - Typesetting +
- English Writing
+
-
+
- Predominantly American
+
+
+ - History of Computing
+
- Interests +
-
+
-
+
- Cryptography
+
-
+
- Various Algorithms
+ - Mathematics
+
-
+
- Category Theory +
- Set Theory +
- Anything Else
+ - Machine Learning
+
-
+
- Neural Networks +
- Genetic Algorithms
+ - Natural Sciences
+
-
+
- Quantum Mechanics +
- Cosmology and Planetary +
- Theoretical Physics +
- Cellular Communication +
- Synthetic Biology
+ - Management
+
-
+
- Team Building / Kaizen Culture +
- Kanban +
- Lean/Agile/SCRUM/Other Methodologies +
- Office Environment +
- Psychology +
- Project Management
+
+ - Cryptography
+