More-speech is written in Clojure, which works on Mac, PC, and Linux. It's about as cross-platform as you can get.
...and with that, I have finished reviewing the copyedits of _Functional Design_.
I teach a class tomorrow and then head back up North to our hideaway. Thursday I'll be working on more-speech again. There's so much I have to do (But not Nip-94 ;-)
I leave them in frequently. I also delete them frequently. It depends upon my mood.
And, yes, I agree. The range of applications is enormous. Nostr is not twitter, is not FB, is not UseNet. Nostr is a protocol and a community that is growing and exceling. I'm thrilled to be a part of it.
See Below
>From: eykd<-NostReport at 04/25/23 15:01:58 on wss://relay.damus.io
>---------------
>Is that why you include the > quotes in your replies?
Yes, it allows me to respond to questions and statements in-line.
>It's a bit noisy for the reader... :)
It can be, so I delete them if I think they are extraneous.
Indeed, the reason I got attracted to Nostr a year or more ago is because of the similarity with NNTP. It is that UseNet experience that I'm trying to recreate with the more-speech app.
>From: (Xannyeth) at 04/03/23 04:59:49 on wss://relay.damus.io
>---------------
>Outside of large corporations, the internet is and has always been free as in freedom. If you grew up in the pre-Facebook era you know it was a different place back then.
>
>Part of why I love Nostr so much is that it feels like a return to the internet I grew up with. No corporate overlords, no central control, just communities of people keeping their community alive as long as enough people pay the hosting bill.
Good Morning Notroddities,
I hope you notice that Nostr is still here, and still active, and that notes are still flying between us. The world has not ended. Nor shall it.
Today I must work steadfastly upon the copyedits of my book: "Functional Design". I've got to get it back to the publisher soon so they can start the page layout and composition. (Writing books is a ton of work, but a ton of fun too!)
More-speech is in a pretty good situation right now. I have not implemented NIP-94 and have no intention of doing so in the near future. Right now I am perfectly happy to render images from URLs in the notes.
More-speech is a very different kind of client. It works on your desktop, not on your phone. It's much more like an email client, than a twitter client. It also maintains a database of events that goes beyond the authors you follow. Notes are split between tabs that you create, and filtered in the manner you decide. So you can have tabs that follow authors, or tabs that follow reply chains, etc. Perusing these tabs is very fast, and can give you a very wide view of what is going on across the network.
Have fun!
github.com/unclebobmartin/more-speech
Those developer factions will not include their users. Users of the clients will always want to see messages from each other, no matter what client they are using. Users are not going to be ideologically split by the ideology of the authors of their favorite client.
This means that the client developers will find themselves under very intense pressure to cooperate and interoperate. They can stamp their feet all they want; and throw all the tantrums they like. But they WILL eventually be forced, by their constinuents, to work together.
They can do this the easy way, or the hard way, but they will eventually do it.
Because WE are nostr, not THEY.
>From: (cypherhoodlum) at 04/25/23 08:04:32 on wss://relay.damus.io
>---------------
>Bitcoin and Nostr are different though, because Nostr doesn't have any consensus algorithm. If you stubbornly choose the wrong chain, you lose money or degrade your security. If you choose "the wrong nostr client" (which doesn't exist) your client is not interoperable with other clients. Factions emerge and social networks split, but there is no economical incentive to switch clients whatsoever.
Introducing new ideas to people who don't want to hear them is always a challenge. Be gentle and polite. Do demonstrations, lunch-and-learns, hackathons, etc. Ecourage but don't demand.
You'll win a few over. You won't win them all. This will eventually lead to a divorce. You can't have a team that is divided over fundamental values.
>From: (benc) at 04/24/23 15:40:56 on wss://relay.damus.io
>---------------
>I can hardly wait.
>
>I have to say bringing these ideas to my org has been very difficult. I think it boils down to the fact that many people see specification and implementation as the same thing with a preference on implementation.
>
>Any tips on breaking that down?at is
#[1] #[2] #[3] #[4]
This is just so much fun to watch. I'm grinning ear to ear. This little NIP-94 "debate" shows just how massively successful nostr is. I mean, everybody is watching...and commenting. I'm sure you'll work this all out soon. ;-)
nostr:unclebobmartin
>From: Giszmo at 04/24/23 10:19:25 on wss://relay.nostriches.org
>---------------
>Nip-27 is strictly more flexible than nip-08.
Yes and no. NIP-27 gives the client the option to notify. Some clients might. Some clients might not. Some clients might not notify on DMs. Some clients might provide a checkbox, or a parameter or God knows what. As the author of a note, I hope I know how my client works, and how I can convince it to notify or not.
Authors have always had the option to not notify. You, Giszmo, just did it below with "jack". If you want to notify, use the gesture that invokes NIP-08. If you don't want to notify just use the author's name without adornment. Some clients could provide a special gesture for providing a picklist that inserts the author's name without adornment and therefore avoid notifying.
But whatever. Now we have three ways to mention people, two of which can notify. NIP-08 notifies. NIP-27 Might notify. The unadorned name never notifies. Great.
>
>nip-08 entangles tags with content. While not terrible as both are available at the same time, it was lacking as it did not allow to reference a profile without also including a such tag. As you mentioned, this is particularly important when "gossipping" about third parties in DMs but users might decide to not notify somebody simply because for them it would only be spam. Fiatjaf or Jack for example - you know which Jack but to be unambiguous, I could "mention" him - can't consume all their notifications as they get notified all the time. By cutting back on the notifications, their experience would improve.
>
>* #[] **always** notifies, conveys profile/event and where to find it
>* nostr:... conveys profile/event and where to find it (in the "profile" variant, not the "npub"). Notification is optional.
>
>In nip-27 the notification p-tag would not need to duplicate the relay information but would duplicate the pub key or event ID part, which is some extra bytes but that is acceptable in nostr where we care about being simple to work with. Maybe in a far future where all the world uses nostr, we will optimize this again but it should be easy to compress into a binary format to keep the optimization to the transport and persistence layer and away from the client devs.
I'm glad you enjoyed it. Stay tuned for "Functional Design".
>From: (benc) at 04/24/23 09:53:24 on wss://relay.damus.io
>---------------
>#[3] Just finished Clean Craftsmanship. I enjoyed the recasting of ideas in terms of ethics. Thanks for writing the book!
OK. I see that now.
So. Clients can leak DM mentions if they want to.
I'll stick to both NIP-08 and NIP-27 in more-speech for the time being. I like the idea that my users can choose whether or not to leak, or sub-note as they choose; and that readers will be able to tell which they are doing.
>From: jb55 at 04/24/23 09:48:03 on wss://relay.nostriches.org
>---------------
>It provides the option. You can add it or not.
#[2] at name
#[3] at Hex id
nostr:npub19mun7qwdyjf7qs3456u8kyxncjn5u2n7klpu4utgy68k4aenzj6synjnft nostr:
Having looked over the NIPS again, I do not see where the nostr:
Or maybe I'm just very confused.
I do not understand the reasoning for wanting to deprecate NIP-08.
The advantage of NIP-08 is that the format of references is strictly in the domain of the client. A client can interpret and render a reference any way it desires, because the reference is always transmitted as #[n] with a "p" tag.
The existence of the "p" tag allows clients to query relays for notes that refer to certain authors. That's a valuable feature. I want to be able to query relays to see who is publicly referring to me, or to you.
The disadvantage of NIP-08 is that people can query relays to see who is mentioned in a DM. That's bad. DMs need to be private. My solution to that would be to add a "dm-tags" field with encrypted "p" tags to the kind-4 (DM) event. The client could decrypt it and render the references as usual. That's not a hard thing to do.
The advantage to NIP-27 is that it creates a new url prefix `nostr:` for all manner of uses.
Using NIP-27 for mentions prevents the creation of "p" tags. That's good for DMs, but it also allows authors to publicly gossip about other authors without alerting the subjects of that gossip. i.e. NIP-27 references support sub-tweeting (sub-noting).
My strategy in more-speech so far is to make NIP-08 references convenient by allowing the user to type @
>From: Giszmo at 04/23/23 16:41:49 on wss://relay.nostriches.org
>---------------
>So a profile referenced in a p-tag would be exclusively for notifications and in the content for display. Slightly more bytes than keeping nip-08 alive but simpler and complete for sure.
>
>Should we mark nip-08 as obsoleted by nip-27 or are there any strong objections? Clients will probably forever want to render these first text notes correctly but maybe if clients stopped authoring them, it could be a lower priority task in every new client.

>From: fiatjaf at 04/23/23 16:19:20 on wss://relay.nostriches.org
>---------------
>I'm hoping NIP-08 will die and everybody will implement just NIP-27.

>From: erskingardner<-mazin at 04/23/23 15:16:56 on wss://relay.damus.io
>---------------
>Agree to disagree. Too much nesting and complexity is a sign of too much nesting and complexity. Code is clean or not. #[5] help me out.
>
>That said, I have very much come around on your way of thinking for JS and TS. But again, they don’t count.
My pleasure. nostr:npub1xtscya34g58tk0z605fvr788k263gsu6cy9x0mhnm87echrgufzsevkk5s
>From: jb55 at 04/23/23 09:47:11 on wss://relay.damus.io
>---------------
>whoa! Thanks #[5] !