Vlad Strongman
← Jurnalul de fier

Știința Antrenamentului

Seria: STRONGMAN DATA LAB: CUM MĂSURĂM ȘI ANALIZĂM PERFORMANȚA - Episodul 2: Construirea unei baze de date pentru antrenamente

15 octombrie 2026

STRONGMAN DATA LAB: sportiv la Farmer's Walk și panouri de măsurare a vitezei, volumului și performanței

În strongman, aproape fiecare antrenament produce date. Există greutăți, distanțe, repetări, timpi, încercări nereușite, variații ale echipamentului, note despre oboseală și filmări ale execuțiilor. Cu toate acestea, foarte puține dintre aceste informații ajung să poată fi comparate riguros după câteva luni. O cifră notată pe telefon, un videoclip trimis unui prieten și o fotografie cu rezultatul unei competiții rămân insule de informație. Pentru a transforma aceste fragmente într-o istorie utilă a performanței, avem nevoie de o bază de date construită după logica sportului, nu după aspectul spectaculos al unui tabel.

Acesta este episodul al doilea din seria «STRONGMAN DATA LAB: CUM MĂSURĂM ȘI ANALIZĂM PERFORMANȚA». Dacă primul episod a clarificat ce înseamnă un rezultat măsurabil, aici vom construi infrastructura care permite păstrarea și compararea rezultatelor. O bază de date nu este doar un fișier cu rânduri și coloane. Este un sistem de definiții, reguli de introducere, identificatori, relații și verificări prin care un rezultat poate fi regăsit și explicat. Dacă nu putem ști, peste doi ani, ce însemna «Farmer’s 130», numărul nu mai are valoarea pe care părea să o aibă în seara antrenamentului.

Vom proiecta un model accesibil atât atletului care folosește un simplu fișier Excel, cât și antrenorului ce urmărește mai mulți sportivi, fără a pretinde că cele două situații au aceleași cerințe tehnice. Vom separa sportivii, sesiunile, exercițiile, variantele aparatelor și încercările individuale. Vom defini când se folosesc kilograme per mână, când înregistrăm masa totală a unui Yoke, cum păstrăm rezultatele unui Medley și de ce «zero repetări» nu înseamnă întotdeauna o încercare efectuată fără succes. Fiecare decizie de structură trebuie să reducă ambiguitatea, nu să multiplice rubricile inutile.

Datele sportului nu devin mai adevărate prin simpla digitizare. Dacă terenul are altă lungime decât cea trecută în fișier, viteza calculată va fi greșită. Dacă un arbitru respinge o repetare și noi o numărăm ca validată, modelul va descrie altă competiție. Dacă un sportiv utilizează aparate diferite de la o săptămână la alta, variația poate fi produsă de echipament, nu doar de adaptarea musculară. De aceea, vom trata calitatea datelor drept o problemă biomecanică și metodologică, nu doar informatică.

În paginile care urmează vom combina explicațiile cu exemple numerice și modele de tabele. Vom descrie un dicționar de date, un identificator unic pentru fiecare încercare, reguli pentru datele lipsă, verificări de logică, calcule de volum și viteză, importuri CSV, organizarea filmărilor, copii de siguranță și un tablou minimal pentru deciziile de antrenament. Exemplele sunt ipotetice și educaționale; nu sunt date medicale ori competiționale colectate de la persoane reale. Bibliografia include atât cercetări despre evaluarea performanței în strongman, cât și lucrări despre fiabilitate, monitorizarea încărcării și gestionarea responsabilă a datelor științifice.

Există o tentație de a începe direct cu graficele. Această ordine produce deseori o construcție fragilă: o aplicație colorată, populată cu date care nu înseamnă același lucru. Vom urma ordinea inversă. Întâi alegem întrebările care contează; apoi definim ce înregistrăm; după aceea verificăm comparabilitatea și abia la final construim indicatorii și vizualizările. Un sistem bun nu trebuie să fie scump, dar trebuie să permită cuiva care nu a fost prezent la antrenament să înțeleagă ce s-a întâmplat, ce nu știm și ce concluzii sunt justificate.

Miza nu este să transformăm strongmanul într-un sport condus de un calculator. Antrenorul observă tehnica, sportivul percepe efortul, iar regulamentul decide rezultatele; baza de date trebuie să păstreze aceste perspective distincte și să le pună în legătură. La sfârșitul episodului, vom avea un model concret, capabil să pornească de la câteva rânduri și să crească fără să distrugă istoricul. Acesta este adevăratul sens al unui laborator de date în strongman: un loc în care memoria antrenamentului poate fi verificată, nu doar admirată.

1. Întrebarea precedă tabelul: de ce înregistrăm datele?

O bază de date utilă pornește de la întrebările antrenorului. Dorim să știm dacă un atlet a progresat la Yoke pe aceeași distanță, dacă pierderea de viteză la Farmer’s apare mereu după cincisprezece metri sau dacă volumul de Deadlift influențează performanța de weekend? Fiecare întrebare cere variabile diferite. Dacă înregistrăm doar greutatea și numărul repetărilor, nu putem analiza viteza; dacă păstrăm numai timpul final, nu putem distinge pornirea de ultimul segment. Calitatea informației depinde de potrivirea dintre ce vrem să aflăm și ceea ce observăm.

Scopurile pot fi împărțite în trei niveluri: documentarea antrenamentului, monitorizarea progresului și sprijinirea deciziilor. Primul nivel permite reconstituirea unei sesiuni. Al doilea cere observații comparabile în timp. Al treilea presupune formularea unor reguli prudente de interpretare, de exemplu repetarea unui test când rezultatul pare neobișnuit. Nu trebuie să construim de la început un model predictiv complex pentru a putea nota corect trei seturi de Log. O arhitectură sănătoasă permite dezvoltarea treptată, fără schimbarea sensului datelor istorice.

Un obiectiv prea general, precum «vrem să măsurăm tot», produce rapid câmpuri abandonate. Sportivul va completa unele valori cu grijă și le va omite pe altele, ceea ce scade comparabilitatea. Este preferabil să pornim cu patru sau cinci întrebări importante: cât am ridicat legal, cât de repede am parcurs distanța standard, câte încercări au fost invalidate, cum am perceput efortul și ce condiții s-au schimbat. După câteva săptămâni putem adăuga alți indicatori, dacă aceștia vor modifica efectiv pregătirea.

Datele colectate pentru competiții au și alt scop decât cele de antrenament. În concurs, poziția în clasament este determinată de regulament și de punctele adversarilor, iar sportivul poate opri efortul când punctajul dorit este atins. În sală, același exercițiu poate fi executat cu mai multe repetări pentru dezvoltarea unei capacități. A amesteca aceste rezultate într-un singur grafic, fără clasificare, poate transforma strategia competițională într-o falsă scădere de performanță. Prin urmare, orice înregistrare primește un context de utilizare.

Se pot formula criterii de succes pentru baza de date, nu doar pentru atlet. De exemplu, după trei luni ar trebui să putem recupera toate testele standardizate de Farmer’s la 120 kilograme pe mână, să comparăm timpii pe același traseu și să explicăm de ce anumite valori au fost excluse din analiza progresului. Dacă fișierul nu poate răspunde acestor întrebări, numărul de rânduri nu reprezintă un indicator al calității sale.

La sfârșit, scopul bazei este reducerea incertitudinii relevante. Ea nu va decide singură ce program trebuie urmat, dar poate împiedica antrenorul să repete greșeli bazate pe memorie selectivă. Întrebările bine definite devin filtru pentru alegerea câmpurilor, a senzorilor și a rapoartelor. Fiecare nouă rubrică trebuie să justifice timpul necesar completării ei printr-un potențial beneficiu pentru înțelegerea performanței.

2. Modelul conceptual: sportiv, sesiune, probă, încercare

Înainte de a deschide Excel, trebuie stabilit ce reprezintă un rând. Dacă un rând înseamnă o zi de antrenament, atunci o sesiune cu Squat, Log și Farmer’s va înghesui variabile incompatibile în aceeași structură. Dacă fiecare rând reprezintă o încercare, putem păstra datele detaliate, însă informațiile comune se vor repeta. Soluția logică este să distingem entitățile: sportiv, sesiune, probă sau exercițiu, aparat, set ori încercare și rezultat. Acestea pot exista în foi separate sau în tabele relaționale, în funcție de dimensiunea proiectului.

Entitatea sportiv descrie persoana printr-un identificator stabil, fără a obliga introducerea unor date personale excesive. Sesiunea conține data, ora, locul și scopul antrenamentului. În interiorul sesiunii se desfășoară una sau mai multe activități: de exemplu Yoke la o anumită încărcătură, apoi Deadlift pentru volum. Fiecare activitate poate avea mai multe încercări, unele complete și altele întrerupte. Rezultatul este asociat exact încercării care l-a produs. Această ierarhie previne confundarea volumului planificat cu ceea ce a fost efectiv executat.

Un exemplu: sportivul A01 participă la sesiunea S20261015A, care include proba YOKE20. Prima încercare folosește 280 kilograme și durează 16,8 secunde; a doua folosește 300 kilograme și durează 18,3 secunde. Ambele înregistrări au același sportiv, aceeași sesiune și aceeași definiție a traseului. Valorile apar în rânduri separate, pentru a nu pierde ordinea sau încărcătura fiecărei încercări. Cifrele sunt ipotetice. Modelul explică legătura dintre ele fără să necesite copierea manuală a întregii descrieri la fiecare rând.

În sistemele de tip foaie de calcul, putem începe cu o structură mai simplă, care repetă unele informații. Nu există obligația de a construi imediat o bază SQL. Totuși, sensul câmpurilor trebuie să fie constant: o coloană numită time_s nu poate reprezenta într-un rând durata totală a sesiunii și în altul timpul unei repetări. Dacă există niveluri diferite de timp, creăm coloane distincte ori tabele diferite. Un model bine înțeles poate fi implementat prin instrumente modeste.

Distincția dintre exercițiu și varianta sa este critică. Deadlift convențional, Axle Deadlift și Rack Pull de la altă înălțime fac parte dintr-o familie comună, dar nu sunt același test. Similar, Farmer’s Walk fără întoarcere diferă de un traseu dus-întors. O entitate exercise_definition poate descrie familia, iar event_variant poate înregistra specificația exactă. Astfel putem filtra toate îndreptările pentru o privire generală fără să pretindem că recordurile sunt direct echivalente.

Modelul conceptual reduce și erorile de introducere. Când aparatele au coduri unice, nu mai introducem de fiecare dată o descriere liberă diferită. Când fiecare încercare aparține unei sesiuni existente, nu rămân rezultate fără dată ori context. Înainte de automatizare, aceste relații trebuie explicate oamenilor care completează baza. O structură tehnic elegantă, pe care nimeni nu o înțelege, nu este un instrument bun de antrenament.

3. Identificatori unici: cum evităm confuzia dintre înregistrări

Un identificator unic este un cod care distinge o înregistrare de toate celelalte, chiar dacă valorile vizibile sunt identice. Două încercări Farmer’s pot avea 120 kilograme și 20,0 secunde, dar nu sunt aceeași încercare. Dacă baza folosește doar data și exercițiul pentru identificare, a doua intrare o poate suprascrie pe prima. Un câmp attempt_id previne această problemă. Identificatorul trebuie să fie stabil și să nu fie reutilizat după ștergere ori modificarea unei sesiuni.

Există mai multe strategii valide: un număr generat de baza de date, un UUID sau un cod convențional precum S20261015A-YOKE-02. Codurile lizibile ajută la depanare, însă pot deveni fragile dacă utilizatorul schimbă denumirile sau ordinea. Identificatorii generați automat sunt în general mai potriviți pentru sisteme mari, iar numele lizibile pot rămâne câmpuri separate. Important este să nu construim relații pe o informație care se modifică, precum titlul antrenamentului sau numele afișat al atletului.

Entitățile diferite primesc identificatori diferiți. athlete_id identifică persoana; session_id identifică evenimentul de antrenament; exercise_id identifică tipul de exercițiu; implement_id identifică aparatul; attempt_id identifică observația efectivă. Un rezultat poate conține chei către toate celelalte entități. Dacă sportivul schimbă porecla, trecutul său rămâne intact, deoarece athlete_id nu se modifică. Dacă un aparat este vopsit sau reparat, identificatorul poate rămâne același, cu o notă despre modificare.

Pentru un sistem mic, identificatorii pot fi introduși într-o coloană printr-o regulă simplă și verificarea duplicatelor. Pentru mai mulți sportivi, este recomandată generarea automată. Nu este necesar ca numerele să aibă semnificație sportivă; scopul lor este legătura tehnică. Un cod precum A017 nu reprezintă locul în clasament și nu ar trebui schimbat când atletul trece la altă categorie. Confundarea identificatorului cu o etichetă de performanță produce probleme istorice inutile.

