Elm 2023, a year in review

Elm 2023, a year in review

2023 has been another exciting year for Elm. I didn’t have time to review everything so this year I collected only the podcasts (42 total episodes combining together Elm Radio and Elm Town podcasts) and the Elm Weekly newsletter (52 issues in total).

Couple of highlight of the year were

The talk “The Economics of Programming Languages” by Evan Czaplicki at the Strange Loop 2023 conference

The Elm Camp Europe 2023, an unconference held in Denmark from June 28th to June 30th.

Also this year, a new Elm Camp event has been organized, taking place from the 18th to the 21st of June, 2024 at Colehayes Park, Devon, United Kingdom.

At the bottom of this post, you can find a partial list of companies that use Elm.

If you want to keep up with Elm’s related news:

Subscribe to the Elm Weekly newsletter or follow it on Twitter

Join the Elm community on Slack

Check discourse.elm-lang.org

Follow @elmlang on Twitter

Listen to the Elm Radio podcast and the Elm Town podcast

Browse the Elmcraft website

Check Incremental Elm Discord for working on Elm open source projects

Check the previous editions of this post:

Elm 2022, a year in review
Elm 2021, a year in review

You can also follow me on Twitter, as I usually repost Elm related stuff, or Send me a DM in case you have any feedback.

Here we go 🚀

January 2023

January 2ndElm Radio episode #73 – Security in Elm “We discuss what makes Elm’s security vulnerability surface area smaller, and what frontend security considerations are important in Elm apps.”

January 4thElm Weekly issue #246 “Hope everyone is having a great start to 2023. With the start of new things is there anyone that’d like to see Elm Weekly on other platforms beyond…”

January 11thElm Weekly issue #247 “I couldn’t find a section to fit this in, but found it too cute not to include. An animation of a classic robot from @lucamug. Articles and Discussion…”

January 16thElm Radio episode #74 – Plug and Play Design Systems with Georges Boris “Georges Boris joins us to share two new packages for theming and stateless widgets with minimal boilerplate.”

January 18thElm Weekly issue #248 “Articles and Discussion Keys to Elm: Type Annotations @azurewaters talks about type annotations, and how to read and write them. Tools and Projects Geet…”

January 25thElm Weekly issue #249 “Articles and Discussion Tools and Projects MIDI Surf A customizable, browser-based MIDI controller from Chris Wells Wood. elm-tooling Arm Binaries…”

January 30thElm Radio episode #75 – elm-pages scripts “We discuss elm-pages BackendTasks and how to run them as scripts with a single command.”

February 2023

February 1thElm Weekly issue #250 “Articles and Discussion Haskell for Elm Developers Flavio Corpa shares some notes on learning Haskell for someone already familiar with Elm. A Nice…”

February 8thElm Weekly issue #251 “Articles and Discussion Conway’s Game of Life, and Emergence There are lots of ways to learn about Conways’s Game of Life and Elm but I really want to…”

February 13thElm Radio episode #76 – Elm and Vite “Lindsay Wardell joins us to talk about Vite and how to set it up for your Elm project.”

February 15thElm Weekly issue #252 “Articles and Discussion Elm 2022, a year in review @lucamug has once again collected all the happenings in the Elm community! 3시간 만에 다 배우는 Elm 가이드 영상 I…”

February 22ndElm Weekly issue #253 “With the continued Earthquakes in Turkey I thought I’d do something a little out of the ordinary for the newsletter. If you find yourself able to donate…”

February 27thElm Radio episode #77 – elm-app-url with Simon Lydell “Simon Lydell joins us to talk about a new approach to URL parsing in Elm that is both simple and powerful.”

March 2023

March 1thElm Weekly issue #254 “Tools and Projects Elm-like JSON decoding in Java A package from Ethan McCue for decoding JSON in Java, heavily inspired by Elm. elm-card-game A package…”

March 8thElm Weekly issue #255 “New Elm conferences?”

March 13thElm Radio episode #78 – Color parameters in elm-tailwind-modules with Philipp Krüger “Philipp joins us to talk about color parameters in elm-tailwind-modules and how that brings the tool closer to an ideal expression of a design system in Elm.”

