14 November 2020
f
01:52
fiatjaf
what do you think about this? https://github.com/fiatjaf/profiles
01:55
Deleted Account
🤯 I love it
01:58
"The protocol has a good name" is unchecked
01:59
How about PAM? Profiles And Messages. And you know it's not spam because there's no s.
02:05
"Using public keys as the primary identification method works because we have ways to alias them to readable names" is unchecked. Client software can prefix a nickname to every post it creates. Clients can use @nickname to message any unique nickname in their feed or followers list and the client will map it to the corresponding pubkey. If two people in your feed have duplicate nicknames, when you try to message one with @ your client will prompt you to modify the nickname for your client only. It will thenceforth display your modified nickname for that user but, when you send them a message, it will change it to the correct one behind the scenes so that the recipient and his friends will see the nickname they expect.
02:07
Does it currently work? I see go code for the relay and for the client
f
08:07
fiatjaf
it works partially
08:08
In reply to this message
I was thinking about this, but then it would create a ton of scam opportunities
08:09
but I guess it works until we reach a certain level of adoption, then we can use some merged-mined namecoin variant for unique global names
08:10
I was also thinking of having name registries, like I run one at name.bigsun.xyz and all it has is a list of names and pubkeys, so clients can display my name as fiatjaf@name.bigsun.xyz instead of my public key
08:11
In reply to this message
can it be "pam"? I don't like all-caps
08:11
then it becomes weird
f
08:55
fiatjaf
In reply to this message
also thank you for this feedback: "I love it" is good
08:56
now answer me something: isn't this the most simple idea ever? why hasn't anyone done it yet? maybe it has been tried infinite times and it never went anywhere and the failures were so big we can't even find them on google?
11:05
Deleted Account
It's a lot like irc, which went places
11:10
But there was never a way to incentivize people to run irc servers and now there is
11:10
Which should help with keeping it decentralized
11:11
In reply to this message
This reminds me of ssl
11:13
You could have unauthenticated pubkey:nickname pairs be the default but give people the option to have their pubkey:nickname pair authenticated by a third party authenticator. Then clients can have a default list of authenticators but make it easy to add new authenticators to your client or remove old ones
11:14
Authenticators will insist on unique nicknames
11:14
And if you speak with someone whose pubkey:nickname pair is authenticated by one of the people on your list of authenticators, they get a lock icon, just like ssl
f
11:35
fiatjaf
I'm not sure it is a lot like irc
11:36
I think it's nothing like irc
11:37
irc has servers which are silos, once you're in a server you can't move your channel to other server, you can't talk to people from other servers (unless, of course, you enter to that other server too).