Înregistrările importate din mai multe surse au nevoie de o regulă de reconciliere. Un timp de concurs găsit pe site-ul organizatorului și aceeași încercare introdusă manual nu trebuie să devină două rezultate independente în analiză. Putem păstra două surse de măsurare legate de aceeași încercare sau putem semnala o posibilă dublură pentru verificare. Deduplicarea automată doar după timp și greutate este riscantă: două încercări reale pot avea exact aceleași valori.

Un sistem auditabil păstrează și cine a creat înregistrarea, când a fost introdusă și, unde este relevant, când a fost corectată. Aceste metadate nu trebuie expuse public. Ele ajută însă la investigarea diferențelor dintre o filmare și un rezultat oficial. Stabilitatea identificatorilor permite migrarea viitoare către un software diferit. O bază care își poate păstra legăturile la export valorează mai mult decât un tabel spectaculos care se rupe când se mută în altă aplicație.

4. Dicționarul de date: fiecare coloană are o definiție

Dicționarul de date este documentul în care descriem sensul, unitatea, formatul și regulile fiecărui câmp. Într-o foaie de calcul, el poate ocupa un tab separat. Pentru load_kg precizăm dacă valoarea reprezintă masa totală, masa per mână sau masa adăugată pe aparat. Pentru duration_s precizăm dacă sunt incluse pauzele. Pentru repetitions_valid precizăm că numărăm numai repetările recunoscute de protocol. Fără aceste definiții, persoane diferite vor introduce informații diferite în rubrici aparent identice.

Un dicționar bun conține câmpul, descrierea, tipul de dată, unitatea, valorile admise, statutul obligatoriu și un exemplu. De pildă, distance_m este un număr nenegativ, exprimat în metri, aplicabil probelor cu deplasare. attempt_status poate admite completed, failed, stopped, disqualified sau not_started, fiecare cu definiție clară. Dacă un test nu are distanță, câmpul poate rămâne neaplicabil, nu zero. Aceste distincții devin esențiale când sunt calculate viteze ori statistici.

Unitățile au nevoie de o politică consecventă. Un sistem poate stoca toate masele în kilograme, distanțele în metri și duratele în secunde, conversiile fiind făcute la import sau la afișare. Dacă un concurs folosește livre, valoarea originală poate fi păstrată ca sursă, împreună cu conversia standardizată. Nu ar trebui amestecate centimetri și metri în același câmp fără un identificator al unității. O greșeală de factor o sută poate produce grafice impresionante și concluzii complet false.

Valorile textuale trebuie standardizate unde este posibil. Dacă aceeași probă apare ca farmers, farmer walk, Farmer's Carry și F.W., filtrele simple pot rata înregistrări. Păstrăm un cod, de exemplu FARMERS_WALK, și un nume afișat în limbaj natural. Pentru suprafețe putem avea categorii precum asfalt uscat, asfalt umed, beton, gazon artificial și necunoscut, fără a pretinde că aceste denumiri surprind toate proprietățile mecanice. Textul liber rămâne posibil pentru observații care nu pot fi reduse la o categorie.

Dicționarul trebuie să includă și modul de obținere a datelor: măsurat, calculat, estimat sau declarat de organizator. Un 1RM observat diferă de unul estimat dintr-o formulă. Viteza medie calculată din distanță și timp nu este identică cu viteza de vârf măsurată cu un sistem video. Dacă sursa nu este marcată, datele derivate pot fi confundate cu măsurări directe. Transparanța provenienței este o condiție a comparabilității științifice.

Dicționarul evoluează, dar schimbările trebuie versionate. Dacă o rubrică numită load_kg a reprezentat inițial masa pe mână, nu putem decide ulterior că înseamnă masa totală fără conversia valorilor și documentarea modificării. O versiune nouă poate introduce load_per_hand_kg și total_load_kg, păstrând compatibilitatea cu istoricul. Acesta este un exemplu de disciplină banală care previne erori foarte costisitoare după sute de sesiuni.

5. Tipuri de date, valori lipsă și zero real

Un sistem informatic distinge numere, texte, date calendaristice, valori logice și câmpuri fără informație. Înregistrările sportive au nevoie de aceeași disciplină. Timpul de 23,4 secunde este un număr; observația «mâner ud» este un text; data de 15 octombrie este o dată, nu un simplu șir ambiguu. Încercarea de a pune toate aceste elemente într-un singur câmp face dificilă calcularea și verificarea. Tipurile de date nu sunt un detaliu rezervat programatorilor; ele determină ce operații sunt valide.

Valoarea zero are un înțeles concret. Zero repetări poate însemna că sportivul a început proba, dar n-a validat nicio repetare. Dacă nu s-a prezentat sau dacă evenimentul a fost anulat, zero ar reprezenta greșit situația. În mod similar, zero secunde la un traseu nu este un timp valid de finalizare, în timp ce zero scăpări reprezintă o observație perfect legitimă. În baza de date trebuie distinse valorile zero, necunoscut, neaplicabil și lipsă din cauza unei erori de colectare.

Într-o foaie de calcul, celula goală poate ascunde mai multe semnificații. O soluție este un câmp separat missing_reason pentru cazurile importante: not_measured, equipment_failure, not_applicable, lost_record sau withheld. Nu este necesar să completăm un motiv în fiecare celulă, dar informația despre lipsuri trebuie păstrată atunci când afectează analiza. Dacă un cronometru a eșuat, sportivul poate avea încă o încercare validă, dar timpul exact nu este disponibil. Acest rezultat nu se transformă în abandon.

Formatele calendaristice trebuie să evite ambiguitatea dintre zi și lună. O înregistrare de tip 05/06/2026 poate fi interpretată drept 5 iunie sau 6 mai, în funcție de aplicație. Utilizarea formatului ISO 8601 pentru dată și oră facilitează schimbul de informații. Fusul orar merită păstrat când sportivii concurează internațional; altfel, o sesiune înregistrată aproape de miezul nopții se poate afișa în altă zi după import. Ora locală rămâne importantă pentru contextul antrenamentului.

Textele libere au valoare, însă introducerea lor drept numere poate strica formulele. «120 kg», «120k» și valoarea numerică 120 pot părea similare pe ecran, dar sunt tratate diferit de programele de calcul. Este preferabil să stocăm numărul în câmpul numeric și unitatea în dicționar. În același mod, un timp de 1:20 poate fi interpretat drept oră ori durată, dacă formatul nu este specificat. Normalizarea înaintea analizei previne erori care altfel pot trece neobservate.

Valoarea corectă pentru ceea ce nu știm este uneori o lipsă explicită. Nu completăm retrospectiv un RPE neînregistrat doar pentru că încărcătura pare grea, și nu ghicim masa unui sac dintr-o fotografie. O bază cu lipsuri documentate este mai credibilă decât una perfect completă prin presupuneri. Analiza poate exclude anumite observații ori poate folosi metode statistice adecvate, dar aceste decizii trebuie explicate și nu pot reconstitui magic informația care n-a fost colectată.

6. Fișa aparatului: un Yoke nu este identic cu alt Yoke

În strongman, obiectele nu sunt simple suporturi pentru discuri. Dimensiunile, distribuția greutății, înălțimea punctelor de prindere și geometria modifică execuția. Două cadre Yoke pot avea aceeași masă totală, dar barele poziționate la înălțimi diferite schimbă poziția trunchiului și controlul aparatului. Două mânere Farmer’s de aceeași masă pot diferi ca diametru, distanță dintre brațe și înălțime față de sol. De aceea, dacă vrem comparații de performanță, aparatul trebuie identificat independent de încărcătura dintr-o anumită încercare.

O fișă a aparatului poate conține implement_id, denumirea, tipul, masa proprie, dimensiunile relevante, locul unde este păstrat și ultima verificare cunoscută. Pentru Yoke, înălțimea barei la fiecare test poate fi o variabilă separată, deoarece același cadru este reglabil. Pentru Farmer’s, diametrul mânerului și lungimea corpului sunt informații potențial utile. Pentru Atlas Stone, diametrul și suprafața pot influența contactul, iar masa efectivă poate fi cunoscută cu altă precizie decât cifra scrisă pe piatră.

Nu toate dimensiunile merită introduse obligatoriu. Dacă o sală are un singur Log, este suficient la început un cod și o descriere clară; dimensiunile pot fi completate când o comparație o cere. Obiectivul este să prevenim confuzia, nu să transformăm fiecare sesiune într-un proiect de inginerie. În schimb, dacă un sportiv călătorește între trei săli sau participă la multe concursuri, identificarea aparatelor diferite devine foarte importantă. Etichetele logice și fotografiile de referință pot ajuta.

Masa proprie trebuie separată de masa adăugată, pentru a evita dublarea. Dacă un cadru cântărește 100 kilograme și adăugăm 240 kilograme de discuri, masa totală este 340, nu 240 și nici 440. O bază poate stoca implement_mass_kg, added_load_kg și total_load_kg, unul dintre câmpuri fiind calculat în mod transparent. În cazul obiectelor cu masă fixă, cum sunt unele pietre, cifra totală este suficientă. Pentru aparatele cu componente suplimentare, regulile de calcul trebuie explicate.

Când un aparat este modificat semnificativ, decidem dacă păstrăm aceeași identitate cu o versiune nouă sau îi atribuim un identificator diferit. Înlocuirea mânerelor Farmer’s cu unele de alt diametru afectează direct comparabilitatea, astfel că simpla păstrare a codului fără observație ar fi riscantă. Un istoric al modificărilor permite filtrarea rezultatelor înainte și după schimbare. Acest lucru este relevant mai ales pentru analizele de viteză și pentru estimarea progresului pe perioade lungi.

Cercetările biomecanice strongman subliniază particularitatea probelor și a implementelor, însă nu oferă o listă universală a tuturor dimensiunilor ce trebuie măsurate. Alegem variabilele conform întrebării. Dacă vrem să comparăm încărcări și timpi la Yoke, înălțimea cadrului poate conta; dacă analizăm Deadlift, tipul barei și înălțimea de pornire devin relevante. O fișă de aparat este, astfel, un instrument împotriva concluziilor simpliste, nu un inventar decorativ.

7. Ridicările maximale: cum stocăm încercările valide și ratate

În Log Lift, Axle și Deadlift pentru greutate maximală, rezultatul cel mai vizibil este cea mai mare încărcătură acceptată. Pentru analiză, istoricul complet al încercărilor poate fi mai util decât recordul zilei. Dacă atletul reușește 110 și 120 kilograme, apoi ratează de două ori 130, cele patru încercări descriu un efort diferit față de o singură ridicare reușită la 120. Seturile de încălzire și încercările oficiale se pot înregistra separat, pentru că au roluri și reguli distincte. Nu trebuie confundată încărcarea planificată cu cea executată.

Fiecare încercare primește masa, numărul de ordine, starea validat sau invalidat, eventual motivul invalidării și metoda de confirmare. Un arbitru poate refuza o ridicare pentru blocare incompletă ori pentru nerespectarea unei comenzi. În antrenament, antrenorul poate folosi un standard explicit. Nu este suficient să scriem «130 × 1» dacă nu știm dacă repetarea a fost acceptată. O bază corectă poate calcula automat cel mai bun rezultat din încercările validate, dar trebuie să păstreze încercările eșuate.

În calculul performanței, un record oficial și unul de sală au statut diferit. Un PR înregistrat la antrenament poate fi valoros, însă nu ar trebui afișat drept rezultat confirmat în competiție. Similar, un 1RM estimat dintr-un set cu trei sau cinci repetări este o estimare, nu o încercare maximală efectuată. În baza de date, câmpuri precum result_context și measurement_method separă categoriile. Această disciplină previne comparații incorecte și relatări care supraestimează progresul.

Pentru Deadlift, echipamentul și amplitudinea contează. Îndreptarea de pe podea, Rack Pull cu bara ridicată, Axle Deadlift și alte variante nu sunt automat echivalente. Dacă se folosesc chingi, costum ori alte accesorii, mențiunea poate fi relevantă pentru comparabilitate. În cazul recordurilor, greutatea barei, dimensiunea discurilor și standardul de blocare trebuie să fie clare. Un câmp generic numit «îndreptări» nu poate rezolva aceste diferențe fără o definiție de variantă.

Un câmp attempt_outcome poate distinge reușit, ratat tehnic, nereușit fizic, abandonat și descalificat. Nu trebuie confundat un eşec din lipsa forței cu unul cauzat de o comandă greșit executată, dacă motivul poate fi cunoscut. Totuși, atribuirea cauzei exacte poate fi subiectivă, deci sursa observației și incertitudinea trebuie consemnate. Dacă nu știm motivul, marcăm necunoscut, nu inventăm o explicație care să favorizeze interpretarea dorită.

