ThinkingElixir 108: Stack Overflow Survey Results 2022
In episode 108 of Thinking Elixir, we were surprised to see how well Elixir and Phoenix performed in the Stack Overflow survey results for 2022! Elixir came in as the #2 most loved language and Phoenix as the #1 most loved framework! And this was their first year appearing as official choices in the survey! We discuss what it means, what we can learn from it, how it compares to other languages and frameworks and what it may indicate for the future. We also discuss ideas to help support and grow the community.
Writing Predictable Elixir Code with Reducers
Let’s see how code predictability plays a crucial role in a project’s short and long-term health. We will use Elixir’s built-in features for this, like the pipe operator, tuples, and with
blocks.
https://blog.appsignal.com/2022/07/19/writing-predictable-elixir-code-with-reducers.html
Wallaby v0.30.0 has been released!
v0.30.0 of Wallaby has been released. https://github.com/elixir-wallaby/wallaby/releases/tag/v0.30.0
Testing a Phoenix application for credential stuffing with Elixir, Floki, and HTTPoison
Are you familiar with credential stuffing attacks? Maybe you have heard about the dangers of password reuse, and even implemented defenses in your own Elixir/Phoenix apps. Have you ever tested the defense?
In this post, learn how credential stuffing works by writing your own testing program in Elixir. If your Phoenix application stores sensitive data, this is an excellent project to see if your current controls are working.
ThinkingElixir 107: Catching Up with Alex Koutmos
In episode 107 of Thinking Elixir, we caught up with Alex Koutmos, a co-host on an Elixir podcast, book author, and OpenSource library creator. We talk about some of his well known libraries like PromEx, but then go into some of his potentially lesser known ones like Doctor, Replug, Unplug, and MJML EEx. I’m happy to learn more about MJML EEx, an email formatting library for improved cross-mail client readers! We talk about the Nerves Weather Station book, and his new book project Elixir Patterns that makes heavy use of Livebook. Come enjoy a deeper visit with an Elixir community contributor!
How "let it fail" leads to simpler code
https://yiming.dev/blog/2022/07/10/how-let-it-fail-leads-to-simpler-code/
This blog post summarizes my biggest lesson learned from writing Elixir for 5 years: distinguish expected errors and unexpected errors.
So we can safely ignore the unexpected and let it fail. The only errors our business logic need to handle are the expected errors.
LetMe authorization library
The first version of the authorization library LetMe was released. Check it out! https://github.com/woylie/let_me
Phoenix LiveView Auth - ElixirCasts
Adding authentication to an app that uses LiveView is a little different than a plain old Phoenix app. In this episode, we’ll look at LiveView auth using the ‘on_mount’ and ‘live_session’ functions.
Elixir Meetup #7 by Curiosum!
The cost of developer time is too expensive‼️ You don’t want to waste it‼️☝️ How can you achieve this? Learn more on July 13 at our NEXT ELIXIR MEETUP! 👨💻 Register here: https://lnkd.in/esqwQ9m2
One of our goals in day-to-day development is to optimize things, and that’s exactly what we should do to our CIs: reduce badly spent developer time and engage them in something more productive. 📊 📈
13.07.2022, on Elixir Meetup #7, Szymon Soppa will guide you through some steps we implemented in CI at Curiosum and propose a local CI setup that can be shared across your team.
In short: check as much as possible in an automated way, and do not waste time on things you don’t have to do in Code Review and daily development. ✅
Register here: https://lnkd.in/esqwQ9m2
#development #team #developer #CI #projectmanagement #elixirdevelopment #CIpipeline #remoteElixir #curiosum #elixirmeetup #myelixirstatus
12 Ways to Improve Your Monolith Before Transitioning to Microservices
Like tidying up a house before a total renovation, preparing your monolith is the first step towards transitioning to microservices.
Here are 12 tips for making the transition to microservices as smooth as possible.
ThinkingElixir 106: Coding Music Live in SonicPi with Sam Aaron
In episode 106 of Thinking Elixir, we learn how the SonicPi project has been letting people live code musical performances for years. Sam Aaron joins us to talk about the project and how Elixir is playing an increased role. The project uses multiple languages and frameworks, in fact, Joe Armstrong created the Erlang portion for handling the concurrent IO needs. We talk about where the project is, what’s new in the upcoming release, and more about the future of Elixir with the project. LiveView as a UI for jamming with your friends in a distributed musical performance tool? Cool! We also talk about SonicPi being used in the education space and introducing kids to coding and much more!
Building Facebook Chat BOT | Elixir Experts
Developing Facebook Chat Bot
This is a series of 5 articles the guides you in developing the facebook chat bot from scratch from creating Facebook Developer account to Sending and Receiving Messages to Bot by adding Webhooks.
The following links are the parts of this series.
PART-1
| PART 2 | PART-3 | PART-4 | PART-5
A more advanced wxErlang "Hello World"
In this post I explore a more advanced wxErlang “Hello World” example. https://hidnasio.github.io/elixir/wxerlang/2022/06/29/advance-wx-erlang-hello-world.html
Siblings — Uniform Recurrent Tasks Based on Finite Automata
Published a library for managing hundreds of thousands of uniform recurrent tasks almost without code.
Elixir Outlaws Latest Episode 117: Honey Potion and Problem Solving
Last week’s Elixir Outlaws podcast episode with Amos King and Sean Cribbs.
Elixir Outlaws is an informal discussion about interesting things happening in Elixir. Our goal is to capture the spirit of a conference hallway discussion in a podcast.
The Twelve-Factor App methodology
Probably not strict Elixir related but often our apps use Heroku (or similar) and are cloud-native. It is worth knowing these rules.
The Twelve-Factor App methodology is a methodology for building software-as-a-service applications. It allows you to eliminate the most common problems with our applications. Some of them have already become the industry standard, so you should get to know them all. The methodology constitutes design guidelines strongly focused on cloud-native, portable, and resilient applications.
More on: https://bartoszgorka.com/the-twelve-factor-app-methodology
ThinkingElixir 105: Plausible Analytics, Elixir, and Privacy with Uku Taht
In episode 105 of Thinking Elixir, we learn about Plausible Analytics, a privacy respecting alternative to Google Analytics that is cloud or self-hostable, OpenSource and written in Elixir! Uku Taht shares how he founded the company, the mission he is on, and what he prioritizes. The company practices a “transparent by default” approach. This means they share a lot about what’s going on, this includes how they recently reached $1m ARR, some of their growing pains, and dealing with the weight of being “the one who has to fix things.” We end with a candid discussion about wellness in our profession and how when we are too close to the problems, we become blind to our own successes. A great, transparent conversation with Uku!
Web Scraping with Elixir
In this article, you’ll learn how to implement web scraping with Elixir. You’ll use two Elixir libraries, Crawly and Floki, to scrape available graphic cards at the lowest price. You can read more here: https://www.scrapingbee.com/blog/web-scraping-elixir/
Creating a function with inputs from a file at compile time using Elixir AST
A function body (returning a list of tuples) was being generated manually via a script from a CSV file, which was run in an iex
shell manually. That was fine until we needed to translate the strings from the CSV using gettext/1
macro which was not possible with the script anymore.
This blog post shows how to create a function with inputs from a file at compile time using Elixir AST so you don’t need any manual work to keep your function body up to date!
Read more here: https://blog.burakaymakci.com/posts/creating-a-function-with-inputs-from-a-file-at-compile-time-using-elixir-ast/