Developing a Slack Bot in Elixir Phoenix

Developing Slack Bot in Elixir Phoenix.

Generating Image Thumbnail In Elixir Phoenix With ImageMagick

Thumbnails becomes inevitable part of the process when dealing with images. They provide us a way to give a peek through the original image which helps in building rich user experience in modern applications. In an internal productivity tool while building this experience, Our whole attachments feature was ready and we had found the only available option in Elixir/Phoenix ecosystem Thumbnex for generating thumbnails. Once we started integrating this library, we almost immediately got hit by following error: ** (ErlangError) Erlang error: :enoent (elixir) lib/system.ex:622: System.cmd("ffprobe", ["-show_format", "/var/folders/

Upload files on S3 with Elixir/Phoenix using ex_aws

In one of our Rails 4 app, we decided to move file and image uploads to another microservice so that the load on server is reduced when a big file is uploaded. We decided to do this in Phoenix. In Phoenix, we have ex_aws package which makes file uploads to S3 very simple just like Rails. So lets get started. Add ex_aws Update mix.exs to include following dependencies. defp deps do [ ..., {:ex_aws, "~> 1.0"}, {:poison, "~> 2.0"}, {:hackney, "~> 1.6"}, {:sweet_xml, "~> 0.6"

Scaling Enterprise SaaS Platform with Microservices

Spoiler Alert: This article is not about Microservices architecture or how microservices works. In this article, I will share what we have learned in scaling one of the large SaaS platform, our ongoing improvements and how Microservices architecture is playing a key role in scaling this SaaS platform. This SaaS Platform has experienced tremendous growth in the past 18 months. It has now become one of the leading CRMs in North America. Everyone’s definition of “scale” and “growth” can differ based on specific numbers or metric a company is targeting i.e. revenue, user base, or others. We are

Real time web app - The future of web development

Web app had heavily evolved from times when web app was just meant to display some data using markup languages. There was a time when every software needed to be installed in every machine that want to use the software. Improvement in server side technologies, browsers and internet speed have fueled the phenomena of SAAS (Software As A Service). The rule of building a software has changed drastically. Most of the software that are developed today is developed by considering "use from any machine at anytime philosophy". There is a boom in SAAS market. More and more SAAS

Quick dive into Elixir, Phoenix and Erlang ecosystem

Few weeks back I was reading a blog about concurrency limitations in Ruby (which we all are aware since long) and how Elixir is evolving. Thus I was extremely curious to know this new dynamic functional programming language "Elixir", the two decades old Erlang language & Erlang Virtual Machine (VM) known for running low-latency, distributed and fault-tolerant systems. This article is a result of my curiosity about Elixir and Erlang. This article does not cover (i.e. out of scope) installation steps of Elixir & Erlang on Mac, Ubuntu or Windows machine as lot of help is already