Datele de încălzire pot fi utile pentru monitorizarea vitezei, dar nu trebuie să aglomereze raportul oficial. Un model bun permite filtrarea pe test maximal, antrenament tehnic ori încălzire. Astfel, când antrenorul cere istoricul celor mai bune ridicări, primește valori validate; când investighează oboseala, poate vedea numărul total de încercări. O singură înregistrare nu este obligată să servească toate întrebările printr-un singur câmp.

8. Farmer’s Walk și Yoke: aceeași distanță, protocoale diferite

Probele de deplasare au nevoie de mai mult context decât numele și timpul. În Farmer’s Walk, încărcarea este de regulă exprimată per mână, dar uneori apare pe afiș doar valoarea totală. În Yoke, încărcarea poate include cadrul și discurile. În plus, traseul poate avea zece, douăzeci sau patruzeci de metri, cu întoarcere sau fără, pe suprafețe diferite. Pentru comparații corecte, trebuie înregistrate masa, sensul acesteia, distanța, traseul, numărul întoarcerilor, suprafața și protocolul de pornire a cronometrajului.

O încercare poate fi completată fără opriri, completată după scăparea aparatelor sau abandonată la jumătate. Aceste rezultate nu se reprezintă doar prin timpul total. Dacă un atlet abandonează la 14 metri, timpul până la oprire este util, dar nu reprezintă timp de finalizare pe 20 de metri. Putem stoca distance_completed_m și outcome_status separat. În acest mod, clasamentul poate ține cont de distanța progresată în situațiile prevăzute de regulament, iar graficele de viteză nu includ în mod greșit încercări neterminate.

Timpii pe segmente se pot salva într-un tabel distinct, legat prin attempt_id. O cursă de douăzeci de metri poate avea patru secțiuni de cinci metri, dar nu toate probele sunt împărțite la fel. Pentru fiecare split trebuie să știm reperul inițial și final, timpul și metoda de măsurare. Dacă startul include ridicarea, primul segment nu este comparabil direct cu cele centrale ca viteză pură de mers. Tabelul de splituri ar trebui să reflecte exact definiția oficială sau de antrenament.

Exemplu ipotetic: un Farmer’s de 120 kilograme pe mână, 20 metri drept, timp oficial 21,4 secunde, splituri 5,9, 5,0, 5,1 și 5,4 secunde. Suma este 21,4; aceasta este o verificare de consistență utilă. Dacă spliturile se însumează la 19,8, înseamnă fie că există un interval neînregistrat, fie că limitele nu sunt definite identic. Nu corectăm rezultatul prin presupunere. Verificăm filmarea și păstrăm sursa fiecărui timp.

În Yoke, înălțimea barei și balansul aparatului pot influența ritmul. În Farmer’s, diametrul mânerelor și scăpările pot schimba rezultatul. O bază care permite compararea strictă a aceleiași variante și, separat, explorarea rezultatelor de concurs diferite oferă două perspective complementare. Prima este potrivită pentru progres longitudinal; a doua pentru istoric competitiv. Amestecarea lor poate produce concluzii eronate despre capacitatea de mers sub sarcină.

Nu este necesar să înregistrăm totul la fiecare antrenament. Într-o zi de volum, pot fi suficiente încărcătura, distanța, numărul de curse și efortul perceput. Într-un test standardizat, merită adăugate spliturile, filmarea și observațiile tehnice. Sistemul trebuie să susțină ambele situații, marcând clar precizia și scopul colectării. Datele absente dintr-o sesiune simplă nu devin automat un eșec al sportivului sau al antrenorului.

9. Probe de repetări: diferența dintre încercări și execuții validate

Într-o probă de Deadlift pentru repetări, scorul oficial este numărul de execuții acceptate în intervalul stabilit. Încărcătura și durata limitei de timp trebuie păstrate împreună cu numărul. Opt repetări în șaizeci de secunde la 200 kilograme nu pot fi comparate direct cu opt repetări în nouăzeci de secunde la 240 kilograme. Pentru antrenament, putem nota și repetările încercate, cele invalidate și motivul respingerii, dacă există informație suficientă. Scorul și costul efortului sunt două dimensiuni diferite.

O repetare invalidă poate produce solicitare musculară reală chiar dacă nu aduce puncte. Dacă sportivul încearcă un Log de zece ori și doar șapte repetări sunt acceptate, numărul încercărilor descrie o parte din expunerea mecanică, în timp ce șapte reprezintă rezultatul oficial. A înregistra numai cele șapte poate subestima volumul de efort; a înregistra toate cele zece drept reușite ar falsifica competiția. Baza ar trebui să permită ambele totaluri fără să le confunde.

Putem păstra fiecare repetare într-un tabel child numit repetition_event, cu momentul validării și starea sa, sau putem stoca numai totalurile dacă sistemul este simplu. Varianta detaliată permite analiza ritmului și a pauzelor. Varianta simplă este suficientă pentru comparația numărului de repetări în condiții identice. Nu există obligația de a colecta date de rezoluție mare dacă nu avem o întrebare despre pacing sau deteriorarea tehnicii.

În cazul repetărilor cu obiecte, standardele pot varia. Un Sandbag Over Bar trebuie să treacă integral bara, iar un Log poate necesita poziție stabilă și comandă de coborâre. Înregistrăm protocolul folosit și, la nevoie, regulile versiunii de concurs. O execuție respinsă pentru lipsa blocării nu trebuie etichetată automat drept «lipsă de forță». O observație video poate ajuta la clasificare, dar unele cauze rămân interpretative și trebuie tratate cu prudență.

Datele temporale pot descrie ritmul: momentele când repetările sunt validate, intervalele dintre ele și proporția din timp petrecută în repaus. Dar durata dintre validări nu reprezintă neapărat viteza mișcării concentrice, fiindcă include coborârea și pregătirea următoarei repetări. Dacă dorim viteza barei, este nevoie de alt protocol. A folosi intervalul total drept măsură a vitezei unui mușchi ar confunda variabilele. Un dicționar precis previne interpretările mecanice greșite.

În antrenamentul de forță, o serie încheiată înainte de eșec poate reflecta intenția de a păstra repetări în rezervă. În competiție, oprirea poate fi tactică. Dacă putem consemna planned_reps, completed_reps și stop_reason, datele oferă context. O cifră mai mică nu înseamnă automat regres. Când motivul este necunoscut, se lasă necunoscut; modelul trebuie să permită ambiguitatea, nu să o ascundă prin afirmații speculative.

10. Medley, Atlas și evenimente mixte: un rezultat, mai multe etape

Un Loading Medley nu reprezintă neapărat o singură mișcare. Sportivul poate ridica și transporta trei saci, apoi două pietre, cu distanțe și platforme diferite. Scorul poate fi timpul total, numărul obiectelor încărcate ori o combinație stabilită de organizator. O înregistrare de tip «Medley: 53 secunde» nu permite să observăm unde s-a pierdut timpul și nici dacă traseul era identic cu cel din altă sesiune. Pentru analiză utilă, evenimentul trebuie împărțit în componente logice, menținând legătura cu rezultatul final.

Putem avea o entitate medley_definition care descrie ordinea obiectelor, masele, distanțele, înălțimea platformelor și limitele de timp. Fiecare segment primește un identificator, iar un tabel de execuții arată dacă a fost realizat și în ce timp. Un obiect abandonat nu este echivalent cu unul încărcat legal; statutul trebuie păstrat. Dacă sportivul finalizează primele trei stații și pierde timpul-limită la a patra, putem reprezenta atât rezultatul regulamentar, cât și locul exact al opririi.

În Atlas Stones, masa pietrelor și înălțimile de încărcare pot varia. O serie progresivă de pietre nu poate fi tratată ca cinci repetări identice. Dacă ultima piatră este mult mai grea ori platforma mai înaltă, costul sarcinii diferă. O bază bună poate înregistra fiecare stație, de exemplu STONE01 până la STONE05, cu parametrii săi. Acest model permite să identificăm dacă sportivul îmbunătățește trecerea dintre obiecte ori rămâne blocat la aceeași încărcătură.

Timpii între obiecte pot include deplasarea fără sarcină, ajustarea prizei și pregătirea următoarei ridicări. Nu trebuie să îi numim automat «timp de recuperare». Sunt intervale de tranziție într-o sarcină complexă, iar interpretarea lor cere filmare sau un protocol de cronometrare. Dacă un atlet se oprește pentru că arbitrul întârzie confirmarea, intervalul nu descrie exclusiv capacitatea fizică. Observațiile despre context pot preveni concluzii eronate și pot evidenția aspecte de organizare.

Într-un concurs, ordinea obiectelor este impusă și poate fi diferită de cea folosită la antrenament. O comparație longitudinală serioasă cere definirea exactă a configurației. Putem agrega timpii tuturor segmentelor și calcula rezultatul final, dar și invers: dintr-un timp final singur nu putem reconstrui fiecare tranziție. De aceea, păstrarea datelor de nivel inferior oferă flexibilitate pe termen lung. Nu este nevoie să transformăm fiecare sesiune obișnuită într-o filmare multicameră, însă testele-cheie merită descrise bine.

Acest principiu se aplică și probelor care combină Log, Deadlift, Carry ori alte sarcini sub același cronometru. Înainte să construim statistici, definim ce înseamnă completarea, ordinea obligatorie și criteriile de departajare. Dacă regulile se schimbă, păstrăm o versiune nouă a probei. Când modelul respectă structura reală a evenimentului, analiza poate deveni profundă fără a inventa un «indice de Medley» nevalidat.

11. Planificat, executat și validat: trei niveluri ale antrenamentului

Un program de antrenament este o intenție, nu o dovadă că efortul a fost realizat. Dacă antrenorul prescrie cinci serii de cinci repetări la 180 kilograme, iar sportivul execută patru serii și întrerupe ultima din cauza durerii, în baza de date trebuie să existe ambele informații. Planned_sets și planned_reps descriu planul; actual_sets și actual_reps descriu execuția. În anumite probe, validated_reps reprezintă doar execuțiile care îndeplinesc standardul tehnic. A confunda nivelurile produce rapoarte de volum incorecte și ascunde ajustările importante.

Structura poate conține un obiect plan_item cu exercițiu, parametri și obiectiv, iar încercările efective se leagă de acesta. Dacă atletul schimbă exercițiul din motive logistice, de exemplu înlocuiește Yoke cu Sled, noua activitate trebuie descrisă ca executată, fără a suprascrie retrospectiv planul inițial. Această diferență permite evaluarea respectării programului și a flexibilității necesare în viața reală. Nu orice abatere reprezintă o problemă: uneori adaptarea antrenamentului este cea mai bună decizie.

Și intensitatea poate avea statut planificat sau efectiv. O serie prescrisă la RPE 7 poate fi percepută la RPE 9 într-o zi de oboseală. Aceasta este o informație relevantă pentru antrenor, nu o eroare care trebuie corectată la valoarea planificată. Dacă schimbăm încărcătura pentru a păstra intensitatea subiectivă, baza trebuie să păstreze atât criteriul inițial, cât și rezultatul. Astfel, putem investiga dacă sportivul adaptează frecvent sarcina într-o anumită zi a săptămânii.

Pentru probele dinamice, planul poate specifica trei curse de 20 metri, iar în practică sportivul realizează două curse complete și una de 12 metri. Stocarea numai a numărului trei ar supraestima volumul realizat, iar înregistrarea a două ar elimina o expunere reală. Un model la nivel de încercare poate păstra distanța efectivă a fiecărei curse. Pentru indicatorii sintetici, se pot calcula totalul de metri parcurși, numărul de curse complete și motivele opririlor, toate separat.

Datele despre motivul modificării sunt utile, dar nu trebuie să fie invazive. Categoriile pot include ajustare tehnică, limitare de echipament, oboseală, durere, lipsa timpului sau alegere tactică. Dacă este vorba despre simptome medicale, accesul la detalii trebuie limitat corespunzător. Baza de date nu este un dosar medical implicit, iar un antrenor nu are nevoie de fiecare informație personală pentru a modifica un program.

Separarea planului de execuție permite o analiză matură. Uneori progresele apar tocmai pentru că sportivul a redus volumul într-o săptămână dificilă, nu pentru că a urmat rigid fiecare cifră. Alteori lipsa progresului poate reflecta faptul că planul a fost executat doar parțial din motive externe. Fără acest context, concluziile despre eficiența programului sunt slabe. O bază serioasă descrie realitatea, nu o rescrie ca să pară că totul s-a desfășurat conform intenției.

12. Volumul extern: tonajul este util numai în limitele lui

