It’s hard to remember a time before distributed version control systems became the norm. When Git, bzr, and hg started being used there was a culture shock. Where does the central repository live? Who can commit, and to where? How to I merge several developers’ work together into one repo? Over time Git proved itself to be the clear front-runner, and most Open Source projects either use Git, or recognize the reasons for why they’re not using Git. But for those not yet versed in the ins-and-outs of Git, learning how Git works and how it differs from version control systems like Subversion and CVS can be challenging. Version Control with Git, Second Edition comfortably brings readers from Git newbies into Git masters over the course of the book.

The first edition of Version Control with Git was an excellent book for learning the more advanced topics of Git, but the reference nature of the first edition was less useful for those just learning Git. The second edition builds on the foundations of the first book and extends it to be more accessible to beginners. Each concept starts off with an overview of the basic, and then gradually sprinkles on the more advanced topics until the reader can grasp the concept. It has quickly become my go-to book for any of my Git questions, and has neatly compressed my recommendations for beginner books into one handy reference book.

Version Control with Git, Second Edition splits itself into two sections. The first part covers all of the operations pertaining to a single local repository. The latter parts delve into the more powerful parts of Git, and how to use it with multiple repositories. There is also a chapter handling repositories using Github. The book is very clear, easy to read, and provides ample workable examples throughout the chapters. Unlike some books that try to keep a project throughout the book, Version Control with Github begins each chapter with fresh examples, which allows each chapter to be worked independently of the rest of the book.

I found Version Control with Git, Second Edition a welcome refresh of a book that I already regarded highly. When folks would ask me which book to use to learn Git, I’d recommend they read one of the other introductory books, then refer to this book as needed. With the second edition, I can now recommend this book to anyone looking for how to get started and master Git.

(Note: I received this book from O’Reilly to review, but the first edition was awesome enough that I would have purchased the second edition sight-unseen).

Creative Commons Attribution 3.0 Unported This work is licensed under a Creative Commons Attribution 3.0 Unported.

JoDee and I are making our way through Babylon 5 for the first time. Well, I’m watching it, but JoDee is falling asleep through most of it. But what is really hard to manage is not getting spoilers for the show. Look up an actor on the net, and their entire character story and back story are laid out as plain as day. Makes me wonder about newer shows like House of Cards on Netflix where the entire show is released at once. Makesit difficult when someone has an advantage of seeing it before you had a chance.

Not complaining about “hey, spoilers” for a show that has been out for over ten years; just finding I can’t do my normal show research beforehand.

Tonight in “I do stupid things so you don’t have to”:

1) Do NOT try to pry a hard drive platter from a laptop drive.
It will shatter.
2) Hoover vacuum cleaners are powerful enough to suck up screwdrivers.

This has been “I do stupid things so you don’t have to”

Creative Commons Attribution 3.0 Unported This work is licensed under a Creative Commons Attribution 3.0 Unported.

Apparently there is now a WordPress app for Android. I wonder how well it works.

image

We shall see.

Picture a small restaurant in an expensive part of town. Out front on the door, a linen piece of paper with exquisite calligraphy reads “Reservations required. Please call ahead”. On the inside are two tables with four chairs each, with the finest tablecloths available. The staff is impeccably dressed, and the floor is well carpeted without the hint of crumb or vacuum lines. The decorations are spartan, but elegant. There is a dress code that is strictly enforced: black tie dress required. No exceptions. Once everyone is seated for the evening, individual menus are handed out. Entrées include “Lune au-dessus mon jambon”, “Grand Chelem”, “Côte de bœuf et de poulet grésillant poêleand” and “Deux oeufs brouillés avec pommes de terre rissolées et jambon frit”. The entrees are delicious, and plated exquisitely.

The name of this exquisite place? Le Faux Denny.

Creative Commons Attribution 3.0 Unported This work is licensed under a Creative Commons Attribution 3.0 Unported.

Running Spinrite on my dad’s machine. His Ubuntu 12.04 upgrade (from 10.04) went a little pear-shaped, so I was going to see if I could reinstall it on another drive, while at the same time turning his XP machine instance into a VirtualBox image. As luck would have it, there’s also a bad sector on the drive.

When it comes to Windows, nothing is ever easy in my world.

Now Dad is purchasing a copy of Windows 7 that I’m hoping to run on the new install of Ubuntu 12.04. But for now am trying to recover the data off of the old drive.

Yay.

Creative Commons Attribution 3.0 Unported This work is licensed under a Creative Commons Attribution 3.0 Unported.

I’ve decided to fully support the new RIAA-sponsored and certified CC license, the CC-BY-NC-NS (or “No Share” license). This license allows folks to attribute the artist, use non-commercially, but adds a special “no share” clause which allows people to keep music to themselves. It’ll save me a lot of time in creating new Open Metalcast episodes, because the CC-BY-NC-NS music won’t need to actually be a part of the episode at all. Download times will also be much improved as I add CC-BY-NC-NS music to the show. I applaud the RIAA for adopting this new CC license.

