Residents spend one or two weeks full-time at the Recurse Center and work directly with Recursers. We look for people who are exceptionally smart and warm, have significant expertise and passion, and are genuinely interested in helping others become better programmers.
Residencies are by invitation only. You can learn more in our User's Manual.
Tim was the CTO and co-founder of Ksplice, which developed technology for updating a running Linux kernel without rebooting that was running on over 100,000 production servers when it was acquired by Oracle in 2011. After Oracle, he co-founded Zulip, a powerful group chat application, which was acquired by Dropbox in 2014. In his spare time, he advises startups, enjoys hiking, cooking, and board games, and leads the Zulip open source project.
Nada is a member of the Scala team at EPFL, where she studies type systems and hacks on programming languages. She has contributed to Clojure's core.logic and Google's Closure compiler. She's loved helping others learn to program ever since tutoring SICP as an undergraduate lab assistant at MIT.
Ranjit Bhatnagar is a sound artist who works with technology, language, and found materials to create interactive installations and musical instruments. His works have been exhibited across the United States and Europe. In his annual Instrument-a-Day project, now in its eighth year, he creates a new homemade musical instrument each day of the month in February. Ranjit recently worked with the art collectives, Flux Factory and Rabid Hands, to build a large-scale musical installation at Palais de Tokyo in Paris. His interactive sound work, Singing Room for a Shy Person, commissioned by Amsterdam’s Métamatic Research Initiative, previewed at NYC’s Clocktower Gallery in 2013 and moved to Museum Tinguely in Basel for the Métamatic Reloaded exhibition. In 2013, he launched his speech-music instrument, Speak-and-Play, with Margaret Leng Tan at theUnCaged Toy Piano Festival; presented work at Qubit's Machine Music Festival; and premiered a calligraphy-and-gesture-based score for the Brooklyn Ballet with calligrapher David Chang. This summer, he reinstalled his sculpture Stone Song at the Caramoor Centre for Music and the Arts in New York. Originally from the San Francisco Bay Area, Ranjit received a BA from U.C. Berkeley and an MS from the University of Pennsylvania. He lives in Brooklyn next to a nice big park.
Jamie spent years travelling the world as a consulting computer scientist. He has seen everything from finance and gaming to the depths of corporate IT and is now pretty sure we are doing it wrong. Currently he is working on rethinking programming with Eve and hoping to do it at least slightly less wrong this time around.
Will is a co-author (with Dan Friedman and Oleg Kiselyov) of The Reasoned Schemer, and co-creator of the miniKanren relational programming language. Will loves playing with interpreters and program transformations, and is especially fond of quine-generating relational interpreters. He also hosts semi-regular Google Hangouts on relational and functional programming. He is currently a postdoctoral researcher in Matt Might's U Combinator group at the University of Utah.
Glen is an independent researcher, designer, programmer, and trash boy. He's worked as a software engineer in startups and with the MIT Media Lab's Lifelong Kindergarten group on the Scratch programming environment. Glen has also taught classes in Massachusetts and California for adults and teenagers learning programming and web development. For the past three years, he's done self-directed research designing, prototyping, and implementing new interfaces for human understanding with Bret Victor and the Communications Design Group in San Francisco (now called the Human Advancement Research Community). He currently lives in Cambridge, MA studying transformative learning experiences.
Paul is a contributor to the Scalaz project and the author of Functional Programming in Scala. He also does Scala and FP consulting. In his spare time, Paul is working on a new programming environment called Unison.
Mel is a contagiously enthusiastic hacker, writer, and educator. Her Engineering Education research at Purdue focuses on how hackers learn and how engineers are taught. You may know her from the Ada Initiative, Red Hat’s Community Leadership Team, Fedora, Sugar Labs, One Laptop Per Child, the MIT Media Lab, Design Continuum, Appropedia, or OpenPlans, among other places.
Mark has been programming in various capacities since around 1976. He is best-known for writing the 2005 book "Higher-Order Perl", in which he adapted higher-order programming techniques widely used in Lisp, Haskell, and SML for use in Perl. His other achievements include setting up Time-Warner's first corporate web site, developing an online catalog, recommendation, and shopping system for Estee Lauder, and bringing "The Dysfunctional Family Circus" to the Web. Mark also loves Unix system programming, mathematics, and crocuses.
Patrick Dubroy is a programmer and art school dropout. He currently works with the Viewpoints Research Institute and the Communications Design Group at SAP Labs, developing languages and tools to make programming better. Previously, he worked at Google as a software engineer on Chrome and Android, and at BumpTop as a programmer and interaction designer. Originally from Canada, he now lives in Munich (and yes, he owns a pair of Lederhosn).
Jonathan has been programming for 45 years. He was cofounder and CTO of IntraNet, Inc. where he built a document-oriented transactional replicated database in the 80’s. He learned the most about programming by having to carry a beeper for 15 years. A graduate of the Kingsville Elementary School, he has been a Research Fellow at MIT CSAIL and is now a member of the Communications Design Group at SAP Labs. He blogs at alarmingdevelopment.org. He specializes in being tragically ahead of his time.
Nelson Elhage is a systems programmer working on distributed systems infrastructure at Stripe. He previously worked on live kernel updating at Ksplice, and wrote for their blog. He loves digging into the details of how computer systems work at any level of the software stack. He's the author of reptyr, a tool for moving programs between terminals, and livegrep, which is likely the fastest source-code search tool you've used.
Paul ’@pjf’ Fenwick is an internationally acclaimed public speaker, developer, and science educator. Paul is well known for presenting on a diverse range of topics including privacy, neuroscience and neuroethics, Klingon programming, open source, depression and mental health, advancements in science, diversity, autonomous agents, and minesweeper automation. Paul was awarded the 2013 O'Reilly Open Source award, and the 2010 White Camel award, both for outstanding contributions to the open source community. As a Freedom Loving Scientist, Paul’s goal is to learn everything he can, do amazing things with that knowledge, and give them away for free.
Andreas works on the infrastructure team at Stripe, building the systems that other developers use to build payment systems for the Internet. Before starting at Stripe, Andreas was a member of various Common Lisp open source projects, worked on an extremely scalable (and weird!) RDF graph database, and for a while even maintained a decades-old Motif-based GUI framework that was derived from code originally written for Symbolics lisp machines. For as long as he has used computers, his goal was to make it as efficient as possible to waste his own time, and so is constantly working on a grand system orchestration or automation idea. In his spare time, you can find Andreas performing terrible wordplay and learning to play the hurdy-gurdy.
Chris grew up as part of the Nintendo generation, having learned the parts of a computer at the age of two and later learning numbers and colors from a Sesame Street game on the NES. He started programming at the age of ten and took his first paid development gig at 17. Since then he's built websites large and small, written frameworks and libraries used by thousands, taught developers around the world, and helped envision the future of development at Microsoft. These days, he's the co-founder and CEO of Kodowa, where they built the next generation code editor Light Table and now Eve, a new vision for putting computation in the hands of everyone.
Philip is a CS researcher, programmer, and writer. He does human-computer interaction research, creates software tools for online education (most famously Python Tutor) and writes about Ph.D. life (e.g. The Ph.D. Grind). In Fall 2014, he will be an assistant professor of Computer Science at the University of Rochester. He writes code and nonfiction prose at pgbovine.net.
Kate Heddleston is a software engineer from San Francisco who builds web applications using Python and Flask. She received her Bachelor's degree in Communication: Human-Computer Interaction and her Master's degree in Computer Science: Human-Computer Interaction from Stanford. She enjoys using open source tools to build web applications and especially likes building portions of the product that interface with the user. When she is not programming, Kate is involved with organizations like Hackbright Academy, PyLadies, and Raphael House. Kate is currently traveling the world and working on personal projects.
Leigh is a Security Engineer at Heroku, a Salesforce.com company. Prior to Heroku, she worked at Microsoft , MessageLabs/Symantec, and Bell Canada. Her career has included everything from stringing cable and building phone systems to responding to some of the most critical computer security incidents in industry history, shipping software to a billion people, and protecting infrastructure running a million apps. Her community work includes founding the HackLabTO hackerspace in Toronto, Canada, and the first feminist hackerspace, the Seattle Attic Community Workshop, as well as advising countless others and speaking about hackerspace cultures, collaboration, and open source software. She is now a member of the Double Union women’s hackerspace in San Francisco. She is an administrator of the Geek Feminism wiki and blog, an adviser to the Ada Initiative, and the SECTor security conference in Toronto.
Jacob is one of the lead developers and co-creator of Django. Jacob's a software developer with a focus on web application architecture. He's a consultant at Revolution Systems, where he helps companies deploy and scale websites using Python and Django. Jacob is also the CTO of Grove.io, an enterprise chat service backed by IRC.
Stefan is the co-creator and core developer of the Julia programming language, a high-level, high-performance dynamic programming language for technical computing. He currently hacks on Julia full-time as a research scientist at MIT working on problems in parallel computing. He's previously worked at Akamai, Citrix Online, and Etsy.
Steve is a software developer, working for Mozilla as a core team member of the Rust programming language. A long-time writer, Steve authored the official book on Rust, "The Rust Programming Language", as well as several others: "Rails 4 in Action", "Designing Hypermedia APIs", and "Rust for Rubyists". Before working on Rust, Steve was heavily involved in the Ruby and Rails communities, and used to teach Rails professionally.
Martin Kleppmann is attempting to straddle the gap between research and industry in the area of data systems. He is currently writing Designing Data-Intensive Applications for O'Reilly, which explores the fundamental algorithms, architecture choices and trade-offs in databases and other data systems. He gives lots of talks and contributes to various open source projects including Apache Samza. He previously co-founded a startup, Rapportive, which was acquired by LinkedIn in 2012. You can find him on Twitter at @martinkl.
Gene is an artist and a programmer who is interested in generative systems, artificial intelligence, and software enabling self-expression and creativity. He writes code for live music, performance, and visual art. He is a collaborator within numerous open-source software projects, and leads workshops and demonstrations on topics related to code and art. Gene is a contributor to ml4a, a free book about machine learning for artists, activists, and citizen scientists. He regularly publishes video lectures, writings, and tutorials to facilitate a greater public understanding of the topic. He has previously taught classes at ITP-NYU, Bennington College, and SchoolOfMa, and has been artist-in-residence at SFPC and Eyebeam.
Grzegorz is a software engineer at Typesafe where he works on the Scala compiler and tools surrounding it. For over a year he worked on improving Scala's compilation speed by making its incremental compiler smarter. He loves exploring different ways of increasing programmers' productivity and happiness. He found working on compilers a great way to make a dent in programmers' lives. When not hacking the Scala compiler, he enjoys thinking about new programming models for the Internet of Things.
Lindsey is a Ph.D. candidate in the Programming Languages Group at Indiana University, where she studies the foundations of deterministic parallel programming. She's a recidivist Mozilla Research intern and contributor to the Rust programming language. She's worked on a semantic model for a language that allows safe intermingling of statically and dynamically typed code, and on a pattern matcher for miniKanren, giving her an upper bound of 4 on her Erdős number.
Michael is a graduate student at UT Austin and studies security and OSes. He works on improving and changing the security properties of commodity operating systems and research into creating practical crypto protocols and systems. He has also collaborated with researchers at Columbia University and Sandia National Labs.
Glyph is the founder of the Twisted project, the Python event-driven networking engine, as well as the creator of numerous open-source efforts under the Divmod umbrella. Glyph is also a published author (on the subject of massively multiplayer game design), software development blogger, and regular public speaker, having presented numerous times on a variety of topics at PyCon, and keynoted at Djangocon.
Robert (a.k.a. r0ml) is a programming language enthusiast who enjoys obscure programming languages. He is a collector of programming techniques for improving clarity, increasing reliability, and maximizing brevity. He is a frequent speaker on the effects of the late Middle Ages and early Renaissance on the art of programming. His first programming project was on an Olivetti-Underwood Programma 101. He is an ACM Distinguished Engineer. Photo by Amanda Thomas.
Haoyi Li is a software engineer at Dropbox who works on Dropbox's web stack during the day and open-source Scala projects at night. At Dropbox, he's known for building the tools, libraries and systems that make web developers more productive. In the open source world he's most well known for his work on building out the Scala.js community and ecosystem.
Crista is a Professor of Informatics in the School of Information and Computer Sciences at the University of California, Irvine. Her research focuses on software engineering for large-scale data and systems. Early in her career, she was a founding member of the team at Xerox PARC that developed Aspect-Oriented Programming. Along with her research program, she is also a prolific software developer. Her open source contributions include OpenSimulator, a virtual world server, and a set of software acoustic modems that mimic sounds found in nature. She is also a founder of Encitra, a company specializing in virtual reality for early-stage sustainable urban redevelopment projects. She has a PhD from Northeastern University, and MS and BS degrees from Instituto Superior Tecnico in Portugal. She claims to be the only person in the world who is both an ACM Distinguished Scientist and Ohloh Kudos Rank 9.
Nathan Marz created the Apache Storm and Cascalog projects and wrote "Big Data: Principles and best practices of scalable realtime data systems". He was the lead engineer of BackType, which was acquired by Twitter in 2011, and he is currently working on a new startup. When not programming, you'll often find him flying overhead enjoying the beautiful views at 5500 feet.
Jessica is a maintainer of Twisted, the Python evented networking library. She's on the board of the Python Software Foundation, and helps run the Boston Python Meetup, where she's had tremendous success bringing women into the community and helping programmers of all stripes contribute to open source. Jessica previously worked as a developer at Ksplice, where she helped write their ridiculously good blog.
Matt Might is an Associate Professor and Presidential Scholar in the School of Computing at the University of Utah. His current research interests include program analyzers for security; parsing with derivatives; elegant functional data structures and algorithms; and using template meta-programming to embed domain-specific languages in C++. At Utah, Matt teaches how to use, design, analyze, optimize, interpret and compile scripting languages, including a course in which students construct a compiler for Python from scratch. As of late, Matt has also developed an interest in genetics, molecular biology and glycobiology in particular. Matt received his Ph.D. in Computer Science from Georgia Tech in 2007. He blogs regularly at blog.might.net and tweets from @mattmight.
Yaron is currently the Head of Quantitative Research and Technology at Jane Street Capital, the largest commercial user of OCaml. He is also a coauthor of O'Reilly's upcoming Real World OCaml, and previously ran an excellent workshop on OCaml, Core, and Async for the winter 2013 batch.
Neha Narula (@neha) works on distributed systems and makes multicore databases go faster. She has worked on a system for executing queries on a sharded database called Dixie, an in-memory cache with materialized views called Pequod, and a multicore database that leverages commutativity called Doppel. In a previous life she was a software engineer at Google where she worked on Google Shopping, Blobstore, and Native Client.
David is a Clojure and ClojureScript contributor and the creator of core.logic. He's previously visited Hacker School on multiple occasions, and has helped several Hacker Schoolers become Clojure contributors. He's currently a developer at the New York Times.
Peter is a Director of Research at Google; previously he directed the core search algorithms group. He is a AAAI Fellow, ACM Fellow, and American Academy of Arts & Sciences Member. He is co-author of Artificial Intelligence: A Modern Approach, the leading textbook in the field, and co-teacher of an Artifical Intelligence class that signed up 160,000 students, helping to kick off the current round of massive open online classes.
Allison is a computer programmer, poet, educator and game designer who lives in Brooklyn. Her teaching and practice address the unusual phenomena that blossom when language and computers meet. Allison is currently the Digital Creative Writer-in-Residence at Fordham University and an adjunct professor and ”something-in-residence” at NYU’s Interactive Telecommunications Program, where she teaches a course on writing computer programs that generate poetry.
Alex co-authored O'Reilly's Programming Scala, and was one of the first programmers at Twitter, where he helped scale the service and focused on their developer platform and core infrastructure. More recently, he served for two years as CTO of Simple. He writes a great blog. Alex was a resident in the fall 2012 and summer 2013 batches. Photo by Dave Fayram.
Greg is a kernel hacker, programming language enthusiast, and systems programmer. He previously worked at Ksplice and Quora, and extended the Internet's short memory a little with YouTomb and NewsDiffs. He loves diving deep into a source tree to find something out, or digging in with a good tracer or profiler. Greg once thought a career making theorems instead of code would be fun, but after a few good theorems and much more code snuck into off-hours, he decided to run with it.
Prabhakar Ragde has been a Professor in the Cheriton School of Computer Science within the Faculty of Mathematics at the University of Waterloo since 1988. Much of his research has been in the areas of algorithms and complexity, but he has recently become captivated by functional programming and type theory, and has developed curricula in the area ranging from introductory to senior graduate level. His favorite programming languages are Racket, ML, Haskell, and Coq.
Brandon is a consulting Python programmer best known as the author of the PyEphem open-source astronomy library and the co-author of Foundations of Python Network Programming, which he is currently updating for Python 3. He also teaches Python courses professionally. For several years he was the community organizer for Python Atlanta, before moving to the small Ohio town that currently serves as his base of operations.
Alex works on natural language processing at Indiana University in hopes that this will result in both a PhD and better machine translation systems for the world’s under-represented languages. Outside of academia, he contributes to NLTK and has worked at Google both as a software engineer and a perennial intern at Google Research, where he helped out on Google Translate. He can’t seem to stop teaching, which is good because he really enjoys it.
Spencer Russell is a researcher and PhD candidate at the MIT Media Lab, where his work has ranged from wireless mesh networks and sensor infrastructure to audio spatialization and augmented musical instruments. He holds a BA from Oberlin College, a BS in Electrical Engineering from Columbia University, and an MA from the MIT Media Lab. In previous lives he has sound-designed sold-out theater performances in New York, toured throughout the US and Europe as a double-bassist, and ran a software and hardware development team that deployed multi-thousand unit building automation systems. He lives with his wife Kate and dog Eleanor Roosevelt in Jamaica Plain, MA, but longs for the rainy Pacific Northwest.
Peter wrote Practical Common Lisp and Coders at Work, in which he interviewed 15 all-time great programmers. Peter spoke at Hacker School during our summer 2012 batch and blew us away with his thoughtful advice for becoming a better programmer and genuine engagement with students. He's currently an engineer at Twitter.
Jamey Sharp enjoys learning anything he can about everything from CPU architecture to functional programming, and from real-time embedded systems to web development to control theory and combinatorial search algorithms. But just learning about computer science isn’t as much fun without getting to share it with other people! Jamey has been mentoring people since his undergrad days working on his B.Sc. in Computer Science at Portland State University, which he completed in 2006. Over the past several years he has also sponsored over a dozen different six-month software engineering capstone projects, helping students work in code bases including the Linux kernel and the X Window System, as well as quite a few Python projects. Professionally, Jamey’s career began with web development in Java and Perl during the dot-com boom; proceeded into systems programming in C while creating XCB, a client library for the X Window System network protocol; software product architecture for a computer test for ADHD with components in Java, C, and Python and spanning desktop, web, kernel, and bootloader code; Comic Rocket, a site for helping webcomic readers keep up with their favorites and discover new comics, in Haskell and Python; and most recently, high-assurance software development at Galois, in Haskell, C, and Java. He’s eager to try Mozilla’s new Rust programming language on his upcoming projects.
Sage is a Linux and open source developer, with an interest in hardware and increasing diversity in tech. Sage graduated with a B.S. in Computer Engineering from Portland State University, and they have been running Debian-based Linux systems since 2003. Sage wrote the Linux USB 3.0 host controller driver, and was a Linux kernel maintainer for five years. They have also tinkered with Arduinos, real-time operating systems (RTOSes), and they love to play around with open hardware. Sage's favorite open source tools include Darktable (raw photo editor), KDEnlive (video editor), and Inkscape (vector drawing). They frequently use (but only tolerate) git, libreoffice, and many different Linux command line tools. Sage is an expert with C, but has also written code in Python, Java, C++, and shell scripts. Sage also loves to make fan videos, write blog posts and tutorials, do amateur photography, garden, and bicycle. Sage is happy to share knowledge, and would love to give tips on creating tech presentations and promoting yourself in the open source community. Sage is a co-coordinator for Outreachy, a 3-month paid internship program to connect people traditionally underrepresented in tech with open source mentors.
Star Simpson is a currently unaffiliated electronics hacker and aviation enthusiast with a passion for the potential transformative power of applications for drone technologies. She was fed Perl as a baby before discovering embedded programming and has been trying to unlearn habits learned therein ever since.
Emil Sit (@emilsit) loves working with fellow developers to write clean code to power great products that customers love. Emil has worked at all levels of the stack: he has taught operating systems and distributed systems at MIT, worked on virtualization software at VMware, and scaled SaaS applications in the cloud at HubSpot. He usually programs in Python and Java, but can hold his own in many languages; he's recently been learning about front-end development. He has a weakness for build systems and infrastructure tooling. Emil completed his PhD at MIT in 2008 and is currently a Director of Engineering at Toast, a Boston-based startup that helps restaurants grow and delight their customers.
Paul is a Software Engineer working at the Sunlight Foundation, a 501(c)3 nonpartisan nonprofit that advocates for open government globally and uses technology to make government more accountable to all. During the nights, Paul hacks on Debian, Ubuntu, and Hy, a Lisp that compiles to Python bytecode.
Stephen Tu is a graduate student at UC Berkeley in the EECS department. His research interests include both theoretical and practical aspects of optimization and machine learning. He has worked on various open source contributions including developing various probabilistic models for data-microscopes, implementing semidefinite program solvers in mlpack, and various contributions to a previous version of Facebook's HipHop compiler. He still dreams of one day building his own programming language, despite a failed attempt many years ago.
José is the creator of the Elixir programming language, a functional programming language that focus on a productive environment for building maintainable and scalable applications. He is also a co-founder of Plataformatec, a consultancy based in Brazil, and a member of the Rails Core Team.
Raquel Vélez is a Senior Software Developer at npm, Inc.in Oakland, CA. She has previously worked at Caltech, NASA JPL, the MIT Lincoln Laboratory, and various universities in Europe. In her off time, you can find her baking, teaching NodeBots not to fall off of tables, and speaking. Also, hanging out with her hilarious husband and two cats dressed in dog suits.
Scott is a consultant at Atomic Object, where he builds embedded and distributed systems. Outside of work, his research interests include information retrieval — recent open source contributions include a data compression library for hard real-time systems, testing tools for C, and a content-addressable store. Scott is also the creator of @ghost_things, a byproduct of his love for wordplay.
Frank Wang is a PhD student at MIT focusing on building secure systems. He did his undergraduate at Stanford, focusing on applied cryptography. He runs the MIT security seminar where top academics come and talk about their most recent research. He is also a member of Roughdraft Ventures, which provides small amounts of capital to early stage student startups. He is currently running a summer program for early stage security companies called Cybersecurity Factory. He has interned at the security teams at Google and Facebook as well as consulted for security companies like Qualys. When he is not busy worrying about your security, he enjoys going to art museums and being outdoors.
John Myles White
John is a Ph.D. student in the Princeton Psychology Department, where he studies human decision-making. He's the author of two popular books on Machine Learning: Machine Learning for Hackers and Bandit Algorithms for Website Optimization. John is also the author of several popular packages for R, including ProjectTemplate and log4r, and is currently developing the core data analysis toolchain for Julia.
Jean is a final-year Ph.D. student at MIT, where she studies programming languages. For her Ph.D. thesis she has created Jeeves, a programming language for automatically enforcing information flow policies for security and privacy. She also worked on Verve, an operating system verified end-to-end for type safety. Jean believes all programmers should empower themselves by understanding the tools they have at their disposal. To encourage everyone to learn Haskell, she created Haskell Ryan Gosling.
Yan is currently a Technology Fellow at the Electronic Frontier Foundation and a Software Engineer at Brave, a start-up in San Francisco. Since 2012, she's been a developer on various open-source security projects like the Tor Browser, SecureDrop, Privacy Badger, and Let's Encrypt; she was also previously a member of the W3C Technical Architecture Group. Lately she's been working on new browser privacy attacks and building new communal warehouse art spaces in her spare time. In a past life, she dropped out of high school, did her B.S. in Physics at MIT, and dropped out of a PhD in Physics at Stanford. You can read about her security research projects and more on her blog.