Thursday, October 8, 2015

New to Git

This is how I understand Git

Git is used to store files, track history, share files, collaborate work.

How Git works?
Git is like a key value data store. Git stores files and folders as objects.

The objects are named using they SHA-1 hash - 40 character checksum value of the content. The objects are stored in .git/objects folder. The object is placed in folder with name as the first two characters and file name as the remaining 38 characters. The object contains header (type & size) and body.

There are 3 types of objects
1. Blob - File
Blob contains the content of the file

2. Tree - Folder
Tree contains reference to other trees and/or blobs

3. Commit - Snapshot of all the folders and files at some point in time. The object contains the info about the root tree (top most tree)
  • tree
  • parent (at least one parent, first commit has no parent, merge commit has two parents)
  • author
  • committer

You may not like to remember the 40 char SHA-1. So Git provides a mechanism to point to those commits. The HEAD is the reference which points to the current commit and moves along with you. You can think of references as labels to commit or other references. Branch is another type of reference head. By default, when you create a git folder (command: git init), you will be on master branch. Before you commit any file/folder, the master reference will not be created. When you create a branch BRANCHNAME, a new reference (.git/refs/heads/BRANCHNAME) is created with content pointing to the current commit. The HEAD usually points to a branch which in turn points to a commit. But some times HEAD can point directly to a commit (detached head). When HEAD is pointing to a reference head (branch), any new commits will make the branch reference point to the new commit. This cause the HEAD also point to the new commit due to transitivity. But in detached HEAD mode, when a commit is made, the HEAD points to the new commit and the branch is not updated. Now, if you want to bookmark a commit for future reference, you need to store the SHA-1 of that commit. This is tedious. Git comes to your rescue. It provides tags which are also references which are immutable. Once you tag a commit with a name, that name can be used to reference the commit any time in the future. The tag will always point to that commit. It cannot be modified.

More on Git coming soon.


Saturday, October 3, 2015

My Stock Preference

10/2/2015: Buy BABA (63.20), GPRO (30.44), WMT (64.98)

Tuesday, September 15, 2015

EB2 Priority Date - Cut off dates

The priority Date cut off date for Employment based EB2 category for Indians and Chinese.
january febrary march april may june july august september october november december visa green card greencard gc employment

EB2 Priority Date Cut-off Dates
Month/Year India
Final Action
Final Action
Oct, 2015
(Revised on 
Sep 25th)

