Functional Geekery

Proctor
undefined
Jan 5, 2016 • 58min

Functional Geekery Episode 41 - Eric Normand

In this episode I talk with Eric Normand. We talk about teaching ideas around functional programming, digging down into finding the motivations of why someone should care enough to want to learn something, and we end with some tips to keep in mind when teaching. Our Guest, Eric Normand @ericnormand on Twitter http://www.lispcast.com/ http://www.clojuregazette.com/ http://www.purelyfunctional.tv/ http://www.lispcast.com/geekery eric@lispcast.com Announcements Compose :: Conference will be taking place Thursday, Feb. 4th and Friday, Feb. 5 of 2016 in New York City. Compose is a conference for typed functional programmers, focused specifically on Haskell, OCaml, F#, SML, and related technologies. To find out more and to register, visit http://www.composeconference.org/ LambdaDays 2016 will be taking place on the 18th and 19th of February in Kraków, Poland. The CFP and registration has opened, so make sure to visit lambdadays.org to find out more. And make sure to use code FunkyGeekz4dWin to get 10% off registration. :clojureD 2016 will be taking place on the 20th of February in Berlin, Germany. The CFP has opened, so make sure to visit www.clojured.de/ to find out more. ElixirDaze will be taking place March 4th in St. Augustine, Florida. ElixirDaze is a one day conference with a nearly full day of talks and a Helping Hack session to close it out. Visit elixirdaze.com to find out more. Erlang Factory San Fransisco will be taking place on the 10th and 11th of March, with training on the 7th through the 9th of March and the 14th through the 16th of March. The Call for Talks is now open through December 15th, and the Very Early Bird registration is open as well. LambdaConf will be taking place May 26th – 29th in Boulder, Colorado. The CFP is currently open, and keep an eye on lambdaconf.us to find out more. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Topics About Eric Normand Eric’s previous appearance on Episode 18 Moving PurelyFunctional.tv to smaller more frequent videos Ruby Tapas Elixir Sips Eric on Giant Robots Smashing into Other Giant Robots Eric on Ruby Rogues The move to shorter more frequent videos and getting feedback on teaching You can never underestimate the level you should be teaching at Eric’s process for determining how to teach something Teaching map, filter, and reduce reduce as macaroni art Finding the motivation of “why” someone should care Count the number of mutations and see how much state you are keeping around Composability of functions Joel Spolsky’s Can Your Programming Language Do This? Abstractions in common Object Oriented languages and their communities Data modeling Students enrolling in Classes Modeling a ManyToMany class as an object How to start to get a “Functional Mindset” Refactoring and Design Patterns as hooks to functional programming Style Guides and Metrics as a way to promote functional programming Vision of PurelyFunctional.tv as interchange of functional languages Call for interest in teaching other languages as part of PurelyFunctional.tv Notes from Eric on http://www.lispcast.com/geekery Tips on teaching Write blog posts on questions from IRC or StackOverflow Keep breaking it down further and relate it to experience Make it practical “The material and transfer of it to other people should be the focus” As always, a giant Thank You goes to David Belcher for the logo design.
undefined
Dec 22, 2015 • 1h 3min

Functional Geekery Episode 40 - David Nolen

