2’s complement

Two’s complement is the way every computer I know of chooses to represent integers. To get the two’s complement negative notation of an integer, you write out the number in binary. You then invert the digits and add one to the result. Suppose we’re working with 8 bit quantities (for simplicity’s sake) and suppose we want to find how -28 would be expressed in two’s complement notation. First we write out 28 in binary form.
Read more →

Github Notes

Notes Four areas where git stores information - stash —–> working area —–> index —-> repository For every command, understand how it moves information between these areas, how does the repository change because of this Git repository - inside .git, mostly importantly .git/objects Kinds of objects - blob(files), tree(folders), commit(every git commit). All objects are immutable. Objects are linked. Every commit is a snapshot of the working area at a point in time.
Read more →

Intellij Shortcuts

Read more →

Iterm Shortcuts

Tabs and Windows Function Shortcut New Tab ⌘ + T Close Tab or Window ⌘ + W (same as many mac apps) Go to Tab ⌘ + Number Key (ie: ⌘2 is 2nd tab) Go to Split Pane by Direction ⌘ + Option + Arrow Key Splitting | Split Window Vertically (same profile) | ⌘ + D Split Window Horizontally (same profile) | ⌘ + Shift + D (mnemonic: shift is a wide horizontal key)
Read more →

Unicode

In the (not too) early days, all that existed was ASCII. This was okay, as all that would ever be needed were a few control characters, punctuation, numbers and letters like the ones in this sentence. Unfortunately, today’s strange world of global intercommunication and social media was not foreseen, and it is not too unusual to see English, العربية, 汉语, עִבְרִית, ελληνικά, and ភាសាខ្មែរ in the same document (I hope I didn’t break any old browsers).
Read more →