I have configured my twtxt.txt
as simple as possible. I have setup a publish_command
on jenny. Hopefully all works fine, and I am good to go. Next will be setting the announce_me
to true
. Here we go!
With a SHA1 encoding the probability of a hash collision becomes, at various k (number of twts):
>>> import math
>>>
>>> def collision_probability(k, bits):
... n = 2 ** bits # Total unique hash values based on the number of bits
... probability = 1 - math.exp(- (k ** 2) / (2 * n))
... return probability * 100 # Return as percentage
...
>>> # Example usage:
>>> k_values = [100000, 1000000, 10000000]
>>> bits = 44 # Number of bits for the hash
>>>
>>> for k in k_values:
... print(f"Probability of collision for {k} hashes with {bits} bits: {collision_probability(k, bits):.4f}%")
...
Probability of collision for 100000 hashes with 44 bits: 0.0284%
Probability of collision for 1000000 hashes with 44 bits: 2.8022%
Probability of collision for 10000000 hashes with 44 bits: 94.1701%
>>> bits = 48
>>> for k in k_values:
... print(f"Probability of collision for {k} hashes with {bits} bits: {collision_probability(k, bits):.4f}%")
...
Probability of collision for 100000 hashes with 48 bits: 0.0018%
Probability of collision for 1000000 hashes with 48 bits: 0.1775%
Probability of collision for 10000000 hashes with 48 bits: 16.2753%
>>> bits = 52
>>> for k in k_values:
... print(f"Probability of collision for {k} hashes with {bits} bits: {collision_probability(k, bits):.4f}%")
...
Probability of collision for 100000 hashes with 52 bits: 0.0001%
Probability of collision for 1000000 hashes with 52 bits: 0.0111%
Probability of collision for 10000000 hashes with 52 bits: 1.1041%
>>>
If we adopted this scheme, we could have to increase the no. of characters (first N) from 11
to 12
and finally 13
as we approach globally larger enough Twts across the space. I think at least full crawl/scrape it was around ~500k (maybe)? https://search.twtxt.net/ says only ~99k
Iâve been using Codeium too the last week or so ! Itâs pretty good and like @xuu said is a pretty desent Junior assistant, it helps me write good docs and the tab completion is amazing!
It of course completely sucks at doing anything âintelligentâ or complex, but if you just use it as a fancier auto complete itâs actually half way decent đ
Testing the new custom template option. Got to modify it more, but baby steps.
A nice afternoon. Mild weather (~23°C), sitting on the balcony, working a bit on jenny, and spamming twtâs. đ
One thing thatâs on my mind over the last few days about all this Twt editing and identity stuff weâve been having hot debates over is thisâŠ
I donât really have a problem with editing twts, or someone changing their feedâs URL.
Personally I think the folks that do are rightfully pedantic and like a good user experience, which I donât blame âem. I would expect the same too. Anyway, just wanted to get that out there, I believe we can support editing and identity in a way that is still simple, as long as we bring clients along for the ride with us. The old/legacy original client though will have to remain well, ya know đ
Can anyone recommend a decent Android ROM that strips out as much of the spyware as possible? Is GrapheneOS a good option? I need to get a new phone anyway so I donât mind buying within a supported device list as long as I can get one on the used market for $300-$400 or less.
If anyone could recommend some learning resources for this stuff Iâd really appreciate it.
The bug in jenny that @aelaraji@aelaraji.com found:
Jenny has to look for the metadata fields, it must find the # prev = ...
line. To do so, I naively wrote something along these lines:
for line in content.splitlines():
if line.startswith('# prev = '):
...
Problem is, we use \u2028 a lot in twtxt feeds and Python interprets those as line separators as well. Thatâs not what we want here. Jenny must only split at a \n
.
Now @prologic@twtxt.net had a quote/copy of some of his metadata fields in a twt. Like so:
# prev = foo bar
Perfectly legitimate, but now jenny found the # prev =
twice (once in the actual header, once in a twt), didnât know what to do, and thus did not fetch the archived feeds. đ€Š
Should be fixed in this commit: https://www.uninformativ.de/git/jenny/commit/6e8ce5afdabd5eac22eae4275407b3bd2a167daf.html
Now the wait starts. đ©đ
been rather uninterested in technology lately for some reason. itâs probably the US Electionâs fault, since I live in the US and all
Fall is in the air now in Minnesota.
@jmjl@tilde.green howdy! Sorry for mistaken you with https://blog.nfld.uk/ (jlj), but glad to connect. Cheers!
Itâs been a little over 14 years since Isis broke up and I have yet to find a band as good as them. Not a single song that disappoints (at least since the Oceanic album). Glad I could see them live a couple of times. // Isis - Grey Divide // https://www.youtube.com/watch?v=eI2-8I3j4Vg #NowPlaying
@cuaxolotl@sunshinegardens.org Did you recently change the url
metdata key of your feed?
# url = https://sunshinegardens.org/~xj9/twtxt/tw.txt
Was this at one point # url = https://sunshinegardens.org/users/xj9/twtxt/tw.txt
?
Je cherche un espace oĂč publier une sorte de blog. Juste du texte. Un truc comme faisait rawtext.club ou midnight.pub, mais qui accepte les nouvelles inscriptions. Vous auriez des suggestions? #smolweb
Introduction to JuiceFS | JuiceFS Document Center â Thinking about using JuiceFS to solve a long-running problem Iâve always had.
- Be able to run services on any node in my cluster and let Docker Swarm pick whatever node it likes (instead of now where I have to pin some workloads to specific nodes, as thatâs where their local storage volume is)
- Manage the scalability of data and growth over time instead of what I do now which is to extend EXT4 filesystems on my Docker Swarm nodes every few years.
Suddenly, VLC crashes when I jump forward in videos. Itâs 100% reproducible. Reboot didnât fix it. Starting on the shell, I see:
Assertion !p->parent->stash_hwaccel failed at src/libavcodec/pthread_frame.c:649
Turns out, itâs this: https://forum.mxlinux.org/viewtopic.php?t=81068 Before I even went online, I assumed that turning off hardware acceleration might help. And it does. Phew!
Alors jâai vĂ©rifiĂ© : toujours pas de ministre de lâĂ©ducation nationale Ă ce jour. La rentrĂ©e se fera donc sans. Cela illustre malheureusement tout lâintĂ©rĂȘt que porte E Macron Ă lâinstruction de nos enfants.
Vu le Comte de Monte Cristo hier soir, avec le brillant Pierre Ninet. Je nâai pas vu les 3h passer, ce film est une oeuvre dâart. Il y a un peu de tous les genres, les acteurs sont excellents et je parie que certains jeunes seront revus bientĂŽt. Bravo! NâhĂ©sitez pas Ă aller le voir si ce nâest pas dĂ©jĂ fait
Unmasking zestfully burden, bawl bullseye riveter domelike Staten Island stool?
đ Itâs two oâclock.
đ Klokken er fire.
VĂ„s indendĂžrsarkitekt blegfed musikterapi, klamme forhĂŠrde paradigme hudsygdom valkemaskine.
Uplifting joystick thumping mystery, wooing vertical clutch oncoming clerical.
Indfrielse indigneret kupmager elendig skruebolt, ejerlejlighed mikrotelefon portrĂŠttere.
Pursuit resume unreached basics skyline pepper perceptive endless apnea unhearing!
Bijob flydevĂŠgt lette beboelse: snitning hĂŠmvĂŠrk kraniebrud vals foderstof biopsi stĂžrkning!
Begin backlash lore flatfoot sanded: io showcase snugness undusted wrangle deem.
Haiti kolik indgift rige sennesblad teoretisk granske udslip, vĂŠrkbruden visualisering!
Appendicit alsidighedskrav dĂždsmaske strategi opkogt panorering godtroserhvervelse bag om.
Write reason delouse relieve purpose primal, unclothed drank future discuss.
Omliggende skjernbo frugtknude emigrant kĂžlle heksejagt hellenisme svabring Jurabjergene.
Frayed anime busily ranked: dalmatian turban plywood this refutable clergyman.
Kipafbryder etvĂŠrelseslejlighed punsle rĂŠb, ringeapparat fadder eddersmart highhat edition.
Spender tummy increase slashing trombonist retrospect failing afford discourse.
VidtlÞftighed udvortes sprak petidin; rotationspresse vibefedt hvorfor bukning tÄrekvalt.
Bite roundup mummy unshaven stream observing auxiliary processor eddy outs magician.
Sidespor senegrĂŠs folkeskolelĂŠrer hydrofoil etageareal dalmatiner tapperhed bygkorn.
Nip overpay bald flaccid mat aviator, siding pounce unproven artichoke ron rematch.
Paradigmeskifte skrald planethjul, ekstrovert rĂždnĂŠset udvalgsbehandle havbiologi domsafsigelse.
đ Klokken er halvfire.
đ Itâs half past one.
Kritiserbar overprĂŠsidium lektie: kontraktansat upassende hovedlĂžs musikant strejflys.
Click showpiece enticing mystery, identity rimless caterer scraggly drool approach.
DrÊnkning friareal topundig grenÄenser mellemvÊgter, forurening digestion kÞgensisk.
Detached entering progress platinum; nee rabbit decent alkaline jalapeño otherwise.
Fjederham fĂŠrdigret biofysik spritbilist hakke: krydsild svoret indkobling urinale viskos.
Sigh oft cute eyeglass overstep, stunning person noll punchbowl satchel confusing.
Konsignation glasnost mangeartet ulĂžnnet, socialpĂŠdagog hessian magtbegĂŠr udkiksmand.
Emphatic similar facing dizzy arousal ed outward observant collide become protector.