Last time I tried it, it didn't handle unicode very well. It was a year ago and, when I saved the documents, things like "à" would turn to Chinese characters. Apart from this, I liked it a lot. Now I just use VIM and pandoc for PDFs.
Thank you for this, I've been long wishing for a NValt clone with an inline Markdown preview. Currently I write longer notes in Sublime Text,now Typora seems a nicer alternative.
Hi, please don't take this the wrong way I develop neither native apps, nor electron apps, I'm just curious.
Is the hostility towards electron mostly from native app developers who are feeling their value diminished, and/or their careers threatened by the advent of electron?
Is this love for 'develop separately for 3 different platforms' backed by some practical/rational thinking?
Edit: Also I feel your analogy is a false equivalence. Perhaps a better analogy would be between a wood fire over, and an electric one.
>Is the hostility towards electron mostly from native app developers who are feeling their value diminished, and/or their careers threatened by the advent of electron?
I'm a web developer (though backend these days) myself.
My hostility towards Electron is purely as an end-user.
>Is this love for 'develop separately for 3 different platforms' backed by some practical/rational thinking?
Performance, memory, speed, following the platforms conventions and taking full advantage of its APIs, looking and behaving best for each platform.
So, anything else except "put something out there fast / attract JS programmers" (which are valid concerns too, but not user-first ones).
Yeah, I'm sorry, if it's good enough, then it's good enough. I get that as a power user, you want the native speed, the native experience, and it's something I value too, I guess just not as much as you. Something in my hands that I can use today is more important to me.
It's not speed so much as cost. Native means developing the app 2-3 times over with different languages, apis, and patterns.
There is no reason for it to be this way other than vendor desire for lock in. In the end what the vendors will get is the web eating the desktop. Serves them right.
If by "good" you mean "useful." Both are still non-native-UX piles of mess and would be far better and less resource-intensive if implemented as native apps.
While the bloat of having to basically install a full version of Chrome just to get a UI makes a little part of me die inside, I'll second the 8+ hours a day in VSCode.
I'm working on a python project right now and enjoying PyCharm quite a bit, but in a window right next to me is VS Code with my running log. I'm using it at home with a plug-in to write code in CUDA and C++, I use it at work for TypeScript and dotnet core C#, editing configuration files. Heck, on one of my Windows boxes, I have a PowerShell command "Edit-File" that opens up the target in VS Code, is set to the default commit comment editor for Git and aliases "nvim" because I can't get NeoVim to work on that box to save my life.
Sure, it doesn't launch anywhere near as quickly as vi/vim/nvim, but since I live out of the thing, it's always already pulled up and the time it takes to open a file when the editor is already up is plenty fast.
As far as being resource heavy -- I like to work on the couch at work and it's nowhere near a plug. I started doing light editing of C# and .NET apps in VS Code to avoid having Visual Studio halve my battery life. I get a solid 4 hours of editing/testing which isn't all that much less than I get just leaving Windows running with nothing open. It wasn't always like that, sure -- I recall either Atom or VS Code having a bug where the cursor blinking caused the CPU to stay steady at 15% (though, ConEmu -- a must-have console app for Windows[0] hangs at around 5-10% CPU with nothing executing, too), but I haven't had any battery/memory/CPU issues running Code for the last year or so.
VS Code is crap compared to MSVC or CLion because it can't parse large C++ programs. Indeed, writing those kind of performance sensitive routines wiuld be difficult without going native.
I laughed at this -- I believe Keybase is also electron and that's on my must-install list every time.
Props to VS Code - that, along with the excellent Markdown Enhanced Preview and (less excellent, but usable) VSVim extension is my note-taking app ... on my HP Omen laptop loaded with openSUSE Tumbleweed. Of the 7 or so people that I work directly with at the company that employs me, all of them run Linux (with most using Manjaro) and VS Code is pulled up on one of the monitors on every one of them.
Who'd have thunk that a bunch of developers running Linux would be writing the vast majority of their code using a Microsoft product built natively for Linux named after another development tool who's name is usually proceeded by a profanity when spoken by a typical *nix geek.
You don't know how good you have it. Try using Inkscape on a Mac.
Before Electron, the quality of the average cross-platform app was generally atrocious. e.g. lack of support for retina displays, menu bars attached to the window, system fonts totally missing, non-system file pickers, ugly homegrown font rendering...
Electron is amazing and as much as people like to shit on it, it has raised the quality bar considerably.
I'm feeling strange defending Electron, because I have crapped all over it in the past, too. There are certainly too many simple little apps written in electron that come with a 65MB download to do things I don't care about, but I'll second this.
The problem you have with "Inkscape on a Mac" is all over the place. I cringe when I go to install an app and find out it's used some C++ GUI kit that was designed for X/linix. They all "sort of" work on Windows -- the file dialogs will be all wrong, they'll have forward instead of back-slashes sometimes, none of my pinned folders will be there, etc. The windows in the app will sort-of feel like native Windows apps but will function just screwy enough that you long to be running KDE or Gnome[0]. Even if they look good in all of those OSes, they rarely provide the same experience. Then there's the handful of Electron apps I use. Keybase looks and behaves exactly the same way in KDE and Windows, as does Visual Studio Code and draw.io (though I almost always just use this right from the site, itself). And I'm very happy with the UI of those apps. Then I decide I want to tweak the way a ligature looks in a font I rely on and make the mistake of launching FontForge on my Windows box and remember why cross-platform generally means "take the worst of every platform and use only those features". Non-electron cross-platform apps all-too-often look like Java-based GUI apps from the early 00's -- write once, suffer everywhere.
[0] I've had apps that launch in a single pane within KDE/Gnome, but in Windows launch as several separate windows and apps that launch as normal looking windows in KDE/Gnome but in Windows look like a "Window within a Window" with all of the native Windows chrome outlining the application's window chrome, akin to placing a camera in front of a television and watching that camera's feed to watch a show/movie.
It's amazing how many programs try and fail horribly at reinventing org mode every.single.month. If anyone got even slightly interested in this project take a look at emacs's org mode, you won't be disappointed.
Every month or so I see people attempting to create the perfect note-taking system for developers and none are up to the task, they're mostly electron laggy apps which cause more frustration than solves the problem.
A tip if you're designing something like this. Be fast, responsible and keyboard first. The time to take a note (flush your brain) shouldn't interrupt your current task and should be as mechanical as possible.
I've been using the same note take system for the last two years. It just works as expected. It's as fast as my terminal can be and I can use org or MD if needed.
postit@workstation:~# cat bin/logbook
#!/bin/sh
TS=$(date +'%H:%M:%S')
DS=$(date +'%Y-%m-%d')
cd ~/txt/logbook/
joe $DS.md && git add . && git commit -am "Updating $DS entry on $TS" && git push
exit
I have the bin on my path and a keyboard shortcut that fires up a terminal and opens the script. If I need to find something I can ag/grep the folder, and if I'm away from my computer, everything is available on GitHub.
ps: I decided to use joe in the script because it's the fastest text editor by far to start on my system, you can stick to your own solution.
They are indeed, but this pattern solved a few issues I had.
First one was to get rid of always thinking about a commit message.
Second, I can use git blame and understand the order of things I've inserted w/o headaches. Past information gets agglutinated and I needed granularity specially during long work hours
The problem for me isn't that I can't find a note taking app that works. My problem is I don't know how to take notes. I always read on people favoring apps and using xyz for the past decade. All I wonder is what do these people put in their notes, do they read back often, and how can I learn to get my state of mind in a note taking app like they do?
The answers could range from "I blog about things I learn" (indicating a small amount of notes) all the way up to "I use GTD[0]" (indicating an endless amount of constantly updated and reviewed notes), but none of the suggestions are going to help you.
You need to try different things and see what works for you and what doesn't. Your personal preference could be even customized to the situation, so you might want to use GTD for work and some other system for your personal life.
So how I did it is tried one option (blogging about everything), then tweaked it (blogging about something), then tweaked it again (leaning towards messy notes, away from blog drafts), then tweaked it again (Markdown brain dumb of all the things that I think I might need in a day/week/month/year), and again (some of the notes about a random topic get detailed enough to write a blog post about it).
And the reason I've mentioned blogging so much is that, when trying to tell a story about the topic, I often find some previously unnoticed gaps in my knowledge. So that's kind of "reading notes, re-writing notes in such a way that I'm telling a story" style that currently works for me the best. YMMV
I live out of my notes, but part of that is due to the format of my notes and how I work, in general.
While learning a new subject (almost always from a big, fat, e-book), I take notes as I skim/scan the material. I'll go from cover to cover about 4-5 times, enhancing my notes each time. I re-read my notes in-between reading the book to see what I don't understand from my notes. These notes, later, become a reference material for me.
When I come across something new idea/technique (new to me, not necessarily "revolutionary", in general), I find the relevant document in my note library and add to it.
About once a year or so, I go through most of my notes and re-organize things. Since I've been doing this for 15-odd years, re-organization is usually moving a small percentage of text around to another file -- my notes repository is very well organized and often I remember exactly where something is that I'm looking for without resorting to searching.
All of my notes are written in Markdown -- something I started doing about 2 years ago. I converted all of the existing notes that I felt were important into this format because it gave me the best of all worlds -- I get solid, pleasant (and configurable) formatting, code highlighting which can be viewed in a styled format in-browser or printed[0] and yet still end up with a plain-text document that plays nicely with git. All of my notes are stored in five different git repositories which are now all stored on Keybase's Encrypted Git. I keep separate repositories to separate out work and personal, but I have a programming-notes repository that's dedicated to generic notes I've taken on the programming languages I write in (each has its own folder with several documents, but minimally a "cheat-sheet" and "snippets" document which should be self-explanatory).
The Markdown bit is key -- I am not always in a GUI, sometimes I'm having to refer to things from the terminal and everywhere I go, I have a copy of that keybase repo. Everywhere I go I also have grep and when I can't remember something specific, but I know I took notes on it, grep finds my answer faster than evernote/onenote's search function ever could and I can read what I need right in the output of that command with an "-A/-B" of sufficient size, or just open the file in VS Code if I want to see it with formatting.
I get where you're at, though. You don't get value from taking notes until you've taken a lot of notes and it takes forming the habit of taking notes to get that value -- not being certain that you'll get any value from your notes because of the tool you chose or the format it's stored in can be a barrier to forming that habit. I started keeping programming notes outside of those I took while learning a language when I realized I was constantly googling the same thing about languages that I didn't use frequently enough to commit those things to memory. That's fine and all until you can't remember the specific incantation of search string that you used, or Google changed the ranking of things for the search term, or the site that had that great nugget of information was reformatted or changed URLs so you can't find it and your bookmarks are no good any longer ... I believe I started taking daily note-taking seriously after spending a day between Google and writing code only to throw most of it away when I finally found that library I had been looking for the next day after remembering the author's name and searching directly for him/her rather than what I thought was the name of the library[1].
[0] I use Markdown Enhanced Preview with Visual Studio Code and have written customer proposals and full-on "report-style" documents. When I had to do the first one of these at the job I took in March, I was given a Word template to work from and after swearing at Word...
> I get where you're at, though. You don't get value from taking notes until you've taken a lot of notes and it takes forming the habit of taking notes to get that value
Exactly, I think.. I struggle with the details of the notes I take. Maybe it is just practice. Do I take a one-liner, a paragraph? Pictures? In between?
My current way of working is to have a Todoist [0] filled with tasks, properly tagged and assigned to projects. Emails that need action go into Todoist, tasks from meetings go into Todoist, any tasks I come up with, Todoist. Next to this I have a Pocket [1] filled with articles, both to read later but I also use it as reference material and future use. Also properly tagged (most of times).
Now that leaves only notes that are not actions. Either from content that is too large to have in my pocket (say longer than a blog post) or not from any content I can send to Pocket at all. Probably the freeflow nature of these comments is what makes it hard for me to write them down. Granularity, quality, and governance are hard here. On my previous tries I either ended up with a huge pile of messy notes I never used or with too few notes that didn't accurately cover my thoughts at the time, i.e. needed to redo the process the note originated from.
I'll try again. Maybe this time things go right. If it is practice there is no shortcut to become a successful note-taker it seems.
I've seen a glut of developer note taking apps lately and every time I see them I wonder, why not just use something like org mode? That's one of the biggest things emacs has to offer and once you start to use it, all of these markdowny developer note taking apps become irrelevant.
Yeah but if they wish to use a note taking system for code they should be using emacs, it's not only the one with most features by far but also the one with the biggest range of customizations, hell you can write your own parser on top of it. If you are going to introduce another program anyway to do the note taking the choice should be a no-brainer.
Given the options available for installing an application, what would you have preferred? If it had been a GitHub repository with a releases item, it would have either been a tarball'd source I have to compile (I run Linux), an RPM file that might-or-might-not work (I run openSUSE and Fedora/Redhat RPMs are more common and hit/miss on openSUSE), instructions on how to apt-get or yum install it -- no openSUSE zypper commands (though, yum instructions often work depending with the same hit/miss ratio as RPM installs).
An improvement would have been if it was code-signed in some verifiable way (I'm not sure if it was or wasn't -- I wasn't paying a lot of attention when I launched it in this virtual, TBH), but the reality is that if you want to run code, it has to be in a binary format of some kind whether you compile it yourself or it's compiled for you, and even in the case of self-compiling ... it's not like you're going to do a line-by-line audit of the code looking to ensure they're not trying to win an underhanded C contest. At least an AppImage file can be run in a sandbox, and it is a very pleasant way to get a working binary on a Linux host. It didn't require root privileges to install or execute (that would have caused raised eyebrows, here).
I've found mindmaps to be better tools for saving notes than syntax highlighted text.
I currently use the freemium version of XMind, which lacks search and many other features unless you pay. Still a better deal than just text IMO.
I've considered mind maps, but I can't overcome this problem: 10 years from now, will I be able to use that data? When/if needed, how do I export the data and what application can utilize it?
I'm with you on this -- I have found mind maps useful when brainstorming (particularly with a small group of people), but I like my notes in a format that can be grepped and easily version managed, so I use VS Code/Markdown, git, and a lot of typing.
One thing I've noticed with my personal note taking is that most features note applications offer are more distraction than anything.
I've settled on having a permanently open vim buffer in a hidden window. When I press a hotkey it's pulled ontop of any windows I have. I type in a plain ascii pseudo-markdown-org-mode-ish style I've made up over the years but no one else needs to read. Then I hit the same hotkey to hide the window until I need it again.
The biggest thing for me is that it pops up, I brain barf all over the buffer, and then it's gone with no thought on how it's supposed to be formatted or anything. It should be more like playing an instrument than creating good documentation. It can be changed into something presentable later iff I need to. Options and features, while necessary to push your new app, are the antithesis of seamless note taking for me.
I'm with you, here - I've got vim opened in guake available at a hotkey on the laptop I'm typing on right now. Though, I also have VS Code pulled up on Desktop #2 -- it's just not as hot-key accessible.
I keep a lot of notes (probably generating on the order of 10-15 pages on a good day[0]), so while some folks are knocking the whole "Yet Another Note Taking App Oh My Gosh!" sort of thing, I am thankful that folks are looking into this space; it's one that I've spent a lot of time wanting to see get a whole lot better.
So as to your app, the good points are: it's minimalist with a clean UI and native code highlighting. Those are pretty much the base requirements before I'll even consider looking into it, and I'm happy with the large array of supported languages. It looks quite nice and useful in that regard, so kudos! I love that it supports basically every OS -- I'm on Windows and Linux split about 50/50 and too often I'll run into apps that cover MacOS, Android, iOS and Windows. Since I run Linux at home, that's my preference and it a non-starter if it's not supported.
Unfortunately, for me, I can't handle another WYSIWYG editor. I'm done with them. It's not that I don't like formatting -- quite the contrary -- with the amount of note-taking I do day-to-day, I require good formatting. It's that I've never found a WYSIWYG editor that doesn't come with it's own set of F-bombs. I'm not taking my fingers off of the keyboard to hit a button with a mouse and while keyboard shortcuts are fine, I'll still end up highlighting a line, hitting that keyboard shortcut and having the WYSIWYG app decide to apply that formatting in some non-intuitive way (i.e. select a large line with mixed slant/non-slant and pick the slant button -- three choices: slant everything, slant nothing, or reverse slanting).
So I've settled on two technologies for my note-taking: Markdown and git. It just feels right -- it uses a dead simple dialect that allows me to directly indicate my formatting intent within the writing, it's lightweight enough that when viewing it in a terminal, the markup rarely decreases the readability (and sometimes increases it) and combined with a good rendering tool, can make a document format well for in-browser viewing and printing. I currently rely on a combination of Visual Studio Code (with Markdown Enhanced Preview for side-by-side previewing-as-you-type) and plain-old vim with markdown syntax highlighting for note-taking, combined with Keybase Encrypted Git for version management. I've yet to find something superior for me, though this would be pretty close if it simply gave me a Markdown editor with a preview on the side. And I'd really like a better UX than what's offered by grep for searching my notes. I'd love for an easy way to say "find all references to this function in this language" that would rip through my repo and pull out the relevant sections.
Perhaps I'm a bad example being so particular, but I've tried so many note taking apps -- online from Atlassian's Confluence (which I personally hate) to semi-online/offline markdown editors and things like one-note/evernote. For the most part, the major features of those applications are overshadowed by the poor experience of actually taking notes[1].
[0] I'm not a university student -- it's mostly for my job, which lately has consisted of being pulled into projects that have hit a wall to do code analysis and large-scale re-architecture. With that comes a lot of read-and-explain work both for myself and for my clients. Like most of you, I effortlessly type at about the speed people talk, so it keeping a running log comes easily. I also speed-read (not the gimmicky eyeball exercises but the old-school skimming and scanning) and practice a form of study that involves racing through material while typing notes, organizing said notes and re-reading 3-5 times to maximize extracting information, so on a good weekend, I'd type up several thousand lines of raw notes.
[1] And I'm not one to "web clip" -- if the blog...
is there anything out there that beats a good old paper notebook and a pen? The lack of backups is bad but I can't find anything else where I can put down the notes and ideas in the format I want and draw pictures and diagrams in my notes. Everything else just falls short.
72 comments
[ 2.8 ms ] story [ 129 ms ] threadhttps://typora.io/
WYSIWYGIWYRW?
- Less cluttered UI
- Allows both a file tree, or a more TOC-style tree, in the left pane
- A lot faster startup
etc.
Great with more options for pure-markdown wysiwyg editing/note-taking though.
MedleyText+S Available in Nov. 2017
and button for download is inactive.
McDonalds didn't put Peter Luger out of business.
Is the hostility towards electron mostly from native app developers who are feeling their value diminished, and/or their careers threatened by the advent of electron?
Is this love for 'develop separately for 3 different platforms' backed by some practical/rational thinking?
Edit: Also I feel your analogy is a false equivalence. Perhaps a better analogy would be between a wood fire over, and an electric one.
I'm a web developer (though backend these days) myself.
My hostility towards Electron is purely as an end-user.
>Is this love for 'develop separately for 3 different platforms' backed by some practical/rational thinking?
Performance, memory, speed, following the platforms conventions and taking full advantage of its APIs, looking and behaving best for each platform.
So, anything else except "put something out there fast / attract JS programmers" (which are valid concerns too, but not user-first ones).
It has very little to do with lazy developers. It just takes more resources to release native applications for all three major desktop platforms.
Not if it serves as a "good enough" stop gap that prevents the better made application from being ported.
There is no reason for it to be this way other than vendor desire for lock in. In the end what the vendors will get is the web eating the desktop. Serves them right.
- Discord
- VS Code
I just spent more than three hours with a friend on Discord playing The Division and it was smooth as it can be.
It's kind of become the norm to hate on Electron apps, but to be fair, I don't see the point.
I'm working on a python project right now and enjoying PyCharm quite a bit, but in a window right next to me is VS Code with my running log. I'm using it at home with a plug-in to write code in CUDA and C++, I use it at work for TypeScript and dotnet core C#, editing configuration files. Heck, on one of my Windows boxes, I have a PowerShell command "Edit-File" that opens up the target in VS Code, is set to the default commit comment editor for Git and aliases "nvim" because I can't get NeoVim to work on that box to save my life.
Sure, it doesn't launch anywhere near as quickly as vi/vim/nvim, but since I live out of the thing, it's always already pulled up and the time it takes to open a file when the editor is already up is plenty fast.
As far as being resource heavy -- I like to work on the couch at work and it's nowhere near a plug. I started doing light editing of C# and .NET apps in VS Code to avoid having Visual Studio halve my battery life. I get a solid 4 hours of editing/testing which isn't all that much less than I get just leaving Windows running with nothing open. It wasn't always like that, sure -- I recall either Atom or VS Code having a bug where the cursor blinking caused the CPU to stay steady at 15% (though, ConEmu -- a must-have console app for Windows[0] hangs at around 5-10% CPU with nothing executing, too), but I haven't had any battery/memory/CPU issues running Code for the last year or so.
[0] If you use cmder, that's Conemu
Props to VS Code - that, along with the excellent Markdown Enhanced Preview and (less excellent, but usable) VSVim extension is my note-taking app ... on my HP Omen laptop loaded with openSUSE Tumbleweed. Of the 7 or so people that I work directly with at the company that employs me, all of them run Linux (with most using Manjaro) and VS Code is pulled up on one of the monitors on every one of them.
Who'd have thunk that a bunch of developers running Linux would be writing the vast majority of their code using a Microsoft product built natively for Linux named after another development tool who's name is usually proceeded by a profanity when spoken by a typical *nix geek.
Specifically, it allows lazy dev teams to deploy lazy "apps."
Before Electron, the quality of the average cross-platform app was generally atrocious. e.g. lack of support for retina displays, menu bars attached to the window, system fonts totally missing, non-system file pickers, ugly homegrown font rendering...
Electron is amazing and as much as people like to shit on it, it has raised the quality bar considerably.
The problem you have with "Inkscape on a Mac" is all over the place. I cringe when I go to install an app and find out it's used some C++ GUI kit that was designed for X/linix. They all "sort of" work on Windows -- the file dialogs will be all wrong, they'll have forward instead of back-slashes sometimes, none of my pinned folders will be there, etc. The windows in the app will sort-of feel like native Windows apps but will function just screwy enough that you long to be running KDE or Gnome[0]. Even if they look good in all of those OSes, they rarely provide the same experience. Then there's the handful of Electron apps I use. Keybase looks and behaves exactly the same way in KDE and Windows, as does Visual Studio Code and draw.io (though I almost always just use this right from the site, itself). And I'm very happy with the UI of those apps. Then I decide I want to tweak the way a ligature looks in a font I rely on and make the mistake of launching FontForge on my Windows box and remember why cross-platform generally means "take the worst of every platform and use only those features". Non-electron cross-platform apps all-too-often look like Java-based GUI apps from the early 00's -- write once, suffer everywhere.
[0] I've had apps that launch in a single pane within KDE/Gnome, but in Windows launch as several separate windows and apps that launch as normal looking windows in KDE/Gnome but in Windows look like a "Window within a Window" with all of the native Windows chrome outlining the application's window chrome, akin to placing a camera in front of a television and watching that camera's feed to watch a show/movie.
A tip if you're designing something like this. Be fast, responsible and keyboard first. The time to take a note (flush your brain) shouldn't interrupt your current task and should be as mechanical as possible.
I've been using the same note take system for the last two years. It just works as expected. It's as fast as my terminal can be and I can use org or MD if needed.
I have the bin on my path and a keyboard shortcut that fires up a terminal and opens the script. If I need to find something I can ag/grep the folder, and if I'm away from my computer, everything is available on GitHub.ps: I decided to use joe in the script because it's the fastest text editor by far to start on my system, you can stick to your own solution.
First one was to get rid of always thinking about a commit message.
Second, I can use git blame and understand the order of things I've inserted w/o headaches. Past information gets agglutinated and I needed granularity specially during long work hours
https://imgur.com/a/cfvFh
Which time stamp is better in your opinion?
Also with an eye scan I can see how much I've updated on a single note
Nope.
You need to try different things and see what works for you and what doesn't. Your personal preference could be even customized to the situation, so you might want to use GTD for work and some other system for your personal life.
So how I did it is tried one option (blogging about everything), then tweaked it (blogging about something), then tweaked it again (leaning towards messy notes, away from blog drafts), then tweaked it again (Markdown brain dumb of all the things that I think I might need in a day/week/month/year), and again (some of the notes about a random topic get detailed enough to write a blog post about it).
And the reason I've mentioned blogging so much is that, when trying to tell a story about the topic, I often find some previously unnoticed gaps in my knowledge. So that's kind of "reading notes, re-writing notes in such a way that I'm telling a story" style that currently works for me the best. YMMV
0 - https://hamberg.no/gtd/
While learning a new subject (almost always from a big, fat, e-book), I take notes as I skim/scan the material. I'll go from cover to cover about 4-5 times, enhancing my notes each time. I re-read my notes in-between reading the book to see what I don't understand from my notes. These notes, later, become a reference material for me.
When I come across something new idea/technique (new to me, not necessarily "revolutionary", in general), I find the relevant document in my note library and add to it.
About once a year or so, I go through most of my notes and re-organize things. Since I've been doing this for 15-odd years, re-organization is usually moving a small percentage of text around to another file -- my notes repository is very well organized and often I remember exactly where something is that I'm looking for without resorting to searching.
All of my notes are written in Markdown -- something I started doing about 2 years ago. I converted all of the existing notes that I felt were important into this format because it gave me the best of all worlds -- I get solid, pleasant (and configurable) formatting, code highlighting which can be viewed in a styled format in-browser or printed[0] and yet still end up with a plain-text document that plays nicely with git. All of my notes are stored in five different git repositories which are now all stored on Keybase's Encrypted Git. I keep separate repositories to separate out work and personal, but I have a programming-notes repository that's dedicated to generic notes I've taken on the programming languages I write in (each has its own folder with several documents, but minimally a "cheat-sheet" and "snippets" document which should be self-explanatory).
The Markdown bit is key -- I am not always in a GUI, sometimes I'm having to refer to things from the terminal and everywhere I go, I have a copy of that keybase repo. Everywhere I go I also have grep and when I can't remember something specific, but I know I took notes on it, grep finds my answer faster than evernote/onenote's search function ever could and I can read what I need right in the output of that command with an "-A/-B" of sufficient size, or just open the file in VS Code if I want to see it with formatting.
I get where you're at, though. You don't get value from taking notes until you've taken a lot of notes and it takes forming the habit of taking notes to get that value -- not being certain that you'll get any value from your notes because of the tool you chose or the format it's stored in can be a barrier to forming that habit. I started keeping programming notes outside of those I took while learning a language when I realized I was constantly googling the same thing about languages that I didn't use frequently enough to commit those things to memory. That's fine and all until you can't remember the specific incantation of search string that you used, or Google changed the ranking of things for the search term, or the site that had that great nugget of information was reformatted or changed URLs so you can't find it and your bookmarks are no good any longer ... I believe I started taking daily note-taking seriously after spending a day between Google and writing code only to throw most of it away when I finally found that library I had been looking for the next day after remembering the author's name and searching directly for him/her rather than what I thought was the name of the library[1].
[0] I use Markdown Enhanced Preview with Visual Studio Code and have written customer proposals and full-on "report-style" documents. When I had to do the first one of these at the job I took in March, I was given a Word template to work from and after swearing at Word...
> I get where you're at, though. You don't get value from taking notes until you've taken a lot of notes and it takes forming the habit of taking notes to get that value
Exactly, I think.. I struggle with the details of the notes I take. Maybe it is just practice. Do I take a one-liner, a paragraph? Pictures? In between?
My current way of working is to have a Todoist [0] filled with tasks, properly tagged and assigned to projects. Emails that need action go into Todoist, tasks from meetings go into Todoist, any tasks I come up with, Todoist. Next to this I have a Pocket [1] filled with articles, both to read later but I also use it as reference material and future use. Also properly tagged (most of times).
Now that leaves only notes that are not actions. Either from content that is too large to have in my pocket (say longer than a blog post) or not from any content I can send to Pocket at all. Probably the freeflow nature of these comments is what makes it hard for me to write them down. Granularity, quality, and governance are hard here. On my previous tries I either ended up with a huge pile of messy notes I never used or with too few notes that didn't accurately cover my thoughts at the time, i.e. needed to redo the process the note originated from.
I'll try again. Maybe this time things go right. If it is practice there is no shortcut to become a successful note-taker it seems.
[0] https://todoist.com/ [1] https://getpocket.com/
I think I'll pass on downloading and executing a binary file.
Given the options available for installing an application, what would you have preferred? If it had been a GitHub repository with a releases item, it would have either been a tarball'd source I have to compile (I run Linux), an RPM file that might-or-might-not work (I run openSUSE and Fedora/Redhat RPMs are more common and hit/miss on openSUSE), instructions on how to apt-get or yum install it -- no openSUSE zypper commands (though, yum instructions often work depending with the same hit/miss ratio as RPM installs).
An improvement would have been if it was code-signed in some verifiable way (I'm not sure if it was or wasn't -- I wasn't paying a lot of attention when I launched it in this virtual, TBH), but the reality is that if you want to run code, it has to be in a binary format of some kind whether you compile it yourself or it's compiled for you, and even in the case of self-compiling ... it's not like you're going to do a line-by-line audit of the code looking to ensure they're not trying to win an underhanded C contest. At least an AppImage file can be run in a sandbox, and it is a very pleasant way to get a working binary on a Linux host. It didn't require root privileges to install or execute (that would have caused raised eyebrows, here).
* Stackedit: Not developed anymore, I've encountered many bugs.
* Typora: It's very good, as a couple of bugs but it's probably the best to me at the moment.
* Ghostwriter: What I'm trying out these days.
Honestly, my problem with Typora (and also with this MedleyText) is that they aren't opensource.
You decide the structure and the files, so you can throw it all in git to make it accessible anywhere.
I've settled on having a permanently open vim buffer in a hidden window. When I press a hotkey it's pulled ontop of any windows I have. I type in a plain ascii pseudo-markdown-org-mode-ish style I've made up over the years but no one else needs to read. Then I hit the same hotkey to hide the window until I need it again.
The biggest thing for me is that it pops up, I brain barf all over the buffer, and then it's gone with no thought on how it's supposed to be formatted or anything. It should be more like playing an instrument than creating good documentation. It can be changed into something presentable later iff I need to. Options and features, while necessary to push your new app, are the antithesis of seamless note taking for me.
So as to your app, the good points are: it's minimalist with a clean UI and native code highlighting. Those are pretty much the base requirements before I'll even consider looking into it, and I'm happy with the large array of supported languages. It looks quite nice and useful in that regard, so kudos! I love that it supports basically every OS -- I'm on Windows and Linux split about 50/50 and too often I'll run into apps that cover MacOS, Android, iOS and Windows. Since I run Linux at home, that's my preference and it a non-starter if it's not supported.
Unfortunately, for me, I can't handle another WYSIWYG editor. I'm done with them. It's not that I don't like formatting -- quite the contrary -- with the amount of note-taking I do day-to-day, I require good formatting. It's that I've never found a WYSIWYG editor that doesn't come with it's own set of F-bombs. I'm not taking my fingers off of the keyboard to hit a button with a mouse and while keyboard shortcuts are fine, I'll still end up highlighting a line, hitting that keyboard shortcut and having the WYSIWYG app decide to apply that formatting in some non-intuitive way (i.e. select a large line with mixed slant/non-slant and pick the slant button -- three choices: slant everything, slant nothing, or reverse slanting).
So I've settled on two technologies for my note-taking: Markdown and git. It just feels right -- it uses a dead simple dialect that allows me to directly indicate my formatting intent within the writing, it's lightweight enough that when viewing it in a terminal, the markup rarely decreases the readability (and sometimes increases it) and combined with a good rendering tool, can make a document format well for in-browser viewing and printing. I currently rely on a combination of Visual Studio Code (with Markdown Enhanced Preview for side-by-side previewing-as-you-type) and plain-old vim with markdown syntax highlighting for note-taking, combined with Keybase Encrypted Git for version management. I've yet to find something superior for me, though this would be pretty close if it simply gave me a Markdown editor with a preview on the side. And I'd really like a better UX than what's offered by grep for searching my notes. I'd love for an easy way to say "find all references to this function in this language" that would rip through my repo and pull out the relevant sections.
Perhaps I'm a bad example being so particular, but I've tried so many note taking apps -- online from Atlassian's Confluence (which I personally hate) to semi-online/offline markdown editors and things like one-note/evernote. For the most part, the major features of those applications are overshadowed by the poor experience of actually taking notes[1].
[0] I'm not a university student -- it's mostly for my job, which lately has consisted of being pulled into projects that have hit a wall to do code analysis and large-scale re-architecture. With that comes a lot of read-and-explain work both for myself and for my clients. Like most of you, I effortlessly type at about the speed people talk, so it keeping a running log comes easily. I also speed-read (not the gimmicky eyeball exercises but the old-school skimming and scanning) and practice a form of study that involves racing through material while typing notes, organizing said notes and re-reading 3-5 times to maximize extracting information, so on a good weekend, I'd type up several thousand lines of raw notes.
[1] And I'm not one to "web clip" -- if the blog...