A Software Engineer’s Favourite 15 Applications for Ubuntu

Kaigo
6 min readMay 6, 2020

According to the 2019 StackOverFlow Developer Survey Linux accounts for 25% of primary operating systems. Now, among bit tech companies like Google, this number will be higher as they provide an easy install path for their in-house Ubuntu fork (known as Goobuntu).

So we know that Linux provides a customisable environment and culture that no SDE, whether at Google or not, can resist — so let’s look at the applications that make it that way.

  1. Jetbrains IDEs (Intellij, PyCharm, Goland etc)

Often people with ultimate licences will use Intellij with the language plugin installed and get all the same benefits the singular products. This makes Intellij a one-stop-shop for all you’re development needs and with it’s builtin toolkit it’s the best IDE out there for Ubuntu bar none.

Favourite plugins: Material Theme UI, Lombok, Atom Material Icons (greyed)

2. VSCode

If an all-singing all-dancing IDE is not your bag, or you fancy something lighter from time-to-time then consider VSCode. I mainly use this for small side projects, but I recommend this text editor over atom on Ubuntu as I’ve had numerous issues with Atoms autocomplete box disappearing on me right as I’m about to select an option. Also the integrated terminal and free licence makes it a notch above sublime text.

Favourite extensions: Atom One Dark Theme, CoderRunner, Intellij Idea keybindings, Better PageUp/PageDown, Git History, Project Manager, Visual Studio IntelliCode, TODO highlights and Spell Checker.

3. Spotify

No development workflow is complete without some banging music on in the background. Spotify have built a solid app that works well on any resolution as it’s one of the few apps here that you can increase the GUI size by simply hitting ctrl + and ctrl — (the other being slack).

4. Gitkraken

When working on a project larger than your weekend pet-project, you’ll need a GUI to track all the branches and commits made to all the repositories you’re working on. I prefer Gitkraken over Sublime Merge as the UI is laid out better and just has more utility.

5. Boostnote

Ever find yourself Googling something for the nth time? Well try boostnote to organise and build your own knowledge base. Boostnote is specifically designed for programmers — supporting markdown plus a range of programming languages. NOTE: stick to the legacy version for now, as the rebuild doesn’t have all the same features (yet).

UPDATE FOR 2024: I’ve now switched to Obsidian for dev notes, as boostnote development seems to have stopped.

6. Simplenote

Store your day-to-day notes and lists on Simplenote — this Apple Notes look-at-like will make cloud notes available on Ubuntu. And with dark mode on, naturally. This app is run by the owners of WordPress for free, so I’m not sure what their motivations are it is not end-to-end encrypted.

7. Tresorit

This zero knowledge cloud, together with Simplenote make for a smoother experience using Ubuntu as a daily driver, and not just as an second OS for development. You can add these two apps to your other devices too, inc. mobile and have a syncing experience close to iCloud. And FREE up to 3GB (across two devices).

8. Chrome

As much as I love Firefox, there were a couple bugs which left me with no option (OLED brightness and full screen crashes). And I really hate the fact that Chrome doesn’t support containers. But nevertheless, chrome and chrome developer tools is a solid second option.

Favourite extensions: Bitwarden, Todoist, Dark Reader, Disconnect, HttpsEverywhere, Adblocker, Swipe Gestures, Gnome extensions.

9. Slack / MS Teams

Staying in touch with your team and vital for remote working, choose a good communication tool. Both of these run perfectly on Ubuntu, although Slack fails to support annotations/drawing on screen sharing sessions, which is a real bummer as it is very handy for pair programming.

10. AppLauncher

When installing software for Ubuntu sometimes the developer will choose to distribute the package an an AppImage. This can be annoying for us as it doesn’t integrate into the app launcher, it simply runs from the downloads folder. So use this nifty tool to fix that.

11. ULauncher

Possibly my favourite tool here, ulauncher is a mac-like application launcher for Linux. It is hack-able so you can install extensions for various things or develop your own.

Favourite Extensions: Status Pages, Text Expander, Process Killer, Gnome Settings, Jira Extension, VS Code Projects, Todoist, English Dictionary, Imdb.

12. NordVPN Cli

A solid VPN service which has the bonus of working on Netflix. Don’t forget to add an alias in your bashrc or zshrc as the default keyword is kinda long. Note this is a CLI and there is currently no GUI for Linux.

13. Zshell + Oh-My-Zsh + Git + Vim

All rolled into one here, and every programmer’s dream combination. These sweet little tools have a place on SDEs hall of fame. Basically all together they just equal ‘terminal’ for me, and it’s often how I think about it.

Favourite oh-my-zsh plugins: sudo, ubuntu, git, docker, go, mvn, node, pip, nvm, npm, vscode (and adding more everyday)

14. Pomodoro Timer

The evidence for pomodoro being an effective focusing tool is undeniable. And this basic app has a task bar icon too to create a space for those focused coding sessions. It’s available from the Snap Software Store.

15. Bitwarden

A password manager makes being on your computer a joyous experience. A must have for me to stay online, and prevent that extra barrier from doing a piece of work or posting an article like this. Also, this is only the second end-to-end encrypted service mentioned here.

— —

That rounds out my favourite 15 apps. Comment down below with your thoughts and views on my list and on the apps themselves!

--

--