March 15thElm Weekly issue #256 “The Elm community has been super busy over the past couple months! I typically hold back 1 or 2 blog posts or videos so that each week I can provide you…”

March 22ndElm Weekly issue #257 “Articles and Discussion Why is Elm such a delightful programming language? Marcio Frayze brings us another great piece on the joys of programming with…”

March 28thElm Radio episode #79 – Scaffolding Elm Code “We discuss the benefits of automating your Elm boilerplate, and design techniques for APIs that generate code.”

March 29thElm Weekly issue #258 “Articles and Discussion Haskell for Elm developers: giving names to stuff (Part 3 – Monads!) The 3rd installment in Flavio Corpa’s Haskell for Elm devs…”

April 2023

April 5thElm Weekly issue #259 “Articles and Discussion Syntax Error #2: print it like a boss The 2nd issue of the Syntax Error newsletter has a section dedicated to Elm, both for it’s…”

April 11thElm Radio episode #80 – Elm and AI “Can we get strong guarantees from AI tools that are known to hallucinate? We discuss some strategies, and ways that Elm might be a great target for AI assistance.”

April 12thElm Weekly issue #260 “Does your company use Elm? Do you like supporting the Elm community? Well now your company can support the Elm community too through GitHub Sponsoring…”

April 18thElm Town episode #54 – Aloha with Kevin Yank “Kevin Yank shares the challenges Culture Amp faced when scaling Elm & React with a Design System team in the middle, and how an acquisition tipped the ultimate decision to move Elm from “adopt” to “contain” at the company.”

April 19thElm Weekly issue #261 “Elm Camp The first Elm Unconference is happening in late June, giving opportunity for Elm makers & tool builders to gather, communicate and collaborate…”

April 24thElm Radio episode #81 – elm-form “We discuss the power of decoupling from data types using low-level data, and how dillonkearns/elm-form gives you simpler wiring that feels like magic but isn’t.”

April 26thElm Weekly issue #262 “Tools and Projects elm-review 2.13.0 Mostly a rewrite of the internals, but also a bonus of being much faster! Tooty An experimental multi-account…”

May 2023

May 2ndElm Town episode #55 – From algorithms & animation to building a decentralized finance app “Dwayne Crooks stops in to share his appreciation of algorithms, experience learning Elm, challenges building Elm 2048, and how he uses Elm at work to build things like the decentralized finance app, Qoda.”

May 3rdElm Weekly issue #263 “Articles and Discussion Programming in Style: From Pattern Matching to Point Free Peter Urbak shows us how to go from a case of having nested pattern…”

May 8thElm Radio episode #82 – Elm and Haskell with Flavio Corpa “Flavio Corpa joins us to discuss the similarities and differences between Elm and Haskell, and how learning Haskell can help you write better Elm code.”

May 10thElm Weekly issue #264 “Articles and Discussion Experiments with GPT James Carlson gives a brief look at their GPT Lab experiment and some of the art they’ve generated with it…”

May 10thElm Weekly issue #2641 “Unfortunately 1 of the links in today’s issue is sometimes broken and in a very odd way. So I’m sending out a “patch” so that everyone can enjoy the…”

May 16thElm Town episode #56 – Why don’t you do it in Elm? “Théophile Kalumbu comes by to talk about how Elm makes developing a frontend fun, building a design system explorer, iterating quickly, and getting Elm to production.”

May 17thElm Weekly issue #265 “Articles and Discussion How to use accounts-ui with Elm and Meteor in 10 minutes A short walk-through of how to setup accounts-ui and accounts-password…”

May 22ndElm Radio episode #83 – elm-review Data Extractors “We discuss elm-review’s Data Extractors and how they open up your elm-review context to external tools like data visualizations.”

May 24thElm Weekly issue #266 “Articles and Discussion Using Lamdera professionally Martin Stewart talks about using Lamdera at Realia and the tools they built. Why I use Elm in 2023…”

May 30thElm Town episode #57 – Brilliant ways to use Elm “Aaron Strick shares what it was like learning Elm at NoRedInk, and explains some of the “zany” (delightful) ways Elm is used at Brilliant.”

May 31stElm Weekly issue #267 “Tools and Projects Learn the game Go An app that teaches you how to play Go. Built with Elm by Artur Honzawa. Wyrhta Ceramics Built with Elm Land, Mika…”

