Pogled na tehnologiju posljednje decenije

Bilješka. transl.: Ovaj članak, koji je postao hit na Medijumu, predstavlja pregled ključnih (2010-2019) promjena u svijetu programskih jezika i povezanog tehnološkog ekosistema (sa posebnim fokusom na Docker i Kubernetes). Njena originalna autorica je Cindy Sridharan, koja se specijalizirala za programerske alate i distribuirane sisteme - posebno, napisala je knjigu "Distributed Systems Observability" - i prilično je popularna u internetskom prostoru među IT stručnjacima, posebno zainteresiranim za temu native oblaka.

Pogled na tehnologiju posljednje decenije

Kako se 2019. bliži kraju, želio sam podijeliti svoja razmišljanja o nekim od najvažnijih tehnoloških napretka i inovacija u protekloj deceniji. Pored toga, pokušaću da zavirim malo u budućnost i iznesem glavne probleme i mogućnosti naredne decenije.

Želim da bude jasno da u ovom članku ne pokrivam promene u oblastima kao što je nauka o podacima (nauka o podacima), umjetna inteligencija, frontend inženjering itd., jer ja lično nemam dovoljno iskustva u njima.

Tipizacija uzvraća udarac

Jedan od najpozitivnijih trendova 2010-ih bio je oživljavanje statički kucanih jezika. Međutim, takvi jezici nikada nisu nestali (C++ i Java su danas traženi; dominirali su prije deset godina), ali su dinamički kucani jezici (dinamika) doživjeli značajan porast popularnosti nakon pojave Ruby on Rails pokreta 2005. . Ovaj rast je dostigao vrhunac 2009. godine sa otvorenim kodom Node.js, koji je učinio Javascript-on-the-server stvarnošću.

Vremenom su dinamički jezici izgubili deo svoje privlačnosti u oblasti kreiranja serverskog softvera. Jezik Go, populariziran tokom revolucije kontejnera, činio se prikladnijim za kreiranje servera visokih performansi, resursno efikasnih s paralelnom obradom (s kojom slažem se sam kreator Node.js).

Rust, uveden 2010. godine, uključivao je napredak u teorija tipova u pokušaju da postane siguran i otkucan jezik. U prvoj polovini decenije, industrija Rust je prihvatila prilično mlako, ali je njegova popularnost značajno porasla u drugoj polovini. Značajni slučajevi upotrebe Rusta uključuju njegovu upotrebu za Magic Pocket na Dropboxu, Firecracker by AWS (pričali smo o tome u ovaj članak - cca. prevod), rani WebAssembly kompajler Lucet od Fastlyja (sada dijela bytecodealliance) i drugih. U situaciji kada Microsoft razmatra prepisivanje nekih dijelova operativnog sistema Windows Rust, sigurno je reći da jezik ima svijetlu budućnost u 2020-ima.

Čak su i dinamički jezici dobili nove funkcije kao što su opcioni tipovi (opcioni tipovi). Prvo su implementirani u TypeScript, jeziku koji vam omogućava da kreirate otkucani kod i prevedete ga u JavaScript. PHP, Ruby i Python imaju svoje opcione sisteme kucanja (mypy, piskaralo), koji se uspješno koriste u proizvodnja.

Vraćanje SQL-a u NoSQL

NoSQL je još jedna tehnologija koja je bila mnogo popularnija na početku decenije nego na kraju. Mislim da za to postoje dva razloga.

Prvo, pokazalo se da je NoSQL model, sa nedostatkom sheme, transakcija i slabijim garancijama konzistentnosti, teži za implementaciju od SQL modela. IN blog post s naslovom "Zašto biste trebali preferirati jaku konzistenciju kad god je to moguće" (Zašto biste trebali odabrati jaku konzistenciju, kad god je to moguće) Google piše:

