How I "Adopted" Seagull

I don't work with Seagull anymore. I don't know how to develop in C++. I have absolutely no interest in maintaining this open source project. Yet when you Google seagull linux or seagull protocol my GitHub repo for the project shows up on the first page. How did I end up in this situation?

Read more …

Role of Judiciary in Pakistan

Judiciary in Pakistan has seldom -- if ever -- appeared to be independent and empowered. All major national events involving the Supreme Court have ended with egg on the faces of justices. From the hanging of Zulfiqar Ali Bhutto to the widespread fraud in 2013 elections, judges have opted to placate the most powerful figures in national politics. Justice makes way for political gain. Is this about to change when the new Chief Justice of Pakistan's Supreme Court takes oath on December 31, 2016?

Read more …

Unix Shell Programming: Lessons Learned

I have been writing tiny shell scripts for many years now. It was always with the help of DuckDuckGo searches and places like StackOverflow. I never grasped the history, features, syntax, etc. of shells. This all changed when I got serious about learning Unix shell programming.

Read more …

Follow Conventions to Build Infrastructure

Any sufficiently large software system depends on a lot of third-party artifacts, from operating systems to libraries to pre-built packages and everything else in between. For example, to deploy a single web server running a Django application requires a developer to pull in a Linux OS, Python, Django, Gunicorn, nginx, etc. Whether this complete package is deployed on a VM under your control or your customers', you want to follow conventions in the entire lifecycle of the application.

Read more …

Lessons from a Releng Sprint

I will recount the original CI process and the work that went into refactoring it. Although my role is quality assurance (QA) I had to don my release engineering (releng) hat for a few sprints. I could have let things be as they were but they were a hindrance to my work of testing and test automation. Rather than wait for the DevOps team to tackle the technical debt in our releng processes as time permitted, I decided to take this head-on as "step zero" in the long list of steps needed to make our continuous integration (CI) process efficient and fast.

Read more …