Volumul este unul dintre cele mai frecvent folosite cuvinte în antrenamentul de forță, dar poate reprezenta lucruri diferite. Pentru repetări la bară, un calcul simplu este masa ridicată înmulțită cu repetările, apoi însumată pentru toate seriile. În probele de deplasare, putem însuma distanțele sau numărul curselor. În strongman, niciuna dintre aceste măsuri nu reprezintă singură încărcarea completă a corpului. Datele trebuie să permită calcularea unor indicatori specifici sarcinii, fără să îi comprimăm artificial într-o unitate universală.

Să presupunem două sesiuni ipotetice: cinci seturi a cinci repetări la 150 kilograme și trei seturi a trei repetări la 220 kilograme. Tonajul simplificat este 3.750 kilograme în prima și 1.980 în a doua. Aceasta nu demonstrează că prima sesiune a fost mai solicitantă fiziologic sau că a produs un risc mai mare. Intensitatea relativă, pauzele, viteza, tehnica și apropierea de eșec pot schimba răspunsul. Tonajul descrie masa cumulată manipulată sub o convenție contabilă, nu lucrul mecanic complet sau oboseala.

În Yoke, o măsură simplă a expunerii poate fi suma metrului parcurși cu fiecare încărcătură. Un atlet poate realiza patru curse de 20 metri la 300 kilograme, adică 80 metri de deplasare cu sarcină mare. Un altul poate face două curse de 40 metri, dar traseul și pauzele pot fi diferite. A înmulți masa cu distanța produce un indicator descriptiv de tip kg·m, dar nu reprezintă automat lucrul mecanic efectuat. Acesta ar cere analiza forțelor relevante pe direcția deplasării.

În Farmer’s Walk, trebuie precizat dacă în calculul încărcăturii considerăm masa per mână ori totalul. Dacă un sportiv transportă câte 120 kilograme în fiecare mână, masa totală a aparatelor este 240 kilograme. Un câmp numit load_kg fără convenție poate produce o eroare de factor doi. Pentru grafice, este utilă păstrarea ambelor valori cu relație matematică transparentă. Pe lângă distanță, numărul scăpărilor și încercările întrerupte pot oferi context.

Indicatorii agregați trebuie să fie specifici exercițiului sau familiei sale, nu să amestece necritic Log, Deadlift, Yoke și Stones într-un singur «volum». Poate fi util să urmărim tonajul la Deadlift separat, metri sub Yoke separat și numărul de încărcări Atlas separat. Apoi analizăm distribuția săptămânală a probelor și răspunsul atletului. Așa păstrăm informația biomecanică în loc să o sacrificăm pentru o cifră mare, ușor de afișat.

Un sistem bun poate calcula automat acești indicatori, dar păstrează datele brute. Dacă peste un an schimbăm definiția volumului, trebuie să putem recalcula istoricul. Stocarea exclusivă a rezultatului agregat este riscantă, mai ales când apar erori sau noi ipoteze. În Strongman Data Lab vom trata tonajul ca pe un instrument de descriere, nu ca pe o măsurare totală a stresului sau ca pe un predictor clinic al accidentărilor.

13. Încărcarea internă: RPE, efort perceput și limitele interpretării

Două antrenamente cu aceeași încărcare externă pot fi percepute foarte diferit. Un atlet bine odihnit poate executa un set la 180 kilograme cu dificultate moderată, în timp ce aceeași sarcină după o noapte scurtă poate părea mult mai grea. Încărcarea internă încearcă să descrie răspunsul sportivului, nu doar ce se află pe aparat. RPE și session-RPE sunt instrumente practice, dar trebuie definite. Nu orice cifră între unu și zece reprezintă aceeași scală sau același moment al evaluării.

RPE pentru o serie grea, eventual legat de repetările în rezervă, diferă de session-RPE, care exprimă aprecierea globală a întregii sesiuni. În metodologia Foster, încărcarea de sesiune poate fi aproximată ca durata sesiunii în minute înmulțită cu scorul global al efortului perceput, atunci când protocolul este aplicat consecvent. Rezultatul este o unitate arbitrară utilă pentru comparații interne, nu o măsurare a energiei consumate. Nu trebuie amestecat cu tonajul mecanic ori cu intensitatea unei repetări individuale.

În strongman, există zile cu puține repetări maximale și zile cu deplasări lungi ori probe repetitive. Sportivul poate percepe drept extrem de solicitantă o sesiune scurtă de Log maximal, deși durata totală a efortului activ a fost redusă. În altă zi, o sesiune de Farmers și Sled poate acumula multă oboseală cu încărcături mai mici. Un singur scor global poate ajuta la urmărirea trendurilor, dar ascunde diferențele de mecanism. Merită asociat cu tipurile de probe efectuate.

Momentul colectării efortului perceput trebuie standardizat. Dacă un sportiv notează RPE imediat după ultimul set și altul după două ore, valorile pot reflecta experiențe diferite. Un protocol poate indica momentul aproximativ al completării și aceeași scală pentru toți utilizatorii. Nu este necesar să îi cerem atletului să își evalueze efortul de zeci de ori într-o ședință; supracolectarea poate reduce aderența. Scopul este obținerea unor informații comparabile, nu multiplicarea interogărilor.

RPE este subiectiv, dar subiectivitatea nu îl face inutil. Cercetările privind auto-raportările sportivilor indică faptul că aceste măsuri pot reflecta schimbări relevante ale stării de antrenament. Totuși, nu sunt diagnostice individuale și pot fi influențate de motivație, experiență, limbaj sau presiunea antrenorului. Dacă sportivul se teme că o valoare mare va duce la critică, poate raporta incorect. Calitatea indicatorului depinde și de relația de încredere.

În baza de date separăm RPE pentru încercare, RPE pentru exercițiu și session-RPE, cu momentele și scările aferente. Analiza poate compara tendințele cu performanța, somnul sau distribuția săptămânală, fără să pretindă cauzalitate. Dacă valorile cresc repetat în paralel cu scăderea performanței, antrenorul poate investiga recuperarea sau programul. Dar o valoare izolată nu poate certifica suprasolicitarea ori aptitudinea medicală pentru încărcări maximale.

14. Datele calendaristice și ordinea cronologică a progresului

Progresul se desfășoară în timp, iar baza de date trebuie să păstreze cronologia corectă. O sesiune are o dată locală, eventual oră de început și sfârșit, dar o încercare poate avea doar ordinea sa în interiorul sesiunii. Nu este necesar să stocăm secunda exactă pentru fiecare repetare obișnuită. În schimb, pentru un studiu de pacing, timpul relativ de la start devine esențial. Alegem rezoluția temporală după întrebarea analitică, nu după precizia maximă permisă de dispozitiv.

Fusurile orare contează pentru sportivii care călătoresc. Dacă un concurs începe la ora locală 10:00 într-o țară și fișierul îl convertește greșit la ora Bucureștiului, data poate apărea decalată. Formatul ISO 8601 cu indicator de fus orar permite interpretare consecventă, iar data locală poate fi păstrată pentru afișare. O aplicație nu trebuie să transforme automat toate evenimentele în UTC fără să mai poată afișa ora la care sportivul a fost efectiv în arenă.

Pentru comparații pe săptămâni, definiția săptămânii trebuie să fie stabilă. Unele programe folosesc luni-duminică, altele duminică-sâmbătă; unele afișează numărul ISO al săptămânii. Dacă schimbăm metoda la mijlocul sezonului, volumele săptămânale pot părea mutate. Planul anual ar trebui să permită identificarea fazelor de pregătire, competiție, recuperare și off-season, dar etichetele trebuie introduse cu grijă. Nu toate săptămânile au același obiectiv și nu trebuie comparate fără context.

Probele oficiale se pot prelungi până după miezul nopții, iar un eveniment de mai multe zile poate include mai multe sesiuni calendaristice. Session_id trebuie să păstreze legătura dintre încercări chiar dacă data locală se schimbă. Înregistrarea rezultatului prin data introducerii în aplicație este o eroare frecventă: dacă sportivul completează jurnalul duminică pentru un concurs de sâmbătă, evenimentul trebuie să rămână datat sâmbătă, iar duminică poate apărea separat ca dată a introducerii.

Data modificării unei înregistrări este diferită de data evenimentului. created_at și updated_at sunt metadate tehnice; performed_at descrie momentul activității. Această separare permite corectarea retrospectivă a unui timp fără falsificarea cronologiei sportive. Dacă un video este analizat după două săptămâni, timpul măsurat se atribuie încercării vechi, păstrând sursa și momentul analizei. Un grafic longitudinal nu trebuie să sară în prezent de fiecare dată când o valoare istorică este corectată.

O bază bine datată poate răspunde unor întrebări despre frecvență: câte sesiuni de Log au existat în ultimele patru săptămâni, când a fost ultima simulare de Yoke, ce pauză a existat între două competiții? Fără date corecte, asemenea răspunsuri sunt fragile. Nu este necesar să colectăm locația exactă a atletului în timp real. Timpul relevant pentru sarcina sportivă este suficient; precizia excesivă poate crește povara și problemele de confidențialitate.

15. Excel sau Google Sheets: prima implementare funcțională

Pentru un singur atlet, o foaie de calcul poate reprezenta un punct de plecare suficient. Nu este nevoie să achiziționăm imediat o platformă specializată pentru a înregistra încercări. Este însă util să separăm cel puțin patru foi: dicționar, sesiuni, încercări și aparate. O foaie suplimentară pentru competiții sau pentru observații video poate fi adăugată ulterior. Scopul nu este numărul taburilor, ci posibilitatea de a regăsi rapid condițiile în care s-a obținut un rezultat.

În foaia Sesiuni, fiecare rând are session_id, athlete_id, dată, tip de sesiune și observații generale. În foaia Încercări, fiecare rând are attempt_id, session_id, event_variant_id, implement_id, încărcătură, distanță sau repetări și rezultat. Foaia Aparate descrie instrumentele identificate. Legătura prin session_id permite filtrarea tuturor încercărilor dintr-o zi, fără repetarea informațiilor generale. Un utilizator începător poate începe cu mai puține tabele, dar această separare simplifică extinderea viitoare.

Listele derulante și validarea celulelor reduc erorile. Pentru attempt_status putem oferi completed, failed, stopped și not_started; pentru context folosim training, test, simulation și competition. Este mai sigur decât introducerea liberă a termenilor în fiecare rând. Coloanele numerice pot respinge valorile negative, iar formatul datei poate fi uniformizat. Un mesaj de avertizare nu garantează corectitudinea biologică a datelor, dar elimină o parte din greșelile mecanice.

Formulele ar trebui folosite doar pentru indicatorii calculați din date stabile. Total_load_kg poate rezulta din implement_mass_kg + added_load_kg; average_speed_m_s poate fi distance_m / duration_s când durata este pozitivă și încercarea completă. Pentru încercări incomplete, formula trebuie fie adaptată explicit pentru distanța efectivă, fie să lase viteza finală necalculată, în funcție de scop. Evităm formulele care afișează un zero fals când lipsesc datele necesare. O celulă goală și un rezultat de zero au înțelesuri diferite.

Un risc al foii de calcul este editarea accidentală a formulelor. Protejarea coloanelor calculate și păstrarea copiilor periodice poate reduce problema. Un alt risc apare când mai multe persoane modifică simultan aceeași foaie fără reguli de responsabilitate. Pentru o echipă, drepturile de editare, istoricul versiunilor și standardul comun de introducere devin mai importante. Nu este nevoie de reguli birocratice complicate, doar de delimitarea clară dintre cine introduce, cine verifică și cine aprobă corecțiile.

Dacă baza crește la mii de încercări, foile de calcul pot rămâne utile pentru vizualizare, dar un sistem relațional ori o aplicație cu validări solide poate deveni mai potrivit. Migrarea este mult mai ușoară dacă datele au identificatori stabili, unități consecvente și tabele bine definite. În acest sens, un fișier simplu construit corect reprezintă deja o investiție în viitor. Prețul software-ului este secundar față de calitatea arhitecturii.

16. Modelul relațional: tabele care pot crește fără haos

Un model relațional tratează entitățile drept tabele legate prin chei. Nu este necesar ca sportivul să programeze un server pentru a înțelege principiul. Tabelul Athlete conține sportivii; Session descrie antrenamentele; EventDefinition descrie proba; Implement descrie aparatul; Attempt conține încercările; Split conține timpii pe segmente. Relațiile se exprimă prin identificatori. Dacă o încercare aparține sesiunii S105, atunci session_id din Attempt indică acel rând din Session, fără duplicarea datei și a locului.

