Google Summer of Code Meet Up In Delhi (2016)

A GSoC meet up was held in Delhi @Codingblock, Pitampura. More than 400 students applied to attend this session but unfortunately only 100 were selected to attend it ( one of them was me 😛 ). Session started at 03:00 pm till 06:00 pm with lot of talks.

First talk was from Shiven Mian ( GSoC 2016, FOSSASIA ), he gave a brief explanation about GSoC program and also discussed about various organizations. Then he started showing about his GSoC project and described his proposal and ideas to implement. Though he was having only 6 months experience but still he is a contributor to FOSSASIA and his mentor was a co-founder of FOSSASIA : Mario Behling.

In between there was a video conference with Mario Behling, it was one of the best session among all and got some tips to contribute to open source as well as FOSSASIA. He interacted with all of us and asked about our interest to contribute and guided us accordingly.

Second talk  was from Arnav Gupta ( GSoC 2015 & 2016, FOSSASIA ), he explained about version control system , pull requests , GIT and many more. He shared all his experience in FOSSASIA and how he get into summer of code program.

Third talk was from Harshit Dwivedi ( GSoC 2016, FOSSASIA ), he too shared his experience and some tips to use gitter and other open chat sessions. He also showed his well did proposal ( personally it was one of the best proposal I have ever seen 🙂 ) and his contributions to FOSSASIA.

Fourth talk was about FOSSASIA’s new application developed by Manan Wason (GSoC 2015 & 2016, FOSSASIA ) and Harshit Dwivedi, there project was to build an app as an open event project. Some more talk sessions from Rakesh Verma, Aayush Arora, Aditya Vyas and Saptak Sengupta.

At last, there was an interactive session but unfortunately due to lack of time and long distance I couldn’t attend that. missed :'(.

Really it was a great session and good experience with these GSoCer fellows.

 

 

 

 

“Don’t just think of contributing , start contributing (</>)”

Advertisements

#dgplug Sessions ( based on linux )

Recently a linux users group from Durgapur is conducting a new program on IRC free chatnode #dgplug. Basically this program is for 3 months and there motto is to increase the number of linux developer and making them a pro in this line.

Every year this program starts in the month of June. This time it started on 19th June 2016.

First day it was an introduction session. Later on it started with introduction to terminal and bash. Then we got to know about oh-my-zsh also many other terminal codes. They also started  Python session from the basic level.

This session will improve our mail etiquette and it will also help us to get familiar with IRC chatnodes.  🙂

Till now there are nearly 100 users and everyday it increases, if anyone is interested then register in IRC and start following #dgplug freenode.

 

 

 

” Happy Coding  </> ; “

Switching to zsh from bash

Terminal ( a more common word bash ) is very common in the world of linux.

What is zsh ?

The Z shell (zsh) is a Unix shell that can be used as an interactive login shell and as a powerful command interpreter for shell scripting. It improves the ability of bash i.e built in shell in linux; it makes a shell   more interactive using more than 140 themes.

Installing zsh –

Things to be required to before migrating

  1. Any linux disro
  2. Installed git ( $sudo apt-get install git )
  3. Installed curl or wget ( $sudo apt-get install curl or wget )
  4. Installed zsh latest version ( $sudo apt-get install zsh )

Installing oh my zsh –

via curl : $sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
via wget : $sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

For manual installation –

First we need to clone the repository :
$git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
Creating a new zsh file for configuration :
$cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
Finally for changing your shell :
$chsh -s /bin/zsh
For upgrading oh my zsh manually :
upgrade_oh_my_zsh
For executing bash while using zsh :
$exec bash
$exec zsh

Further we can configure it in ~/.zshrc file.

 

 

 

How to prepare for GSoC ?

GSoC ( Google Summer of Code ) is a platform for developers as well as coders to show their  skills and to give new ideas for different organizations to improve their data and presentation of data. For getting a GSoC we really need to work hard and spend more time in computers and its applications. There are some initial steps which you need to take care.

  • You need to know to chat in IRC Cloud. For this you need to register at IRC Cloud
  • Once you have registered in IRC then start using it. Ask good questions, be in touch to everyone and also go through IRC netiquettes
  • Now you have to learn to use GIT. Go through Git Introduction
  • Create your own blog. It will help you a lot to learn new things.
  • Be more active in technical stuffs.

Then next step in to choose an organization in GSoC page. It is your choice to choose an organization. Only choose that organization in which you find your interest.

Now register in that in that organization read their documentation and make yourself busy with that organization. Starting learning how to contribute to that organization also how to fix bugs. This will help you in your proposal selection time as mentor will be able to know you more and chances of getting selected is more.

After doing that go through the ideas list of that organization and select a good project of your choice. Contact your mentors about that project in IRC and check whether they have sufficient time to help you and be more friendly to your mentor and ask him good questions.

