GitHub's 7 top productivity tools for programmers

GitHub abounds with open source tools aimed at helping you build software faster. Devs find these seven among the best

GitHub's 7 most popular productivity tools for programmers

GitHub's 7 most popular productivity tools for programmers

Born of ingenuity -- or, in some cases, laziness -- programming tools created by developers for developers have become an essential component of modern software development. Developers seeking to enhance their productivity or simply cut down on keystrokes have enjoyed a boon of possibilities thanks to open source repo host GitHub.

Along with projects for purposes ranging from security to mobile development and browser extensions, GitHub features productivity tools for developers, aimed at helping them build software faster and with “fewer headaches.”

Here are seven developer tools currently atop GitHub’s productivity tools showcase, based on the number of stars received by GitHub users.

[ Get the most out of collaborative programming with InfoWorld's 20 essential pointers for Git and GitHub. | Keep up with hot topics in programming with InfoWorld's Application Development newsletter. ]

Oh My Zsh

Oh My Zsh

With more than 43,000 stars, Oh My Zsh is the most popular productivity tool showcased on GitHub. This open source framework for managing a Z shell configuration is aimed at developers working with the command line.

“What I did was [put] together a collection of some scripts and shortcuts and tools I’ve collected for a couple years and put them together into an organized framework,” Oh My Zsh creator Robby Russell said.

Oh My Zsh now has more than 1,000 contributors and includes more than 200 optional plugins for Rails, Git, Brew, PHP, Python, and other technologies.

“Once installed, your terminal shell will become the talk of the town or your money back,” says Oh My Zsh’s documentation, tongue in cheek, as the tool is free. Users can choose from roughly 140 themes for customizing their CLI, including various colors and organization options. Dating back to 2009, Oh My Zsh requires OS X or Linux and Zsh 4.3.9 or a more recent version.

“It basically took me about two days to write the first version,” Russell says. A big focus has been on keeping it simple for people new to working in a command-line environment, but there is always room for improvements in performance. Russell, who works for web developer Planet Argon, is seeking additional maintainers for the project.

The Silver Searcher

The Silver Searcher

With more than 10,000 stars, The Silver Searcher is a code-searching tool similar to ack but “an order of magnitude faster,” according to The Silver Searcher’s documentation. Also called “ag,” the element symbol for silver, Silver Searcher leverages multiple CPU cores and searches files in parallel.

“It started out as a clone of ack, but their feature sets have since diverged slightly,” author Geoff Greer says in his description of the project online. “In typical usage, ag is 5 to 10 times faster than ack,” documentation states.

“I created ag because a similar tool (ack) wasn’t fast enough for searching a codebase at work,” Greer says, who runs Floobits, which makes remote pair programming tools.

The Sliver Searcher is mature software at this point. “The only code changes now are performance improvements -- rare now that the low-hanging fruit has been picked -- and small bug fixes,” Greer says. “There are a few features that a plurality of users have been asking for, and I’ll probably get to those in time. That wouldn’t break existing behavior though.”

Quick Look plugins

Quick Look plugins

Tallying nearly 7,000 stars, the Quick Look plugins repo, from developer Sindre Sorhus, supplement Apple’s Quick Look preview feature for the Finder file manager and UI shell in MacOS. Plugins include Suspicious Package, to preview the contents of a standard Apple installer package; Homebrew-Cask, which extends the Homebrew package manager for MacOS, bringing it “elegance,” simplicity, and quicker installation; and QLColorCode, to preview source code files with syntax highlighting. Others include QLStephen, to preview plain-text files, and QuickLookJSON, for previewing JSON files.

Other plugins listed include QLPrettyPatch, to view .patch files; QuickLookCSV, for examining CSV files; and BetterZipQL, to preview archives.

ShareX

ShareX

With roughly 4,300 stars, open source ShareX enables the capturing or recording of any area of a screen and sharing it. Users can upload images, text, or other files to more than 80 supported destinations. A set of tasks can be configured and assigned to a hotkey -- for example, Ctrl-Print Screen.

“ShareX is open source screen capture, file sharing, and productivity tool. Developers have full access to examine the code to see how each image/video/text hosting APIs are utilized,” says the lead developer of ShareX, who goes by the nickname of Jaex.

Numerous capture options are presented along with multiple options to upload files. Image uploaders are supported such as Google Photos, Twitter, Flickr, and Imgur. Users can access file-hosting services such as Dropbox and FTP. Additional tools are featured such as color and screen pickers, an image editor, and DNS changer. It also supports customizable workflows. Improvements are under consideration in areas such as working on region capture and screen annotation.

Homebrew

Homebrew

Called the “missing package manager for MacOS,” Homebrew was created in 2009 and has roughly 4,000 stars in GitHub. It offers quick installation of open source software from binary packages.

“Homebrew provides MacOS users with access to thousands of freely usable open source tools,” says lead maintainer Mike McQuaid, a senior engineer at GitHub. “Developers should find it particularly useful as it’s the easiest way to install commonly used developer tools like MySQL, OpenSSL, etc., on MacOS.”

Improvements are planned for reliability, version support, and package handling.

“We actively welcome new contributions and first-time pull requests,” McQuaid says.

dotjs

dotjs

The dotjs Chrome extension to execute JavaScript files in ~/.js based on their file name has more than 3,000 stars.

“If you navigate to http://www.google.com/, dotjs will execute ~/.js/google.com.js,” the repo states. This makes it “super easy” to spruce up favorite pages using JavaScript. In explaining how dotjs works, the tool’s documentation states that Chrome extensions cannot access the local file system, so dotjs runs a small web server on port 3131 to serve files out ~/.js.

“You don't have to worry about starting or stopping this web server because we put a pretty great plist into ~/Library/LaunchAgents that handles all that for us.”

The GitHub repo for dotjs is no longer maintained.

GitHub Changelog Generator

GitHub Changelog Generator

Scoring about 2,500 stars, open source GitHub Changelog Generator is a command-line tool that automatically generates a change log from tags, issues, and pull requests on GitHub. The project is intended to make it easier for users and contributors to see notable changes for each release of a project.

Developer Petr Korolev invented the tool “because no such thing was implemented before with such functionality. So I made my own.” Written in Ruby, the tool enables the generation of a canonical, neat file change log, according to its documentation. It can support GitHub Enterprise, the behind-the-firewall version of GitHub.