Separarea este utilă pentru că reduce anomaliile. Dacă schimbăm numele afișat al unui atlet, îl modificăm o singură dată în Athlete. Dacă am copiat numele de cinci sute de ori în Attempt, unele rânduri pot rămâne cu o variantă veche. Același principiu se aplică denumirilor aparatelor și locurilor. Normalizarea nu trebuie împinsă până la absurd; o arhitectură foarte fragmentată poate deveni greu de utilizat. Nivelul potrivit depinde de proiect și de persoanele care lucrează cu el.

Relațiile unu-la-mai-multe sunt naturale: o sesiune are mai multe încercări, o încercare de deplasare poate avea mai multe splituri, un aparat este folosit în numeroase sesiuni. Dacă o încercare conține mai multe obiecte distincte, precum un Medley, adăugăm un nivel intermediar de segmente. Astfel, putem compara un obiect specific în interiorul unui Medley fără să reconstruim manual traseul din observații textuale. Structura reflectă logica sportului, nu doar comoditatea unui raport.

Integritatea referențială împiedică apariția încercărilor care indică sesiuni inexistente. Dacă un utilizator încearcă să înregistreze attempt_id A900 cu session_id S999 și sesiunea nu există, sistemul poate bloca ori semnala intrarea. Într-o foaie de calcul, acest control poate fi realizat prin formule sau reguli de validare; într-o bază SQL, prin chei externe. Mecanismul tehnic diferă, dar principiul este identic: rezultatul trebuie să aibă context real.

Nu toate valorile merită transformate în tabele distincte. Dacă un sportiv are o notă scurtă despre oboseală, un câmp text poate fi suficient. Dacă urmărim regulat temperatura, calitatea somnului și percepția efortului pentru mai mulți atleți, tabele sau structuri dedicate pot facilita analiza. Regula este să separăm informațiile când au identitate proprie, când se repetă sau când necesită relații independente. Fără aceste criterii, proiectarea devine un exercițiu tehnic lipsit de beneficiu sportiv.

Dezvoltarea unei aplicații proprii poate fi justificată când mai mulți sportivi completează simultan jurnalul și există fluxuri de validare, filmări și rapoarte automate. Totuși, un backend complicat nu repară definițiile neclare. Dacă «timp final» înseamnă lucruri diferite pentru utilizatori, relațiile perfect implementate vor păstra o contradicție perfect structurată. Mai întâi standardul editorial și metodologic, apoi codul.

17. Exemplul CSV: schimbul de date fără pierderea sensului

CSV este un format text folosit pentru schimbul tabelelor între aplicații. El permite exportul unei baze de antrenament dintr-un program și importul în altul, fără a depinde complet de interfața inițială. Totuși, CSV nu păstrează automat relațiile dintre tabele, tipurile de date și toate regulile dicționarului. Pentru o arhivă completă avem nevoie de mai multe fișiere și de o descriere a câmpurilor. Un singur tabel uriaș poate fi comod pentru distribuire, dar riscă să piardă informații despre implement sau sesiune.

Un mic exemplu educațional ar putea utiliza antetul attempt_id,session_id,event_code,load_kg,distance_m,duration_s,status. Un rând ar fi A001,S001,YOKE,300,20,18.3,completed, iar altul A002,S001,FARMERS_WALK,240,20,21.4,completed. În al doilea rând, load_kg reprezintă masa totală a celor două mânere, iar regula trebuie explicată în dicționar. Dacă nu o facem, cineva poate interpreta că sportivul a transportat 240 kilograme în fiecare mână. Aceste valori sunt ipotetice, nu rezultate ale unor antrenamente reale.

Pentru Farmer’s este adesea mai potrivit să avem load_per_hand_kg și total_load_kg separate. Dacă dorim un CSV comun tuturor probelor, unele câmpuri rămân neaplicabile, iar regulile de transformare trebuie documentate. Altfel, importul poate crea erori prin presupuneri despre fiecare familie de exerciții. În practică, o arhitectură cu tabele specializate și un export agregat pentru analiză poate oferi cel mai bun compromis între rigoare și comoditate.

Delimitatorii și separatorul zecimal creează probleme cunoscute. Un fișier poate folosi virgulă între coloane și punct pentru zecimale, în timp ce o aplicație configurată regional așteaptă punct și virgulă și virgulă zecimală. Valoarea 21,4 poate fi împărțită greșit în două câmpuri ori citită ca text. Înainte de importul masiv, testăm câteva rânduri și verificăm numărul coloanelor, unitățile și timpii. Este o etapă mică ce poate preveni coruperea întregului istoric.

Codarea caracterelor contează și ea. Denumiri precum «Îndreptări», «Genuflexiuni» sau nume de sportivi cu diacritice trebuie păstrate corect. UTF-8 oferă un standard util pentru schimb internațional. La export, evităm să transformăm automat identificatorii în numere care pierd zerourile inițiale. Un cod A001 nu trebuie să devină A1 dacă sistemul îl folosește ca identificator. Câmpurile tehnice sunt texte, chiar dacă unele conțin cifre.

CSV este excelent ca format de schimb, dar nu înlocuiește o politică de protejare. Fișierele pot fi copiate, editate și distribuite accidental; datele personale trebuie gestionate adecvat. Păstrăm și un export al dicționarului, versiunea schemei și data extragerii. Astfel, cineva care deschide arhiva peste trei ani poate interpreta corect cifrele fără să depindă de memoria persoanei care a creat-o.

18. Validarea automată: ce poate verifica un tabel fără antrenor

Controlul calității poate începe cu verificări simple. O distanță negativă este imposibilă într-un rezultat obișnuit de deplasare, iar o durată de zero secunde nu poate reprezenta o cursă completată pe douăzeci de metri. Dacă status este completed, timpul final trebuie să fie pozitiv și distanța completată să corespundă protocolului. Dacă status este not_started, un timp oficial de finalizare nu ar trebui să existe. Aceste reguli pot fi implementate într-o foaie de calcul sau într-o bază de date, înaintea oricărei analize statistice.

Regulile trebuie să țină cont de context. Un câmp repetitions_valid cu zero este acceptabil pentru o încercare nereușită, în timp ce un număr negativ nu are sens. Un timp de 100 de secunde poate părea mare pentru Farmer’s, dar poate proveni dintr-o probă cu reguli neobișnuite sau din mai multe scăpări. Nu trebuie respins automat doar pentru că depășește un prag arbitrar. Unele verificări pot bloca imposibilități logice; altele trebuie doar să ceară confirmare.

Validarea relațională poate verifica dacă athlete_id, session_id și implement_id există în tabelele corespunzătoare. Dublurile de attempt_id trebuie semnalate, însă timpii identici ai două încercări nu sunt dubluri suficiente prin ei înșiși. Dacă importăm rezultatele unui concurs de două ori, problema poate fi detectată printr-un cod de sursă și un identificator al încercării. Soluțiile bazate doar pe greutate și timp riscă să șteargă observații legitime.

Verificările matematice sunt utile pentru datele derivate. Dacă spliturile acoperă tot traseul fără suprapuneri și folosesc aceeași referință temporală, suma lor ar trebui să fie apropiată de timpul total. Diferențele pot apărea din rotunjire ori din definirea startului, astfel că pragul de toleranță trebuie justificat. Pentru total_load_kg, suma dintre masa aparatului și încărcătura adăugată poate fi recalculată. Dacă un rezultat derivat diferă, prioritatea este identificarea cauzei, nu înlocuirea silențioasă.

Se pot crea rapoarte scurte cu rândurile suspecte: timp lipsă la încercare completată, masă necunoscută, identificator duplicat, valoare imposibilă sau schimbare mare față de ultimele teste. Aceste rapoarte nu sunt verdicte despre sportiv. Ele indică date care merită revizuite de persoana ce cunoaște contextul. O anomalie poate fi un record spectaculos real; sistemul ar trebui să îl păstreze dacă este confirmat, nu să îl trateze drept eroare inevitabilă.

Automatizarea este benefică numai când regulile sunt clare și explicabile. Un algoritm care șterge încercări considerate «neobișnuite» fără urmă poate altera analiza. Păstrăm valoarea inițială, motivul corecției și persoana care a decis schimbarea. Într-un sport cu aparate atipice și rezultate extreme, flexibilitatea controlată este mai potrivită decât rigiditatea arbitrară. Scopul validării este să crească încrederea în date, nu să forțeze lumea reală să semene cu intervalele considerate normale de software.

19. Proveniența și auditul: unde a apărut fiecare cifră?

Un rezultat poate proveni din cronometrarea manuală, dintr-o filmare, de pe foaia oficială a arbitrului sau dintr-o aplicație. Aceste surse nu sunt identice și pot furniza cifre diferite. Baza de date ar trebui să păstreze measurement_source, measurement_method și, când este posibil, un identificator al fișierului sau documentului de referință. Dacă un timp este corectat după analiza video, putem explica de ce valoarea finală diferă de nota inițială. Fără proveniență, auditul se reduce la presupuneri.

Datele oficiale sunt relevante pentru clasament, dar nu sunt neapărat cea mai bună sursă pentru fiecare variabilă biomecanică. Un arbitru poate confirma timpul total, în timp ce o filmare standardizată permite calcularea spliturilor. Ambele pot aparține aceleiași încercări și pot fi stocate separat. Dacă divergența este de câteva zecimi, trebuie să știm protocolul fiecărui sistem înainte să alegem o valoare. Nu există o regulă universală că video-ul este mereu mai exact decât cronometrarea oficială.

Un câmp reliability_note poate descrie limite cunoscute: aparat necalibrat, unghi video dificil, semnal de start neclar sau masă declarată de organizator. Aceste observații nu invalidează automat datele; ajută la alegerea utilizării lor. Un rezultat cu incertitudine mare poate fi potrivit pentru un jurnal istoric, dar nepotrivit pentru estimarea unui progres de 0,2 secunde. Nivelul de încredere trebuie asociat scopului analizei.

Istoricul modificărilor ar trebui să includă valoarea veche, valoarea nouă, motivul și data corectării pentru schimbările relevante. În sistemele mari se pot folosi tabele de audit; în foile de calcul, o coloană de observații și istoricul versiunilor pot fi suficiente pentru început. Este important să evităm suprascrierea fără urmă, mai ales când informația a fost deja folosită într-un raport. Dacă un record se corectează, trebuie să poată fi revizuite și concluziile care depindeau de el.

Proveniența susține și reproducibilitatea. Dacă un analist folosește datele peste un an, trebuie să poată reconstrui formula și setul de observații care au produs un grafic. Păstrarea fișierelor brute, a versiunilor dicționarului și a procedurilor de prelucrare reduce riscul ca rezultatele să fie imposibil de verificat. Principiile FAIR privind datele științifice pun accent pe găsire, acces adecvat, interoperabilitate și reutilizare, fără să ceară publicarea indiscriminată a informațiilor private.

Nu toate rapoartele necesită o infrastructură de audit sofisticată. Pentru un singur atlet, poate fi suficient să păstreze filmarea și să noteze când o cifră a fost modificată. Pentru o echipă cu mai mulți utilizatori, controlul versiunilor și responsabilitățile devin mai importante. Regula fundamentală este aceeași: orice număr important trebuie să poată fi legat de o observație reală și de o metodă de măsurare cunoscută.

20. Calculul indicatorilor: formule clare, nu cifre miraculoase

O bază de date devine analitică atunci când putem deriva indicatori din observații corecte. Pentru o cursă completă, viteza medie se calculează prin distanța parcursă împărțită la timp. Pentru un set de repetări, tonajul simplificat este încărcătura înmulțită cu numărul repetărilor, cu limitele deja discutate. Pentru un microciclu, totalul metrului parcurși la Yoke poate fi suma distanțelor efectiv realizate. Fiecare formulă are un domeniu de aplicare și trebuie să fie vizibilă ori documentată; numele indicatorului nu înlocuiește definiția sa.

Un exemplu ipotetic: la Farmer’s Walk un sportiv parcurge 20 metri în 16 secunde. Viteza medie este 1,25 m/s. Dacă timpul include ridicarea mânerelor, nu este viteza medie exclusivă a mersului, ci raportul dintre distanță și întregul interval oficial. Dacă sportivul scapă aparatele, această medie include oprirea. Nu este greșit să raportăm rezultatul, dar nu trebuie să pretindem că atletul s-a deplasat constant la 1,25 m/s. Datele rezumative nu reconstituie singure dinamica.

Într-un test cu patru segmente de cinci metri, spliturile pot oferi mai multe informații. Dacă primele cinci metri durează 5,2 secunde și ultimele cinci durează 4,0, putem observa o distribuție neuniformă. Totuși, dacă primul segment include desprinderea aparatelor, diferența nu dovedește o problemă de accelerație. Pentru acest diagnostic este nevoie de delimitarea fazelor. Baza de date poate calcula viteza fiecărui segment, dar interpretarea cere întotdeauna definiția cronometrajului și analiza tehnică.

