Skip to content

development

Posts on my blog related to software development or programming.

Erlang: Dialyzer HTML Reports using rebar3

How I made a custom rebar3 plugin to generate HTML reports for dialyzer warnings

Running multiple emacs daemons

Run multiple emacs daemons for different purposes and set different themes/config based on daemon name

Erlang: find cross-app calls using xref

Using xref magic to query Erlang code and find cross-application function calls

Erlang: find cross-app calls using xref

Clean boot in erlang relx release

We use relx to release out erlang applications, and faced a problem: Our application was crashing at bootup, and therefore we were not able to even open a remote shell on which we can run any correction functions. One way to solve this (which we've been using till now) is

Slack bot for Phabricator Notifications

NOTICE: The solution mentioned in this post no longer works because Slack has closed down the IRC gateway. I recommend using the phabulous project for this now. Phabricator is a collection of open source web applications useful for software development built on a single platform. We have been using phabricator

Notes on atom feeds

For implementing feeds for the Isso commenting server [http://posativ.org/isso/] , I was researching about atom feeds, and though I would jot down some notes on the topic. RSS2 vs Atom Both are mostly accepted everywhere now a days, and it seems like a good idea to provide both

Trying Emacs

Bare bones emacs configuration from when I first started using Emacs

Speeding up compilation times for Libreoffice / C++ projects

I got interested in LibreOffice [http://www.libreoffice.org/] a few days ago, and wanted to contribute. I wanted to see how a large project is run, and the Easy Hacks [https://wiki.documentfoundation.org/Easy_Hacks] section looked easy enough to begin. But, there was one problem: LibreOffice is

Basic implementation of A* in Erlang

Recently I had to write some path finding algorithms in Erlang. The first version I chose was A*. But, there is no easy way to implent A* in a distributed way. So, this is the simplest implementation possible. I may rewrite it later if I find a better way. This

Erlang Profiling Tips

I have been using erlang recently for some of my work and private projects, and so I have decided to write about a few things there were hard to discover. Profiling is an essential part of programming in erlang. Erlang's efficiency guide [http://www.erlang.org/doc/efficiency_guide/profiling.