In this episode I talk with David Nolen. We talk his background in Functional Programming, entry into Lisps and Clojure, ClojureScript, Om and Om Next, and the ideas Om next is taking from React, GraphQL, and Falcor. Our Guest, David Nolen David is @swannodette on Twitter http://swannodette.github.io/ Sponsors This episode is sponsored by PurelyFunctional.tv. PurelyFunctional.tv’s Online Mentoring has just launched. It is step-by-step online mentoring that takes you from Clojure dabbler to Clojure professional. Sign up with the link purelyfunctional.tv/geekery to get 50% off the first month! Announcements Compose :: Conference will be taking place Thursday, Feb. 4th and Friday, Feb. 5 of 2016 in New York City. Compose is a conference for typed functional programmers, focused specifically on Haskell, OCaml, F#, SML, and related technologies. To find out more and to register, visit http://www.composeconference.org/ LambdaDays 2016 will be taking place on the 18th and 19th of February in Kraków, Poland. The CFP and registration has opened, so make sure to visit lambdadays.org to find out more. And make sure to use code FunkyGeekz4dWin to get 10% off registration. :clojureD 2016 will be taking place on the 20th of February in Berlin, Germany. The CFP has opened, so make sure to visit www.clojured.de/ to find out more. ElixirDaze will be taking place March 4th in St. Augustine, Florida. ElixirDaze is a one day conference with a nearly full day of talks and a Helping Hack session to close it out. Visit elixirdaze.com to find out more. Erlang Factory San Fransisco will be taking place on the 10th and 11th of March, with training on the 7th through the 9th of March and the 14th through the 16th of March. The Call for Talks is now open through December 15th, and the Very Early Bird registration is open as well. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Topics About David Nolen Datomic ClojureScript How David got into Functional Programming and Lisps The C Programming Language Structure and Interpretation of Computer Programs Racket Arc Clojure “Just downloaded a Jar and it worked” miniKanren core.logic History of ClojureScript Cognitect React Figwheel DevCards ClojureScript self compiles Code sharing and Reader Conditionals “There is not a distinction between front-end and back-end people” Alignment between JVM and JavaScript environment for Clojure and ClojureScript semantics Clojure doesn’t have any specification […] it embraces the host semantics” Communicating Sequential Processes The future of ClojureScript “We are pretty much lock step with Clojure” Macros in ClojureScript vs Clojure and impact on code sharing Om State is a fundamental problems in UIs Flux Relay Redux Reagent Quiescent New direction with Om Next and the deeper understanding “All about being incremental” Om Next Om Next presentation at ClojureConj 2015 GraphQL Falcor Advantages of GraphQL and Falcor style of requesting data Batching in a way that what you get from the server is immediately renderable Caching of data and requests in Om Next Tradeoffs of GraphQL and Falcor style of requesting data in Om Next iOS and Android running Om Next Kitchen Table Coders @ktcoders on Twitter Arcadia Demand Driven Architecture talk from David Nolen and Kovas Boguta Om Next presentation at EuroClojure 2015 CRAFT in Budapest On IRC – #clojurescript on freenode.net #clojurescript on clojurians Slack (invite link) As always, a giant Thank You goes to David Belcher for the logo design.
undefined
Dec 15, 2015 • 31min

Functional Geekery Episode 39 - Philip Wadler

