erlang-rocksdb version 1.0.0 has been released. Enjoy the stable API!
I just released rocksdb 1.0.0 a binding of rocksdb for Erlang and Elixir based applications. Enjoy the stable API :) RocksDB is a library that provides an embeddable, persistent key-value store for fast storage, you can find more information about it on http://rocksdb.org.
erlang-rocksdb 1.0.0 includes the following changes:
- first stable version
- miscellaneous build improvements with new build options and optimisations: https://gitlab.com/barrel-db/erlang-rocksdb/blob/master/doc/customize_rocksdb_build.md
- stable API
Most people will want to start with the Getting Started section of our wiki: https://gitlab.com/barrel-db/erlang-rocksdb/wikis/Getting-started. Full API reference: https://gitlab.com/barrel-db/erlang-rocksdb/blob/master/doc/rocksdb.md
Sources are available on gitlab: https://gitlab.com/barrel-db/erlang-rocksdb/tree/master
Or via hex: https://hex.pm/packages/rocksdb
Exop on StreamData
A story about how I was inspired by Andrea Leopardi’s talk “Property-based testing is a mindset” he gave at ElixirConfEU 2018 in Warsaw, Poland, and what is ExopData as the result of this inspiration.
Exop + StreamData = ExopData - a tool which helps you generate data and write property-based tests.
https://medium.com/@andreichernykh/https-medium-com-andreichernykh-exop-on-streamdata-75a2115d150d
Easy Concurrent Locking for Erlang/Elixir
This is a tiny library I threw together as I realised it would be useful in a couple of scenarios. The source is in Erlang, making it easy to use in both languages, and has example usage in both.
Check it out here: https://github.com/whitfin/sleeplocks
Distributed Phoenix Chat with PubSub PG2 adapter
Distributed Phoenix Chat with PubSub PG2 adapter
In this article we see how to cluster Phoenix Chat nodes, using distributed Elixir. We see how pg2 works and inspect how Phoenix efficiently broadcasts the messages in a distributed chat app.
Parsing Text with Context Free Grammars Elixir
Parsing complex text requires a context-free grammar, here is a brief video tutorial on how to work with them
Free Email Course on building Releases with Elixir
I have created a new Email Course on building releases with Elixir.
My Advent of Code 2018 Recap
https://dsdshcym.github.io/blog/2019/01/29/my-advent-of-code-2018-recap/
In this blog post, I wrote about what I learned from AoC 2018:
- Stop Thinking, Start Solving (Don’t get paralyzed by complexity estimations)
- Functional thinking (a.k.a Streams v.s. Recursion)
- Don’t Use Processes for Encapsulation (To spawn, or not to spawn?)
- Binary Search FTW
Hey Siri, Deploy My Elixir App
I made another post on using Actions with Elixir code: This time, I deploy an app to the Heroku Container Runtime using Siri.
https://jclem.net/posts/2019-01-28-hey-siri-deploy-my-elixir-app/
GitHub Actions for Elixir
A blog post on how to write GitHub Actions for Elixir. This allows you to do things like run tests, check code formatting, and manage releases for Elixir projects using GitHub Actions.
https://jclem.net/posts/2019-01-26-github-actions-for-elixir/
ExVenture Updates for January 2019
ExVenture is a text based MMORPG. Refactors continue this month, along with some new game mechanics (proficiencies). Check out the post for more information!
Managing External Commands in Elixir with Ports
Managing External Commands in Elixir with Ports
This article goes over the basics of starting an external command, and watching its progress with Ports and GenServer callbacks.
OTP in Elixir: Learn GenServer by Building Your Own URL Shortener
OTP in Elixir: Learn GenServer by Building Your Own URL Shortener
In this article we explore the basics of BEAM processes, how to build a stateful process and how to migrate it to use a GenServer behaviour by building a very simple URL shortener.
Building a Tic-Tac-Toe game in WebAssembly with WaspVM
With the release of WaspVM 0.8.1 we’ve created a host function DSL that allows developers to define Elixir functions that get executed from within WebAssembly. Here’s a guide to building a simple tic tac toe game with WaspVM
ElixirMix Podcast 035 - Adopting Elixir with Tiago Duarte
In this episode of ElixirMix, the panel talks with Tiago Duarte at Coletiv.com about betting on Elixir, the change from OOP to Functional, hiring and training people, Elixir debugging, and much more!
Implementing connection draining in Phoenix
After lots of investigation, I finally figured out how to do connection draining in Phoenix (or any library using Ranch) in a nice way. This blog post explains how it works!
Library: https://github.com/derekkraan/ranch_connection_drainer
