Showing posts with label OpenSource. Show all posts
Showing posts with label OpenSource. Show all posts

Monday, September 16, 2013

Links Worth Reading

  • Garbage collection in MRI Ruby is getting replaced to (Generational Garbage Collection) from the original Mark and Sweep GC. This change will help deployment of Ruby in large scale systems. This change will be seen in Ruby v2.1. Link.
  • "Don't forget to Talk" article throws light on importance of having healthy conversations at office. He goes on to explain the creative process which is involved in a healthy conversation. So "Don't forget to Talk". Link.
  • Udemy is providing Free online courses in "BDD and TDD in Ruby". Do subscribe to this and have fun. Only 1000 first users allowed. Link
  • Here is an interesting article which says "Why not to date  a girl who reads". The author goes on to explain the various reasons for the same. Link.
  • And Finally some awesome "Ruby Tips". Link.

Thursday, December 6, 2012

Some lesser Known Git Commands

Git is a version control system used widely for source code management. But before exploring some less known git commands have a look at some of the most commonly used commands here. Go have a look, I will wait!!!

Ah, You are back. So, lets get into some awesome less known git commands.


Git Short Log :

Get a summarized 'git log' output.
It returns the commit logs grouped by author.

git shortlog  


Git Reverting :

Revert the existing commits and add new changes and commits to the reverted record.
Useful for reverting the faulty commits made.

git revert HEAD~2 
Revert the changes specified by 3rd last commit in HEAD and create a new commit with reverted record/changes.

git revert -n master~4..master~1
Revert the changes specified from 5th Last commit in HEAD to the 2nd Last commit in HEAD  and do not create a new commit with reverted changes.

Git CITOOL :

A graphical alternative to git commit.

git citool


Git Diffing :

Equivalent to diff command in Linux.
Shows the diff or changes between the commits or a commit and a working tree.
Extremely handy for getting to know the changes made to the commit or a working tree.

git diff
For further details for the diff command : Go here


Git Greping : 

Equivalent to grep command in Linux.
This searches your current directory for a pattern and prints the lines matching the pattern.
Extremely helpful for searching a particular keyword or pattern in your working directory.

git grep #define
Searches for the pattern #define in the current working got directory and prints all the lines matching #define.


Git Notes :

Adds, removes, or reads notes attached to objects, without touching the objects themselves.
They are used for adding information to commits which was not available during commiting.

git notes add -m 'Tested by Rajeev N B'

This command adds notes to the last commit. You can also specify the commit you want notes to be added.

git show -s 

Shows the notes added to the commit.


Git Stashing :

Stash your current changes of the directory away in a dirty local directory.
It record your current state and index and takes you back to a clean working directory. It copies your local modifications away.

git stash list


To list the stashed changes away.

git stash apply


To apply the stashed changes.

git stash

To stash the changes to some directory. Equivalent to git stash save


Git Blaming :

This is one of most useful, least known command.
This basically lists what revision or author modified each line of code.

git blame 

Lists a detailed list specifying what revision and author modified each line of code in the file name.


Git Bisecting :

Uses binary search, to find a change that introduced a bug.
Extremely helpful in tracking down the change that had lead to a bug.

git bisect


Has a lot of sub commands and options.
Check the complete explanation here


Git Rebasing :

Forward-port local commits to the updated upstream head.
More can be found here.

That's all for now.
Keep Hacking!!!

For any Doubts/ Clarifications/Feedback write to me @
or Connect me on Twitter @rBharshetty


Thursday, November 24, 2011

OSI 2011




I attended the Open Source India conference 2011 held here in Bangalore at Nimhans Convention centre from 20-22 Nov with Smit shah and Shiva Shankar

          Things I learnt at the conference are :

  1. Cross Browser Application Development by Microsoft : This talk was all about developing cross browser web applications. He introduced the concept of feature detection .He even walked us through an Open source Javascript Library Modernizr used to bring the HTML5 and CSS3 features to the older browsers. By incorporating the Modernizr libraries while designing web applications one can parse the HTML5 and CSS3 rich websites even in older browsers (IE6,7,8).He gave an introduction to Polyfills and shims. Polyfills and shims are basically used to introduce new standards in older browsers . For more info : http://www.blogorama.nerdworks.in
  2. Vmware Cloud Foundry by VMware : A new open source Platform as a service by VMware is Cloud Foundry. In this talk we were introduced with various aspects of Developing applications with various frameworks (Specially Spring) and deploying it on to the Cloud foundry. We were even introduced with the concept of Micro cloud ( cloud environment simulation in USB stick ).You can create instances and actually simulate the complete Cloud environment in your Local system before deploying your web applcation on to cloud foundry.
  3. Defending Front-end by Yahoo!: This talk was all about securing your web applications against various types of attacks on the web.He talked about various types of attacks such as SQL Injection , Cross Side Scripting Attacks, Session Hijacking and various ways to protect your web application against such attacks.He introduced us to the concept of Defensive coding and also Context Sensitive auto sanitization.
  4. Introduction to Programmable Infrastructure by Janakiramm from Amazon :This was the best technical talk ever. We were introduced to the Amazon EC2 service .He introduced to us some of the concepts such as Elastic Block storage and Elastic IP.He stressed on the power of programming integrated with Amazon web service. He programmed in PHP to configure EC2 service,creating instances , assigning a block storage and assigning elastic IP's .
  5. PHP Web applications on Windows Azure by Praveen Srivastava of MIcrosoft : In this talk he walked us through various methods of deploying your web applications on Windows Azure (Platform as a service by Microsoft).He also introduced App fabric , web and worker roles etc.
Overall it was a fun experience. :)


Pictures of the Conference :