My Git Book Writing Blog

Acknowledgement: Boston PHP

One of the things I think about when I procrastinate is the acknowledgements section. Manning calls this section “the front matter.” You’ve certainly seen and read these paragraphs in which the author calls out to say Thanks to a bunch of people. It’ll be my turn to do this soon, and I thought it would be nice to highlight a few in this forum.

Acknowledging Boston PHP is a no-brainer. They helped me get a job (I had attended one of their job fairs), and they gave me a platform for my speaking. Boston PHP is one of the largest meetups on the Meetup website, thanks to Michael Bourque, who helped revive the group many years ago. Most PHP developers in Greater Boston have heard of this group.

Matt Murphy is the chief organizer of the Boston PHP Meetup today. He and one of his co-organizers, Bobby Cahill, kept me in mind as a speaker, and I have spoken for them twice: once at Northeast PHP (2012), and once at their regular meetup (2013).

Both were large presentations, and they were solidfying experiences for me. A majority of the ideas in the book come from the preparation for those sessions. PHP code is what I first learned Git on, and even though I don’t do much PHP today, I’ll always be grateful for my time in Boston PHP’s orbit.

Thanks for reading, everyone!


Revisions are an arduous part of writing for a publisher. It’s only now, deep into this project, that I can fully appreciate just how arduous.

This week I’ve been writing Chapter 12, which is hard enough (it’s the chapter on understanding Git remotes). But in between this new writing is me revising Chapters 08 and 09, chapters on branching and merging. Talk about context switching!

I’ll put it this way: writing new chapters is “more fun” than rewriting old chapters. Moving text, removing text, and changing text to fix older chapters is “not so fun.” Sort of like programming, really. It’s always more fun to start with a clean slate, than to wrestle with legacy code.

Maybe that’s how I should think of revisions: like “text support” or “text maintenance” (substitute tech for text). Revisions are tune ups. Ultimately, revisions make the book better, and that’s what I have to keep in mind.

Thank You for reading!

Illustrations by Google Drawings

There are over 100 illustrations so far in this book. Nearly all of them were created with Google Drawings, which you can access from Google Drive.

In my career, I’ve been supplied drawing programs on my various company-issued computers, and my favorites would probably be Microsoft Visio and MS PowerPoint’s drawing tools. However, these tools do have a cost, and Google Drawings is entirely free. Also, Google Drawings are drawn in the browser, so I could work on pictures on any computer.

(Google Drawings let you export the pictures as PNG files, as well as SVG files. SVG files can be edited locally, with perhaps more precision than on the browser, but I have not gone down this path.)

A few pictures and screenshots were edited using PowerPoint’s drawing tools. I spent a good portion of my computer career making PowerPoint slides, and I’ve made my peace with this demonic tool.

I haven’t been keeping track, but for this book I’ve spent roughly 40% of my time on the figures and illustrations. They are very much worth a thousand words!

Thanks for reading everyone. One note: There won’t be a Book Blog post next week, which is Labor Day weekend (in the US).

Page Count

One of the things that worried me initially about this project was the page count. In the contract, there’s a sentence specifying page count. It says “The book shall be 350 to 400 published pages in length and shall include approximately 100 illustrations.” Gulp!

I remember speaking with my neighbor, a researcher with a doctorate in chemistry. I asked him how long his dissertation was, and I was quite impressed when he said it was over 300 pages. “That’s a lot!” I thought.

Well, tonight, I surprised myself. Counting all the completed (though not fully reviewed) chapters, I have written 240 pages so far. I also counted the number of figures: 202.

In a related exercise, I counted the words I had written: just under 9500! That was disappointing, to some extent. Publishers of works of fiction measure their books by words, and 9500 words is only the halfway-point to a novella. (The novel “Ulysses”, by James Joyce, is 265,000 words, and the shortest Harry Potter book, “Philosopher’s Stone”, by J.K. Rowling, is 77,000 words).

For those of reading, Thank You!

The Machines I Write On

I work on this book across three machines: 1) a Dell XPS L502X laptop running Windows 7, 2) a MacBook Pro, 3) an IBM T60 running Xubuntu (a light-weight Ubuntu).

The Dell laptop is actually my daughter’s laptop. It’s her school and game machine. The MacBook is my current work laptop. I’m a newcomer to the Mac platform, and using it has been great fun. The IBM T60 is a machine I inherited from a few jobs ago. The T60 is the oldest of the lot: over 7 years old. Installing Ubuntu gave it a new lease on life.

