New!Schedule Threads!Threads scheduling has arrived!Threads scheduling has arrived on Buffer! Find your community now.Threads scheduling has arrived on Buffer! Find your community and keep the conversation going.Learn more

Joe Birch

A collection of posts by Joe Birch

A collection of 32 posts by Joe Birch - Page 2

OverflowOct 13, 2017
Package-by-Feature in Modularised Android Projects

A while ago we published this article on how we were trying to tidy up the Android project for the Buffer for Android app: /2016/09/26/android-rethinking-package-structure/ . However, our project is now moving towards a modularised approach – so our package structure is changing (but also staying slightly the same). We wanted to keep the package-by-feature approach in place so we can continue to benefit from its advantages suc

OverflowAug 18, 2017
Exploring Test-Driven-Development with Android UI Tests

Header image source: Émile Perron on Unsplash Over the last year on the Android team at Buffer, we’ve talked a lot about cleaning up our project and increasing its stability. One of the factors here was the introduction

OverflowJun 14, 2017
Introducing Buffer for Android, v6.0

Over at Android on Buffer, we recently hit 1 Million downloads – so we’d like to take this opportunity to say a big thank you to all of our users for making this happen! This also came with great timing, as we’ve just launched a brand new version of our Android app (something we’ve been calling v6 internally for a short while) ? We made a bunch of changes to the app (both visually and behind the scenes) with the aim to make it easier to use, easier to maintain and also more stable for our users.

OverflowJan 16, 2017
Tracking our Android test coverage with Sonarqube

We recently shared about our transition from legacy code to clean architecture, where we’ve also begun to introduce testing to our project in the form of both Unit and Instrumentation tests. The introduction of these tests will help us to build a more stable product, boosting our confidence in the features that we ship. But why are we talking about coverage? Well, not only does this help us to measure how thoroughly tested our code is, but it’s also helping to act as a way to track our pro

OverflowDec 22, 2016
On the Journey from Legacy Code to Clean Architecture: Rebuilding the Buffer Android Composer

The composer is the heart of our app — it enables our users to craft social media updates and schedule them to post to the social networks at custom times. It’s been part of the Buffer Android app since the very beginning. And it had reached the point where we needed to rebuild what we had in place. So grab a cup of coffee (or your beverage of choice) and let us take you on a journey through our learnings of going from legacy code to clean architecture. ☕️ A brief history of Buffer on Android

OpenOct 18, 2016
9 Public Speaking Lessons I’ve Learned (So Far!)

Public speaking is a scary or uncomfortable idea for many people. Some people feel they don’t have anything valuable to share. Others feel it’s a lot of effort, don’t see the benefit in speaking publicly or are too anxious to do so. These are definitely all points that previously put me off speaking in public. If I rewind to just a few years ago, there’s no way I would have ever dreamed to speak in front of an audience. But as we’ve mentioned on the blog before in our exploration of stage frig

OverflowSep 26, 2016
How We Rethought our Complete Package Structure for Buffer on Android and the Awesome Effect It’s Had on Our Workflows

For the past five years, our Android project has maintained a similar package structure from when it was first created in 2012. There have been a few changes here and there, but the general structure has remained the same. When most applications are created, the class count is small. However, as the app grows and features get added, it can be easy for packages to become bloated, potentially to the point where it makes a workspace feel unorganized and difficult to navigate. This was starting to

OverflowAug 18, 2016
Introducing Android code style guidelines at Buffer

Whenever you’re working solo on a project, chances are you’re writing in ‘your’ style – which often makes it easy to make all your code look and feel the same (but not necessarily clean). And when there’s more than one team member contributing to a project, it can be difficult to ensure that code is kept both clean and readable. Chances are that everyone has their own way of doing something, even when it comes down to things such as the way variables are named or the ordering of methods within a