log☇︎
94900+ entries in 0.027s
asciilifeform: Framedragger: it means that the user doesn't immediately learn the 'do we know this key?' answer.
asciilifeform: and a ~very~ serious, imho, surrender. 'oh, this thing that you could do whenever you wanted in 2013? can't do it no moar.'
asciilifeform: it's a petrocheese.
asciilifeform: but that ain't a solution imho.
asciilifeform: even, hell, distribute printed edition, like telephone book.
asciilifeform: and yes, if you were to throw out the realtime query ability, you could run phuctor as a 'newspaper'.
asciilifeform: maybe -- could. but i do not see how it can be done without losing something important.
asciilifeform: into 'paperboy' and 'writer'.
asciilifeform: this presupposes that the task can be cut.
asciilifeform: maybe i misunderstood the idea ? what was meant ?
asciilifeform: i do not need 'stable boy' for anything. there is no conceivable room, imho, for any such thing in any of my systems.
asciilifeform: imho to even suggest such a thing, betrays a very serious misunderstanding of the concept. dumb humans are in every respect an inferior version of the machine. the only thing more agonizing than programming comp, is programming dumb humans. ☟︎
asciilifeform: but meanwhile i also must address the 'stable boy' thing
asciilifeform: see if missed something.
asciilifeform: trinque: i'ma reread the trinque lines from log.
asciilifeform: trinque has entirely different algo ?
asciilifeform: this in re the dual-db optimization, yes
asciilifeform: it flows inescapably from it
asciilifeform: the dual db thing
asciilifeform: 'oh you don't need immediate links!'
asciilifeform: i must point out, that i am unwilling to solve it by redefining the problem.
asciilifeform: trinque: speaking strictly of this particular problem.
asciilifeform: per my current understanding.
asciilifeform: the performance wins described in this thread by Framedragger and trinque can only come at the cost of 1) massive increase in complexity, and in particularly state 2) loss of immediate linkability of freshly pasted keys.
asciilifeform: the apparent willingness of, e.g., Framedragger , to introduce petro-cheese is quite depressing
asciilifeform: ( to dispense, for instance, with immediate linkability )
asciilifeform: that i do ~not~ support
asciilifeform: given that i found that various otherwise reasonable people are willing to make all kinds of compromises
asciilifeform: at one point i thought that giving it to other folx could be a reasonable thing. now i ~definitely~ do not
asciilifeform: and if you think rewriting 600 ln. of python is painful -- try rewriting 60,000. which is what is being proposed : to give asciilifeform 60,000 lines to later inevitably rewrite.
asciilifeform: or the cost of getting a 2nd box with five-nines uptime.
asciilifeform: this is not even to mention the complexity cost.
asciilifeform: (immediate linkability of newly-pasted-in gpg key.)
asciilifeform: while retaining what i see as the non-negotiable features.
asciilifeform: i don't presently see them as cleanly cuttable apart
asciilifeform: trinque: sorta what Framedragger was discussing, neh
asciilifeform: which issue trinque
asciilifeform: instead of created.
asciilifeform: and if ANY of these exist previously, incl. from a submission 5 seconds ago -- they gotta be correctly linked
asciilifeform: because a key breaks down into moduli, fingerprints, and -- potentially -- known factors
asciilifeform: again, every key submission potentially affects multiple rows.
asciilifeform: and the cached copy is updated when ?
asciilifeform: and from where, do you think, it reads ?
asciilifeform: every url fetch reads.
asciilifeform: understand, if i paste a gpg key into phuctor, and cannot then ~immediately~ link to it in-chan -- phuctor is broken!! ☟︎
asciilifeform: you are STILL stuck writing new submissions to the front.
asciilifeform: having two databases sounds superficially like a great thing, until you realize that the read-write thing applies just the same to the 'front' one as it does to the existing single.
asciilifeform: asciilifeform specifically does not do this.
asciilifeform: i am quite aware that 'software industry' today consists of multiple layers of shit sandwitch, each and every one of which consisted of 'great optimization! all you gotta do is add this 5000 lines of code and 40 layer tree of state that gotta be kept consistent'
asciilifeform: see the userland fs thread, with the rebalances.
asciilifeform: it is -- quite obviously -- doing work that dun need doing. behind the curtain. 'for your own good.'
asciilifeform: the disk can push 150 MB/sec. if the db cannot do 150 MB/sec, it is retarded and must burn.
asciilifeform: and knows how to read while writing without stepping on own shoelaces.
asciilifeform: and isn't slow as molasses.
asciilifeform: because the CORRECT answer is a sane db that isn't written by motherfucking wreckers
asciilifeform: i can easily picture it . it is how commercial ( http://btcbase.org/log/2017-02-19#1615434 ) db work. google et al. i am specifically uninterested in taking that approach. ☝︎
asciilifeform: and so 'looks slow'
asciilifeform: with the difference that the queueing takes place inside pg
asciilifeform: Framedragger: this is quite similar to what already happens.
asciilifeform: it's the only serious long-term pill.
asciilifeform: CompanionCube: inevitably
asciilifeform: but this won't be happening today.
asciilifeform: and O(1) access.
asciilifeform: custom (bitwise, and using mmap) db, with fixed-length fields.
asciilifeform: what i'ma have to do, eventually, is to replace all of the idiocy. ditch the python, ditch the sql.
asciilifeform: aha.
asciilifeform: no pasaran.
asciilifeform: 'but asciilifeform ! real roquefort is soooo expensive ! let's replace SOME of it with petro-roquefort'
asciilifeform: think about this last part.
asciilifeform: including the guy who submitted 5 seconds ago.
asciilifeform: it isn't merely 'hash is computed', it shows if anyone else at any point in history ever had the mods.
asciilifeform: which, note, replaces, e.g., sks and other heathen idiocies. ☟︎
asciilifeform: the job where it takes you from a base64 gpg key you found on some godforsaken usenet post, to a permanent link in phuctor
asciilifeform: Framedragger: it ain't about 'demoocracy', it is about actually doing the job
asciilifeform: 'but does it do the same job ?' 'ummmmm didn't think of it'
asciilifeform: 'i can make it BETTER, FASTER, STRONGER!1111'
asciilifeform: EVERYBODY thinks they're soooo much cleverer than dumb old asciilifeform ☟︎
asciilifeform: ABSOLUTELY
asciilifeform: aaaahahahahahaha
asciilifeform: if the 'www db' isn't writable
asciilifeform: does he IMMEDIATELY get a bookmarkable link based on the key's hash ? that he can come back to next hour, next day, next decade ? if so, how ?? ☟︎
asciilifeform: where does it go ?
asciilifeform: under your hypothetical system
asciilifeform: what happens when a user submits a gpg key ?
asciilifeform: theoretically this can be done on one box. but -- for my enlightenment, Framedragger , describe to me :
asciilifeform: understand, Framedragger, it is 600 lines, now.
asciilifeform: Framedragger: you're talking about replication. replication, generally speaking, doesn't work. certainly not on posgres or any other free db, and certainly not without titanic sweat and inevitable increases in attack surface.
asciilifeform: not to mention their bandwidth.
asciilifeform: and the work of shepherding 2+ machines.
asciilifeform: Framedragger: why are you regarding the added complexity (100x what i have now!) as 'free' ?
asciilifeform: 'oh disk cache gotta be separate from kernel'
asciilifeform: 'oh gotta have clipboard be a separate process'
asciilifeform: Framedragger: think about how much complexity in the liquishit we call 'modern comp' comes from these attempted modularizations.
asciilifeform: lol
asciilifeform: ( ever read the s.nsa broadcast ? )
asciilifeform: Framedragger: now you're talking about having 2 boxes ? do you have an idea what the ~one~ costs ?
asciilifeform: intact ?! and somebody claims to see this from linked photo ??
asciilifeform: ~never happens.
asciilifeform: 'haha we can always get rid of $item later', mmmnope.
asciilifeform: this is how winblowz ended up with bookcase-length api, people. ☟︎