In this episode I talk with Professor Philip Wadler. We talk the correspondence between mathematics and computation, his research into concurrent distributed systems, and other research in the area with ABCD and BETTY. Our Guest, Professor Philip Wadler Professor Wadler is @philipwadler on Twitter Homepage Blog Sponsors This episode is sponsored by PurelyFunctional.tv. PurelyFunctional.tv’s Online Mentoring has just launched. It is step-by-step online mentoring that takes you from Clojure dabbler to Clojure professional. Sign up with the link purelyfunctional.tv/geekery to get 50% off the first month! Announcements Compose :: Conference will be taking place Thursday, Feb. 4th and Friday, Feb. 5 of 2016 in New York City. Compose is a conference for typed functional programmers, focused specifically on Haskell, OCaml, F#, SML, and related technologies. To find out more and to register, visit http://www.composeconference.org/ LambdaDays 2016 will be taking place on the 18th and 19th of February in Kraków, Poland. The CFP and registration has opened, so make sure to visit lambdadays.org to find out more. And make sure to use code FunkyGeekz4dWin to get 10% off registration. :clojureD 2016 will be taking place on the 20th of February in Berlin, Germany. The CFP has opened, so make sure to visit www.clojured.de/ to find out more. ElixirDaze will be taking place March 4th in St. Augustine, Florida. ElixirDaze is a one day conference with a nearly full day of talks and a Helping Hack session to close it out. Visit elixirdaze.com to find out more. Erlang Factory San Fransisco will be taking place on the 10th and 11th of March, with training on the 7th through the 9th of March and the 14th through the 16th of March. The Call for Talks is now open through December 15th, and the Very Early Bird registration is open as well. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Topics About Philip Wadler Wadler on Computability at The Stand Took a course in Lisp from John McCarthy at Standford “How can you know you are doing the right thing?” Formal proofs vs empirical studies Eugenio Moggi and Gordon Plotkin and Denotational Semantics “If you write things in italic font instead of teletype font, all of a sudden people think ‘That’s too difficult, I can’t do that'” “Mathematics is general approach to reasoning” Propositions at Types Linear Logic and concurrent distributed systems “There were things that were done for completely independent reasons that are useful to computing” Current world view of his research Process Calculi CCS by Robin Milner CSP by Tony Hoare Pi Calculus by Robin Milner Kohei Honda Correspondence between Session Types and Linear Logic Multi-Party Session Types Nobuko Yoshida Marco Carbone Fabrizio Montesi Carsten Schürmann Scribble Mungo Where can people find out more information and resources ABCD – A Basis for Concurrency and Distribution Professor Wadler’s Homepage BETTY Lambda Calculus Philip Wadler waving his Fuzzy Stuffed Lambda “If you can cope with JavaScript or with many of the other systems that are out there you have the skills to cope with the mathematics that is out there.” Introduction to Functional Programming “Have a weird name” As always, a giant Thank You goes to David Belcher for the logo design.
undefined
Dec 8, 2015 • 1h 2min

Functional Geekery Episode 38 - Dr. Conrad Barski

In this episode I talk with Dr. Conrad Barski. We talk his background in computers and medicine; entry into functional programming with Haskell and Lisp; ClojureScript with Om, React, and GraphQL; and end with his latest interest in block chains as distributed concurrent data structures. Our Guest, Dr. Conrad Barski Conrad is @lisperati on Twitter http://lisperati.com/ Sponsors This episode is sponsored by PurelyFunctional.tv. PurelyFunctional.tv’s Online Mentoring has just launched. It is step-by-step online mentoring that takes you from Clojure dabbler to Clojure professional. Sign up with the link purelyfunctional.tv/geekery to get 50% off the first month! Announcements LambdaDays 2016 will be taking place on the 18th and 19th of February in Kraków, Poland. The CFP and registration has opened, so make sure to visit lambdadays.org to find out more. And make sure to use code FunkyGeekz4dWin to get 10% off registration. :clojureD 2016 will be taking place on the 20th of February in Berlin, Germany. The CFP has opened, so make sure to visit www.clojured.de/ to find out more. Erlang Factory San Fransisco will be taking place on the 10th and 11th of March, with training on the 7th through the 9th of March and the 14th through the 16th of March. The Call for Talks is now open through December 15th, and the Very Early Bird registration is open as well. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Topics About Dr. Conrad Barski Land of Lisp Conrad’s entrance into programming and how that relates to his M.D. Conrad’s discovery of Lisp Bjarne Stroustrup saying “look at what the functional programming people are doing” Venturing into Haskell Why Common Lisp was the choice over a Scheme Anaphoric Macros Clojure Casting SPELs in Lisp “Why don’t we turn the Lisp REPL into Zork” No Starch Press Realm of Racket The appeal of using games as the examples in his books Hopscotch Experience in Haskell “If I knew I would live for a million years, I would spend the first 30 learning Haskell” Difference in ways of thinking between Haskell and Common Lisp or Clojure Phil Bagwell’s paper on Persistent Data Structures Getting into Clojure from Common Lisp Arc by Paul Graham ClojureScript Common core between Clojure and ClojureScript and cljx Graph query languages, e.g. GraphQL and Falcor React Om from David Nolen Om Next Cursors in Om setq in Common Lisp The benefit of Immutable Persistent Data Structures in React rendering Querying the data structure for app state in Om Next Commander Keen by John Carmack Go Channels, core.async, and Hoare’s Communicating Sequential Processes Bitcoin and Block Chains Datomic Ethereum Smart Contracts Removing the traditional client server model with a peer-to-peer version Paxos and Raft Confirmation times for code changes as part of block chain events Bitcoin for the Befuddled kr2n.com Contact Conrad if you have experience with Block chains and distributed databases As always, a giant Thank You goes to David Belcher for the logo design.
undefined
Dec 1, 2015 • 1h 4min

