Stateful Genservers in Elixir

http://gladecki.pl/2017/08/19/stateful-genservers-in-elixir/

hi, i made this funny little app to learn how GenServers work in Elixir, so i explained it later on in a blog post. It is a pretty cool base to go any further without digging into Supervisors and such. I’d love to see it on the Elixir Weekly! (which i love btw - great job!)

IntelliJ Elixir v6.1.1

Thanks

  • For reporting the need to install intellij-erlang to get icons to resolve
  • For reporting formatter didn’t indent first line of a new do … end block
  • For reporting still unhelpful errors from beam decoder

Changelog

v6.1.1

Bug Fixes

  • When #754 made intellij-erlang a soft-dependency, it broke the debugger’s icons that referenced ErlangIcons, but it turns out all the icon constants were aliases to AllIcons.Debugger constants, so by using the AllIcons.Debugger icons directly, the dependency on ErlangIcons can be removed without the need to copy the image files into intellij-elixir.
  • When do … end template is inserted, it did not have a previous child whose attributes to use, so it used the default, which left the cursor unindented. To get the cursor indented by default, When the ElementType is DO, apply the stabChildrenIndent rules: indent normal and determine whether to indent relative to direct parent using code style setting.
  • Include VirtualFile path in Beam read errors

Installation

Installation Instructions

Understanding the concept of a context in Phoenix

The usage of contexts is a major new concept introduced in Phoenix 1.3 which helps us to write more maintainable and reusable code …

https://samueltthomas.com/understanding-the-concept-of-a-context-in-phoenix

Introducing Nebulex

A fast, flexible and powerful caching library for Elixir

Continue reading here: http://cabol.github.io/posts/2017/08/14/introducing-nebulex/

GenStage by Example: episodes 1-5

My first set of screencasts on GenStage. Episodes 1-5 focus only on the basics and how things work.

https://stuffbyexample.com/genstage

A year of Elixir

Reflection on a year of being part of Elixir’s excellent community

https://labs.uswitch.com/a-year-of-elixir/

ElixirScript 0.30.0 Released

ElixirScript 0.30.0 has been released and contains lots of exciting changes.

https://elixirscript.github.io/post/elixirscript-0.30.0-released/

Sentry.io inside Docker with Elixir

How to use sentry.io with Elixir inside a Docker container?

https://blog.lelonek.me/how-to-use-sentry-io-with-elixir-in-docker-8374e695f706

Recurring tasks in Elixir: Solution #2

In my blog post, I consider a solution based on a timeout which can be defined for a GenServer process.

https://nesteryuk.info/2017/08/13/recurring-tasks-in-elixir-solution-2.html

OPQ: A simple, in-memory queue with worker pooling and rate limiting

A simple, in-memory queue with worker pooling and rate limiting in Elixir. OPQ leverages Erlang’s queue module and Elixir’s GenStage. Originally built to support Crawler.

Check it out: https://github.com/fredwu/opq

Simple impersonation with Guardian

Manage multiple sessions and impersonate as other users with Guardian

http://undefinedmethod.com/blog/simple-impersonation-with-guardian/

IntelliJ Elixir v6.1.0

  • Debugger setup fix

Installation Instructions

First impressions of property testing with StreamData

I haven’t done any property based testing before, so this is obviously quite basic. But I spent half of yesterday playing with the new StreamData library and thought I’d post a little write-up on that.

http://bit.ly/2w107UA

IntelliJ Elixir v6.0.0

  • Formatter
  • Parallel test reporting
  • OTP 20 support for AtU8 chunk decompilation
  • Nix and NixOS support on Mac and Linux
  • Mix path quoting fix on Windows
  • Reference caching for performance improvements

Installation Instructions

Hulaaki v0.1.0 released - an #MQTT protocol library for #Elixir

An Elixir library (driver) for clients communicating with MQTT brokers(via the MQTT 3.1.1 protocol). - https://github.com/suvash/hulaaki/

View the complete changelog at https://github.com/suvash/hulaaki/blob/master/CHANGELOG.md

[0.1.0] - 2017-08-12

Added

  • Added link to CHANGELOG in the README
  • Add instructions on using Makefile for running tests.
  • Handle gen_tcp connection failures instead of crashing
  • Add automatic ping to server (based on keep alive) and expect ping response with callbacks
  • Handle packet ids internally (for control packets with variable header)
  • Adds TLS/SSL support for the library
  • Implement chunked message receiving so as to parse packets sent together

Fixed

  • Replaces all occurences of 65_536 to 65_535 (max limit for 2 bytes)

ParallelTask: easily run functions in parallel and capture the results

A library for easily parallelizing slow tasks such as API requests, database queries and the like.

https://github.com/Fabianlindfors/parallel_task

Inspired by Ryan Sydnor’s article Reducing Elixir Backend Time From 120ms to 20ms With Parallelization.

Using GenServer :via

I have two GenServers that use the same handle_* interface so I figured out how to use :via to talk to either through the same means.

https://blog.oestrich.org/2017/08/genserver-via/

ReceiptDecoder: Decode iOS App receipt

ReceiptDecoder is a tool to decode iOS App receipt in Elixir. You can do some validation before sending receipt to remote server.

https://github.com/linjunpop/receipt_decoder

Benchmarking in Elixir

Ready to measure the performance of two pieces of code w/ the same output? Check out the latest episode: Benchmarking with Benchee https://elixircasts.io/benchmarking-with-benchee

What if Elixir were Homoiconic?

This article explores the misconception that Elixir is homoiconic, dives into what “homoiconic” actually means, and envisions what Elixir would look like if it truly were a homoiconic language.

Previous page Next page