Optimising a pull request for peer review

Last week James wrote a post about the challenges with scaling code reviews in the Java/Backend group here at Brandwatch. In this post I'd like to talk about code reviews themselves, specifically why we do them and how to create a high-quality Pull Request (PR) that facilitates a speedy and successful review. Note: Part of my role here at Brandwatch is stewardship of the Frontend Group, so this post leans heavily on my learnings and experiences with our JavaScript repositories, although much of this post is representative of our Backend Group too. Why do we even PR anyway? Github's »

Scaling code review

Consider two tables. I'm not talking about database tables here; I'm talking about items of furniture. The first table is a flat-pack effort from a popular high-street retailer. The second is an artisan mahogany table with legs turned in a beautiful fluted Sheraton style. Which would you choose? Well, it's clear that both of the items serve the same purpose as a raised surface to place items, but it's obvious that the latter is better: it has better build quality, superior materials, and you'd wager that you would pass it down through many generations to come. The first one will »

Improving Query Builder Error Notifications (Part II)

On the main Brandwatch blog we talked about the importance of Queries and gave you some tips and tricks to help you master Query writing. Defining a good Query structure is without doubt important, but when it comes to typing and testing a Query definition users should be able to easily recognise possible errors and, most importantly, figure out how to quickly fix them. In my previous post, Improving Query Builder Error Notifications (Part I) we described how we improved the Query validation system by analysing the previous user experience and highlighting the points of failure (pain points). Then we »

Improving Query Builder Error Notifications (Part I)

Queries are without any doubt the starting point of social media monitoring. Furthermore, we have the widest range of Boolean operators of any platform on the market to allow our users to get the most refined, accurate and useful data possible – and recently we introduced new cool operators too. Yes, we love Queries, but we are aware that sometimes writing them can be tricky. For this reason we introduced syntax highlighting two years ago, and with the new Query builder we’re proud to announce a new Query validation system to make Query writing the best possible experience. This is »

Session-Based Testing at Brandwatch

Last year we implemented a Session Based Testing approach across all our development teams at Brandwatch. In this post I’ll explain what Session Based Testing (SBT) is, how we implement it, and when it’s suitable. Session Based Testing (SBT) is a form of exploratory testing used for rapid testing. The most simple definition of exploratory testing is “learning, test design and test execution at the same time”. This is the opposite of scripted testing, where you have predefined test procedures. Exploratory testing is sometimes confused with "ad hoc" testing. Ad hoc testing normally refers to a process of »