Python
Idiomuri, trucurile din biblioteca standard pe care le tot uit și ce e nou în limbaj.
-
Lecția 1
Python in 2026: ce s-a schimbat, ce e stabil, ce urmeaza
Unde se afla Python chiar acum: caracteristicile limbajului, mutarea ecosistemului catre uv, JIT, free-threading si la ce conteaza cu adevarat sa te uiti ca dezvoltator.
-
Lecția 2
Type hints nu mai sunt optionale
Cum sa scrii Python modern cu type hints: pentru tine, pentru ajutorul din IDE si pentru ca orice code review le asteapta acum.
-
Lecția 3
f-strings, walrus, match: noile idiomuri de flow-control
Sintaxa Python moderna care face codul mai clar decat alternativele: cand sa folosesti fiecare si cazurile unde modul vechi e inca mai bun.
-
Lecția 4
Iterators, generators, comprehensions: cum le desparti
Trei concepte inrudite pe care majoritatea celor care scriu Python le amesteca. Diferentele conteaza cand conteaza memoria si cand conteaza laziness-ul.
-
Lecția 5
Decorators, demistificati
Functii care invelesc functii. Pattern-urile pe care le intalnesti zilnic, capcanele de stiut si cand sa-ti scrii propriul decorator.
-
Lecția 6
Context managers si with-statement, dincolo de deschiderea fisierelor
Protocolul din spatele lui `with`, trei moduri de a-ti scrie propriul context manager si cand context managers bat try/finally.
-
Lecția 7
pathlib: caile din filesystem facute cum trebuie
De ce os.path e mostenire, ce iti dau obiectele Path si setul mic de metode care acopera 95% din munca reala.
-
Lecția 8
datetime + zoneinfo: partea pe care toata lumea o greseste
Naive vs aware datetimes, de ce fusurile orare se rup in productie si solutia din biblioteca standard care a sosit in sfarsit in 3.9.
-
Lecția 9
collections + dataclass: structurile mici de date de care ai nevoie
Counter, defaultdict, deque, namedtuple si dataclass-ul care le inlocuieste pe toate in cele mai multe cazuri.
-
Lecția 10
itertools + functools: trusa de unelte de ordin superior
Cele doua module din stdlib care transforma buclele in one-liners si one-liner-ele in ceva citibil. Plus cand reduce e in regula, in pofida zvonurilor.
-
Lecția 11
logging: log-uri structurate, niveluri si pattern-urile care merg in productie
De ce print() nu scaleaza, problema de reputatie a modulului logging si configurarea care il face cu adevarat placut de folosit.
-
Lecția 12
Construirea de CLI-uri: argparse, click, typer
Cele trei biblioteci CLI pe care le vei intalni, cand sa o alegi pe fiecare si pattern-ul typer care castiga acum.
-
Lecția 13
Mediile virtuale, explicate pe înțelesul oamenilor
De ce fiecare proiect Python are nevoie de propriul sandbox, ce fac de fapt venv/poetry/uv și cum oprești proiectele să se strice unul pe celălalt.
-
Lecția 14
pyproject.toml: singurul fisier de configurare care le inlocuieste pe toate
De ce setup.py e mort, ce face fiecare sectiune din pyproject.toml si build backend-urile din spate.
-
Lecția 15
uv: schimbarea de ecosistem din 2026
De ce uv a inlocuit pip+venv+pyenv+poetry pentru multa lume, ce face diferit si fluxul de lucru.
-
Lecția 16
Layout-ul proiectului: src/ vs flat, unde merg testele, unde traiesc scripturile
Deciziile de layout care afecteaza importurile, testarea si packaging-ul si conventia care a castigat in 2026.
-
Lecția 17
Managementul dependențelor: pip, poetry, uv - cum o alegi pe a ta
Cele patru opțiuni reale, compromisurile și de ce majoritatea proiectelor noi din 2026 pornesc cu uv.
-
Lecția 18
Build și publicare: PyPI, magazine de artefacte interne, semver
Cum transformi proiectul într-un wheel, îl împingi pe PyPI sau pe indexul companiei tale și eviți capcanele de versionare.
-
Lecția 19
pytest de la zero la fixtures
De ce pytest a învins unittest, pattern-urile de bază pentru teste și sistemul de fixtures care face setup-ul de teste suportabil.
-
Lecția 20
Mocks, parametrize, conftest.py: trusa de testare
Trei pattern-uri pytest care transforma o situatie de tipul 'asta e imposibil de testat' intr-un paragraf de cod.
-
Lecția 21
mypy / pyright + ruff: stiva de analiza statica
Type checking pentru a prinde bug-uri, ruff pentru formatare si linting si workflow-ul care le ruleaza pe ambele rapid.
-
Lecția 23
Dezvoltare Python asistata de AI: workflow-ul care merge
Unde Copilot/Claude/Cursor ajuta cu adevarat, unde fac rau si pattern-urile de prompt care produc cod pe care il poti livra.
-
Lecția 24
Property-based testing cu hypothesis
Generează automat sute de cazuri de test. Tiparele care prind bug-uri pe care testele unitare le ratează.
-
Lecția 25
Pandas în 2026: ce să știi, ce să sari, ascensiunea Polars
Unde stă pandas în ecosistemul de date din 2026, backend-ul PyArrow, și când câștigă cu adevărat Polars.
-
Lecția 26
Series și DataFrame: modelul de date
Ce sunt de fapt structurile de date pandas: un array indexat, și un dicționar de array-uri indexate.
-
Lecția 27
Citirea datelor: CSV, Parquet, Excel, JSON, SQL
Familia pd.read_*, capcanele fiecarui format si de ce Parquet e formatul preferat in 2026.
-
Lecția 28
Selectie: .loc, .iloc, indexare booleana
Cele trei moduri de a felia un DataFrame, diferentele dintre ele si SettingWithCopyWarning de care se izbeste toata lumea.
-
Lecția 29
Agregare: groupBy, agg, transform, alegerea potrivita
GroupBy la scara, agregari denumite, diferenta dintre agg/apply/transform si pattern-urile pe care le vei folosi saptamanal.
-
Lecția 30
Joins: merge, concat, tiparele care nu te iau prin surprindere
merge pentru imbinarea tabelelor, concat pentru stivuirea lor si comportamentul de aliniere pe index care a salvat sau a ruinat multe analize.
-
Lecția 31
Reshape: pivot, melt, stack, unstack
Wide-to-long, long-to-wide si cand coloanele MultiIndex sunt o functionalitate, nu un bug.
-
Lecția 32
Time series: resample, rolling, capcanele de date-time
DatetimeIndex, conversia de frecventa, rolling windows si bug-urile de timezone care musca productia.
-
Lecția 33
Tipuri categorical si string: castiguri de memorie si viteza
Cand conversia unei coloane in categorical sau string[pyarrow] face diferenta intre un job care ruleaza si unul care ramane fara memorie.
-
Lecția 34
Cand pandas e lent: chunks, dtypes si unde sa cauti
Cele mai importante cinci parghii de performanta in pandas, bucla de diagnostic si cand 'rescrie in Polars' este raspunsul corect.
-
Lecția 35
Polars: alternativa moderna
Ce face Polars altfel, API-ul lazy care il face rapid si turul de sintaxa pentru utilizatorii pandas.
-
Lecția 36
Proiect de analiza de date cap-coada
Iei un dataset real, de la CSV brut la un raspuns curat, intr-un singur script. Pattern-urile care apar de fiecare data.
-
Lecția 37
Design ETL: extract, transform, load
Pattern-ul care defineste jumatate din munca de data engineering si variantele moderne (ELT, medallion, lakehouse) pe care le vei intalni.
-
Lecția 38
Construirea unui pipeline de ingestion: de la fisiere la baza de date
Un pipeline complet fisier-spre-Postgres in Python, cu pattern-urile care supravietuiesc contactului cu realitatea.
-
Lecția 39
Lucrul cu API-uri: requests, retries, rate limits
Trusa de unelte HTTP din Python, pattern-urile de retry care nu inrautatesc lucrurile si tratarea rate limit-urilor care te tine binevenit.
-
Lecția 40
asyncio: cand async I/O chiar merita
Ce iti aduce asyncio, pattern-urile care functioneaza si capcana amestecarii codului sync cu async.
-
Lecția 41
Orchestrare: Airflow, Prefect, Dagster - peisajul din 2026
Cand cron nu mai e suficient, ce face efectiv un orchestrator si cei trei contestatari pentru pipeline-urile tale de date.
-
Lecția 42
Proiect de data engineering: construieste un pipeline real
De la sursa la destinatie, cu monitorizare, idempotenta si planificare. Lectiile Modulului 7 facute tangibile.
-
Lecția 43
NumPy: array-uri, broadcasting, fundatia Python-ului stiintific
Ce este un ndarray, de ce broadcasting-ul schimba felul in care scrii bucle si setul mic de functii care acopera majoritatea cazurilor.
-
Lecția 44
Plotting: matplotlib, seaborn, plotly - cum o alegi pe a ta
Trei biblioteci de plotting, trei filozofii si la care apelezi in functie de audienta.
-
Lecția 45
SciPy: trusa de scule pe care majoritatea o uita
Statistica, optimizare, prelucrare de semnal, matrice rare: biblioteca standard a Python-ului stiintific.
-
Lecția 46
Funcționalitățile Python pe care le-am învățat prea târziu
Match statements, operatorul walrus, debugging cu f-string-uri, dataclasses și alte funcționalități Python care m-ar fi scutit de ore întregi dacă le-aș fi știut mai devreme.
-
Lecția 47
Jupyter, notebook-uri si momentul in care le parasesti
De ce notebook-urile sunt seducatoare, unde stralucesc si momentul in care ar trebui sa te opresti si sa scrii un script real.
-
Lecția 48
Proiect numeric: o analiza reala
Ia un dataset public si ruleaza o analiza numerica completa: statistici descriptive, ajustari, teste de ipoteza, grafice.
-
Lecția 49
scikit-learn: turul bibliotecii standard de ML
Pattern-ul fit/predict care sustine totul, categoriile de modele si pipeline-urile care fac codul reproductibil.
-
Lecția 50
Feature engineering: partea care conteaza cel mai mult
Transformarile care fac din date brute combustibil pentru model si cele care scurg in tacere informatii din viitor.
-
Lecția 51
Modele tree-based: random forest, XGBoost, LightGBM
De ce trees domina ML-ul tabular, diferentele dintre cele trei mari biblioteci si hyperparametrii care conteaza.
-
Lecția 52
Modele liniare si regularizate: cand simplu castiga
De ce modelele liniare sunt inca raspunsul corect surprinzator de des si trucurile de regularizare care le fac de productie.
-
Lecția 53
Tuning de hiperparametri: grid, random, bayesian, optuna
Cele patru strategii de cautare, cand are sens fiecare si de ce optuna e default-ul in 2026.
-
Lecția 54
Proiect ML: o problema de clasificare, end to end
De la CSV brut la model deployat: lectiile Modulului 9 facute palpabile.
-
Lecția 55
Retele neuronale pe intelesul tuturor
Ce este de fapt o retea neuronala, de ce functioneaza backpropagation si unde deep learning bate cu adevarat ML-ul clasic.
-
Lecția 56
PyTorch: standardul modern
Tensori, autograd, modulul nn si feel-ul Python care a facut PyTorch sa castige.
-
Lecția 57
Training loop-ul, in cod
Cele cinci linii care transforma o retea initializata aleatoriu intr-un model antrenat si contabilitatea care le face de calitate productie.
-
Lecția 58
Modele pre-antrenate + transfer learning + Hugging Face
Calea realista de la zero la un model deep learning functional in 2026: pleci de la unul pre-antrenat si il fine-tunezi pe datele tale.
-
Lecția 59
AI vs ML in 2026: cand apelezi un LLM, cand antrenezi
Decizia care nu exista acum cinci ani: folosesti un model gazduit, faci fine-tune unuia open sau antrenezi propriul model?
-
Lecția 60
Capstone: ce stii acum, incotro mergi mai departe
O privire inapoi la cele 60 de lectii, una inainte la incotro merge Python si resursele care te duc de la nivel intermediar la expert.