TL;DR: A totally biased and incomplete selection of tools, services, and packages that I am using in day-to-day operations to boost efficiency and free up time for the things that really matter. List is expanding over time. Use at your own risk - happy to answer questions.

One of the biggest struggles that I have faced is to keep all the auxiliary tasks that rain down on one, often offering little value add, at bay. Good tools and hacks can make one’s life much easier and can lead to significant speedups and time savings. I purposefully want to take a utilitarian stance here and do not want to engage in any philosophical discussions: the goal is to operationalize and execute. This list will be extended over time and, yes, there are many setups that can work but:

These are my tools. There are many tools like these, but these ones are mine. My tools are my best friends. They are my life. I must master my tools as I must master my life. I will learn their weaknesses, their strength, their shortcuts, their add-ons, their packages, and their configurations. I will keep my tools up-to-date and ready, even as I am up-to-date and ready.

Software

  • Atom: Multi-purpose, highly-extensible text editor.
    Learning curve: ⭐️⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 1

  • Docker: Deploy code in a self-contained mini-virtual machine.
    Learning curve: ⭐️⭐️⭐️⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 1

  • Git: Decentralized version control for coding, latex documents, and much more.
    Learning curve: ⭐️⭐️⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 4

  • Jekyll: Static website and blog generator.
    Learning curve: ⭐️⭐️⭐️⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 3

  • Jupyter: Interactive python computing.
    Learning curve: ⭐️⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 2

  • Markdown: Versatile plain text format that can be converted into almost anything.
    Learning curve: ⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 3

  • Pandoc: Universal document converter. Great together with Markdown.
    Learning curve: ⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 3

  • PyCharm: Extremely powerful integrated development environment (IDE) for python.
    Learning curve: ⭐️⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 2

  • SmartGit: Great git gui for mac os x and windows.
    Learning curve: ⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 4

  • Sourcetree: Great git gui for mac os x and windows.
    Learning curve: ⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 4

Services

  • Trello: Manage lists (e.g., todo lists) online, across various platforms with various plugins.
    Learning curve: ⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 1

Python Libraries and Distributions

  • Anaconda: Python distribution geared towards scientific computing and data science applications.
    Learning curve: ⭐️⭐️ Usefulness: ⭐️⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 2

  • TQDM: progress bar with timing and ETAs for loops/enumerators in python
    Learning curve: ⭐️ Usefulness: ⭐️⭐️⭐️⭐️⭐️ Toolchain Tuesday No. 1