I think you’re wrong. Pretty sure there is a way to replicate the TikTok algorithm on nostr.
Discussion
TikTok literally monitors how fast you're scrolling past posts. No way that can be recreated without massive privacy violations.
You can run the whole algorithm locally. It can definitely be replicated without violating privacy.
Oh yeah I guess I wasn't thinking of running it locally, that makes sense. This goes to the idea of having some kind of self-hosted LLM type thing on a home server...
Yeah, I want to make a TikTok clone, so I’ve done some pondering lol. At first I wanted to copy the Primal caching server and run the algorithm there, but I realized that’s not necessary to for an algorithm like what TikTok has. I think a localized algorithm lends itself to the way nostr handles metadata/labeling
Watch time is very easy to replicate lmao
You cannot. There is no way to aggregate all the notes that may exist. We can get pretty close with a big network of nip66 monitors though.
I intend on building a TikTok clone, and the way it will replicate the TikTok algorithm is to have a lightweight image recognition model and a speech-to-text model run locally when you upload a video, and generate kind 1985 (?) labels. Then it runs a local algorithm that chooses notes based on your interests. You don’t need to know about all the notes that exist, only all the kind 22 notes with associated kind 1985 labels
Sounds similar to what nostr filter relay does. Sounds nice!
I’m going to finish my degree and prove you wrong.
I think you're missing the point. Nostr works through countless asynchronous websockets. There is not such thing as a true "global feed" at an architectural level.
How does that prevent one from building an algorithmic feed? You could build it within your WoT and nobody could tell the difference
It doesn't it's just not an algorithm based on all the data available in nostr. That's the argument. Like I said, you can get pretty close with a good network of nip66 monitors. I made a bot recently to be a monitor if you'd like to check it out.
Is that how TikTok’s algo works?
TikTok has the ability to query all of the content on TikTok. Nostr does not have the ability to query all of the content on nostr, just all of the content on a set of relays.
Now that set of relays can be pretty massive, but it can never be ALL of them because they're countless.
Ah well yeah considering they run the servers. I don’t think you need that much content though. Ya know maybe a caching server isn’t a bad idea
It would be a very very large cache and you would have to seriously consider spam.
Yeah I might consider it down the line. First I need to finish my degree, then I need to build the app lol
I’ll start without any caching server, and probably without the algorithm and labeling features
The question is, how will you build it
That’s my question lol. I’m probably going to use and modify Olas code because that’s MIT license. I might build it from scratch though, idk.
I meant that language but if you haven't even considered that yet, then you're a long way off building
Oh yeah I actually don’t know how to code. Most I’ve done is build a calculator on android using Java , and a bit of JavaScript. I haven’t actually gotten to the CS stuff in my degree, I’m doing calculus rn.
But it’s going to be mobile first, so whatever the best languages are for android and iOS. But yeah it’s all just an idea in my head right now
If you want mobile then consider what platform. If you really want both then you might want to consider a framework like dart, flutter, react native or the new kid on the block lynx to build in a language that can compile to multiple platforms. Start learning about all these technologies now. Then consider pros and cons of each. Maybe make a simple app in each before picking one.
Yeah I might focus on just one platform to start. I’ll look into these. Btw I can’t zap you for some reason
What client?
I’m on primal rn
Gotta be something with the client. Works fine on amethyst and I wrote my own lnurl pay server. All the callbacks work properly. What wallet? The built in one? I'm trying to figure this out myself. You're not the first one with problems.
Yeah it worked on Nostur. I’m on iPhone, so primal is using the built in wallet, but Nostur is linked to my Alby node
Typical... nostr:nprofile1qqsdv8emcke7k3qqaldwv956tstu40ejg663gdsaayuuujs6pknw7jspp4mhxue69uhkummn9ekx7mqprpmhxue69uhhqun9d45h2mfwwpexjmtpdshxuet5qyf8wumn8ghj7ur4wfcxcetsv9njuetnn9mexk how does primal fetch my ln address?
Thanks for the zap! You won't see a receipt since my server doesn't send them "yet'
That's okay, I think few are used to "global" algo ranked posts anyway. Maybe on Reddit or YouTube, but for example on yt I either view the subscription time based feed or the home "for me" feed. The global trending feed is never interesting but that may be just me.
Whatever feed should probably be personalized which means only running algo on one's wot. Problem, I think is that's either self-host, subscription, or always running resource intensive app for a couple hops. There's wot relays, algo relays, personal haven relays. Be nice to get it wrapped up in a bun.
X has probably proved though people are willing to pay for the experience if it's worth it.