GSoC program is of 3 months so you need to work according to it. Firstly start writing proposal to about that project within the given time and make sure that the main content is there in your proposal and also give more ideas you have.

Once your proposal is selected start doing your project for next 2 month.

If you get a chance to win then you will be getting a price money of  $ 5500 and Google goodies and obviously a certificate. Anyway price not only the target participating in GSoC itself is also a great achievement.

The starting point of all achievement is desire.

 

 

 

 

 

 

 

Hope you got some idea about GSoC and other little stuffs. For more Please Subscribe.

GIT Commands.

Introduction to GIT

I had a GIT workshop in FOSS club and therefore, this post is going to be on GIT.This workshop was very important to us to understand about GIT. After that workshop I got an idea about what GIT is and for what purpose we use GIT. I hope that after going through this post you will get an idea about GIT.

What is GIT ?

It’s definition is “GIT is a free and open source distributed Version Control System designed to handle everything from small to very large projects with speed and efficiency.”

Before going into that you have to know about Version Control System (VCS). A version control system (also known as a Revision Control System) is a repository of files, often the files for the source code of computer programs, with monitored access. The are of three types as following :

  • Local Version Control Systems – Many people’s version-control method of choice is to copy files into another directory (perhaps a time-stamped directory, if they’re clever). This approach is very common because it is so simple, but it is also incredibly error prone. It is easy to forget which directory you’re in and accidentally write to the wrong file or copy over files you don’t mean to.To deal with this issue, programmers long ago developed local VCSs that had a simple database that kept all the changes to files under revision control.
  • Centralized Version Control Systems – The next major issue that people encounter is that they need to collaborate with developers on other systems. To deal with this problem, Centralized Version Control Systems (CVCSs) were developed. These systems, such as CVS, Subversion, and Perforce, have a single server that contains all the versioned files, and a number of clients that check out files from that central place. For many years, this has been the standard for version control.
  • Distributed Version Control Systems – This is where Distributed Version Control Systems (DVCSs) step in. In a DVCS (such as Git, Mercurial, Bazaar or Darcs), clients don’t just check out the latest snapshot of the files: they fully mirror the repository. Thus if any server dies, and these systems were collaborating via it, any of the client repositories can be copied back up to the server to restore it. Every clone is really a full backup of all the data.

How to install GIT ?

Installing GIT is very easy. The thing is that you need few codes which is to be given in your terminal (for linux users). Others can directly install GIT through the link given –http://git-scm.com.

Creating a repositories

Repository commonly refers to a storage location, often for safety or preservation.Inside a repository we can store n number of folder.It is very important to create a repository so that you can save all your work in a single directory. To create a repository we have a code git init <name of repository>. This will initialize a repository of any given name. You too can do it, just open your terminal and type this code.

Cloning a GIT repository

When you create a repository on GitHub, it exists as a remote repository. You can create a local clone of your repository on your computer and sync between the two locations. This will create a local repository in which you can edit anything you want to contribute. For cloning a repository you just have to type git clone , and then paste the URL of the location where your main repository is currently saved. Press Enter. Your local clone will be created. git clone https://github.com/YOUR-USERNAME/YOUR-REPOSITORY Cloning. Then it will unpack those files which were saved repository.

How to do changes in a repository ?

Making changes in your repository is not a difficult task. You have to remember few codes to add new changes you made. Few of the functions are

git add <type the name of your file> – This command updates the index using the current content found in the working tree, to prepare the content staged for the next commit. After doing add function it will show the difference between the work before you added and after you added.

git commit -m “<type any commitment you did in the file>” – This command Stores the current contents of the index in a new commit along with a log message from the user describing the changes.

git diff <type the name of your file> – This command will show the difference between the work before you added and after you added.

git push  – This command is used to push your edited file to the main branch.This will upload all the changes you made.

git pull <type name of your repository><type name of main branch> – Generally in GIT we need to push a file as the topmost file. Your files will be pushed only if your have all other new changes that your teammates had done. If you don’t have then first pull those file from the main branches and then push the file which you have updated.

git status – This command is used to check your status that where are you now and what all changes you had done in your repository.

git checkout<branch name> – This command updates files in the working tree to match the version in the index or the specified tree.

git head – This command is also same as status command. The only thing is that this will show us our current status what we had done.

git show – This command will show us that what all commits we have done.

How it is useful ?

  • We can edit any repository more faster and it is more reliable
  • No limitations for adding files and creating repository.
  • Free open source for all.
  • We can do editing work for days. No worry about time.
  • Easy to work by doing a local cloning of the repository.

This blog was to give you an idea about GIT. Now it’s your turn to do it practically.Try Github.com .

 

 

 

A community needs a soul if it is to become a true home for human beings. You, the people must GIT it this soul.

 

 

 

 

 

Source : https://git-scm.com/