Introducing Joel Marcey

Introducing Joel Marcey as the Member Director for Facebook. Part of the "Getting to know the board" series.

Over the next five weeks, we'll be running a series called "Getting to know the board", publishing blog posts from each member of the Rust Foundation Board of Directors, introducing them to the community. You can view the posts in this series here.

Ever since my late father gave me access to his IBM PC XT back in the early-md 1980s, and I decided that FDISK was the most interesting command in the IBM instruction reference manual, it was pretty clear where my career path was heading, even if my father was not so keen on my use of the command on his computer.

The first programming language I was ever exposed to was BASIC (or maybe it was Logo - anyway, I digress) .

10 PRINT "HELLO"
20 GOTO 10

Look familiar? For many of us, these two lines were our first exposure to the power of what programming could do. Look at all those “Hello”s just printing ad nauseum until we stopped it with a Ctrl-C.

From BASIC, the list of languages I used grew to Pascal in high school to C, C++, Smalltalk and Java in college. I was actually a Java support engineer in the IT department of Intel as part of my first full time job back in 1997.

It was around 2000 where I believe my interest in programming languages went to the next level. Intel, along with Microsoft and HP, was one of the co-sponsors for the standardization of C# and the CLI (a.k.a. CLR) in Ecma. And I was Intel’s main representative in that effort. For much of that decade, I did my small part to shape what would become those two standards - I wrote documentation tools (XML to Word using XSLT and COM Interop - remember COM Interop?), wrote pieces of both specifications, was convenor of the CLI standard technical group, and chair of the committee responsible for those standards and other programming-based standards as well.

My work in Ecma and the relationships I made there led me to Facebook in 2013 as a contractor where I was hired to help document and release a new programming language called Hack. And I have been at Facebook ever since, now a full-time employee. In that time, I have been involved with even more programming languages - PHP, Hack, JavaScript (where we used it and React to build one of my favorite projects ever, Docusaurus), Flow, and, of course, Rust.

I have known about Rust since its early days back in 2010-2011, and, of course, later heard of the “canonical” book, The Rust Programming Language. But I really hadn’t started getting directly involved with the language until towards the end of 2019 when I began to work with the team responsible for Facebook’s digital wallet Novi. Facebook, through Novi, is a member of the Diem Association. The Diem blockchain is primarily written in Rust, covering 94 percent of the open sourcecodebase. In addition,Move, a new, secure programming language to be used for the blockchain, was developed with Rust. It was with this work , and then seeing how Facebook was really investing in the Rust language throughout the company, that I knew Rust’s rise and popularity wasn’t just fleeting. Rust is here to stay as a language to be used for big things.

One thing always stuck in my mind as I learned and utilized all of these languages -- can they evolve to continue making the lives of developers easier? Some people see a productivity progression from C to C++ to C#, for example. I saw a productivity progression from PHP to Hack. I believe Rust falls into that increased productivity category. Working with the language, how it is able to easily, yet with such precision and detail, let you know where you have gone wrong at compile time, you just feel more efficient. Rust stands on its own merits, but I have to imagine coming from a language like C++ to Rust, is where that productivity progression really shines.

And, seriously, if the Linux kernel is actually starting to even consider Rust as a language to be used for that codebase, well, that’s when you know you have made it.

I can’t wait to work with everyone to help drive the language forward. I am really excited to be part of the Rust Foundation.