Avatar
mleku
dff36e5ee6003413b8a6a2615d1712b453c289dee057c90e9416c3cbde553f22
founder of the gopher milk factory https://geyser.fund/project/gophermilkfactory Go and Bitcoin maximalist remnant living in Madeira and working to help the free humans connect with each other.
Replying to Avatar mleku

i've been minimally using matrix, and nostr messages for the small amount of IM i do these days, but then today after an important contact kinda begged me to install simplex.

i was like, "but there's no desktop app."

https://simplex.chat/downloads/#desktop-app

there is now a desktop app. even has a .deb for ubuntu/debian/pop users, i'm running the appimage, and for all the silly people with windows and mac, even you can have simplex.

it seems to be the choice du jour for nostr/bitcoin users.

i have a friend in bulgaria who pointed me to another, similar app called 'session' but i'm a bit sus on that one. well, simplex is probably not much different, but the principle is the same: identity is a key you hold.

not your key, not your identity.

i guess i can drop my simplex link into my nostr profile too, to make it easy to get in touch with me.

as i was posting it into my profile i saw the last part of the simplex address.

sooooooo... this is basically torchat.

at last, someone has made a torchat again.

i've been minimally using matrix, and nostr messages for the small amount of IM i do these days, but then today after an important contact kinda begged me to install simplex.

i was like, "but there's no desktop app."

https://simplex.chat/downloads/#desktop-app

there is now a desktop app. even has a .deb for ubuntu/debian/pop users, i'm running the appimage, and for all the silly people with windows and mac, even you can have simplex.

it seems to be the choice du jour for nostr/bitcoin users.

i have a friend in bulgaria who pointed me to another, similar app called 'session' but i'm a bit sus on that one. well, simplex is probably not much different, but the principle is the same: identity is a key you hold.

not your key, not your identity.

i guess i can drop my simplex link into my nostr profile too, to make it easy to get in touch with me.

Replying to Avatar mcshane

🧠

scratching my head wondering how someone could believe that was the intent of the image.

that's what i mean... the amount of your energy that is released for your use when you take the risk of detaching from the scenario where they constantly impinge on your consciousness, costs you time and health, and when you get that back you realise just how expensive it actually was, and what a bad deal it was to tolerate it.

my biggest irritations now are screaming children and occasionally singing canines and loud motorcycles echoing through the valley.

the noetic pollution is drastically reduced compared to the UK, and my productivity has gone up 10x.

coracle only for me.

it's simpler and the guy building it has a heart.

i have several other nostr web app devs on my block list because of their garbage notes, definitely not keen on using their garbage apps either.

i am fighting with btcd because i don't want to cuck my work with imports of decred repositories or hidden imports of other packages that duplicate what i've already got imported in one place.

it may seem like i'm making a lot of work for myself but actually, this is so the work i do later on isn't so difficult.

not many people seem to think of their future self in their today actions.

the btcd repository is an example of a monument to not giving any thought to future self.

i'm only fixing it for me, but maybe some poor soul looking for a way to write Go apps without drowning in btcd will gratefully bump into my work and praise the lard that someone cares about these things.

i have only two words for the chaos of btcd module hell

picko materinu

btcutil is a shitstorm of retardation. gonna have to go back to the drawing board on the can of worms i just opened:

(this is what happens when you are trying to avoid maintaining source code due only to go modules and don't bite the bullet and do it properly)

no idea how i'm gonna fix this at this point, maybe i need to step back a couple of steps to see why did this. btcec was simple compared to this.

btw, all of this is unnecessary because i have got all these things all zipped up in a couple of neat packages. i will just have to deal with redoing the imports when the upstream gets patched and it's gonna be a security hazard until i find a better solution.

[me@ip3 btcutil]$ go mod tidy

go: downloading github.com/mleku/ec/chainhash v1.0.0

github.com/mleku/btcutil imports

github.com/btcsuite/btcd/chaincfg/chainhash: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil imports

github.com/btcsuite/btcd/btcec/v2 imports

github.com/mleku/ec/secp: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil imports

github.com/btcsuite/btcd/wire tested by

github.com/btcsuite/btcd/wire.test imports

github.com/stretchr/testify/require: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/txscript imports

github.com/btcsuite/btcd/btcec/v2/schnorr imports

github.com/mleku/ec: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/txscript imports

github.com/btcsuite/btcd/btcec/v2/schnorr imports

github.com/mleku/ec/chainhash: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/txscript imports

github.com/btcsuite/btcd/btcec/v2/schnorr imports

github.com/mleku/ec/secp/schnorr: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/blockchain tested by

github.com/btcsuite/btcd/blockchain.test imports

github.com/btcsuite/btcd/database/ffldb imports

github.com/syndtr/goleveldb/leveldb: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/blockchain tested by

github.com/btcsuite/btcd/blockchain.test imports

github.com/btcsuite/btcd/database/ffldb imports

github.com/syndtr/goleveldb/leveldb/comparer: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/blockchain tested by

github.com/btcsuite/btcd/blockchain.test imports

github.com/btcsuite/btcd/database/ffldb imports

github.com/syndtr/goleveldb/leveldb/errors: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/blockchain tested by

github.com/btcsuite/btcd/blockchain.test imports

github.com/btcsuite/btcd/database/ffldb imports

github.com/syndtr/goleveldb/leveldb/filter: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/blockchain tested by

github.com/btcsuite/btcd/blockchain.test imports

github.com/btcsuite/btcd/database/ffldb imports

github.com/syndtr/goleveldb/leveldb/iterator: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/blockchain tested by

github.com/btcsuite/btcd/blockchain.test imports

github.com/btcsuite/btcd/database/ffldb imports

github.com/syndtr/goleveldb/leveldb/opt: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/blockchain tested by

github.com/btcsuite/btcd/blockchain.test imports

github.com/btcsuite/btcd/database/ffldb imports

github.com/syndtr/goleveldb/leveldb/util: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/txscript imports

github.com/btcsuite/btcd/btcec/v2/ecdsa tested by

github.com/btcsuite/btcd/btcec/v2/ecdsa.test imports

github.com/dchest/blake256: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

github.com/mleku/btcutil/bloom imports

github.com/btcsuite/btcd/txscript imports

github.com/btcsuite/btcd/btcec/v2/ecdsa tested by

github.com/btcsuite/btcd/btcec/v2/ecdsa.test imports

github.com/mleku/ec/ecdsa: github.com/btcsuite/btcd/chaincfg/chainhash@v1.0.2: reading github.com/mleku/ec/chainhash/go.mod at revision chainhash/v1.0.0: unknown revision chainhash/v1.0.0

go: github.com/mleku/ec@v1.0.0 used for two different module paths (github.com/btcsuite/btcd/btcec/v2 and github.com/decred/dcrd/dcrec/secp256k1/v4)

[me@ip3 btcutil]$

Replying to Avatar mleku

https://mahorka.bandcamp.com/album/escapism

https://mahorka.bandcamp.com/album/never-seen-a-sky

while i'm in music recommendation mode, i know this artist personally. he was shocked when i bought the first one linked above, didn't have any way to actually get paid for it.

sadly a very neglected scene, the Sofia underground electronic music scene, so much so that most of the artists went back to other things because it was so hard to make money playing gigs in their home town, and the incroachment of the EU snuffed out the underground culture steadily from 2007's accession until now, basically was dead by 2014.

but at least you can listen to some of teh sounds inspired by the dusty, black soil, thermal spring riddled land of the Serdika Plateau.

the second one hilarious pun you have to have lived on the streets of Sofia to understand... kartoni network... karton is the way they say 'cardboard' and usually refers to what you roll to put a tip on a joint.

also the label, 'mahorka records' - mahorka is originally bulgarian gypsy slang (ciganski) for a cigarette rolled out of cigarette butts and often with 'karton' for the tip and very often using 'vestnik' hartiya, newspaper, as the wrapping.

dirty things that you learn in the dirty, warm drains of the serdika plateau.

https://mahorka.bandcamp.com/album/escapism

https://mahorka.bandcamp.com/album/never-seen-a-sky

while i'm in music recommendation mode, i know this artist personally. he was shocked when i bought the first one linked above, didn't have any way to actually get paid for it.

sadly a very neglected scene, the Sofia underground electronic music scene, so much so that most of the artists went back to other things because it was so hard to make money playing gigs in their home town, and the incroachment of the EU snuffed out the underground culture steadily from 2007's accession until now, basically was dead by 2014.

but at least you can listen to some of teh sounds inspired by the dusty, black soil, thermal spring riddled land of the Serdika Plateau.

https://mysticsound.bandcamp.com/

some of the best ambient/space/psychedelic music out there at the moment.

much of it eastern european, especially baltic and yugoslavia.

save as tabs, but render spaces by configuration. the Go way.

Replying to Avatar mleku

https://github.com/mleku/btcd/commit/c08425ad7ca03e08ef7758e81c4df40c88ce21d4

this is mostly based on a previous attempt by me to add some substantial performance improvements to btcd's initial block download. https://github.com/btcsuite/btcd/pull/1899 proof of work.

zero serious response to it.

the new modification includes

- switching over from the default, 64 bit wide SHA256 implementation to one that uses AVX or AVX2 if available (possibly also the SIMD extensions for ARM processors).

- adding configuration items to set more sane values for GoGC and GoMaxProcs, both of which drastically benefit initial block download by nearly doubling the block validation speed.

- embed sample configuration file, extended with some good sane values for 4gb+ memory machines to run btcd

- writes config file with freshly generated random RPC logins using the now embedded file. previously this assumed to be run as 'go run .' from the repository source and does not work from the binary. Now fixed in my patch.

the result of this tiny set of modifications on the btcd source code is more than halving the time to initial sync and actually setting the configuration file as it should be, and giving users the ability to tune how much memory it uses, and how many threads it uses.

i am going to maintain this fork, update it periodically to merge in any changes from upstream.

if i had my wish, it would be to get funded to radically improve its performance, update the wallet to bitcoin core's standard, and add a GUI to control both, ideally running both btcwallet and btcd inside LXC containers (without needing docker, this is pretty easy now).

it would only take me about 6 months to at least bring it to feature parity and performance as bitcoin core, just little old me.

the task isn't really that big, the hardest bit is decoding the poorly documented C++ code in bitcoin core and deciphering the badly written python reference code in non-implemented BIPs.

and it would take a sum total of 25 seconds plus download time to build it and start using it, from source. In fact i would want to make a script that does that all automatically including managing its own little private Go installation, and maintaining its updates and hot-reloading it on user request.

yes, very likely there is a lot of people losing money to this.

but no, as a parallel comment points out, they are probably front running on this data.

https://github.com/mleku/btcd/commit/c08425ad7ca03e08ef7758e81c4df40c88ce21d4

this is mostly based on a previous attempt by me to add some substantial performance improvements to btcd's initial block download. https://github.com/btcsuite/btcd/pull/1899 proof of work.

zero serious response to it.

the new modification includes

- switching over from the default, 64 bit wide SHA256 implementation to one that uses AVX or AVX2 if available (possibly also the SIMD extensions for ARM processors).

- adding configuration items to set more sane values for GoGC and GoMaxProcs, both of which drastically benefit initial block download by nearly doubling the block validation speed.

- embed sample configuration file, extended with some good sane values for 4gb+ memory machines to run btcd

- writes config file with freshly generated random RPC logins using the now embedded file. previously this assumed to be run as 'go run .' from the repository source and does not work from the binary. Now fixed in my patch.

the result of this tiny set of modifications on the btcd source code is more than halving the time to initial sync and actually setting the configuration file as it should be, and giving users the ability to tune how much memory it uses, and how many threads it uses.