so, i'm trying a new thing with Junie

i've asked it to take the NWC package of https://github.com/getAlby/js-sdk and translate it to #golang

i'm sure it's gonna not work but it might be good enough that i can fix it and make it work.

why alby built half of their infra with go and never considered building the client/server parts of the NWC SDK so they can be used by go based apps is beyond me. but hopefully i will fix this, and i'm NOT porting it to go-nostr, because that is a bag of dicks, slathered in blueberry and pickles.

man, the naming scheme tho. junie (claude) copied most of it verbatim and it's like, fucks sake, it's one package, and half of it is called Nip47XXXX and the rest is NWCXXXX hey, hello? are you in there? NWC is nip-47. the package name is fucking nwc. half the fucking lines of this code are overflowing from all these repeated words. you are breaking my ability to read, bro. fuck you.

Reply to this note

Please Login to reply.

Discussion

people who think dynamic typed languages are easier are not thinking for one second about the lack of safety in this. like, the most common error in javascript is you feed a function some symbol, and it isn't the right type. the IDE can't identify the error so you can type it away freely without knowing you are making an error.

in Go, it will tell you "this symbol is not the correct type".

type matters. just like punctuation. and it saves you from having to put the fucking type name in the fucking variable and function names.

and don't get me started on the byzantine labyrinth of object type hierarchies.

the big problem with especially javascript is because of the lack of typing, errors become a thing like the old saying about children: seen but not heard.

"something went wrong"

out of sight, out of mind.

about 80% of programming work is debugging. anyone see a problem here?