Avatar
david
e5272de914bd301755c439b88e6959a43c9d2664831f093c51e9c799a16a102f
neurologist and freedom tech maxi Co-founder @ NosFabrica 🍇 Grapevine, 🧠⚡️Brainstorm

That’s along the lines of what I was thinking. I guess the downside from a foss perspective would be if someone wanted to fork your project and play with the design, it would require a webflow subscription to do so.

Maybe that wouldn’t matter all that much. They could always just edit the design by hand.

I’m just starting to evaluate whether I’d want to use webflow as a design tool for an open source nostr app. Id love to hear from the #nostrdesign community.

Pros and cons of using webflow with open source:

https://www.flow.ninja/blog/is-webflow-open-source

Open source alternatives to webflow (webiny, webstudio, silex):

https://www.opensourcealternative.to/alternatives-to/Webflow

GM to all! ☕️ ⛅️ 🫂

🎯

The internet was only good for porn, they said.

Bitcoin was only good for drugs, they said.

Nostr was only good for … what will they say? As before, it will be victimless crimes that They (and maybe even me, and maybe even you, anon!) don’t approve of.

I imagine that when web of trust truly takes off, we’re going to see decentralized dating apps for a wide spectrum of purposes. Find your soul mate, find a one night stand, find a sex worker, find a sperm donor. No one will be able to shut any of it down.

And it’s gonna be the crucible in which decentralized Proof of Personhood is created.

There’s a working proof of concept: open my desktop app, Pretty Good Apps (GitHub.com/wds4/pretty-good), then go to Curated Lists. It will allow your Grapevine to curate a list. Any list. You give the list a name, and your WoT decides what items belong on the list and what items should be removed from the list. But it’s buggy, may crash on you, and needs redesign, which is why nostr:npub1p2uwv7qme2u92y2qcpqqvafhkkqsxfrrnz8m79lm60v4005s7vuqnexr0s is rebuilding it as a web app. In the meantime, you can either wrestle with my app or read an overview with screenshots:

https://github.com/wds4/pretty-good/blob/main/appDescriptions/curatedLists/overview.md

Replying to Avatar david

If you go to the link in my bio and scroll down to more info, one of the links is to the Curated Lists Proof of Concept (url copied in this note below), and it has information on how some of the parameters work. All of the parameters can be thought of as having two extremes: the permissive extreme, for when sybils and bad actors are not a problem and you want as much input from as many users as possible, and the restrictive extreme, for when sybils and bad actors are a problem and you want to weed them out. And the first two (of many) parameters that users will discover are:

1. The default influence score for users about whom you have no information. The restrictive extreme is to give them an influence score of zero. In other words, you blacklist everyone who is not actively endorsed by your grapevine. The permissive extreme is to give everyone a high default influence score. In other words, you whitelist everyone except those who are identified by your grapevine as bad actors. There is scrollbar between these two extremes. Actually, two scrollbars: one for the default trust score and one for your confidence in that default score, which is 0 to 100 percent. Influence is the product of these two numbers: score * confidence. If your default trust score is assigned a low confidence, then it is easy for your grapevine to overcome the default; if high confidence, harder for your grapevine to overcome the default.

2. The attenuation factor, which is a parameter controlled by a scrollbar, between 0 (restrictive) and 1 (permissive). The issue is this: how many hops away do you let your grapevine extend? Most people pick a number of hops like maybe 2 or 3 or 4. But my solution is a gradual decrease, achieved by multiplying the confidence that YOU have in each trust attestation authored by someone other than you by the attenuation factor.

If you go to my desktop app: Pretty Good Apps, then go to Curated Lists app, you can play with the above parameters and watch the influence scores of each user change in real time, as shown in a table and as depicted graphically, where the radius of each user is proportional to that user’s influence. This is the app that nostr:npub1p2uwv7qme2u92y2qcpqqvafhkkqsxfrrnz8m79lm60v4005s7vuqnexr0s is rebuilding as a web app, because I want people, particularly devs, to be able to play around with these parameters and discover how the Grapevine works.

https://github.com/wds4/pretty-good/blob/main/appDescriptions/curatedLists/overview.md

The Grapevine is definitely complicated under the hood, but there’s a certain minimum complexity that is needed if we really want it to fly, and the fact that one self-taught dev (me) can build a working proof of concept shows that it can be done.

Think of it like an airplane. There’s a certain minimum degree of complexity that needs to be achieved if we want it to fly. Web of trust is the same way. But it’s absolutely doable.

If you go to the link in my bio and scroll down to more info, one of the links is to the Curated Lists Proof of Concept (url copied in this note below), and it has information on how some of the parameters work. All of the parameters can be thought of as having two extremes: the permissive extreme, for when sybils and bad actors are not a problem and you want as much input from as many users as possible, and the restrictive extreme, for when sybils and bad actors are a problem and you want to weed them out. And the first two (of many) parameters that users will discover are:

1. The default influence score for users about whom you have no information. The restrictive extreme is to give them an influence score of zero. In other words, you blacklist everyone who is not actively endorsed by your grapevine. The permissive extreme is to give everyone a high default influence score. In other words, you whitelist everyone except those who are identified by your grapevine as bad actors. There is scrollbar between these two extremes. Actually, two scrollbars: one for the default trust score and one for your confidence in that default score, which is 0 to 100 percent. Influence is the product of these two numbers: score * confidence. If your default trust score is assigned a low confidence, then it is easy for your grapevine to overcome the default; if high confidence, harder for your grapevine to overcome the default.

2. The attenuation factor, which is a parameter controlled by a scrollbar, between 0 (restrictive) and 1 (permissive). The issue is this: how many hops away do you let your grapevine extend? Most people pick a number of hops like maybe 2 or 3 or 4. But my solution is a gradual decrease, achieved by multiplying the confidence that YOU have in each trust attestation authored by someone other than you by the attenuation factor.

If you go to my desktop app: Pretty Good Apps, then go to Curated Lists app, you can play with the above parameters and watch the influence scores of each user change in real time, as shown in a table and as depicted graphically, where the radius of each user is proportional to that user’s influence. This is the app that nostr:npub1p2uwv7qme2u92y2qcpqqvafhkkqsxfrrnz8m79lm60v4005s7vuqnexr0s is rebuilding as a web app, because I want people, particularly devs, to be able to play around with these parameters and discover how the Grapevine works.

https://github.com/wds4/pretty-good/blob/main/appDescriptions/curatedLists/overview.md

#100aDayUntil100k

#100aDayTil100k

#100pushups

25 x 4 incline with weights

Day 53 ✔️

#100aDayUntil100k

#100aDayTil100k

#100pushups

30 + 30 regular

20 decline

10 + 10 diamond

Day 52 ✅

The central purpose of the Grapevine is to focus your most value commodity, your ATTENTION, where YOU will find the most value, as judged by YOU.

Your Grapevine tells you user A is a bot? IGNORE.

Your Grapevine tells you that user B, hidden on the far side of the world with only a few followers, is whispering the knowledge you seek on some niche (to the world) but crucial (to you) topic? ATTEND.

No single point of failure, because YOU are always at the center of your Grapevine.

No ads. No commercials. No ADHD.

Bitcoin secures our time. Web of trust secures our attention.

We need this to happen yesterday.

This will be how we win.

The tapestry protocol (of which the Grapevine is a subset) is independent of nostr, with the exception of a collection of TIPs that direct now tapestry and grapevine data (like attestations) is stored and retrieved from nostr.

So there are a variety of lists that I’d envision might go through the following progression:

1. The dev makes one list that everyone uses. Meaning that the dev decides what items belong on the list and what don’t.

2. Users are enabled to manage their own lists, meaning Alice decides what items go on her list and what don’t. Her list is stored using standard nostr primitives like NIP-51.

3. The Grapevine enables Alice to delegate management of the list to her Grapevine, meaning that the Grapevine is empowered to decide what items go on the list and what don’t. This will require the Grapevine-managed list to be written out using NIP-51 and/or whatever other nostr primitives we decide to use.

I hope I am addressing the point you’re making about nostr primitives — let me know if I’ve misunderstood! 😁

Regarding complexity: the Grapevine as I envision it is VERY complex for the developer, but it can be made as simple for the user as we want it to be. The Grapevine has lots of parameters that users can adjust, and a common question will be when to give the user the option to adjust some parameter vs when to set some default value and hide it. Too many options can be overwhelming. But these parameters will be essential when the invariable sybil attacks and bad actors try to infiltrate your Grapevine. It will take some mad design skillz to know how to unveil some of these options when the time is right.

Regarding hierarchies: the long term plan will be that your Grapevine manages all hierarchies for you, unless you want to roll up your sleeves and dig into it yourself. Most users will not want to spend the time and effort editing hierarchies, UNLESS they want some category(ies) to exist that have not yet been submitted and placed into the hierarchy. In that case, many users will want to roll up their sleeves and get it done, but once the hierarchy is properly edited and a few users endorse the changes (assuming they’re reasonable), then the entire world will benefit from your work and no one will have to repeat it.

I sometimes think about WoT as like an airplane. Omit just one little piece and it simply doesn’t get off the ground.

But at some point, we’ll see lift off. The question is: what will it take to get it off the ground?

I’m hoping that one of the above apps in my previous post will be sufficiently useful + sufficiently well designed and executed that we’ll see some degree of takeoff.

Something like the Nostr App Directory is a genuine pain point, is it not? Imagine knowing you can visit this site with anticipation, wondering what new nostr app you will discover, or maybe what entirely new category of apps you’ll discover that you didn’t even know existed! 😃

Sous vide with salt, pepper, garlic and rosemary at 135 for 1-2 hours then sear on cast iron is my fav

If there’s time, make a pan sauce by reducing the broth from the sous vide bag with some red wine, maybe add some mustard at the end

+ spinach, blueberries, feta cheese, candied walnuts, olive oil and balsamic vinegar

🤌🏻