Procentul de schimbare este o formulă utilă: diferența dintre valoarea nouă și cea veche, împărțită la valoarea veche, înmulțită cu o sută. La timpul de cursă, o valoare negativă poate reprezenta îmbunătățire; la greutatea maximală, creșterea este de regulă pozitivă. Un raport automat trebuie să explice direcția favorabilă a fiecărui indicator, altfel utilizatorul poate interpreta greșit semnul. De asemenea, dacă valoarea inițială este zero ori lipsă, procentul nu este definit în forma obișnuită.

Viteza de execuție, puterea și alte variabile mecanice cer metode de măsurare potrivite. Nu este corect să transformăm masa unui camion în forță de tracțiune doar pentru că avem tonajul și timpul probei. La fel, încărcătura totală transportată orizontal nu este automat lucrul mecanic produs. Baza trebuie să distingă indicatorii rezultați din identități matematice simple de estimările biomecanice ce necesită senzori și ipoteze suplimentare. Diferența protejează credibilitatea raportului.

Un indicator nou merită păstrat numai dacă oferă o perspectivă utilă. Dacă două variabile spun aproape același lucru, raportul poate deveni aglomerat fără câștig informațional. Începem cu rezultate brute și câteva calcule transparente. După stabilirea fiabilității, putem explora modele mai complexe. În Strongman Data Lab, formula trebuie să poată fi explicată unui sportiv care nu programează, iar concluzia trebuie să fie proporțională cu măsurătorile reale.

21. Graficele de progres: ce afișăm și ce nu ascundem

Graficele sunt utile când reduc efortul de interpretare. Un grafic de timp în funcție de dată poate arăta schimbarea performanței la același test standardizat. O diagramă a încărcăturii în funcție de numărul repetărilor poate descrie distribuția unui ciclu. O reprezentare a spliturilor poate evidenția segmente unde timpul crește. Nu este nevoie de zeci de diagrame suprapuse pentru a justifica existența unei baze de date. O vizualizare bună răspunde unei întrebări și oferă contextul necesar cititorului.

Axele trebuie să conțină unități corecte. Dacă afișăm timpul Farmer’s, axa verticală exprimă secunde, nu un scor vag numit «viteză»; dacă reprezentăm viteza medie, unitatea devine metri pe secundă. În plus, aceeași curbă ar trebui să conțină rezultate comparabile. Amestecarea curselor de zece și douăzeci de metri ori a încărcăturilor per mână și totale poate produce o imagine falsă. Culorile nu trebuie să ascundă diferențele de protocol, iar legenda trebuie să explice ce reprezintă fiecare serie.

Valorile individuale ar trebui păstrate vizibile când sunt puține observații. O linie de tendință poate ajuta, dar riscă să sugereze o evoluție continuă între două încercări separate de multe săptămâni. Medii mobile pot netezi variația, însă alegerea ferestrei influențează desenul. Nu există o metodă de netezire universal corectă pentru toate probele. Dacă datele provin din doar patru teste, o diagramă cu patru puncte și note despre condiții poate fi mai onestă decât o curbă complicată.

Graficele trebuie să semnaleze și incertitudinea. Un timp manual cu eroare necunoscută nu merită interpretat la sutime de secundă. Dacă există estimări de eroare de măsurare, acestea pot fi prezentate într-o formă potrivită. Dacă nu, legenda poate menționa metoda și limitele sale. O schimbare vizuală mică poate fi relevantă competitiv, dar nu trebuie declarată definitivă fără suficiente date. Spectacolul vizual nu justifică afirmații mai puternice decât metoda de colectare.

Pentru un atlet, un tablou minimal poate avea patru elemente: rezultatul ultimului test standardizat, evoluția pe câteva săptămâni, volumul pe familii de probe și observații despre oboseală sau tehnică. Pentru antrenorul unei echipe, poate fi utilă filtrarea după sportiv și eveniment. Pentru un cititor al site-ului, un exemplu educațional trebuie să indice clar că datele sunt ipotetice. Publicarea unui grafic fără această precizare poate lăsa impresia falsă că a fost realizat un studiu.

Vizualizările trebuie să permită și descoperirea erorilor. O încărcătură de două ori mai mare decât valorile obișnuite poate indica faptul că masa Farmer’s a fost trecută total într-o coloană per mână. Un timp negativ ori o dată deplasată pot deveni imediat evidente. Graficul nu este doar instrument de prezentare; este și o verificare suplimentară, care trebuie urmată de examinarea înregistrării originale înainte de corectare.

22. Datele subiective și sănătatea: utilitate fără supraveghere excesivă

Somnul, oboseala, durerea și disponibilitatea mentală pot influența felul în care atletul exprimă forța. Un jurnal poate include o evaluare scurtă a acestora, dar trebuie să distingă observațiile sportive de informațiile medicale sensibile. Un câmp precum «energie resimțită înainte de antrenament» poate fi util pentru interpretarea unei sesiuni. Un istoric detaliat de afecțiuni sau tratamente nu trebuie introdus într-o bază accesibilă întregii echipe doar pentru că aplicația permite rubrici suplimentare.

Răspunsurile subiective necesită consecvență. Dacă scorul de oboseală este pe o scară de la unu la cinci, dicționarul trebuie să precizeze sensul extremelor. O schimbare la o scală de la zero la zece, fără recalibrare, produce discontinuitate. Sportivul trebuie să știe că informațiile sunt folosite pentru discuții și ajustări, nu pentru judecăți despre caracter. În lipsa încrederii, auto-raportarea poate deveni strategică și își pierde valoarea.

Indicatorii purtabili pot oferi informații despre puls și variabilitatea ritmului cardiac, dar interpretarea depinde de metodă, ora măsurării, medicație, stres, somn și calitatea senzorului. O aplicație cu scor de recuperare nu poate certifica siguranța unui Deadlift maximal. De asemenea, o valoare izolată nu diagnostichează suprasolicitarea. Dacă un sportiv are durere toracică, confuzie, colaps sau alte simptome grave, evaluarea medicală este prioritară, indiferent de ce indică graficele.

În Strongman Data Lab, datele de recuperare se folosesc pentru observarea tendințelor individuale. Dacă o perioadă cu volum crescut se asociază repetat cu oboseală și scăderea rezultatelor, antrenorul poate lua în calcul modificarea programului. Nu înseamnă că baza a demonstrat un mecanism cauzal unic. Mai mulți factori se pot suprapune: somnul, nutriția, activitatea profesională și stresul. Interpretarea responsabilă păstrează aceste posibilități în vedere.

Colectarea trebuie să fie minimă și proporțională. Nu există un motiv automat pentru a salva zilnic locația exactă, conversațiile personale ori alte date care nu contribuie la pregătire. Informațiile medicale pot necesita acces distinct și politici adecvate de protecție. Pentru o echipă, este util să se precizeze cine vede notele individuale și cine primește numai indicatori agregați. Tehnologia de monitorizare nu trebuie să devină un instrument de presiune.

Un atlet trebuie să poată explica o valoare neobișnuită fără să fie obligat să ofere detalii intime. Dacă a dormit prost, jurnalul poate nota somn insuficient, fără a documenta viața privată. Dacă există o accidentare, deciziile de revenire se iau cu personal competent, nu printr-un algoritm improvizat. Baza de date contribuie la memoria procesului, dar rămâne un instrument auxiliar al relației dintre sportiv, antrenor și profesioniștii implicați.

23. Tendințe săptămânale și sezoniere: dincolo de recordul zilei

Strongmanul este deseori prezentat prin recorduri maximale, însă pregătirea se construiește în multe sesiuni obișnuite. O bază longitudinală permite să vedem frecvența probelor, distribuția intensităților și evoluția unor teste standardizate. Dacă atletul realizează Yoke o singură dată într-o lună, concluzia despre progres va fi mai incertă decât dacă există mai multe observații comparabile. Totuși, creșterea frecvenței testelor doar pentru a obține mai multe date poate afecta recuperarea. Programul sportiv rămâne prioritar.

Pentru fiecare familie de exerciții, putem crea un istoric separat. Deadlift poate fi urmărit prin greutăți, repetări și uneori viteză; Farmer’s prin distanțe și timpi; Atlas prin obiecte încărcate și înălțimea platformei; Log prin încercări valide. O singură linie de tonaj total ar amesteca activități cu solicitări mecanice diferite. Profilele separate permit observarea unor puncte slabe reale și alegerea probelor ce merită prioritate.

Distribuția săptămânală nu trebuie interpretată fără faza pregătirii. În off-season, accentul poate fi pe hipertrofie și volum, cu mai puține simulări maximale. Aproape de concurs, specificitatea crește și volumul poate scădea. Dacă analizăm doar tonajul, reducerea din perioada de descărcare ar putea părea regres, deși urmărește scăderea oboselii. O etichetă training_phase și obiectivele perioadei ajută la înțelegerea deciziilor.

Un exemplu ipotetic: un sportiv repetă același test Farmer’s la începutul, mijlocul și finalul unui ciclu, folosind 120 kilograme per mână și traseu drept de 20 metri. Timpii sunt 23,2, 22,0 și 21,1 secunde. Aceasta reprezintă o tendință încurajatoare, dacă metoda și condițiile sunt stabile, dar nu demonstrează singură că un anumit exercițiu din program a cauzat schimbarea. Ar fi utile informații și despre familiarizare, pauze, oboseală și tehnică. Datele susțin ipoteze, nu explicații garantate.

În competiții, rezultatele pot varia prin aparate și reguli, astfel că le păstrăm distincte de testele standardizate. O poziție mai slabă într-un concurs mai puternic nu înseamnă neapărat scăderea capacității. Uneori atletul îmbunătățește timpul, dar clasamentul scade deoarece adversarii sunt mai rapizi. Baza poate lega rezultatul brut și punctajul, fără a le confunda. Această diferență ajută la o evaluare sportivă mai echilibrată.

În fiecare lună, analiza ar trebui să producă puține concluzii acționabile: care probă evoluează, unde apare stagnarea, ce test necesită repetare și ce măsurare a devenit necomparabilă. Dacă raportul conține douăzeci de pagini fără o decizie clară, valoarea practică este redusă. Un sistem de monitorizare trebuie să aducă ordine în experiența sportivă, nu să adauge un nou strat de muncă administrativă fără beneficiu.

24. Un tablou de bord care ajută deciziile, nu le înlocuiește

Tabloul de bord reprezintă interfața prin care datele devin ușor de consultat. El nu trebuie să afișeze toate câmpurile, ci indicatorii care răspund nevoilor utilizatorului. Sportivul poate dori să vadă progresul la Log și Farmer’s, antrenorul poate urmări distribuția săptămânală a volumului, iar organizatorul unui concurs poate avea nevoie de istoricul rezultatelor oficiale. Aceste interfețe pot folosi aceeași bază, dar nu trebuie să transforme fiecare utilizator într-un analist de statistică.

Un tablou minimal pentru strongman poate include rezultatul ultimului test comparabil, evoluția sa în timp, totalul lucrului efectuat pe familii de probe, încercările invalidate și observații despre oboseală. Nu este necesar ca toate acestea să fie transformate într-un scor global. O îmbunătățire la Farmer’s și o stagnare la Atlas pot sugera obiective diferite; media celor două ar ascunde problema. Datele trebuie să rămână suficient de dezagregate pentru a susține intervenții specifice.

Filtrele sunt importante. Utilizatorul trebuie să poată selecta sportivul, perioada, proba, încărcătura și protocolul. Dacă vedem un grafic al timpilor Farmer’s fără să știm că unele curse au 10 metri și altele 40, vizualizarea este inutilă pentru progres. Un filtru de comparabilitate poate include numai trasee identice sau poate afișa avertismente despre diferențe. Este mai bine să ascundem o comparație nejustificată decât să oferim un grafic foarte colorat și greșit.

Tabloul trebuie să ofere acces la datele de origine. Dacă un timp pare neobișnuit, sportivul poate deschide încercarea și poate vedea filmarea, nota despre teren sau sursa cronometrajului, când acestea există și sunt permise. Un rezultat agregat fără posibilitate de verificare poate deveni greu de corectat. Drumul de la grafic la înregistrarea inițială face sistemul auditabil și crește încrederea utilizatorilor.

Indicatorii despre recuperare trebuie interpretați cu prudență. O valoare de HRV sau un scor al unei aplicații nu poate certifica aptitudinea pentru o încercare maximală. Dacă sportivul declară durere ascuțită ori alte simptome îngrijorătoare, această informație are prioritate față de un indicator verde. Tabloul poate semnala discuții necesare, dar nu substituie examinarea medicală și nici decizia tehnică responsabilă. A automatiza fără evaluare astfel de decizii poate produce riscuri.

