Research involves many different tasks. To solve these tasks efficiently, quite a few tools besides pencil and paper are needed. As I go through many projects, I realize and give up many bad practices that keep me moving slow and embrace these tools that manage things in an organized and disciplined manner.
I group these tools into several categories as discussed below. And in each category, I recommend a tool or tool-chain based on my personal experience. Essentially, several factors are considered in choosing a tool or tool-chain, as listed below in the decreasing order of importance:
- execution time
- accessible from multiple devices and shareable with others
- tolerance to a slow internet connection, if applicable
Your use case may differ from mine. So before you decide upon a tool for one task, read about alternative tools and comparisons in detail on the Wikipedia pages. Above all, as my previous workmate Yusen Qin has put, if you have been annoyed by a tedious and repetitive task more than twice, go find a tool to automate the procedure.
Recommendation: git + gitkraken
There used to be many choices, e.g., visual sourcesafe in Windows, CVS, SVN, but the current trend is to use git. It comes with many client tools with graphical user interfaces, for instance, sourcetree by Bitbucket, gitkraken. As both are free, I have used both. Now I am sticking with gitkraken as I feel the words on its interface corresponds well to the git jargons. On this point is my primary complaint about sourcetree. Its Chinese version used many profound words for the git operations and gave me a hard time to learn. And sourcetree is not available in Linux yet.
At the beginning, I kept all the passwords on a notebook. Over time, these passwords were transferred to a csv file. You can imagine all sorts of sufferings with these methods. Later, I discovered the password management tools. Among them, 1Password and LastPass seem to be the popular ones. As LastPass comes with a free version and it works in Linux, I choose it for managing and syncing passwords. From what I read, there has been several security breaches for LastPass though.
Recommendation: Youdao (Chinese only)
It surprised me that Youdao is not on the Wikipedia’s list of notetaking software. There are many comparisons of EverNote, OneNote, Youdao, etc. I started to use Youdao 7 years ago when it just came to the market. Now it has 50 million users. Though I have never tried other notetaking tools, I feel Youdao meet my needs by and large. Web-based, it has a foolproof user interface and automatic syncs to the cloud. One downside is that it probably does not have an English version.
Especially if you are tired of downloading and copying pdf papers and books all over your devices.
My colleagues are paying EndNote for reference management. I understand it is one of the best for this task. Reference management is really necessary in Microsoft Word. It was tedious and tricky to use the innate reference manager tool in Word. But since I often compile references with bibtex and write in TeXstudio, it becomes less urgent to use a reference manager.
It turns out I misses a major point. I used to put copies of papers and books and review notes across computers and hard drives. As a result, I often have to download and review a paper many times. By then, I was using the free RefWorks for managing references. But it is web-based, it took so long to attach a document to a reference with a low-speed internet connection. Even worse, attachments have to be added one by one. This pain drives me to try Zotero. Though its interface is not as friendly as RefWorks, it won’t take long to get used to it. The most important part is that it can archive the downloaded papers in batches, keep unique copies, sync across devices, and grab references out of them intelligently.
Trello can run either as web-based or on a host computer. If both the web interface and and a local Trello instance are running, the two can sync automatically to each other. I personally like its simple and attractive interface and its plugin Elegantt which plots the Gantt chart.
Thanks to Thomas Whelan, I came to know and use Inkscape. If you have the exact coordinates of points and line segments from a experiment, you may go with Matlab + export_fig or Matplotlib in python to visualize the results. Other times, the thing you want to draw comes from your imagination without exact coordinates. It is easy to sketch it out with a pencil by hand. But how about draw it with a computer? This is where the graphics editors come in. I used to use the drawing toolbar in PowerPoint for composing a vector graph. And I found it was hard to draw curves and lines with color gradients. The advantage of Inkscape is that it is free and runnable in Linux.
Recommendation: Paint 3D
There are quite a few raster image editors. One of the most famous one is PhotoShop. It is powerful, comprehensive, and costly. Some of its operations with raster images, like png, can be achieved in Inkscape. But I found that many simple operations like cropping from a large image could be complex in Inkscape. I recently bumped into Paint 3D and I was attracted to it by its simple interface and magic select tool.
For comparing two pieces of text, I often use a web-based tool diffchecker. For comparing two files in Linux, the kdiff3 tool serves well. For comparing or merging multiple files in Linux, the Beyond Compare works miracles but it is not free. For comparing multiple files in Windows, WinMerge has been giving me the best experience so far.