Toolset
Show me your tools, and I will tell you who you are. Or so they say.
Software
Operating System
Mac and Windows (sorry Ubuntu, this wasn't working for me anymore).
Browser
Safari for non-development, Firefox Developer Edition and Chrome for anything code related.
Text Editor
For all my development on both Mac and Windows, I'm using Microsoft Visual Studio Code. I tested about a dozen various editors, and this one feels like the most polished and universal solutions for Marketing Automation Developers. It's blazing fast, powerful and extendable — great out-of-the-box, awesome once you configured for your own needs. I'm using it not only for standard coding (HTML, CSS, JavaScript, SSJS, AMPScript, MJML) but also for writing Markdown, working with JSON, manipulating CSV files and RegExing. As for now, I'm using other solutions only for SQL and Jupyter Notebooks.
A lot of VSCode powers comes from a fantastic extension repository, and some require a sincere recommendation (in alphabetical order):
- Color Highlight: Simple tools that add appropriate background to any colour code. Excellent for anything front-end.
- ESLint: If you write JavaScript, you use ESLint. Period.
- Image Preview: Another handy and straightforward solution. It shows miniatures of the image next to the import in the code.
- Live Server: There are many tools to see hot reloading version of the page you are coding. This one is the simplest.
- Material Theme: It's a beautiful looking theme.
- MJML and mjml-syntax: Must have extensions if you want to write mobile-first emails with MJML in VSCode.
- Path Intellisense: Autocompletes paths. Yay!
- Python: If you write Python, you use Python.
- Rainbow CSV: Shows columns in pure CSV. Happy magic.
- TabNine: If you ever dreamt about the code that writes itself, this is the extension you want. Creepy. Awesome. But creepy. Must have.
- Todo Tree: The best way to work with TODO logging in code.
- vscode-icons: Those are nice looking icons.
- Live Share: Pair programming in remote times.
- HTML End Tag Labels: Adds HTML tag details on closing tags to make it easier to find yourself in the nested jungle.
Finally, it is not an extension, but a must-have for me: Fira Code font. Check it out. You will love it.
If you are interested in my configuration, you can find dotfiles on the Github Repository.
Terminal
90% of the time I'm using the terminal integrated into VSCode. 10% of the time it is iTerm (on Mac) or Powershell (on Windows).
Windows setup with Powershell both as standalone and in the VSCode is quite out-of-the-box with just some useful aliases.
My Mac is a bit more customized. For starters, instead of bash, I'm using zsh with oh-my-zsh and Homebrew. I also have a lot of aliases to speed up my work (you can check them in Github Repo).
On both systems, I leverage Node.js for JavaScript related coding and Miniconda to stay sane in the jungle full of Pythons.
Diagrams
Lucidchart. I need visuals for mapping out architectures, processes and stories. Lucidchart makes it fast and easy.
API Client
Postman. It is simple, and it works.
Design
I'm not a graphic designer. I need something that is simple, fast and can output images for emails, landing pages and presentations. With such needs, there is nothing better than Sketch.
Productivity
Apart from the above main areas, I also love some smaller apps that make my life better (unfortunately, all but the last one are Mac only):
- Numi - the best calculator app you can have. By far.
- Better Touch Tool not only allows you to leverage gestures to their fullest but also takes care of windows snapping to the edges.
- Mailplane - if you use Gmail and have a Mac, this app is a must.
- PDF Expert is the best PDF app you can have.
- For tasks and notes, after testing multiple options, I stuck with Apple Notes and Reminders.
For Windows, there is one must-have power user tool: Microsoft PowerToys. Make your day-to-day Windows life better.