The Programmer’s Apprentice Season 2:
Advancements and Future Directions in AI-assisted Coding
In 1976, Charles Rich and his colleagues pioneered the concept of a programmer’s apprentice – an interactive programming system designed to assist expert programmers in the design, coding and maintenance of large and complex programs. The idea of a digital prosthesis, extending our biological brain to seamlessly bridge the gap between our ideas and the code we produce, has been revisited multiple times throughout the years. For instance, the Probability/Bigcode team has spent over half a decade applying machine learning to enhance efficiency for engineers, data scientists and systems across the board.
Historically, these endeavors relied on traditional (symbolic) AI techniques or early-stage neural net models, resulting in limited success in meeting the high expectations. However, the emergence of generative models like GPT has transformed what was once considered science fiction into reality, rendering the need for custom model architectures and embeddings obsolete. Consequently, many developers are now incorporating AI-based ‘co-pilots’ into their daily programming routines.
In this talk, we’ll explore the various ways AI has been applied at Meta, such as code search, code recommendations and bug fixing, and revisit these areas in the context of large language models (LLMs). Additionally, we’ll discuss our vision for the future of generative AI in productivity tools, pivoting from a collection of task-specific tools designed for a generic user base to a single, user-specific tool capable of tackling a multitude of tasks. This transition will illuminate the ongoing evolution of AI-assisted programming and its potential impact on the developer community and beyond.
Speaker:
Erik Meijer - has bridged the gap between theory and practice for most of his impressive career, which includes a work with Microsoft, Netflix and Google. Former winner of Microsoft Outstanding Technical Leadership award. Today, Erik Meijer is the director of engineering at Facebook. He is perhaps best known for his work on, amongst others, Haskell, C#, Visual Basic, and Dart programming languages, as well as for his contributions to LINQ and the Reactive Framework (Rx). Most recently he is on a quest to make uncertainty a first-class citizen in mainstream programming languages.
Agenda:
17:30 – 17:45 – Meet & Greet
17:45 – 18:30 – Presentation
18:30 – 19:00 – Meet & eat
19:00 – 20:00 – Q&A