Functional Geekery

Functional Geekery
By Proctor
About this podcast
Functional Geeks, Geeking Functionally
Latest episodes
Jan. 30, 2018
In this episode I talk with Jared Forsyth. We talk his exploration of programming languages, his exposure to programming languages, work in the Reason community, Reason Town, and more. Our Guest, Jared Forsyth @jaredforsyth on Twitter jaredly on Github https://jaredforsyth.com/ Reason Town @ReasonTownFM on Twitter Conference Announcements PyCon Colombia 2018 will be taking place February 9th, 10th & 11th in Medellin, Colombia. For more information, and to register, visit https://www.pycon.co/. Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/. LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/. BOB 2018 is coming up in Berlin, Germany on February 23rd, 2018. For more information, and to register, visit http://bobkonf.de/. :clojureD will be following BOB 2018 in Berlin, Germany on February 24th, 2018. For more information, and to register, visit http://clojured.de/. Micheal Nygard will be hosting a 5-day workshop “Monolith to Microservices” on March 12th-16th in Fort Walton Beach, Florida. For more information, and to register, visit: https://n6consulting.com/workshop/monolith-to-microservices/ CodeBeamSF will be taking place March 15th and 16th, with training taking on the 12th-14th and 19th-21st of March. For more information, and to register, visit: https://codesync.global/conferences/code-beam-sf-2018. Lambda Squared is a new conference taking place March 30th in Knoxville, Tennessee. For more information, and to register, visit https://www.lambda-squared.com/. ElixirConf EU will be taking place April 16th and 17th in Warsaw, Poland. For more information, and to register, visit: http://www.elixirconf.eu/. BuzzConf will take place the Thursday 26th of April, with workshops on Friday April 27th, in Buenos Aires, Argentina. For more information, and to register, visit: http://buzzconf.org/. Monadic Party, a 5 day Haskell Summer School, will be taking place in Poznań, Poland the 11th-15th of June. Visit https://monadic.party/ for more information and to register. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Announcements Some of you have asked how you can support Functional Geekery, in that vein, Functional Geekery now has a Patreon Page. If that is one of the ways you would like to show your support, you can find out more at https://www.patreon.com/fngeekery. Topics [@5:46] About Jared Kahn Academy How Jared got into programming Game-Maker Python Java C++ C# Racket JavaScript CoffeeScript ClojureScript Flow Go Rust Reason What languages were Jared using consistently Languages bleeding in between each other Things Jared ran into in the different languages core.typed WebAssembly What were the things Jared was looking for in a language What put Reason on Jared’s radar The current state of Reason for adoption Current state of integration with JavaScript OCaml BuckleScript ReasonReact Reason React Native Where the Reason adoption is primarily taking place at this point pack.re Targeting native devices on iOS and Android with Reason Jared’s work in Reason Blogging Reason experiments Making a cross-platform mobile game in Reason/OCaml Reason Town “Languages live or die by their community” Format of Reason Town First Reason Conference in Vienna Geographic distribution of Reason Where to stay up to date with Reason Reason Website Reason Discord Channel Reason Articles on Reason website What excites Jared in the Reason community Reason React compiled to native iOS without JavaScript bridge esy package manager Places to contribute to Reason Reason on Twitter ReasonML Hub on Twitter As always, a giant Thank You goes to David Belcher for the logo design.
Dec. 19, 2017
In this episode I talk with Scott Nimrod. We catch up with what he has been up to since he was last on, using F# for profit, Nikeza, Elm, and more. Our Guest, Scott Nimrod @bizmonger on Twitter https://bizmonger.wordpress.com/ bizmonger on Github Scott’s YouTube Channel Conference Announcements Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/. LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/. BOB 2018 is coming up in Berlin, Germany on February 23rd, 2018. For more information, and to register, visit http://bobkonf.de/. :clojureD will be following BOB 2018 in Berlin, Germany on February 24th, 2018. For more information, and to register, visit http://clojured.de/. Lambda Squared is a new conference taking place March 30th in Knoxville, Tennessee. For more information, and to register, visit https://www.lambda-squared.com/. LambdUp, Prague’s biggest functional programming event of the year, will be taking place December 16th at MeetFactory in Prague. For more information and to register visit: https://www.lambdup.io/ Monadic Party, a 5 day Haskell Summer School, will be taking place in Poznań, Poland the 11th-15th of June. Visit https://monadic.party/ for more information and to register. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Announcements Some of you have asked how you can support Functional Geekery, in that vein, Functional Geekery now has a Patreon Page. If that is one of the ways you would like to show your support, you can find out more at https://www.patreon.com/fngeekery. Topics [@4:01] Welcome back to Scott Scott on Episode 53 F# Using F# at work beyond just learning on the side Sagas Functional And Reactive Domain Modeling by Debasish Ghosh Lessons learned from moving from using F# for just fun, to using F# for profit Using `` around function names in tests to allow test names to read as sentences Event Driven Architecture and Sagas Eric Normand on Episode 41 talking about how most things can be reduced to a `map`, `filter`, or `reduce`. Ody Mbegbu on Episode 81 LambdaCartel Nikeza LambdaCartel video streams Lessons learned from working on Nikeza .NET Core Giraffe Working with F# on .NET Core Docker Visual Studio Code Visual Studio Code and Ionide Visual Studio 2017 version 15.6 – Preview Release Elm Domain Modeling Made Functional by Scott Wlaschin The Book of F# Branching Out With Elm Differences Scott found between working with F# and working with Elm F# Advent Calendar Scott’s F# Advent Calendar contribution Attending NDC Minnesota Scott talking with Scott Wlaschin As always, a giant Thank You goes to David Belcher for the logo design.
Dec. 5, 2017
In this episode I talk with Eric Normand. We catch up with what he has been up to since last episode, talk re-frame in ClojureScript, his newsletter, Clojure SYNC, online community discussions, and more. Our Guest, Eric Normand @ericnormand on Twitter http://www.lispcast.com/ http://www.clojuregazette.com/ http://www.purelyfunctional.tv/ Clojure SYNC Conference Announcements LambdUp, Prague’s biggest functional programming event of the year, will be taking place December 16th at MeetFactory in Prague. For more information and to register visit: https://www.lambdup.io/ Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/. LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/. BOB 2018 is coming up in Berlin, Germany on February 23rd, 2018. For more information, and to register, visit http://bobkonf.de/. :clojureD will be following BOB 2018 in Berlin, Germany on February 24th, 2018. For more information, and to register, visit http://clojured.de/. Lambda Squared is a new conference taking place March 30th in Knoxville, Tennessee. For more information, and to register, visit https://www.lambda-squared.com/. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Announcements Some of you have asked how you can support Functional Geekery, in that vein, Functional Geekery now has a Patreon Page. If that is one of the ways you would like to show your support, you can find out more at https://www.patreon.com/fngeekery. Topics [@2:59] Welcome back to Eric Eric on Episode 18 Eric on Episode 41 http://www.purelyfunctional.tv/ re-frame JQuery Backbone.js ClojureScript React Angular Vue Reagent What re-frame gets you Event architecture “Your events and subscriptions become your bedrock” Redux The Elm Architecture “Confidence that we are onto something” with similar ideas coming out Centralizing the state management Bringing the ideas to “non-functional programmers” with Redux in JavaScript PurelyFunctional.tv Newsletter Clojure Looking at trends and threads across multiple disciplines Clojure SYNC The Craft of Programming theme Zach Tellman The Elements Of Clojure George Kierstein Emily Ashley Career theme Rebecca Kinsella Elana Hashman Leiningen Baishampayan Ghose HelpShift Context theme Gerald Jay Sussman Will Byrd David Nolen Kim Crayton Discount code of `geekery` for 10% off registration What made Eric make the leap to put on a conference Clojure/west and Clojure/Conj being combined French Quarter Putting together a food guide for the conference Southern Food and Beverage Museum The New Orleans Hotel Collection Smaller more intimate time for after conference events Online talk about Clojure community being in decline Negative tone of discussions online “People don’t complain about strengths that much” Complaining being a sign of a healthy community Gossip being the way to determine the mores of the group “[The negatively talked about subject] is significant, […] that is the thing that is important” Upcoming projects from Eric Understanding Re-frame Video Course Upcoming talk at LambdUp Giving discounts for people where their country’s economy might not be as strong As always, a giant Thank You goes to David Belcher for the logo design.
Nov. 28, 2017
In this episode I talk with Radu Popescu. We talk his introduction to software development, high performance C++, where functional ideas fit in with high performance C++, CernVM File System, Erlang, an overview of where Rust fits between functional languages and C++, and more. Our Guest, Radu Popescu radupopescu on Github @iradupopescu on Twitter https://radupopescu.net/ Conference Announcements LambdUp, Prague’s biggest functional programming event of the year, will be taking place December 16th at MeetFactory in Prague. For more information and to register visit: https://www.lambdup.io/ Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/. LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/. BOB 2018 is coming up in Berlin, Germany on February 23rd, 2018. For more information, and to register, visit http://bobkonf.de/. :clojureD will be following BOB 2018 in Berlin, Germany on February 24th, 2018. For more information, and to register, visit http://clojured.de/. Lambda Squared is a new conference taking place March 30th in Knoxville, Tennessee. For more information, and to register, visit https://www.lambda-squared.com/. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Announcements Some of you have asked how you can support Functional Geekery, in that vein, Functional Geekery now has a Patreon Page. If that is one of the ways you would like to show your support, you can find out more at https://www.patreon.com/fngeekery. Topics [@3:00] About Radu Cern CernVM File System How Radu came into software development C++ Functional Programming Principles in Scala by Martin Odersky on Coursera High Performance computing with C++ Fortran TensorFlow What standards of C++ Radu was writing against Lambdas and Higher Order Functions being introduced into C++ How some of the functional ideas fit into high performance C++ C++ Template Language as a purely functional language CernVM File System Linux FUSE (Filesystem in Userspace) Terabytes of new software every day at CERN Content Addressed Storage Field-programmable Gate Array Using Erlang for a publication system Moving from Command Line based to Server based “Let it Crash” approach in Erlang What the Erlang based Repository Gateway solves The different roles the Repository Gateway fulfills Key takeaways from using Erlang for the Repository Gateway C++ Inter-op story Statically-typed C++ versus Dynamic Erlang Dialyzer OTP Functional Composition and Immutable Values for ease of debugging Erlang QuickCheck John Hughes Quviq RapidCheck Rust Where Rust fits in between C++ and the functional family of languages RAII Algebraic Data Types Why one might pick Rust over Haskell, OCaml, or other similar languages Wrapping C libraries with Rust, and wrapping Rust libraries with C CodeMesh Radu’s Talk page at CodeMesh CernVM Documentation CernVM 10th Anniversary Workshop As always, a giant Thank You goes to David Belcher for the logo design.
Nov. 21, 2017
In this episode I talk with Sam Williams. We talk his introduction to programming, moving to web-development with Erlang, the HydrOS project, the Archain project, and more. Our Guest, Sam Williams samcamwilliams on Github @ArchainTeam on Twitter Conference Announcements Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/. LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/. BOB 2018 is coming up in Berlin, Germany on February 23rd, 2018. For more information, and to register, visit http://bobkonf.de/. :clojureD will be following BOB 2018 in Berlin, Germany on February 24th, 2018. For more information, and to register, visit http://clojured.de/. Lambda Squared is a new conference taking place March 30th in Knoxville, Tennessee. For more information, and to register, visit https://www.lambda-squared.com/. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Announcements Some of you have asked how you can support Functional Geekery, in that vein, Functional Geekery now has a Patreon Page. If that is one of the ways you would like to show your support, you can find out more at https://www.patreon.com/fngeekery. Topics [@2:25] About Sam The University of Kent How Sam was introduced to programming Visual Basic PHP Writing a Meta-News analysis site How Sam first came across Erlang Exposure to Lisp and Scheme Getting started in Erlang Learn You Some Erlang for Great Good by Fred Herbert Programming Erlang (2nd Edition) by Joe Armstrong “If you want to really learn a language, you have to have some sufficiently difficult task, to make you engage with it properly” Getting a deeper understanding of the nuances of Erlang Building a web technology company on Erlang Yaws ehtml Moving to write Erlang to run on Unikernerl as a final project Unikernels Xen How a final project works Richard Mortier Migrating the Erlang Virtual Machine to run on bare metal HydrOS Distributed Operating System What is the goal of the HydrOS project Idea of process mobility across devices Archain What is a block-chain What is Archain How block-chain differs from Git or CRDTs Proof-of-work How Archain works to incentivize distribution of archive data What kinds of information does Archain hope to Archive Preventing the “Orwellian Memory Hole” Internet Archive Some of the limitations of the Internet Archive How Erlang fits with building a block-chain Simulating large networks Archain as a platform for writing distributed applications Sam’s talk at CodeMesh 2017 Code BEAM STO 2018 As always, a giant Thank You goes to David Belcher for the logo design.
Nov. 7, 2017
In this episode I talk with Fred Herbert. We talk his introduction to Erlang, making languages accessible to the community, productionization as a phase of software, property testing, we wrap up with a tease of how “Everything is Terrible”, and much more. Our Guest, Fred Herbert @mononcqc on Twitter https://ferd.ca/ Conference Announcements Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/. LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/. BOB 2018 is coming up in Berlin, Germany on February 23rd, 2018. For more information, and to register, visit http://bobkonf.de/. :clojureD will be following BOB 2018 in Berlin, Germany on February 24th, 2018. For more information, and to register, visit http://clojured.de/. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Announcements Some of you have asked how you can support Functional Geekery, in that vein, Functional Geekery now has a Patreon Page. If that is one of the ways you would like to show your support, you can find out more at https://www.patreon.com/fngeekery. Topics [@2:06] About Fred Learn You Some Erlang For Great Good Erlang in Anger How Fred got introduced Erlang Writing “Learn You Some Erlang” as he was learning Erlang Python Structure and Interpretation of Computer Programs Structure of Erlang programs “The idea that there is no main function” OTP Go Links and Monitors in Erlang Erlang and OTP in Action “Difference in trying to prevent the errors compared to trying to deal with them” Making languages approachable and health of the community Fred’s Keynote at Erlang User Conference 2016 Getting interaction with newcomers to remove hurdles to getting started in a language Thinking about the Productionization Phase of your software “A lot of the work you do is not writing it the first time, its really keeping the thing going after that” Smalltalk dtrace Importance of thinking about your people as a part of your system Conway’s Law Haskell Racket House M.D. Seeing your code as a piece of writing The importance of predictable code Programming in the Large and Programming in the Small Programming Paradigms for Dummies by Peter Van Roy Lasp Property Testing PropEr Testing.com “Most of the errors in the system are mistakes that I didn’t see coming” Haskell QuickCheck Erlang QuickCheck Hypothesis in Python PropEr Quviq Upcoming talk at CodeMesh Everything is Terrible SpawnFest This Week in Erlang As always, a giant Thank You goes to David Belcher for the logo design.
Oct. 31, 2017
In this episode I talk with Oskar Wickström. We talk his introduction to software development, journey to functional programming, tooling, state machines and static typing, and more. Our Guest, Oskar Wickström @owickstrom on Twitter owickstrom on Github https://wickstrom.tech/ Conference Announcements CodeMesh is coming up November 8th and 9th in London. For more information, and to keep an eye open for registration, visit http://www.codemesh.io/. Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/. LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/. BOB 2018 is coming up in Berlin, Germany on February 23rd, 2018. For more informationa, and to register, visit http://bobkonf.de/. :clojureD will be following BOB 2018 in Berlin, Germany on February 24th, 2018. For more information, and to register, visit http://clojured.de/. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Announcements Some of you have asked how you can support Functional Geekery, in that vein, Functional Geekery now has a Patreon Page. If that is one of the ways you would like to show your support, you can find out more at https://www.patreon.com/fngeekery. Topics [@2:35] About Oskar How Oskar moved from music to programming PHP for a band website What made software become more interesting to move into development WordPress What made to move to looking into other languages Object-Oriented Programming in PHP C# and .NET Java Scala Haskell “Absorbing every advice from people that I respected” How Oskar was exposed to Haskell Learn You A Haskell Programming Scala as Java, but with a better syntax What were the “Ah-Ha” moments when starting to learn Haskell Static-Dispatch in Haskell vs Dynamic-Dispatch in Java Implementing an Event Store Event Sourcing Making the move from Haskell in side projects to working in Haskell Functional JavaScript React Reactive Programming Implementing functional ideas from Haskell to JavaScript Giving mini-trainings on functional programming concepts Dual Feedback loop between play projects and applying to work problems First work project in Haskell Oden Go language PureScript Using a language to deliver small tooling for yourself Trying to use the best tooling How Oskar thinks about picking tooling The Unix Philosophy of “doing one thing and one thing well” Documentation Sphinx reStructuredText Hyper PureScript middleware like Express and Connect in Node.js Representing middleware as a state-machine verified by a type system Why run PureScript in a Node.js environment? “That’s a question I always get asked when people ask me about Hyper” Row Polymorphism Migrating an existing Node.js app to PureScript purerl Cowboy Hardy Jones mentioning purerl on Magic Read Along servant Overview of upcoming talk “Finite State Machines – Your Compiler Wants In” Idris “This is a very nice hammer, but you don’t want to apply it everywhere” CodeMesh Haskell eXchange 2018 As always, a giant Thank You goes to David Belcher for the logo design.
Oct. 24, 2017
In this episode I talk with Micheal Sperber. We talk his introduction to programming and functional programming languages, important commonalities across languages, power of syntactic abstraction, teaching programming to beginners and experienced programmers, Concurrent ML, and more. Our Guest, Micheal Sperber @sperbsen on Twitter http://www.deinprogramm.de/sperber/ Conference Announcements CodeMesh is coming up November 8th and 9th in London. For more information, and to keep an eye open for registration, visit http://www.codemesh.io/. Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/. LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/. BOB 2018 is coming up in Berlin, Germany on February 23rd, 2018. For more informationa, and to register, visit http://bobkonf.de/. :clojureD will be following BOB 2018 in Berlin, Germany on February 24th, 2018. For more information, and to register, visit http://clojured.de/. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Announcements Some of you have asked how you can support Functional Geekery, in that vein, Functional Geekery now has a Patreon Page. If that is one of the ways you would like to show your support, you can find out more at https://www.patreon.com/fngeekery. Topics [@3:03] About Micheal How Micheal got into software How Micheal’s interest in teaching related to his interest in software Micheal journey of learning different languages BASIC C Germany’s National Competition of Programmers for high school students Finding a community of people to learn from How Micheal came across functional programming LISP Structure and Interpretation of Computer Programs Scheme Hope Miranda Haskell ML OCaml Clojure Erlang F# Scala Elixir What is the core that Micheal finds across functional languages Immutability Type Based Design (regardless of static or dynamic typed) Macros as the “feature wish” for all languages Hygienic Macros Power of a common, well known, syntactic abstraction What Micheal has found about teaching functional languages “Your students are different than you” “You have to put some distance between what you teach and what you love” Racket “You need to have languages designed for teaching, and tooling designed for teaching” Dr. Racket Commonality of teaching beginning programmers and teaching experienced professionals Common principles for teaching as starting points “Keep excitement out of it” Program by Design How to Design Programs Design Recipe Using types about your data to match information in your problem statement Lessons from taking the teachers’ excitement out of the curriculum “Here’s this thing, we don’t care if you love it or not, just do your thing” Letting the students get excited for themselves. Difference in thinking in types between dynamically and statically typed languages Concurrent ML Overview of similarity and differences in concurrency across functional programming languages Messages and immutable data Erlang process model for concurrency Overview of Concurrent ML Rendezvous Algebra of Rendezvous “It’s like Christmas when you pull it out of the box” Composition of Rendezvous across different concurrent mechanisms Wittgenstein “The limits of your language are the limits of your world” Going back to other concurrency mechanisms after knowing about Concurrent ML core.async Concurrent ML as a way of thinking Standard ML of New Jersey Extracting Concurrent ML concepts as a library Star Concurrent Programming in ML Concurrent ML as the best book on concurrent programming John Reppy Ph.D. thesis Concurrent ML book on covers multiple paradigms Mike’s upcoming CodeMesh presentation International Conference on Functional Programming Funktionale Programmierung BOB Konf As always, a giant Thank You goes to David Belcher for the logo design.
Oct. 17, 2017
In this episode I talk with Stian Veum Møllersen. We talk his introduction to programming, exploring programming languages, "Perlis Languages", Concatenative Languages, Creative Programming, and more.
Oct. 17, 2017
In this episode I talk with Stian Veum Møllersen. We talk his introduction to programming, exploring programming languages, “Perlis Languages”, Concatenative Languages, Creative Programming, and more. Our Guest, Stian Veum Møllersen @mollerse on Twitter mollerse on Github Conference Announcements LambdaWorld will be taking place in Cadiz, Spain on October 26th and 27th. For more information visit and to keep updated visit http://www.lambda.world/. CodeMesh is coming up November 8th and 9th in London. For more information, and to keep an eye open for registration, visit http://www.codemesh.io/. Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit: http://clojuresync.com/. LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit http://www.lambdadays.org/. If you have a conference related to functional programming, contact me, and I will be happy to announce it. Announcements Some of you have asked how you can support Functional Geekery, in that vein, Functional Geekery now has a Patreon Page. If that is one of the ways you would like to show your support, you can find out more at https://www.patreon.com/fngeekery. Topics [@2:42] About Stian How Stian got into programming Java Starting out as a consulting “I didn’t see programming as fun; it was more of a means to an end” Discovering the fun of programming through front end development ClojureScript Elm PureScript Prolog Michael Fogus’ Perlis Languages post Eifell Joy (mirror) What about web development sparked the excitement about programming Angus Croll – Break all the rules Jed Schmidt browserver: a node.js HTTP server, in your browse What sparked the excitement about learning about different languages “I wanted to understand how we arrived at this point in history” “If you take a framework to its ultimate conclusion you end up with a language anyway” Evolution of language learning exploration Java and Python in University Functions as Values in JavaScript Clojure Exposure to the idea of Language Families Lisp Racket Scheme F# Standard ML Programming Languages Coursera Course by Dan Grossman Prolog “A language even stranger than Prolog” First exposure Concatenative Languages Difference between Stack-based and Concatenative Languages Joy (mirror) Experience when starting to learn Joy The balance between declarative versus imperative in Concatenative Languages Difficulty of just programming your way to a solution without thinking about the problem Thinking Forth How Concatenative Languages change your thinkings Focus on Factoring in Thinking Forth Algol Cobol C++ Smalltalk Refactoring: Improving the Design of Existing Code Stian’s upcoming presentation at CodeMesh 2017 How Creative Programming works well with Concatenative Languages Recommendations on getting started with Concatenative Languages Read-Eval-Print-λove Joy Factor Flatmap Oslo 2017 presentation (slides) ait turtle-ait FARM 2017 presentation (slides) #concatenative on FreeNode Concatenative Languages wiki As always, a giant Thank You goes to David Belcher for the logo design.