
Un desktop environment de linux este o colectie de aplicatii ce compun o interfata grafica (GUI) pentru a interactiona cu sistemul de operare.
Desi majoritatea software-ului pe care il intalnim zi de zi este scris sub forma de monolit, mai ales in cazul unui sistem de operare sau a unui kernel, comunitatea linux a venit cu un set de aplicatii ca...

Browser fingerprinting este o metoda de a te identifica pe tine ca utilizator si poate colectiona date despre tine. In acest articol o sa discutam despre browser fingerprinting si cum functioneaza, dar mai ales o sa discutam de modul in care te poti proteja.
La prima vedere
Ai auzit acest termen? Daca nu ai auzit de el este ok, sunt foarte mu...

Design pattern-ul Data Mapper este un design folosit pentru a separa in 2 niveluri datele si logica de business a aplicatiei. Acest pattern este des folosit in sistemele de tip object relational mapping (ORM).
In acest pattern, datele sunt transferate intre obiecte in aplicatie, tinandu-se pe obiecte separate datele de logica de business (vezi a...

Design pattern-ul Active Record este un design pattern des intalnit in programarea orientata pe obiecte pentru crearea, citirea, modificarea si stergerea datelor din baza de date.
In acest pattern, fiecare inregistrare din baza de date este reprezentata de un obiect, iar metodele de pe acest obiect sunt folosite la executarea actiunilor de pe in...

Acest deisgn pattern, optimistic offline lock este o tehnica de a manageui acces-ul concurent la datele comune intr-un sistem distribuit.
Acest pattern se bazeaza pe presupunerea ca conflictele intre update-uri vor fi rare, iar majoritatea update-urilor pot fi rezolvate fara conflicte.
Ideea din spatele acestui pattern este aceea ca fiecare cli...

Acest pattern, association table mapping este un mod de a crea o relatie de tip many-to-many intre entitatile unei baze de date. Se foloseste in momentul in care ai 2 entitati intre care trebuie sa existe o relatie de tip many-to-many. In loc sa adaugam mai multe coloane pentru cele 2 entitati, facem o tabela noua care sa se ocupe de aceasta asocie...

Design pattern-ul Serialized LOB (Large Object) este un pattern menit pentru stocarea obiectelor binare mari (BLOB) in baza de date. In loc sa salvam datele BLOB direct in baza de date, acest pattern ne indeamna sa stocam aceste informatii intr-un sistem de storage diferit, de exemplu am putea sa le salvam pe disk sau in cloud, apoi in baza de date...

Atat timp cat scriem cod in mod profesional, metricile sunt foarte importante pentru a determina daca scriem cod de calitate ce este usor de testat, inteles si intretinut pe termen lung. Cum fiecare dezvoltator are stilul lui de a scrie devine important sa setam un standard dupa care sa masuram daca acel cod este sau nu de calitate. Doua dintre cel...

Exista mai multe comenzi periculoase pe care un utilizator le poate scrie in terminal si sa ii provoace un crash sau poate chiar mai rau, sa strice lucrurile.
Acestea fiind zise, cred ca este o idee buna sa povestesc despre anumite comenzi periculoase astfel incat sa le cunoasteti si sa nu le rulati.
Una dintre cele mai cunoscute comenzi peri...

Tool-urile de build au ajuns sa fie o parte foarte importanta a dezvoltarii web, unul dintre motive fiind complixitatea din ce in ce mai mare a aplicatiilor JavaScript. Bundler-urile ne permit sa "impachetam", compilam si sa organizam asset-urile si librariile necesare unei aplicatii web.
In acest articol ne vom uita la webpack, un bun...

Internetul din ziua de azi este complet altul fata de internetul din 1990, cand AOL, MSN, GeoCities, Hotmail si multe alte servicii de genul domniau piata. Dar, daca ne uitam mai atent, sub design-ul mdoern, putem observa ca in multe cazuri tehnologia din spate a ramas aproape aceasi. O astfel de tehnolgie care a ramas la fel este XMPP, protocolul ...

Enigma sau faimoasa masina de criptat mesaje folosita de Germania in timpul celui de al II-lea razboi mondial. Aceasta masina pune la dispozitie milioane si milioane de moduri de a cripta un mesaj, facandul incredibil de dificil de decriptat, ba chiar, pentru o perioada de de timp parea imposibil de spart.
Alan Turing, alaturi de alti cercetator...

In acest articol am sa va arat cum sa va faceti profilul de github sa arate super bine.
Pasul 1:
Trebuie sa faci un repository nou cu acelasi nume ca al contului.
De exemplu, asta este profilul meu https://github.com/DoarMihai si trebuie sa fac un repository cu numele DoarMihai.
Acest nou repository trebuie sa fie public si sa contina un READ...

Cifrul de tip Cezar este una dintre primele si cele mai simple metode de cifrare. Este un cifru de substitutie, adica fiecare litera unu text dat este inlocuita cu o litare aflata la un anumit numar de pozitii de ea in alfabet. De exemplu, daca am lua ca exemplu numarul de pozitii 1, litera A va fi inlocuita de litera B, litera B va fi inlocuita de...

Daca acum incepi sa inveti despre retelistica sau deja te-ai jucat putin in acest domeniu sigur ai intalnit acesti termeni, TC si UDP.
TCP vine de la Transmission Control Protocol, iar UDP care vinede la User Datagram Protocol sunt parte din suita de protocoale Internet Protocol. TCP si UDP sunt 2 metode diferite de a transmite informatii in ret...