We developers are always testing, implementing new things and what allows us to do it all currently without wasting much time is how we setup our workflow. All the tools that I will list below have enabled me to deliver a better job in a reduced time compared to years ago.
Therefore, the purpose of this article is to show how my workflow works, the tools I use to be able to have a good and pleasant working environment to work in both Development and Design.
Here is the list of software that I use in my day-to-day.
Usually the first thing I install on the machine is Homebrew, which is an open-source package manager for Mac. With Homebrew I can easily install the main packages I use on a daily basis like: vim, wget, git, zsh, Curl, mongodb, node, tmux, among others.
I have tested several code editors and nowadays I practically use only the Sublime Text. However, as I like to be always testing new things, in some specific projects I try to use the Atom (which I also like) and VS Code. That way I can see what the best features in each editor are and compare them. All three editors can be used free of charge. Here are the reasons why I’ve chosen Sublime Text as my default code editor:
- It is extremely fast
- It has almost any kind of plugin you can imagine, regardless of which stack you use
If you want to see the current configuration of my Sublime Text, take a look at my project in Github: https://github.com/osnysantos/Sublime-Text-Preferences.
This is the kind of software that changed a lot the way I work once I started using it. I use it all the time on Mac, to navigate, edit, delete, install other software, test, etc. In order to boost even more iTerm I use a framework called Oh My Zsh that facilitates the configuration and customization of the Terminal, and Tmux that brings a lot of improvents as well.
I use it as a substitute for Spotlight and its great advantage is the possibility of installing workflows giving endless possibilities to a shortcut key. The most commonly used workflows are: Caffeinate, CDN, Currency Converter, TimeZones.
Other applications that I use in my day-to-day routine and that I find interesting to mention are:
- Twitter client: Tweetbot
- CloudApp: Easily takes screenshots with a shortcut key that already copies the URL of image to clipboard
- Bartender: Leaves the Mac menu bar clean by choosing which applications you want to hide.
- Sketch - Very light application I have been using for a long time to design interfaces
- Zeplin - Collaboration tool among designers and developers.
- Photoshop – (Not a preference, but generally what we receive is still a PSD)
- ImageOptim (Reduces image file sizes)
- Git (Client: SourceTree)
- Ruby (RVM: Manages Ruby Versions)
- Node (NVM: Manages Node Versions)
- Vim: Powerful code editor that personally I use for quick changes (usually when logged in a VPS)
- Postman: Allow us to test API’s sending and receiving data via HTTP requests
- Heroku Toolbelt: performs tasks and deploys in Heroku
- Navicat: Database management
- Transmit: FTP client. Yes, sometimes we still need to use it for some tasks.