Pinterest Stumbleupon Whatsapp

Programming is an activity prone to frustration and difficulty — even when done as a hobby. Creating a web, mobile, or desktop app is a big undertaking, and good note-taking skills are key to staying organized and not succumbing to stress, despair, and burnout Programming Burnout: How to Regain Your Lost Motivation Programming Burnout: How to Regain Your Lost Motivation Writing all those lines of code can be draining physically and emotionally. All you need to get back up is the awareness that motivation can be regained. Read More .

But most note-taking apps aren’t designed with programmers in mind, and they can be so frustrating to use that they drive you to give up on notes entirely. That’s why we’ve gone ahead and rounded up the best note-taking tools for coders. Check these out — you’ll love them!

1. Boostnote

Platforms: Windows, Mac, Linux

Boostnote is the prime example of a note-taking app for coders. It doesn’t have all the features of a modern note-taking app (e.g. it has Markdown formatting and folder-based organization but lacks customizable keyboard shortcuts) but does have what all programmers love:

You can embed code blocks directly within normal notes, and you can create separate snippet-type notes that are specifically for collecting and grouping multiple code blocks in a single note. It also supports checkbox-based lists for task management.


The best part about Boostnote is that it’s free and open source Open Source vs. Free Software: What's the Difference and Why Does It Matter? Open Source vs. Free Software: What's the Difference and Why Does It Matter? Many assume "open source" and "free software" mean the same thing but that's not true. It's in your best interest to know what the differences are. Read More . Combined with its features, Boostnote is perfect for students in programming courses.

2. MedleyText

Platforms: Windows, Mac, Linux

MedleyText is very similar to Boostnote, with fewer features but a tighter focus on the features it does have: rich-text formatting, embedded code blocks within normal notes, and customizable keyboard shortcuts. It’s excellent for highly-productive coders with big projects.

When you embed formatted code directly into notes, the app will automatically highlight the syntax. Or you can manually select which syntax highlighting language to apply to any given block of code. It supports over 40 programming languages as of writing this article.

MedleyText is completely free without restrictions when taking local notes. A premium service called MedleyText+S is set to release in late 2017, allowing you to sync notes to cloud storage, access a web version of the app, and share notes with others.

3. Quiver

Platform: Mac

Quiver is yet another app like the two above: you can mix and match text (in both Markdown and LaTeX formats) with embedded code inside notes. However, Quiver has a dedicated code editor right inside the app that’s cleaner and more responsive than its competitors.

As for syntax highlighting, this app supports over 120 programming languages. Cloud storage sync is available for Dropbox, Google Drive, iCloud, and more. And because notes are stored as JSON, you can safely use version control to track changes. Shared notebooks even allow for collaboration between teammates on large projects.

So if Quiver is so great, why is it listed third? Because it’s only available on Mac. While the Mac operating system is a wonderful programming environment, most coders are still on either Windows or Linux. We consider this a huge negative mark.

4. OneNote

Platforms: Windows, Mac, Android, iOS, Web

OneNote is arguably the best note-taking app period, but until recently it lacked syntax highlighting abilities, making it inappropriate for programmers. Fortunately, thanks to a free add-on released by a GitHub user, OneNote can now do syntax highlighting for code Every Programmer Who Uses OneNote Needs This Add-On ASAP Every Programmer Who Uses OneNote Needs This Add-On ASAP If you're a programmer tired of ugly code formatting in OneNote, you need to download this tool. It makes adding code to OneNote books a cinch and sets up in seconds. Read More .

The add-on is admittedly a bit clunky, but it’s nice to know you can finally use OneNote for storing code notes. Since OneNote is one of the best ways to take notes as a student, this is particularly good news for students in programming and engineering curriculums.

OneNote is also great for collaborative projects 8 of the Best Free Collaborative Tools For Programmers 8 of the Best Free Collaborative Tools For Programmers If you're a programmer and you aren't yet sharing or collaborating, you're behind the curve. Reap the benefits of collaboration with the right web apps. Read More due to note sharing. And best of all? It’s completely free and available on nearly every major platform, both desktop and mobile. (Except for Linux, sorry!)

5. CherryTree

Platform: Windows

CherryTree is unlike most note-taking apps in that it’s more of a personal wiki. However, since pages can be nested under each other in a hierarchy, it’s more than good enough for taking notes. What makes it a wiki? You can insert links to any other page throughout the notebook.

There are other apps like CherryTree, including wikidPad and Zim, but CherryTree supports a special page type specifically for code. Use regular notes for ideas and tasks, use the code notes for snippets. As far as the page hierarchy, both types work the exact same way.

CherryTree is very fast, making it one of the best lightweight note-taking apps 7 Lightweight OneNote and Evernote Alternatives 7 Lightweight OneNote and Evernote Alternatives Though we love them, both Evernote and OneNote can be slow and bloated. If you've been looking for an alternative, here are a few lightweight note-taking apps you should consider. Read More .

6. Sublime Text

Platforms: Windows, Mac, Linux

As a programmer, you likely know about Sublime Text already. True, it’s a text editor and not a note-taking app, but it can certainly be used for taking notes: every note as a text file, and every code snippet in a separate language-appropriate file.