Functional Geekery Episode 37 - Eric Smith

In this episode I talk with Eric Smith. We talk about his introduction to functional programming and what he looks at from a organizational perspective, his interest in the history of computation, and covers some thoughts on how we should be introducing people to programming with lessons learned from digging into the history of computation. Our Guest, Eric Smith Eric is @eric_s_smith on Twitter Middlebury Interactive Languages Sponsors This episode is sponsored by PurelyFunctional.tv. PurelyFunctional.tv’s Online Mentoring has just launched. It is step-by-step online mentoring that takes you from Clojure dabbler to Clojure professional. Sign up with the link purelyfunctional.tv/geekery to get 50% off the first month! Announcements LambdaDays 2016 will be taking place on the 18th and 19th of February in Kraków, Poland. The CFP and registration has opened, so make sure to visit lambdadays.org to find out more. And make sure to use code FunkyGeekz4dWin to get 10% off registration. :clojureD 2016 will be taking place on the 20th of February in Berlin, Germany. The CFP has opened, so make sure to visit www.clojured.de/ to find out more. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Topics About Eric Smith Vermont Functional Programming user group One of Eric’s talks at VT Fun How Eric got into software development Personal language evolution and introduction to Functional Programming Architecture the Lost Years by “Uncle Bob” Martin “Keep the interface with the world at the outside layer of the onion” “Recursive Functions for going over data collections” Common Lisp, Clojure, Haskell, and Scala PureScript What Eric liked about the different languages from both a personal and work place organization perspective “Setting the bar high is actually helpful” Daniel Spiewak May Your Data Ever Be Coherent Separation between what you are trying to express and your control flow Peter Landin’s The Next 700 Languages Thinking in State Transitions vs Composition Statement vs Expression based languages Denotational Semantics Peter Landin, Christopher Strachey, and Dana Scott Eric’s interest in the history of computing “Victim of an industry that has prioritized moving forward or getting things done vs getting things done in a sustainable or scalable way” Presper Eckert and the von Neumann architecture “We’ve lost sight of what was happening at the very beginning” Kurt Gödel’s Proof of Incompleteness (in English) and in original German Gödel Numbering Lambda Calculus by Alanzo Church Recursive Functions of Symbolic Expressions by John McCarthy What drove Eric to dig into the history of computing “As a manager, I was inheriting fairly large code bases that were a mess” Let’s be mainstream! by Evan Czaplicki “We would not teach people imperative programming as a beginning thing, and that would be something reserved for experts” Functional Reactive Programming Elm big-bang in Racket Other lessons of history that people should know of On the basis of the mathematical theory of computation by John McCarthy Peter Landin ISWIM Robert Floyd, Assigning Meaning to Programs C.A.R. Hoare John Backus’ and his Can Programming Be Liberated from the von Neumann Style Speedcoding How to Design Programs Systematic Program Design from edX QuickCheck F# for Fun and Profit from Scott Wlaschin Sum Types Curry-Howard isomorphism Property Based Testing Edsger Dijkstra’s Structured Programming “Forces you to think about the properties of what comes out of your function” Scott Wlaschin’s An introduction to property based testing How to Design Worlds PureScript by Example by Phil Freeman As always, a giant Thank You goes to David Belcher for the logo design.
undefined
Nov 24, 2015 • 58min

Functional Geekery Episode 36 - Rob Sullivan (a.k.a DataChomp)

In this episode I talk with Rob Sullivan. We talk about his entry into and experience with functional programming from the perspective of a DBA, and how functional programming languages’ massive concurrency and speed change the constraints around the database. Our Guest, Rob Sullivan Rob is @datachomp on Twitter datachomp.com Sponsors This episode is sponsored by DigitalOcean. DigitalOcean makes it quick and easy to get up running with hosting your project. New users use the promo code GEEKERY to get $10 credit when signing up. This episode is sponsored by PurelyFunctional.tv. PurelyFunctional.tv’s Online Mentoring has just launched. It is step-by-step online mentoring that takes you from Clojure dabbler to Clojure professional. Sign up with the link purelyfunctional.tv/geekery to get 50% off the first month! Announcements LambdaDays 2016 will be taking place on the 18th and 19th of February in Kraków, Poland. The CFP and registration has opened, so make sure to visit lambdadays.org to find out more. And make sure to use code FunkyGeekz4dWin to get 10% off registration. :clojureD 2016 will be taking place on the 20th of February in Berlin, Germany. The CFP has opened, so make sure to visit www.clojured.de/ to find out more. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Topics About Rob Sullivan How Rob went from DB to dabbling in app development Micro-ORMs Rob Conery’s talk The Next Big Thing Or Cool-Kid Koolaid? Slicing Through The Rhetoric of MVC vs. WebForms “Learning is cumulative [..] Everything builds on itself” “Pretend I am an App Dev, get a job, and then take over the database” Seeing the goodwill of the core contributors of Elixir is what attracted Rob to Elixir First experience in Functional Programming with Clojure “Keep your friends close, keep your enemies closer” “I haven’t met a Clojurista who isn’t extremely smart and doesn’t care about their app” “[Clojure] taught me and showed me there was something to Functional Programming” Rob’s experience getting into Elixir The benefit and fun of just playing with other languages with others How Elixir got onto Rob’s radar PostgreSQL is suddenly the bottleneck The interest in the BEAM for day job from an Operations perspective Ecto Rails’ Active Record vs Jeremy Evans’ Sequel moebius Feature richness of PostgreSQL and the problems of having abstractions that limit those features PgBouncer Not having control of your PostgreSQL instance when deploying PostgreSQL being the bottleneck in Elixir Concurrency and isolation levels pg_stat_statements Lack of current visibility about data access behavior in Elixir Functional programming languages ability for massive concurrency when using the database “Is it fair to attribute problems to Postgres when you’ve thrown it in a place with shared resources” Microservices and the separation of reads vs writes against the database Dealing with the differences of a “shared” vocabulary Virtual User Groups Paul Lamb Benefits of smaller groups and lack of travel “It pulls them out and gets them involved” elixir.school Throw Discourse on Digital Ocean “Take a couple of hours to play with something new” “Always email me at rob@datachomp.com and I will reply within a month or two.” As always, a giant Thank You goes to David Belcher for the logo design.
undefined
Nov 17, 2015 • 57min

Functional Geekery Episode 35 - Rachel Reese

