Case insensitive column in Phoenix
I wanted to have a case insensitive database column to store email address in the open source application I’m working on. I’m using PostgreSQL and there’s a nice extension that does exactly that – citext – so I gave it a try. I spent some time figuring things out so now I’m sharing the knowledge in this blog post. Case insensitive column in Phoenix
Sealas - Zero Knowledge Online Accounting Software For Freelancers
Sealas is our open source encrypted accounting software with a backend written in Elixir using Phoenix.
https://github.com/Brainsware/sealas
We want to make it easier to build secure web applications, so we also write about our whole development process here:
Designing scalable application with Elixir: from umbrella project to distributed system
Hi colleagues! I’ve just published a post:
Designing scalable application with Elixir: from umbrella project to distributed system
I hope it helps you to write better Elixir code!
Morphix v0.2.0 released, now with even better atomorphification!
Morphix is a small library of convenience methods for transforming Enumerables.
atomorphify/atomorphiform methods convert string keys to atom keys in a map. Some improvements have been made:
-
Added
atomorphify(map, list) :: {:ok, map}The returned map will have strings inlistat the top level ofmapconverted to atoms. -
Added
atomorphiform(map, list)::{:ok, map}The returned map will have strings inlistat any level ofmapconverted to atoms.
added ! versions of the above methods and all other methods in the atomorphif* group, which return the transformed map alone. This is much more useful when using these methods in a pipeline.
Alchemist Camp L9: Game state machine
We build a pattern matching state machine for our tic-tac-toe game. This video digs further into working with module structs and makes use of default field values. Next lesson, we’ll be ready to hook everything up and play the game.
The rationale for using a state machine in computer games was tic-tac-toe whiteboarding video.
The (not so) Magic Tricks of Testing in Elixir (1/2)
A new blog post by Daniel Caixinha about testing in Elixir. This is part 1. More to come soon! https://medium.com/onfido-tech/the-not-so-magic-tricks-of-testing-in-elixir-1-2-89bfcf252321
PostgresDescribe
I found myself wanting documented state of my database within my Elixir/Phoenix app, similar to what schema.rb or schema.sql provides in a Rails app.
Announcing the initial release of PostgresDescribe. Does what you think it does - generates a set of files on disk that contain the output of the \d command in a PG shell.
AC5 Adding EEx templates to a Cowboy web server
Building the Alchemist.Camp website, Part 5.
Today, we added ability to dynamically render and serve up EEx template files, without requiring a restart of the web server. In the process of building this, it was convenient to flesh out our minimal clone of Plug.Conn a little bit.
AC4: a minimal Plug.Conn clone to handle 404s
Building the Alchemist.Camp website, Part 4.
In order to properly set response headers, we begin writing a minimal clone of Plug.Conn. Soon it will be possible to write templates, views and controllers for our site
IntelliJ Elixir v7.0.0
Performance improvements
- More WHITE_SPACE/less EOLs, so less reparsing when adding/removing spaces or line
- Credo annotator can be configured to trade-off less details for less CPU usage
Elixir & Phoenix Tutorial: Build an Authenticated App
Tutorial for building an authenticated app (using Auth0) for a countdown event app:
https://auth0.com/blog/elixir-and-phoenix-tutorial-build-an-authenticated-app/
Thinking Functionally
A Plataformatec’s team member and PragProg are releasing the book “Learn Functional Programming with Elixir”, and we’re giving away the first chapter, “Thinking Functionally”.
Isolating code in contexts
I wrote a blog post about how I isolate code in contexts for better maintainability.
https://medium.com/@lasseebert/isolating-code-in-contexts-172ec93ce532
Phoenix for Rails Developers book is available
I just published the book “Phoenix for Rails Developers”: http://www.phoenixforrailsdevelopers.com.
Use the promo code elixirstatus to get a 10% OFF discount.
Panoptikum - Podcasting showcase and social network
Panoptikum is a podcasting directory (>26.000 podcasts, >1.600.000 episodes), search engine, showcase and social network. You can find out more on our about page, the source code on Github or read about our progress on our blog.
Panoptikum is free software written in Phoenix and Elixir and respecting your privacy. We are interested in your feedback or even your applications using our API.
Pattern Matching in Elixir
In this introduction to pattern matching we walk through a few examples of how it’s used in Elixir.
Sage - Implementation of Sagas pattern in pure Elixir.
Sage is an dependency-free implementation of Sagas pattern in pure Elixir. It is go to way when you dealing with distributed transactions, especially with an error recovery/cleanup. Sage guarantees that either all the transactions in a saga are successfully completed or compensating transactions are run to amend a partial execution.
It’s like Ecto.Multi but across business logic and third-party APIs.
The Secret Behind Elixir Operator Re-Definitions: + to -
https://medium.com/blackode/the-secret-behind-elixir-operator-overriding-to-a564fd6c0dd6
This article comprises things like creating new definitions for existing operators.
Extra Cheese
- Live Demo with Explanation
- Humour Touch
- Screen Shots