Jedna od stvari koje smo naučili u Googleu je da je kod aplikacije jednostavniji, a vrijeme razvoja kraće kada se inženjeri mogu osloniti na postojeću pohranu za rukovanje složenim transakcijama i održavanje podataka u redu. Da citiramo originalnu Spanner dokumentaciju, „Vjerujemo da je za programere bolje da se bave problemima performansi aplikacija zbog zloupotrebe transakcija kako se pojavljuju uska grla, umjesto da stalno imaju na umu odsustvo transakcija.“

Drugi razlog je zbog porasta distribuiranih SQL baza podataka (kao npr Cloud Spanner и AWS Aurora) u javnom oblaku, kao i alternative otvorenog koda poput CockroachDB (govorimo i o njoj napisao je — pribl. prevod), koji rješavaju mnoge tehničke probleme zbog kojih se tradicionalne SQL baze podataka „nemasiraju“. Čak je i MongoDB, nekada oličenje pokreta NoSQL, sada ponude distribuirane transakcije.

Za situacije koje zahtijevaju atomsko čitanje i pisanje u više dokumenata (u jednoj ili više kolekcija), MongoDB podržava transakcije s više dokumenata. U slučaju distribuiranih transakcija, transakcije se mogu koristiti u više operacija, kolekcija, baza podataka, dokumenata i dijelova.

Totalni streaming

Apač Kafka je bez sumnje jedan od najvažnijih izuma protekle decenije. Njegov izvorni kod otvoren je u januaru 2011. i tokom godina, Kafka je revolucionirao način na koji preduzeća rade s podacima. Kafka je korišten u svakoj kompaniji za koju sam radio, od startupa do velikih korporacija. Garancije i slučajevi upotrebe koje pruža (pub-sub, streamovi, arhitekture vođene događajima) koriste se u raznim zadacima, od skladištenja podataka do praćenja i analize strujanja, traženih u mnogim područjima kao što su finansije, zdravstvo, javni sektor, maloprodaja i sl.

Kontinuirana integracija (i u manjoj mjeri kontinuirana implementacija)

Kontinuirana integracija se nije pojavila u posljednjih 10 godina, već u protekloj deceniji se proširio u tolikoj meri, koji je postao dio standardnog toka posla (pokreni testove za sve zahtjeve za povlačenjem). Uspostavljanje GitHub-a kao platforme za razvoj i skladištenje koda i, što je još važnije, razvoj toka rada zasnovanog na GitHub tok znači da izvođenje testova prije prihvaćanja zahtjeva za povlačenjem za master je jedini tok rada u razvoju, poznat inženjerima koji su započeli karijeru u posljednjih deset godina.

Kontinuirana implementacija (primjena svakog urezivanja kada i kada dođe do master) nije tako raširena kao kontinuirana integracija. Međutim, uz mnoštvo različitih API-ja u oblaku za implementaciju, rastuću popularnost platformi kao što je Kubernetes (koje pružaju standardizirani API za implementaciju) i pojavu multiplatformskih alata za više oblaka kao što je Spinnaker (izgrađen na vrhu onih standardiziranih API-ji), procesi implementacije su postali automatiziraniji, pojednostavljeni i, općenito, sigurniji.

Kontejneri

Kontejneri su možda najpopularnija tehnologija 2010-ih, o kojoj se najviše raspravlja, oglašavana i neshvaćena tehnologija. S druge strane, to je jedna od najvažnijih inovacija prethodne decenije. Dio razloga za svu ovu kakofoniju leži u mješovitim signalima koje smo primali gotovo svuda. Sada kada je hype malo utihnuo, neke stvari su došle u oštriji fokus.

Kontejneri su postali popularni ne zato što su najbolji način za pokretanje aplikacije koja zadovoljava potrebe globalne zajednice programera. Kontejneri su postali popularni jer se uspješno uklapaju u marketinški zahtjev za određeni alat koji rješava potpuno drugačiji problem. Ispostavilo se da je Docker bio fantastično razvojni alat koji rješava hitno pitanje kompatibilnosti („radi na mojoj mašini“).