this thing has no servers, only relays, and they can be replaced seamlessly
11:50
Deleted Account
Well it's definitely awesome
11:51
Can I has instructions for installing the client? And then the relay?
11:51
First I want to talk to you on it
f
12:54
fiatjaf
let me finish
17:00
032c85549e0719f41a1e86d9994304a9ad04ca63baae07f35a4c8d64c8a7061df5
17:00
this is so broken
17:00
it kinda works, but it is easy to work like that
17:01
must test against multiple relays
17:50
Deleted Account
17:51
I found a duplication bug?
f
17:53
fiatjaf
I don't have your pubkey, you know
17:54
In reply to this message
if you refresh it will be fine, I don't know why that happens though, it shouldn't since I'm using a Map
17:54
I also found that, but now I can't reproduce
17:58
Deleted Account
Are you 02de7b7032f66d...?
17:58
I think I am 022ae33cc86cb76a...
f
17:59
fiatjaf
give me the full thing
17:59
In reply to this message
I am this
17:59
Deleted Account
022ae33cc86cb76a57f1ef1086c9964ade535aee5f037abd41105be2ffbe14c763
f
17:59
fiatjaf
In reply to this message
can you reproduce?
18:00
18:00
well, it works
18:00
I consider my job done here
18:00
when adoption
18:02
Deleted Account
In reply to this message
Only in incognito window
18:02
I don't see a message to me
18:03
I tried refreshing
f
18:03
fiatjaf
you're following me?
18:03
Deleted Account
f
18:03
fiatjaf
you're following the wrong person
18:03
Deleted Account
No I'll try to follow you
f
18:03
fiatjaf
032c85549e0719f41a1e86d9994304a9ad04ca63baae07f35a4c8d64c8a7061df5
18:04
Deleted Account
Yay
18:04
18:05
Who is 02de7b7032f66d...? I was following her automatically when I first visited the page
18:06
In reply to this message
It's a Jaf masterpiece
18:07
All function, no form
18:07
Make it look like etleneum looks (i.e. cartoon graphics and blue arrows) and it will be a big hit
f
18:30
fiatjaf
In reply to this message
you should be following yourself automatically
18:30
but that seems broken
18:30
maybe something related to anonymous browser
18:35
In reply to this message
I was hoping you would do something 🙄
18:38
Deleted Account
Really?
18:39
I'd be honored, no one has ever wanted me to assist with design
18:39
Even my employer makes someone else come up with the designs and then has him send them to me to implement because I suck at it
18:39
But I think I can do it
f
18:56
fiatjaf
well, I wasn't thinking design specially, just something, anything
18:56
but design is great
19:10
Deleted Account
I'll fork your project and try to make it look like telegram
f
19:11
fiatjaf
the idea was for it to be like twitter, you know
19:11
everything is public
19:12
Deleted Account
Ok Twitter
f
22:53
fiatjaf
f
23:15
fiatjaf
awesome, all the bugs you found were fixed
23:15
now we're ready for the prime time
23:20
Deleted Account
swell
23:21
I opened it up on my laptop and now I have a new identity
23:21
is there a way to import my private key and messages to my laptop? Or keep it sync'd with my phone?
f
23:22
fiatjaf
please examine your question
23:23
yesterday I presented you with an idea
23:23
I wanted feedback on an idea
23:23
the idea is for an open protocol
23:23
that's the only value of the idea
23:23
today I'm showing you the worst prototype ever coded
23:23
Deleted Account
but I'm going to improve the prototype
f
23:24
fiatjaf
and you're asking me for very niche features that go only on a very polished product
23:24
Deleted Account
currently I plan to work on the ui but maybe that should come later, especially if the backend functionality is not all built out yet
f
23:24
fiatjaf
of course it is possible
23:24
Deleted Account
I am sorry for asking you for a niche feature, what I meant was "does this feature exist already" not "will you make this feature now"
f
23:25
fiatjaf
nothing exists
23:25
I don't know if I should make this feature now
23:25
Deleted Account
something cool exists
f
23:25
fiatjaf
I also want this feature so I can begin to actually use the thing
23:25
Deleted Account
probably not. Do you have a to do list? I can possibly help prioritize things if they are already on a to do list
f
23:25
fiatjaf
but I think first I must come up with a solid-enough protocol
23:25
like
23:26
the server endpoints
23:26
what a server needs to implement to be part of the network
23:26
In reply to this message
I have many ideas, but not a list
23:27
if I had a list the first item on the list would be: get more feedback from random people
23:27
see if there's anyone wanting to help make it happen
23:27
Deleted Account
sometimes I find a to do list helpful, other times I find them unhelpful because what I want to do does not match up with what the to do list says I should do, and it frustrates me to the point where I choose not to work on it at all
f
23:27
fiatjaf
In reply to this message
sure, the second thing is always what happens to me
23:27
therefore I stopped making lists
23:28
Deleted Account
that was probably a good decision then
23:28
regarding what a server needs to implement to be part of the network
23:28
let's talk about that
23:29
a server is a relay right?
f
23:29
fiatjaf
yes
23:29
Deleted Account
because there are no central servers
f
23:30
fiatjaf
see, confusing terminology
23:30
yes, I use server and relay interchangeably
23:30
Deleted Account
yes, I understand why
23:31
> For example, to "follow" someone a user just instructs their client to query the relays it knows for posts from that public key.