I also look forward to their forthcoming RIAA licenses, the CC-BY-NC-NL (the somewhat controversial “No Listen” license) as well as the “No Talking”, “No Running”, and “No you don’t need that, put that down” licenses.

I know this is April 1st, but I just felt I had to, um, share this with you as soon as possible. Y’know, being all human nature and all. :)

I only want your complete loyalty and a can of sardines; I already have your unconditional surrender.

I only want your complete loyalty and a can of sardines; I already have your unconditional surrender.

I’d like to apologize in advance for the eventual destruction of humanity by our feline friends.

It seems we are unwittingly training the “Over Cat” (or Über Kätze *). Over the past few days Pixel has learned how to ferret through shoeboxes and pull out valued tissue paper; tissue paper that she craves. But we’re not talking about just lifting the lid. Oh no, she moves the boxes out from under the bed and then proceeds to remove their kitten-crack cargo. Also she has learned to use her paws as a prehensile scoop in order to grab “Toasted Oats” cereal remnants from the sink.

It can only be a matter of time until she can no longer be confined to these mere four walls, and will rise up from her meager birth to become the ruler of all.

I can only hope she is merciful.

All hail Das Über Kätze!

(* – Yes, I know the German word for Cat is Katze. Das Über Kätze will be working to change that to the more “metal” version soon).

Creative Commons Attribution 3.0 Unported This work is licensed under a Creative Commons Attribution 3.0 Unported.

There’s been a lot of discussion about the role of the Ubuntu Community in the past few hours. Lots of upset feelings bubbling around. I know my previous post came out of venting some of my frustrations.

I think the biggest problem we have in the Ubuntu Community is the difference between collaborator or contributor. Collaborators work together to make things happen. Contributors just add their own stuff to an existing work. The disconnect is some members of the community thought they were collaborators, and not merely contributors. And this latest round has shown that divide more clearly. The community is free to contribute, but collaboration will only happen when the hard landscape has been drawn out.

And that’s where the community and Canonical need to define their relationship: are we collaborating on the future of Ubuntu, or merely contributing to it.

I think the sooner we can come to terms with this question, the sooner we can start healing a lot of these hurt feelings.

Creative Commons Attribution 3.0 Unported This work is licensed under a Creative Commons Attribution 3.0 Unported.

Q: How do you know when the next Ubuntu is close to release?

A: When the Canonical vs. the community posts hit Planet Ubuntu.

I’ve joked in the past that every single release of Ubuntu has to have some tempest-in-a-teapot event occur that causes people to get upset over the current direction of Ubuntu.  And sure enough this latest release of Ubuntu and post-UDS discussions have delivered: Unity changing to QT, Ubuntu moving to rolling releases, Mir taking over the role of X server, cats sleeping with dogs, mass hysteria. It never fails; there’s always some design decision that comes out of some meeting that causes people to go irate in the community.

But it’s not that they are necessarily bad decisions. You could make a pretty good case for each of those decisions. They all have technical merit at some level.

No, what generally causes the most amount of anguish is that the community isn’t consulted.

There’s a phrase I’d like to think I’ve coined: “Just because you’re grinding the organ doesn’t mean I have to dance”. I think it’s pretty apropos of how Canonical seems to treat the community. They grind the organ, and the community puts on a show, and those who dance the best and brightest get the goodies and gratitude. And every decision that comes down changes the tune a little bit, and the good little community dances away.

Now, if it’s a particularly good tune, I don’t mind dancing. Hell, I might even involuntarily dance along to a great tune every now and again.

But when the expectation is that the community will dance no matter what, then we have a problem.

Greg, the most even-keeled person I’ve met, quit the community in a blog post today over similar reasons. He’s no longer willing to dance.

A lot of what was built up for Ubuntu was built on the idea of a community where ideas with merit were implemented. With the last few releases it feels more like  the community is just there to take direction from Canonical, and act accordingly. The organ grinds, and we dance away.

I’ve noticed in our own loco that there’s not a lot of joy in the dance. We dance because that’s what’s expected of us, not because we’re excited. We know that if we stop we no longer get CDs or stickers or recognition. Our Pavlovian response is to keep dancing because that is what the organ grinder expects of us.

We’re told to trust the organ grinders, yet we are not trusted to know the purpose of the grinding. That will come later. Keep dancing.

Always in motion. Keep dancing.

Do your Global Jams. Have Release Parties. Keep dancing.

Keep the community strong, fix bugs, help with documentation, package applications and keep them up to date. Keep dancing.

Keep dancing.

Should you wear out, there’s always more who will keep dancing. Keep dancing.

And so the community dances and dances away to the sounds of the organ grinder. Is it a good song? Who cares, just keep dancing away. That’s what the community is there for; keep dancing.

Just because you’re grinding the organ doesn’t mean I have to dance.

To quote the great bard “Men Without Hats”: We can dance if we want to.

Creative Commons Attribution 3.0 Unported This work is licensed under a Creative Commons Attribution 3.0 Unported.