Saturday night launch. 🚀 Nostr's UX problem isn't a secret. 30-day retention trends to 0%. Daily active users stuck at ~10k. Posts disappear. Followers vanish when you switch apps. Every app feels like beta software. I've spent 2+ years arguing that great UX wins. So I designed a meta-study, threw a few hundred dollars at Claude, and put together what the evidence indicates. tl;dr: Ship working experiences, then add features. 🔗 6 critical patterns backed by 100+ citations: ‣ Onboarding, content discovery, core interactions ‣ Performance, progressive complexity, cross-client consistency ‣ Anti-patterns to avoid + validation checklists I'm not a designer, but I know what good looks like. This is opinionated, evidence-based, and focused on retention. What am I missing? What did I get wrong? Send PRs this way: cc: @Karnage @elsat @daniele

Replies (105)

I'd recommend breaking this down into those 6 principles and publishing each one as a long for note, and then also summaries of those as regular short notes. Seems like most nostr devs are illiterate 😅
Karnage's avatar
Karnage 1 month ago
DMs are a mess but we don’t have broad support for DMs. We have dedicated apps for messaging. Not sure what’s wrong with relay management? Which client is giving you issues? Relay discovery won’t help because content is not that much different on them. Not sure what you mean by infinite scroll fails? Maybe expand on that? Same with muting? My muting works well? It’s not always cross client compatible but other platforms don’t even have multiple clients.
We can explain away everything if we try hard enough. That's a general observation, not aimed at you. Yes, we have an embarrassment of riches, but there's still a lot of embarrassment. Too many features no one uses and not enough that just work. I haven't seen one dedicated DM/messaging app that works with any predictability; total mess. Find a normie or even a long-time nostr user who can explain what they should do with relays. Infinite scroll breaks daily for me in Primal for Android. It just stops. Muting is a mess. Comments about it abound.
Karnage's avatar
Karnage 1 month ago
Hold up I’ll respond on desktop
Karnage's avatar
Karnage 1 month ago
I'll write a lengthier reply now that I'm on my desktop, too much to finger tap ;) I want to pre-face that I'm merely adding nuance to the conversation, not making excuses. There should be no excuses for fixing actual bugs, perhaps other than that they are super hard to fix. First point I want to touch on is the idea of cross-compatibility between clients. I don't think you brought this up, but I know others have in the past. Clients having different features that do not align with one another is a feature, not a bug. Nostr does not have a defined spec beyond what kinds you can use. All the NIPS are possibilities, not requirements. So, with this lens, I think it's important to understand that different clients will have very different features, and that is by design. It's something to embrace, not to try to "fix". Again, I don't think you said anything about this, but just putting it out there for anyone else reading. Relay management - this boils down to content as I said. It doesn't matter how well you manage your relays, if the content is not there it's not there. Could the UX get better? Absolutely. Will it help? I would guess not at this point. I use Jumble daily and I browse different relays and see seemingly different content but ultimately its the same people saying slightly different things on different relays. It's boring. Because of this I don't even want to check the relays. I do just to see what's up, but nothing is up. To truly make relay management useful and interesting, you need a lot of content to differentiate relays. But, if you think about the kind of garbage you see on X, even their numbers won't warrant super interesting relays if they switched to that model. You might get a reddit-like browsing experience but ultimately it's the same 1% of users who post everything. It could be interesting and useful at scale, but not at our scale. Pull to refresh - This to me sounds like a feature request - one that warrants active decision to include. As you know we have a different culture here from what we consider "normie fiat" apps. We value other things. For me, one of those things is not hijacking my attention to the maximum and gamifying every action. I know some clients have chose to go down that path (yakihonne) and I even considered it at one point and proposed myself, but I've come to a realization that I would rather build in mechanisms to prevent or limit addiction than to add to it. Pull to refresh is a gambling mechanic that I have considered for x21, but ultimately chose against. This was a conscious choice not to include. But, since we have such a different variety of clients, people can use others that might choose to implement it, or already do -- I don't know if any do because I haven't done a fresh round of tests recently. Discovery / onboarding - discovery is a function of content again. Yes, we can introduce methods to get people to subscribe to hashtags, to pick interests, even centralize feeds (Primal) or even introduce algos, but ultimately all of those things will boil down to not showing anything interesting to the vast majority of dopamine-jacked brains that expect instant gratification, infinite loads, pull to refresh etc... This is a walled garden / community issue to solve, much of which depends on marketing initiatives, not so much design. We can improve the design but it's a fruitless effort at the moment. Primal already has good onboarding, better than any other social media I've tried (I tested all major ones), and the feed is still full of bitcoin content. Infinite load issues - these are probably bugs and bugs should be fixed. I will not make excuses for persistent bugs. BUT, I want to give credit to devs who are fixing things all the time and have had github issues outstanding for some time trying to get to all of them. I also want to give credit to people like @elsat who started interoperability issue tracking and devs who actually try to fix those things, BUT, I would also point to the very first paragraph to say that some of this is not a problem, but a feature, by design. DMs - I can't speak much on this, I have tried Keychat and it worked fine for me. There were issues with names or something but I have not tested recently. It seems like White Noise might be good too, though i haven't used it much. Client DM implementation is an individual choice. Some clients (like x21) do not even want DMs -- this is developer choice, nothing to do with UX. It's a bitcoiner culture thing, not something that must be hammered to perfection. Content fetching / loading of reactions etc.. all has to do with relay connections and caching. This is ultimately a difficult problem and requires local solutions such that @jb55 is working on. Relay on device type of thing. It'll get better. This is a technical / engineering issue, not a designer UX issue. I write all of this not as an excuse, but to shine a light where others may not have looked or considered. There are limits to what we can replicate from the central server world, and we need to consider how much effort we should make, vs embrace what we're better at. What bugs me, is people who swing by overnight (not you), and claim to know the problems of nostr (UX) and offer quick solutions (as I tried). It's as if all of these things have not be considered before. Like, we are too dumb to see that other apps work buttery smooth from a database. A lot of these observations are rooted in experiencing ONE client and not even trying the other 90% that do those things that the one lacks in MUCH better. I've tested the onboarding of all fiat apps and they all suck. What makes them sticky is their content. We can focus to improve the 20% roughness of nostr clients, or choose to find ways to bring more people here that will actually stick around -- I think we should focus on finding ways to bring people who will stick around. On that note, there's a lot to be said about focusing on the strengths of nostr - exploring other stuff and how it can be interwoven with the social stuff. And we're doing this every day. I'm doing it, and I know others are too.
I'm grateful you're here and for what you do. "I think we should focus on finding ways to bring people who will stick around." This is one I'm stuck on. Absolutely, we do. My assertion is that there's little to no chance they will while they have to fight so hard to get the basic features to work. Maybe I'm wrong and they leave because the audience is too small.
Karnage's avatar
Karnage 1 month ago
I would look at it from the jobs to be done framework. What job do you want your client to perform? Is it doing a good job of that? Some jobs: entertainment, education, passing of time, humor, news. If you ask me, I'd say nostr fails on all fronts for the general public because we lack the variety of content that engages. Now, it does work for some people, like me, and bitcoiners mainly. So if you're building a client, focus on what you want it to be good at, and do it in an innovative manner. Simply copying an incumbent wont work because they have way more creators and highly refined engagement methods they've been testing for a decade. Biggest evidence of this being the case is people who joined and stayed around for over a year and left. If you ask them, they'll probably say something something echo chamber, got bored.
Big proponent of JTBD. Innovative, yes, so long as the friction (UX hurdle rate) isn't greater than the magic moments. I hear you loud and clear on content.
Karnage's avatar
Karnage 1 month ago
It would be cool to have a bot friendly but customizable version of what one wants to include in their client. A bunch of checkbox sections checked by default - user can unchrck and get a MD file for bots
You're not. People don't use social media to get zero interaction -- they want to feel seen even if it is token engagement. Every person I've brought to Nostr has quit because they get zero engagement. Hell, I've got a decent follower count and I get very little interaction aside from like 2-3 people.
This is a similar approach to another competing AI builder that I came across recently. And I absolutely thought of it as a power user workflow. I liked it. I believe that @Alex Gleason liked it as well. We could build this into a skill, which would be invoked when users specifically ask for it.
Amazing 👏👏👏 I would be very interested to see these issues and stats broken down per client. Each client has issues, but some do UX much better than others. How does user retention compare between users who onboard to various clients? I imagine of us have our primary client that we do most everything on, and then we supplement with other apps for missing features. If users onboard to a client with shitty UX, I would guess they’re more likely to leave than a user who onboards to a client with a better UX.
They are sequenced along a typical user journey, yes. From first point of likely churn to the next.
I think a review of general code quality, clean coding practices, and automated testing is worth including as well. I've attached a system prompt snippet to teach an LLM composite design, which is the best way I know for determining code quality. A prompt would then go something like: "Evaluate this codebase according to the principles of composite design. Summarize the module strength and coupling of the various parts of the codebase. Inspect how well the included unit, integration, and end-to-end tests validate the intended function of the program." --- ## Software Design Principles The following is a methodology for evaluating software code according to Composite Design (Glenford Myers, 1975) in the form of Functional Decomposition. Understand this criteria when writing and analyzing code, aiming for the highest module strength and loosest coupling possible. ### Definitions - **Module**: A group of program statements that have a defined beginning and end, collectively referenced by a module name, and can be called from other modules. Corresponds to the "function" in most modern languages. ### Problem Structure Composite analysis begins with the problem structure. A piece of software is typically comprised of several problem structures. The problem structure is a rough sketch of the problem the software is attempting to solve. It is presented in functional, rather than procedural, terms. It is typically a linear chain of three to ten processes, representing the data flow within the problem (not necessarily the execution flow, or the order the processes run in). For example, the problem structure of an airline reservation system might be - Input transaction - Read flight files - Update flight files - Update accounts-receivable file - Write ticket - Send load & trim data - Return flight information ### External Data Streams After the problem structure is defined, the next step is to identify the streams of data that are both external and conceptual. External streams of data are those that begin and/or end outside of the system. Conceptual streams of data are those containing related data. ### Points of Highest Abstraction From the identified external streams of data, the next step is to determine the points of highest abstraction for those streams. Data is transformed as it moves through the problem. From the starting input, there comes a point where input stream seems to disappear, as its data has transformed into a form that no longer resembles its origins. That point is called the Most Abstract Input Data. When the problem is viewed in reverse, from the ending output, a similar point can be found, the Most Abstract Output Data. The section of the problem in between the Most Abstract Input and the Most Abstract Output is the Central Transform. Sometimes, there is no Central Transform, and the point of Most Abstract Input and Most Abstract Output are the same. Visually, the parts of the problem structure become as follows: Major Input Stream -> Most Abstract Input Data -> Central Transform -> Most Abstract Output Data -> Major Output Stream ### Functional Decomposition Following from the determination of the points of highest abstraction, the next step is decomposition. The problem structure is broken into three parts: the major input stream, the central transform, and the major output stream. Take each part and describe it as a function, with its inputs and outputs. The input and output streams usually have no input nor output, respectively. From these three submodules, the process of composite analysis can repeat, treating each as a subproblem, which will have its own problem structure and points of highest abstraction. The recursion continues until the subproblems cannot be broken down further. #### Formatting Decompositions If a program contains modules A, B, and C, where A calls B and C, and B calls C, the functional decompositions would be notated as follows. Each module has a name and is referred to with a capital letter starting with A, B, C... then AA, AB, AC... and so on. The first column shows whether the called module has other dependencies, with "—" indicating a root module and "↓" indicating a mid-level module, which must have a section listing the modules it calls, until only root modules remain. Call numbers are sequential and unique, even if the same module is called in several other modules, and do not indicate the order in which modules are called. --- **A. Name of Module A** | | Call # | Module | Module Name | Inputs | Outputs | | --- | ------ | ------ | ---------------- | ------ | ------- | | ↓ | 1 | B | Name of Module B | A | X | | — | 2 | C | Name of Module C | B | Y | **B. Name of Module B** | | Call # | Module | Module Name | Inputs | Outputs | | --- | ------ | ------ | ---------------- | ------ | ------- | | — | 3 | C | Name of Module C | C | Z | --- ### Evaluating Software #### Module Strength In composite design, there are several levels of module strength. In the generated code, make each module as strong as possible. - **Functional**: The strongest module. All of the elements are related to the performance of a single function. - **Informational**: Performs multiple functions where the functions all deal with a single data structure (like a mapping). Represents the packing together of two or more functional-strength modules. - **Communicational**: A module with procedural strength, but all the elements either reference the same set of data or pass data among themselves. - **Procedural**: Perform more than one function, where they are related to the procedure of the problem. - **Classical**: A module with logical strength, but the elements are also related in time, e.g. sequentially. - **Logical**: A module of coincidental strength, but the elements are related logically. - **Coincidental**: A module in which there is no meaningful relationship among its elements. #### Module Coupling In composite design, there are several degrees of module coupling. In the generated code, make each module as loosely coupled as possible. - **Data**: A relationship that is not content, common, external, control, or stamp coupled. All input and output are passed as arguments or return variables. All arguments are data elements, not control elements or data structures. - **Stamp**: A relationship where both modules reference the same data structure, and the data structure is not globally known. - **Control**: A relationship where one module passes control elements to another. Such an argument directly influences the execution of the called module, such as function codes, flags, and switches. - **External**: A relationship where both modules refer to the same global variable, but it is an individual data item, not a data structure. - **Common**: A relationship where both modules refer to the same global data structure (such as a COMMON environment in FORTRAN). - **Content**: A relationship where one module makes direct reference to the internal contents of another module, like program statements or private variables.
This is a superb post and great discussion. Thanks for taking the time and distilling your thoughts.
I agree with Vanessa, enjoying following along and a bunch of good points. As pretty much only a Primal user, it serves my purposes well with the exception that I often don't seem to get DMs (although at times they do come through...) Mostly a quiet guy, but other than a few Telegram groups on certain subjects, I really don't use other social media generally. No twitter, Fakebook, tik tok or whatever... I may not be the average though... 😉😂
I agree with Vanessa, enjoying following along and a bunch of good points. As pretty much only a Primal user, it serves my purposes well with the exception that I often don't seem to get DMs (although at times they do come through...) Mostly a quiet guy, but other than a few Telegram groups on certain subjects, I really don't use other social media generally. No twitter, Fakebook, tik tok or whatever... I may not be the average though... 😉😂
I agree with Vanessa, enjoying following along and a bunch of good points. As pretty much only a Primal user, it serves my purposes well with the exception that I often don't seem to get DMs (although at times they do come through...) Mostly a quiet guy, but other than a few Telegram groups on certain subjects, I really don't use other social media generally. No twitter, Fakebook, tik tok or whatever... I may not be the average though... 😉😂
We are looking for someone who can invest 45,000 US dollars in our company. We are looking for an investor who can lend 45,000 US dollars to our company. We are looking for an investor who can invest 45,000 US dollars in our company. With this budget, we will produce our own uniquely designed furniture through our contracted manufacturers and offer them to the global market. By producing in bulk (wholesale), we will significantly reduce production costs and be able to sell high-quality, durable, and aesthetically pleasing furniture at affordable prices. With the budget of 45,000 US dollars you will invest in our company, we will produce our own designed furniture and sell it in the global market. With the money you lend, we will have the company we have agreed on produce quality furniture for a certain amount of money and sell it on the international market. Since our furniture will be produced wholesale, we will provide a cost advantage and will be offered to customers at affordable prices. In short, we will be able to sell quality, beautiful-looking, comfortable furniture to people at affordable prices. Since the furniture we produce will be made of cheap and high-quality materials, people will want to buy it quickly. You know that furniture is a type of profession that has been very profitable for years and will provide us with a large profit in a short time. Thanks to our experience in advertising, we will expand into international markets and make quick profits. Because our advertising network is strong, we will be able to acquire a customer base from many countries in a short time. This means that within this project, your money will grow more than fivefold in a short period, providing you with a high and guaranteed profit. 💼 Your Profit: You will provide a loan of 45,000 US dollars to our company. We will invest these funds in our furniture business, grow the investment, and return a total of 250,000 US dollars to you by March 22, 2026. You will invest 45,000 US dollars in our company. When 22.03.2026 comes, I will return your money as 250,000 US dollars. In short, you will receive back the 45,000 US dollars you lent to our company as 250,000 US dollars, and we will give you back your money in an increased amount. We will contact you on March 22, 2026, and refund your winnings of 250,000 US dollars. To learn how to lend 45,000 US dollars to our company and to get detailed information about our educational project, send a message to my Telegram username below. To learn how you can invest 45,000 US dollars in our company and how you can participate in our furniture project, send a message to my Telegram username below and I will give you detailed information. To learn how you can multiply your money by investing 45,000 US dollars in our company and to get detailed information about our furniture project, send a message to my Telegram username below. To learn how you can lend 45,000 US dollars to our company and increase your money by participating in our furniture project, send a message to my Telegram username below and all detailed information will be given to you. Turn your capital into opportunity! Our company is seeking a 45,000 USD investment to expand our innovative furniture project. Join us and discover how your money can grow while supporting a global venture. For full details, message us on Telegram at the username below. For detailed information and to learn how you can participate in our furniture project, send a message to my Telegram username below and I will give you detailed information. My telegram username: @adenholding
I agree. You can have good UX for as long as the underlying code is maintainable. After that, there are no users and no experiences unless you're subsidized. Though, the cost in time and LLM credits would be very large for a network-wide code review.
But content is a chicken and egg problem. Somehow I think, that you can only move people if you understand their current issue, and make it costly for them to not change.
That would be one great way. If you can transform it to a movement, and make it cool. Like people really feel that the "cool kids" are here, you have the motivation.
Unless they're reviewing the protocol/ecosystem overall and not saying anything about a particular client (what's the context here?)
dackdel's avatar
dackdel 1 month ago
“Good content” as if content was made keep eyeballs stuck to screens. Fiat mindset. Completely disagree with that. Rest are valid points.
DM's seem to be waiting for White Noise to really work well, and I wouldn't expect anything before that. That said, it does sound like something that is, indeed, coming, and frankly promises to be the best damn DM's out there, given that it'll basically be Signal but without the need for a phone number. Until then, we almost have too much support for DM's, because people try to use them despite the fact that they're a dysfunctional mess. Maybe throw a profile field for an xmpp address and call it a day.
The UX of the late 90s internet by the standard knowledge was abysmal. You had to get a guy to come to your house and run wires, you paid for connectivity by the minute, nobody could call anyone while someone was using it unless you doubled your phone bill, videos just weren't a thing, you had to use special software to get anything interesting like music or movies, and those took days to download. You needed to learn IRC just to chat with people, you needed to learn something weird to do just about anything. Why does the name of a website start with .com? Still, it exploded. By every conventional metric the UX of the internet is better. You've got it in your phone, you can literally touch a website with your fingers and resize it, video everywhere in seconds. But in reality everyone feels stuck, nobody knows why, everyone is being guided into silos, you have to run software to read articles, some AI tells you to eat one small rock a day. Everyone still uses it. The UX for the internet is abysmal, most people don't even know it, for many it's just s feeling, some talk about social media addiction, and a few really understand how bad it is. The UX of nostr applications doesnt need to be "fixed" to onboard the masses. Whether or not the masses come is of little consequence. They'll come if they want, just like they used torrents for years. What will fix nostr isn't hiding everything behind veneer, it's the fact that all the clients are built by web devs who overcomplicate everything and need a NIP just to build something. We don't need business case minded tech people who've spent years answering to a CTO and bring that mindset with them on how to improve nostr. What we need is creativity, that and a serious reduction in code complexity.
AllieBlue ☉'s avatar
AllieBlue ☉ 1 month ago
GM! Im not techie Im an old lady cancer survivor, a consumer. I am not a builder. Ive read ⅓of this-incredible so far TY Shawn! I think interests are decentralizing and platforms are responding to that. I come here to learn techie stuff My closest general interest platform is X My fav platfotm UX is probably bsky but i hate most of its content and the users so i dont go there often Im always trying new ones, need to spend time on pickax next. I hoped nostr (via Primal) would be the library and i could follow all my individual book interests here but nostr library seems to have only a couple books so to speak. Will post more after I read the whole thing and think about it. Also i wish there were platforms that Patriot Act type fuckers would not sneak into but no such thing-go away surveillence state shitheads. View quoted note →
Thanks for the thoughtful reply. This is one perspective, yes. I happen to disagree. And I've never answered to a CTO. 😉
One really cool thing about Nostr is that you can create guest accounts for users, allowing them to not only browse but also interact with content before committing to the platform. After they’ve completed about seven engagement actions—such as posting, liking, following, or resharing—you can prompt them with something like: “Enjoying Nostr? You can make this account yours! Update your profile here.” Boom. Hooked. View quoted note →
While I am a strong advocate of investing in UX, refining UIs, and workflows, I believe that in this case it is more of a yardstick than the main culprit. The success of any project is achieved through the sum of several interconnected factors; with Nostr, we have completely new rules and values that impact user expectations, so it is not easy to know in advance how the various elements will interact with each other. So improvements in any area can help in dramatic and unexpected ways. We have a lot of work to do in the UX area, but I don't think it's that serious; quality is increasing at a rapid pace. Instead, I think we need to kick-start the network effect, which brings more content and therefore more variety and quality, creating an upward spiral. Given the specific values that Nostr promotes and the inevitable technical challenges that come with it, I believe that promoting small groups may be the right push to break the deadlock. Passionate people are more willing to put up with certain limitations or imperfections, and in fact help development by creating a solid and reliable foundation. I think that the work of @ hodlbod, @verbiricha and other on this topic is really promising. In fact, we must not forget that Nostr is not just a clone of the traditional social layer, but we have many other interconnected stuff. A note on citations: it's a good approach, but using a single random citation to support a claim isn't really helpful; you need a UX expert or a minimum study to evaluate each point. Finally, thank you for your work. All points of view are valuable for improving Nostr!
Need more clients than the official Pubky.app before I will be using it actively. Especially a mobile client would be great.
Big Bad John's avatar
Big Bad John 1 month ago
Make one! You could vibecode an app that uses our homeserver and indexer in an hour if you use the early version of our SDK. And if it can use our servers, it can use yours instead too if you want (to run some).
Appreciate your thoughtful reply, Daniele. While I disagree on pace and urgency, all your criticisms are fair. PRs welcome. 🙏🏻
I just found it easier to understand. Easier to find good people to follow through the different “trending” home feeds etc. These features might be available on Damus. In that case I didn’t find them. I just think Primal has a more polished user experience. 🤷‍♂️
Maybe! As a new user I want to find some good stuff right away. Unfortunately my experience was that you have to fight the bots and automated content for a while before you struck gold.
MattMC_745's avatar
MattMC_745 1 month ago
This is 🔥 So much fantastic info in here, well done 👍
MattMC_745's avatar
MattMC_745 1 month ago
Re: "stuck on finding ways to bring people who will stick around" and to @Karnage point re: "build vastly different social experiences" - I'm working on something which covers both these points, @Shawn I'll msg you direct to explore further
Nostr is like TCP/IP - nobody cared until the web came along. I don’t think censorship resistant social media is the thing either. Look how Twitter is turning out. My hunch is that it will be something to do with controlling and sharing your own records that can official and informal. That is what I am trying to do with #nostr #safebox
I’ve said it since day one: everyone is busy trying to rebuild Twitter or Facebook on Nostr, but that misses the point. Those platforms aren’t broken only because of content, they’re broken because the user experience is miserable.
There are much greater goals ahead, no doubt. I also think we can gain ground on the social media and “comms” front. However it plays out, my contention is good UX is what makes it stick.
Have you considered that it might be time to throw in the towel on Nostr 1.0 and start looking towards Nostr 2.0? An outright refresh? I think the protocol is too paralysed to be able to implement these recommendations in any serious way. It's been 2 years to remove NIP4 DMs, which everyone agrees are bad (and critically insecure to boot). If something that everyone agrees is bad, and has agreed as such for two years, takes this much work to be rid of (and is STILL here) then what hope for the things you're proposing? There's just no mechanism, and no mechanism to make a mechanism. And the proof is in the numbers. They are flat for 2 years at 10k, as you point out, and they will likely drop overall this year. And that's *with* all the work that's gone in. And there's no reason to think 2026 and 2027 will be different. Many hopes seem pinned on some Deus ex machina, but there are no signs what that Deus ex machina might be. I think some thoughts on what Nostr 2.0 could look like would the best thing at this stage.
UX is not fixed by starting over from scratch. It takes many years to develop all the basics needed to make good software. The protocol has problems and a successor will come someday, but we have real technical momentum we shouldn't just dump.
Much of the work can absolutely be ported over. If you remember Mozilla Suite, it became this bloated application that combined a browser, email client, and other junk. Some devs forked it and started the Firefox project as an experiment to create a leaner, faster, standalone browser alternative. That worked well enough. Many such cases. It can be the way. What we have now is not what people want. It just isn't. Not only normies but most people. Even Ross Ulbricht left to go back to posting couple pics on Instagram. I'm not saying there isn't some Deux ex machina waiting in the wings, but the numbers do not look good no matter how you frame them.
Working yes, but I'm working with others on a hard fork for a different use case. Pull requests for this current incarnation and use case are not the way, I feel. It's just not scalable.
I agree, not because of the numbers, but because there are several unsolved or poorly solved technical problems. But what is great about nostr can be preserved in a fork/port if the protocol designers understand how to sort out what is good from the garbage.
Agree. The bigger unsolved technical problems are basically Fields Medal calibre. It’s very possible to take what’s good (which is a lot, and which is obvious) and leave the Fields Medal stuff behind.
SeaMonkey, are you kidding me? SeaMonkey is used by like 17 Simpsons comic book store guy bearded weirdos who get a kick out of 1990s retro interfaces. If the end-game for Nostr is to preserve the messy origins of what we have now and then chug along in a SeaMonkey-esque way, beloved by every one of its 17 loyal users, then we may as well all just give up now.