Avatar
unclebobmartin
2ef93f01cd2493e04235a6b87b10d3c4a74e2a7eb7c3caf168268f6af73314b5
Uncle Bob, Software Craftsman. http://cleancoder.com http://cleancoders.com

Nah, that's like saying that the previous rung on the ladder we're climbing was harmful. No, it was necessary. I'm not a Java/C# programmer anymore because there are better options (Clojure); but in 1995 there were no better options.

Do not devalue the path you walked -- it's the path that got you where you are.

Inheritance is only necessary in statically typed languages, and then only for interfaces. Inheritance in a dynamically typed language is entirely different and can be useful in a much more relaxed way.

The language I currently use is Clojure. It has no inheritance per se, but that's because the things that inheritance is helpful with can be achieved through different mechanisms.

ILtehti'nsk istewei lwlhnaott btehaeb lceytboocrogp edwoietsh twhiitshc itphhiesr

There has been a very damagine meme circulating in software circles that Object Oriented Programming is obsolete and harmful. This is just plain silly. It is often promulgated by people who have recently adopted a functional programming language and have become functional zealots.

The best software designs are admixtures of the three major paradigms from the 50s and 60s: Structured Programming, Object Oriented Programming, and Functional Programming.

Yesterday was quite a day. The day before was a long drive from northern Illinois to Baton Rouge. I had planned to fly The Countess, but the weather was below my personal minimums. So we uneventfully drove the brand new car 1,000 miles in 13 hours.

Yesterday began with the birth of my tenth granchild, Conrad Sterling Martiny. My eldest daughter, Angela, came down to help out with the two older brothers. As she packed them into the car to take them to the hospital, the engine in that car failed to start. She popped the hood and found an animal nest in there.

So the two grandfathers (I and Mike) drove to the house to clean out the mess and get the car started. Other than the normal disposal of nesting materials from the entrails of an engine, this was uneventful. A simple jump-start was all that was require in the end.

Then, on the way back to the hospital we had to cross the I-10 bridge over the Mississippi to East Baton Rouge. Traffic in my lane was stop and go. While stopped I noticed next to me a rather large puddle of pinkinsh goop on the road. Then a moster truck barrelled past and spashed that crap all over my brand new car. It was a horror scene.

The windshield wipers would not clear the goop. I was reduced to peering through gaps in goop while trying in vain to use the washers to dillute the greasy goopy gunk.

Mike did a quick Google search for a car wash and we crawled our way to it.

"Car Wash" is being generous. This was a concrete block building with three bays, no equipment, and one guy with a hose and a bucket. But we were desperate. He immediately called a buddy, and the two of them worked for over an hour to clear the gunk from the car. In the and, after $60 worth of rinsing and washing and wiping and sweating (97 degreees), they finished up. I asked them what the stuff was. They said: "Fish Guts".

The car still smells of fish. I'll be running it through large mechanical car washes several more time over the next few days.

The rest of the day went very well. Mother and Baby are fine. Family is joyous. And the Grampa's will one day tell our new little "Chum" why we sometimes use that name for him.

There is nothing that prevents #nostr relays from developing algorithms that favor certain content, or that recognize the preferences of their users and forward favored content to them. Nothing prevents a relay from sending it's own messages to users with recommendations for notes, users, and/or other relays. I think it's just a matter of time before that kind of stuff happens.

Relays can also inhibit certain users and certain topics. Again, this is just a matter of time.

The difference is that the walls of the walled garden are not prisons. Any #nostr user can step outside one walled garden into another, or into the unwalled stream of free information.

From: tekne<-cameri at 07/17 10:47

> Respectfully, this is a cope. There will always be a vast majority of people that never even desire to say something outside of the acceptable discourse (Overton Window).

>

> Walled Gardens have more engagement because they use algorithms to surface content that they know the user will find interesting.

>

> There is no reason Nostr can’t do this other than the culture of Nostr being ignorant and discouraging good user experience.

CC: #[5]

CC: #[6]

CC: #[7]

Thank you Mr. President.

From: DerekRoss at 07/16 14:29

> Bob, I just watched your first video and it's fantastic. I'll try to watch them all today. 🫂

CC: #[4]

CC: #[5]

CC: #[6]

CC: #[7]

https://www.youtube.com/channel/UCx461OFj6hkhe5ci8bwRk3w

From: Roxane<-nathanday at 07/13 09:34

> Thank you Derek for both the welcoming and the great idea of this platform ! Is there anyone I can follow who is doing a kind of "Nostr 101 " ?

CC: #[4]

CC: #[5]

CC: #[6]

From: (nostrByte) at 07/15 13:19

> Devs could learn a lot from studying this concept in more-speech. I have said for a long time, TRUST is not the same thing as FOLLOW. In more-speech I have a tab called WATCH... There I can read pub's notes for a while before adding them to my trust. Awesome work Bob.

Thanks!

> Another thing that is outstanding is the control over relays that more-speech has. Very easy to turn them off and on, and immediately obvious that the switch works becuase every post includes the relay it was retrieved from.

More control is coming. Managing and scheduling relays is a huge opportunity for really interesting features. Think about relay exploration for example, or user tracking over many relays, or relays that host specific event kinds.

>I do suggest that you make it so that one can copy the pub ID on a post without reading the whole json string. I know that truncating the npub was intentional , but for me I want to be able to copy it for other purposes.

You can copy the full npub of a user by right clicking the username in the note window. You can also copy the note id by right clicking the event id in the note window.

> I hope more people will join you in development of more-speech because there is incredible value in your client. It could use some UX help if there are devs that can take it up!

