Considering the fact that this is a web based solution for my personal notes, I would like to know how the actual content is stored in the backend: plaintext, encrypted, ...? I couldn't find anything about it.

What advantage does this solution give me, compared to, say, simple local text files (maybe versioned with git) and a Makefile, which runs a markdown processor on them to build the actual output? (Considering I actually want the markdown formatting).
With this setup I'm not bound to a web app; I have my raw texts locally, but are also able to use git if I want people to collaborate. Furthermore I'm able to use the tools I already know, like grep, to search and manipulate those files.

Currently notes are stored plaintext in a Heroku PostgreSQL database. All communication between the frontend notes and the database is encrypted, as is all communication over the API. I've put encryption on my todo list, though I'm not sure how it'll work.

The main advantage is that you don't have to deal with any of that stuff to keep some simple text documents backed up and always available.

Edit: Heroku PostgreSQL has PGCrypto built in. It's now on the top of the todo list. I'll keep you posted.

Why would I want to send anybody step by step instructions to reproduce everything I develop? Anybody who actually needs that information already has it, and barring any debilitating head injuries, keeping up with myself shouldn't ever become too difficult. I could just use a text editor, and it wouldn't require learning a whole new set of syntax and semmantics either.

This seems like a solution looking for a problem. In fact, the solution isn't very good and the problem is nonexistent.

I'm not sure I understand. Are you contesting the idea of keeping a programming journal, or the idea of using a 3rd party service for it? With the command line interface you can use your text editor and you don't necessarily have to use Markdown.

Honestly, keeping journals with Marginalia is probably the 2nd or 3rd most common use case for me. The single most common thing I do with it is to get random ideas out of my head that come out of nowhere when I'm not anywhere near a computer. I specifically built it so I could send emails to it to create and append to notes.

Local storage or passkey encrypted command line programming journals sounds cool, though, supposing a simple interface, but for me comments still do everything blogging doesn't. I'd hate for somebody to destroy their machine while trying to reproduce something I have half finished, even in the cases where it will be CC licensed in the end.

Yes, that would definitely make me more comfortable. Just line-by-line text in an encrypted file secured with a key I provide would be enough. I keep secure, but I'm not the DoD or anything (lol). If somebody wanted my work bad enough to brute force a strong key, chances are they could get it anyway.

It seems rather complex to support, especially with a command line client and REST and email APIs that don't run javascript. To be clear, your data isn't tied to Marginalia. There's an export button on the main page that will give you a zip file of every version of every note you've put in.

Trying to keep everything in your head is great until you start working on non-trivial projects. Since you're worried about someone stealing your ideas/projects you either are no where near that stage or way past it.

Is a focus on NP-Complete class problems trivial? This isn't rhetorical; I'm kind of hoping you say yes (as is a lot of the world -- no pressure).

In regard to worrying about somebody stealing, that is a trivial problem. In the Army they say that there's only one thief and he believes that everything he takes is a gift because it is left unsecured.

it's difficult enough that anyone trying to steal it via these means will fail anyhow.

That depends upon a lot of assumptions about the quality of notes. If I stripped everything from my pre-release source files but the comments, then a novice programmer could proproduce what is missing even if they don't fully follow what is going on.

So you work on a non-trivial NP-Complete problem set. You document everything about it in the comments to the point that it could be fully recreated by a novice. Yet you still don't understand the point of programming journals as they've been discussed recently or the level of detail that you should include in them?

Congrats on the interesting work now if you get a break go read on programming journals more and a) read about what you should be putting in it. then b) decide if you actually need/want one.

NO, I don't agree with the risk inherent in storing my journals unencrypted on third party machines using a tool I neither want nor need that provides no functionality not already better handled by other tools.

I could write a command line program myself to journal append and include encryption. It would be a trivial problem. If the time comes when I need one, I'll spend the hour (tops) to make it myself. If a program comes out that offers something non-trivial, such as perhaps a live illustration of program flow, I'll be on board.

Ok so you neither want nor need this tool. Why are you commenting and complaining about it? Did you just want to drop the crypto keyword or something? Much like you dropped NP-Complete in a response that made no sense to the question asked?

Yeah, I don't see anything in the post that suggests using a database actually improves the tool, let alone a remote DB... but I've kept "lab notebooks" mixed in with the source for years, the main trick is a single keystroke to drop in author + timestamp. Version control does the rest.

Marginalia has a search but it's admittedly not as powerful as grep. It's something that I'll probably be addressing at some point. Currently it's implemented as some full-text tsearch indexes on the database table.

Yeah. I think the main point is that I want text files to thumb through, and I want them fully under my control. Every other app I've used has eventually been abandoned or f'ed up in some way. Text files aren't perfect, but they've always been there for me.

Sure, that makes sense. I guess one way to think about it is Marginalia is text files but with an API. Of course, you trade off that they're not under your control, but with the export button you can get out whenever and with the cli you're still using the same editor and pager you're used to, and you don't have to worry about sync or backup.