Vermutech #84
Obrir i tancar d’ulls i ja hem deixat enrere el gener. Aquesta setmana he començat una nova lectura, Management humanista, de Xavier Marcet. Ja havia llegit algunes coses d’aquest autor, normalment articles que escriu al diari La Vanguardia, enfocats a la gestió d’equips i posant les persones al centre. També he escoltat una entrevista que ja té un temps, però que, com acostuma a fer Marcet, deixa frases que et fan pensar.
En les parts més tècniques, hem continuat treballant i crec que finalment hem solucionat tots els problemes de BigInt i JavaScript que ja havia comentat en números anteriors. El que puc afegir és que el fet de codificar dins d’un BigInt altres coses no és gens nou. Una de les empreses que va tenir més ressò en aquest sentit va ser Twitter, quan es va inventar l’Snowflake l’any 2010. És una idea brillant per generar identificadors distribuïts utilitzant només 64 bits.
Però la setmana no podia ser tranquil·la... Un cop resoltes les misèries de JavaScript, ens ha tocat una altra batalla, aquesta vegada relacionada amb Postgres. Tot i que realment no és culpa seva, cal pensar bé com s’utilitza la paginació. El problema és el següent: quan demanes a una base de dades que et retorni un llistat ordenat per un camp que pot tenir valors duplicats dins d’una paginació, si no li indiques un criteri de desempat, no pot garantir que no et repeteixi elements entre pàgines. Nosaltres ho hem solucionat directament a l’ORM, perquè la persona que desenvolupa no hi hagi de pensar: si no s’especifica, afegim automàticament un criteri de desempat. Pots llegir aquest article on s’explica com fer-ho amb keyset pagination, és la millor solució, però implica modificar el frontal, i de moment hem optat per fer el canvi només al backend.
Començo amb algunes recomanacions,
💾 Programari
Jukebox: Pots crear llistes de reproducció sense registrar-te, no cal tenir Spotify, i si vols, t’ho pots allotjar al teu servidor perquè és programari lliure.
🤔 Curiositats
📦 Recursos
Un article que explica usos poc habituals de Python en llibreries molt comunes.
📊 Enquesta
Tot i haver parlat força de BigInt, cap persona va votar que aquest fos el tipus de dada que més maldecaps li dóna. En canvi, hi ha hagut un empat clar entre els decimals i els arrodoniments i les dates amb les seves timezones, amb un 42% cadascun. Els nulls i undefined han rebut un discret 17%, i ningú s’ha atrevit a dir que tot flueix.
Aquesta setmana, com que al concepte serà el Fedivers, aprofito per saber si ja n’has trepitjat alguna de les seves xarxes.
🌟 El concepte
A Internet li encanta reinventar-se, i quan sembla que tot està centralitzat i tancat, apareixen alternatives que tornen a defensar valors com la descentralització, la interoperabilitat i l’autonomia. Una d’aquestes alternatives és el conjunt de xarxes socials i serveis que formen part del que es coneix com Fedivers.
A diferència de les plataformes tradicionals, aquí no hi ha un sol lloc central on passen les coses. Són múltiples serveis independents, sovint gestionats per comunitats, que poden comunicar-se entre ells gràcies a protocols oberts. El més conegut és ActivityPub, un protocol que permet que una persona que fa servir una instància de Mastodon pugui seguir una altra que publica a Pixelfed o a PeerTube, com si tot formés part d’una mateixa xarxa.
Una de les gràcies d’aquest model és que cada instància pot definir les seves pròpies normes, cultura i línies vermelles. Algunes són més generals, d’altres molt temàtiques o localitzades. Per exemple, mastodont.cat és una instància centrada en la cultura i la llengua catalanes, amb una comunitat activa i un esperit obert i col·laboratiu.
Aquesta arquitectura distribuïda vol evitar els monopolis i fomentar un ús més saludable i controlat de les plataformes digitals. També vol retornar el poder a les persones usuàries: pots escollir el teu servidor, migrar entre instàncies, o fins i tot muntar-ne un de propi. Tot això sense perdre connexions ni contingut.
El concepte no és nou, però en els darrers anys ha guanyat força per diferents motius: canvis en les grans xarxes comercials, inquietuds sobre privadesa, o simplement ganes d’explorar models diferents. Encara hi ha camí per recórrer, sobretot en usabilitat i massa crítica, però la idea d’un espai obert, interconnectat i no propietari resulta més atractiva que mai.
I com a dada curiosa per tancar el cercle: el programari lliure de Mastodon, que és la base de moltes instàncies del Fedivers, fa servir Snowflake IDs per gestionar els seus identificadors de forma distribuïda, igual com explicava al començament. Si tens curiositat, pots mirar-ne el codi font aquí: mastodon/snowflake.rb
🎛️ Mod
Aquesta edició l’he escrita escoltant This Is Acting, de Sia. Les que més m’han acompanyat han estat Unstoppable i House on Fire.
💖 Feedback
Si t’ha agradat i em vols ajudar, fes arribar aquest contingut a qui creguis que li pot interessar, i entra al canal de Telegram per comentar la publicació.


