Meetup Talks and Conference Presentations

Live-Coding a Dashboard with KSQL, Python & JavaScript • Kris Jenkins • GOTO 2021
This presentation was recorded at GOTO Copenhagen 2021. #GOTOcon #GOTOcph http://gotocph.com Kris Jenkins - Developer Advocate at Confluent ORIGINAL TALK TITLE Dashing Off A Dashboard ABSTRACT How much can we do with Kafka in 30 minutes of coding? Let's find out. In this live-coding session we'll build a real-time dashboard from scratch. Dancing across three languages - KSQL, Python and JavaScript - we'll piece together the skeleton of a dashboard that could serve KPIs to everyone in your organisation, or just form the basis of your next lunchtime hacking session [...] TIMECODES 00:00 Intro 00:58 Startup life 02:30 Demo/Live-coding 35:19 Conclusion 37:34 Outro Download slides and read the full abstract here: https://gotocph.com/2021/sessions/1988/dashing-off-a-dashboard RECOMMENDED BOOKS Maryann Kisamore • Basics Of Apache Kafka • https://amzn.to/3tkVYFD Mitch Seymour • Mastering Kafka Streams and ksqlDB • https://amzn.to/3HZ18wK Ted Dunning & Ellen Friedman • Streaming Architecture • https://amzn.to/3lhk3Kb Liz Rice • Container Security • https://amzn.to/3oU4iJe Neal Ford • Functional Thinking • https://amzn.to/3DdP35B Petricek & Skeet • Real-World Functional Programming • https://amzn.to/38diF4M Venkat Subramaniam • Functional Programming in Java • https://amzn.to/2WlOXIt https://twitter.com/GOTOcon https://www.linkedin.com/company/goto- https://www.facebook.com/GOTOConferences #Kafka #ApacheKafka #KSQL #KSQLDM #Python #JavaScript #JS #LiveCoding #Demo #KrisJenkins #EventStream #JSON #WebSockets #Confluent #React #ReactJS #LiveHack #Hacking Looking for a unique learning experience? Attend the next GOTO conference near you! Get your ticket at https://gotopia.tech Sign up for updates and specials at https://gotopia.tech/newsletter SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily. https://www.youtube.com/user/GotoConferences/?sub_confirmation=1
OOP 2022 KeyDi2 | Side-Effects Are The Complexity Iceberg (by Kris Jenkins)
Many of us have a rough idea of what side-effects are and a vague sense that they're bad. It's a shame we're not more precise about it, because when you really understand side-effects you have an excellent new lens through which you can judge individual blocks of code, larger architectural patterns, and even whole system designs. So let's start by clarifying our understanding of what side-effects are and how to spot them. We'll see how easily they arise, leaving code that's harder to understand, harder to test and harder to decouple. Then we'll look at tools and techniques for eliminating those side-effects where it's possible and managing them where it isn't. Finally we'll zoom out to see how those ideas get expressed in every field of computing, yielding fundamentally different approaches to programming language design, DevOps, system architecture, and database design. There's an iceberg of complexity hiding in your systems' side-effects and by the end of this talk you'll be able to spot it and start tackling it, rethinking the way we deal with data and the systems around it."
GO NORTH - A Kafka Adventure Game by Kris Jenkins
For more info on the next Devoxx UK 👉 https://www.devoxx.co.uk Apache Kafka is used by many video gaming companies to manage and analyse live data from their players, handling billions of events across dozens of countries every day. But none of them have thrown caution to the wind and used Kafka as their core game engine. In this talk we'll revisit the quintessential video game, the Text-Based Adventure, and implement as much of it as we can in pure Kafka. We may not break the Steam sales records, but along the way we'll learn a lot about the building blocks of event systems, some interesting ksqlDB tricks, and get a glimpse of how many different needs a good event store can satisfy: data collection, processing & enrichment, analytics, real-time reporting and more. The source code will be available online afterwards, but if your boss catches you building an MMO on the corporate server, we take no responsibility.
Kris Jenkins - Slaying a UI Antipattern
Fetching data from the server should be one of the easiest things frontend programmers do. And yet even big names like Twitter and Slack make a simple mistake that consistently spoils the UX of their sites. In this talk we’ll look afresh at the simple act of loading remote data, and how it’s just slightly more complicated than people think. Then we’ll see how Elm’s excellent data modeling capabilities let you capture this complexity and banish the bug permanently. You’ll learn how to improve the user experience of every HTTP call you make, and pick up some wider ideas on how Elm’s type system can guide you to clearer, more useful designs that make for better software.
Kris Jenkins - Communicating in Types | Øredev 2018
Modern type systems have come a long way from the days of C and Java. Far from being nit-pickers that berate us for making mistakes, type systems like the ones found in Haskell, PureScript and Elm form a language in themselves. A language for expressing high-level ideas about our software to our colleagues and to the computer. A design language. In this talk, we'll take a look at the way the right kind of type signatures let us talk about software. We'll survey how to state our assumptions about the domain we're coding in and how each part fits together. We'll show how it can highlight problems, and surface opportunities for reuse. And most importantly, we'll see how types can help you communicate to your coworkers, and to future maintainers, with little effort. You've probably heard the phrase, "programs are meant to be read by humans and only incidentally for computers to execute." Come and see how a modern type system is about communicating ideas to humans, and only incidentally about proving correctness. Connect with us! Twitter: https://twitter.com/oredev Facebook: https://facebook.com/oredev Instagram: https://instagram.com/oredev Vimeo: https://vimeo.com/oredev
XT16 - Kris Jenkins - Adventures in User Interfaces
Kris Jenkins - Types As Design Tools
Kris Jenkins - Types All The Way Down
Kris Jenkins' talk at Compose :: Conference in Melbourne, 2016. -- In web development, a great deal of effort is spent on consistency. The frontend, backend and database must all agree on a data-model, and if they don't, the system crashes spectacularly. The default solutions are either to invest heavily in hand-written integration tests, or use JavaScript everywhere. Neither of these are ideal. However there is a compelling alternative - use the same types everywhere. By reusing strong, static types across tiers, we can make guarantees about the consistency of the entire system, and dramatically lower the cost of change. We present one approach that uses Haskell data types to drive a both a PostgreSQL database schema and a frontend system written in Elm. With one set of types to rule them all, whole system consistency is automatic and reliable, and the cost of changing types - and hence evolving the whole system's data model - is dramatically reduced. -- http://www.composeconference.org/2016-melbourne/day-one-program/
LDN Functionals #5 Kris Jenkins: What is Functional Programming?
The first talk delivered at the fifth London Functional Programmers meetup, taking place at Facebook's London offices. To go to the next meetup visit: http://www.meetup.com/London-Functionals/ Follow us on Twitter at: https://twitter.com/functionalworks Any feedback or questions: joshua@functionalworks.com
LDN Functionals #2 Kris Jenkins : Elm
The second talk delivered at the second London Functional Programmers meetup, which is for sharing and learning about functional languages / topics. To go to the next meetup visit: http://www.meetup.com/London-Functionals/ Follow us on Twitter at: https://twitter.com/functionalworks Any feedback or questions: joshua@functionalworks.com