Our first “themed” month is Functional February. We’re going to try out a few different ideas during the month, and would love your input and ideas too!
So far, we have confirmed:
A kick off chat with Erik and me about functional languages.
A badge if you complete 5 exercises in a featured functional.
Interviews with two creators of functional languages (I’m thinking these will be live streamed - the first part will be chat with me and them discussing why they created their language etc, followed by AMA-style discussion).
Live streaming of people solving exercises or doing walkthroughs. Jonathan is reaching out to contributors to featured tracks to ask if they’d like to stream, but everyone is welcome to get involved.
A list of our recommended top 5 exercises to solve in this theme.
Some random ideas:
A functional-themed game night.
A functional-themed piece of swag only available that month.
Swag for the featured tracks that we launch that month.
Official forum threads for people to build reading lists and/or podcast lists about the monthly topic.
A competition to create a new theme-related exercise, and we’ll add the winner to all the featured tracks.
Nope. But that’d be a nice idea. Anyone got an intro to him for me? @yawpitch maybe?
No idea :) Some games around pattern matching? Or having to make decisions you can never then change again? Or some game that’s recursive in nature? I’m sure someone could come up with something tangently relevant!
I have an indirect connection to SPJ, and a more direct one to Philip Wadler. I’ve also at least emailed with Edwin Brady (Idris). All three would, I’m sure, be open to the idea if scheduling permitted and you approached them directly over their institutional emails.
While Clojure is proud to be representing the Lisps in the Summer of Sexps, I’m afraid we might have hurt its feelings by leaving it out of Functional February.
“But Clojure is foremost a Lisp, no?” you may ask. “Is that not its most obvious quality?”
And Clojure would respond, “Well yes, but it feels weird to be judged by my superficial characteristics. My parentheses are but my outer clothing, I would much prefer to be recognized by my personality”.
This became super apparent to me when I started learning Haskell this month, I was like “This is basically Clojure with its clothes off”.
I would definitely support a functionally branded large thermos! Everyone knows that as programmers, WE are the function, Caffeine is part of the input, and high-quality code is the output! Let’s formalize that, please?
Also, I’m on pins and needles waiting for the February kickoff video. I think you mentioned in the #12in23 video that you have finished the Functional February video, can we have a link for it please? Thanks!
I am using Exercism with a focus on JS - Though I have watched a video course on Functional programming and was impressed with it, I did not have much opportunity to practice it except for the usual map, filter, reduce variants in both python and JS. I would love to see how I can apply the functional paradigms in JS.
For goodness sake, man, try out Elixir! I can’t tell you how it delights my brain learning Elixir! I haven’t been this in love with a language since I learned my first programming language – C. And when you come across a language that lets you actually use ALL the cores on your machine for starters and you start to realize the unmitigated power of the language and of OTP, I bet you will fall in love too!
Hmm, what about a puzzle, well suited to FP, that gets revealed mid month and all you need to do is submit the answer? Advent of Code style except everyone gets the same puzzle. Publish a leaderboard with glory points only.
Eg. solve a 5x5x5 sudoku like this one and submit the sum of the main diagonal.
This is more of a flagrant topic, but what do you think about hosting a space on “FP vs. OO” in February and in October? I know it’s an over-flogged topic at this point. I suggested it because it’s a good conversation starter, a good litmus test to see where minds are, and a mirror to reflect on our perceptions of both paradigms.
I also welcome this idea. It’s not easy to understand the differences and I’d like to see Exercism’s take on “Here are 5 exercises that help you understand the differences. Compare how the solutions differ between a functional programming language and other programming paradigms.”
I learned some languages and Clojure has such fantastic tooling. I think it was so far the best experience I have had. Calva made it so easy and intuitive to use the REPL that I am really sore that other languages don’t have that.
The neandarthal-mode that manages or forces all the parenthesis with a universally agreed upon code format style is so mighty, that I didn’t even remember that Clojure is a lisp. The parens never ever made any importance at all.
To borrow your wording, when people talk about Lisps, I feel like I can’t contribute, because I have only ever met a Lisp in its “naked” state.