Saturday, April 23, 2016

Open source recommendations

Here are my recommendations for software solutions that might increase your productivity, improve your product quality, and save you tons of time and money. My philosophy is to use software that is high quality, reliable, secure, multi-platform, and cost-effective. Your feedback and suggestions are welcome. User-friendly programs have an asterisk (*). Enjoy ...

Life / Time / Task Management

Org-mode ( (for Emacs users)

Org-mode is an Emacs mode for keeping notes, maintaining ToDo lists, and doing project planning with a fast and effective plain-text system (GNU Emacs is a text editor---see below under Text Editors). Org-mode develops organizational tasks around NOTES files that contain information about projects as plain text. Visibility cycling and structure editing help to work with the tree. Tables are easily created with a built-in table editor. Org-mode supports ToDo items, deadlines, time stamps, and scheduling. It dynamically compiles entries into an agenda. Plain text URL-like links connect to websites, emails, and any files related to the projects. For printing and sharing of notes, an Org-mode file can be exported as a structured ASCII file, HTML, and PDF LaTeX.

A text file showing a tree in emacs org-mode
I use Org-mode to implement David Allen’s Getting Things Done (GTD) approach and Stephen Covey’s The 7 Habits of Highly Effective People. Whereas the 7 Habits helps one develop a personal mission statement to align long term goals with one’s values and priorities, the GTD approach provides the operational details for “getting things done.” The irony of the 7 Habits approach is that one becomes overwhelmed trying to accomplish many worthwhile and fulfilling endeavors. Hence, the need for the GTD approach. Price = $0.

Task Coach* (

Task Coach is a simple open source todo manager to manage personal tasks and todo lists. If you don’t use Emacs, try Task Coach. Price = $0.

Computer Operating Systems

Ubuntu Linux (

Ubuntu Linux is an open source operating system based on Debian Linux, and is the clear choice if you want excellent functionality, reliability, and security at an very affordable price. You can convert your old MS Windows computer to Ubuntu Linux, or purchase a computer with it pre-installed (e.g., System76). Linux is an affordable alternative to Mac OS (also Linux-like). For the average workplace and home, Ubuntu Linux will have everything you need (including hundreds of free software solutions). For a limited budget, Ubuntu Linux is the clear choice.

Here is a screenshot of Ubuntu Linux on a System76 computer. On the left upper corner is GNU Emacs running AUCTeX; Gmail on the right upper corner; and Terminal on the lower right corner.

Ubuntu Linux Screenshot on System76 computer.

Mac OS* (

Mac OS X is an alternative choice if you want the functionality, reliability and security of Linux combined with the popularity of Macs. After many years of dissatisfaction with Windows, I had switched to the Mac OS, and I have never looked back. Mac OS X is a derivative from the FreeBSD operating system (originally from UC Berkeley!) with lots of open source (free) tools/software (although not nearly as many as Linux). If you are comfortable with Macs you are one step away from moving up to Linux. (Personally, I find Ubuntu Linux much more user-friendly than Macs. Unfortunately, Apple has become much more “closed” and they lock you into their “ecosystem.” So, I no longer used Macs at all. However, Macs are a still significant improvement over Windows!)

Integrated Office Suite

LibreOffice* (

LibreOffice is a free, open source, Microsoft Office-compatible and cross-platform (Windows, Linux, Solaris, and Mac OS) productivity software suite that includes a word-processor, spreadsheet, presentation program, and relational database, comparable to Microsoft Office’s Word, Excel, PowerPoint, and Access. OpenOffice can read and output these MS Office files (I have not used MS Office products since 1997). It also includes editors for HTML, drawing, and math equations. LibreOffice exports to many formats, including Portable Document Format (PDF) and LaTeX. output is of the highest professional quality and gives you the most flexibility in making your work available to the widest audience worldwide. At home, we only have and use LibreOffice. Price = $0.
LibreOffice Writer Screenshot

Web Browsers

Google Chrome* (

Google Chrome is a web browser designed for speed, simplicity, security and much more: search, chat, email, shop, bank, read the news, watch videos online, etc.Price = $0.

Mozilla Firefox* (

Mozilla Firefox is an open-source web browser designed for standards-compliance, performance and portability. Firefox is an award winning preview of next generation browsing technology from Firefox empowers you to accomplish your online activities faster, more safely and efficiently than any other browser, period. Built with Tab browsing, pop-up blocking and a number of other seamless innovations, Firefox stands out ahead. Price = $0.

Epidemiologic Programming

R* (

R is an open source programming language for statistical computing and graphics – my favorite! Better programming language than S-Plus, Stata, SPSS, SAS. Price = $0. If you are new to R, check out my manual Applied Epidemiology Using R. Also check out epitools, our R package for epidemiology. Price = $0.

Read about R in the New York Times.

Screenshot of R

RStudio* (

RStudio is a free and open source integrated development environment (IDE) for R. You can run it on your desktop (Windows, Mac, or Linux). Install R first, then install RStudio. This is the dream IDE customized to running R. RStudio is for newbies and experts alike. You will not be disappointed. Price = $0.

Screenshot of RStudio

Text Editors

GNU Emacs (

GNU Emacs is an open source, extensible, and powerful text editor. Absolutely the best! My clear favorite for R programming, editing (text, HTML), and preparing technical documents using LaTeX. For Mac OS, I recommend the modified Emacs for Mac OS X with AUCTeX, Emacs Speaks Statistics (ESS), and much more. Also consider Aquamacs Emacs --- an easy-to-use, Mac-style Emacs for Mac OS X. For Windows OS, I recommend the Emacs/AUCTeX bundle; however, you will need to add ESS. For Ubuntu Linux, I prefer the Emacs meta package which is available from the package manager. Price = $0.

Here is a desktop screenshot of GNU Emacs running Emacs Speaks Statistics (ESS) and R (left), and an R plot (right).

GNU Emacs running on Ubuntu Linux

Portable Document Format (PDF) manipulation

pdftk --- The PDF Toolkit (

pdftk is a command line program to merge, delete, burst, rotate pages from PDF documents — and much more! Please do not purchase expensive PDF manipulation software! Price = $0.

Photo & Image Editors


GIMP is the GNU Image Manipulation Program. It is an open source program for such tasks as photo retouching, image composition, and image authoring similar to Adobe Photoshop. I use the GIMP primarily for cropping and rescaling images, converting images (e.g., TIFF to EPS, etc.), and creating images for the Web (e.g., PNG). This is the only image (including photos) editing software you will ever need. Price = $0.

Inkscape* (

Inkscape is an open source vector graphics editor, with capabilities similar to Adobe Illustrator, CorelDraw, or Xara X, using the W3C standard Scalable Vector Graphics (SVG) file format. Inkscape supports many advanced SVG features (markers, clones, alpha blending, etc.) and great care is taken in designing a streamlined interface. It is very easy to edit nodes, perform complex path operations, trace bitmaps and much more. Price = $0.

ImageMagick (

ImageMagick is an open source software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (over 100) including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, and TIFF. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves. The functionality of ImageMagick is typically utilized from the command line. Price = $0.

Dia* (

Dia is an open source softward inspired by Windows ‘Visio,’ though more geared towards informal diagrams for casual use. It can be used to draw many different kinds of diagrams. It currently has special objects to help draw entity relationship diagrams, UML diagrams, flowcharts, network diagrams, and many other diagrams. It is also possible to add support for new shapes by writing simple XML files, using a subset of SVG to draw the shape. It can load and save diagrams to a custom XML format, can export diagrams to a number of formats, including EPS, SVG, XFIG, WMF and PNG, and can print diagrams. Dia and VUE are very similar — try both and see what works for you. Price = $0.
Screenshot of Dia Graphics on Ubuntu Linux


Freeplane* (

Freeplane is a multi-platform (Linux, Mac, Windows), free and open source software to support thinking, sharing information and getting things done at work, in school and at home. The core of the software consists of functions for mind mapping, also called concept mapping or information mapping, and tools for using mapped information. Freeplane runs on any operating system on which a current version of Java is installed and from USB. Freeplane can be used to prepared papers in LaTeX, and is the core of an academic literature suite call Docear ( Price = $0.

Screenshot of Freeplane

Professional Typesetting

LaTeX (

LaTeX is a high-quality typesetting system, with features designed for the production of technical and scientific documentation, especially that involving mathematical notation. LaTeX is the de facto standard for the communication and publication of scientific documents. For Ubuntu Linux, just install Texlive using the package manager. For Mac OS, I recommend the MacTeX Texlive distribution. For Windows OS, I recommend the MiKTeX distribution. Price = $0.

If you are new to LaTeX, see my tutorial LaTeX for Public Health and Medicine.


AUCTeX is an open source, extensible package for writing and formatting TeX files in GNU Emacs. It supports many different TeX macro packages. AUCTeX includes preview-latex which makes LaTeX a tightly integrated component of your editing workflow by visualizing selected source chunks (such as single formulas or graphics) directly as images in the source buffer. AUCTeX makes creating LaTeX documents easier, fun, and error-free. Price = $0.

Bibliography Management

JabRef (

JabRef is an open source bibliography reference manager. The native file format used by JabRef is BibTeX, the standard LaTeX bibliography format. JabRef runs on the Java VM, and should work equally well on Windows, Linux and Mac OS X. I use JabRef to search PubMed, and import and manage references. As a bibliography manager, JabRef is clearly superior to EndNote. If you don’t use LaTeX and/or BibTeX, you don’t need JabRef. Price = $0.

Screenshot of JabRef Bibliographic Reference Manager

Slide Presentations

LibreOffice Impress* (

Impress is a truly outstanding tool for creating effective multimedia presentations. Your presentations can be enhanced with 2D and 3D clip art, special effects and transition styles, animations, and high-impact drawing tools. Master pages simplify the task of preparing your materials. And you can save even more time by downloading templates from the LibreOffice template repository. You can also open Microsoft PowerPoint files, and save your work in PowerPoint format for people still locked into Microsoft products. Alternatively, you can use the built-in exporter to create Flash (.swf) versions of your presentations.

Beamer (

Beamer is a LaTeX class for creating presentations that are held using a projector, but it can also be used to create transparency slides. Preparing presentations with Beamer is different from preparing them with WYSWYG programs like LibreOffice’s Impress, Apple’s Keynote, or KOffice’s KPresenter. A Beamer presentation is created like any other LaTeX document: It has a preamble and a body, the body contains sections and subsections, the different slides (called frames in Beamer) are put in environments, they are structured using itemize and enumerate environments, and so on. The obvious disadvantage of this approach is that you have to know LaTeX in order to use Beamer. The advantage is that if you know LaTeX, you can use your knowledge of LaTeX also when creating a presentation, not only when writing papers. Here is a gallery of Beamer themes. Price = $0.

No comments:

Post a Comment