This is one of those things that should be unnecessary if we all had perfect self-control, but the reality is these apps are engineered explicitly to bypass that.
It feels a bit silly to need guardrails for something as trivial as scrolling.
> This is one of those things that should be unnecessary if we all had perfect self-control,
It's like food, easier to have self control not to buy candies in the supermarket than to have self control at home when you know you have candies in the pantry.
I haven't felt the need to watch a reel since I uninstalled IG, before that I ended up scrolling here and there, not much but enough to regret the lost time at the end of the week
It's also not some "oopsie". It's almost certainly not news but these sites want these 'one more' behaviors.
Years ago, I designed a minimalist YouTube player that removed video suggestions and autoplays but used their player, didn't evade ads, etc. I got banned by Google because they disallow any alternative site for YouTube, only embeds are allowed.
Pretty sure I am still banned on all Google APIs too.
If it didn't evade ads though, while it's their right to have such a policy with their site, it's still quite a display of the utter contempt they have for their users. Unless they really believe with a straight face that 24 is a healthy optimum for 'YouTube watch hours per day.' Because that's the only number that would cause their brain-hacking to stop.
"You'll consume using our dark-patterned, unhealthy interface which we deeply tuned to maximize addiction and obsession, or you'll GTFO!" -Google.
More time spent implies more ads shown implies proportional conversion.
Also now that we have two big companies vying for attention, the competition is fierce to show "relevant ads" first because both receive intent almost simultaneously.
I got a youtube short of an office chair company in the feed. I wasn't looking for it explicitly. It was organic feed. Almost immediately I got an ad for that same chair in gmail. Because all of our phones are always listening for intents and keywords. This is recursive ad slop.
One thing I think a lot of people need to realize and ponder on more... is that these companies have nearly infinite resources, they have entire teams studying the psychology of how to get you to use their apps more (because they primarily chase engagement to sell your attention to advertisers).
Not only do they have well-paid experts working on getting you using their platform more often and for longer, but they also have a scary amount of metadata on hundreds of millions of people... they can pluck a person that behaves just like you out of the ether, compare their engagement trends, and apply the same algorithm to you.
The resource imbalance becomes really difficult to comprehend. It's like you're trying to avoid a pickpocket that has successfully pickpocketed millions of people, and the pickpocket has years of your behavior at their fingertips and can cross-reference it with every pickpocketing attempt they've ever attempted... oh, and they designed everything about the city you're walking in to make it easier to pickpocket you.
A very effective partial solution - there is absolutely 0 reason to have any meta app cancers on phones/tablets. Just let them go, leave them for laptop/desktop and you are more than 50% there. This way they lose a lot of their instant addictivity.
Same goes for tiktok and similar other shit forming and then feeding on addictions. Everything becomes much easier afterwards, especially long term.
I removed FB apps quite some years ago when they were draining batteries of phones even when not used, a typical bad engineering that facebook seems to never get rid off (their web had always some issues, stuff doesn't work, feed doesn't load, comments fail or get posted 2x, albums don't upload all photos etc. with just ublock origin on firefox on fiber optic). I just don't need even their messenger, any worthy contacts can be migrated to other apps.
The exception to all above - whatsapp, simply too much used in Europe and literally everywhere else outside of US. But that's much better engineered product from start.
If you get addicted to these feeds, you'll just find other ways to them once they're off your phone.
I take a hybrid approach - keep uninstalled by default most of the time, engage a browser extension for web to keep me in place, and failing all that use an app like this as well.
Because you can describe the chemical interactions of nicotine with the human body to a high degree of accuracy, while the psychology of human attention in the 21st century is a subject that is very far from that cut and dry.
That's why we invented a pill that helps with the former, but we might never have one that helps with the latter (although that would be nice)
Instagram tip: if you click the wordlogo “Instagram” at the top (in the mobile app), you can select “Following” and get a feed of only posts from accounts you follow, with no suggested posts and no reels.
I end up going through that feed in a few minutes and it insulates me from the endless scrolling.
You can't, and I've watched as they've added/removed UI to indicate that you can even press it. I'm glad the feature is there, but it's clear Meta doesn't want you finding it.
Not that I suspect maliciousness in the case of digipaws or OP, but does the app's code being open-source actually guarantee any security? Is there anything forcing the app I download to be consistent with the repo on Github?
The readme clearly directs the reader to the F-Droid package, which are built on their buildservers and signed with their APK keys. This does not answer the security question directly, but it's the same model as say Debian repos. There are eyeballs on it by an independent third party packagers who use code scanners and manual review to detect malfeasance, and often have to tweak builds and code to get rid of unwanted things present in some upstreams.
It doesn't guarantee any security, but it is necessary for you to be able to to be able to have confidence in the security in a reasonable time frame. And if you need a guarantee that the source matches the binary, then you can build it yourself.
Not really. I guess to be 100% sure you need to build the app yourself. I don’t think that publish attestation exists on play store. Probably would need to openly build & upload the app via a CI runner, print all hashes inside that runner and then the playstore also needs to display those hashes before you download - but that doesnt exist for play store downloads yet.
The short answer is that, indeed, it comes down to trust, and I really understand and respect your perspective.
The long answer is that it's very unlikely this trust would be broken. Let me explain:
Firstly, the accessibility service doesn’t provide anything close to "full control." It’s just an API provided by Android that gives accessibility events, like changes in the screen layout and the UI nodes present on the screen to infer the type of content shown (Reels in my case). You can check online for details on accessibility events. It's nothing like a constant screen recording where the app gets all your data.
Also, Google is very strict with these permissions. When you publish an app on the Play Store, you need to clearly disclose why you're using those permissions. If you do something wrong or try to abuse this, they will take your app down. Anyone who values their reputation wouldn’t attempt something like this just to sell some user data.
Lastly, ScrollGuard doesn’t need to connect to any server to work!, all the detection happens on the device. So, if you want to be extra cautious, you can always go to your phone settings and block internet access to ScrollGuard. It will still work, and without internet access is imposible to export any data.
If you want even more control and just need a solution for Instagram, you can modify the app yourself. I wrote an article a couple of years ago on how to do this here: https://breakthescroll.com/block-reels-instagram/
I understand the position, but I think that's a silly concern here. This is an app that stops you from using social media features that absolutely farm every bit of data out of you they possibly can.
Feels a bit like being afraid to install a smart lock on your front door, so instead you leave it unlocked all the time.
This is a bad take, as much as I don't use social media at this point, people need access to good tools to curb use, and in this case, "good" means "open."
Can you elaborate why? It sounds like we agree to me. People need access to good tools to curb use, and all else equal, open is definitely better than closed. I just am saying that I'd rather have an effective closed tool than no tool at all
It does sound like we agree, but my main issue is the further shifting of the (for lack of a better word) overton window around when closed software is acceptable.
For all its flaws (and despite my general ire towards them), the FSF has done one thing really well over the years, and that's keep the conversation alive around open-source software (which, in turn, has landed us at what I consider to be a really good compromise of a ton of high-quality source-available software).
The FSF isn't pulling as hard as it used to for a variety of reasons, but I think it's important to keep the pressure on and in cases like this, it's really easy to take the stance that at least source-availability shouldn't be compromised on, since the app presumably needs very broad permissions and capabilities from the OS.
Social media apps don't have the same level of permission to detect scrolling even when they aren't being used. This app does have that higher level of control (accessibility service) and so should be subject to more scrutiny.
A lot of discussion is about the security of these devices (resistance to false open states). But most of the time the safety (false closed states) has even higher stakes associated to it. Having to wait because some api server is slow is annoying but can quickly become life threatening in a different context. Fail-Safe vs Fail-Secure is (imo) often overlooked and probably just as important as the actual implemented security.
Wait, are there smartlocks that depend on the availability of some api service to even open the door? I'd rather call that stupidlocks instead. I mean, just because you're an IoT device it doesn't mean you are smart, ffs.
I'd recommend just uninstalling the apps. I'm still able to get the content I need, and scroll mechanic doesn't work as well on the websites so a lot of the temptation to doom scroll goes away.
The way that all these tech companies decided that the users couldn't simply turn those features off is maddening. And the "See this Less Often" option doesn't seem to do anything at all on apps like Facebook.
There should be legislation that requires company's allow "opting out" of individualized algorithmic feeds. I'm fine if you want to show me videos similar to channels I've explicitly subscribed to. But tracking my every interaction and using that to serve content I never asked for is everything that's wrong with modern social media.
Maybe we need an initiative like "stop killing games".
If you turn off YouTube view history, it breaks Shorts. It also breaks a lot of other shit (e.g. back button after you've clicked a video from a search).
I'm currently using DFInstagram, which removes home feed. Only downside I see is that is also removes Instagram stories which I do like to check, but I can do that from PC if I want.
As for YouTube I can already remove 99% of the distraction by just putting things to private and completely remove recommendations on home page, but reddit / Twitter / Facebook would be great.
For the social medias I'd love to just have "old mode" where I'm only ever shown stuff posted by people I explicitly follow. Everything went to total garbage when "engagement" became the goodhearts metric, and news feed either throw you astroturf, ads, and rage-bait posts by people I haven't even followed
This kind of control is what we miss out on when we leave web apps for native apps.
Ideally this would just be a simple browser plugin.
But the app requires major accessibility permissions so that it can access the API it needs to see into the Android apps, something that doesn't even exist on iOS. Just to do what should amount things like deleting a ".reels" component.
That said, props to OP for figuring out how to build such a feature for mobile. Most of the Show HN's in this space are desktop-only thus kinda useless.
I've tried adding rules to ublock origin but sites like youtube and many others now have "component obfuscation". Meaning there is no unique ID on their components/elements and it makes it much harder to target.
And some element titles/names are even on a different component than the content, which is even harder still. So it says "reels" on one component and the actual reels are on another.
Blocking now has to be a logical combination of CSS selection, text identification and a target-action component.
I agree U-Block origin is sometimes hit or miss. What has restored some faith for me was recently discovering that when I use the element picker and select something I want blocked it gives me a list at the bottom right of things it recognized, and if I click through them I can often find exactly what I want to block though often its not the default element anymore. It's not perfect but it has massively improved my satisfaction with Ublock and general enjoyment of being online.
Good point. I remember Facebook doing obfuscation just to hide the word "sponsored" long ago just so you couldn't easily hide its ads.
That said, they put up a fight in the browser because user interventions (browser plugins, greasemonkey scripts, ad blockers) are viable in the browser but not in native apps.
Though this is also why they want to force you to use their app, and I'm not sure how to incentivize apps to even exist as websites. It feels like a dying fluke that places like Reddit even maintain a web frontend for their app.
Better suggestion: block these sites entirely. Reddit and YouTube are wastes of time if you are just 'checking in'.
Use YouTube-DL to download videos from specific creators and watch independently. I haven't figured out how to view the actually useful subreddits without having access to the frontpage feeds.
Feeds are one of the worst things to be invented in the Internet age. I can't imagine how far behind we are because they've caught otherwise smart people in this insane dopamine trap.
Both of those things could be solved by just talking to people, and talking to people does not require you to use addiction machines.
I keep in touch with my friends abroad by emailing them when I think about them, and I get long form responses on what they are up to, not whatever is the public image filtered stuff that they may or may not be posting somewhere.
> Reddit and YouTube are wastes of time if you are just 'checking in'.
I disagree, YouTube has plenty of creative and interesting content if one has enough will to fight the nonsense that the algorithm shovels at you.
Same goes for reddit actually, and reddit is pretty trivial to filter. Subscribe only to the communities that you find worth it and don't open /r/popular etc.
How this is possible for iOS? Can someone share technical details on this iOS implementation? IMO this cannot be done without validating user privacy and giving app some crucial screen reading permissions.
You can't take the same approach on iOS but to Apple's credit, they do a great job with user privacy with their Screen Time permission. Apps with that permission get the ability to restrict other apps on the phone without ever knowing what they are. They can even report data back to the user without ever knowing that data.
For Android I did it using the Accessibility Service API, iOS doesn't provide any similar API, the platform itself is much more restricted. So I think is technicaly not possible
One problem I have with all these self control style apps is that they only let you set total per day hourly limits. My intuition is that if you give yourself a two hour, one hour, even 30 minute limit per day you're still liable to drift into zombie mode and are more likely to want to unblock after that long brain rot session. My ideal blocking app wouldn't restrict your total per day, instead the key feature would be that you can only scroll for 5-10 minutes at a time with a cooling off period. That is, if you scroll for 5 minutes you then have to wait X minutes before you can scroll again. I think this should have a strong c-c-c-c-ombo breaker effect without giving you enough time to get hooked so badly that you immediately want to bypass it.
I deleted the apps too, but unfortunately I still like to use Instagram to follow photographers I'm interested in. These uBlock Origin filter rules have made it usable without being a black hole for my attention:
www.instagram.com##article:has( > div > div > span:has-text(Suggested for you)):style(opacity: 0% !important;)
www.instagram.com##div:has(> span > div > a[href="/explore/"])
www.instagram.com##div:has(> span > div > a[href="/reels/"])
I don't agree. More tech will always have snickets we can bypass our best self-imposed gaols.
The mitigations that work well for me are purely encouraging endogenous dopamine production. Hiking (or anything outdoors). Sleep improvement through regular rituals (no phone in bed). And, indeed, nutrition. Basically, the old adage of eat well, sleep well, get some exercise. That's how you get your groove back.
I find any kind of addiction has the same challenge towards breaking from the entrapment cycle which is to raise awareness and understanding then developing thoughtful thinking. Can an app really do that for us? Will it ever? Grounding yourself is such an organic thing to do.
I partially agree. I think, first, it's necessary to make a commitment to breaking the addiction, and then raise the level of awareness in order to follow through with that commitment. I believe an app can help detect addictive triggers and help a person move from an "impulsive and automatic mental state" to a "state of awareness."
My thoughts are that you need to turn notifications off and delete these apps instead of whatever this "we promise we're not abusing accessibility to mine your information" bullshit is
We have a way of finding out what our actual, real friends are doing: it's called talking to them
For Instagram I've been using DFinstagram on my Android which removes most features, except chatting and viewing profiles. Also using Firefox with the IGPlus extension which blocks reels.
But these make Instagram not feel as smooth or misses some features related to chatting, wish something that has this but still blocks algorithmic suggestions and ads existed.
For YouTube Revanced is very nice, but I also just removed my account, which helped me decrease the amount I spend on YouTube.
I respect any effort put towards this, seems like a decent project.
Incidentally I used to love the SelfControl mac app, but it started having leaks in its ability to function a while back and now seems unmaintained. The irony being that even though it's open source, anyone who'd be inclined to fix/maintain it would need to not know how it works or sacrifice their ability to use it. Afaik there wasn't anything as effective for mobile.
This is brilliant. I have dreamed of a way to force companies to build in parental control to block short-form media. For the kids (it's never for the kids).
There is actually a developer setting in Instagram to stop swipe up for next reel. You can still watch reels sent by your friends but you won't be able to swipe up. You can also remove reels icon from bottom bar.
If you are using MyIntsa or Revanced Instagram you can enable it (Android only).
Hope it was user option too.
I have an entirely different problem with youtube, I open all the videos I want to watch from the main page and subscribed page in bew tabs and then sit through them for 3h straight. Shorts are non issue, when I open them the UI and playback pisses me off so quicky that I don't even watch all shorts from my subscribed channels.
This is badly needed, but in my case on iOS. There are alternative frontends to most social networks, that can be used or adapted, however. https://github.com/mendel5/alternative-front-ends .. is one list.. but there are others (for example listing alternative Instagram frontends)
Shameless plug: I wrote a user script a while ago that removes everything from the Instagram explore tab when using Instagram in the browser. Confirmed to work on iOS Safari. Requires an app to handle user scripts (e.g. "Userscripts" by Justin Wasack).
I love the concept, I went as far as patching the android app for instagram back in the day to stop me from scrolling (crashing was good enough). Haven't kept up to date unfortunately.
Using Accessibility Service is a very smart approach.
Could you adjust your app (or make a different version) that automatically covers up ads or automatically skips them (e.g. in Instagram stories). Would be great for TikTok too.
Good idea. I resorted to my own listing of channels on YouTube and never going to the actual site. I'd also get sucked into shorts for hours. I the think the same can be said for any form of scrolling. My goal for is to create a better non addictive social platform.
Control Panel for YouTube lets you hide Home, Shorts, Related videos, plus anything you don't want to see in Subscriptions (including videos you've already watched), plus you can disable autoplay of random videos, block ads and more, in YouTube itself.
I the one reason I use iOS is the built in chat is pretty good and has most all my friends and family and so between that and many of the other built in apps I can avoid needing so many third party apps.
So my scrolling fixation is mostly limited to the browser. One nice thing about meta is they ALL of their mobile webapps are terrible so they don’t get me, but YouTube shorts does very often. I wish there was a good way to block all shorts on YouTube through the browser.
Removing the apps was the biggest solve for me. I still maintain some social accounts, but not having the native app reduces time spent considerably.
I am addicted to YouTube Shorts. It would be fine if it wasn't the first thing you see when you open YouTube. But often, I will open the app and then completely forget what long-form video I wanted to search for because the Shorts got me. It is insidious. The youtube app even asked me once - in some sort of survey - if I enjoyed seeing Shorts first thing and I said no. Nothing changed.
More power to you, but I don't understand the psychology of this kind of thing. If I have enough willpower to block a feature why not just use that will power to shut off the app after a while? I understand you're saying it's addictive, but if I were addicted to something then I'm going to be inclined to just remove the blocker.
Anyway, this isn't a critique of your work, just my personal perspective.
Been using YouTube recommendation blockers for a while. Personally I’ve never gone, “oh man I could go for some binge watching!” as much as something piques my interest and I get drawn down video after video of nothing. So removing any sort of advert for a video means it never even crosses my mind to turn off the blocker.
I couldn’t believe how pervasive their recommendations are. We’ve got a little one and he recently developed a plane obsession so I try and watch a few YouTube videos of float planes or biplanes before bed when he’s restless and demanding ‘vrrooom’. You literally can’t use shorts to do it (which they make nearly
Impossible to avoid by putting them at the top of the search results and then interspersing them with the normal videos) because after 3 or 4 plane videos they start playing some maga bro science diet video or some AI voiceover video game trash.
I can’t believe how little moral responsibility the employees and management at these companies feel.
The best way I can explain it's that sometimes I had willpower, but I lacked the awareness needed to actually use it. For example, when I was studying, I used to automatically take a break and open Instagram and start watching Reels, it was just a reflex. Now, I have a barrier that makes me aware of what I'm doing, so from this "awareness", is easier to to enforce willpower
I've always figured that this type of thing is best used to stop you from getting addicted, not to stop an already-formed addiction. Or on the flip-side, when you've mostly overcome an addiction but need a helping hand to prevent relapse.
this is like putting a wall in front of, or just beyond the edge of, the slippery slope. the need to make an intentional choice or pause before doing the "getting stuck scrolling" behavior is an opportunity for you to catch yourself and see if that's what you really want.
the platform is designed to capitalize on your slip ups in willpower. you can have great impulse control, but can you have it tirelessly, around the clock? this thing is lurking until you slip, as long as you're on it. attention capture is the goal.
I guess my willpower just manifests itself in a different manner. If I lack the impulse control to prevent myself from opening up an app, it seems odd to me to start blocking particular features in the app to manage that impulse.
you mean as opposed to going cold turkey? That makes sense! I personally have wondered about something like this for just FB Groups - I want to read my neighborhood buy nothing page, but I don't want a curated attention-grabbing experience in the full app. So I'd love like, an RSS reader for just group posts that let me direct open a post in the app if I wanted to respond.
Like the chips by the checkout in the grocery store, the "path" you have to take into the app requires you to put on horse blinders if you want to complete what you came in for without getting "engaged". It's very tiring if you're at all susceptible to distraction.
I personally don't watch short form content, but I do use services that provide it (among other things).
They push the short form content really, really hard and for me it's not a willpower issue, it's an "I don't ever want to see this feature again because I'll never use it" issue.
I kicked the addiciton a few years back. However there are still things on facebook worth looking at, and there is no easy way to find those without also getting all the addicting things I don't want. I want to see my friend's life. However some of them don't have a life and instead are constantly sharing the "you won't believe what [other political side] just did" garbage.
This is one of those things that should be unnecessary if we all had perfect self-control, but the reality is these apps are engineered explicitly to bypass that.
It feels a bit silly to need guardrails for something as trivial as scrolling.
Shameless personal plug: I wrote about it here. https://nabraj.com/blog/swipe-scroll-repeat-addiction/
> This is one of those things that should be unnecessary if we all had perfect self-control,
It's like food, easier to have self control not to buy candies in the supermarket than to have self control at home when you know you have candies in the pantry.
I haven't felt the need to watch a reel since I uninstalled IG, before that I ended up scrolling here and there, not much but enough to regret the lost time at the end of the week
It's also not some "oopsie". It's almost certainly not news but these sites want these 'one more' behaviors.
Years ago, I designed a minimalist YouTube player that removed video suggestions and autoplays but used their player, didn't evade ads, etc. I got banned by Google because they disallow any alternative site for YouTube, only embeds are allowed.
Pretty sure I am still banned on all Google APIs too.
> I got banned by Google because they disallow any alternative site for YouTube, only embeds are allowed.
I'm sorry that happened to you, but that seems like a perfectly reasonable policy.
In fact, I would have assumed that's the case before reading your comment.
If it didn't evade ads though, while it's their right to have such a policy with their site, it's still quite a display of the utter contempt they have for their users. Unless they really believe with a straight face that 24 is a healthy optimum for 'YouTube watch hours per day.' Because that's the only number that would cause their brain-hacking to stop.
"You'll consume using our dark-patterned, unhealthy interface which we deeply tuned to maximize addiction and obsession, or you'll GTFO!" -Google.
YouTubes users are content creators and advertisers. The people watching the videos are the product.
would also be unnecessary if these apps respected the user rather than trying to addict them
Hard to exercise willpower when the whole system is tuned up against it.
More time spent implies more ads shown implies proportional conversion.
Also now that we have two big companies vying for attention, the competition is fierce to show "relevant ads" first because both receive intent almost simultaneously.
I got a youtube short of an office chair company in the feed. I wasn't looking for it explicitly. It was organic feed. Almost immediately I got an ad for that same chair in gmail. Because all of our phones are always listening for intents and keywords. This is recursive ad slop.
One thing I think a lot of people need to realize and ponder on more... is that these companies have nearly infinite resources, they have entire teams studying the psychology of how to get you to use their apps more (because they primarily chase engagement to sell your attention to advertisers).
Not only do they have well-paid experts working on getting you using their platform more often and for longer, but they also have a scary amount of metadata on hundreds of millions of people... they can pluck a person that behaves just like you out of the ether, compare their engagement trends, and apply the same algorithm to you.
The resource imbalance becomes really difficult to comprehend. It's like you're trying to avoid a pickpocket that has successfully pickpocketed millions of people, and the pickpocket has years of your behavior at their fingertips and can cross-reference it with every pickpocketing attempt they've ever attempted... oh, and they designed everything about the city you're walking in to make it easier to pickpocket you.
A very effective partial solution - there is absolutely 0 reason to have any meta app cancers on phones/tablets. Just let them go, leave them for laptop/desktop and you are more than 50% there. This way they lose a lot of their instant addictivity.
Same goes for tiktok and similar other shit forming and then feeding on addictions. Everything becomes much easier afterwards, especially long term.
I removed FB apps quite some years ago when they were draining batteries of phones even when not used, a typical bad engineering that facebook seems to never get rid off (their web had always some issues, stuff doesn't work, feed doesn't load, comments fail or get posted 2x, albums don't upload all photos etc. with just ublock origin on firefox on fiber optic). I just don't need even their messenger, any worthy contacts can be migrated to other apps.
The exception to all above - whatsapp, simply too much used in Europe and literally everywhere else outside of US. But that's much better engineered product from start.
If you get addicted to these feeds, you'll just find other ways to them once they're off your phone.
I take a hybrid approach - keep uninstalled by default most of the time, engage a browser extension for web to keep me in place, and failing all that use an app like this as well.
Why is it more surprising that scrolling is addictive versus, say, putting a stick of combusting plant matter in your mouth and inhaling the smoke?
Because you can describe the chemical interactions of nicotine with the human body to a high degree of accuracy, while the psychology of human attention in the 21st century is a subject that is very far from that cut and dry.
That's why we invented a pill that helps with the former, but we might never have one that helps with the latter (although that would be nice)
Nicotine is not very addictive. Cigarettes is about the physical addiction.
Probably because scrolling feels harmless, while smoking never really did. The surprise is in the mismatch.
Instagram tip: if you click the wordlogo “Instagram” at the top (in the mobile app), you can select “Following” and get a feed of only posts from accounts you follow, with no suggested posts and no reels.
I end up going through that feed in a few minutes and it insulates me from the endless scrolling.
Also works on the mobile page.
The other thing possible is to block certain post types with uBlock origin, on desktop or mobile:
I didn't know this one, thanks!
Can you set this as default?
You can't, and I've watched as they've added/removed UI to indicate that you can even press it. I'm glad the feature is there, but it's clear Meta doesn't want you finding it.
THANK YOU
I just can't authorize an app to have full control on my phone if it's not open-source.
What guarantee do I have that you are not selling all my user data?
DigiPaws has the headlining feature of the app advertised here, and is open source.
https://github.com/nethical6/digipaws
Not that I suspect maliciousness in the case of digipaws or OP, but does the app's code being open-source actually guarantee any security? Is there anything forcing the app I download to be consistent with the repo on Github?
The readme clearly directs the reader to the F-Droid package, which are built on their buildservers and signed with their APK keys. This does not answer the security question directly, but it's the same model as say Debian repos. There are eyeballs on it by an independent third party packagers who use code scanners and manual review to detect malfeasance, and often have to tweak builds and code to get rid of unwanted things present in some upstreams.
Even better: if the build is reproducable, it guarantees that the source code of the repo is the same as the version that is distributed by FDroid.
It doesn't guarantee any security, but it is necessary for you to be able to to be able to have confidence in the security in a reasonable time frame. And if you need a guarantee that the source matches the binary, then you can build it yourself.
Not really. I guess to be 100% sure you need to build the app yourself. I don’t think that publish attestation exists on play store. Probably would need to openly build & upload the app via a CI runner, print all hashes inside that runner and then the playstore also needs to display those hashes before you download - but that doesnt exist for play store downloads yet.
I understand your point.
The short answer is that, indeed, it comes down to trust, and I really understand and respect your perspective.
The long answer is that it's very unlikely this trust would be broken. Let me explain:
Firstly, the accessibility service doesn’t provide anything close to "full control." It’s just an API provided by Android that gives accessibility events, like changes in the screen layout and the UI nodes present on the screen to infer the type of content shown (Reels in my case). You can check online for details on accessibility events. It's nothing like a constant screen recording where the app gets all your data.
Also, Google is very strict with these permissions. When you publish an app on the Play Store, you need to clearly disclose why you're using those permissions. If you do something wrong or try to abuse this, they will take your app down. Anyone who values their reputation wouldn’t attempt something like this just to sell some user data.
Lastly, ScrollGuard doesn’t need to connect to any server to work!, all the detection happens on the device. So, if you want to be extra cautious, you can always go to your phone settings and block internet access to ScrollGuard. It will still work, and without internet access is imposible to export any data.
If you want even more control and just need a solution for Instagram, you can modify the app yourself. I wrote an article a couple of years ago on how to do this here: https://breakthescroll.com/block-reels-instagram/
> full control on my phone if it's not open-source.
bro is using social media that listens and records ton's of data in background.
https://www.hipaajournal.com/jury-trial-meta-flo-health-cons...
must be a rather useless device you have there then...
The device has many eyes on it. Random apps don't.
What guarantees do you have that open source code faithfully reflects what is in the compiled binary?
It’s easier for security researchers to check
The idea is that you download the source, review, and then build it yourself.
I understand the position, but I think that's a silly concern here. This is an app that stops you from using social media features that absolutely farm every bit of data out of you they possibly can.
Feels a bit like being afraid to install a smart lock on your front door, so instead you leave it unlocked all the time.
This is a bad take, as much as I don't use social media at this point, people need access to good tools to curb use, and in this case, "good" means "open."
Can you elaborate why? It sounds like we agree to me. People need access to good tools to curb use, and all else equal, open is definitely better than closed. I just am saying that I'd rather have an effective closed tool than no tool at all
It does sound like we agree, but my main issue is the further shifting of the (for lack of a better word) overton window around when closed software is acceptable.
For all its flaws (and despite my general ire towards them), the FSF has done one thing really well over the years, and that's keep the conversation alive around open-source software (which, in turn, has landed us at what I consider to be a really good compromise of a ton of high-quality source-available software).
The FSF isn't pulling as hard as it used to for a variety of reasons, but I think it's important to keep the pressure on and in cases like this, it's really easy to take the stance that at least source-availability shouldn't be compromised on, since the app presumably needs very broad permissions and capabilities from the OS.
Social media apps don't have the same level of permission to detect scrolling even when they aren't being used. This app does have that higher level of control (accessibility service) and so should be subject to more scrutiny.
I am afraid to install smart locks. Too much goes wrong with software. I would install a regular lock instead.
I got locked into my (100+ y/o) house due to a smart lock soon after purchase. It got promptly removed. I'd much rather leave the door unlocked.
A lot of discussion is about the security of these devices (resistance to false open states). But most of the time the safety (false closed states) has even higher stakes associated to it. Having to wait because some api server is slow is annoying but can quickly become life threatening in a different context. Fail-Safe vs Fail-Secure is (imo) often overlooked and probably just as important as the actual implemented security.
Wait, are there smartlocks that depend on the availability of some api service to even open the door? I'd rather call that stupidlocks instead. I mean, just because you're an IoT device it doesn't mean you are smart, ffs.
I have been locked out of more than 1 airbnb due to lack of cell service not being able to get codes for locks, it is very annoying and dumb.
As others have said, the permissions required to make this work are scary and require a lot of trust.
The fact YouTube and Instagram don't allow you to disable endless algorithmic short form content is straight up evil.
I'd recommend just uninstalling the apps. I'm still able to get the content I need, and scroll mechanic doesn't work as well on the websites so a lot of the temptation to doom scroll goes away.
This is the way.
The way that all these tech companies decided that the users couldn't simply turn those features off is maddening. And the "See this Less Often" option doesn't seem to do anything at all on apps like Facebook.
There should be legislation that requires company's allow "opting out" of individualized algorithmic feeds. I'm fine if you want to show me videos similar to channels I've explicitly subscribed to. But tracking my every interaction and using that to serve content I never asked for is everything that's wrong with modern social media.
Maybe we need an initiative like "stop killing games".
If you turn off YouTube view history, it breaks Shorts. It also breaks a lot of other shit (e.g. back button after you've clicked a video from a search).
I would love it.
I'm currently using DFInstagram, which removes home feed. Only downside I see is that is also removes Instagram stories which I do like to check, but I can do that from PC if I want.
As for YouTube I can already remove 99% of the distraction by just putting things to private and completely remove recommendations on home page, but reddit / Twitter / Facebook would be great.
For the social medias I'd love to just have "old mode" where I'm only ever shown stuff posted by people I explicitly follow. Everything went to total garbage when "engagement" became the goodhearts metric, and news feed either throw you astroturf, ads, and rage-bait posts by people I haven't even followed
[1] https://www.distractionfreeapps.com/
F.B. Purity[1] works great for Facebook. It can selectively remove ads, suggested crap, reels, etc.
[1]: https://www.fbpurity.com/
This kind of control is what we miss out on when we leave web apps for native apps.
Ideally this would just be a simple browser plugin.
But the app requires major accessibility permissions so that it can access the API it needs to see into the Android apps, something that doesn't even exist on iOS. Just to do what should amount things like deleting a ".reels" component.
That said, props to OP for figuring out how to build such a feature for mobile. Most of the Show HN's in this space are desktop-only thus kinda useless.
I've tried adding rules to ublock origin but sites like youtube and many others now have "component obfuscation". Meaning there is no unique ID on their components/elements and it makes it much harder to target.
And some element titles/names are even on a different component than the content, which is even harder still. So it says "reels" on one component and the actual reels are on another.
Blocking now has to be a logical combination of CSS selection, text identification and a target-action component.
I agree U-Block origin is sometimes hit or miss. What has restored some faith for me was recently discovering that when I use the element picker and select something I want blocked it gives me a list at the bottom right of things it recognized, and if I click through them I can often find exactly what I want to block though often its not the default element anymore. It's not perfect but it has massively improved my satisfaction with Ublock and general enjoyment of being online.
Good point. I remember Facebook doing obfuscation just to hide the word "sponsored" long ago just so you couldn't easily hide its ads.
That said, they put up a fight in the browser because user interventions (browser plugins, greasemonkey scripts, ad blockers) are viable in the browser but not in native apps.
Though this is also why they want to force you to use their app, and I'm not sure how to incentivize apps to even exist as websites. It feels like a dying fluke that places like Reddit even maintain a web frontend for their app.
Better suggestion: block these sites entirely. Reddit and YouTube are wastes of time if you are just 'checking in'.
Use YouTube-DL to download videos from specific creators and watch independently. I haven't figured out how to view the actually useful subreddits without having access to the frontpage feeds.
Feeds are one of the worst things to be invented in the Internet age. I can't imagine how far behind we are because they've caught otherwise smart people in this insane dopamine trap.
I keep Instagram to keep in touch with friends abroad.
I keep Facebook because certain communities and events only happen there.
For some of us, it is plain better to only block short form video.
Both of those things could be solved by just talking to people, and talking to people does not require you to use addiction machines.
I keep in touch with my friends abroad by emailing them when I think about them, and I get long form responses on what they are up to, not whatever is the public image filtered stuff that they may or may not be posting somewhere.
> Reddit and YouTube are wastes of time if you are just 'checking in'.
I disagree, YouTube has plenty of creative and interesting content if one has enough will to fight the nonsense that the algorithm shovels at you.
Same goes for reddit actually, and reddit is pretty trivial to filter. Subscribe only to the communities that you find worth it and don't open /r/popular etc.
How this is possible for iOS? Can someone share technical details on this iOS implementation? IMO this cannot be done without validating user privacy and giving app some crucial screen reading permissions.
You can't take the same approach on iOS but to Apple's credit, they do a great job with user privacy with their Screen Time permission. Apps with that permission get the ability to restrict other apps on the phone without ever knowing what they are. They can even report data back to the user without ever knowing that data.
Source: I am a developer of Clearspace, which is an iOS Screen Time App https://apps.apple.com/us/app/clearspace-reduce-screen-time/...
Yeah, this is not possible in iOS because there is no equivalent of Accessibility services for apps to control other apps behavior.
Not sure what OP is running waitlist for, my guess is a combination of screen time + focus modes + content blockers in Safari.
For Android I did it using the Accessibility Service API, iOS doesn't provide any similar API, the platform itself is much more restricted. So I think is technicaly not possible
It’s currently Android only. There is a waitlist on their website for the iOS version.
The answer is jailbreak or sideloaded modified ipas.
This approach is not possible on iOS. Instead, I built a safari extension to block shorts from the feed https://apps.apple.com/nl/app/shorts-stopper/id6745517488?l=...
Rather hard to sell it here to people who are (mostly) capable to install Tampermonkey and add one line rule.
> I wanted to find a way to use Instagram without ending up scrolling for two hours every time I open the app to see a friend's story.
Why not just Chrome/Firefox/Safari to open the link instead of the Instagram app?
One problem I have with all these self control style apps is that they only let you set total per day hourly limits. My intuition is that if you give yourself a two hour, one hour, even 30 minute limit per day you're still liable to drift into zombie mode and are more likely to want to unblock after that long brain rot session. My ideal blocking app wouldn't restrict your total per day, instead the key feature would be that you can only scroll for 5-10 minutes at a time with a cooling off period. That is, if you scroll for 5 minutes you then have to wait X minutes before you can scroll again. I think this should have a strong c-c-c-c-ombo breaker effect without giving you enough time to get hooked so badly that you immediately want to bypass it.
I deleted the YouTube and Instagram apps and I still end up scrolling / watching shorts - it doesn't matter, browser still lets you scroll
I deleted the apps too, but unfortunately I still like to use Instagram to follow photographers I'm interested in. These uBlock Origin filter rules have made it usable without being a black hole for my attention:
Even if you're not logged in? Instagram barely even wants to let me look at the main photo/video of interest without an account.
I use Unhook in Firefox on Android to eradicate Shorts from my YouTube experience, it works very well.
What helped me, was deleting account as well. The site has different purpose than when I've registered anyway.
In my opinion tech is not the solution to issues of self-discipline.
Unfortunately, we're well past that era. Certain tech is so "good", we need to actively fight it and, sadly, the only solution is more tech.
Not related, see also media and nutrition.
I don't agree. More tech will always have snickets we can bypass our best self-imposed gaols.
The mitigations that work well for me are purely encouraging endogenous dopamine production. Hiking (or anything outdoors). Sleep improvement through regular rituals (no phone in bed). And, indeed, nutrition. Basically, the old adage of eat well, sleep well, get some exercise. That's how you get your groove back.
I find any kind of addiction has the same challenge towards breaking from the entrapment cycle which is to raise awareness and understanding then developing thoughtful thinking. Can an app really do that for us? Will it ever? Grounding yourself is such an organic thing to do.
I partially agree. I think, first, it's necessary to make a commitment to breaking the addiction, and then raise the level of awareness in order to follow through with that commitment. I believe an app can help detect addictive triggers and help a person move from an "impulsive and automatic mental state" to a "state of awareness."
My thoughts are that you need to turn notifications off and delete these apps instead of whatever this "we promise we're not abusing accessibility to mine your information" bullshit is
We have a way of finding out what our actual, real friends are doing: it's called talking to them
In a similar vain, I made https://Instag.com, which let's you remove the "RAM" from Instagram media URL's to download them.
For Instagram I've been using DFinstagram on my Android which removes most features, except chatting and viewing profiles. Also using Firefox with the IGPlus extension which blocks reels. But these make Instagram not feel as smooth or misses some features related to chatting, wish something that has this but still blocks algorithmic suggestions and ads existed.
For YouTube Revanced is very nice, but I also just removed my account, which helped me decrease the amount I spend on YouTube.
I respect any effort put towards this, seems like a decent project.
Incidentally I used to love the SelfControl mac app, but it started having leaks in its ability to function a while back and now seems unmaintained. The irony being that even though it's open source, anyone who'd be inclined to fix/maintain it would need to not know how it works or sacrifice their ability to use it. Afaik there wasn't anything as effective for mobile.
I love this! You don't see these types of apps for Android. I get the request for Foqos: https://github.com/awaseem/foqos
Would you ever open source this?
This is brilliant. I have dreamed of a way to force companies to build in parental control to block short-form media. For the kids (it's never for the kids).
I just uninstall the app on ios, and dns filtering, but with ublock on ios you can block it too.
I already deleted the apps, and I mostly use Instagram and youtube in the browser. Any support for blocking reels in browser?
Don't know about reels, but there's "Unhook" for Firefox which will hide Shorts and recommendations on YouTube.
try this https://apps.apple.com/us/app/socialfocus-hide-distractions/...
Can confirm this one works great. Tons of nitty little options to customize what experience you get and the dev is clearly active.
There is actually a developer setting in Instagram to stop swipe up for next reel. You can still watch reels sent by your friends but you won't be able to swipe up. You can also remove reels icon from bottom bar. If you are using MyIntsa or Revanced Instagram you can enable it (Android only). Hope it was user option too.
I have an entirely different problem with youtube, I open all the videos I want to watch from the main page and subscribed page in bew tabs and then sit through them for 3h straight. Shorts are non issue, when I open them the UI and playback pisses me off so quicky that I don't even watch all shorts from my subscribed channels.
This is badly needed, but in my case on iOS. There are alternative frontends to most social networks, that can be used or adapted, however. https://github.com/mendel5/alternative-front-ends .. is one list.. but there are others (for example listing alternative Instagram frontends)
Shameless plug: I wrote a user script a while ago that removes everything from the Instagram explore tab when using Instagram in the browser. Confirmed to work on iOS Safari. Requires an app to handle user scripts (e.g. "Userscripts" by Justin Wasack).
https://gist.github.com/jkbe/f362514f99765ac7a9dc343acfe6918...
I love the concept, I went as far as patching the android app for instagram back in the day to stop me from scrolling (crashing was good enough). Haven't kept up to date unfortunately.
I love this and I’d especially love for the Instagram search field to be a textarea not a wall of things designed to distract me.
Using Accessibility Service is a very smart approach.
Could you adjust your app (or make a different version) that automatically covers up ads or automatically skips them (e.g. in Instagram stories). Would be great for TikTok too.
Good idea. I resorted to my own listing of channels on YouTube and never going to the actual site. I'd also get sucked into shorts for hours. I the think the same can be said for any form of scrolling. My goal for is to create a better non addictive social platform.
I like Shorts. They strip all the unnecesary sponsors and chatter.
Installed and im amazed at how many tines ive habitually tried to use youtube shorts already after 2 hours.
Awesome app, been looking for something like this for a while. Thank you!
Great idea. Does it work as a VPN? I always run into the problems with those:
1. You can only run one VPN at a time 2. My banking apps detect when there's a VPN active and won't run
Is there an alternate web client for iOS that's only videos from channels you've subscribed to?
Control Panel for YouTube lets you hide Home, Shorts, Related videos, plus anything you don't want to see in Subscriptions (including videos you've already watched), plus you can disable autoplay of random videos, block ads and more, in YouTube itself.
https://soitis.dev/control-panel-for-youtube
You can accomplish this in Firefox with the Unhook extension
If this works as you say in iOS you would be my new hero! Joined the wait list, would be happy to be part of any test you like to run.
I the one reason I use iOS is the built in chat is pretty good and has most all my friends and family and so between that and many of the other built in apps I can avoid needing so many third party apps.
So my scrolling fixation is mostly limited to the browser. One nice thing about meta is they ALL of their mobile webapps are terrible so they don’t get me, but YouTube shorts does very often. I wish there was a good way to block all shorts on YouTube through the browser.
Being using it for a while and really helps not scroll so much, happy to see this in the top 1 of HN
I use Brave Browser's "Block Elements" feature. Works nicely.
Removing the apps was the biggest solve for me. I still maintain some social accounts, but not having the native app reduces time spent considerably.
I am addicted to YouTube Shorts. It would be fine if it wasn't the first thing you see when you open YouTube. But often, I will open the app and then completely forget what long-form video I wanted to search for because the Shorts got me. It is insidious. The youtube app even asked me once - in some sort of survey - if I enjoyed seeing Shorts first thing and I said no. Nothing changed.
I want this for YouTube.
it works for youtube shorts, and can be enabled for any app where you scroll since it detects if you are scrolling (linkedin, tiktok, reddit, etc)
Then ScrollGuard is for you?
Use libretube or grayjay.
My friend needs this so bad, he has a Reels addiction so bad it makes me uninstall Instagram. I wish there was a feature to block being sent Reels.
You are doing God’s work with this app.
... People post stories on Instagram?
I use Farhan app on Android to do something like this.
I don't find short videos addicting because I feel like I'm not getting enough context and information from short videos. I like long form videos.
More power to you, but I don't understand the psychology of this kind of thing. If I have enough willpower to block a feature why not just use that will power to shut off the app after a while? I understand you're saying it's addictive, but if I were addicted to something then I'm going to be inclined to just remove the blocker.
Anyway, this isn't a critique of your work, just my personal perspective.
Been using YouTube recommendation blockers for a while. Personally I’ve never gone, “oh man I could go for some binge watching!” as much as something piques my interest and I get drawn down video after video of nothing. So removing any sort of advert for a video means it never even crosses my mind to turn off the blocker.
I couldn’t believe how pervasive their recommendations are. We’ve got a little one and he recently developed a plane obsession so I try and watch a few YouTube videos of float planes or biplanes before bed when he’s restless and demanding ‘vrrooom’. You literally can’t use shorts to do it (which they make nearly Impossible to avoid by putting them at the top of the search results and then interspersing them with the normal videos) because after 3 or 4 plane videos they start playing some maga bro science diet video or some AI voiceover video game trash.
I can’t believe how little moral responsibility the employees and management at these companies feel.
you can turn off your watch history and YouTube becomes a lot better
No that definitely makes it worse IMO. The insight into what people really trend on YouTube is one I do not want to see.
Turning off watch history also turns off trending of what other people watch.
The best way I can explain it's that sometimes I had willpower, but I lacked the awareness needed to actually use it. For example, when I was studying, I used to automatically take a break and open Instagram and start watching Reels, it was just a reflex. Now, I have a barrier that makes me aware of what I'm doing, so from this "awareness", is easier to to enforce willpower
I've always figured that this type of thing is best used to stop you from getting addicted, not to stop an already-formed addiction. Or on the flip-side, when you've mostly overcome an addiction but need a helping hand to prevent relapse.
this is like putting a wall in front of, or just beyond the edge of, the slippery slope. the need to make an intentional choice or pause before doing the "getting stuck scrolling" behavior is an opportunity for you to catch yourself and see if that's what you really want.
the platform is designed to capitalize on your slip ups in willpower. you can have great impulse control, but can you have it tirelessly, around the clock? this thing is lurking until you slip, as long as you're on it. attention capture is the goal.
I guess my willpower just manifests itself in a different manner. If I lack the impulse control to prevent myself from opening up an app, it seems odd to me to start blocking particular features in the app to manage that impulse.
you mean as opposed to going cold turkey? That makes sense! I personally have wondered about something like this for just FB Groups - I want to read my neighborhood buy nothing page, but I don't want a curated attention-grabbing experience in the full app. So I'd love like, an RSS reader for just group posts that let me direct open a post in the app if I wanted to respond.
Like the chips by the checkout in the grocery store, the "path" you have to take into the app requires you to put on horse blinders if you want to complete what you came in for without getting "engaged". It's very tiring if you're at all susceptible to distraction.
I personally don't watch short form content, but I do use services that provide it (among other things).
They push the short form content really, really hard and for me it's not a willpower issue, it's an "I don't ever want to see this feature again because I'll never use it" issue.
I kicked the addiciton a few years back. However there are still things on facebook worth looking at, and there is no easy way to find those without also getting all the addicting things I don't want. I want to see my friend's life. However some of them don't have a life and instead are constantly sharing the "you won't believe what [other political side] just did" garbage.
F.B. Purity can get rid of all that.
https://www.fbpurity.com/