Sep, 201501JAN0601JAN06
Aug, 201501OCT0815DEC13
Jul, 201501OCT0801OCT13
Jun, 201501OCT0801JUN13
May, 201515APR0801JUN12
Apr, 201501SEP0701APR11
Mar, 201501JAN0701SEP10
Feb, 201501SEP0515MAR10
Jan, 201515FEB0501FEB10
Dec, 201415FEB0501JAN10
Nov, 201415FEB0508DEC09
Oct, 201401MAY0915NOV09
Sep, 201401MAY0908OCT09
Aug, 201422JAN0908OCT09
Jul, 201401SEP0801JUL09
Jun, 201415NOV0422MAY09
May, 201415NOV0415APR09
Apr, 201415NOV0408MAR09
Mar, 201415NOV0415FEB09
Feb, 201415NOV0408NOV09
Jan, 201415NOV0408NOV08
Dec, 201315NOV0408NOV08
Nov, 201315JUN0808OCT08
Oct, 201315JUN0815SEP08
Sep, 201315JUN0808AUG08
Aug, 201301JAN0808AUG08
Jul, 201301SEP0408AUG08
Jun, 201301SEP0415JUL08
May, 201301SEP0415MAY08
Apr, 201301SEP0401APR08
Mar, 201301SEP0415FEB08
Feb, 201301SEP0415JAN08
Jan, 201301SEP0408DEC07
Dec, 201201SEP0422OCT07
Nov, 201201SEP0401SEP07
Oct, 201201SEP0415JUL07
Sep, 2012UnavailableUnavailable
Aug, 2012UnavailableUnavailable
Jul, 2012UnavailableUnavailable
Jun, 2012UnavailableUnavailable
May, 201215AUG0715AUG07
Apr, 201201MAY1001MAY10
Mar, 201201MAY1001MAY10
Feb, 201201JAN1001JAN10
Jan, 201201JAN0901JAN09
Dec, 201115MAR0815MAR08
Nov, 201101NOV0701NOV07
Oct, 201115JUL0715JUL07
Sep, 201115APR0715APR07
Aug, 201115APR0715APR07
Jul, 201108MAR0708MAR07
Jun, 201115OCT0615OCT06
May, 201101JUL0601AUG06
Apr, 201108MAY0622JUL06
Mar, 201108MAY0608JUL06
Feb, 201108MAY0601JUL06
Jan, 201108MAY0622JUN06
Dec, 201008MAY06
Nov, 201008MAY06
Oct, 201008MAY06
Sep, 201008MAY06
Aug, 201001MAR06
Jul, 201001OCT05
Jun, 201001FEB05
May, 201001FEB05
Apr, 201001FEB05
Mar, 201001FEB05
Feb, 201022JAN05
Jan, 201022JAN05
Dec, 200922JAN05
Nov, 200922JAN05
Oct, 200922JAN05
Sep, 200908JAN05
Aug, 200901OCT03
Jul, 200901JAN00
Jun, 200901JAN00
May, 200915FEB04
Apr, 200915FEB04
Mar, 200915FEB04
Feb, 200901JAN04
Jan, 200901JUL03
Dec, 200801JUN03
Nov, 200801JUN03
Oct, 200801APR03
Sep, 200801AUG06
Aug, 200801JUN06
Jul, 200801APR04
Jun, 200801APR04
May, 200801JAN04
Apr, 200801DEC03
Mar, 2008Unavailable
Feb, 2008Unavailable
Jan, 200801JAN00
Dec, 200701JAN02
Nov, 200701APR04
Oct, 200701APR04
Sep, 200701APR04
Aug, 2007Unavailable
Jul, 2007Current
Jul, 2007Current
Jun, 200701APR04
May, 200708JAN03
Apr, 200708JAN03
Mar, 200708JAN03
Feb, 200708JAN03
Jan, 200708JAN03
Dec, 200608JAN03
Nov, 200601JAN03
Oct, 200615JUN02
Sep, 2006Unavailable
Aug, 2006Unavailable
Jul, 200601JAN03 
Jun, 200601JAN03 
May, 200601JAN03
Apr, 200601JUL02
Mar, 200601JAN02
Feb, 200601AUG01
Jan, 200601JAN01
Dec, 200501JUL00
Nov, 200501NOV99
Oct, 200501NOV99
Sep, 2005Current
Aug, 2005Current
Jul, 2005Current
Jun, 2005Current
May, 2005Current
Apr, 2005Current
Mar, 2005Current
Feb, 2005Current
Jan, 2005Current
Dec, 2004Current
Nov, 2004Current
Oct, 2004Current
Sep, 2004Current
Aug, 2004Current
Jul, 2004Current
Jun, 2004Current
May, 2004Current
Apr, 2004Current
Mar, 2004Current
Feb, 2004Current
Jan, 2004Current
Dec, 2003Current
Nov, 2003Current
Oct, 2003Current
Sep, 2003Current
Aug, 2003Current
Jul, 2003Current
Jul, 2003Current

For accurate information check here.

Monday, June 15, 2015

Cash back deals

MrRebates CashBack

Do you want to get extra cash back for your online shopping. Yes, in addition to your credit card points/rewards/cash back? Yes, you can. Simple login to and go to your online shopping site from there. You then do your regular shopping. Your purchase will earn cash back on MrRebates which will be reflected after few days. It will be in pending status for 90 days. You will be able to cash it as a check mailed to your address once it reaches above $10. Sign up now and get $5 bonus for just signing up. The cash back ranges from 1% to 30%. Some times even more. You can select from more than 2000 stores to shop. Don't miss this great opportunity for getting more money back for the items you usually shop for.

Sign up now

Some stores with cash back (subject to change)

BestBuy - 1% cashback

Coach - 5% cashback

Dell Computer - 6% cashback

Forever 21 - 3% cash back

G by Guess - 5% cashback

Groupon - 6% cashback - 5% cash back - 6% cashback

JCPenny - 6% cashback

KateSpade - 5% cashback

Kohl's - 3% cashback

LivingSocial - 8% cashback

Macy's - 5% cashback

Nordstrom Rack - 3% cashback - 3% cashback

Sears - 3% cashback

Staples - 5% cashback

The North Face - 8% cashback

Walmart - 2% cashback

Walgreens - 5% cashback