Designul bun rămâne discret. Unitățile sunt vizibile, perioadele corect datate, legenda clară și numerele brute accesibile. Graficele nu trebuie să folosească axe distorsionate pentru a exagera progresul. Un raport concis, revizuit periodic, poate fi mai valoros decât o pagină încărcată cu animații. Scopul final este o decizie mai bună pentru următoarea sesiune, nu o prezentare care impresionează dar nu poate fi explicată.

25. Studiu de caz ipotetic: opt săptămâni din jurnalul unui strongman

Să construim un exemplu ipotetic pentru un atlet care pregătește Farmer’s Walk pe 20 metri, Yoke pe 20 metri și Log pentru repetări. În săptămâna întâi, testul standardizat Farmer’s la 120 kilograme per mână durează 23,6 secunde; Yoke la 300 kilograme durează 19,4 secunde; Log la 90 kilograme produce șase repetări validate în 60 de secunde. Rezultatele sunt introduse în tabelele de încercări, împreună cu aparatele, suprafața, timpul-limită și metoda de cronometrare. Datele sunt inventate în scop didactic, nu aparțin unui sportiv real.

În săptămânile următoare, sportivul efectuează sesiuni obișnuite de volum și tehnică. Nu testează maximal fiecare probă în fiecare săptămână, pentru că acest lucru ar putea compromite pregătirea. Baza păstrează încărcătura și repetările efective, distanțele și RPE, dar testele standardizate sunt programate la intervale convenabile. Astfel, putem vedea ce s-a antrenat între două evaluări, fără a transforma fiecare exercițiu în record personal. Datele de program și cele de test sunt legate, dar rămân distincte.

În săptămâna a patra, Farmer’s este parcurs în 22,4 secunde, Yoke în 18,9 secunde și Log are șapte repetări acceptate. Diferențele par încurajatoare, dar înainte de a le interpreta verificăm dacă aparatele, cronometrarea și condițiile sunt identice. Dacă filmarea arată că traseul Farmer’s a fost scurtat accidental cu un metru, rezultatul nu intră în seria strict comparabilă. El rămâne în jurnal cu o notă de protocol. Aceasta este o demonstrație a rolului controlului calității, nu o încercare de a ascunde performanța.

În săptămâna a opta, testele sunt repetate în aceleași condiții ca la început. Farmer’s ajunge la 21,7 secunde, Yoke la 17,8 și Log la opt repetări validate. Putem calcula scăderea timpilor și creșterea numărului de repetări. Nu putem însă afirma că un singur exercițiu a produs toate schimbările, deoarece antrenamentul a inclus mai multe componente și nu există un grup de control. Putem spune că performanța observată la aceste teste a progresat în perioada urmărită, în limitele fiabilității măsurării.

Analiza spliturilor arată, ipotetic, că Farmer’s a câștigat mai mult timp în primul segment decât în ultimul. Filmarea sugerează o ridicare de pe sol mai eficientă, dar aceasta rămâne o ipoteză tehnică, nu un mecanism fiziologic demonstrat. Antrenorul poate decide să păstreze exercițiile de ridicare inițială și să monitorizeze finalul cursei. Baza de date a contribuit la o întrebare de antrenament mai precisă; nu a ales automat programul.

Studiul arată de ce trebuie păstrate datele brute, condițiile și încercările neobișnuite. Dacă am fi stocat doar recordurile din săptămânile unu și opt, am fi pierdut informațiile despre sesiunea cu traseu greșit, despre distribuția antrenamentelor și despre tehnica modificată. Dacă am fi agregat toate probele într-un singur scor, am fi ascuns diferențele dintre ele. O bază bine construită nu produce certitudine absolută, dar permite concluzii mai modeste și mai utile.

26. Fiabilitatea datelor: testul trebuie să fie suficient de repetabil

Înainte să tratăm o diferență mică drept progres, trebuie să știm cât de mult variază rezultatul când capacitatea sportivului este relativ stabilă. Literatura despre fiabilitatea măsurătorilor în sport, inclusiv lucrările lui Hopkins și ale lui Atkinson și Nevill, subliniază eroarea aleatoare, modificarea sistematică și interpretarea diferențelor dintre teste. În strongman, aceste principii sunt transferabile, dar valorile numerice specifice trebuie investigate pentru fiecare probă și metodă. Nu putem importa un coeficient de variație din alergare și să îl declarăm proprietatea Farmer’s.

O etapă de familiarizare poate fi necesară înaintea testării. Primele încercări cu un Yoke necunoscut pot varia puternic prin învățarea tehnicii, nu doar prin schimbarea capacității. Dacă evaluăm fiabilitatea folosind tocmai aceste încercări, putem confunda efectele de învățare cu eroarea instrumentului. Un protocol ar putea utiliza sesiuni de familiarizare și apoi mai multe observații comparabile, fără a impune maximaluri repetate în condiții riscante. Numărul de testări depinde de scop și de resurse.

Într-un set ipotetic, un atlet realizează cinci curse Farmer’s standardizate, cu timpi de 20,0, 19,8, 20,1, 20,2 și 19,9 secunde. Variația pare redusă, însă nu putem separa complet eroarea cronometrului de variația biologică și de micile diferențe de execuție. Dacă următorul test este 19,9 secunde, nu putem afirma că a existat un progres cert. O serie repetată de rezultate considerabil mai rapide ar reprezenta un semnal mai puternic, dar interpretarea trebuie să țină cont de condiții.

Fiabilitatea nu garantează validitatea. Putem cronometra foarte consecvent un traseu despre care credem că are 20 metri, dar care are de fapt 18. Timpii pot fi reproductibili, însă vitezele calculate vor folosi o distanță eronată. La fel, două aparate cu masa greșit declarată pot produce rezultate consecvente și totuși inexacte. Verificarea instrumentelor, definirea reperelor și documentarea regulilor sunt necesare în paralel cu analiza statistică.

O bază poate păstra o estimare a erorii pentru fiecare protocol de testare, atunci când există date suficiente pentru a o calcula adecvat. Aceasta permite afișarea unui interval orientativ sau a unui avertisment când schimbarea este prea mică pentru o interpretare fermă. Nu trebuie să inventăm praguri universale pentru atleți sau să folosim zecimale excesive. Dacă informația despre fiabilitate lipsește, raportul trebuie să spună acest lucru explicit, nu să ascundă incertitudinea.

În practică, testele fiabile devin repere utile, nu obligații de testare permanentă. Un sportiv poate repeta un Farmer’s standardizat la intervale potrivite, păstrând celelalte sesiuni pentru dezvoltare. Dacă apare un rezultat neobișnuit, antrenorul poate verifica filmarea și condițiile, apoi decide dacă o retestare este justificată. Aceasta protejează antrenamentul de decizii impulsive bazate pe o singură cifră.

27. Copii de siguranță, migrare și continuitate pe termen lung

O bază de date de antrenament este utilă tocmai pentru că acoperă ani, nu doar câteva săptămâni. Dacă istoricul există într-un singur fișier de pe telefon, pierderea dispozitivului îl poate distruge. Copiile de rezervă regulate, păstrate în locații distincte și testate prin restaurare, reduc riscul. Nu este suficient să presupunem că sincronizarea cloud funcționează; trebuie verificat periodic dacă o copie poate fi deschisă și dacă păstrează toate tabelele. Materialele video pot necesita o strategie separată din cauza volumului.

Un plan simplu poate prevedea exporturi periodice CSV și o copie completă a fișierului original, împreună cu dicționarul de date și versiunea schemei. Dacă folosim o aplicație cu funcții de export, trebuie verificat dacă exportă și relațiile dintre sesiuni, încercări și aparate. Unele platforme oferă doar rezumate sau imagini ale graficelor, insuficiente pentru refacerea bazei. Capacitatea de a părăsi o aplicație fără pierderea datelor este o caracteristică importantă, nu un detaliu tehnic secundar.

Înaintea migrării către un alt sistem, se testează un eșantion reprezentativ: un Deadlift maximal, un Farmer’s cu splituri, un Medley incomplet și o încercare cu date lipsă. Dacă toate pot fi importate fără pierderea sensului, riscul este mai mic. Nu migrăm doar cele mai frumoase rânduri, pentru că erorile apar deseori tocmai în cazurile neobișnuite. Identificatorii și unitățile trebuie păstrate, iar numărul înregistrărilor comparat înainte și după.

Versionarea schemei ajută la evoluție. În prima versiune putem avea un câmp load_kg; ulterior descoperim necesitatea de a separa load_per_hand_kg de total_load_kg. Migrarea trebuie să documenteze cum au fost convertite datele vechi și ce înregistrări au rămas ambigue. Nu se completează retrospectiv valori inventate. Dacă unele rezultate nu pot fi transformate cu încredere, ele rămân într-o categorie istorică distinctă și se afișează cu avertisment.

Un sistem de echipă are nevoie de responsabilități clare. Cine administrează baza, cine adaugă rezultate, cine aprobă corectări și cine poate descărca întregul istoric? Drepturile de acces ar trebui acordate după necesitate, mai ales când se păstrează observații personale sau filmări. Un antrenor poate avea acces la informațiile necesare pregătirii fără să vadă automat date medicale sensibile. Controlul accesului contribuie la încrederea sportivilor în monitorizare.

Continuitatea nu înseamnă conservarea fiecărei cifre pentru totdeauna. Politicile de păstrare trebuie să reflecte scopul, acordul sportivului și regulile aplicabile. Pentru rezultate publice, arhivarea pe termen lung poate fi legitimă; pentru note sensibile de recuperare, termenul poate fi diferit. Important este să existe o decizie explicabilă, nu acumulare nelimitată. Baza bună este utilizabilă, recuperabilă și responsabil administrată.

28. Confidențialitate și etică: sportivul nu este doar un profil statistic

Datele de antrenament pot include informații obișnuite despre performanță, dar și observații despre somn, durere, medicație ori probleme de sănătate. Cele din urmă pot fi sensibile și necesită protecție suplimentară. O bază profesională colectează numai ceea ce este relevant pentru scopul declarat, stabilește cine poate accesa datele și nu presupune că acceptul pentru antrenament înseamnă accept pentru publicarea fiecărui indicator. Sportivul trebuie să știe când o filmare ori un rezultat este folosit intern și când ar urma să apară public.

Consimțământul și temeiul legal al prelucrării nu sunt întotdeauna același lucru, iar obligațiile depind de context și de legislația aplicabilă. În Uniunea Europeană, regulile GDPR impun atenție la limitarea scopului, minimizarea datelor, securitate și drepturile persoanelor. Pentru datele de sănătate pot exista condiții speciale. Acest articol prezintă principii generale, nu constituie consultanță juridică. O organizație care gestionează informații sensibile ar trebui să își verifice obligațiile concrete.

Filmările trebuie tratate distinct de cifrele sportive. Într-un cadru pot apărea alți atleți, arbitri ori spectatori, iar publicarea online introduce alte scopuri decât analiza tehnică internă. Dacă sportivul acceptă o înregistrare pentru evaluare, asta nu autorizează automat distribuirea comercială. Un sistem poate păstra linkuri către materiale cu drepturi de acces controlate, în loc să le expună tuturor utilizatorilor. Protejarea sursei nu împiedică folosirea responsabilă a informației.

Datele pot fi distorsionate dacă sportivul se teme de consecințele raportării. Dacă o notă mare de oboseală aduce critică sau ridiculizare, înregistrările pot deveni tot mai puțin sincere. Cultura echipei influențează astfel și validitatea monitorizării. Antrenorul ar trebui să prezinte datele drept instrumente de dialog și ajustare, nu drept dovezi de lipsă de caracter. Un scor nu poate înlocui o discuție despre contextul real al pregătirii.

Modelarea statistică pe seturi de date mici poate conduce la etichetarea nedreaptă a unui sportiv drept «predispus la accidentare» sau «slab recuperator». Asemenea afirmații au implicații personale și pot depăși dovezile. Un algoritm antrenat pe alți sportivi nu trebuie să emită concluzii clinice definitive. Este necesară prudență mai ales când rezultatele influențează selecția la concurs, reputația sau accesul la oportunități. Datele sunt instrumente, nu sentințe.

Etica include și dreptul de a nu transforma fiecare antrenament într-un test. Sportivul poate avea nevoie de sesiuni în care accentul este pe execuție și recuperare, nu pe colectarea tuturor indicatorilor posibili. O bază care consumă prea multă atenție poate deveni contraproductivă. Respectul pentru performanță presupune respect și pentru persoana care o realizează. Monitorizarea bună contribuie la autonomie, claritate și colaborare.

