In the Engineering Services team at Atlassian, we’re busily building out a microservice-based architecture for our applications. This is a massive change for us, and it is imperative that our changes are ’safe’, i.e. we prove as much as possible that we cannot inadvertently destroy data, and we can recover from any data issues that we do encounter. This led us to implement an event sourcing model for our entity store in Scala, where we store full history of changes to entities so that we can

Continue reading »

Join us for a hackathon at MesosCon

We're excited to partner with members of the Mesos community for a hackathon during MesosCon on Friday, August 22nd in Chicago. Join members of our engineering team to hack on Mesos and collaborate with other members of the community. We’ve identified two categories of hacks that we hope participants will focus on: Community Need: These are issues logged in the Mesos JIRA issue tracker that have received a large amount of activity (comments, votes, etc.), and address some of the larger

Continue reading »

I've been doing a bit of traveling lately on the second leg of the Getting Git Right tour. It's been a blast meeting so many devs from around the world. It's been particularly incredible to see how much git adoption has grown amongst attendees in the few months since we did the first leg of the tour. When we presented in July, almost all attendees raised their hand when we asked "Who's using git?". However, there is one low point during every evening that I've hosted: the moment after I ask the

Continue reading »

This is the second in our five-part series from guest blogger J. Paul Reed—build engineer, automation enthusiast, and host of The Ship Show podcast. Jez Humble, author of Continuous Delivery and one of its founding fathers, has an informal survey he likes to give to audiences. It starts with a simple question: "Raise your hand if you do continuous integration." A sea of hands always rise. Then he says "Put them down if all of the developers on your team don't check into the main code-line

Continue reading »

Interactive rebase in SourceTree

Over the last year we've introduced interactive rebase support in SourceTree on both Mac and Windows to help developers rewrite their commit history easier than ever. Often we've found this feature to be regarded as both mysterious and dangerous by many DVCS users, so we thought we'd help you learn what this feature does, how it can be a great asset in your workflow, and how to use it safely. What is "rebasing interactively?" In short, rebasing is a way of changing your commit history. You'll often

Continue reading »

I reviewed OSX 10.10 over the weekend, and observed a new trend emerging on the design battlefield. It’s blurry, translucent, and vibrant. It’s also incredibly expensive and difficult to render. In OSX 10.10, dragging a translucent window makes the panel flicker, go completely black, and breaks blur effects. Resizing a window is incredibly slow and choppy. Developers have their work cut out for them to achieve decent performance by the end of the beta. Eventually, they’ll get it right, and Apple will be hailed as revolutionary once again.

Continue reading »