Tier 3
How I Discovered Rogue Processes Running on our Build Agents
In the process of digging around investigating a performance issue with our internal build agents, I discovered rogue fluxbox processes taking 100% CPU on a large number of our build agents, here’s a write up of how I found them. On a particular host you can get a vague idea of how busy a host […]
3 Reasons We Love Custom Revision Builds
About once a day, I wish I could go back and ask a question differently or pursue an opportunity that has passed me by. Oh, to hop in a DeLorian and try the deli’s special of the day instead of ordering my usual ol’ turkey ruben! It was in that spirit that Bamboo satisfied a popular […]
How to build a company glossary with Confluence: pt. 1
This is a guest blog by Charles Hall from OpenBet, a specialist software company that provides gambling and gaming solutions. At the start of 2012 I joined OpenBet. OpenBet had been undergoing significant growth and realized that their approach to knowledge management needed to change accordingly. The Twiki software had served as the […]
Covariance and Contravariance in Scala
I spent some time trying to figure out co- and contra-variance in Scala, and it turns out to be both interesting enough to be worth blogging about, and subtle enough that doing so will test my understanding! So, you’ve probably seen classes in Scala that look a bit like this: [cc escaped=”true” lang=’scala’ ] sealed […]
From SVN to Git: how Atlassian made the switch without sacrificing active development
This post was featured in Dr. Dobb’s as part of a series focusing on enterprise teams making the switch to Git. At Atlassian, we have been extremely excited about DVCS for a number of years. We have invested heavily in DVCS. We acquired Bitbucket – a cloud DVCS repository host. We developed Stash – a […]
Card filter updates, cards page sorting, checklist copy, and more
Phew. Superstorm Sandy really did a number on Fog Creek. Our servers and offices are located in downtown Manhattan which experienced major flooding and power outages after the storm. We quickly moved Trello out of the data center and into “the cloud”, but we kept our other services running by hauling diesel fuel up 17 flights of stairs to power the backup generators. The whole experience is chronicled in the most recent Stack Exchange podcast. It was wild. We are different people now.
Building Inline Comments for Pull Requests and Commits
At Bitbucket (and throughout Atlassian) we are constantly dogfooding our own products. This helps us flesh out requirements and find bugs. So, naturally, we host the Bitbucket code in Bitbucket as well. We use pull requests to review team members’ code before merging it in and deploying. And, like many of you, we have been […]
Organizing your internship search using Trello
Hi, Real quick, before you run out the door to make happy hour – followed by 3am pizza fun times – do you have a summer internship yet? No? Don’t worry, recruiting season only just began! But wouldn’t it be nice to have one in the bag before the New Year? You could celebrate by wearing your sweatpants to every class,* not just to cardio kickboxing. I know you’re busy. Team projects, forking and merging, 25 cent wing specials, dancing Gangnam style, etc. Add “find an internship” to the list and you just might start to feel overwhelmed! I’d like to make a gentle suggestion: why not use Trello to become more organized in your search for an internship? Some of you already know Trello. You’re using it for your group projects or for planning your school’s homecoming weekend or what-have-you. But others might not have heard of it yet (gasp!). Trello is a free and extremely easy way to organize, well, anything. I’ve created two Trello boards: “Getting Ready”, which you’ll use to start your search, and “Internship Application Process”, so you can keep track of applications. You should make a copy for yourself. Getting Ready This is a simple to-do list: what you need to do, what you are currently doing, and what you have done. You should work on your resume, research companies, talk with your professors and fellow classmates. After those conversations, add comments summarizing their feedback. Make sure to visit your career center, attend campus internship fairs and company visits, and note all application deadlines. You know this already, but you’ll also need to work on a unique cover letter for each internship where you plan to apply. You can even sync up Google Documents you’ve used for notes. Once you’ve completed these items and moved the cards to your “Done” list, it’s time to actually start applying. Check out the “Getting Ready” board. Internship Application Process The lists above follow a standard application process: “Applying To”, “Submitted Resume and Cover Letter”, “Phone Interview”, “In Person Interview”, “Offer Extended”, “Rejected”, and “I’m Interning At”! Each card is a company. On every card you can include the resume and cover letter you used for that particular application. Attach each cover letter to the card for easy future access. Just drag the resume onto the card to attach it. You can make due dates for your interview schedules and reminders to ping a particular company. After an interview, include notes about whom you met and your feelings about the interview/company. You can also keep track of any tough questions you were asked and make notes about how you felt you did. Trello is also a good place to include any interesting facts you found that may impact your decision or interest in the opportunity. Using Trello, you can see at a glance where you are in the process of each application. Using Trello’s iPhone and Android apps, you have access to all your information wherever you are – especially handy as you shuffle between interviews and struggle to recall whom you’ve already met (their name, title, etc.) or some interesting facts that help you engage the next person you meet. Check out the “Internship Application Process” board. Oh, and if you read this and happen to be looking for a summer internship? Fog Creek is now accepting applications for our Summer 2013 internship. Apply today! * Just me? Man, I loved wearing sweat pants to class!
So You Want to Run Tests in Parallel… now what??
Lemme start by saying two things to regular readers: 1) “Thanks for tuning in and dropping lots of thoughtful comments!” and 2) “You’ve probably noticed me getting all up in your area codes about fast feedback lately, what with the artifact sharing and inner/outer loops n’ all.” Yeah, it’s been a bit of an obsession ever since the Agile2012 […]
3 reasons most meetings are pointless
Between pointless meetings and email it’s exceedingly difficult to get work done while you’re actually at work. Time is scarce when your calendar looks like a game of Tetris, but you’d at least hope that all the time spent in meetings is put to good use. Unfortunately, that’s just not the case, and the fact of the […]
3 reasons email hurts your productivity
One of the turning points for communication in the workplace was the invention of email. Historically it’s been the easiest way to make contact in any business relationship – short, pointed conversations with the teammates you work closest with, or quick messages to people you’re communicating with for the very first time. You could say it […]
All the ways to use Google drive with Trello
You already love Google Docs, the online productivity suite that lets you create documents, spreadsheets, and presentations and easily share them with others. Google Drive is the new home for Google Docs, but lets you store all your files — documents, photos, videos, music… anything — and gives you access to them anywhere.
Smart branching with SourceTree and Git-flow
Note: for brevity this article refers to Git and git-flow, but SourceTree supports exactly the same concepts in Mercurial via Hg Flow too. In early 2010, Vincent Driessen wrote an article called “A successful Git branching model” which recommended an approach called git-flow to use git branches in your development cycle. The idea was to standardise branching and merging […]
Super search
Search just got so good. There are a few new updates in addition to being faster.
Deployment Keys Now Available on Bitbucket
We’ve received a lot of requests for this feature, and our recent Innovation Week has given us the time to follow through on this request. We’re pleased to introduce Deployment Keys for Bitbucket. Deployment keys allow users to clone/pull source from a repository over SSH using Git and Hg without having to use up one […]
