Sometimes it's easy for us to forget just how much software goes into the process of writing software. All day long, we interact with tools that are the result of thousands of hours of work from developers just like us. Above all, we expect these tools to cost little and work seamlessly.
Here at Tighten Co., we use some awesome software that helps us manage our projects, communicate with each other and with our clients, and make great software. (We also use some software that we're less-than-crazy about.) If you've ever wondered how we keep track of to-do items in our project sprints or how we manage to pair program with a 100% remote team, buckle in, because you're about to find out!
Text and Video Chat
If you follow any members of the Tighten team on Twitter or regularly read our blog, you've probably witnessed our corporate love affair with Slack. Whether we're catching up about our weekends, making fun of Donald Trump, or relaying a status update on a project to a client, Slack is the primary way we communicate with each other all day.
A special shoutout goes to the RightGif plugin; when mere words will not suffice, RightGif is always there to assist us with a handy animated image. Their front page even features a testimonial from our very own Dave Hicking:
Even though we're 100% remote at Tighten, we actually have established a very strong pair programming culture, especially on projects that have multiple developers. To accomplish this, we use Screenhero, an awesome collaboration tool owned by Slack. Screenhero lets you not only view your team member's screen but also interact with it using your mouse and keyboard. It has all the benefits of sitting at the same computer as another developer to pair, but with 100% more personal space.
(Interested in hearing more about why and how we pair program at Tighten? Check back in a few weeks for a post on that very subject!)
Every day at noon TT (Tighten Time), everyone at Tighten gathers for a standup meeting, affectionately dubbed "cat meetup" for the furry creatures who occasionally wander in front of the webcam and/or knock things off of shelves in the background. For a long time, Google Hangouts was our go-to software for this (along with most of our client meetings), and for a long time, Google Hangouts has been the bane of our existence. Almost daily, we have had issues with audio, video, permissions, and our laptops' fans running like jet propellers.
A few weeks ago, however, we decided to try something new:
Lately, we've started using Zoom for video chat, and so far, we've had a great experience and have managed to avoid most of the AV issues that plagued us with Hangouts. The only downside of their free plan is a limit of 40 minutes for group meetings, but then again, if a standup for a 9-person company goes longer than that, you're probably doing something wrong.
Project Management and Email
From sprint estimation to assigning project tasks to keeping track of our scheduled blog posts, we rely heavily on Trello to manage our day-to-day processes. If you're not familiar with Trello (what rock have you been living under?), it's a kanban board that lets you create cards and sort them into individual, customized columns. It's easy to use, it helps us remain agile, and best of all, it's free.
Recently, Dan and I attended The Basecamp Way to Work workshop in Chicago. We were exposed to an entirely different way to work remotely, and as Dan mentioned in his post, we're switching Karani for Fundraisers over to Basecamp to expriment with a more asynchronous style of communication. (Check back soon for a follow-up post if you're curious to see how it went!)
On Slack, our team has had several lengthy discussions about the best email app, especially after Dropbox shut down Mailbox earlier this year. While a lot of us use the default macOS email client for what little emailing we actually do (since most of our team and client communications happen on Slack), a few people are using Mailplane, an app that provides the web Gmail interface but makes it easier to keep track of multiple accounts, receive notifications, and compose new messages. At $24.95 for a license, it's not the cheapest software, but if you find yourself struggling with desktop email apps and looking for something that feels close to vanilla Gmail, it's worth checking out their free trial.
If you're at all familiar with the web development landscape, it probably comes as little surprise that most of the Tighten team uses Sublime Text for writing code. It's a fast, stable text editor that's endlessly customizable via a massive plugin ecosystem. If you're a developer, you've almost certainly tried it at one point or another, so I don't need to tell you anything else about it.
Best of all, Jeffrey Way has an awesome series at Laracasts showing you all the cool things PHPStorm can do.
[Editor's note: There is a contingent of one valiantly attempting to write all of his code in Vim, and that's me, Matt, the idiot who won't just give in and love the Sublime Text.]
Sure, the terminal that ships with OSX is adequate, but iTerm2 is that terminal on steroids. With features like split panes, a hotkey that summons an always-available terminal, autocomplete, and paste history, it's basically a must-have for any developer who uses a Mac.
This is another no-brainer app for OSX users. Sequel Pro is the easiest, cleanest way to interface with your MySQL databases that any of us at Tighten have found, and we all use it and love it. There are certainly alternatives out there, including fairly decent built-in functionality for PHPStorm, but Sequel Pro makes databases feel effortless. Best of all, it's free.
Here at Tighten, we use git on all of our projects, and for some more complex projects we use gitflow. While some of us prefer to just use the command line to manage commits, others love SourceTree, an app by Atlassian that helps visualize complicated git trees and diffs. If you find yourself struggling to understand git or becoming frustrated scrolling through long diffs in the terminal, it's worth checking out.
Those of us who have been in the workforce for at least a decade or so remember the massive stacks of HR paperwork we used to have to fill out after starting a new job. Bank info, tax info, benefits: filling it all out was a nightmare, and keeping track of it was even worse. We use Zenefits to manage those things at Tighten, along with vacation or sick time requests, and it couldn't be easier. The interface is clean, making even complicated subjects like health insurance benefits easy to grok.
As a consultancy that does a lot of client work, Tighten's developers and project managers have to keep track of the hours they spend working on their various projects. For this, we use an app called Harvest (along with an automatic weekly Slack reminder on Mondays at noon reminding us to submit our timesheets.) Harvest offers the option to either manually enter your hours worked (which is what the development team does at Tighten) or download their desktop app to manually start and stop a timer. They also offer various invoicing tools and expense tracking, making them a great option for freelancers as well.
While all developers face the risk of being too sedentary, remote workers lose the benefit of a commute to get them moving; when you work from home, it's all too easy to go an entire day without moving more than 20-30 feet! As such, several of us use the app Breaktime to remind us periodically throughout the day to get up and move around. Breaktime runs in your menu bar or your dock and schedules breaks for you, then darkens your screen to encourage you to get away from the computer a bit.
At heart, everyone at Tighten is a software nerd, and we love getting excited about new technologies. This isn't all we use, but these are a few standouts we wanted to share with you. We hope you learned something new!
Do you use something that's not on this list but think it should be? Let us know on Twitter.