I've had a bit of help so far. I'd welcome more but I don't expect it because the code base has gotten large and I am very active in it.

>Just yesterday I was reading the issues on git-hub and there was questions about the font size, a problem I have with it due to large monitor. I assume there is a way to complie it with larger fonts, but the issues replys look as though it is not consistent across all the different headers/tools/text/etc.

Some of the fonts can be controlled by editing the private/user-configuration file. This file is read in at startup, not compiled; so you don't have to do a rebuild. More user configurations will be added to this file as time goes by, including more font and widget controls.

>

> I am studying up on clojure but have little time on my hands, being a pleb living in a fiat world where my wages do not go so far.

Clojure! It's worth the time and effort.

>

> Thanks Bob!

CC: #[4]

CC: #[5]

Owning a plane is not inexpensive. But it's also not prohibitive -- depending on your situation of course.

You can pick up a good used plane for less than you'd pay for a new car. Hangaring can be a challenge; but there are lots of ways to share hangars and share ownership for that matter.

Maintenance can get pretty expensive if you don't budget for it and squirrel the money away on a regular basis. Generally speaking you should budget for ~$100/hour, and ~100 hours per year. Ten grand is a lot; but it's squarely in the middle class budget range for someone who is motivated.

From: (nostrByte) at 07/15 13:24

> Ha, not that expensive... That is relative.

>

> My dad almost bought a cessna in the 70s becuase he thought he could make it work, and loved to fly more than anything. That is until he got real and calculated the hanger, maintenance and other fees. Planes are not for plebs unfortunately.

CC: #[4]

CC: #[5]

I don't know what "improved" means in this context.

From: (Steida) at 07/15 15:10

> How do you think this could be improved?

CC: #[4]

At the moment I write on the following relays, some of which may be defunct:

wss://at.nostrworks.com

wss://atlas.nostr.land

wss://bitcoiner.social

wss://blastr.f7z.xyz

wss://botrelay.com

wss://brb.io

wss://deschooling.us

wss://eden.nostr.land

wss://filter.nostr.wine

wss://nos.lol

wss://nostr-dev.wellorder.net

wss://nostr-pub.wellorder.net

wss://nostr-relay.wellorder.net

wss://nostr-relay.wlvs.space

wss://nostr.foundrydigital.com

wss://nostr.milou.lol

wss://nostr.oxtr.dev

wss://offchain.pub

wss://puravida.nostr.land

wss://relay.current.fyi

wss://relay.damus.io

wss://relay.nostriches.org

wss://relay.nostrplebs.com

wss://relay.nostrview.com

wss://relay.snort.social

wss://relay.thes.ai

Some might think that's too many. I might agree. On the other hand I have experienced no il-effects from sending my notes to all those relays so...

From: BloggingBitcoin<-... at 07/15 16:19

> Are your relays public? If so, where do I find them?

CC: #[4]

It's hard to know how many followers you have because #nostr doesn't keep track of things like that. Some clients do, some don't.

I get more engagement on twitter, but I have a very significant following there. I'm not looking for a huge engagement on #nostr (yet) because my goal is to promote and expand it. I'm all about the freedom of speech that #nostr provides.

From: (mahdood) at 07/15 17:17

> I have less followers on nostr but I get more engagement here. It’s hard for me to know how many users are bots or just inactive on twitter.

CC: #[5]

CC: #[6]

CC: #[7]

Perhaps you meant that #nostr is a protocol and that social networks can be built on top of protocols.

From: (EndWEF) at 07/16 05:28

> Nostr is not a social network

>

> It doesn't surprise me that Udi thinks Nostr "engagement" is comparable to centralized discovery-curated social networks

CC: #[5]

CC: #[6]

CC: #[7]

From: (EndWEF) at 07/16 05:35

> How do you know the user base of Nostr?

It's a distributed network, so there's no definitive value for the number of users. stats.nostr.band has some interesting statistics based on watching a subset of all the relays.

CC: #[4]

CC: #[5]

CC: #[6]

The notion of "following" is not intrinsic to #nostr. Certain clients implement the NIP-02 protocol as a way to implement twitter-like following; but that's just a client thing. More-speech, for example, has no concept of following. If you want to read someone's notes in more-speech, you add them to a tab. This does not involve NIP-02. Indeed, you can add all kinds of things to tabs, like threads, regular-expressions, and users. What's more, adding an author to a tab is not announced publicly.

More-speech uses NIP-02 for the concept of "Trust". If I trust that a certain npub is really who they say they are, then I can "trust" them and give them a pet name. This is then broadcast publicly in a NIP-02 contact list. There is a special tab in more-speech for trusted users. It contains all the notes sent by those users.

From: (fmar) at 07/16 07:23

> Which nostr clients are notifying that somebody follow/unfollowed you? I see primal.net webapp does this, but it is the first one I noticed. Amethyst certainly doesn't. Does damus or anyother in ios? nostr:npub1gcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqlfnj5z nostr:npub1xtscya34g58tk0z605fvr788k263gsu6cy9x0mhnm87echrgufzsevkk5s nostr:npub16c0nh3dnadzqpm76uctf5hqhe2lny344zsmpm6feee9p5rdxaa9q586nvr

CC: #[4]

CC: #[5]

CC: #[6]

From: cameri at 07/15 22:45

> If the files uploaded end up in the same server then it’s not the same. Napster was p2p file sharing if I remember correctly

Yes, that's correct. Napster had a three year meteoric run before they succumbed under a barrage of lawsuits and declared bankruptcy. I doubt any #nostr incarnation would fare better.

CC: #[5]