Getting sorted list of images from Amazon ECR
I recently switched from using own hosted Docker Registry to the amazon hosted Elastic Container Registry and found that the UI, well, sucks. The results aren’t returned in any kind of sorted order and the UI doesn’t help you do that. In addition, it’s the same issue with the cli tool. I wish they included a timestamp field to know when the layer/image was created but in absence of that, the image tag are the best we have to go with. ...
Proxy Aware Http Client in Go
I keep running into situations where I find myself at a cafe or something where I’d rather not send all my traffic through work VPN. So alternatively, I use a SOCKS5 proxy for that. That works well for browsing, etc but what about applications I’m developing as well. Thankfully Go has a library that makes proxy aware http Clients really easy to write. It’s not executable, but I uploaded my example on Go Playground. https://play.golang.org/p/NWfG9b5GIN ...
Mesos Development Environment Installation and setup
Table of Contents 1. Mesos Development Environment Installation and setup 1.1. Questions 1.1.1. Why do you want to run Mesos? 1.1.2. What Frameworks are you going to run on Mesos? 1.2. Background Readings 1.3. Pre-requisites (Development Environment) 1.3.1. Zookeeper 1.3.2. Mesos Masters 1.3.3. Mesos Slaves 1.3.4. Testing this Cluster with Spark I realized recently that I have a somewhat non-standard setup for running/testing Mesos on my OSX system. Initially, I started this to see how well Mesos compiles on OSX, but given that this setup has worked fine for me, I’ve been running it. For a more accurate benchmark, I recommend running in VMs or some cloud provider. ...
Importing Open Data Files to JOSM
Following on my previous post on Getting Starting with Open StreetMap for Nepal, I wanted to look at the open datasets and GIS shapefiles that people have been sharing. Given the lack of additional data and poor satellite image resolution, being able to delineate Village Development Committee (VDC) would be great help, in my opinion. Here’s how to setup the JOSM tool to do so. We’ll get the data from HDX Data repository in the form of zip files to open in JOSM. ...
Getting Started with Open StreetMap for Nepal
As you must be well aware of the enormous toll the earthquake has taken for Nepal by now, there’s still work you can do to help the boots on the ground doing rescue work by helping map the affected regions. Basically, outside of major towns and cities, Nepal’s landscape is very hilly – there are few if any roads to most villages. It doesn’t help in rescue efforts now that all the villages are reduced to rubbles. If there are people stranded in these remote locations, knowing where the houses, residential areas are would expedite the process for rescue efforts. You would be looking at satellite images of the region and labeling whether a particular item is a path, road, house, or anything else. It requires paying attention to roads and having a general sense of what could be accessible. ...
Running a dev version of docker
I have recently been working on fixing some personal pain-points for Docker. It came about because of a course I am taking at UConn this fall on Troubleshooting Distributed Systems - Excellent course by the way. The current issue I’m looking at is the one about logging. Yep, I somehow managed to volunteered to do this in a month with a full-time job and 4 hours a week of driving back and forth from UConn. Anyway, I needed to run a dev version of Docker in my local machine alongside the stable version. I’m on a mac running boot2docker. There are other ways to do this but I find boot2docker sufficient for almost all the work I’d want to do in this case. ...
Simple Pandoc process
So, I recently signed up for a Distributed Systems course at UConn (http://www.engr.uconn.edu/~mok11002/public_html/cse5095_fall2014.htm). It involves a lot of reading and writing reviews. I have always written these class assignments in LaTeX except when I have been expressedly forbidden from using it. However, there’s a whole gamut of problems with writing in LaTeX directly. Partly, you may not always be in a place where your environment is sane. So, being able to store as plaintext/markdown would be awesome. Here’s what I do for the reviews: ...
How I learned to stop worrying and love Findbugs
Update: I know this is about a year late. I should do git stash pop more often. Also, after tweaking Jekyll Bootstrap too much I’ve decided to give up and port to something sane like Ghost or Octopress. The Five Stages of Grief Here is a cycle I see repeating in programmers (including myself) whenever a static analyzer is introduced in build process too late in the game. Denial: Before running anything “My code is awesome, the static analyzer will not catch anything for sure.” And after running – it should be a minor fix to resolving any issues Anger: ...
Installing Emacs 24.2 from source with Checkinstall on Ubuntu 13.04
Caveat This isn’t very well written, I might revisit this at some point. These are really just my notes in installing emacs and some reasons why I’m going out of the vim world in response to some crazy issues I’m having. I recently decided that I should give Emacs another go. As you might know based on my posts that I really like vim. It’s just simple and easy to find everywhere. Great for sysadmins and programmers alike. What I’ve been finding is the same kind of bloat that I saw in Emacs years before. As I kept adding more languages and features to use Vim as more of an IDE (for clojure specifically), these warts became more apparently. For example, I was segfaulting my vim editor every once in a while while editing Clojure because something odd was happening with my syntax analyzing plugin and the vim buffer. There are additional problems with Vim and Clojure that I found.. say, you absentmindedly wrote a code like this. I use the magnificent Vim Fireplace plugin to code in Clojure. ...
Perfect Vim Setup for Go
So, the more I use Go, more I like what I’m getting. It’s one of the very few languages that guides you to write better code right off the bat by making it easy and not pedantic. I have a big rant in my head about this but I’ll save you the pain. This was one thing my vim setup was missing. As my go programs became bigger, I kept thinking, I’d really like better autocomplete and, heck, even syntax highlighting. I’ll focus on two ways to do this for vim, one without using Pathogen, Vundle and one using Pathogen ( I don’t use Vundle but the idea is the same ). ...