Sublime Text’s native features are excellent for increasing overall productivity 11 Sublime Text Tips for Productivity and a Faster Workflow 11 Sublime Text Tips for Productivity and a Faster Workflow Sublime Text is a versatile text editor and a gold standard for many programmers. Our tips focus on efficient coding, but general users will appreciate the keyboard shortcuts. Read More , and the ability to split into multiple editor panes is indispensable. But for note-taking and organization, it can get even better with a few free plugins.

SideBarEnhancements is a must-install for every Sublime Text user. It adds a number of improvements to the sidebar, mostly in the menu when you right-click files. PlainTasks incorporates a task-style to-do list right inside the editor. And MarkdownEditing is nifty if you want your notes to be taken down in Markdown.

Sublime Text technically costs $70, but the free evaluation period never ends. As long as you can deal with an occasional pop-up that reminds you to purchase the full version, you can use Sublime Text for free indefinitely.

7. TickTick

Platforms: Windows, Mac, Android, iOS, Web

TickTick is a to-do list app that’s pretty similar to other apps of its kind, but it has one subtle feature that makes it good for taking notes: every list item has a “description” field that’s basically an entire notepad.

As a programmer, you can use TickTick to track all of your tasks as individual list items and store whatever notes you need for each task. There’s no syntax highlighting or rich text formatting though, so it’s better for managing ideas than storing code snippets.

Plus, you get all the benefits of a full-blown to-do list app: folder organization, subtasks, recurring tasks, reminders, priorities, etc. TickTick has a free plan with a limited number of lists, and a paid plan for $28 per year.

Extra Tips for Becoming a Better Programmer

If all else fails, you can always stick notes right within your code as comments. It isn’t the best approach for abstract-level project management, and it requires clean coding habits 10 Tips for Writing Cleaner & Better Code 10 Tips for Writing Cleaner & Better Code Writing clean code looks easier than it actually is, but the benefits are worth it. Here's how you can start writing cleaner code today. Read More , but it’s an option for low-level notes pertinent to certain snippets.

Either way, keep going and keep improving. Programming is tough, so check out these tips for learning to code without stress How To Learn Programming Without All The Stress How To Learn Programming Without All The Stress Maybe you've decided to pursue programming, whether for a career or just as a hobby. Great! But maybe you're starting to feel overwhelmed. Not so great. Here's help to ease your journey. Read More . Furthermore, learn about how daily meditation can improve your code How Daily Meditation Can Make You a Better Programmer How Daily Meditation Can Make You a Better Programmer When you face mental obstacles while programming, calming your mind can help. Try meditation with these meditation apps to get through a tough day of coding. Read More . And if you ever feel stuck, here are ways to overcome programmer’s block 5 Ways to Beat Programmer's Block Right Now 5 Ways to Beat Programmer's Block Right Now Every programmer encounters an array of negative emotions over the course of their journey, and if left unchecked, these emotions can have a profound impact on progress -- even causing some to give up entirely. Read More .

How do you take notes as a programmer? Did any of these stick out? Know of any others worth adding to the list? Share with us in the comments below!

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. Scott Brewster
    September 13, 2017 at 5:52 pm

    I've been a paying customer of TickTick for years now. It is the best app I own. I also use SimpleNote on my phone, tablets, and PCs because of firewalls that prevent me from using Evernote and OneNote.

  2. Cvjcvj
    September 8, 2017 at 8:09 pm

    Leo Editor

  3. Arun Kr. Khattri
    September 8, 2017 at 7:30 pm

    Nothing can beat Emacs org-mode...
    Markdown, equations, source code, to do list...
    It handles all in an elegant way.

  4. Bo Grimes
    September 8, 2017 at 4:29 pm

    Cherrytree is available on Linux. Has been for a long time. Native not Wine.

  5. Gijs
    September 8, 2017 at 8:10 am seems more an option that included all of the above. Notes, tasks, code snippets.

  6. Gergely Polonkai
    September 8, 2017 at 4:47 am

    Zim (personal Wiki) and Emacs’ Org mode are also great.

  7. John
    September 7, 2017 at 10:45 pm

    Restructured Text (with and without Sphinx) is my go to tool for taking notes. Table of contents, logical separations via folders and files, and outputs to multiple formats (with Sphinx and/or pandoc). So if I need to generate a PDF, I got that. Epub? Done. Html? Got that too. Restructured text may be a bit to get used to, but the benefits outweigh the learning investment. Best of all, I don't have to rely on someone else's editor, which is always painfully lacking some feature of some sort. I can use my own editor, which means less context switching, which means more productivity.

  8. Montie
    September 7, 2017 at 9:12 pm

    I ended up just using Atom with a few packages. Boostnote was close to what I was looking for, but I ended up going another route due to the way the notes are saved (not .md files and not names I pick).

  9. Graham Wheeler
    September 7, 2017 at 8:41 pm

    There's also MWeb which is similat to Quiver. More features but worse synching.

  10. Rui
    September 7, 2017 at 5:11 pm

    We just launched Cacher (, which is a cloud-based code snippet organizer. It features labels, teams and desktop clients for Mac, Windows and Linux. If you're away from your machine, you can access the web app at: