Elixir Wizards S4E22 Season Four Wrap: Whose Design Is It Anyway? with Swadia, Windholtz, Rezentes, and Keathley
Latest episode of Elixir Wizards is out today! Check it out here: https://smartlogic.io/podcast/elixir-wizards/s4e22-s4wrap-whose-design-is-it-anyway/
How we split Plug.SSL to control SSL redirection
Recently I set out to configure a service of ours to run behind a reverse proxy with TLS termination.
With Phoenix being the great framework it is, I assumed this would be a breeze. But it turned out that reality had different plans for me.
In this post I’ll tell you a story on all the different bits of documentation I rummaged through, the things I learned from reading the source code of Plug.SSL, the solution I arrived at, and the proposal I submitted to plug.
Backtesting - 9th video in the series about building cryptocurrency trading bot in Elixir
9th video in the series about building a cryptocurrency trading bot in Elixir - this time we will backtest our trading strategy by introducing a publisher that will stream trade events from the database and publish them to PubSub so traders will receive them. Trader(s) will be placing orders and we can use those to figure out the performance of the strategy.
Link: https://www.youtube.com/watch?v=kE2dJRjcry4&list=PLxsE19GnjC5Nv1CbeKOiS5YqGqw35aZFJ&index=9
Capabilities of Elixir's Logger
In this article, we’re going to demonstrate how logs work in Elixir. We’ll jump into Elixir’s Logger module, which brings a lot of power to logging features. It also smoothly integrates with Erlang’s :logger to convert code to Elixir syntax.
https://blog.appsignal.com/2020/10/13/capabilities-of-elixir-logger.html
ThinkingElixir 017: JIT compiler for BEAM with Lukas Larsson & John Högberg
In episode 17 of Thinking Elixir, we talk with Lukas Larsson and John Högberg to learn about the new BeamAsm project that brings a JIT compiler to Erlang OTP and Elixir. This is a very exciting development for all Beam languages and they break down for us what it is, how it works, how it impacts us as Elixir developers, when to expect it, and they share insights into developing OTP. An episode you don’t want to miss!
Agendashift changeban game in Phoenix live view
My first public elixir outing. https://changeban.gigalixirapp.com/ is an online version of an https://www.agendashift.com/ workshop of the same name.
Code is here: https://github.com/BigTom/changeban
It is still a work in progress, next steps, beef up the live view testing story and add a post workshop stats and charts page.
Elixir Wizards S4E21 Anna Sherman on Change, Failure, and living in Gig City
Latest episode of Elixir Wizards is out today! Check it out here: https://smartlogic.io/podcast/elixir-wizards/s4e21-sherman/
Plausible: A self-hosted and privacy-friendly Google Analytics alternative
We started developing Plausible early last year, launched our SaaS business and you can now self-host Plausible on your server too! The project is battle-tested running on more than 5,000 sites and we’ve counted 180 million page views in the last three months.
Plausible is a standard Elixir/Phoenix application backed by a PostgreSQL database for general data and a Clickhouse database for stats. On the frontend we use TailwindCSS for styling and React to make the dashboard interactive.
The script is lightweight at 0.7 KB. Cookies are not used and no personal data is collected. There’s no cross-site or cross-device tracking.
ThinkingElixir 016: Gleam, Games and Types with Quinn Wilton
In episode 16 of Thinking Elixir, we talk with Quinn Wilton about Gleam, a static typed language on the BEAM and why Elixir devs should care about it. We learn about her Chip8 emulator that renders game ROMs to LiveView, what dynamic security analysis of web applications can look like today, static typing and much more!
Miss Elixir: some functions that I miss in Elixir core (and maybe you too)
Miss Elixir library brings in a non-intrusive way some extra functions that, for different reasons, are not part of the Elixir core.
https://fernandohamasaki.com/miss-elixir
How to use Chart.JS in Phoenix | Elixir Advanced
Data looks more beautiful in Charts and Graphical Representation.
https://medium.com/blackode/how-to-use-chart-js-in-phoenix-elixir-advanced-f0949352f64f?source=friends_link&sk=db0e30ea650fce95aec2a1ae61d148c9
How to Fix PostgreSQL Performance Issues with PG Extras
https://pawelurbanek.com/postgresql-fix-performance
PostgreSQL database queries are a common performance bottleneck for web apps. Before you resort to more complex optimization techniques like caching or read replicas, you should double-check if your database engine is correctly tuned and queries are not underperforming.
PG Extras is a tool that allows you to spot common PostgreSQL pitfalls. Ruby, Rails, Elixir, and NodeJS implementations are currently available.
In this blog post, I present a step by step guide on using PG Extras library to spot and resolve common PostgreSQL database performance issues.
Adding Global View Helpers to a Phoenix Application
If you come from a Ruby on Rails background you might be used to having view helpers such as number_with_delimiter up your sleeve and ready to use in any view. Here’s how to configure functions that are accessible in your Phoenix views: https://danielwachtel.com/phoenix/adding-global-view-helpers-phoenix-app
Elixir Wizards S4E20 Devon Estes on how Architecture Is a Myth and One-file Design
Latest episode of Elixir Wizards is out today! Check it out here: https://smartlogic.io/podcast/elixir-wizards/s4e20-estes/
Stupid solutions: Live Server Push Without JS
Elixir makes it easy to do the weird, wonderful and woeful. Especially when it comes to state. This simple application based on Plug sends live visuals to anyone connected via the odd MJPEG live image format.
A Brief Guide to OTP in Elixir
Learn more about OTP, a set of tools and libraries that Elixir inherits from Erlang.
ThinkingElixir 015: Inside Elixir Radar with Hugo Baraúna
In episode 15 of Thinking Elixir, we talk with Hugo Baraúna, the guy behind Elixir Radar, to get the inside scoop. Would you like to increase the chances of your blog post being featured by Elixir Radar? Hugo shares how! We also discuss his observations of Elixir adoption in companies, the type of community we have, early observations from the Elixir Ecosystem Survey, sustainability in OpenSource, his efforts to fund his time on Elixir Radar, and more!
Collectable: Custom Data Structures in Elixir, part 2
Continue creating a custom Array type in Elixir and learn about the Collectable protocol.
https://blog.brettbeatty.com/elixir/custom_data_structures/collectable
Migrating to Elixir with the Strangler Pattern
I think it’s fair to say that a good amount of folks - if not the majority of them - using Elixir in production today are doing so after migrating an application to Elixir from some other language instead of just building in Elixir from scratch. Of course this idea of re-writing an application is scary, and rightly so! But there are some ways to make this process simpler and less scary, and also to reduce the likelihood of introducing regressions during this process, and that’s what I go over in this post.
http://devonestes.com/migrating-to-elixir-with-the-strangler-pattern
Blazing with Phoenix: Project Structure
An article about how to layer your Phoenix project with a structure convention focused on developer productivity: https://dev.to/pedromtavares/blazing-with-phoenix-project-structure-463l