Tačnije, napravljena je revolucija Docker slika, jer je riješio problem pariteta između okruženja i omogućio istinsku prenosivost ne samo datoteke aplikacije, već i svih njenih softverskih i operativnih ovisnosti. Činjenica da je ovaj alat na neki način podstakao popularnost „kontejnera“, koji su u suštini detalj implementacije na veoma niskom nivou, za mene ostaje možda glavna misterija protekle decenije.

Serverless

Kladim se da je pojava računarstva "bez servera" čak važnija od kontejnera jer zaista čini san o računanju na zahtjev stvarnošću. (na zahtjev). U proteklih pet godina vidio sam kako se pristup bez servera postepeno širio dodavanjem podrške za nove jezike i vremena izvođenja. Pojava proizvoda kao što su Azure Durable Functions čini se pravim korakom ka implementaciji funkcija stanja stanja (istovremeno odlučujući neki problemivezano za FaaS ograničenja). Sa zanimanjem ću pratiti kako će se ova nova paradigma razvijati u narednim godinama.

Automatizacija

Možda najveći korisnik ovog trenda je zajednica operativnog inženjeringa, jer je omogućila da koncepti poput infrastrukture kao koda (IaC) postanu stvarnost. Pored toga, strast za automatizacijom poklopila se sa usponom „SRE kulture“, koja ima za cilj da zauzme pristup operacijama koji je više softverski.

Univerzalna API-fikacija

Još jedna zanimljiva karakteristika protekle decenije bila je API-fikacija različitih razvojnih zadataka. Dobri, fleksibilni API-ji omogućavaju programeru da kreira inovativne tokove rada i alate, koji zauzvrat pomažu u održavanju i poboljšavaju korisničko iskustvo.

Osim toga, API-fikacija je prvi korak ka SaaS-fikaciji neke funkcionalnosti ili alata. Ovaj trend se poklopio i sa porastom popularnosti mikroservisa: SaaS je postao samo još jedan servis kojem se može pristupiti preko API-ja. Sada postoji mnogo SaaS i FOSS alata dostupnih u područjima kao što su praćenje, plaćanja, balansiranje opterećenja, kontinuirana integracija, upozorenja, prebacivanje funkcija (označavanje funkcija), CDN, saobraćajni inženjering (npr. DNS) itd., koji su procvjetali u protekloj deceniji.

opservabilnost

Vrijedi napomenuti da danas imamo pristup mnogo napredniji alati za praćenje i dijagnosticiranje ponašanja aplikacija nego ikada prije. Prometejov sistem za praćenje, koji je dobio status otvorenog koda 2015. godine, možda se može nazvati najbolji sistem praćenja od onih sa kojima sam radio. Nije savršeno, ali značajan broj stvari je implementiran na tačno pravi način (na primjer, podrška za mjerenja [dimenzionalnost] u slučaju metrike).

