List of videos

Serverless Data Streaming on AWS | Anahit Pogosova | Code Mesh V 20

This video was recorded at Code Mesh V 2020 - https://codesync.global/conferences/code-mesh-ldn/ Serverless Data Streaming on AWS | Anahit Pogosova ABSTRACT In this talk, I will be using a real-life example of Finland’s national public broadcasting company, Yle, to talk about AWS Kinesis Data Streams, Kinesis Data Firehose, Kinesis Analytics and how they integrate with AWS Lambda. I will be talking about some of the “gotchas” that came along the way and lessons we learned while implementing a fully managed serverless architecture streaming over 0.5 TB of user interaction data per day and enabling diverse, near real-time content personalization. • Follow us on social: Website: https://codesync.global/conferences/code-beam-sto/ Twitter: https://twitter.com/CodeMeshIO • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Session Types: a History and Applications | Nobuko Yoshida | Code Mesh V 20

This video was recorded at Code Mesh V 2020 - https://codesync.global/conferences/code-mesh-ldn/ Session Types: a History and Applications | Nobuko Yoshida - Professor of Computing at Imperial College London ABSTRACT Session types is a typing discipline for concurrent and distributed processes that can detect errors such as communication mismatches and deadlocks, statically or dynamically. This talk first gives a brief history of session types, along with a very gentle industry-friendly introduction of session types. I then talk how an extension of session types to multiparty interactions (multiparty session types) was discovered under the collaborations with industry. I then give a summary of our recent research developments on session types for verifying distributed, parallel and concurrent programs, and our collaborations with industry partners with demos. • Follow us on social: Website: https://codesync.global/conferences/code-mesh-ldn/ Twitter: https://twitter.com/CodeMeshIO • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Protocol engineering for communicating actors | Laura Bocchi & Laura Voinea | Code Mesh V 2020

This video was recorded at Code Mesh V 2020 - https://codesync.global/conferences/code-mesh-ldn/ Protocol engineering for communicating actors | Laura Bocchi & Laura Voinea ABSTRACT In systems of communicating processes or actors, data types can be used to discipline the sorts of sent and received messages. Session types, in addition, can describe specific causalities and patterns among different send/receive actions (like application-level protocols). I will give an overview on recent and ongoing research about writing “good protocols” using session types and session types to yield correct implementations. I will then focus on modular composition of protocols. Real-world communication protocols are often built out of simpler protocols that cater for some specific functionality (e.g., banking, authentication) or operate at different levels of abstraction (e.g., HTTP, POP). However much of the work used for program verification (e.g., session types) treat protocols as monolithic units. I will show an approach to protocol composition, including a tool that extracts models from concurrent Erlang code into a protocol language based on session types, implements an algorithmic notion of protocol composition, and provides code generation from protocols. The purpose is greater modularisation and code reuse. • Follow us on social: Website: https://codesync.global/conferences/code-mesh-ldn/ Twitter: https://twitter.com/CodeMeshIO • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Building My First Lisp Compiler | Ramsey Nasser | Code Mesh V 2020

This video was recorded at Code Mesh V 2020 - https://codesync.global/conferences/code-mesh-ldn/ Building My First Lisp Compiler | Ramsey Nasser ABSTRACT In August of 2020 I wrapped up work on a five year project, the Morgan And Grand Iron Clojure (MAGIC) compiler -- my first compiler for a mainstream programming language. MAGIC is written in Clojure and compiles Clojure into bytecode for the C# runtime. I had dabbled in language design and implementation before, but this was the first time I saw a compiler project through to the end. This talk is the story of how the compiler came into its current form, and the challenges encountered and overcome along the way. The focus will be on on the effectiveness of dynamic functional programming as well as the difference between programming language theory and the practical realities of compiler construction. Fans of compilers will enjoy the (horror) stories of the unexpected surprises encountered along the way, and fans of functional programming will enjoy hearing how programming with pure functions and immutable data helped overcome them. And if you are thinking of starting your own compiler project, this talk will be full of advice I wish I had heard when I started mine. OBJECTIVES * Share the story of how I designed and implemented MAGIC * Review parts of the design that have held up and the parts that I would change * Give the audience advice I wish I had heard when I started * Explore the difference between language theory and the realities of practical compilers * Emphasize the positive impact functional programming had on the project AUDIENCE People interested in getting into compiler construction or curious about how programming languages are made • Follow us on social: Website: https://codesync.global/conferences/code-mesh-ldn/ Twitter: https://twitter.com/CodeMeshIO • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Dependent Type Driven Program Synthesis in Idris | Edwin Brady | Code Mesh V 2020

This video was recorded at Code Mesh V 2020 - https://codesync.global/conferences/code-mesh-ldn/ Dependent Type Driven Program Synthesis in Idris | Edwin Brady - Lecturer in Computer Science at the University of St Andrews in Scotland ABSTRACT Idris is a functional programming language with first-class types, where types may be parameterised by other values. This allows us to give increasingly precise specifications for functions, and be more confident in their correctness. But, perhaps more importantly, it gives the language implementation more information up front about what a function should do. Therefore, we can use Idris as an interactive assistant, and treat programming as a conversation with the machine. In particular, the Idris system supports program synthesis, generating (fragments of) programs from types. In this talk, I will show the current state of program synthesis in Idris, outline how it works, and discuss some possible future research directions. • Follow us on social: Website: https://codesync.global/conferences/code-mesh-ldn/ Twitter: https://twitter.com/CodeMeshIO • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
JIT Compiler for Erlang OTP | Lukas Larsson | Code Mesh V 2020

