Barkeep – code review tool

Posted in evaluation, methodology, ruby by pedro | Saturday, December 29th, 2012 at 3:22 pm

Barkeep is very simply code review system.

Your first steps should be to watched video on the project page, next you can simple try barkeep demo page.

What amazed me was usage of vagrant. Vagrant is great tool you should have in your toolbox. Vagrant is tool to simplify environment setup. You can build your development setup, or project setup or whatever you need.

The Barkeep example is great. To run barkeep, we simply do following steps:

$ script/setup_vagrant.rb

and that’s it.  At http://localhost:8080/ we can access Barkeep and start using it. For me this is the way we should prepare our stuff.

Note: For Mac user you must have 64bit MySql, otherwise installation will fail.

  • bundle exec vagrant halt  will shut down the Vagrant
  • bundle exec vagrant destroy will destroy it.

Of course for production use you have to install it, but for playing Vagrant is enough.

The good thing about it is that Barkeep has REST API and nice and simple barkeep client.

Of course Barkeep is not only one code review tool. What is said is that “Comparing barkeep to other code review tools” page is a … bullshit.

Few facts:

  • Crucible has post review
  • Crucible and Gerrit  has notification schemas, even Crucible has streams – from my point of view it is great feature.
  • Crucible, and Gerrit has nice UI, and it is more we used to something.
  • and last but not least, Reitveld has small codebase, so you can hack it without any problems (I would prefer to hack Barkeep – Ruby), and for sure as Java Developer I can hack in both Gerrit and Crucible.

I don’t defend others as I don’t use them, but I think Barkeep guys are not fair.

Despite of that it is very good tool, so for sure you should give a try.

about me

My name is Sebastian Pietrowski. I've finished Warsaw University as Master degree. During my studies I started work for merlin.pl. The primary language I use is Java but I have also programmed in Python, Ruby and Scala. I worked as a technical solution architect at merlin.pl. infrastructure when we were moving from PL/SQL to J2EE. I engineering a great performance optimized solution that made the application 10 times faster than requirements and 85 times faster as original solution.

Currently, I am working as a Senior Expert at F.Hoffmann-La Roche to help define future roadmap in design and development of Enterprise software at Roche and Genentech and build adoption for new technologies. I'm continuously mentoring new developers, helping them understand how important test driven development is and empowering them to get better at their daily job. I'm involved in many activities which brings new technologies for better and faster development. You can find more details on my LinkedIn profile.

But don’t get me wrong, I am not your typical nerd. I'm a pleasant guy that you can drink a glass of wine with me and talk about a range of topics with. My leisure activities include playing basketball, soccer and listening to music. I try to be pragmatic while staying focused on application performance and tuning with success in my daily work.

My favorite quote from Yoda's and my life’s motto is: Do, or do not. There is no try.