This article presents a selection of open source software which the author, an engineering researcher, actually uses in his day-to-day work.
Engineering research demands a computation platform that is free from patents and it is not plagued by proprietary rules. It is all about innovation. Engineering complex systems and making significant contributions to any particular field of research is the key motive to any researcher. Budding researchers should build on existing research platforms without ambiguity. In this context, it is necessary to recognise the importance of open source software and GNU general public licence. The software tools I currently use in my research include Ubuntu−14.04−LTS, which is a Debian distribution built on OS Linux−3.19.0−61−generic kernel. The processor used is Intel N3540, which is a low wattage (TDP) processor with a decent clock frequency. The processor gives considerable battery backup and performance.
The other handy open source software tools are.
Linux kernel 0.01 was released by Linus Torvalds in 1991. He wrote it in C programming language with a GCC compiler. It had 10,239 lines of code then. Now, it has more than 2 billion lines of code. An estimated 3 billion Android phones with the Linux kernel were sold in 2014. Almost all electronic devices support this code. Supercomputers and servers are run on Linux. They are so stable that upgrades are possible without even shutting them down. In 2005, Linus Torvalds said, “Linux is evolution, not intelligent design.” Hence, this portable module will keep on upgrading into new variants and a feature-rich kernel, with the GNU general public licence and keeping the source code intact.
Figure 1 (courtesy: Wikipedia) will help us to visualise the program flow in Linux. The top portion of the figure is where the human/user interface happens and the bottom portion shows the machine interaction. It is above this other distros like Ubuntu, Fedora, etc are built. The processing speed of a computer is determined by the clock speed. The instruction to cycle that relay on clock speed are obviously fast and efficient. Remember, supercomputers are powered by Linux.
In research, publication is a must in order to validate the work. With LaTex, you can write a journal or conference paper without worrying about its alignment. LaTex is capable of aligning books, your thesis or even your presentation slides. Learning LaTex can be a challenge, but a graphical user interface (GUI) like Tex Live can be used for easy learning. The file system in LaTex is open source. After installation, you can check your software package version in your computer by typing the following command in command line interface (CLI or terminal). The version I use is also given below.
hithu@linux: $ latex − − version pdfTeX 3.14159265-2.6-1.40.15 (TeX Live 2014) hithu@linux: $ tex − − version TeX 3.14159265 (TeX Live 2014)
Apart from a calculator, array based computation is the next step to engineering or scientific research. MATLAB is known for such high level numerical computation but it is a proprietary software. Scilab is an open source equivalent of MATLAB. It was created in 1990 by researchers from INRIA and ENPC in France. It is freely available for all computation platforms (refer to my article in the January 2017 issue of OSFY). The Scilab version in my computer is:
hithu@linux: $ scilab −version Scilab version “184.108.40.2067209685”
High resolution images with diverse formats, such as scalable vector graphics (svg), can be flawlessly achieved with this open source software. It has all the flexibility to interact with LaTex and it has become my favourite drawing platform.
hithu@linux: $ inkscape − −version Inkscape 0.48.4 r9939 (Jan 22 2014)
Researchers should give valid citations or bibliographies to support their claims. There are numerous bibliography management software packages available. Zotero is free and open source, adequate for almost all of your citation needs.
hithu@linux: $ zotero − − version Zotero 4.0.28
We are all helplessly dependent on Microsoft Office. But the MS Office package comes with a price. MS Excel is the favourite of many engineers. Its equivalent is LibreOffice Calc, which helps in managing data adequately. Its limitations can be overcome with programming skills. Slide preparation and writing is bypassed by LaTex. My present version of LibreOffice is:
hithu@linux: $ libreoffice − − version LibreOffice 220.127.116.11 420m0(Build:2)
A dictionary is one of the overlooked components in any computer. It is good to have a dictionary handy. It is also possible to set shortcut keys of your favourite to access the word you want on your screen, at the click of a button. Artha works fine for my vocabulary skills.
The version I use is:
hithu@linux: $ artha − − version 2012
Richard Dawkins once said, “Where I come from, a scholar is somebody who’s read more than one book.” Reading books in an e-reader or smartphone is current trend. Personally, I own a Kindle device. Calibre manages and converts all that’s in my digital library in an elegant way.
hithu@linux: $ calibre − − versioncalibre(calibre 1.25)
VLC Media Player
Whether it’s video lectures or your favourite sci-fi movie, VLC supports almost all formats. It has good networking capabilities and will remain favourite media software. The present version of VLC Media Player is:
hithu@linux: $ vlc − − version VLC media player 2.1.6 Rincewind (revision 2.1.6-0-gea01d28)
An Internet browser can be considered as another operating system. Cloud computing has made it possible to work with anything online nowadays. Firefox is a clean browser with an easy interface and many add-ons. Bookmarks with a facility to export, root access and private browsing settings make it flexible. I prefer this open source browser.
hithu@linux: $ firefox − − version Mozilla Firefox 50.1.0