Don't worry, I've got this???

Share on:

Applications seem to want to hide everything from you so you only dwell on what they are offering, but in the end you need to be responsible for everything no matter what they tell you.

Complexity

The Apple view of the world is that the user needs to view the computer the same way they view a toaster or microwave oven. Provide an illusion of control, but under the covers the company really wants to control the experience. Sure, that’s how you make sure the consumer has the best chance of the experience you are selling. The problem is for appliances I’m not buying an experience, I’m buying a tool that I have rely on.

This is why I don’t have iPhones or iPads, and it is why I’m always looking to minimize my reliance on Android. Paying $1000 (give or take a few thousand) I expect something I can use any way I WANT. I’ve written about this a lot in the past and I will probably write a lot about it in the future.

Notes

Today I sat down to look at note taking options. Right now I’m using Fossil for this purpose. It’s not optimal, but it works. I can throw data sheets and images into the repo and refer to them. The diagramming is nice as is the complete log of changes. Using it is a little clunky as it was intended to track code not my random thoughts. To that end I was looking at what the options were.

One of the things I really like about it is that all the files, notes, images, etc are in one SQLite database file. I know where that file is. I can move it around or burn it to archival grade optical media. The application doesn’t care so long as it knows where that SQLite file is.

Joplin

One of the note taking options that seemed really nice is Joplin. It is open source and designed to handle the range of tasks I was looking for. I downloaded the appimage (Hooray!) and started playing with it. So far so good.

Now where do I save or load notes? No option in the menu or config. It didn’t create a directory anywhere visible until I did a backup. You just load the app and your notes are there. It’s like magic, but like all magic that illusion is hiding something and trying to fool you.

Joplin saves a database in .config and creates a resources directory to just drop files into the same .config directory. Let that sink in. It puts all of your files into one place that is default hidden from the user.

I know if you come from the Apple or mobile world, this is great. It just works and I don’t have to think about it. Fine, go use your glorified toaster. In the mean time some of us have real work to do and this nonsense isn’t going to cut it.

.config

The .config directory in Linux grew out of more applications wanting to store configuration details that the user set and saved. Before it we would have dot files and dot directories for things like Emacs. It works either way and the .config concept does keep things a little cleaner. I don’t mind an application saving a text config file there that I can edit, especially if it lets me choose which one I want to use. That last feature is often called something like “profiles”.

Joplin on the other hand wanted to just treat everything like a configuration. Just stop right there. That is an assumption and forces the user into a box that is going to get cramped really quickly.

Let me give you the first example you may run into. Say you like the application so much you want a work and home version. We can all agree those should be kept separate from each other, but Joplin has already decided that’s not how they want you to use the application. If I want to keep different notebooks for hardware design (copy on my desktop and bench machines) vs martial arts (copy on my desktop and laptop), I’m breaking the mold multiple times.

But what about profiles?

OK, I tried that. It works well in Chrome and Firefox using similar concepts, so why shouldn’t it here also? Joplin though has other ideas. They must think switching profiles is too difficult for their users.

Joplin’s way of switching profiles

It’s kind of hidden, and when you try it you get dialog above. OK, it’s fair that the application has to start with a profile and can’t switch, but this is different. It toggles a switch somewhere in the .config directory. You can’t take notes in 2 profiles at once, or if you can it’s hidden really well.

Maybe it’s too much to ask for

If I could start the application and just point it at a database file I would probably be happy as a clam. I could put that database on a DVD for archival purposes. I could put a different one on a USB drive to carry around. All the configuration could be kept in the database so each one would be fully independent and self contained.

No, instead this application is just going to tell me how I should work. I don’t appreciate that, and I don’t think you should either. Even if the application works exactly how you want it to today, you are locking yourself in to a process that someone else created. It will stifle your ability to think outside of their box.

This application is open source, so it’s not like Apple and mobile experiences where they have welded the hood shut. I can get in and tinker with it if I wanted, but once I’ve seen that the wheels are welded on and the mirrors and seat are welded in place I think I’ll look for a different option.