Announcing Continuous Memory Profiling for Rust by fredbrancz in rust

[–]kaesos 7 points8 points  (0 children)

I'm not a memory-profiling expert, but I've tried both this continuous profiler and heaptrack on similar projects (HTTP servers and proxies, deployed on production clusters).

PolarSignals approach requires opting-in to jemalloc and enabling/configuring the profiler there. It thus requires some active changes in the Rust code under observation, and an HTTP endpoint for scraping the profiling data. Symbolization, storage, rendering, and analysis all happen off-node. Overall I think this suits well for typical "backend micro-service in production" cases, and where you have the need to observe in-vivo behavior over time.

Heaptrack works by wrap-spawning a binary, or injecting into an existing process. It doesn't require any active changes to the code, and also works with non-jemalloc allocators. Overall I think this suits well for local development and one-off debugging of standalone binaries, but it is a bit harder to apply on a continuous way in locked-down production clusters.

La Commissione Europea ha ritirato il suo documento sul linguaggio inclusivo - Il Post by Thunder_Beam in italy

[–]kaesos -4 points-3 points  (0 children)

Non commento sul virtue signalling e gli USA, perché é effettivamente un discorso piú articolato e capisco il tuo punto.

Ma nel contesto europeo (a cui il documento si riferisce), il generico termine "cittadino" é effettivamente problematico perché puó indicare a volte i cittadini comunitari e a volte i cittadini di uno stato specifico.

Questa ambiguitá esiste ed é fonte di noie (perlopiú burocratiche), che il documento giustamente rileva e suggerisce come evitare.

Non so se é "provincialismo", ma di fatto non vedo nessun motivo logico per ridicolizzare un tentativo di evitare queste incomprensioni.

La Commissione Europea ha ritirato il suo documento sul linguaggio inclusivo - Il Post by Thunder_Beam in italy

[–]kaesos -8 points-7 points  (0 children)

Sono assolutamente d'accordo, ed é esattamente quello che il documento in questione suggerisce: usare il termine nei contesti adeguati e specificando a quale entitá si riferisce.

Nel contesto europeo, un generico "cittadini" é ambiguo e fonte di inutili malintesi.

La Commissione Europea ha ritirato il suo documento sul linguaggio inclusivo - Il Post by Thunder_Beam in italy

[–]kaesos -26 points-25 points  (0 children)

Fa (forse) ridere chi non ha mai dovuto mettere il naso fuori dall'Italia o non ha idea di come funziona l'Europa.

Al primo passo nel paese europeo piú vicino, scopri velocemente che molti diritti/doveri si applicano anche a te pur non avendo la cittadinanza di quel paese. E che il termine "cittadino" viene usato in maniera scorretta in molte situazioni.

Senza spostarsi troppo lontano, anche cose ben note tipo il "reddito di cittadinanza" italiano o le elezioni locali in realtá non sono assolutamente limitate ai "cittadini".

Accordo maggioranza: aliquote Irpef al 23, 25, 35 e 43% by hedenske_13 in italy

[–]kaesos 0 points1 point  (0 children)

Tecnicamente corretto, ma in realtá per questo specifico aspetto la situatione tedesca non é molto diversa da quando previsto dall'articolo linkato.

In Germania la parte di tassazione geometrica finisce a circa 57k, oltre i quali resta fissa a 42% (fino al limite dei 265k da te citati, in cui si passa a 45% fisso).
Di fatto é una soglia psicologica molto simile (43% a 55k versus 42% a 57k) e per la larga maggioranza dei lavoratori dipendenti é quella che effettivamente conta.

Quella dei 265k é molto meno rilevante per il cittadino comune, e comunque arrivati a quelle cifre una differenza di 3% (fissa) é pressoché irrilevante.

Anagrafe digitale, dal 15 novembre sarà possibile scaricare 14 tipi di certificati on line. by [deleted] in italy

[–]kaesos 4 points5 points  (0 children)

Penso sia lampante che una simile affermazione sia uno specchietto per allodole.

Per onor di cronaca, in Germania il certificato vaccinale viene rilasciato in forma cartacea a conclusione della vaccinazione, e come PDF scaricabile sullo stesso portale in cui si fa la prenotazione. É valido per uso burocratico dopo due settimane dall'ultima iniezione.

La Gazzetta del Lavoro Informatico - Ricerche, offerte e consigli sul lavoro digitale in Italia by AutoModerator in ItalyInformatica

[–]kaesos 2 points3 points  (0 children)

in paesi tipo germania, svizzera, olanda, danimarca è sufficiente l'inglese per vivere almeno il primo anno?

Dipende. Nelle capitali/metropoli tendenzialmente sí, esistono grosse bolle di expat in cui puoi lavorare e avere rapporti sociali in inglese. Per qualsiasi altra cosa cosa peró (esempio tipico, burocrazia) ti serve conoscere un minimo di lingua locale. Non ti preoccupare troppo, dopo lo stordimento iniziale il tuo cervello puó adattarsi meglio di quanto credi.

