Currently benchmarking my JSON library and making it use Streams
Currently benchmarking my JSON library and making it use Streams of strings instead of parsing the binary in a tight loop.
This needs to improve: http://prntscr.com/j36svy
#performance #benchmarking #profiling
Announcing the ocv_photo_analyzer package
Using Elixir and OpenCV to analyze photo content with ocv_photo_analyzer.
Building a JSON API with Phoenix 1.3 and Elixir
https://lobotuerto.com/blog/building-a-json-api-with-phoenix-and-elixir/
Do you have a Rails background?
Are you tired of looking at outdated or incomplete tutorials on how to build a JSON API using Elixir and Phoenix?
Then, read on my friend!
What we’ll do:
- Create a new API-only Phoenix application —skip HTML and JS stuff.
- Create a User schema module (model) and hash its password —because storing plain text passwords in the database is just wrong.
- Create a Users endpoint —so you can get a list of, create or delete users!
- CORS configuration —so you can use that frontend of yours that runs on another port / domain.
- Create a Sign in endpoint —using session based authentication.
CouchDBEx release
I released a couchdb interface for elixir, it includes most basic things and support for subscribing to database changes
It’s also on hex.pm as couchdb_ex
Jaxon v0.1.0 released
Just open sourced the custom event based JSON parser that we use over at https://sqlify.io to parse huge JSON files.
The parser is implemented in NIF.
Check it out here: https://github.com/boudra/jaxon
Iteraptor :: Iterating Nested Terms Like I’m Five
Blogged on Iteraptor library
— http://rocket-science.ru/hacking/2018/04/06/iteraptor-for-elixir
Easy each/map/reduce/map_reduce/filter methods for deeply nested Elixir terms like %{foo: 42, bar: [foo: :bar, baz: 3.14], baz: :foo} and more.
Today I published 7 erlang and 1 elixir packages into hex.pm
Today I published 7 erlang packages into hex.pm: https://hex.pm/users/cblage They are just forks of the original erlang packages made to build with mix. No functionality lost/changed:
https://hex.pm/packages/async - erlang -> mix
https://hex.pm/packages/cclock - erlang -> mix
https://hex.pm/packages/columbo - erlang -> mix
https://hex.pm/packages/gibreel - erlang -> mix
https://hex.pm/packages/jsondoc - erlang -> mix
https://hex.pm/packages/kill_bill - erlang -> mix
https://hex.pm/packages/narciso - erlang -> mix
Full credit to the original author: https://github.com/jjmrocha
I also published a fork of an elixir package that had been abandoned abandoned since 2014 with fixed bugs and misc improvements. Full credit to the original author: https://github.com/qhool/quaff
hex.pm: https://hex.pm/packages/quaff
Documentation work is still work in progress.
I did this because I needed to use these dependencies in prod and all prod deps should come from hex.pm. dev, test, etc it’s fine to use git deps.
With the support of http://www.aruki.pt
Now I need to get actually back to work… :P
Texto - A simple web app to extract text found in images.
I built a simple web app using Elixir and Phoenix to extract text found in images. https://image-to-text.edgardev.com/
Building a Return Statement in Elixir
Now you can feel like you’re writing Ruby again. What could possibly go wrong?
https://blog.codedge.io/dont-try-this-at-home-building-a-return-statement-in-elixir/
Iteraptor :: each/map/reduce/map_reduce for nested terms
— https://github.com/am-kantox/elixir-iteraptor
— https://hexdocs.pm/iteraptor/Iteraptor.html#content
The library for easy iterating/mapping/reducing cumbersome deeply nested Elixir terms (maps, keywords, lists) went 1.0.0.
Iterate any deeply nested term like I am five.
Calculating Bitcoin Address in Elixir
In this article, I explain how to calculate a Bitcoin address in Elixir having only a private key: http://k.lelonek.me/bitcoin-address
Brex: A Specification Pattern implementation in Elixir
Using brex you can easily: define, compose, and evaluate your business rules to dynamically drive the flow of your application.
It was built to enable you to generate your business rules on the fly from configuration or some other form of persistence.
Phoenix Chat for your Rails application
Today I’m going to show you just another one Phoenix chat application that can be easily added to your existing project and have some other nice features
https://medium.com/@korolvs/elixir-beside-rails-2b94414bcb03
Public database of Elixir security vulnerabilities
We needed a database of security advisories for Elixir packages, but none existed. We’ve created this repo to serve that role, and populated it with all the existing vulnerabilities we’re aware of (thanks to the great work of Griffin Byatt on Sobelow).
All data is 100% public domain, and we hope this will become a useful resource for automated security tools.
How to retrieve GenServer state after termination ? The practical guide.
The practical guide on how to get back the GenServer previous state. https://medium.com/blackode/how-to-retrieve-genserver-state-after-termination-the-practical-guide-1bafcff780bb
Deep understanding of the usage of Supervisors and GenServer together to achieve the fault tolerance.
Drab 0.7.2 is out: reusable components are now easier to make!
This release is focused on Shared Commanders and how to create components with them. Do not miss the new example in the tutorial page!
hackney (http client for Erlang applications) version 1.12.0 has been released!
I just released a maintenance release of hackney version 1.12.0 wich containes many fixes: https://github.com/benoitc/hackney/blob/master/NEWS.md#1120—-2018-04-03 . It’s available as usual on hex: https://hex.pm/packages/hackney .
Next release will be a major one with many new additions and support of latest protocols. Enjoy!
Using Mocks Safely in Elixir Tests
Sooner or later, as your Elixir codebase grows, you’re going to hit a point in your tests where you need to avoid running a particular function.
https://medium.com/stuart-engineering/using-mocks-safely-in-elixir-tests-d88f36a04882
A Simple Notification System using Phoenix PubSub and pg_notify
Send yourself emails when users sign up or change their subscription plans
