Rill Stage 1

Exploring Twitch API

The goal of the project Rill is to collect data about online streams from Twitch (and, possibly, other streaming platforms) for further analysis. 1) Set up Twitch client ID according to: http://blog.danielberkompas.com/elixir/2015/03/21/manage-env-vars-in-elixir.html The process to obtain data about streams for a particular user looks like this: 1) Find user’s username (e.g., from a Twitch URL) 2) Make a request to Twitch API to convert username to stream id. 3) Make a request to Twitch API to obtain data about user’s stream (is there a live steam, is there a recording being played) [Read More]

Luhn algorithm in Elixir: implementation, refactoring, and benchmarking

Some time ago, I have encountered a programming exercise in which the goal was to implement Luhn algorithm for credit card number validation. At first I implemented the algorithm in Ruby and then decided to implement it in Elixir. Eventually, I like how Elixir version looks like. In this article Elixir 1.2.2 is being used. Initial version It is assumed that credit card numbers are being read from a file and that check digit is included in a credit card number. [Read More]

A challenge: remove tags from a string.

Recently I have implemented a small piece of functionality, which is suitable to be a small challenge. Description Given a string with opening and closing tags (e.g., <mark></mark>), return a string without tags and indices of opening and closing tags. For example, given a string: "we eat <mark>healthy</mark> and <mark>tasty</mark> food." We expect to receive a string: "we eat healthy and tasty food.", and an array with pairs of indices: [[7, 14], [19, 24]]. [Read More]