In this episode I talk with Rachel Reese. We talk about her introduction to F# and Functional Programming, the power of user group to help one’s learning, introducing F# to the workplace, F# and microservices, and more. Our Guest, Rachel Reese Rachel is @rachelreese on Twitter Sponsors This episode is sponsored by DigitalOcean. DigitalOcean makes it quick and easy to get up running with hosting your project. New users use the promo code GEEKERY to get $10 credit when signing up. This episode is sponsored by PurelyFunctional.tv. PurelyFunctional.tv’s Online Mentoring has just launched. It is step-by-step online mentoring that takes you from Clojure dabbler to Clojure professional. Sign up with the link purelyfunctional.tv/geekery to get 50% off the first month! Announcements LambdaDays 2016 will be taking place on the 18th and 19th of February in Kraków, Poland. The CFP and registration has opened, so make sure to visit lambdadays.org to find out more. And make sure to use code FunkyGeekz4dWin to get 10% off registration. :clojureD 2016 will be taking place on the 20th of February in Berlin, Germany. The CFP has opened, so make sure to visit www.clojured.de/ to find out more. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Topics About Rachel Reese Jet.com Mostly Erlang with Rachel Reese and Andrea Magnorsky How Rachel got into F# Skills Matter’s Progressive F# Tutorials in New York F# Koans Getting hooked by Type Providers in F# Vermont Functional Programming User Group Learning F# by presenting to other people with different functional programming backgrounds NashFP Introducing F# to work Migrating a database migration from C# to F# Rachel’s blog post on the migration Firefly Logic Tasky Xamarin Dave Thomas What about F# helped with the data migration process Types in F# helped to identify bugs of fetching extra data The amount of interest F# won with the drastic reduction of the migration run time Canopy Life after Firefly Logic and the move to Jet.com 98% of the code at Jet is F# Benefits of pipeline and function composition to address cross-cutting concerns Training others in F# as part of Training and Evangelism at Jet Microservices help the ramp up of new developers How Jet treats and thinks about microservices Single Responsibility Principle Jet’s Torch project for managing microservices Micro Services Antipatterns Importance of a good story around infrastructure with microservices ØREDEV Rachel’s Mircoservices talk Rachel’s Data Architecture talk Working with 350+ microservices Isolate side effects to separate microservices Event Sourcing Build Stuff conferences VSLive Jet is hiring – contact rachel@jet.com or aimee@jet.com if interested tryfsharp.org fsharpforfunandprofit.com/ from Scott Wlaschin Visual Studio Community Edition Xamarin Studio Calls to action for the audience “Come up with an idea and finish your first little bit of F# code” “By something from Jet.com if you can and are in the United States” @jettechnology on Twitter techgroup.jet.com As always, a giant Thank You goes to David Belcher for the logo design.
undefined
Nov 10, 2015 • 58min

Functional Geekery Episode 34 - Johnny Winn

In this episode I talk with Johnny Winn, the genius behind #myelixirstatus. We talk about how his background in software development, first forays into functional programming, introducing Elixir at work, learning techniques, The Elixir Fountain, and more. Our Guest, Johnny Winn Johnny is @johnny_rugger on Twitter Johnny is nurugger07 on GitHub ElixirFountain is @elixirfountain on Twitter Sponsors This episode is sponsored by DigitalOcean. DigitalOcean makes it quick and easy to get up running with hosting your project. New users use the promo code GEEKERY to get $10 credit when signing up. This episode is sponsored by PurelyFunctional.tv. PurelyFunctional.tv’s Online Mentoring has just launched. It is step-by-step online mentoring that takes you from Clojure dabbler to Clojure professional. Sign up with the link purelyfunctional.tv/geekery to get 50% off the first month! Announcements LambdaDays 2016 will be taking place on the 18th and 19th of February in Kraków, Poland. The CFP and registration has opened, so make sure to visit lambdadays.org to find out more. And make sure to use code FunkyGeekz4dWin to get 10% off registration. :clojureD 2016 will be taking place on the 20th of February in Berlin, Germany. The CFP has opened, so make sure to visit www.clojured.de/ to find out more. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Topics About Johnny a.k.a. Johnny Rugger on the internets Host of The Elixir Fountain podcast How Johnny got into software development and functional programming “I want to write stuff to build things” “It’s not how much you know, it’s how fast you can learn something” Hashrocket “I’ll do whatever I can to make the switch” “[Functional Programming] seemed to match the way I think” Experimenting in Erlang and Clojure Programming Elixir: Functional |> Concurrent |> Pragmatic |> Fun by Dave Thomas MagmaConf Infelx Chronos Johnny’s talk at RubyConf 2013 – The Polyglot in the Code Josh Adams and ElixirSips Elixir Fountain as a newsletter Moved to doing a podcast José Valim as the first episode of Elixir Fountain Podcast How Johnny got introduced to Erlang and Clojure before Elixir Project Euler “It’s very easy to be a programmer and live inside the bubble” F# “I can learn from it, but I didn’t have a place to apply it” Ecto “This looks just like LINQ” “I like to focus on small tools that do one thing and do it well” moebius “Inserting ten thousand rows in point-six seconds” Introducing Elixir to management and co-workers Phoenix Framework Plug “No [I’m not going to hire new Elixir developers], I’m going to take the Ruby programmers and teach them Elixir” Scaffolding as a learning technique Mimicking PDX Ruby thread on writing ls and grep to learn a new langauge “Take something that you know how it works, and figure out how to do it in your new language” calliope – writing a Haml parser to learn Elixir Stephen Pallen Lessons for marketing and promoting a community “It could be the greatest tool in the world, but if nobody knows about it does it matter?” #myelixirstatus Meetups popping up all the time Jax.Ex Lennart Fridén on Elixir Fountain Mob Programming Exercises for Programmers by Brian P. Hogan elixir-lang on GitHub Elixir Fountain podcast Jessica Kerr on Elixir Fountain Robert Virding on Elixir Fountain Elixir in Action by Saša Jurić johnny@elixirfountain.com As always, a giant Thank You goes to David Belcher for the logo design.
undefined
Nov 3, 2015 • 1h 10min