Distribuirano praćenje bila je još jedna tehnologija koja je ušla u mainstream 2010-ih, zahvaljujući inicijativama kao što je OpenTracing (i njegov nasljednik OpenTelemetry). Iako je praćenje još uvijek prilično teško primijeniti, neki od najnovijih događaja daju nadu da ćemo otkriti njegov pravi potencijal 2020-ih. (Napomena: Pročitajte i na našem blogu prevod članka “Distribuirano praćenje: sve smo pogriješili"od istog autora.)

Pogled u budućnost

Nažalost, postoje mnoge bolne tačke koje čekaju rješenje u narednoj deceniji. Evo mojih misli o njima i nekih potencijalnih ideja kako da ih se riješim.

Rješavanje problema Mooreovog zakona

Kraj Dennardovog zakona o skaliranju i zaostajanje za Mooreovim zakonom zahtijevaju nove inovacije. John Hennessy u njegovo predavanje objašnjava zašto su problem zavisnici (specifično za domenu) arhitekture poput TPU-a mogu biti jedno od rješenja za problem zaostajanja za Mooreovim zakonom. Setovi alata kao MLIR od Googlea se već čini kao dobar korak naprijed u ovom pravcu:

Kompajlatori moraju podržavati nove aplikacije, biti lako prenešeni na novi hardver, povezati više slojeva apstrakcije u rasponu od dinamičkih, upravljanih jezika do vektorskih akceleratora i softverski kontroliranih uređaja za pohranu, istovremeno osiguravajući prekidače visokog nivoa za automatsko podešavanje, pružajući samo- u funkcionalnosti -vreme, dijagnostika i distribucija informacija za otklanjanje grešaka o funkcionisanju i performansama sistema kroz čitav stog, dok u većini slučajeva pruža performanse koje su prilično bliske ručnom pisanom asembleru. Namjeravamo podijeliti našu viziju, napredak i planove za razvoj i javnu dostupnost takve kompilacijske infrastrukture.

CI / CD

Dok je uspon CI postao jedan od najvećih trendova 2010-ih, Jenkins je i dalje zlatni standard za CI.

Pogled na tehnologiju posljednje decenije

Ovom prostoru su prijeko potrebne inovacije u sljedećim oblastima:

  • korisničko sučelje (DSL za specifikacije testa kodiranja);
  • detalji implementacije koji će ga učiniti zaista skalabilnim i brzim;
  • integracija sa različitim okruženjima (stage, prod, itd.) za implementaciju naprednijih oblika testiranja;
  • kontinuirano testiranje i implementaciju.

Alati za programere

Kao industrija, počeli smo stvarati sve složeniji i impresivniji softver. Međutim, kada je riječ o našim vlastitim alatima, situacija bi mogla biti mnogo bolja.

Kolaborativno i udaljeno (preko ssh) uređivanje steklo je određenu popularnost, ali nikada nije postalo novi standardni način razvoja. Ako i vi, poput mene, odbacite samu ideju nužnost stalna konekcija na internet samo da biste mogli programirati, onda vam rad preko ssh-a na udaljenoj mašini vjerovatno neće odgovarati.

Lokalna razvojna okruženja, posebno za inženjere koji rade na velikim servisno orijentisanim arhitekturama, i dalje su izazov. Neki projekti pokušavaju ovo riješiti, a mene bi zanimalo kako bi izgledao najergonomičniji UX za dani slučaj upotrebe.

Također bi bilo interesantno proširiti koncept "prijenosnog okruženja" na druga područja razvoja kao što je reprodukcija grešaka (ili flaky testovi) koji se javljaju pod određenim uslovima ili postavkama.

Takođe bih voleo da vidim više inovacija u oblastima kao što su semantičko i kontekstualno osetljivo pretraživanje koda, alati za povezivanje incidenata proizvodnje sa određenim delovima kodne baze, itd.

Računarstvo (budućnost PaaS-a)

Nakon hype oko kontejnera i servera 2010-ih, raspon rješenja u javnom oblaku značajno se proširio u posljednjih nekoliko godina.

Pogled na tehnologiju posljednje decenije

Ovo otvara nekoliko zanimljivih pitanja. Prije svega, lista dostupnih opcija u javnom oblaku stalno raste. Provajderi usluga u oblaku imaju osoblje i resurse da lako budu u toku s najnovijim razvojem u svijetu otvorenog koda i izdaju proizvode kao što su "podovi bez servera" (sumnjam jednostavno tako što će svoje vlastito FaaS runtimes OCI uskladiti) ili druge slične otmjene stvari.

Može se samo zavidjeti onima koji koriste ova rješenja u oblaku. U teoriji, Kubernetes ponude u oblaku (GKE, EKS, EKS na Fargate-u, ​​itd.) pružaju API-je nezavisne od dobavljača oblaka za pokretanje radnih opterećenja. Ako koristite slične proizvode (ECS, Fargate, Google Cloud Run, itd.), vjerojatno već iskorištavate najzanimljivije značajke koje nudi pružatelj usluga. Osim toga, kako se pojavljuju novi proizvodi ili računarske paradigme, migracija će vjerovatno biti jednostavna i bez stresa.

S obzirom na to koliko se brzo razvija raspon takvih rješenja (jako ću se iznenaditi ako se nekoliko novih opcija ne pojavi u bliskoj budućnosti), mali „platformski“ timovi (timovi povezani s infrastrukturom i odgovorni za kreiranje on-premise platformi za kompanije koje se bave radnim opterećenjem) će biti neverovatno teško konkurisati u smislu funkcionalnosti, lakoće korišćenja i sveukupne pouzdanosti. 2010-te su Kubernetes doživljavale kao alat za izgradnju PaaS-a (platforma-as-a-service), tako da mi se čini potpuno besmislenim graditi internu platformu na vrhu Kubernetesa koja nudi isti izbor, jednostavnost i slobodu dostupne javnosti. prostor oblaka. Uokvirivanje PaaS-a zasnovanog na kontejnerima kao „Kubernetes strategije“ jednako je namjernom izbjegavanju najinovativnijih mogućnosti oblaka.

Ako pogledate dostupne danas Računarske sposobnosti, postaje očigledno da je kreiranje sopstvenog PaaS-a zasnovanog isključivo na Kubernetesu jednako da se svučete u ćošak (nije baš napredan pristup, ha?). Čak i ako neko danas odluči da napravi kontejnerski PaaS na Kubernetesu, za par godina će izgledati zastarelo u poređenju sa mogućnostima u oblaku. Iako je Kubernetes započeo kao projekat otvorenog koda, njegov predak i inspiracija je interni Google alat. Međutim, prvobitno je razvijen početkom/sredinom 2000-ih kada je računarski pejzaž bio potpuno drugačiji.

Takođe, u veoma širem smislu, kompanije ne moraju da postanu eksperti za vođenje Kubernetes klastera, niti grade i održavaju sopstvene centre podataka. Pružanje pouzdane računarske osnove je ključni izazov pružaoci usluga u oblaku.

Konačno, osjećam se kao da smo malo nazadovali kao industrija u smislu iskustvo interakcije (UX). Heroku je lansiran 2007. godine i još uvijek je jedan od najpopularnijih jednostavan za korištenje platforme Ne može se poreći da je Kubernetes mnogo moćniji, proširiviji i programabilniji, ali nedostaje mi koliko je lako započeti i primijeniti na Heroku. Da biste koristili ovu platformu, trebate samo poznavati Git.

Sve ovo me dovodi do sljedećeg zaključka: potrebne su nam bolje apstrakcije višeg nivoa da bi funkcionirale (ovo posebno vrijedi za apstrakcije najvišeg nivoa).

Pravi API na najvišem nivou

Docker je odličan primjer potrebe za boljim odvajanjem briga u isto vrijeme ispravnu implementaciju API-ja najvišeg nivoa.

Problem sa Docker-om je u tome što su (barem) u početku ciljevi projekta bili preširoki: sve radi rešavanja problema kompatibilnosti („radi na mojoj mašini“) korišćenjem tehnologije kontejnera. Docker je bio format slike, runtime sa vlastitom virtuelnom mrežom, CLI alat, demon koji radi kao root i još mnogo toga. U svakom slučaju, razmjena poruka je bila više zbunjujuće, da ne spominjemo "lake VM-ove", cgrupe, imenske prostore, brojne sigurnosne probleme i karakteristike pomiješane s marketinškim pozivom na "izgraditi, isporučiti, pokrenuti bilo koju aplikaciju bilo gdje".

Pogled na tehnologiju posljednje decenije

Kao i kod svih dobrih apstrakcija, potrebno je vrijeme (i iskustvo i bol) da se razbiju različiti problemi u logičke slojeve koji se mogu kombinirati jedni s drugima. Nažalost, prije nego što je Docker stigao do slične zrelosti, Kubernetes je ušao u borbu. Toliko je monopolizirao hype ciklus da su svi sada pokušavali pratiti promjene u Kubernetes ekosistemu, a ekosistem kontejnera je dobio sekundarni status.

Kubernetes ima mnoge iste probleme kao i Docker. Za svu priču o cool i kompobilnoj apstrakciji, razdvajanje različitih zadataka u slojeve nije baš dobro inkapsulirano. U svojoj srži, to je orkestrator kontejnera koji pokreće kontejnere na grupi različitih mašina. Ovo je zadatak prilično niske razine, primjenjiv samo na inženjere koji upravljaju klasterom. S druge strane, Kubernetes je također apstrakcija najvišeg nivoa, CLI alat s kojim korisnici komuniciraju putem YAML-a.

Docker je bio (i još uvijek je) cool razvojni alat, uprkos svim svojim nedostacima. U pokušaju da održe korak sa svim "zečevima" odjednom, njegovi programeri uspjeli su ispravno implementirati apstrakcija na najvišem nivou. Pod apstrakcijom na najvišem nivou mislim podskup funkcionalnost za koju je ciljnu publiku (u ovom slučaju programeri koji su većinu svog vremena provodili u svojim lokalnim razvojnim okruženjima) zaista zanimala i koja je odlično funkcionirala iz kutije.

Dockerfile i CLI uslužni program docker trebao bi biti primjer kako izgraditi dobro „korisničko iskustvo najvišeg nivoa“. Običan programer može početi raditi s Dockerom, a da ne zna ništa o zamršenostima implementacije koje doprinose operativnom iskustvukao što su prostori imena, cgrupe, ograničenja memorije i CPU-a, itd. Na kraju krajeva, pisanje Dockerfile-a se ne razlikuje mnogo od pisanja shell skripte.

Kubernetes je namijenjen različitim ciljnim grupama:

  • administratori klastera;
  • softverski inženjeri koji rade na pitanjima infrastrukture, proširuju mogućnosti Kubernetesa i kreiraju platforme zasnovane na njemu;
  • krajnji korisnici koji komuniciraju sa Kubernetesom putem kubectl.

Kubernetesov pristup „jedan API odgovara svima“ predstavlja nedovoljno inkapsuliranu „brdo složenosti“ bez uputstava o tome kako ga skalirati. Sve to dovodi do neopravdano odugovlačenja putanje učenja. Kako on piše Adam Jacob, „Docker je donio transformativno korisničko iskustvo koje nikada nije nadmašeno. Pitajte svakoga ko koristi K8s da li želi da radi kao njihov prvi docker run. Odgovor će biti da":

Pogled na tehnologiju posljednje decenije

Tvrdio bih da je većina infrastrukturnih tehnologija danas suviše niskog nivoa (i stoga se smatra "previše složenom"). Kubernetes je implementiran na prilično niskom nivou. Distribuirano praćenje u svom trenutni oblik (mnogo raspona spojenih zajedno da formiraju prikaz praćenja) je također implementirano na preniskom nivou. Programerski alati koji implementiraju “apstrakcije najvišeg nivoa” obično su najuspješniji. Ovaj zaključak vrijedi u iznenađujućem broju slučajeva (ako je tehnologija previše složena ili teška za korištenje, tada se tek treba otkriti „API/UI najvišeg nivoa“ za tu tehnologiju).

Trenutno je izvorni ekosistem oblaka zbunjujući zbog svog fokusa na niskom nivou. Kao industrija, moramo inovirati, eksperimentisati i obrazovati o tome kako izgleda pravi nivo „maksimalne, najviše apstrakcije“.

Trgovina na malo

Tokom 2010-ih, iskustvo digitalne maloprodaje ostalo je uglavnom nepromijenjeno. S jedne strane, jednostavnost kupovine putem interneta trebala je pogoditi tradicionalne maloprodajne objekte, s druge strane, online kupovina je u osnovi ostala gotovo nepromijenjena u jednoj deceniji.

Iako nemam konkretna razmišljanja o tome kako će se ova industrija razvijati u narednoj deceniji, bio bih veoma razočaran ako kupujemo 2030. na isti način na koji radimo 2020. godine.

Novinarstvo

Sve sam više razočaran stanjem u globalnom novinarstvu. Postaje sve teže pronaći nepristrasne izvore vijesti koji izvještavaju objektivno i pedantno. Vrlo često je granica između same vijesti i mišljenja o njoj zamagljena. Informacije se po pravilu prikazuju na pristrasan način. Ovo je posebno tačno u nekim zemljama u kojima istorijski nije bilo razdvajanja između vesti i mišljenja. U nedavnom članku objavljenom nakon posljednjih općih izbora u Velikoj Britaniji, Alan Rusbridger, bivši urednik The Guardiana, on piše:

Glavna stvar je da sam dugi niz godina gledao američke novine i bilo mi je žao tamošnjih kolega, koji su bili isključivo odgovorni za vijesti, ostavljajući komentare potpuno drugim ljudima. Međutim, vremenom se sažaljenje pretvorilo u zavist. Sada mislim da bi sve britanske nacionalne novine trebale odvojiti svoju odgovornost za vijesti od odgovornosti za komentare. Nažalost, prosječnom čitaocu – posebno online čitaocima – previše je teško uočiti razliku.

S obzirom na prilično sumnjivu reputaciju Silicijumske doline kada je u pitanju etika, nikada ne bih vjerovao tehnologiji koja će "revolucionirati" novinarstvo. S obzirom na to, meni (i mnogim mojim prijateljima) bi bilo drago da postoji nepristrasan, nezainteresovan i pouzdan izvor vijesti. Iako nemam pojma kako bi takva platforma mogla izgledati, uvjeren sam da je u eri u kojoj istina postaje sve teže razaznati, potreba za poštenim novinarstvom veća nego ikad.

Društvene mreže

Društveni mediji i platforme za vijesti iz zajednice primarni su izvor informacija za mnoge ljude širom svijeta, a nedostatak tačnosti i nevoljkost nekih platformi da izvrše čak i osnovnu provjeru činjenica doveo je do katastrofalnih posljedica kao što su genocid, miješanje u izbore i još mnogo toga. .

Društveni mediji su takođe najmoćniji medijski alat koji je ikada postojao. Oni su radikalno promijenili političku praksu. Promijenili su reklamu. Oni su promijenili pop kulturu (na primjer, glavni doprinos razvoju tzv. cancel kulture [kulture ostrakizma - cca. prijevod] društvene mreže doprinose). Kritičari tvrde da su se društveni mediji pokazali kao plodno tlo za brze i hirovite promjene moralnih vrijednosti, ali su također pružile pripadnicima marginaliziranih grupa priliku da se organiziraju na način na koji nikada prije nisu imali. U suštini, društvene mreže su promijenile način na koji ljudi komuniciraju i izražavaju se u 21. vijeku.

Međutim, također vjerujem da društvene mreže donose najgore ljudske impulse. Razmatranje i promišljenost se često zanemaruju u korist popularnosti, te postaje gotovo nemoguće izraziti obrazloženo neslaganje sa određenim mišljenjima i stavovima. Polarizacija često izmiče kontroli, što rezultira time da javnost jednostavno ne čuje pojedinačna mišljenja, dok apsolutisti kontrolišu pitanja onlajn etiketa i prihvatljivosti.

Pitam se da li je moguće stvoriti „bolju“ platformu koja promoviše kvalitetnije diskusije? Na kraju krajeva, to je ono što pokreće „angažman“ koji često donosi glavni profit ovim platformama. Kako on piše Kara Swisher u New York Timesu:

Moguće je razvijati digitalne interakcije bez izazivanja mržnje i netolerancije. Razlog zašto većina stranica društvenih medija izgleda tako toksično je taj što su napravljene za brzinu, viralnost i pažnju, a ne za sadržaj i tačnost.

Bilo bi zaista žalosno da je u nekoliko decenija jedino nasleđe društvenih medija erozija nijansi i prikladnosti u javnom diskursu.

PS od prevodioca

Pročitajte i na našem blogu:

izvor: www.habr.com

Kupite pouzdan hosting za sajtove sa DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan web hosting sa DDoS zaštitom, VPS VDS servere | ProHoster