Pogled na tehnologiju posljednjeg desetljeća

Bilješka. prev.: Ovaj članak, koji je postao hit na Mediumu, pregled je ključnih (2010.-2019.) promjena u svijetu programskih jezika i povezanog tehnološkog ekosustava (s posebnim naglaskom na Docker i Kubernetes). Njegov izvorni autor je Cindy Sridharan, koja se specijalizirala za razvojne alate i distribuirane sustave - posebno je napisala knjigu “Distributed Systems Observability” - i prilično je popularna u internetskom prostoru među IT stručnjacima, posebno zainteresiranima za temu izvornog oblaka.

Pogled na tehnologiju posljednjeg desetljeća

Kako se 2019. bliži kraju, želio sam podijeliti svoja razmišljanja o nekim od najvažnijih tehnoloških dostignuća i inovacija u prošlom desetljeću. Osim toga, pokušat ću pogledati malo u budućnost i ocrtati glavne probleme i prilike nadolazećeg desetljeća.

Želim pojasniti da u ovom članku ne pokrivam promjene u područjima kao što je znanost o podacima (znanost o podacima), umjetna inteligencija, frontend inženjering itd., jer ja osobno nemam dovoljno iskustva u njima.

Tipizacija uzvraća udarac

Jedan od najpozitivnijih trendova 2010-ih bio je oživljavanje statički tipiziranih jezika. Međutim, takvi jezici nikada nisu nestali (C++ i Java danas su traženi; dominirali su prije desetak godina), ali su dinamički tipizirani jezici (dinamika) doživjeli značajan porast popularnosti nakon pojave Ruby on Rails pokreta 2005. . Taj je rast dosegao vrhunac 2009. s otvorenim kodom Node.js, čime je Javascript-on-the-server postao stvarnost.

S vremenom su dinamički jezici izgubili nešto od svoje privlačnosti u području stvaranja poslužiteljskog softvera. Go jezik, populariziran tijekom kontejnerske revolucije, činio se prikladnijim za stvaranje resursno učinkovitih poslužitelja visokih performansi s paralelnom obradom (s kojom slažem se sam tvorac Node.js).

Rust, predstavljen 2010., uključivao je napredak u teorije tipa u pokušaju da postane siguran i tipiziran jezik. U prvoj polovici desetljeća, prijam Rusta u industriji bio je prilično mlak, no njegova je popularnost znatno porasla u drugoj polovici. Značajni slučajevi upotrebe za Rust uključuju njegovu upotrebu za Magic Pocket na Dropboxu, Firecracker by AWS (razgovarali smo o tome u ovaj članak - cca. prev.), rani WebAssembly prevodilac Lucet od Fastlyja (sada dio bytecodealliancea), itd. Budući da Microsoft razmatra mogućnost ponovnog pisanja nekih dijelova Windows OS-a u Rustu, sa sigurnošću se može reći da ovaj jezik ima svijetlu budućnost u 2020-ima.

Čak su i dinamički jezici dobili nove značajke poput izborne vrste (neobavezne vrste). Prvo su implementirani u TypeScriptu, jeziku koji vam omogućuje stvaranje tipkanog koda i njegovo prevođenje u JavaScript. PHP, Ruby i Python imaju svoje izborne sustave tipkanja (mypy, Hack), 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 desetljeća nego na kraju. Mislim da postoje dva razloga za to.

Prvo, pokazalo se da je NoSQL model, s nedostatkom sheme, transakcija i slabijim jamstvima dosljednosti, teži za implementaciju od SQL modela. U post na blogu s naslovom "Zašto biste trebali preferirati jaku dosljednost kad god je to moguće" (Zašto biste trebali odabrati jaku dosljednost, kad god je to moguće) Google piše:

Jedna od stvari koje smo naučili u Googleu jest da je kod aplikacije jednostavniji, a vrijeme razvoja kraće kada se inženjeri mogu osloniti na postojeću pohranu za obradu složenih transakcija i održavanje podataka u redu. Da citiram izvornu Spannerovu dokumentaciju, "Vjerujemo da je za programere bolje da se bave problemima performansi aplikacije zbog zlouporabe transakcija kada se pojave uska grla, umjesto da stalno imaju na umu odsutnost transakcija."

