Elixir Blog Posts

Hey all,

I wrote a bit this week about my struggles in finding a fast, safe way to do a hex dump from within an Elixir application. The articles goes through a few possibilities, presents their drawbacks, and then lands on a final DIY solution.

Check it out, and let me know what you think!

3 Likes

Hereā€™s a tangentially related follow-up to my last post. Iā€™ve been working on this for a while, and publishing a lot of content leading up to it. Check out my newest article on ā€œConnecting an Elixir Node to the Bitcoin Networkā€.

Itā€™s a big article that covers a lot of ground, but Iā€™m extremely excited about it. Let me know what you think. Hopefully someone finds it interesting or helpful. Iā€™m sure Iā€™ll continue down this vein in future articles.

1 Like

Building a distributed chatroom with Raxx.Kit

http://crowdhailer.me/2018-05-01/building-a-distributed-chatroom-with-raxx-kit/

Step by step walk through to building a multi-node chatroom based on the Raxx micro-framework.

Bonus: No websockets needed, HTTP/2 supported by using Ace server.

4 Likes

https://medium.com/@jpiepkow/arbitrary-code-execution-safely-with-lua-and-elixir-3de78d0d1c85

2 Likes

Another alternative is to use Luerl which a complete standard Lua 5.2 implemented in Erlang. Can be truly sandboxed if necessary. https://github.com/rvirding/luerl Yes, itā€™s by me. I could not add a comment to the blog post.

4 Likes

I actually do use luerl and the sandbox implimentation in the develop branch in the blog post, unless you ment something else?

2 Likes

Yes, thatā€™s what I meant.

4 Likes
2 Likes

Hi everyone! I have been casually learning Elixir for a while and I also started blogging about it recently. Iā€™d love to use it in production some day. My first article is an introduction to Plug. Enjoy!

https://www.pompecki.com/post/plugs-demystified/

9 Likes

Iā€™ve been playing with property-based testing in my personal projects lately. I found a perfect opportunity to put it to use when writing a decoder for the Bitcoin BIP-39 encoder I previously built and wrote about.

Property testing actually found a bug in my original implementation that I definitely wouldnā€™t have caught through manual testing! This was an eye opening experience for me for sure.

Check out the full article for more of an explanation, and a runthrough of the decoderā€™s implementation: Reversing BIP-39 and the Power of Property Testing.

Hopefully someone else finds all of these Bitcoin-related articles interesting. I know I do.

7 Likes

I have blogged because I have been asked the questions of ā€œis Elixir good for my projectā€ many times recently:

8 Likes
2 Likes

More Bitcoin/Elixir fun. This week I decided to beef up our in-progress Bitcoin node by swapping out the GenServer behavior with @fishcakezā€™s Connection behavior. This lets me be much more nuanced about how I handle connection problems with peers, and also turns my synchronous connection process into an async process. Check out the full article if that sounds interesting.

3 Likes

Nice article! Definitely makes me want to actually try out the Connection library. Also you have a small typo.

the loss of a single node itā€™s a big deal

I think that should be ā€œisnā€™t a big dealā€

2 Likes

Whoops, good catch!

Over the last few weeks, we have been building a web application in one of our clients and ended up duplicating some template code. These new pages had something in common between them, but not with the rest of the application. We needed an inner layout to reuse the template code between these pages, however, Phoenix doesnā€™t come with this feature. In this post, youā€™ll learn how you can build nested layouts in Phoenix and when you should use them.

2 Likes

And another one! This time we swap our a single-node supervisor for a DynamicSupervisor and start recursively connecting to other peers throughout the Bitcoin network.

Full post here: Spreading Through the Bitcoin Network

One of these days Iā€™ll have a mostly adequate full-node implementation!

2 Likes

Playing Together with Elixir Binaries ā€“ Strings :slight_smile:

Article Image

This article comprises of things that youā€™ll encounter while working with Strings and Raw bytes explaining with real situational examples. I tried to design the images, to focus on what we are talking. Hope you like them.

Happy Coding !

A small gist

3 Likes

This is a gentle introduction to getting your Phoenix app up and running on a $5/month server at Digital Ocean. It starts from zero, assuming minimal experience with servers. It assumes you are running macOS.

By @jakemorrison

1 Like

Please give it a try. If anything is not working or is confusing, please open issues on https://github.com/cogini/elixir-deploy-template or ask questions. I am reachfh on the Freenode group and jakemorrison on discord (in UTC+8 time zone).

Deployment is never going to be a one-size-fits-all solution, but I want it to be as easy as possible.

1 Like