This video was recorded at Code Mesh V 2020 - https://codesync.global/conferences/code-mesh-ldn/ JIT Compiler for Erlang OTP | Lukas Larsson - Software Engineer at Erlang Solutions ABSTRACT After many years of waiting, a JIT compiler is finally ready for Erlang/OTP. This presentation will give an overview of the implementation and show what you as a user can expect from it. I'll also go through the pros and cons of the approach that we have taken and have a look at what we imagine the future may bring. • Follow us on social: Website: https://codesync.global/conferences/code-mesh-ldn/ Twitter: https://twitter.com/CodeMeshIO • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
MANTIS: Semantics-driven Inductive Program Synthesis | Roopsha Samanta | Code Mesh V 2020

This video was recorded at Code Mesh V 2020 - https://codesync.global/conferences/code-mesh-ldn/ MANTIS: Semantics-driven Inductive Program Synthesis | Roopsha Samanta - Assistant Professor the Department of Computer Science at Purdue University ABSTRACT The dream of classical program synthesis is to generate programs from complete, formal specifications of their expected behavior. An increasingly favored paradigm of synthesis is inductive program synthesis, where specifications of program behavior are provided in the form of examples. Inductive program synthesis not only helps make program synthesis more tractable, but also has the potential to democratize programming! Unfortunately, inductive synthesis engines encounter challenges like overfitting, ambiguity, and brittleness, similar to other inductive reasoning engines such as AI-based systems. PL researchers have typically attacked these problems by applying syntactic biases to the search space in the form of tailored DSLs, grammars and ranking functions. In this talk, I will show how one can further enhance the generalizability and robustness of such synthesis engines by applying semantic biases to the search space. References: 1. Augmented Example-based Synthesis using Relational Perturbation Properties. S. An, R. Singh, S. Misailovic and R. Samanta. POPL 2020. 2. SemCluster: Clustering of Imperative Programming Assignments Based on Quantitative Semantic Features. D. M. Perry, D. Kim, R. Samanta and X. Zhang. PLDI 2019. 3. Qlose: Program Repair with Quantitative Objectives. L. D'Antoni, R. Samanta and R. Singh. CAV 2016. • Follow us on social: Website: https://codesync.global/conferences/code-mesh-ldn/ Twitter: https://twitter.com/CodeMeshIO • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Deploying a Modern Serverless Reactive container to the Cloud | Mary Grygleski | Code Mesh V 2020

This video was recorded at Code Mesh V 2020 - https://codesync.global/conferences/code-mesh-ldn/ Deploying a Modern Serverless Reactive container to the Cloud | Mary Grygleski - Senior Developer Advocate at IBM ABSTRACT We have been hearing a lot about the benefits of using the reactive approach to solving concurrency problems in distributed systems. While reactive programming refers to the implementation techniques being used on the coding level, on the systems deployment and runtime level, we can leverage on a robust yet very flexible and lightweight framework such as Vert.x to deliver. In this session, we will first learn about what the missions of a reactive system are, which, among many things, include handling multiple concurrent data stream flows and being able to control back pressure as well as managing errors in an elegant manner. The very loosely-coupled nature of a reactive system also lends itself very well to building microservices that can communicate well within its messaging infrastructure. We will also discuss the special polyglot nature of Vert.x, its event loop, and its use of the Vertical model. Live coding will accompany this session to illustrate how to program a simple use case using multiple JVM languages such as Java and Kotlin, we will then build and dockerize it to be deployed as a serverless container using Knative to a Kubernets/Openshift cluster on the cloud in a delightful manner. OBJECTIVE The goal of this talk, among many other goals, is to enable the participants to learn some important concepts about event-driven and reactive systems, and how the lightweight yet very powerful Eclipse Vert.x can assist them to start building event-driven and reactive applications and microservices easily, as well as how to containerize and deploy them to the cloud in an un-intimidated fashion. • Follow us on social: Website: https://codesync.global/conferences/code-mesh-ldn/ Twitter: https://twitter.com/CodeMeshIO • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch
Ask the expert - Thinking Mathematically Above The Code Level | Leslie Lamport | Code Mesh V 20

This video was recorded at Code Mesh V 2020 - https://codesync.global/conferences/code-mesh-ldn/ Ask the expert - Thinking Mathematically Above The Code Level | Leslie Lamport - Professor at Brandeis University. • Speaker Dr. Lamport received a doctorate in mathematics from Brandeis University. An unlikely chain of events led to his current position as distinguished researcher at Microsoft. Dr. Lamport's initial research in concurrent algorithms made him well-known as the author of LaTeX, a document formatting system for the ever-diminishing class of people who write formulas instead of drawing pictures. He has received five honorary doctorates from European universities, but has always returned home to Palo Alto. This display of patriotism was rewarded with membership in the National Academy of Engineering, the National Academy of Sciences, and the American Academy of Arts and Sciences--as well as an honorary doctorate from Brandeis. Dr. Lamport now annoys computer scientists and engineers by urging them to understand an algorithm or system before implementing it, and scares them by saying they should use mathematics. In a vain attempt to get him to talk about other things, the ACM gave him the 2013 Turing Award. • Follow us on social: Website: https://codesync.global/conferences/code-beam-sto/ Twitter: https://twitter.com/CodeMeshIO • Looking for a unique learning experience? Attend the next Code Sync conference near you! See what's coming up at: https://codesync.global • SUBSCRIBE TO OUR CHANNEL https://www.youtube.com/channel/UC47eUBNO8KBH_V8AfowOWOw

Watch