Drugi razlog je zbog porasta "scale-out" distribuiranih SQL baza podataka (kao što je Ključ za oblak и AWS Aurora) u javnom prostoru oblaka, kao i alternative otvorenog koda poput CockroachDB (pričamo i o njoj писали - cca. prev.), koji rješavaju mnoge tehničke probleme zbog kojih se tradicionalne SQL baze podataka "ne skaliraju". Čak je i MongoDB, nekoć oličenje NoSQL pokreta, sada ponude distribuirane transakcije.

Za situacije koje zahtijevaju atomsko čitanje i pisanje preko više dokumenata (preko jedne 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 fragmenata.

Totalni streaming

Apache Kafka bez sumnje je jedan od najvažnijih izuma prošlog desetljeća. Njegov izvorni kod otvoren je u siječnju 2011., a tijekom godina Kafka je revolucionirao način na koji tvrtke rade s podacima. Kafka je korišten u svakoj tvrtki za koju sam radio, od startupa do velikih korporacija. Jamstva i slučajevi korištenja koje pruža (pub-sub, streamovi, arhitekture vođene događajima) koriste se u različitim zadacima, od pohrane podataka do praćenja i analitike strujanja, traženi u mnogim područjima kao što su financije, zdravstvo, javni sektor, maloprodaja i sl.

Kontinuirana integracija (i u manjoj mjeri kontinuirana implementacija)

Kontinuirana integracija nije se pojavila u zadnjih 10 godina, ali u proteklom desetljeću jest proširio do te mjere, koji je postao dio standardnog tijeka rada (pokretanje testova na svim zahtjevima za povlačenje). Uspostavljanje GitHuba kao platforme za razvoj i pohranu koda i, što je još važnije, razvoj tijeka rada temeljenog na GitHub protok znači da je izvođenje testova prije prihvaćanja zahtjeva za povlačenjem za master jedini tijek rada u razvoju, poznat inženjerima koji su svoju karijeru započeli u posljednjih deset godina.

Kontinuirana implementacija (implementacija svake predaje kako i kada pogodi master) nije tako raširena kao kontinuirana integracija. Međutim, s mnoštvom različitih API-ja u oblaku za implementaciju, rastućom popularnošću platformi kao što je Kubernetes (koja pruža standardizirani API za implementaciju) i pojavom multi-platformskih, multi-cloud alata kao što je Spinnaker (izgrađen na vrhu onih standardiziranih API-ja), procesi implementacije postali su automatiziraniji, usmjereniji i, općenito, sigurniji.

spremnici

Kontejneri su možda najviše hvaljena, raspravljana, reklamirana i krivo shvaćena tehnologija 2010-ih. S druge strane, to je jedna od najvažnijih inovacija prošlog desetljeća. Dio razloga za svu ovu kakofoniju leži u mješovitim signalima koje smo primali gotovo odasvud. Sad kad je hype malo utihnuo, neke stvari su došle u fokus.

Kontejneri su postali popularni ne zato što su najbolji način za pokretanje aplikacije koja zadovoljava potrebe globalne zajednice programera. Spremnici su postali popularni jer su se uspješno uklopili u marketinški zahtjev za određenim alatom koji rješava sasvim drugi problem. Pokazalo se da je Docker fantastičan razvojni alat koji rješava hitan problem kompatibilnosti ("radi na mom stroju").

Točnije, revolucija je napravljena Docker slika, jer je riješio problem pariteta između okruženja i omogućio istinsku prenosivost ne samo aplikacijske datoteke, već i svih njezinih softverskih i operativnih ovisnosti. Činjenica da je ovaj alat na neki način potaknuo popularnost "kontejnera", koji su u biti implementacijski detalji vrlo niske razine, za mene ostaje možda glavni misterij prošlog desetljeća.

serverless

Kladio bih se da je pojava računalstva "bez poslužitelja" još važnija od spremnika jer uistinu čini san o računalstvu na zahtjev stvarnošću (Na zahtjev). Tijekom proteklih pet godina vidio sam kako se pristup bez poslužitelja postupno širi dodavanjem podrške za nove jezike i vremena izvođenja. Čini se da je pojava proizvoda kao što je Azure Durable Functions pravi korak prema implementaciji funkcija s praćenjem stanja (istodobno odlučujućeg neki problemipovezano s FaaS ograničenjima). Sa zanimanjem ću promatrati kako će se ta nova paradigma razvijati u nadolazećim godinama.

Automatizacija

Možda je najveća korist od ovog trenda zajednica operativnih inženjera, budući da je omogućio da koncepti poput infrastrukture kao koda (IaC) postanu stvarnost. Osim toga, strast za automatizacijom poklopila se s usponom "kulture SRE", čiji je cilj pristup operacijama koji je više usmjeren na softver.

Univerzalna API-fikacija

Još jedna zanimljiva značajka prošlog desetljeća bila je API-fikacija raznih razvojnih zadataka. Dobri, fleksibilni API-ji omogućuju programeru stvaranje inovativnih radnih procesa i alata, koji zauzvrat pomažu u održavanju i poboljšavaju korisničko iskustvo.

Osim toga, API-fikacija je prvi korak prema SaaS-fikaciji neke funkcionalnosti ili alata. Taj se trend poklopio i s porastom popularnosti mikrousluga: SaaS je postao samo još jedna usluga kojoj se može pristupiti putem API-ja. Sada su dostupni mnogi SaaS i FOSS alati u područjima kao što su nadzor, plaćanja, uravnoteženje opterećenja, kontinuirana integracija, upozorenja, prebacivanje značajki (označavanje značajki), CDN, prometni inženjering (npr. DNS) itd., koji su procvjetali u proteklom desetljeću.

uočljivost

Vrijedno je napomenuti da danas imamo pristup mnogo napredniji alata za praćenje i dijagnosticiranje ponašanja aplikacije nego ikad prije. Možda se može nazvati sustav za praćenje Prometheus, koji je 2015. godine dobio status Open Source najbolji sustav nadzora od onih s kojima sam radio. Nije savršeno, ali značajan broj stvari implementiran je na točno ispravan način (primjerice, 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, neka od najnovijih dostignuća daju nadu da ćemo otključati njegov pravi potencijal u 2020-ima. (Napomena: Pročitajte i na našem blogu prijevod članka “Distribuirano praćenje: sve smo krivo napravili"od istog autora.)

Zaglâdyvaâ v buduŝee

Nažalost, postoje mnoge bolne točke koje čekaju rješenje u nadolazećem desetljeću. Evo mojih misli o njima i nekih mogućih ideja kako ih se riješiti.

Rješavanje problema Mooreovog zakona

Kraj Dennardovog zakona skaliranja i zaostajanje za Mooreovim zakonom zahtijevaju nove inovacije. John Hennessy u njegovo predavanje objašnjava zašto problematični ovisnici (specifično za domenu) arhitekture poput TPU mogu biti jedno od rješenja problema zaostajanja za Mooreovim zakonom. Alati poput MLIR od Googlea već se čini kao dobar korak naprijed u ovom smjeru:

Kompajleri moraju podržavati nove aplikacije, lako se prenositi na novi hardver, povezivati ​​višestruke slojeve apstrakcije u rasponu od dinamičkih, upravljanih jezika do vektorskih akceleratora i softverski kontroliranih uređaja za pohranu, istovremeno pružajući prekidače visoke razine za automatsko podešavanje, pružajući samo- u funkcionalnosti -vrijeme, dijagnostika i distribucija informacija o ispravljanju pogrešaka o funkcioniranju i performansama sustava kroz cijeli stog, dok u većini slučajeva pruža performanse koje su razumno bliske ručno 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 još uvijek zlatni standard za CI.

Pogled na tehnologiju posljednjeg desetljeća

Ovom prostoru prijeko su potrebne inovacije u sljedećim područjima:

  • korisničko sučelje (DSL za kodiranje testnih specifikacija);
  • detalji implementacije koji će ga učiniti uistinu skalabilnim i brzim;
  • integracija s različitim okruženjima (staging, prod, itd.) za implementaciju naprednijih oblika testiranja;
  • kontinuirano testiranje i implementacija.

Razvojni alati

Kao industrija, počeli smo stvarati sve složeniji i impresivniji softver. Međutim, kada su u pitanju vlastiti alati, situacija bi mogla biti puno bolja.

Suradničko i udaljeno (putem ssh) uređivanje je steklo određenu popularnost, ali nikada nije postalo novi standardni način razvoja. Ako vi, poput mene, odbacujete samu ideju potreba stalna veza s internetom samo da biste mogli programirati, onda vam rad preko ssh-a na udaljenom računalu vjerojatno neće odgovarati.

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

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

Također bih želio vidjeti više inovacija u područjima kao što su semantičko i kontekstualno pretraživanje koda, alati za korelaciju proizvodnih incidenata s određenim dijelovima kodne baze itd.

Računalstvo (budućnost PaaS-a)

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

Pogled na tehnologiju posljednjeg desetljeća

Ovo otvara nekoliko zanimljivih pitanja. Prije svega, popis dostupnih opcija u javnom oblaku stalno raste. Pružatelji usluga u oblaku imaju osoblje i resurse za lako praćenje najnovijih dostignuća u svijetu otvorenog izvornog koda i izdavanje proizvoda kao što su "pods bez poslužitelja" (sumnjam jednostavno tako što će svoje vlastito FaaS runtimes uskladiti s OCI) ili druge slične fancy stvari.

Može se samo zavidjeti onima koji koriste ova cloud rješenja. U teoriji, ponude Kubernetes oblaka (GKE, EKS, EKS na Fargateu itd.) pružaju API-je neovisne o pružatelju usluga oblaka za radna opterećenja. Ako koristite slične proizvode (ECS, Fargate, Google Cloud Run itd.), vjerojatno već na najbolji način iskorištavate najzanimljivije značajke koje nudi pružatelj usluge. Osim toga, kako se pojavljuju novi proizvodi ili računalne paradigme, migracija će vjerojatno biti jednostavna i bez stresa.

S obzirom na to koliko se brzo razvija raspon takvih rješenja (jako ću se iznenaditi ako se u skoroj budućnosti ne pojavi par novih opcija), mali “platformski” timovi (timovi povezani s infrastrukturom i odgovorni za kreiranje on-premise platformi za radna opterećenja poduzeća) bit će nevjerojatno teško konkurirati u smislu funkcionalnosti, jednostavnosti korištenja i ukupne pouzdanosti. U 2010-ima Kubernetes je bio alat za izgradnju PaaS-a (platforma-as-a-service), pa mi se čini potpuno besmislenim graditi internu platformu povrh Kubernetesa koja nudi isti izbor, jednostavnost i slobodu dostupnu u javnosti prostor oblaka. Uokvirivanje PaaS-a temeljenog na kontejnerima kao "strategije Kubernetesa" jednako je namjernom izbjegavanju najinovativnijih mogućnosti oblaka.

Ako pogledate dostupne danas računalnih mogućnosti, postaje očito da je stvaranje vlastitog PaaS-a temeljenog isključivo na Kubernetesu jednako stjeranju sebe u kut (nije baš napredan pristup, ha?). Čak i ako netko danas odluči izgraditi kontejnerski PaaS na Kubernetesu, za nekoliko godina izgledat će zastarjelo u usporedbi s mogućnostima oblaka. Iako je Kubernetes započeo kao open source projekt, njegov predak i inspiracija je interni Googleov alat. Međutim, izvorno je razvijen početkom/sredinom 2000-ih kada je računalni krajolik bio potpuno drugačiji.

Također, u vrlo širokom smislu, tvrtke ne moraju postati stručnjaci za vođenje Kubernetes klastera, niti grade i održavaju vlastite podatkovne centre. Pružanje pouzdane računalne osnove glavni je izazov pružatelji usluga u oblaku.

Konačno, osjećam da smo malo nazadovali kao industrija u smislu iskustvo interakcije (UX). Heroku je lansiran 2007. i još uvijek je jedan od najvećih jednostavan za korištenje platforme. Ne može se poreći da je Kubernetes mnogo moćniji, proširiv i programabilniji, ali nedostaje mi koliko je lako započeti i implementirati ga na Heroku. Za korištenje ove platforme potrebno je samo poznavati Git.

Sve me to dovodi do sljedećeg zaključka: potrebne su nam bolje apstrakcije više razine za rad (ovo posebno vrijedi za apstrakcije najviše razine).

Pravi API na najvišoj razini

Docker je izvrstan primjer potrebe za boljim odvajanjem briga u isto vrijeme ispravna implementacija API-ja najviše razine.

Problem s Dockerom je taj što je (barem) u početku projekt imao preširoke ciljeve: sve u svrhu rješavanja problema kompatibilnosti ("radi na mom stroju") korištenjem kontejnerske tehnologije. Docker je bio slikovni format, runtime s vlastitom virtualnom mrežom, CLI alatom, demonom koji radi kao root i još mnogo toga. U svakom slučaju, razmjena poruka je bila više zbunjujuće, da ne spominjemo "lagane VM-ove", cgroups, namespaces, brojna sigurnosna pitanja i značajke pomiješane s marketinškim pozivom da se "izgradi, dostavi, pokrene bilo koju aplikaciju bilo gdje".

Pogled na tehnologiju posljednjeg desetljeća

Kao i kod svih dobrih apstrakcija, potrebno je vrijeme (i iskustvo i bol) da se različiti problemi razlože u logične slojeve koji se mogu međusobno kombinirati. Nažalost, prije nego što je Docker mogao dostići sličnu zrelost, Kubernetes je ušao u bitku. Toliko je monopolizirao hype ciklus da su sada svi pokušavali pratiti promjene u Kubernetes ekosustavu, a kontejnerski ekosustav je preuzeo sekundarni status.

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

Docker je bio (i još uvijek je) cool razvojni alat, unatoč svim svojim nedostacima. U pokušaju da drže korak sa svim "zečevima" odjednom, njegovi su programeri uspjeli pravilno implementirati apstrakcija na najvišoj razini. Pod apstrakcijom na najvišoj razini mislim podskup funkcionalnost za koju je ciljana publika (u ovom slučaju programeri koji su većinu svog vremena provodili u svojim lokalnim razvojnim okruženjima) bila stvarno zainteresirana i koja je odlično funkcionirala odmah nakon postavljanja.

Dockerfile i CLI uslužni program docker trebao biti primjer kako izgraditi dobro "korisničko iskustvo na najvišoj razini". Obični 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, cgroups, ograničenja memorije i procesora, itd. U konačnici, pisanje Dockerfilea ne razlikuje se mnogo od pisanja shell skripte.

Kubernetes je namijenjen različitim ciljnim skupinama:

  • administratori klastera;
  • softverski inženjeri koji rade na infrastrukturnim pitanjima, širenju mogućnosti Kubernetesa i stvaranju platformi temeljenih na njemu;
  • krajnji korisnici koji komuniciraju s Kubernetesom putem kubectl.

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

Pogled na tehnologiju posljednjeg desetljeća

Tvrdio bih da je većina današnje infrastrukturne tehnologije na preniskoj razini (i stoga se smatra "previše složenom"). Kubernetes je implementiran na prilično niskoj razini. Distribuirano praćenje u svom trenutni oblik (puno raspona spojenih zajedno kako bi se formirao traceview) također je implementirano na preniskoj razini. Alati za razvojne programere koji implementiraju "apstrakcije najviše razine" obično su najuspješniji. Ovaj zaključak vrijedi u iznenađujućem broju slučajeva (ako je tehnologija presložena ili teška za korištenje, tada tek treba otkriti "API/UI najviše razine" za tu tehnologiju).

Trenutno je izvorni ekosustav u oblaku zbunjujući zbog svoje niske razine fokusa. Kao industrija, moramo inovirati, eksperimentirati i educirati o tome kako izgleda prava razina "maksimalne, najviše apstrakcije".

Maloprodaja

U 2010-ima iskustvo digitalne maloprodaje ostalo je uglavnom nepromijenjeno. S jedne strane, jednostavnost online kupnje trebala je pogoditi tradicionalne maloprodajne trgovine, s druge strane, online kupnja u osnovi je ostala gotovo nepromijenjena u desetljeću.

Iako nemam konkretnih razmišljanja o tome kako će se ova industrija razvijati u sljedećem desetljeću, bio bih jako razočaran ako bismo 2030. kupovali na isti način kao 2020.

novinarstvo

Sve sam više razočaran stanjem u globalnom novinarstvu. Sve je teže pronaći nepristrane izvore vijesti koji izvještavaju objektivno i pedantno. Vrlo često je granica između same vijesti i mišljenja o njoj nejasna. Informacije se u pravilu prezentiraju pristrano. To je osobito istinito u nekim zemljama u kojima povijesno nije bilo razdvajanja između vijesti i mišljenja. U nedavnom članku objavljenom nakon posljednjih općih izbora u Ujedinjenom Kraljevstvu, Alan Rusbridger, bivši urednik The Guardiana, piše::

Glavna poanta je da sam godinama gledao američke novine i bilo mi je žao tamošnjih kolega, koji su bili jedini odgovorni za vijest, prepuštajući komentare sasvim drugim ljudima. Međutim, s 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 čitatelju - posebno čitateljima na mreži - preteško je uočiti razliku.

S obzirom na prilično sumnjivu reputaciju Silicijske doline kada je u pitanju etika, nikada ne bih vjerovao da će tehnologija "revolucionirati" novinarstvo. Uz to, meni (i mnogim mojim prijateljima) bi bilo drago da postoji nepristran, nezainteresiran i pouzdan izvor vijesti. Iako nemam pojma kako bi takva platforma mogla izgledati, uvjeren sam da je u eri u kojoj je sve teže uočiti istinu, potreba za poštenim novinarstvom veća nego ikada.

Društvene mreže

Društveni mediji i platforme za vijesti u zajednici primarni su izvor informacija za mnoge ljude diljem svijeta, a nedostatak točnosti i nevoljkost nekih platformi da izvrše čak i osnovnu provjeru činjenica doveli su do katastrofalnih posljedica kao što su genocid, miješanje u izbore i drugo .

Društveni mediji također su najmoćniji medijski alat koji je ikada postojao. Oni su radikalno promijenili političku praksu. Promijenili su oglašavanje. Promijenili su pop kulturu (npr. glavni doprinos razvoju tzv. cancel kulture [kulture ostracizma - 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 u moralnim vrijednostima, ali su također pripadnicima marginaliziranih skupina pružili priliku da se organiziraju na način na koji nikada prije nisu imali. U biti, društveni mediji su promijenili način na koji ljudi komuniciraju i izražavaju se u 21. stoljeću.

Međutim, također vjerujem da društveni mediji izvlače najgore ljudske porive. Uviđavnost i promišljenost često se zanemaruju u korist popularnosti, te postaje gotovo nemoguće izraziti argumentirano neslaganje s 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 kontroliraju pitanja online bontona i prihvatljivosti.

Pitam se je li moguće stvoriti "bolju" platformu koja promovira kvalitetnije rasprave? Uostalom, upravo ono što pokreće "angažman" često donosi glavni profit ovim platformama. Kako piše: Kara Swisher u New York Timesu:

Moguće je razvijati digitalne interakcije bez izazivanja mržnje i netrpeljivosti. Razlog zašto se većina stranica društvenih medija čini tako toksičnom je taj što su izgrađene za brzinu, viralnost i pozornost, a ne za sadržaj i točnost.

Bilo bi doista žalosno da je, za nekoliko desetljeća, jedina ostavština društvenih medija bila erozija nijansi i prikladnosti u javnom diskursu.

PS od prevoditelja

Pročitajte i na našem blogu:

Izvor: www.habr.com

Dodajte komentar