29. Implementare în treizeci de zile: de la fișier gol la jurnal utilizabil

Construirea bazei poate începe fără achiziții speciale. În prima săptămână alegem scopurile, definim cele două sau trei probe prioritare și alcătuim dicționarul cu nume, unități și reguli. Creăm foi pentru sesiuni, încercări și aparate, apoi introducem câteva înregistrări fictive pentru a verifica structura. Nu încărcăm imediat toată istoria competițională, deoarece datele vechi pot avea unități și protocoale neuniforme. Mai întâi testăm dacă modelul poate reprezenta corect un antrenament complet, o încercare ratată și o probă de deplasare.

În săptămâna a doua folosim sistemul în antrenamente reale, fără a modifica programul doar pentru colectare. După fiecare sesiune completăm datele esențiale în câteva minute: aparatul, încărcătura, repetările, distanța și rezultatul, apoi notăm eventualele condiții speciale. Dacă introducerea consumă excesiv timp, simplificăm interfața. Un sistem pe care sportivul nu îl poate folosi consecvent după un antrenament solicitant nu este practic, indiferent cât de bun pare pe hârtie.

În săptămâna a treia verificăm erorile: există coduri duplicate, unități greșite, timp lipsă la încercări complete sau rezultate înregistrate la date incorecte? Construim primele formule simple, precum viteza medie a cursei și totalul repetărilor validate. Nu creăm predicții complexe pe baza a câteva observații. Dacă dorim timpi pe segmente, folosim o filmare și verificăm dacă delimitările sunt suficient de clare. Orice indicator care nu poate fi reprodus este revizuit.

În săptămâna a patra producem primul raport. El poate răspunde la câteva întrebări: ce activități au fost efectiv realizate, ce încărcături au fost folosite, câte încercări au fost validate și ce test merită repetat în condiții standardizate? Sportivul și antrenorul discută dacă informațiile au ajutat la o decizie. Dacă anumite câmpuri sunt aproape mereu goale și nu influențează nimic, ele pot deveni opționale. Dacă lipsește un element important pentru comparație, îl adăugăm cu o definiție clară.

Înaintea extinderii către alți sportivi, documentăm responsabilitățile, drepturile de acces și procedura de corectare. Construim copii de rezervă și verificăm un export complet. Dacă baza este folosită pe termen lung, definim versiunea schemei. Nu trebuie să implementăm simultan SQL, aplicații mobile și modele de predicție. Prioritatea este un set mic de date înțeles și verificabil, care poate fi extins fără să modifice trecutul.

Acest calendar de treizeci de zile este o propunere educațională, nu un protocol validat științific și nici o condiție obligatorie. Unele echipe pot avea nevoie de mai mult timp, altele pot implementa elementele de bază într-o singură zi. Criteriul de succes este funcțional: datele importante pot fi recuperate, explicate și folosite pentru o alegere mai bună. Ritmul tehnologic trebuie adaptat sportului, nu invers.

30. Cele zece erori care distrug o bază de date promițătoare

Prima eroare este colectarea fără întrebare, care produce prea multe coloane și prea puține înregistrări complete. A doua este lipsa definițiilor, când același câmp înseamnă masă per mână într-o zi și masă totală în alta. A treia este confuzia dintre plan și execuție. A patra este amestecarea recordurilor oficiale cu estimările. Toate pot fi prevenite printr-un dicționar și prin separarea entităților. Niciuna nu necesită tehnologie costisitoare pentru rezolvare.

A cincea eroare este ignorarea aparatelor și a suprafețelor. Un timp Yoke pe un cadru reglabil nu devine automat echivalent cu alt timp la aceeași masă. A șasea este transformarea valorilor lipsă în zero, ceea ce poate altera atât mediile, cât și calculele vitezei. A șaptea constă în folosirea unor formule fără verificarea unităților, precum calcularea lucrului mecanic din masa unui Farmer’s înmulțită necritic cu distanța orizontală. O bază poate părea matematic avansată și totuși să folosească un raționament fizic greșit.

A opta eroare este păstrarea doar a rezultatelor bune. Dacă dispar încercările ratate, graficele pot supraestima stabilitatea performanței. A noua este lipsa copiilor de rezervă și a exporturilor utilizabile, care poate face imposibilă recuperarea istoricului. A zecea este interpretarea unui scor comercial ori statistic ca verdict despre sănătatea și capacitatea atletului. Un raport poate sugera întrebări, dar nu poate înlocui evaluarea individuală și nici examinarea medicală când există simptome.

Există și o problemă transversală: lipsa verificării după import. Chiar și un tabel bine construit poate fi corupt prin separatoare zecimale, date calendaristice inversate sau identificatori convertiți în numere. Fiecare etapă de migrare ar trebui să includă un eșantion verificat manual și compararea numărului de înregistrări. Nu corectăm prin presupuneri tăcute. Dacă informația originală nu mai poate fi recuperată, incertitudinea trebuie consemnată, nu ascunsă.

Un sistem prea complicat poate eșua chiar fără erori tehnice, pentru că utilizatorii încetează să îl folosească. În strongman, antrenamentele sunt lungi, probele diverse și competițiile aglomerate. Introducerea datelor trebuie să fie suficient de scurtă pentru a fi realistă. Fotografiile și filmările pot sprijini analiza, dar nu fiecare încercare necesită zeci de indicatori. Instrumentele trebuie să economisească atenția sportivului, nu să o consume integral.

Cele zece erori au un numitor comun: sistemul începe să trateze cifrele drept scop în sine. O bază bună poate fi corectată, explicată și simplificată. Ea permite recunoașterea incertitudinii fără dramatizare. Când nu știm ce aparat a fost folosit sau cum a pornit cronometrajul, răspunsul corect este că nu știm. Această onestitate este mai valoroasă decât o comparație exactă doar în aparență.

31. Concluzie: baza de date este memoria verificabilă a performanței

Construirea unei baze de date pentru antrenamentele strongman nu începe cu alegerea unei aplicații, ci cu o definiție a performanței și a întrebărilor care contează. Pentru a interpreta o ridicare avem nevoie de aparat, încărcătură, reguli și rezultat. Pentru o cursă avem nevoie de distanță, suprafață, cronometrare și statutul încercării. Pentru un ciclu de pregătire avem nevoie de context, încărcare, observații și timp. Când aceste componente sunt separate și legate corect, antrenamentul devine mai ușor de înțeles retrospectiv.

Cel mai important câștig nu este un grafic spectaculos. Este capacitatea de a recupera, peste doi ani, o încercare și de a explica exact ce s-a întâmplat, ce a fost măsurat și ce a rămas incert. Un istoric construit fără reguli poate acumula zece mii de rânduri și să nu ofere răspunsuri fiabile. O bază modestă, cu identificatori stabili, unități clare și surse păstrate, poate sprijini decizii de antrenament mult mai bune. Metoda precedă volumul datelor.

Progresul trebuie interpretat cu disciplină. Un timp mai bun la Farmer’s sau o greutate mai mare la Log pot fi semnale pozitive, dar numai în condiții suficient de comparabile. Acolo unde aparatele, traseele ori tehnica diferă, contextualizăm rezultatul. Nu folosim tonajul ca echivalent universal al stresului și nu tratăm estimările drept recorduri oficiale. Un sistem matur lasă loc pentru informațiile necunoscute și pentru modificări documentate, fără să încerce să fabrice certitudine.

Datele au și o dimensiune umană. Sportivul nu este suma scorurilor de recuperare, iar antrenorul nu trebuie înlocuit de un algoritm. Auto-raportările pot fi utile când există încredere, filmările pot îmbunătăți observația tehnică și tabelele pot arăta tendințe, însă fiecare își are limitele. O bază responsabilă protejează datele personale și permite luarea deciziilor împreună cu atletul. Performanța durabilă cere atât rigoare, cât și respect pentru persoană.

În episodul următor vom analiza relația dintre 1RM și probele dinamice, folosind tocmai arhitectura descrisă aici. Vom putea compara recordurile maximale cu timpii la Yoke și Farmer’s, discutând corelațiile, variabilele de confuzie și limitele predicției. Fără date bine definite, această analiză ar fi un joc de presupuneri; cu un jurnal coerent, putem formula ipoteze care merită testate. Așa începe cu adevărat Strongman Data Lab.

Un strongman poate ține minte recordul unei zile și emoția ultimei repetări; o bază de date bine construită păstrează și condițiile, încercările ratate, deciziile tactice și progresul care nu apare într-un videoclip viral. Nu îi ia sportului caracterul spectaculos, ci îi adaugă memorie și posibilitatea de verificare. În loc să întrebăm doar «cât ai ridicat?», putem întreba «în ce condiții, cu ce metodă și ce am învățat pentru următoarea probă?». Acesta este primul pas spre un sistem de monitorizare cu adevărat util.

Bibliografie științifică selectivă

[1] Hindle, B. R., Lorimer, A., Winwood, P., & Keogh, J. W. L. (2019). The Biomechanics and Applications of Strongman Exercises: A Systematic Review. Sports Medicine - Open, 5, 49. https://doi.org/10.1186/s40798-019-0222-z

[2] Hindle, B. R., Lorimer, A., Winwood, P., Brimm, D., & Keogh, J. W. L. (2021). The Biomechanical Characteristics of the Strongman Yoke Walk. Frontiers in Sports and Active Living, 3, 670297. https://doi.org/10.3389/fspor.2021.670297

[3] Winwood, P. W., Cronin, J. B., Brown, S. R., & Keogh, J. W. L. (2014). A Biomechanical Analysis of the Farmers Walk, and Comparison with the Deadlift and Unloaded Walk. International Journal of Sports Science & Coaching, 9(5), 1127–1143. https://doi.org/10.1260/1747-9541.9.5.1127

[4] McGill, S. M., McDermott, A., & Fenwick, C. M. J. (2009). Comparison of Different Strongman Events: Trunk Muscle Activation and Lumbar Spine Motion, Load, and Stiffness. Journal of Strength and Conditioning Research, 23(4), 1148–1161. https://doi.org/10.1519/JSC.0b013e318198f8f7

[5] Hindle, B. R., Lorimer, A., Winwood, P., & Keogh, J. W. L. (2020). A Systematic Review of the Biomechanical Research Methods Used in Strongman Studies. Sports Biomechanics, 19(1), 90–119. https://doi.org/10.1080/14763141.2019.1598480

[6] Hopkins, W. G. (2000). Measures of Reliability in Sports Medicine and Science. Sports Medicine, 30(1), 1–15. https://doi.org/10.2165/00007256-200030010-00001

[7] Atkinson, G., & Nevill, A. M. (1998). Statistical Methods for Assessing Measurement Error (Reliability) in Variables Relevant to Sports Medicine. Sports Medicine, 26(4), 217–238. https://doi.org/10.2165/00007256-199826040-00002

[8] Foster, C., Florhaug, J. A., Franklin, J., et al. (2001). A New Approach to Monitoring Exercise Training. Journal of Strength and Conditioning Research, 15(1), 109–115. PubMed: https://pubmed.ncbi.nlm.nih.gov/11708692/

[9] Saw, A. E., Main, L. C., & Gastin, P. B. (2016). Monitoring the Athlete Training Response: Subjective Self-Reported Measures Trump Commonly Used Objective Measures: A Systematic Review. British Journal of Sports Medicine, 50(5), 281–291. https://doi.org/10.1136/bjsports-2015-094758

[10] Soligard, T., Schwellnus, M., Alonso, J. M., et al. (2016). How Much Is Too Much? (Part 1) International Olympic Committee Consensus Statement on Load in Sport and Risk of Injury. British Journal of Sports Medicine, 50(17), 1030–1041. https://doi.org/10.1136/bjsports-2016-096581

[11] Wilkinson, M. D., Dumontier, M., Aalbersberg, I. J. J., et al. (2016). The FAIR Guiding Principles for Scientific Data Management and Stewardship. Scientific Data, 3, 160018. https://doi.org/10.1038/sdata.2016.18

[12] Bland, J. M., & Altman, D. G. (1986). Statistical Methods for Assessing Agreement Between Two Methods of Clinical Measurement. The Lancet, 327(8476), 307–310. https://doi.org/10.1016/S0140-6736(86)90837-8

[13] Koo, T. K., & Li, M. Y. (2016). A Guideline of Selecting and Reporting Intraclass Correlation Coefficients for Reliability Research. Journal of Chiropractic Medicine, 15(2), 155–163. https://doi.org/10.1016/j.jcm.2016.02.012

[14] European Parliament and Council of the European Union. (2016). Regulation (EU) 2016/679 (General Data Protection Regulation). Official Journal of the European Union, L119, 1–88. https://eur-lex.europa.eu/eli/reg/2016/679/oj