Author: Michel Domenjoud

Methodology

How to fail at code reviews – S01E01

In the previous article, we introduced a general overview of the code review practice as well as two specific formats we use in our projects.

Nevertheless, successfully introducing a new practice is not an easy task. It’s a bit like setting sail for the first time: once in the water, the first meters are always chaotic. There are lots of waves, we wonder whether it was really a great idea. Wouldn’t it be wiser to go back ashore? However, after a bit of dedication, we finally get to the quieter open sea: we just had to hold onto it.

During our code reviews, we came across several pitfalls that were detrimental and that could jeopardize code reviewing in the team.

Let’s explore, through real-life use cases*, why the first code reviews will certainly be difficult and what are the essential fundamentals to carry out successful code reviews.

Read more

Methodology

Which format for your code review?

We mainly use two code review formats in our projects: collective review which is rather formal and peer review, which is lighter. Both have advantages and drawbacks: Let’s look into these formats together and see how to implement them within a team.

But first things first: what is a code review and what benefits can we expect?

In most areas involving writing, we cannot imagine that what is written is issued without proofreading. An article will always be proofread before publication (e.g. the one you are currently reading), either to check the substance – is the subject of the article well treated? – or the form – spelling, grammar, structure and text readability. Similarly, the code review practice consists in having one’s code read again in order to track as many defects as possible, be it on the content – does this code work, and correctly implement the required feature? – or the style – clarity, readability, standards compliance, etc.

What about you: how many lines of code have you ever deployed in production without proofreading?

Read more

Methodology

Software Craftsmanship: a culture to pass on

Software CraftsmanshipThe Manifesto for Software Craftsmanship is subheaded Raising the bar.

Indeed, we believe that this is the main issue at stake behind this movement’s motivations. To create products that rock, you need to rely on people who know how to do it, enjoy it, and always strive to do it better.

It’s not just about introducing a few practices. It’s a genuine culture of development aiming at changing the mentalities, the team operations and the company.

But you can’t decree a change of culture. So how can one introduce the values of Craftsmanship into one’s company so that they become a standard instead of an isolated case?

Read more

Archi & Techno

Graph databases: an overview

In a previous article, we introduced a few concepts related to graphs, and illustrated them with two examples using the Neo4j graph database.

For the previous years, many companies have been developing graph databases — as software vendors like Neo Technology (Neo4j), Objectivity (InfiniteGraph), Sparsity (dex*), or by building their own custom solution to integrate it into their applications, like LinkedIn or Twitter.
Thus it can be hard to grasp a global picture of this rich landscape in continuous evolution.
In this new article focused on graph databases, we will give you the elements that are necessary to understand how they fit into the ecosystem, compared to the other kinds of databases and to the other types of graph processing tools.
Specifically, we will try to answer an important question — when to use a graph database and when not use one. The answer is not that obvious.

Read more

Archi & Techno

Devoxx 2011, the main trends

One of the biggest Java conference in the world took place in Antwerpen, Belgium on last November. This year, Devoxx main themes were (in no particular order)

  • The future of Java
  • Alternative languages on the JVM
  • HTML5
  • JavaFX
  • Android
  • A bit of Cloud, NoSQL and high performance architecture

We also had a great announcement about a new conference coming in 2012: Devoxx France!

Obviously, OCTO was there. In this article we won’t cover the sessions in details. A lot of blogs already did it. We’ll however summarize this edition’s main trends and give our impressions.

Read more