Functional Geekery Episode 33 - Richard Feldman and Tessa Kelly

In this episode I talk with Richard Feldman and Tessa Kelly about Elm. We cover how they each got into Elm, introducing Elm into an existing application, features novel to Elm, and the Elm Architecture. Our Guests, Richard Feldman and Tessa Kelly Tessa is @t_kelly9 on Twitter Richard is @rtfeldman on Twitter NoRedInk tech blog Sponsors This episode is sponsored by DigitalOcean. DigitalOcean makes it quick and easy to get up running with hosting your project. New users use the promo code GEEKERY to get $10 credit when signing up. This episode is sponsored by PurelyFunctional.tv. PurelyFunctional.tv’s Online Mentoring has just launched. It is step-by-step online mentoring that takes you from Clojure dabbler to Clojure professional. Sign up with the link purelyfunctional.tv/geekery to get 50% off the first month! Announcements Code Mesh 2015 is going to take place on the 3rd and 4th of November, and listeners can use the code fngeekery10 to get 10% off when you register. RICON 2015 will take place on the 5th and 6th of November. Midwest.io will be taking place on November 9th and 10th. Midwest.io is a two-day conference, bringing together 300 developers for an eclectic collection of talks covering the latest trends, best practices, and research in the field of computing. For more information visit http://www.midwest.io/. LambdaDays 2016 will be taking place on the 18th and 19th of February in Kraków, Poland. The CFP and registration has opened, so make sure to visit lambdadays.org to find out more. And make sure to use code FunkyGeekz4dWin to get 10% off registration. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Topics About Tessa Kelly About Richard Feldman How Tessa got into Elm LambdaConf 2015 MakerSquare NoRedInk Coming into Elm and Functional Programming with a math background How Richard got into Elm Rich Hickey’s Simple Made Easy CoffeeScript DreamWriter Bringing Elm into work and adoption with co-workers Writing Elm code and getting it into production within first week Using Elm’s Union Types for a consistent list of Elm Actions Type Annotations for functions Future update in Elm for dead code detection Features from Elm that are novel “Almost impossible to have a runtime error” Ability for Elm to detect unreachable code paths Type inference Time traveling debugger in Elm Future ability to export events, e.g. from QA team to Dev team, and add integration tests Inter-op story with JavaScript from Elm Overview of Elm Architecture start-app elm-effects View, Model, and Update Elm Tasks for deferred side effects Elm compared and contrasted to Reactive Architecture Actions vs Events “The Elm Architecture is really easy to follow” How Elm has the way they think “I would code in a style that would please the Elm compiler” Actions refer to user based events, as opposed to events that are JavaScript events Type Annotations in Elm vs JavaScript Type Annotations help to identify where side effects take place Resources for getting started with Elm Building a Live-Validated Signup Form in Elm Mike Clark’s Pragmatic Studio Series on Elm – Elm: Building Reactive Web Apps and Elm: Signals, Mailboxes & Ports Walkthrough: Introducing Elm to a JS Web App Elm website Things we missed talking about Elm’s package manager automatically enforces semantic versioning elm-html NoRedInk is hiring Developing a React Edge Calls to Action “Go play on the website” “Try rewriting a small piece of your website on Elm” As always, a giant Thank You goes to David Belcher for the logo design.
undefined
Oct 27, 2015 • 1h

