Why didn't I open source it in the first place? Linux has been by primary driver for more than a decade. I genuinely believe in the philosophy, and have always wanted to give back to the community. The primary reason, probably, was because I was ashamed that I had 90% vibe-coded the app. More than 2 decades of writing software, and my first contribution to FOSS would be AI-generated code? Would it withstand even the most minimal of scrutiny? Would by (unknown) name forever be tarnished? I exaggerate, but only slightly :)
So, yesterday, after a fair bit of trepidation, I changed the github repo visibility to public and put up a announcement on the app's website [1]. I have also submitted the app to F-Droid [2]. As before, I welcome the community's feedback and suggestions!
[0] https://news.ycombinator.com/item?id=46499646 [1] https://donotnotify.com/opensource.html [2] https://gitlab.com/fdroid/rfp/-/issues/3569
-- Anuj Jain
Your concerns are valid but not unique to AI generated code, the same feeling has existed for as long as open source software has existed: is my code good enough, will I just look stupid when people suggest oversights and mistakes?
The fact of the matter is that if you have created software that solves an actual issue, especially if that issue was previously unsolved, you have created something valuable. Making it open source only means that the code is now open to contribution, forks, or other modifications by anyone using it.
The performative idea of open source software being a part of your resume and written only to increase your personal brand is a perversion of what the open source movement originally was about. It's about learning, and you learn by making mistakes, regardless of whether your bad code was written completely from your own brain or from the suggestion of an LLM.
Don't ever be afraid to open source your code, nobody has any right to expect anything from you, and if they do they are just too stupid to understand that free and open code is always a gift, regardless of how bad it is, if it solves a problem for real people.
for notifications specifically, the risky bits would be: what happens if an app sends a notification payload that's malformed or huge, how do you handle permission checks if the notification system process restarts mid-filtering, and whether the filtering rules can be bypassed by crafting notifications with weird mime types or encoded text.
if you wrote tests for those edge cases (or even just thought through them), you're already ahead of 90% of shipped code, vibe-coded or not. the scrutiny you're worried about is actually healthy - peer review catches stuff automated tools miss.
FWIW, I suspect there isn't a single programmer you admire that hasn't looked back on moments in their career and cringed at some of their own code.
In some ways, I think it is the hurdle that Linus overcame as an undergraduate that I admire the most. Just putting it out there. This is code. Look at it. It might not amount to anything, but who dares wins.
DoNotNotify gives granularity and rules (which a specific app may have chosen not to implement).
For example:
"Allow <budget airline app X> to display notifications of gate changes"
"Block <budget airline app X> from displaying advertising notifications"a) bundle everything in one category, from critical notifications without which the app can't fulfill its purpose to "HEY YOU HAVEN'T USED ME IN A DAY, USE ME NOW" spam
b) create a new category for spam every time they feel enough users have turned off the previous one, which is often
It has genuine use-cases such as this DoNotNotify app, but could easily be misused - e.g. malware intercepting a wallet OTP notification and forwarding it to the attacker.
Access to the API is controlled by a specific permission which users have to explicitly enable in "Special app access".
https://developer.android.com/reference/android/service/noti...
My distracted ADHD brain misses event notifications just too often, but with this app, even I my phone is in another room, I get reminded of that meeting, in time.
I created a free and open source set of filters to fix this. Soooo much better.
FilterBox does seem to be superior with an inbuilt offline ML model to filter spam notifications, whilst also having a robust set of heuristic filtering options.
It's also amongst the snazziest apps to use with a design that delights. Best lifetime IAP I made 7+years ago.
FilterBox: https://filterbox.catchingnow.com/ Comparison post: https://www.reddit.com/r/androidapps/comments/hsq7ep/buzzkil...
Thanks for making it open source. I've been wanting something like that for a while, but I'd been putting it off since I didn't want to learn the underpinnings of the notification service.
And, yes, some people will criticise code quality but (a) if those people aren’t actively contributing to the product then you should ignore them, and (b) I suspect the complainers will largely be drowned out by the many who will support your decision.
You certainly aren’t the only highly experienced engineer vibe-coding their way through a problem - I’m leaning very heavily on Claude, and somewhat on ChatGPT, at the startup I’m working on at the moment.
Thank you, Anuj!
Is this for real, like do you really not see the difference? Not tryingto be snarky or sth, just struggle to comprehend this.
You compare apples to oranges here. From a short look at the provided link, i guess it doesn'tcompare at all because it's something completely different?
Link you provided seems to be Samsung or OneUI only, integrated with Good Lock. This seems to collect and present notifications together with the ability to search. Does not seem to be open source.
DoNotNotify allows you to restrict apps to only sending you certain kinds of notifications.
They could supplement each other but you can't compare them as far as i'm concerned.
I couldn't tell the difference at a glance without being familiar with both apps.
I do not use any of the apps and just had a short look at the respective pages to see what they are. Both clearly state the repsective apps purpose, both have images of the apps.
I thought it was (in both cases) pretty clear what the respexctive app is and what not.
Hope I find time to contribute :)
Last week I was configuring Samsung for my mother and it constantly nags her with notification for setting up Samsung account (that's not the worst offender tho) and frankly that would really help here.
[0] https://developer.android.com/develop/ui/views/notifications...