Some Useful Resources
Find some helpful links that might strengthen your Elixir skills.
We'll cover the following
Useful GitHub links
- Hiring without the whiteboards
- comeonin
- nifsy
- markdown
- Nifsy project
- Porcelain
- erlexec
- erlport project
- Rustler
- peerage
- libcluster
- English-words repository
- recon
- tracer
- exometer
- PryIn
Helpful tools
- Travis-CI
- circle-ci
- Jenkins
- Ebert
- Blazemeter, that is built on top of JMeter
- loader.io
- flood.io
- Rollbar via rollbax
- Sentry via sentry-elixir
- Honeybadger via honeybadger-elixir
- :sys module
- wObserver
- visualixir
- erlyberly
- DataDog
- InfluxDB
- Prometheus and Grafana
- AppSignal
- WombatOAM
- Scout
Miscellaneous
-
“Evaluating Scalable Distributed Erlang for Scalability and Reliability” by N. Chechina, K. MacKenzie, et. al.
-
Registry documentation
-
Writing NIFs
-
The NIF commands:
On Linux:
gcc -o priv/elixir_nif.so -shared -fpic \ -I/usr/local/erlang/18.1/lib/erlang/erts-9.2/include \ c_src/elixir_nif.c
Remember, you’ll have to replace the -I
with the path you found previously. The flags -shared and -fpic tell GCC to build a shared library with position-independent code. This means the code does not expect to be loaded into a specific memory address.
On macOS, we need to specify two extra flags and the correct path for
-I
, like this:gcc -o priv/elixir_nif.so -shared -fpic -dynamiclib \ -undefined dynamic_lookup \ -I/usr/local/Cellar/erlang/18.1/lib/erlang/erts-9.2/include \ c_src/elixir_nif.c
Remember to type the previous on one line.
And on Windows, we use this on one line:
cl /IERTS_INCLUDE_PATH=C:\erlang\18.1\lib\erlang\erts-9.2\include /LD /MD /Fe priv\elixir_nif.so src\elixir_nif.c
Get hands-on with 1400+ tech skills courses.