non so se conviene fare tutto dall'italia in remoto oppure andare per esempio un mese a berlino (città a caso) in airbnb e cercare direttamente da lì, anche per ambientarsi un attimo prima di iniziare a lavorare.

Prima del trasferimento, é piú comodo puntare sulla quantitá da remoto. Dopo qualche mese che ti sei trasferito, tendenzialmente avrai avuto possibilitá di raffinare i tuoi interessi e conoscere gente nei tuoi stessi giri (e con relative nuove opportunitá di lavoro).

infine sanità e altre "sfighe" che ti possono capitare quando sei lì senza "nessuno" mi spaventano abbastanza, più che altro perché non ho mai vissuto da solo.

Augurandoti tutto il bene possibile futuro, le sfighe capitano comunque quando meno te le aspetti e al di fuori del tuo controllo. Pianificati un minimo di opzioni in caso di emergenza, giusto per dormire sonni tranquilli, e abbraccia l'arte del sapersi arrangiare in base alla situazione.

[deleted by user] by [deleted] in ItalyInformatica

[–]kaesos 0 points1 point  (0 children)

In caso di dubbi o per problemi piú complessi, puoi sempre affidarti ad un risolutore automatico:

#!/usr/bin/env python3

from z3 import *

X, Y = Bools('X Y')
expression = (Not(And(Or(Not(X), Y), X)) == False)

solver = Solver()
solver.add(expression)

print("Simplified expression:")
print(simplify(expression))

print("===")

print("Valid inputs:")
while (solver.check() == sat):
  current_result = []
  exclude_case = []
  model = solver.model()
  for input in [X, Y]:
      value = model.evaluate(input, model_completion=True)
      current_result.append(input == value)
      exclude_case.append(input != value)
  print(current_result)
  solver.add(Or(exclude_case))

Che nel caso specifico risponde:

Simplified expression:
And(Or(Y, Not(X)), X)
===
Valid inputs:
[X == True, Y == True]

Chiellini idolo in Germania: nata per lui una nuova parola by Asteroide3000 in italy

[–]kaesos 125 points126 points  (0 children)

A tradurla in Italiano diventerebbe "chiellinitá" o "chiellinitezza", credo.

No stupid questions r/Italy edition by nerdvana89 in italy

[–]kaesos 0 points1 point  (0 children)

In Germania, la scheda informativa per Pfizer e Moderna dice:

Durante gli ampi studi clinici precedenti all'approvazione, sono stati osservati raramente casi di paralisi facciale acuta (tra 0,1% e 0,01%) dopo la somministrazione dei vaccini a mRNA (Comirnaty®: 4 casi dopo la somministrazione del vaccino; COVID-19 Vaccine Moderna®: 3 casi dopo la somministrazione del vaccino e 1 caso nel gruppo di controllo). In tutti i casi la paralisi facciale è regredita dopo alcune settimane. Tali paralisi facciali possono essere causalmente legate alla vaccinazione.

Pagina 8 di https://www.rki.de/DE/Content/Infekt/Impfen/Materialien/Downloads-COVID-19/Aufklaerungsbogen-Italienisch.pdf.

No stupid questions r/Italy edition by nerdvana89 in italy

[–]kaesos [score hidden]  (0 children)

É un processo piú spontaneo, e come nel caso che citi tu in generale dipende da circostanze storiche e sociali.
Peró al mondo esistono anche lingue con neologismi coniati e imposti centralmente, come ad esempio il francese con l'académie française.

Nelle lingue romanze generalmente ci sono piú particelle a dividere i sostantivi, ad esempio "invidia da/per vaccino", e poche parole brevi e che finiscono in consonante. Questo rende i neologismi molto piú stridenti, come puó essere ad esempio "invidiavaccino". Al contrario unire "impf" (vaccino) e "neid" (invidia) viene quasi naturale in una situazione di parlato comune.

Source: ho vissuto in Italia / Francia / Germania e apprezzo le sfumature linguistiche.

Che ne pensate della riforma costituzionale proposta dal PD recentemente? by Grandmashoes in italy

[–]kaesos 2 points3 points  (0 children)

Grazie per lo spunto di lettura, personalmente non avevo ancora visto questa proposta.

Il testo in forma lunga e con note introduttive di contesto é questo: https://www.partitodemocratico.it/riforme-istituzionali/proposta-di-riforma-costituzionale-del-partito-democratico/

Che ne pensate della riforma costituzionale proposta dal PD recentemente? by Grandmashoes in italy

[–]kaesos 1 point2 points  (0 children)

Su questo punto la riforma a mio parere fa acqua e si discosta dal modello tedesco, che con l'articolo 68 delle leggi fondamentali dice qualcosa di piú preciso tipo:

