I'm avid of content curation using RSS feeds. Let me share some of my tips here and some code. This is a living document so please come back for new tips π and explore my other articles on this topic.
Some of those tips rely on Userscripts which are snippets of code executed automatically on web pages, and usually it's very handy to customize your navigation. I'm using the Custom JavaScript block in Miniflux Settings. But some scripts won't work because of reliance on external resources, and in that case I'm using Tampermonkey for special cases that require loading external resources (think CSP & co).
Filter categories (remove empty ones) using Custom JavaScript block
There is by default no distinction between categories with or without content, and it can be annoying. I made a user script to remove categories with no content to read.
Before applying the script, we have some categories, including one with (0) unread entries.
After
The category with (0) unread entries is hidden.
Feed organizer - using Tampermonkey
This one is for grouping together all feed entries by feed/author in the main on unread, read, and starred pages. I needed this one because by default, in unread tab, the feed entries are mixed all together and I often wanna consume content per feed/author and not in chronological order.
Distinct boring from interesting feeds thanks to objective ranking - with Custom JavaScript in global settings
When opening the "Show all entries" view of a feed, this trick will show you if you shall keep this feed or not. The classification is based on the ratio of starred entries vs total. In this case, clearly, my assistant tells me it's quite π₯± boring. Other values are: Thinking π (in case we lack data), Interesting π (we star a lot of items), Thinking π€ (in case we stared at least some entries). Feel free to make it yours and customize the behavior!
This is a trick that works well with the majority of feeds so you can fetch the whole article content in your reader instead of just the excerpt.
Filter feed entries by title / content
I've customize the feed settings to exclude specific keywords, and on top of this I've also global rules which apply to all feeds, for excluding feed entries when keywords are found in their content or title. This makes it easy to exclude clickbait uninteresting or depressing content π
In this case I follow news with heavy metal album releases and I'm excluding specific genre like Death Metal. I'm also abusing the feature to avoid being spammed with recurrent news like Olympic games (Paris 2024). Finally there are already many reasons for me to be anxious, and I do not need more. The last rule saves me from the useless negative news. I keep fine tuning the list and I could improve this by including terms from public blacklists, like this.
I've been using a paid subscription to ChatGPT Plus since May 2023 and I'm still happy with the usage. It's one of those tools you have to master to get most of the time spent with it. There are a lot of benefits to use it, of course there are also negative aspects and bugs. Some of them can be mitigated, and that's the purpose of the current post.
Disclaimer / Context of use π§Ύ
I'm ChatGPT mostly for scripts and each conversation is focused on singular topics, i.e single-file codebases if possible.
I don't use Open API Keys and I'm not interested to use OpenAI directly. I've been on a paid plan for OpenAI and was charged way too much for my needs. I advise anyone to use ChatGPT Plus which remain to this day worth it and good enough both for personal and professional.
This article was not written nor reviewed by AI/ChatGPT.
Lessons learned - Do β
Shorten your expectations. Timebox your interactions with ChatGPT. If it takes longer than you expect to reach a solution, stop and do your homework instead, debugging yourself or simplify the problem to solve or take a break...
Test after each change. ChatGPT will make you lose faith by repeating the same mistakes, by removing sensitive code, by providing incomplete solutions, always verify.
Before running or committing anything generated by ChatGPT, always compare with the previous situation you had. Git diff the result of changes. If you have any doubt about a specific change, submit the git diff to ChatGPT for review and ask for explanations while also explaining why you have doubt (failing tests, errors at runtime, weird code removal, ...).
Tell ChatGPT to always decouple code in functions.
Instruct to use minimalist code, and avoid comments in code, respect your specific style (if you provide examples), instruct to write the code that takes the least amount of lines and space and to avoid long functions.
Keep one conversation per context / type of problem / flow. Once done with the problem, validate the solution (test!), commit locally, and delete the conversation to keep your Chat history clean.
Try to limit ChatGPT's attention to one single file or one single function at a time, to improve its speed and accuracy. I've experienced inconsistencies and code regressions when expecting ChatGPT to work with too many files and too many changes at once on too many files, as then ChatGPT.
If you have lot of work you expect ChatGPT to perform for you, be patient and request one change at a time, then review the code diff and then the outcome, and only if it's validated, commit and move to the next step. ChatGPT sucks at multitasking. Keep the rest of your TODO list somewhere else to keep track of what remains to be requested from ChatGPT.
You will be given better results if your tech stack relies on popular libraries and programming languages so keep that in mind and be prepared to deal with more mistakes if you pick niche programming languages.
Ask to only output the code that require change, e.g add this at the end of your prompt : just output the function(s) needing change
Ask to not change the existing comments, login logic, variables values in the code that is not impacted by the change.
If you really want to multitask, open multiple ChatGPT sessions (browser tabs) in parallel, each focused on distinct changes, so you can multitask while ChatGPT stays focused on single tasks π
One change at a time. If ChatGPT keeps making error, step back, restart from to the latest stable version of your code, and ask to make minimal changes, step by step, while you validate each increment.
When happy with your changes, ask ChatGPT to improve its performance or clean the code or keep it minimal.
When debugging your code with ChatGPT, provide stack traces, inputs, outputs and even the copy of the code that seems buggy (based on the stack trace).
Be suspicious if ChatGPT changes your code way too much or introduce weird changes to dependencies. Always review, check, investigate.
ChatGPT will likely be interesting to use only for writing very small and boring scripts to batch automate some tasks. But you are responsible for the whole, do not forget that. And test. And understand the code. Make it easy to understand and debug. If you can't explain it, rewrite.
ChatGPT could be good at documenting tasks or at writing tests, but for working on complex code it will mostly get 70% of the results then will suck your time and patience.
Lessons learned - Avoid β
Don't trust ChatGPT outputs. OpenAI is known for dreaming and also tends to complexify solutions to simple problems.
Don't run nor commit anything generated by ChatGPT that you don't understand and always compare ChatGPT's solution with what you had before.
Don't ask too many improvements or bug fixes at once or be prepared to deal with many new errors and regressions.
Don't keep conversations for too long, as all the initial context will likely be forgotten about by ChatGPT and you will suffer, also it will cause a lot of scrolling and augment the size of the web page which will be slower to load and will likely crash your browser tab at some point.
Don't switch context / files / problems in the same conversation. It's a waste of time and you will suffer later when trying to source specific content or make sense of anything.
Don't share secrets/passwords with ChatGPT.
Don't waste your time when the LLM seems confused or unable to solve your problem. Either reshape your problem statement or restart from the latest known stable state, ideally in a new conversation. Be confident in your own abilities. Don't be too dependent on any LLM. I once wasted a whole evening and night trying to get ChatGPT to write the solution for me then trying to use it to fix the problems it caused, I was too lazy to code something by myself from the start.
Don't expect ChatGPT to be as efficient on big codebases and complex problems as it is on small scripts and simple problems. So use it more often for the latter and keep the fun of solving the big problems yourself.
Don't expect ChatGPT to understand a single thing you do nor why he generates his code. it's a dumb machine without creativity built in. It has to be treated as such and with caution.
When trying to help you fixing problems caused by its previous solutions, ChatGPT may enter and endless loop of replacing one solution with another, without understanding the context. Before copy pasting anything from ChatGPT, make your own investigation and check the logs of the apps that do not behave as expected, before touching the code. If you find interesting logs, then provide those to ChatGPT or make your own investigation. Do not depend on ChatGPT for too much grunt and research work. You are better than that.
Don't expect ChatGPT to run well and fast on huge bloated scripts. That should encourage you to decouple your code into functions and modules and specialized files/modules/components/...
ChatGPT could be used to address the fact that solving some problems is costly in term of engineering. This XKCD meme below should be likely made obsolete if LLMs are used to provide the programs to automate the tasks. For instance when faced with some painful work, I rather use LLM to write me a script to tackle the task. It will be faster than me on some occasions, which itself help removing the need for manual work for tedious tasks, also help removing the need to prompt LLM in the future for that same task, since the script is already provided.
If you lose focus on the ChatGPT session in your browser, it's likely the calculation process will interrupt.
ChatGPT seems stuck at generating the output ? Refreshing the page might be enough, in other cases ChatGPT might automatically continue the generation or will show a button you can hit to force this action.
I recommend trying ollama so you can work offline and without feeding all your sensitive data into OpenAI.
I hate managing my mail inbox, and I guess I'm not the only one here. Usually my inbox is for bills, paperwork, to-dos, and so on and anyway most of the items will require me to lose time at something I don't value.
Anyway I'm trying to keep it tidy and nice to open and here are some of the habits I'm using to manage the load of documents.
Automate
Most of the emails with attachment and invoice somewhere in the object/title and sent to my accounting software running in the clouds. Other emails can just be automatically archived under some conditions.
Label everything
This is likely nothing new, but getting the discipline to achieve this in the long run is what matters. In Gmail I often use the "Filter similar items" to automatically label similar emails.
Labeling alone is a nice trick which gets even more powerful with colors and emojis.
When I added this new label for dealing with my automated research of places, I've been creating this "housing" label with a π οΈ emoji, and placed it under the ποΈ projects label for now.
Colorize
Green for good things, orange for what things that can drain money or energy. For instance paid invoices and refund are in green and unpaid invoices, fines, taxes are in orange/red.
With those labels and colors, because I rely a lot on visual memory, I can get a good sense of my priorities without having to spend much time in my Inbox by reading emails titles.
Delete handled items
Once something is done, there is no point to keep it nor archive it, unless it's something I'm really too afraid to lose for now, then I can archive it so the email can be found later.
Delegate
My time is not more valuable than other people time, but I do value some things more than others, and I try to focus on what matters for me and delegate other emails if possible, for instance I ignore some emails sent to our company because I know my partner handles those specific ones. If I'm not sure my partner is dealing with something, I'm just forwarding the email with a communication for her.
Unsubscribe
I almost forgot that must-know trick, which is quite underrated and no so commonly used among family members, which is a pity. Whenever you receive recurrent emails you have no time to read, just unsubscribe from them, even if they make it difficult sometimes.
No newsletter please
I prefer to get news by RSS on my Miniflux instance, so everything that can be turned to a RSS feed will be, and every newsletter that does not propose a RSS feed, I'll convert it to a RSS feed via https://kill-the-newsletter.com/, and if the blog I want to subscribe to is banning such automation, I'll use RSS-Bridge to generate a RSS feed by scrapping the content of their blog.
Snooze
Sometimes there is nothing you can do with an email, yet. For instance it's the tracking number of a delivery package, and the package won't be there before 3 days. Or it's a very detailed email for your hotel or event booking for in a few months in the future. In such cases I just snooze such emails for a future date.
Dark mode
I try to make my emails boring and so reduce the anxiety they cause me, and for this Gmail proposes a Dark mode. If that's not enough you can also try some extensions that turn Grayscale / Monochrome mode on. For instance on Brave (Chrome based browser) I'm using this one below.
I'm regularly battling to browse the web like before and maintain Inbox Zero for my work and personal mailboxes and I have to say it's not a fun game. Especially when some crappy tactics at are play like below.
Let's start a collection with the patterns I criticize and update this post regularly with findings.
CloudFlare (via RYM / rateyourmusic.com and many others)
Every few clicks when browsing their website with my paid account, I'm facing this "human status check" which is a big annoyance. I've informed them it's a pain, especially every few clicks and as a subscribed user. They promise their developers are working on it. We will see...
Elastic.co
First example is Elastic (elastic.co), with a work email I never asked for, inviting me to a local event. The email is long and I don't care about the Pizza party at all which is the first thing they mention in their agenda. I want to stop receiving such emails.
Looking at the bottom of their email, I notice a first unsubscribe button.
It redirects to a subscription page... (see below). Clever... !
When looking more closely, there is a second unsubscribe button, very hard to see due to the lack of contrast.
Who has then time to fill their unsubscribe form ? Not every weirdo. But that's it seems the effort which is due just for allowing me to regain a little more quiet in my mailbox. So now you know.
Homebrew (Mac)
You use brew install to run a small utility binary and ... you scroll through 630 lines of output and recompilation to see if your utility is finally there. WHY. SO. MUCH. OUTPUT.
Medium
No, you shall not ask my private data show me some HTML on the web. Well tried but nope.
I regularly have to play a few puzzles successively. In average 2 or 5. If you fail, you start over. It's very time consuming.
OrbStack updates
Leave me develop please.
RateYourMusic / Sonemic
This ones make me sad as RYM belongs to my favorite bookmarks. We are punished with this "prove you are human" form every few clicks. So annoying.
And also, from time to time.... Thank you CloudFlare.
NodeBB
Preventing users from contributing a forum for some arbitrary period is quite stupid especially if done AFTER you accept their account registration.
Once the waiting period is completed, the post is queued. This is better, yet annoying of course.
OVH
After months with Contabo (VPS), I decided it was time to close my domain and hosting subscriptions managed at OVH. I disabled the automated renewal a few weeks ago, and managed to setup redirects on my old websites. My subscriptions should be cancelled automatically but I can't wait and I want to get that out of my mind, so I want to force a manual cancellation.
To my surprise, it took me a lot of emails and exchanges with support. I understand the security measures and no one would like its accounts and services revoked by accident.
The problem is mostly the poor UX and customer support for getting this done. Let dig deeper.
When trying to cancel any service, I just get error without explanation nor resolution steps.
Later did I find emails from OVH asking me to confirm my revocation, so I could at least complete some of the steps, but it required me to leave my workflow and switch from my admin panel to emails, then manage those emails, then double check my admin panels for updates of services statuses...
In the end I opened a ticket to OVH support asking them to delete my account and the related services. They closed the ticket asking me to close my account only after services are revoked, which let me again with an unresolved solution.
I had to reopen the ticket and provide them the evidence above so they know I can't close some of my services. Closing a customer complaint on user's behalf without asking feedback is probably a tactic for improving their KPIs, but it ultimately tell they consider their customers to be nothing more than complainers with no real problem to be solved. This also tell the culture of OVH has diverged from customer first. No wonder I'm leaving you, OVH, as I'm expecting more from a service provider.
This morning Saturday I spent hours scrolling in my RSS feeds, napalm mode, marking tons of content as won't ever read. This made me wanna share my struggles with FOMO and attempts to fix.
Cap Limits
Years ago, a colleague was telling me he left Spotify for Apple Music because of the 10,000 song limit. I had no need of having to keep this much music at the same time. In fact, I do often listen to the same songs, even if the songs change. I regularly delete stuff from my library and make room for new ones.
But a decade ago I was in his shoes, collecting my likes and dislikes on TasteKid (wikiless) and making sure all my favorites TV shows, movie, book, comics, music bands were saved, so TasteKid would recommend me cool stuff. Until it went crazy. I complained to support and they told me I hit a cap limit and they cannot recommend more content beyond that cap limit. Shit. It feels terrible as a user to be punished by your product for using it too well.
I had an account on SensCritique (wikiless) until recent years and I contributed a lot to their knowledge base, lists of contents, until they block my account because I was not making perfect submissions and they had to fix some of them. Is that a reason to block me ? I politely asked for unblocking my account but they insisted the ban should be of one month. I requested a full export of my data (thank you GDPR) then deleted my account and contributions and never went back.
It's painful to contribute the internet and be banned because of imperfection. It used to be a more welcoming place. I fear to depend on external services because of this kind of politics or cap limit. Anyway, that's why I also self host my content and services so I cannot blame anyone else for failures.
Brain, you kill me
When I find an article I like, I often fall in the trap of opening all the cross linked articles. Which make me open too many tabs that I really don't have much time to browse right now so I save them for later in Shaarli Wallabag. I had to install Tab Limiter (browser extension for Chrome) and force myself to a limit of 10-20 tabs per window/profile but it's hard when you have ADHD. I did that after reading about people with similar issues (Reddit - It seems impossible to get rid of my 1000 tabs habit).
I recently stopped bookmarking stuff in my Git repository (or at least slowing it down), I instead switched to saving links into Shaarli, Tapas, Wallabag and Obsidian daily notes, telling myself lies like bookmarking is worth it. I was regularly feeling overwhelmed with newsletter and FOMO so I opted for RSS feeds that curate content from my favorite authors and publishers but that brings its own issues as I exceed my capacity of how much content I'm capable of curating on a given day. Curating content and links is not suitable in 2024 and something better is needed. Recently I did the math and realized that from Shaarli, Wallabag, Gitea and others in total I have recently collected 11K links among my main bookmarking places. If I dig deeper and go collect links from my Twitter archives, my 10 years old bookmarks and links from my Obsidian notes, it sums to 20K. That's a big number I really need to cut into 1K maximum. Which I'm trying at /links.
Brain, you kill them
No tool will solve it; it's not a tool issue. One just can't digest so much content. If it's too late and you already succumbed to opening 10K tabs and notes and windows and you have started too many "watch later" challenges, let me present your friend, Gimli !
Imagine the open tabs, newsfeeds, information sources, lists, open windows, unfinished stuff, etc as the Ring used by Sauron in LOTR. Then act like Gimli, throw an axe at the problem. If you are strong enough, you can just quickly solve this.
It's really satisfying to delete stuff and decide never to read them. Rather than bookmark them for later and never read them, just delete stuff. Delete lines from your codebase. Delete branches of unfinished work. Close tabs. Delete "might be useful later" apps from your mobile phone. Uninstall browser extensions you rarely use. Archive emails that pollute your Inbox. Do you really need those daily emails from 20 newsletters ? Do you ever read them ? Do you really need to read the whole Hacker News ? You know there exist summaries ? Do you really need to read that whole article ? There exist ChatGPT summarizers that work in your browser, or you could simply jump to the article's comments section or look if any HN user already commented on that article. If you prefer to rely on your own judgment, just have a look at the intro and conclusion of any article you are about to read, and from there decide if you are interested to read more.
You think you need to bookmark everything and organize them, but most of those websites will be gone soon or later or will be behind paywalls. Save the few that really matter to you, using SingleFile extension for instance, if possible on your storage as we don't know if search engines or archiving websites will keep caching those pages nor if they will still exist in a few years from now.
Most of the long articles I've ever read could be summarized with a simple meme (image), they really are a perfect fit for the purpose of sharing a concept. That's also why webcomics are so powerful, like XKCD, it's minimalist and speaks to everyone. It might be the same for tons of those videos, podcasts you wanna consume. If you are regularly battling against your inbox, newsfeeds etc, it's time to use that axe and unsubscribe from this spam which is one of my productivity tricks, look here for more.
Look busy, be free
You have a limited time, your body has its own constraints and you can't grow new body parts to extend your capacity. You don't need to do more, but probably to do less and be more focused. For this, you need to give yourself more time. Think again about the cap limits. In past years, people have migrated away from Facebook, nowadays they migrate away from Twitter. Tools don't last. Social networks don't last. Content don't last. Instead old content disappear to make room for better old ones. Hopefully. There are websites other than Facebook and Instagram. Not overloaded with ads. Interesting and quieter ones. And we definitely need more calm while social networks are keeping us busy, VOD platforms push infinite content to us and email inboxes never feel empty. And we also need to replace most of the too popular platforms that succumbed to enshittification (wikiless).
You don't need to track 300 RSS feeds, 1/10 of that should suffice. While I write this, I went from 330 RSS feeds to 270 in about a week. I've noticed I'm really super excited about the content from maybe 5 of them, and enthusiastic/curious about maybe 25 RSS feeds in total. Speaking of that, I'm sharing a subset of those RSS feeds in my /links page.
You don't need to be present on every social media platform, 1 or 2 should suffice. Or none. After leaving Twitter and LinkedIn, I was mostly present on Mastodon (which I'm leaving too by March 2024) and I deactivated Instagram but I read every publication of my partner thanks to Instagram feeds provided by Picuki. Some websites allow you to easily backup your data before closing your account, I do keep backups in Dropbox. If not ready to close those accounts, deactivate the ones that pollute you and see if you can live a while without spying on random strangers and friends on internet. Because yes, maybe you shouldn't maintain a false sense of friendship with every influencer.
For similar reasons, I tend to archive WhatsApp conversations and unsubscribe from social accounts from time to time. If I don't recall why I follow an account or why the fuck I'm in this WhatsApp group, I better leaving it. It can be done in a polite manner of course, but the idea is to focus on your wellbeing.
No need for 10K songs on Spotify, I stick to 2K for a few years and in only a few days, I went to 1K, then 100 songs, then 30 songs. They come and go. No need to follow hundred of accounts, if a ten should suffice.
I started to use the axe in my 5K bookmarks and remove all that is not absolutely needed. It's easy once you are inspired by some tricks.
Numbers have spoken
Kill, destroy, eliminate, declutter, triage !
If triage is difficult, use the axe and destroy the whole problem. I've quit several social platforms (LinkedIn, Twitter, Instagram, Facebook, daily.dev, Discord, ...) and then the FOMO goes away completely as well as the anxiety caused by having to keep up with tons of relationships on those social media. Dunbar's number (wikiless) explains you cannot keep up with so many people on so many platforms. The most cited number is 150, personally I put it way lower for me, maybe 1/5 or 1/10 of it.
In a former life, I was telling my overworking colleagues about making time for things that matter to you. They baffled. The thing is it's not because you work 14 hours a day you will be more productive than someone doing deep work for about 2 hours a day. Sometimes all is required to fix a problem is not more work but a good nap / break.
Sometimes you really need to make time, it can imply some arrangement with your family or to setup unconventional work schedules but if that allows you to make something you have fun doing, why not ? When you are done with that, other people will surely react but who cares ?
But this was helpful
In order to do things useful for you and joyful for you, no need to chase the infinite self optimization which is toxic in itself and make you feel never achieving anything. You don't need to be 1% every day. It's difficult to improve every day and you will feel guilty by not reaching the goal. Instead, try to stay away from bad habits. Instead of focusing on developing new ones constantly, develop anti habits to kill the bad ones. Be also very wary of the self development guides that exploit your guilt for their business. You can chase infinite advices from random internet places or closed ones, but that's also something to be critical of.
Ironically, you should be also wary of this very article you read. I'm writing it for myself first, because it helps me clarify my mind. It's good if it helps you, but it's first and mainly targeted at me, like most influencers and authors write first for themselves or at least based on their own experience. In general, be wary of advice.
All content is not equal and because some advice exists does not mean it applies to you. So don't feel guilty of not following all trends and coaches. You can also make your own adventure.
Is it the end ?
Hopefully if you get me right, it's just the beginning, the start of living your life and stop letting everyone else's agenda control yours. There is also no urge to act now. First, slow down. Don't feel guilty of doing less, saying no, relax in your bed. If you reduce the noise and negativity, don't immediately go compensate with new projects. If you don't feel energized to start decluttering, at least take a break. Think about it. When was the last time you took a day off or had fun starting a useless project ? Do you have time for your hobbies ? Do you feel tired or exhausted ?