CinderellaMan

CinderellaMan OP

Hi everyone :wave:

The 12th episode is out! This time we focus on leveraging the Task abstraction to simplify the autostarting and supervision tree of the Naive application. We will look into how we could stop tracking the trading symbols and drop the Naive.Server altogether.

This one is a little bit different, would love to get some comments about the new format :wink:

Enjoy :heart:

2
Post #51
CinderellaMan

CinderellaMan OP

2nd alpha release of my book is out! @ 50% it’s about 145 pages long and has 12 chapters:

https://leanpub.com/create-a-cryptocurrency-trading-bot-in-elixir

Feel free to reach out if you found any issue / drop a comment / say hi :slight_smile:

Have a wonderful Sunday,

Kamil

5
Post #52
Pilgrim

Pilgrim

I just bought your book and will like to thank you for all your hard work. I like how you don’t hide anything from the reader/watcher in that, you make all the decisions and choices you’re making clear.

You also teach a bit more I think, especially, for those new to programming by walking through other library code and documentation in github. It’s an invaluable skill which may sometimes feel a bit scary for a learner.

What’s the best way to notifiy you about issues with the book? Found a couple to far :smile:

2
Post #53
CinderellaMan

CinderellaMan OP

I love that you started with a nice tone :wink: and then gave me a punch regards the “issues” :boxing_glove: (just kidding)

Thank you very much for your kind words - that was my intention, idea is to show people that it doesn’t need to be neither perfect nor “best”. It needs to work and it’s an interactive process and Elixir(and functional programming in general) makes it easier to manage those refactoring upgrades as your understanding of the domain grows.

There are 2 repositories each attached to a different stream of work:

They are different as code is different between those two (not dramatically but the book is definitely “streamlined” - I’ve learnt some lessons from the videos on the way which I’ve put in the book).

Thank you once again for buying a copy and feel free to create issues or even PRs if you fancy contributing to my effort - any help would be tremendously appreciated! :+1:

3
Post #54
CinderellaMan

CinderellaMan OP

Hello :wave:

Just released my 13th video! :champagne:

We will focus on creating a supervision tree around our streamer processes that will allow us to start and stop streaming on a symbol. To keep things in sync with the improvements made to the Naive application in the last episode, we will also introduce the autostarting functionality based on the settings from the database.

I’ve also redone the 12th video and uploaded it again so it follows the style of the series a little bit closer.

Enjoy :heart:

5
Post #55
CinderellaMan

CinderellaMan OP

Hello everyone :wave:

I’ve managed to get 3rd release of my book out!

I guesstimate it to be about 75% finished and with 15 chapters, it’s 200+ pages long.

Newest release contains 3 additional chapters:

  • “Abstract duplicated supervision code” - we will venture into abstracting away the supervision logic that we copied in the previous chapters by leveraging refactoring and macros. This chapter contains a full refactoring session.
  • “Store trade events and orders inside the database” - we implement a new application that will be responsible for storing data from the PubSub topics. Additionally, we will look into how we could make the supervision tree even better by introducing Elixir Registry.
  • “Backtest trading strategy” - based on improvements from previous chapters we will be able to implement an extremely simple backtesting method that will stream trade events from the database to PubSub topic

I would like to say that I’m gratefully thankful for all the support from the Elixir community with this project(both book and videos) - I couldn’t do this without you :heart:

Enjoy :heart: - now back to the videos :movie_camera:

3
Post #56
jensendarren

jensendarren

I bought the book a while ago and this is really great news! Thank you so much Kamil!

1
Post #57
CinderellaMan

CinderellaMan OP

Hello :wave:

Just released my 14th video! :champagne:

We will focus on refactoring the duplicated logic responsible for supervising(starting, stopping, and autostarting) the dynamic processes inside the naive and the streamer applications. First, we will abstract away all the generic code leaving just a boilerplate inside the naive application. Next, we will look into the “using” macro which we will leverage to get rid of that boilerplate. This video was released for educational purposes as the proper way of solving this problem would be to use the Registry(which will be the focus of the next episode).

Enjoy :heart:

1
Post #58
jononomo

jononomo

Keep up the good work. I’m super excited about diving into this series next week, after I first work through some preliminary tutorials.

1
Post #59
CinderellaMan

CinderellaMan OP

Thanks for your message :heart: I would love to know how did you find it? Does it give enough info to research on your own, is it interesting/challenging?

0
Post #60