All of these machines have Git installed. Having this array of machines lets me try out Git on multiple platforms. Git (and its native GUIs, gitk and git gui) work very well on all three platforms.

Only the Mac and the Dell have Microsoft Word, however. I primarily write on the Dell. (I also start all my new files on that machine.) My book files are synchronized using Git, of course, and that’s a topic for another BLOG post!

Thanks for reading, everyone!

Acknowledgement: Peter Loshin

One of the people who will appear in the acknowledgements section is Peter Loshin. Peter is a neighbor of mine. Back in 2011, we met at the Boston PHP Meetup, and began some conversations about high tech. He enjoyed learning technology, and it was fun showing him how I used Git and Drupal.

In June 2012, he asked me if I had ever considered writing a book about Git. It was an interesting question at the time. Peter is a published author of other technical books, so his query had a certain weight to it. Over the months I got more comfortable with the idea.

He suggested co-authoring a book on Git with me. We spent time talking about topics, discussing an outline, and who might serve as technical reviewers. Ultimately, though, we never started the project. A few months later, Manning came into the picture.

I remember asking him early on if I had enough expertise for writing a book, and he said he never let lack of experience prevent him from being an expert. His brother used to say that, he said. I smile when I think about that little bit of wisdom.

Thanks, Peter!

And Thanks to all of you for reading.


The contract that I signed with Manning has five deadlines for various stages of the book. These deadlines are: 1) the first chapter, 2) 1/3 of planned pages, 3) 2/3 of planned pages, 4) completed manuscript, and 5) final revised manuscript. This last deadline is January 12, 2015.

Working under a deadline is something I’m familiar with. I spent five years working as a technical consultant, and I often juggled deadlines across different projects. Going all the way back, I wrote for both high school and college publications, my first taste of non-school deadlines.

This book’s deadline is unique to my experience because the last date is so far out. In my day job, deadlines are on the order of days or weeks, not months. Working on this book reminds me of my mortgage: it’s something that just hangs over me.

Because the date is so far out, it can be hard to develop urgency. To combat this, as I wrote in Blog #03, I write for an hour or so practically every night. This the only way for me to keep on schedule. Clearly a 350 page book is not something you can leave to the last minute!

Thank You for reading!

Acknowledgement: Jenn and Mia

When I was having early discussions on the book, I entertained the idea of not telling my wife, Jenn, and my daughter, Mia, that I was writing a book. I thought I would just write this in the evening, and they would be none the wiser. Needless to say, that would have been a terrible mistake.

When I get home from my day-job, I almost always turn to the book. Am I writing? Am I revising? Am I writing this BLOG? My wife and daughter remind me, by their presence, and sometimes verbally, that there is a bigger picture. My wife has encouraged me and has been a gentle sounding board.

I’ve not needed to take time away from them to work on this book, but when I do dive into it, they understand. For that, I’m deeply grateful.

How Did I Get Started with Manning?

Around November 2013, I joined a mailing list for people seeking to be technical reviewers for Manning Publications. This was an opportunity to read some books that were still in development, and to provide feedback. The reviews editor sends out a list of books for review to this list, and we just raise our hands to volunteer.

In December 2013, I volunteered to review five chapters from the early manuscript of Git in Practice, by Mike McQuaid. The reviews editor, Ozren Harlovic, gave me access to that book, and provided a detailed questionnaire to organize the feedback. It’s a good process.

There was one question in that questionnaire that started it all for me: “What technology experts (perhaps lesser known) do you think would make good authors?” I wrote “Me!” Ozren noticed that (I didn’t think anybody would), and a few weeks later I was staring at a contract to write this book.

File this post under “be careful what you wish for!” Thank You everyone for reading.

After the Book

I subscribe to Bruce Schneier’s CRYPTO-GRAM newsletter. It’s a very interesting e-mail covering the world of security. He sends it out once a month, and in his October 2014 e-mail, he announced that he had just finished writing a book.

This new book clocks in at 80,000 words, and its title is “Data and Goliath: The Hidden Battles to Collect Your Data and Control Your World” (publisher: Norton). In his newsletter, he writes about what he’s going to do now that he’s done with the “all-consuming” task of writing. (His answer: write shorter pieces!)

I crave the ending of my own project. I want to get back to playing the guitar. I want to attend more meet-ups. Mostly, I want to dig into new technology. (I have Manning’s book on Solr and a book on Ruby internals by Pat Shaughnessy.) It’ll be fun to have discretionary time again. Until then, I’ll be writing.

Thank You for reading!