Is that implemented?
f
23:31
fiatjaf
yes
23:31
Deleted Account
it must be because I followed you earlier and a second or so later your post showed up
23:33
what else might a server need to do?
23:33
does a server need to talk to other servers?
23:33
yes of course it does
f
23:33
fiatjaf
no
23:33
Deleted Account
is that implemented?
f
23:33
fiatjaf
a server doesn't talk to other servers
23:33
Deleted Account
what if server A knows about a post that server B doesn't know about?
23:34
can people only get it from server A?
f
23:34
fiatjaf
yes
23:34
the idea is not that every server will store every post
23:34
but some servers will store some posts and others will store other posts
23:34
Deleted Account
server B could pretend to be a client of server A so that it can get info about all the posts from pubkeys that server B knows about
f
23:34
fiatjaf
nothing
23:35
B can do that
23:35
B can be a server that stores all posts if B wants, that's good for everyone
23:35
Deleted Account
"that's good"
23:35
but not implemented?
f
23:35
fiatjaf
no
23:36
Deleted Account
ok
23:36
what are you currently working on?
f
23:36
fiatjaf
nothing, I'm talking to you
23:36
Deleted Account
lol
23:36
you are as focused as a laser
23:37
were you working on anything related to pam before talking to me?
f
23:38
fiatjaf
yes
23:39
Deleted Account
you were fixing the bugs I found
23:39
and then you fixed them and joked that the project is now complete
f
23:40
fiatjaf
I also implemented a thing for adding relays and sharing them with your followers and tested if all was working
23:41
and fetching posts from different relays
23:41
now perhaps I should write some form of protocol spec
23:42
Deleted Account
the pam specs, or pams, will almost spell spam backwards
f
23:42
fiatjaf
and find someone to write a new relay implementation
23:42
or a new client implementation
23:42
I don't like that name, 'pam'
23:42
it's too hard to google
23:43
must be something unique
23:44
more implementations of clients and relays will be good to strengthen the protocol spec
23:44
Deleted Account
pamapar -- profiles and messages, auth, pubkeys and relays
f
23:44
fiatjaf
hahaha
23:44
this is very ugly
23:44
pam at least sounded good
23:45
but I like the idea of having a name that just lists elements of the protocol
23:45
there is no auth though
23:46
Deleted Account
messages are authenticated by your pubkey
23:46
they can only come from you
f
23:46
fiatjaf
ok, is that authentication?
23:46
then fine
23:47
Deleted Account
rampup -- relays, authenticated messages, pubkeys, utilities, and plugins
23:48
maybe it's too early to spend this much time on the name
f
23:48
fiatjaf
indeed it is
23:48
nostr - notes and other stuff transmitted by relays
23:49
Deleted Account
yes, we'll just need to come up with a companion protocol called patr
23:49
that way the patr nostr will be a regular part of everyone's life
23:50
that joke contains too much latin
f
23:51
fiatjaf
patr - profiles authenticated through relays
23:51
this will be offensive
23:51
Deleted Account
I like nostr because it sounds like the Latin word for our, which gives it a sense of community
15 November 2020
f
00:02
fiatjaf
it sounds good
00:02
Deleted Account
How will quoting work?
f
00:02
fiatjaf
why do you know latin
00:02
Deleted Account
Seminary
00:03
I went to seminary for a year
f
00:03
fiatjaf
In reply to this message
there is a field called "reference" for you to include the id of another note on it
00:03
In reply to this message
wow
00:04
ok
00:04
Deleted Account
So people you don't follow can show up in your feed if they are quoted by people you do follow
f
00:04
fiatjaf
yes, they should
00:05
Deleted Account
Then clients should have a follow button on such posts so that they don't have to use the searchbar
f
00:05
fiatjaf
but I was thinking that the "reference" field could work both for quotes/retweets and for replies
00:05
Deleted Account
Why do I keep thinking of the frontend
f
00:05
fiatjaf
there's not a lot of difference between these
00:05
thinking about the frontend is good
00:06
yeah, but not necessarily in these minimal details
00:06
I think there should be many clients, each with their own UI choices
00:06
like where to put buttons
00:06
Deleted Account
Yes
f
00:06
fiatjaf
I don't understand why the entire internet isn't using this already
00:07
Deleted Account
Running a server used to be harder than it is now
00:07
And by the time we got to now the server experts already controlled everything
00:10
Things weren't designed for many people to run a server because it wouldn't work
00:11
But now it works
f
00:11
fiatjaf
that was a good answer
00:11
I should add a FAQ to the repository with that answer
00:12
Deleted Account
Sure. Also talk about why it's more decentralized than irc
00:12
Because no one will ask that
00:12
And faq stands for forgotten-about questions
f
00:22
fiatjaf
faqs are for that kind of thing yes
00:22
anyway, I'm trying to write a brief spec
00:22
so you can appreciate and criticize my decisions
00:22
but I must stop now and sleep
00:22
so thank you
00:22
and bye