One of my issues at the moment is cross managing different workstreams particularly with personal projects which are more in the "if I have time category".
Literally what I use virtual desktops to solve
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
One of my issues at the moment is cross managing different workstreams particularly with personal projects which are more in the "if I have time category".
Literally what I use virtual desktops to solve
That and using multiple instances of the browser instead of one instance with many tabs helped me a lot. If i have to switch tasks i go to a new workspace and only open the software related to that task there. Once I'm done i just close everything in the workspace and move back to the previous one that is the same way it was before i switch.
Kde activities should suit this well since it's integrated to the level of the file viewer.
emacs org-mode
This is the way.
Nothing comes even close. I just wish there was a distributed / mobile-enabled way to use org-mode. I guess there exists some project, but running full emacs org-mode mobile is hardly usable.
I got acceptable results with org-roam cooperating with logseq. It took some fiddling with org IDs, config and a bit of elisp, but it's stable enough for me.
I use a variety of FOSS tools for both personal and work productivity.
For personal I use:
For work use:
Update 1: Fixed Nomie link Update 2: added waistline and liftosaur since I had forgotten Update 3: added Inkscape
As a programmer most of my utilities are CLI oriented.
zsh
fzf (integrated into zsh, improves reverse search, killing processes and more)
zoxide - for quicker navigation into folders I visit often
Other programs I use from time to time: jq
, btop
, bat
.
Flameshot - best screenshotting tool for linux (and also windows)
Redshift/Gammashift - blue light filter
ddccontrol - controlling monitor brightness and contrast without having to fiddle with buttons
Last but not least my Awesome WM (tiling) config - makes working with multiple windows/desktops so easy.
I'm running a few on my NAS:
Taiga to manage projects. It's as easy and pleasant to use as Trello, but with velocity/burndown charts and the whole "agile" thing, but you can also turn parts of it on and off (per project even).
Trilium completely cured me of messy note-taking habits, simply by winning on the convenience side. I was firmly in the "folder tree of markdown documents" and "my Sublime Text tabs of random notes have no number" camp before.
I'm considering Habitica which lets you set up rewards and achievements for your real life (i.e. apply addictive reward/progress loop from video games to motivate your real self to do things). Also Wger for exercise tracking, but I'm not sure they're the right thing for my ticket/tracking-averse self (I wish there was something that covered the whole MyFitnessPal/FitDay and the whole Polar Personal Trainer/Garmin Connect side, but FOSS and self-hosted).
For leisure, I also run Stash (it bills itself as an organizer for your porn library, but it's really good for any kind of clips), Jellyfin for my music and movies and currently both Mango and Kavita for books and comics.
Try out a tiling wm (i use i3/sway) they are much easier to focus in than a regular de
selfhosted searchengine . i see zero reason not to.
Please elaborate, I've been interested in this for awhile - what do you use/recommend for someone who's new?
I have found Kate to be very capable with python and rust. With Sessions I can also have my own set of notes in markdown. The plugins are plentiful and git integration is built in.
fkin love kate
Many have already mentioned Obsidian, I too ventured to it from Joplin and couldn't be happier.
Other (FOSS) tools I use for productivity... GUI tools:
CLI tools:
Just because the phrasing of this post implies Obsidian is OSS, just FYI to others, it isn't 😢
Also +1 for Vikunja! 👍
My biggest productivity booster is tmux. I constantly ssh into my pc to continue my work. I even restart my window manager sometimes if I wanna play games or something, but tmux is always there in the background. And being able to get up, go to my living room, open my laptop and continue the work I was doing on my pc has definitely saved me from a few mental blocks.
My ssh config has RemoteCommand=/usr/bin/tmux -u new-session -A -s laptop
for Host *
Zettlr for technical writing into any format.
Obsidian for a second brain based on the molecular notes method. And yes, I've tried all of the FOSS alternatives. None are ready to replace Obsidian yet.
Wallabag for saving resources offline for easy and permanent reference.
Lunarvim for actually sitting down to work instead of fiddling with and optimizing my setup.
I'm with you on obsidian. Logseq comes close, but the app falls a bit short for me as of yet.
I haven't tried Obsidian, but I use Logseq all the time. What do you think is holding Logseq back? I'm just curious.
I know for me the mobile app lacks some polish and it lacks plugins, which is annoying.
I use Gnome as my main DE, so I use the Pop shell for automatic window tiling. It's not being actively maintained anymore while Pop works on their new DE, but it still works pretty great. I have my eye on Veshell which is an upcoming DE from the guy who made the Material Shell overhaul for Gnome. It's a significant change to the UX compared to any other DEs I've tried.
My main productivity work is making vector files for a laser cutter, so I use a combination of Inkscape and Lightburn (not FOSS) for that. I also use Openscad and Prusa Slicer for making various repair parts, but that's not usually paying work.
On the terminal side I prefer fish and kakoune. Kakoune's changes to the vim/neovim keybinds are a lot more intuitive and easier to learn imo, but come with the obvious downside of learning something less universally useful than the vim keybinds.
For keeping track of tasks on my projects i use todo txt. For each of my projects will drop a file named todo.txt in the root. each line is a task, and i order them based on priority. I can walk away from it and when i start working on the project again, i have an simple way to see the list of tasks i have laid out for this project.
I personally find it less useful to see the "big picture" of all tasks, and this lets me focus on the details of my projects without forcing a bunch of structure.
python i automated a ton of repeatative and boring tasks. made my work life super easy. made some tools for my manager to harvest all drawings for a user specified product. sky is the limit. well until you type import cosmos /s
Zotero and logseq
I capture all my predictable work items in icalendar-encoded files
that I mostly author by hand in emacs. I use evolution
for a
conventional calendar view on my computer. I adb push
to my phone
and use icsx5 to import so I can view
events there as well.
I've also been working on a
project to produce a
printable view that's reasonably mature at this point. It accepts
VEVENT
, VJOURNAL
, and VTODO
entries and groups them by day,
month, or year. Todo items are rendered as lists so I have a little
circle to fill in when I've completed the work. I display both the
title and description for all types, with the description processed as
Markdown. So for instance a VJOURNAL
with a weekly recurrence, a
title like "This Week", and a description like * \n* \n
will appear
every week in the printout as a blank list for jotting down two items
not captured in my calendars.
I've been using the daily grouping so far to produce a weekly
"checklist". Every few weeks or so I hack on my RRULE
s based on
what's working for me. For instance I bake a loaf of sourdough every
week so I have events for feeding the starter, mixing the dough, then
baking. I set each of those to recur on subsequent days of the week so
they all magically fall into place then I shifted the start days
around until I found my ideal baking day. I also have an entry for
changing the bed sheets every week, and another for washing the
washing machine scheduled for the same day of week at a slower
frequency. Capturing everything that needs to be done (with some
editorializing on granularity) and evolving their recurrences is the
fundamental way I synchronize independent work, leaning on icalendar
for expressiveness like this recurrence for planting the garden on the
Saturday before Memorial Day weekend:
RRULE:FREQ=YEARLY;BYMONTH=5;BYDAY=SA;BYMONTHDAY=16,17,18,19,20,21,22
The workflow doesn't require the bespoke tooling since I can see all my maintenance items alongside my meetings using any application that can render icalendar. That was key to getting moving, but having the print out lets me feel more productive. I knock out all the routine stuff throughout the day and find that "if I have time" becomes "what do I want to do with this time".
There are tools in the project for generating events for solstices and
equinoxes as well as sunrises and sunsets. I include all of those in
my printed daily view but exclude the sunrises and sunsets from
evolution
by capturing them in separate files. I also separate
routine/noisy tasks like "change the bed sheets" from holidays and
operational work like "plant the garden" or "change the water filters"
so those become more visible.
Sway really sped things up for me. Also using ble.sh helps with bash. Then custom scripts and aliases in bashrc.
I ended up using spreadsheets for keeping track of todos and habits. LibreOffice Calc is the obvious solution for FOSS, though I am using Googles Spreadsheet for cloud syncing and the Android/iPhone apps. If I get trouble with Google I will just copy and paste to LibreOffice and I am good.
For notes, IMHO nothing beats a good directory structure/layout and markdown. (Sorry, org-mode guys. :-P )
Neovim and markdown
Logseq may help?
I keep a few entries in the content page, for each project, and in each page I got an updated todo list.
You can also capture everything in the same place, journal style, then link it back from the content pages. I find it very powerful.
And it's FOSS. And md/filesystem based, so I just sync it between devices with git.
I make use of flowtime, which is an timer app similar to pomodoro but with a smarter system for scheduling breaks. Instead of having a set time to go on break you can go on break anytime, and the app calculates a good break time. It also shows your working statistics, which is quite cool to see.
I use emacs, Denote, and markdown-mode to keep a loose Zettlekasten archive of notes.
Have a look at Super Productivity it is a todo list app with projects, time tracking, break time reminder. It is completely offline, no registration required.
Nextcloud Calendar is where I'm blocking out my time. I use a proprietary task app with a Linux client because tasks.org/former Astrid/nextcloud tasks isn't quite there yet... for me. If I was creating a system to keep me on track today, I would center the whole thing on Nextcloud. The one thing I despise about nextcloud is how it handled locales and formats. There is no easy way to move to YYYY-MM-DD and HH-DD without messing up other stuff like day of the week captions language. The thing I love about nextcloud is how it doesn't spam you with garbage recommendations and clutter and such like Outlook.