Manage Dotfiles

What are Dotfiles? For those readers, who are not already familiar with the concept of Dotfiles, Dotfiles literally means files with names starting with a “.”, however, these files are somewhat special under UNIX environment, as they are hidden. They are used by a lot of softwares to customize the behaviour according to the needs of the user at the runtime. Therefore, these files can also be called Runtime Configuration files. Generally, these files are found directly under the user's home directory, however, some softwares prefer to place them under folders. Now-a-days, a lot of softwares is using the $XDG_CONFIG_HOME directory, which by default is the ~/.config directory. The files are mostly regular text files which can be edited by any kind of text editor. Some softwares though, prefer to generate these files using some sort of utility, like lxappearance for GTK themes.
Why is it important to manage Dotfiles? Usually, under Linux environment, most of the customization you do …

Resize Problem

As I mentioned in my Facebook post, this problem deserves a blog post of its own, so here it is. Note: This post will not help you in anyway to solve the Resize Problem. It is just a summary of my experience with this problem. So, It all started after I finished the previous problem, that is, Whodunit. So, I quickly went to check the docs for next problem, that is, Resize. There was some distribution code, so I quickly downloaded it with Wget on both my Local Machine and CS50 IDE by Cloud9. Background of it was just to read the docs of previous problem and understand it, which I already did. BTW, those docs where about how a Bitmap file is stored, its Headers, and RGB triples. Specifications were to resize the image with a factor of “n”. I thought, that’s easy to do. And then a bunch of bullet points for error codes for specific errors. Then came the 11 minutes long Walkthrough, as always by Zamyla Chan. A very good one, in which she quite accurately explained how to break down the pr…

How to setup Git Server

GitGit is the leading version control system, currently used by most of the Open Source Softwares including Gnome and Linux Kernel to name a few. It basically helps developers maintain softwares with ease. It is considerably fast and reliable then other version control softwares. Git stores everything in repositories. To learn more about Git, check this awesome book by Scott Chacon and Ben Straub, Pro Git.
Hosted Git repositories A lot of componies promoting Open Source Softwares, provide hosted public git repositories for free. This repositories can be viewed by anyone, using Internet. Some of these companies also provide limited/unlimited private repositories, access of which is limited to authorized people only. Few of the most widely used of them are:
GithubGitlabBitbucket Why do you need git server? Sure, there are plenty of options out there, but some people prefer to host there own repositories for security and privacy purposes or for internal use only. For them, setting up git…

How to ask questions

Why do you need to ask questions? Not just the beginners but even experts sometimes find themselves in situations, where they don’t know how to solve a problem, or they are not able to understand a piece of code, or during learning to use new Frameworks, not sure how to tweak and use it the way they want. And beginners, who are starting to code or are very new to a specific Programming Language always get stuck at one thing or the other. The quickest way to resolve this is to ask questions to community of experts, or even developers.
Be sure you want to ask? By this I mean do necessary Googling about the issue you are facing. Trying searching for error and do all your research. More often you will find same issue reported or questions related to similar problem and you then don’t have to ask. This is also important because its very frustrating for the community to answer similar questions over and over again. In most forums, moderators will close your questions with “Duplicate” tag i…

Google Code-in 2016 Last Day

… Continuing from last post.

These are the days we don’t regret. These are the days we don’t forget — The days by Avicii
You know when sometimes you get too excited about something that nothing comes to your mind. I’m kinda in that zone right now, too much to express but words are the limit.

Do you know what I think of Google Code-in? It is the most awesome competition for students at the school level. Its not like other lame competitions where students compete with each other, instead its where they help each other, learn from each others, and for the most part contribute on the same projects.

So I chose FOSSASIA, the most active organization in Google Code-in with most students and most tasks completed. A lot of mentors were and still are always ready to help us voluntarily, besides there day jobs. Some were even active for 10-12 hours a day. They are so passionate about helping new contributors get in. I’d like to mention names of a few who helped me a lot during the course of GCI…

Google Code-in 2016 Day 8

… Continuing from last post.
Task 9 “Website: Identify and Fix Issues our PSLab site on Github Pages”. But the problem was PSLab Site was way too simple and was using Clean Blog template so it was hard to find issues in it. So, I went ahead to check Site and what I found was that the site was broken or its not rendering properly. So, I reported the Issue#10 and someone fixed it by using CDN links insteas. Open Source :P. But, then I found out that developers.html, the second file was not fixed. So, I went ahead and fixed it and then I reported the Issue#14 and immediately created PR#15. Also in the meanwhile I found out that site was not having a Favicon(image placed on Tab, which generally is Logo or part of Logo). So, I created one more Issue#13 and this time I mentioned that I’m working on it. Then I created a Logo for PSLab, also I though about using FOSSASIA “F” logo as used in other sites of FOSSASIA to use as Favicon. Also, I googled and found out Font Awesome’s Flask Icon. I …

Google Code-in 2016 Day 7

… Continuing from last post.
Where’s Day 4, 5, 6? Well, I was working on FOSSASIA GCI 16 Site New look so didn’t got time to write’em.
Task 8 I was and still am enjoying working on GCI Site, and so I picked this task named “Website: Add a feature or fix an issue for the GCI website from the github issue tracker”. I found this Issue#400 and I planned to work on it. When I went through index.html and main.css, it was inconsistent at places and few sections were differently configured than rest. So, I mainly focused on Blog Section and fixed both the files. What I didn’t realised is that someone was working on blog section as well and has already committed his code. At the time of merging it created a merge conflict. Maintainers merge it by resolving the conflicts and it created a mess. So, I asked them that my version is fine and so we can use that to fix things and so I created PR#445 .

I was kinda off due to this ( I don’t know why) and so I decided to give the whole site a new look.…