June 2023

June 7thElm Weekly issue #268 “Articles and Discussion 2023 年、改めて React と Elm Architecture を比較する A short comparison of React and Elm by @jinjor. Tools and Projects orus-io/elm-spa…”

June 13thElm Town episode #58 – Unblocking users with quality software “Tessa Kelly shares her experience unblocking users while building quality software, explains how to avoid the “accessibility dongle” using the Elm philosophy, and considers some tesk9/accessible-html design changes.”

June 14thElm Weekly issue #269 “Tools and Projects Best Web Vitals A little app that keeps score on Google Core Web Vitals for any site. To showcase the best scores globally and to…”

June 19thElm Radio episode #84 – Writing Great Docs “We discuss why the baseline for Elm docs is so high, how to navigate docs as a user, and how to make your own docs great.”

June 21stElm Weekly issue #270 “Articles and Discussion Showing Any Playing Card From a Deck With Elm Mapping playing cards to Unicode characters, and more. Tools and Projects Enig…”

June 27thElm Town episode #59 – Elm Camp with Katja Mordaunt “Katja Mordaunt talks about Elm vibes versus other programming communities and gives us the low-down on Elm Camp (https://elm.camp/).”

June 28thElm Weekly issue #271 “This week is a little short as I’m traveling for Elm Camp & July 4th there won’t be a newsletter as I’ll be traveling home from a vacation. The regular…”

July 2023

July 3rdElm Radio episode #85 – Why We Care About Elm “We discuss our backstories, our core values and beliefs as developers, and why Elm speaks to us.”

July 11thElm Town episode #60 – Productivity and the culture of moving a little bit slower “Wolfgang Schuster shares his journey with Elm, describes writing & deleting Elm code at Vendr, and explains the productivity gains in an ecosystem that values building things for the end user.”

July 12thElm Weekly issue #272 “Back Home & Busy”

July 17thElm Radio episode #86 – elm-pages v3 “We discuss the new elm-pages v3 release and the new suite of features for full-stack server-side rendered Elm.”

July 19thElm Weekly issue #273 “Articles and Discussion How Writing Code in Elm Changed How I Want to Write Code in Python @dneaves shares how Elm has impacted their Python. Elm Camp…”

July 25thElm Town episode #61 – Turning the pages with Dillon Kearns “Dillon Kearns turns the pages of his journey with Elm, from applying meta-learning techniques as a classical piano player & agile coach to building a full-stack Elm framework (elm-pages)….”

July 26thElm Weekly issue #274 “Articles and Discussion Demystifying Pratt Parsers Martin Janiczek walks us through writing a Pratt parser. Useful for parsing things that have order of…”

July 31stElm Radio episode #87 – Evergreen Migrations with Mario Rogic “Mario walks us through how Evergreen gives you type-safety between versions of your application, and some improvements in Lamdera 1.1.0.”

August 2023

August 2ndElm Weekly issue #275 “Articles and Discussion Quiz Craft: the frontend story Antoine Vandermeersch takes us on a journey of building a front end for their quiz app. Tools and…”

August 9thElm Weekly issue #276 “Articles and Discussion 7 GUIs Dwayne Crooks’ implementation of 7GUIs: A GUI Programming Benchmark. How to manage HTTP requests on page load with elm…”

August 14thElm Radio episode #88 – Avoiding Unused Code “We discuss how to avoid unused Elm code, why it matters, and what leads to unused code in the first place.”

August 16thElm Weekly issue #277 “Articles and Discussion Taking Screenshots with Elm 0.19 Flavio Corpa demonstrates for us how to take screenshots in Elm. Wrapper modules can lead to…”

August 22ndElm Town episode #63 – Opening the doors of functional programming “Join Mika Naylor on her journey with functional programming through the doors of Elm to Elm Land and beyond.”

August 23rdElm Weekly issue #278 “Articles and Discussion Useful Chompers Dwayne Crooks walks us through building some useful chompers with elm/parser. Tools and Projects SubGrid A…”

August 28thElm Radio episode #89 – The Human Side of Open Source “We discuss the role of Open Source Software and how we approach leadership and communication in our projects.”

