pnkfelix@pnkfx.org
@pnkfelix
Felix is a Principal Software Engineer at Amazon Web Services.
He used to live in Paris, but his French is poor. Il a habité à Paris, mais son français n'est pas bien.
Pre-history: Felix received a Bachelors degree in 2000 and an M.Eng in 2001, both in EECS from MIT. After graduating from MIT, he worked at Green Hills Software. Then he returned to Boston to pursue a Ph.D in Programming Languages at Northeastern University's College of Computer and Information Science. Near the end of his Ph.D work, he joined Adobe to work on the Actionscript Virtual Machine. Felix subsequently joined Mozilla Research, and began his work on Rust, which eventually led to his current role at Amazon.
To everyone who told me that I should not start a new job until after I defend my thesis: you were right.
(To the one person who told me that I should wait to join my wife, far from university, until after I defend my thesis: you must have been wrong, because I cannot imagine life any other way.)
Rust is a new exciting systems programming language. Rust combines the speed and low-level access provided by C with safety surpassing that provided by memory-safe languages like Java.
How is Rust more safe than Java? Because in addition to ensuring memory safety, Rust guarantees programs are data-race free, eliminating a swath of bugs that plague programs for parallel processors.
In addition, Rust has a strong community culture. From the start, the project has actively worked to foster an open and welcoming environment, encouraging programmers of all backgrounds (from catagory-theory nerds to script-kiddies to grey beards) to come join us and help save the world from segmentation faults.
tango
: Dancing Around Literate Programming
In Fall semester of 2009, Felix was a teaching assistant for CS 5010, (which was just a renaming of CSG 107: "Program Design Paradigms"), again taught by Professor Matthias Felleisen.
In Spring semester of 2009, Felix was a teaching assistant for CSU 211, taught by Sam Tobin-Hochstadt.
In Fall semester of 2008, Felix was a teaching assistant for CSG 107, taught by Professor Matthias Felleisen.
In Spring semester of 2008, Felix taught CSG 111, in concert with Professor Will Clinger. CSG 111 is also known as Principles of Programming Languages. Felix enjoys the objects lecture he gave in that course (and recently updated for a guest lecture in CSG 711).
In Spring semester of 2006, Felix taught CSU 211 as an instructor of record. CSU 211 is also known as Fundamentals of Computer Science I.
Felix was a teaching assistant for CSU 211 (taught by Professor Felleisen) in the Fall semester of 2005 and in the Fall semester of 2003.
When he was at MIT, Felix was a teaching assistant for 6.170, Laboratory in Software Engineering, for the spring 2000, fall 2000, and spring 2001 semesters.
Felix currently researches garbage collection with bounded pause times via heap partitioning. He is using the Larceny implementation of the Scheme programming language as the basis for his experiments.
In Summer of 2009, Felix was co-author on a paper about Regional Garbage Collection and the mathematics behind its work scheduling policies.
In Spring of 2008, Felix completed his comprehensive exam.
Felix presented Larceny's FFI at Scheme Workshop 2008.
More generally, Felix is interested in language implementation issues, such as compiler technology and runtime system design. Felix is also interested in tools for program understanding and for assisting in software development.
Felix is one of the developers of Larceny (credit for the design and implementation of Larceny should be attributed to Lars T Hansen and Will Clinger). Felix recently made renderings of the state machines for Larceny's lexer. Larceny was the foundation upon which Felix built his thesis work.
Felix has collected bookmarklets: little snippets of javascript that act on whatever webpage your browser is currently focused on. The first ones he had seen did things like post urls to other sites (such as the "Post to del.icio.us" bookmarklet); but in fact there are more useful private ones that do things like make named anchors in a page explicit in the rendering of the document.
Felix contributed to the development of the Green Hills compiler infrastructure while he was employed there. He no longer remembers what else he is allowed to say about his contributions to their compiler. But he does remember that Santa Barbara is a beautiful city.
Felix contributed to the development of the FLEX compiler infrastructure.
Under the supervision of Alan Wexelblat, Felix contributed to the development of the Footprints, a tool for collecting and interactively presenting information about the collective browsing activity of a community. Sadly the project website is no longer up; more information is available at Alan's website.
Felix enjoys skiing and cooking.
He also likes teaching. As an example: his attempt
to make a "one page" Javascript tutorial
(possibly doomed to failure) aimed at one of his nephews.
Since then, Felix has tried at various times to promote Literate Programming,
developing tools that encourage one to treat source code as art,
such as tango
and
mon-artist
.
Felix also wrote a Subversion tutorial that is meant to illustrate a particular work flow and how state propagates between subversion users and the central repository.
His brother Anson and Anson's wife Jenny are starting a food and wine boutique named Picnic in Seattle, WA.
Felix became a father in the summer of 2016. His children do not yet, to his knowledge, know the λ-calculus.
Content last updated: 2 December 2020