Review of James Coglan’s Building Git
alanstorm.com
alanstorm.com
then a venture backed startup created a web application and support structure for the git program called GitHub (a web application and support structure that was mostly separate from the git project) and sold themselves to Microsoft for seven and a half billion dollars in stock.
GitHub didn’t get involved with VC until they had already completely captured the market. They were a bootstrapped, remote-first startup which later became venture-backed.
Decent review overall, excellent book, but when they created the “web application and support structure for the git program,” they were not yet venture-backed.
"Chapter 26 described the function of the Smalltalk virtual machine, which consists of an interpreter and an object memory. This chapter and the next three present a more formal specification of these two parts of the virtual machine. Most implementations of the virtual machine will be written in machine language or microcode. However, for specification purposes, these chapters will present an implementation of the virtual machine in Smalltalk itself. While this is a somewhat circular proposition, every attempt has been made to ensure that no details are hidden as a result."
p568 "Smalltalk-80: The Language and Its implementation" 1983
https://rmod-files.lille.inria.fr/FreeBooks/BlueBook/Blueboo...
"To check the accuracy and the clarity of the first book, we invited a number of groups outside of Xerox to build implementations of the Smalltalk-80 system. Those groups uncovered problems with the written description, and with the system itself, which we then corrected. … Paul McCullough of Tektronix suggested that all of the implementors submit papers describing their experiences to a software engineering journal or to collect papers from each group into a book form. This book, then, is the outcome of that suggestion."
iv Preface "Smalltalk-80, Bits of History, Words of Advice" 1983
https://rmod-files.lille.inria.fr/FreeBooks/BitsOfHistory/Bi...
Note: I think there should be a blurb somewhere on the sales page that it's written in Ruby, it was hard to figure that out.
(Discussed in https://news.ycombinator.com/item?id=32157759)
People over complicate it - In 5 years now as a full time SWE I barely ever use commands other than the basic ones - git pull, git commit, git add/remove, git push, git merge.
Occasionally annoying conflicts happen on merge that you can eyeball and fix fairly trivially.
I can't think of any other examples of something I use so much where I have this problem. Conversely I had to use the Docker and Heroku CLIs recently, having used neither for probably a year or so, and managed to remember/stumble my way through pretty easily without the need to look up help or external sources.
I routinely use checkout / switch, rebase, diff, cherry-pick, stash, revert, git status (on CLI). They are very useful. I don't know where "5 commands" meme comes from.