August 30thElm Weekly issue #279 “Articles and Discussion Smart Event Listeners Applying the idea of “parse, don’t validate” to event handlers, with Dwayne Crooks. Talks and Podcasts 🍿…”

September 2023

September 5thElm Town episode #64 – The network effect “Martin Stewart comes back to share his experience using Elm and Lamdera to make all the things, from games to professional apps.”

September 6thElm Weekly issue #280 “State of Elm 2023 The community run survey is back again this year. Articles and Discussion Bring your own DOM – Part 2 – TUIs Wolfgang Schuster walks…”

September 8thElm Town episode #62 – The map to Elm Land “Ryan Haskell-Glatz talks about making Elm mainstream, learning through iterations of elm-spa, and how experiences at Vendr shaped Elm Land.”

September 11thElm Radio episode #90 – elm-land with Ryan Haskell-Glatz “We discuss elm-land, how it compares to elm-spa, and its philosophy of making Elm mainstream.”

September 13thElm Weekly issue #281 “Articles and Discussion Why Elm Might Be a Better Choice Than React for Your Next Web Project Charlotte Neill shares why Elm is their choice for web…”

September 19thElm Town episode #65 – Let’s roll with it “We review Jeroen Engels’ journey with Elm from ESLint to elm-review. Jeroen even gives tips on how to introduce rules to a team.”

September 20thElm Weekly issue #282 “Games! 🕹️”

September 21st – Video The Economics of Programming Languages – A presentation by by Evan Czaplicki at Strange Loop 2023

September 25thElm Radio episode #91 – Code Reading Club with Katja Mordaunt “We discuss Code Reading Club, how improving your code reading skills can make you a better programmer, and the readability of Elm code.”

September 27thElm Weekly issue #283 “Tools and Projects elm-to-gh-pages An example project from Isaac Van Doren for how to setup GitHub Actions to deploy your Elm app to GitHub Pages…”

October 2023

October 3rdElm Town episode #66 – A gateway to scientific research “Chris Martin shares how he grew Elm wings while building Exosphere, a user-friendly, open-source tool to help scientists do research.”

October 4thElm Weekly issue #284 “It was brought to my attention last week that is my 100th issue! It doesn’t help that I’m not too attentive to the numbers, but also it really does feel…”

October 9thElm Radio episode #92 – Elm News with Wolfgang Schuster “Wolfgang joins us to discuss his philosophy and approach to sharing what’s new in the Elm community.”

October 11thElm Weekly issue #285 “Tools and Projects Queens Lair A chess puzzle game from Lucas Payr. New macOS ARM binary A new release of the Elm binary for ARM based macs. Connect 4…”

October 17thElm Town episode #67 – Breaking things down with Gingko Writer “Adriano Ferrari talks about how Elm allows him to solely support Gingko Writer and make progress on new projects while also homeschooling.”

October 18thElm Weekly issue #286 “Articles and Discussion Worst Elm Code Possible A summary from Mario’s elm-camp session on what bad Elm looks like. Tools and Projects…”

October 23rdElm Radio episode #93 – elm-visualization with Jakub Hampl “Jakub Hampl joins us to discuss elm-visualization and how it enables powerful flexibility through its low-level building blocks philosophy.”

October 25thElm Weekly issue #287 “Articles and Discussion Rebuilding Final Fantasy Legend in Elm Jesse Warden talks about their journey so far of rebuilding Final Fantasy Legend. Elm…”

October 31stElm Town episode #68 – Shared joy with Mario Rogic “Mario Rogic shares his journeys, both physically around the world and strategically, as he built & rebuilt Lamdera.”

November 2023

November 1thElm Weekly issue #288 “Articles and Discussion Final Fantasy Legend Level Editor Update A short post from Jesse on 2D grids in Elm. Do you have opinions about coding style…”

November 6thElm Radio episode #94 – elm-concurrent-task with Andrew MacMurray “Andrew MacMurray joins us to discuss elm-concurrent-task which allows you to run JavaScript functions with a Task style API.”

November 8thElm Weekly issue #289 “Articles and Discussion Tools and Projects A Text-to-Drumbeat App A fun tool for turning text into music, from James Carlson. orus-io/elm-nats A pure…”