Functional Geekery Episode 32 - Christopher Meiklejohn

In this episode I talk with Christopher Meiklejohn. We talk distributed systems, the myth of the client-server architecture, current research around distributed systems, and his research with Lasp. Our Guest, Christopher Meiklejohn @cmeik on Twitter cmeiklejohn on Github https://christophermeiklejohn.com/ Sponsors This episode is sponsored by DigitalOcean. DigitalOcean makes it quick and easy to get up running with hosting your project. New users use the promo code GEEKERY to get $10 credit when signing up. Announcements Code Mesh 2015 is going to take place on the 3rd and 4th of November, and listeners can use the code fngeekery10 to get 10% off when you register. RICON 2015 will take place on the 5th and 6th of November. Midwest.io will be taking place on November 9th and 10th. Midwest.io is a two-day conference, bringing together 300 developers for an eclectic collection of talks covering the latest trends, best practices, and research in the field of computing. For more information visit http://www.midwest.io/. LambdaDays 2016 will be taking place on the 18th and 19th of February in Kraków, Poland. The CFP and registration has opened, so make sure to visit lambdadays.org to find out more. And make sure to use code FunkyGeekz4dWin to get 10% off registration. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Topics About Christopher Meiklejohn MachineZone Université catholique de Louvain Peter Van Roy How Christopher got into Functional Programming Amazon DynamoDB paper Riak Basho Andy Gross From Ruby to Erlang: An Unexpected Journey “Being able to think about problems in multiple ways is what makes a good engineer” Looking into Haskell when coming into Functional Programming Benjamin Pierce’s Software Foundations Coq Reid Draper’s episode of Functional Geekery Making the move from Functional Programming to Distributed Systems The Erlang Runtime providing the groundwork of building distributed systems Loss of information with concurrent operations The idea of Client-Server is false assumption Convergent / Divergent talk at EmberConf Availability and Consistency are at odds “The ideas of strongly consistent systems are approximations of knowledge that exists” Interplanetary or Galactic level systems and latency Building computations of weakly consistent systems Lasp CRDTs – Distributed datastructures that are deterministic regardless of order Moving computation to the edges/clients of a system “There isn’t a client-server” “There are processes that are responsible for some data” “The true model says that the client really holds the source of truth” Removing temporal time from the system How do you treat clients that go offline? Microsoft Orleans Akka Resources for getting into distributed systems ThinkDistributed Causality and Consensus episodes CRDTs reading list Distributed Systems reading list Watch conference talks and read industrial papers for real world connections to the problem Bayou Architecture Find a problem that inspires you BOOM Bloom Peter Alvaro’s talk at Strange Loop Neal Conway’s Bloom talk Wicked Good Ruby 2013 – Bloom: A Language for Disorderly Distributed Programming Joe Hellerstein’s Ricon keynote 2012 Sean Cribs Ricon 2014 talk on Causality lasp-lang.org Christopher’s Strange Loop 2015 presentation on Lasp SyncFree Upcoming Appearances CodeMesh 2015 Ricon 2015 QCon San Fransisco 2015 As always, a giant Thank You goes to David Belcher for the logo design.

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app