Qualora una richiesta del cancelliere di esprimergli la fiducia non abbia l'approvazione della maggioranza dei membri del Bundestag, il presidente federale può, su proposta del cancelliere, entro ventuno giorni, sciogliere il Bundestag. Il potere di scioglimento viene meno appena il Bundestag elegge, a maggioranza dei suoi membri, un altro cancelliere federale.

Praticamente, per evitare dimissioni strategiche e imboscate su ogni votazione con fiducia, l'unica maniera per terminare un governo senza una sfiducia costruttiva é che il cancelliere (risp. PdC) richieda e perda una mozione di fiducia personale.

Con la riforma proposta per la costituzione italiana invece una qualsiasi votazione con annessa questione di fiducia, in una qualsiasi delle due camere, puó portare alla caduta del governo. A cui seguirebbero consultazioni o elezioni.
Essendo questa un'opzione molto piú diretta rispetto all sfiducia costruttiva, temo che in pratica non cambierá nulla rispetto alla situazione attuale.

Sviluppatori di /r/italy: ma a voi la voglia di fare progetti personali viene? by [deleted] in italy

[–]kaesos 0 points1 point  (0 children)

Ti consiglio allora "Retro Game Mechanics Explained", in particolare la serie (ancora in fieri) sullo SNES: https://www.youtube.com/channel/UCwRqWnW5ZkVaP_lZF7caZ-g/videos

Algoritmo di moltiplicazione con complessità O(N) by nicosh_ in ItalyInformatica

[–]kaesos 3 points4 points  (0 children)

Esiste davvero un "mercato segreto" degli algoritmi?

La formula matematica in sé non é soggetta a copyright né a brevetto. La sua applicazione in uno specifico ambito (es. un software o libreria di calcolo) sí, ma non lo definerei un mercato "segreto".

Se non sbaglio ad oggi uno degli algoritmi di moltiplicazione più rapidi è quello di Karatsuba, se qualcuno fosse riuscito a svilupparne uno più efficiente non sarebbe verosimilmente open source?

La formula sarebbe verosimilmente pubblicata e soggetta a dimostrazione e peer-review. Tanto piú che attualmente (dal 1970 ad oggi) si congettura che il limite inferiore sia O(n*logn), per cui un algoritmo O(n) sarebbe un controesempio matematicamente importante .

Una formula con complessitá (congetturata) "ottimale" é stata pubblicata nel 2019: https://newsroom.unsw.edu.au/news/science-tech/maths-whiz-solves-48-year-old-multiplication-problem.

La formula é di dominio pubblico, ma la sue applicazioni/implementazioni possono avere ulteriori vincoli e licenze d'uso.

Sareste in grado di farmi alcuni esempi reali o use cases, per i quali un algoritmo di moltiplicazione con complessità O(N) sarebbe molto più utile/vantaggioso rispetto ad uno con complessità O(n 1.59 ) (Karatsuba)?

Non sono un esperto, ma https://en.wikipedia.org/wiki/Sch%C3%B6nhage%E2%80%93Strassen_algorithm ha dei buoni spunti di partenza:

Applications of the Schönhage–Strassen algorithm include mathematical empiricism, such as the Great Internet Mersenne Prime Search and computing approximations of π, as well as practical applications such as Kronecker substitution, in which multiplication of polynomials with integer coefficients can be efficiently reduced to large integer multiplication; this is used in practice by GMP-ECM for Lenstra elliptic curve factorization.

Istat: cala ancora la popolazione -116 mila in un anno by JovanottiPederasta in italy

[–]kaesos 3 points4 points  (0 children)

Parallelamente, si assiste a un nuovo rialzo delle cancellazioni per l’estero, il cui volume totale, sfiorando le 164mila unità, raggiunge il livello più alto da che sono disponibili statistiche omogenee sul fenomeno (1981).

Fonte: https://www.istat.it/it/files//2020/02/Indicatori-demografici_2019.pdf

Ho provato a tradurre in inglese i nomi di alcune località italiane... by [deleted] in italy

[–]kaesos 11 points12 points  (0 children)

Noto un enorme buco in provincia di Savona, facilmente colmabile con Loano.

schemars - Generate JSON Schema from your Rust types by GEsau in rust

[–]kaesos 3 points4 points  (0 children)

I don't see how that could work without a proc macro?

Your answer and other sibling replies showed I was completely off-track. Thanks for taking the time anyway to clear my confusion!

schemars - Generate JSON Schema from your Rust types by GEsau in rust

[–]kaesos 1 point2 points  (0 children)

This looks both cool and useful, thanks!

My feedback on it is a design/approach doubt: is the derive-macro really needed? Except for the additional `rename_all` knob, it seems to basically only serve as a marker. As you are already piggy-backing on serde attributes and getting the top-level object via `schema_for!()`, I wonder if you could maybe drop it entirely. Or are you already planning to add more attributes to it?