November 14thElm Town episode #69 – A vision for tooling with Simon Lydell “Simon Lydell tells his origin story from Firefox power user to full-time Elm engineer. Then we talk about his work in the community building tools & contributing to core.”

November 15thElm Weekly issue #290 “Tools and Projects upsiflu/less-ui An experimental package from Flupsi for building UIs, with a demo to help get you started…”

November 20thElm Radio episode #95 – elm-open-api with Wolfgang Schuster “Wolfgang Schuster joins us to discuss generating type-safe SDKs using elm-open-api.”

November 22ndElm Weekly issue #291 “Articles and Discussion Using GitHub Copilot with Elm Per Lundholm talks about using Copilot with Elm. Tools and Projects Elm Tauri App A new template…”

November 28thElm Town episode #70 – Getting out of the basement with Jim Carlson “Jim Carlson shares his discoveries in software development through the people he’s met in the community and the projects he’s building. We also discuss how a history in mathematics shapes his work.”

November 29thElm Weekly issue #292 “Tools and Projects elm-performance-tools An experimental tool for measuring the performance of your Elm code. Built with Elm: Adaptiv Adaptiv has remade…”

December 2023

December 4thElm Radio episode #96 – Optimizing Bundle Size “We discuss Elm’s strengths and weaknesses for optimizing bundle size, and how find and fix your app’s bundle size bottlenecks.”

December 6thElm Weekly issue #293 “Articles and Discussion AOC23 – 1 December by @thelayeredmind @thelayeredmind walks us through learning Elm & solving Advent of Code day 1. Tools and…”

December 12thElm Town episode #71 – Embracing wins with Lindsay Wardell “Lindsay Wardell tells how she persevered to write her own story as a programmer and shares her views on JavaScript frameworks & fatigue.”

December 13thElm Weekly issue #294 “Articles and Discussion AOC23 – 2 December by @thelayeredmind @thelayeredmind walks us through learning Elm & solving Advent of Code day 2. Tools and…”

December 20thElm Weekly issue #295 “Articles and Discussion On continuation-passing style and the factorial function Dwayne Crooks writes about continuation-passing style and Elm. Record…”

December 27thElm Weekly issue #296 “A few months ago I thought it’d be cool if I started storing all of the issues in spreadsheets (might move to a database in the future). This was mostly…”

Partial list of companies that use Elm

AbletonAcimaACKOActiveStateAdrimaAJR InternationalAlmaAstrosatAvaAvettaAzaraBarmeniaBasiqBeautiful DestinationsBEC SystemsBekkBellroyBendyworksBernoulli FinanceBlue Fog TrainingBravoTranBrilliantBudapest SchoolBuildrCachixCalculoJuridicoCareRevCARFAXCariboucarwowCBANCCircuitHubCN Group CZCoinTrackingConcourse CIConsensysCornell TechCorvusCrowdstrikeCulture AmpDay OneDeepgramdiesdas.digitalDividatDriebitDripEmirateseSparkEXRFeaturespaceField 33FissionFlintFolqFordForsikringFoxhound SystemsFuturiceFörsäkringsGirotGenerativeGenesysGeoraGizraGWIHAMBSHatchHearkenhello RSEHubTranIBMIdeinIlluminateImprobableInnovation through understandingInsurelloiwantmynamejambitJobviteKOVnetKulkulLogisticallyLukoMetronome Growth SystemsMicrosoftMidwayUSAMimoMind GymMindGymNext DLPNLXNomalabNomiNoRedInkNovabenchNZ HeraldPermutivePhrasePINATAPinMeToPivotal TrackerPowerReviewsPractlePrimaRakutenRoompactSAVRScovilleScriveScrivitoSerenyticsSmallbrooksSnapviewSoPostSplinkSpotttStaxStowgaStructionSiteStudyplus For SchoolSymbalooTalendTallink & Silja LineTest DoublethoughtbotTravel PerkTruQuTWaveTylerUncoverUnisonVeevaVendrVerityVnatorVyW&W Interaction SolutionsWatermarkWebbhusetWejoininZaloraZEIT.IOZettle

This list is extracted from several sources, such as elm-companies, Stackshare.io, blog posts, videos, talks, atc.

This is all ❤️

Leave a Reply

Your email address will not be published. Required fields are marked *