PiezÄ«me. tulk.: Å is raksts, kas kļuva par hitu vietnÄ Medium, ir pÄrskats par galvenajÄm (2010-2019) izmaiÅÄm programmÄÅ”anas valodu pasaulÄ un ar to saistÄ«tajÄ tehnoloÄ£iju ekosistÄmÄ (Ä«paÅ”u uzmanÄ«bu pievÄrÅ”ot Docker un Kubernetes). TÄs sÄkotnÄjÄ autore ir Sindija Sridharana, kura specializÄjas izstrÄdÄtÄju rÄ«kos un izplatÄ«tajÄs sistÄmÄs - jo Ä«paÅ”i viÅa uzrakstÄ«ja grÄmatu āDistributed Systems Observabilityā - un ir diezgan populÄra interneta telpÄ IT speciÄlistu vidÅ«, Ä«paÅ”i interesÄjoties par mÄkoÅdatoÅ”anas tÄmu.
Tuvojoties 2019. gada beigÄm, es vÄlÄjos dalÄ«ties savÄs pÄrdomÄs par dažiem svarÄ«gÄkajiem tehnoloÄ£iskajiem sasniegumiem un inovÄcijÄm pÄdÄjÄs desmitgades laikÄ. TurklÄt mÄÄ£inÄÅ”u nedaudz ieskatÄ«ties nÄkotnÄ un iezÄ«mÄt galvenÄs nÄkamÄs desmitgades problÄmas un iespÄjas.
Es vÄlos paskaidrot, ka Å”ajÄ rakstÄ es neaptveru izmaiÅas tÄdÄs jomÄs kÄ datu zinÄtne (datu zinÄtne), mÄkslÄ«gais intelekts, frontend inženierija utt., jo man personÄ«gi nav pietiekamas pieredzes tajos.
TipifikÄcija atgriežas
Viena no pozitÄ«vÄkajÄm 2010. gadu tendencÄm bija statiski drukÄtu valodu atdzimÅ”ana. TomÄr Å”Ädas valodas nekad nav pazuduÅ”as (Å”odien pieprasÄ«tas ir C++ un Java; tÄs dominÄja pirms desmit gadiem), bet dinamiski drukÄtÄs valodas (dinamika) piedzÄ«voja ievÄrojamu popularitÄtes pieaugumu pÄc Ruby on Rails kustÄ«bas parÄdÄ«Å”anÄs 2005. gadÄ. . Å is pieaugums sasniedza maksimumu 2009. gadÄ, izmantojot Node.js atvÄrto avotu, kas padarÄ«ja Javascript-on-the-server par realitÄti.
Laika gaitÄ dinamiskÄs valodas ir zaudÄjuÅ”as savu pievilcÄ«bu servera programmatÅ«ras izveides jomÄ. Konteineru revolÅ«cijas laikÄ popularizÄtÄ Go valoda Ŕķita labÄk piemÄrota augstas veiktspÄjas, resursefektÄ«vu serveru izveidei ar paralÄlu apstrÄdi (ar ko piekrÄ«tu pats Node.js veidotÄjs).
Rust, kas tika ieviesta 2010. gadÄ, ietvÄra uzlabojumus tipa teorijas mÄÄ£inot kļūt par droÅ”u un drukÄtu valodu. Desmitgades pirmajÄ pusÄ Rust uztverÅ”ana nozarÄ bija diezgan remdena, bet otrajÄ pusÄ tÄ popularitÄte ievÄrojami pieauga. IevÄrojami Rust lietoÅ”anas gadÄ«jumi ietver tÄ izmantoÅ”anu Magic Pocket vietnÄ Dropbox, AWS petarde(mÄs par to runÄjÄm Å is raksts ā apm. tulk.), agrÄ«ns WebAssembly kompilators Lucet no Fastly (tagad daļa no bytecodealliance) utt. TÄ kÄ Microsoft apsver iespÄju pÄrrakstÄ«t dažas Windows OS daļas Rust, var droÅ”i teikt, ka Å”ai valodai ir spoža nÄkotne 2020. gados.
Pat dinamiskas valodas ieguva jaunas funkcijas, piemÄram izvÄles veidi(pÄc izvÄles veidi). Tie vispirms tika ieviesti TypeScript ā valodÄ, kas ļauj izveidot drukÄtu kodu un apkopot to JavaScript. PHP, Ruby un Python ir savas izvÄles maŔīnrakstÄ«Å”anas sistÄmas (mypy, Hack), kuras veiksmÄ«gi tiek izmantotas ražoÅ”ana.
SQL atgrieŔana uz NoSQL
NoSQL ir vÄl viena tehnoloÄ£ija, kas desmitgades sÄkumÄ bija daudz populÄrÄka nekÄ beigÄs. Es domÄju, ka tam ir divi iemesli.
PirmkÄrt, NoSQL modelis ar shÄmu, transakciju trÅ«kumu un vÄjÄkÄm konsekvences garantijÄm izrÄdÄ«jÄs grÅ«tÄk Ä«stenojams nekÄ SQL modeli. IN emuÄra ieraksts ar nosaukumu "KÄpÄc jums vajadzÄtu dot priekÅ”roku spÄcÄ«gai konsekvencei, kad vien iespÄjams" (KÄpÄc jums vajadzÄtu izvÄlÄties spÄcÄ«gu konsistenci, kad vien iespÄjams) Google raksta:
Viena no lietÄm, ko esam iemÄcÄ«juÅ”ies Google, ir tas, ka lietojumprogrammas kods ir vienkÄrÅ”Äks un izstrÄdes laiks ir Ä«sÄks, ja inženieri var paļauties uz esoÅ”o krÄtuvi, lai apstrÄdÄtu sarežģītus darÄ«jumus un uzturÄtu datus kÄrtÄ«bÄ. CitÄjot oriÄ£inÄlo Spanner dokumentÄciju: "MÄs uzskatÄm, ka programmÄtÄjiem ir labÄk risinÄt lietojumprogrammu veiktspÄjas problÄmas, kas rodas darÄ«jumu ļaunprÄtÄ«gas izmantoÅ”anas dÄļ, jo rodas vÄjÄs vietas, nevis pastÄvÄ«gi paturÄt prÄtÄ darÄ«jumu neesamÄ«bu."
Otrs iemesls ir saistÄ«ts ar "izmÄrÄ«tu" izplatÄ«to SQL datu bÄzu pieaugumu (piemÄram, MÄkoÅatslÄga Šø AWS Aurora) publiskajÄ mÄkoÅa telpÄ, kÄ arÄ« atvÄrtÄ pirmkoda alternatÄ«vas, piemÄram, CockroachDB (mÄs arÄ« runÄjam par viÅu ŠæŠøŃŠ°Š»Šø - apm. tulk.), kas atrisina daudzas tehniskas problÄmas, kuru dÄļ tradicionÄlÄs SQL datu bÄzes "nemÄrogoja". Pat MongoDB, kas kÄdreiz bija NoSQL kustÄ«bas iemiesojums, tagad ir piedÄvÄjumus izplatÄ«ti darÄ«jumi.
SituÄcijÄs, kurÄs nepiecieÅ”ama atomu lasÄ«Å”ana un rakstÄ«Å”ana vairÄkos dokumentos (vienÄ vai vairÄkÄs kolekcijÄs), MongoDB atbalsta vairÄku dokumentu transakcijas. IzkliedÄtu darÄ«jumu gadÄ«jumÄ darÄ«jumus var izmantot vairÄkÄs operÄcijÄs, kolekcijÄs, datu bÄzÄs, dokumentos un fragmentos.
KopÄjÄ straumÄÅ”ana
Apache Kafka, bez Å”aubÄm, ir viens no svarÄ«gÄkajiem izgudrojumiem pÄdÄjÄs desmitgades laikÄ. TÄ pirmkods tika atvÄrts 2011. gada janvÄrÄ«, un gadu gaitÄ Kafka ir mainÄ«jis veidu, kÄ uzÅÄmumi strÄdÄ ar datiem. Kafka ir izmantota katrÄ uzÅÄmumÄ, kurÄ esmu strÄdÄjis, sÄkot no jaunizveidotiem uzÅÄmumiem lÄ«dz lielÄm korporÄcijÄm. TÄ sniegtÄs garantijas un lietoÅ”anas gadÄ«jumi (pub-sub, straumes, notikumu virzÄ«tas arhitektÅ«ras) tiek izmantotas dažÄdos uzdevumos, sÄkot no datu uzglabÄÅ”anas lÄ«dz uzraudzÄ«bai un straumÄÅ”anas analÄ«zei, kas ir pieprasÄ«tas daudzÄs jomÄs, piemÄram, finansÄs, veselÄ«bas aprÅ«pÄ, publiskajÄ sektorÄ, mazumtirdzniecÄ«ba utt.
NepÄrtraukta integrÄcija (un mazÄkÄ mÄrÄ nepÄrtraukta izvietoÅ”ana)
NepÄrtraukta integrÄcija neparÄdÄ«jÄs pÄdÄjos 10 gados, bet pÄdÄjo desmit gadu laikÄ ir izplatÄ«jies tÄdÄ mÄrÄ, kas ir kļuvusi par daļu no standarta darbplÅ«smas (izpildiet testus visiem vilkÅ”anas pieprasÄ«jumiem). GitHub kÄ platformas izveide koda izstrÄdei un glabÄÅ”anai un, vÄl svarÄ«gÄk, darbplÅ«smas izstrÄdei, pamatojoties uz GitHub plÅ«sma nozÄ«mÄ, ka testu palaiÅ”ana pirms vilkÅ”anas pieprasÄ«juma pieÅemÅ”anas meistaram ir vienÄ«gais izstrÄdes darbplÅ«sma, kas pazÄ«stama inženieriem, kuri savu karjeru sÄkuÅ”i pÄdÄjo desmit gadu laikÄ.
NepÄrtraukta izvietoÅ”ana (katras darbÄ«bas izvietoÅ”ana, kad un kad tÄ sasniedz galveno) nav tik plaÅ”i izplatÄ«ta kÄ nepÄrtraukta integrÄcija. TomÄr, Åemot vÄrÄ dažÄdu izvietoÅ”anai paredzÄto mÄkoÅa API pÄrpilnÄ«bu, tÄdu platformu kÄ Kubernetes (kas nodroÅ”ina standartizÄtu API izvietoÅ”anai) pieaugoÅ”o popularitÄti un vairÄku platformu, vairÄku mÄkoÅu rÄ«ku, piemÄram, Spinnaker (veidots papildus standartizÄtajÄm) parÄdÄ«Å”anos. API), izvietoÅ”anas procesi ir kļuvuÅ”i automatizÄtÄki, racionalizÄtÄki un kopumÄ droÅ”Äki.
Konteineri
Konteineri, iespÄjams, ir visvairÄk reklamÄtÄ, apspriestÄkÄ, reklamÄtÄ un pÄrprastÄkÄ 2010. gadu tehnoloÄ£ija. No otras puses, tas ir viens no bÅ«tiskÄkajiem iepriekÅ”ÄjÄs desmitgades jauninÄjumiem. DaļÄji visas Ŕīs kakofonijas iemesls ir sajauktie signÄli, kurus mÄs saÅÄmÄm gandrÄ«z no visur. Tagad, kad ažiotÄža ir nedaudz mazinÄjusies, dažas lietas ir nonÄkuÅ”as asÄk.
Konteineri ir kļuvuÅ”i populÄri nevis tÄpÄc, ka tie ir labÄkais veids, kÄ palaist lietojumprogrammu, kas apmierina globÄlÄs izstrÄdÄtÄju kopienas vajadzÄ«bas. Konteineri kļuva populÄri, jo tie veiksmÄ«gi iekļaujas mÄrketinga pieprasÄ«jumÄ par noteiktu rÄ«ku, kas atrisina pavisam citu problÄmu. Docker izrÄdÄ«jÄs fantastisks izstrÄdes rÄ«ks, kas atrisina aktuÄlo saderÄ«bas problÄmu (ādarbojas manÄ maŔīnÄā).
PrecÄ«zÄk, revolÅ«cija tika veikta Docker attÄls, jo tas atrisinÄja paritÄtes problÄmu starp vidÄm un nodroÅ”inÄja patiesu ne tikai lietojumprogrammas faila, bet arÄ« visas tÄ programmatÅ«ras un darbÄ«bas atkarÄ«bu pÄrnesamÄ«bu. Fakts, ka Å”is rÄ«ks kaut kÄdÄ veidÄ veicinÄja ākonteineruā popularitÄti, kas bÅ«tÄ«bÄ ir ļoti zema lÄ«meÅa ievieÅ”anas detaļa, man, iespÄjams, joprojÄm ir pÄdÄjÄs desmitgades galvenais noslÄpums.
Bez serveriem
Es gribÄtu derÄt, ka "bez servera" skaitļoÅ”anas parÄdÄ«Å”anÄs ir vÄl svarÄ«gÄka par konteineriem, jo āātÄ patieÅ”Äm padara sapni par skaitļoÅ”anu pÄc pieprasÄ«juma par realitÄti. (PÄc pieprasÄ«juma). PÄdÄjo piecu gadu laikÄ esmu redzÄjis, ka bezserveru pieeja ir pakÄpeniski paplaÅ”inÄjusies, pievienojot atbalstu jaunÄm valodÄm un izpildlaikiem. Å Ä·iet, ka tÄdu produktu kÄ Azure Durable Functions parÄdÄ«Å”anÄs ir pareizais solis ceÄ¼Ä uz statusa funkciju ievieÅ”anu (tajÄ paÅ”Ä laikÄ izŔķiroÅ”s dažas problÄmassaistÄ«ti ar FaaS ierobežojumiem). Ar interesi vÄroÅ”u, kÄ Å”Ä« jaunÄ paradigma attÄ«stÄ«sies turpmÄkajos gados.
AutomatizÄcija
IespÄjams, lielÄkais ieguvÄjs no Ŕīs tendences ir operÄciju inženieru kopiena, jo tÄ ir ļÄvusi tÄdiem jÄdzieniem kÄ infrastruktÅ«ra kÄ kods (IaC) kļūt par realitÄti. TurklÄt aizrauÅ”anÄs ar automatizÄciju ir sakritusi ar "SRE kultÅ«ras" pieaugumu, kuras mÄrÄ·is ir izmantot vairÄk programmatÅ«ras orientÄtu pieeju darbÄ«bÄm.
UniversÄla API fikcija
VÄl viena interesanta pÄdÄjÄs desmitgades iezÄ«me ir bijusi dažÄdu izstrÄdes uzdevumu API-fikcija. Labas, elastÄ«gas API ļauj izstrÄdÄtÄjam izveidot novatoriskas darbplÅ«smas un rÄ«kus, kas savukÄrt palÄ«dz veikt uzturÄÅ”anu un uzlabo lietotÄja pieredzi.
TurklÄt API fication ir pirmais solis ceÄ¼Ä uz kÄdas funkcionalitÄtes vai rÄ«ka SaaS fication. Å Ä« tendence sakrita arÄ« ar mikropakalpojumu popularitÄtes pieaugumu: SaaS ir kļuvis tikai par vÄl vienu pakalpojumu, kuram var piekļūt, izmantojot API. Tagad ir pieejami daudzi SaaS un FOSS rÄ«ki tÄdÄs jomÄs kÄ uzraudzÄ«ba, maksÄjumi, slodzes lÄ«dzsvaroÅ”ana, nepÄrtraukta integrÄcija, brÄ«dinÄjumi, funkciju pÄrslÄgÅ”ana. (funkciju atzÄ«mÄÅ”ana), CDN, satiksmes inženierija (piemÄram, DNS) u.c., kas ir uzplaukuÅ”i pÄdÄjÄ desmitgadÄ.
NovÄrojamÄ«ba
Ir vÄrts atzÄ«mÄt, ka Å”odien mums ir pieeja daudz progresÄ«vÄks rÄ«ki, lai uzraudzÄ«tu un diagnosticÄtu lietojumprogrammu darbÄ«bu nekÄ jebkad agrÄk. Var saukt par Prometheus monitoringa sistÄmu, kas 2015. gadÄ saÅÄma Open Source statusu vislabÄkais uzraudzÄ«bas sistÄma no tiem, ar kuriem esmu strÄdÄjis. Tas nav ideÄls, bet ievÄrojams skaits lietu ir ieviestas tieÅ”i pareizajÄ veidÄ (piemÄram, atbalsts mÄrÄ«jumiem [dimensionalitÄte] metrikas gadÄ«jumÄ).
IzkliedÄtÄ izsekoÅ”ana bija vÄl viena tehnoloÄ£ija, kas kļuva plaÅ”i izplatÄ«ta 2010. gados, pateicoties tÄdÄm iniciatÄ«vÄm kÄ OpenTracing (un tÄs pÄcteci OpenTelemetry). Lai gan izsekoÅ”anu joprojÄm ir diezgan grÅ«ti piemÄrot, daži no jaunÄkajiem sasniegumiem ļauj cerÄt, ka 2020. gados mÄs atraisÄ«sim tÄs patieso potenciÄlu. (PiezÄ«me: lasiet arÄ« mÅ«su emuÄrÄ raksta tulkojumu "IzplatÄ«ta izsekoÅ”ana: mÄs to visu izdarÄ«jÄm nepareizi"tÄ paÅ”a autora.)
Skatoties nÄkotnÄ
DiemžÄl ir daudz sÄpju punktu, kas gaida atrisinÄjumu nÄkamajÄ desmitgadÄ. Å eit ir manas domas par tiem un dažas iespÄjamÄs idejas, kÄ no tiem atbrÄ«voties.
MÅ«ra likuma problÄmas risinÄÅ”ana
Denarda mÄrogoÅ”anas likuma beigas un atpalicÄ«ba no MÅ«ra likuma prasa jaunus jauninÄjumus. Džons Hennessijs iekÅ”Ä viÅa lekcija izskaidro, kÄpÄc problemÄtiskie atkarÄ«gie (konkrÄts domÄns) arhitektÅ«ras, piemÄram, TPU, var bÅ«t viens no risinÄjumiem problÄmai, kas saistÄ«ta ar atpalicÄ«bu no MÅ«ra likuma. Instrumentu komplekti, piemÄram MLIR Å Ä·iet, ka Google jau ir labs solis uz priekÅ”u Å”ajÄ virzienÄ:
Kompilatoriem ir jÄatbalsta jaunas lietojumprogrammas, jÄbÅ«t viegli pÄrnÄsÄtiem uz jaunu aparatÅ«ru, jÄsaista vairÄki abstrakcijas slÄÅi, sÄkot no dinamiskÄm, pÄrvaldÄ«tÄm valodÄm lÄ«dz vektoru paÄtrinÄtÄjiem un programmatÅ«ras kontrolÄtÄm atmiÅas ierÄ«cÄm, vienlaikus nodroÅ”inot augsta lÄ«meÅa slÄdžus automÄtiskai regulÄÅ”anai, nodroÅ”inot tikai funkcionalitÄtÄ - laiks, diagnostika un atkļūdoÅ”anas informÄcijas izplatÄ«Å”ana par sistÄmu darbÄ«bu un veiktspÄju visÄ stekÄ, vienlaikus nodroÅ”inot veiktspÄju, kas ir pietiekami tuvu ar roku rakstÄ«tam montÄtÄjam. MÄs plÄnojam dalÄ«ties ar savu redzÄjumu, progresu un plÄniem Å”Ädas apkopoÅ”anas infrastruktÅ«ras attÄ«stÄ«bai un publiskai pieejamÄ«bai.
CI / CD
Lai gan KI pieaugums ir kļuvis par vienu no lielÄkajÄm tendencÄm 2010. gados, Dženkinss joprojÄm ir KI zelta standarts.
Å ai telpai ir ļoti nepiecieÅ”ami jauninÄjumi Å”ÄdÄs jomÄs:
ievieÅ”anas detaļas, kas padarÄ«s to patiesi mÄrogojamu un Ätru;
integrÄcija ar dažÄdÄm vidÄm (inscenÄjums, prod. utt.), lai ieviestu progresÄ«vÄkas testÄÅ”anas formas;
nepÄrtraukta testÄÅ”ana un izvietoÅ”ana.
IzstrÄdÄtÄja rÄ«ki
KÄ nozare mÄs esam sÄkuÅ”i veidot arvien sarežģītÄku un iespaidÄ«gÄku programmatÅ«ru. TomÄr, runÄjot par mÅ«su paÅ”u rÄ«kiem, situÄcija varÄtu bÅ«t daudz labÄka.
SadarbÄ«ba un attÄlÄ (izmantojot ssh) rediÄ£ÄÅ”ana ieguva zinÄmu popularitÄti, taÄu tÄ nekad nekļuva par jauno standarta izstrÄdes veidu. Ja jÅ«s, tÄpat kÄ es, noraidÄt paÅ”u ideju par nepiecieÅ”amÄ«ba pastÄvÄ«gs savienojums ar internetu tikai, lai varÄtu veikt programmÄÅ”anu, tad darbs ar ssh attÄlÄ maŔīnÄ diez vai jums derÄs.
VietÄjÄs izstrÄdes vide, Ä«paÅ”i inženieriem, kas strÄdÄ pie lielÄm uz pakalpojumiem orientÄtÄm arhitektÅ«rÄm, joprojÄm ir izaicinÄjums. Daži projekti cenÅ”as to atrisinÄt, un man bÅ«tu interesanti uzzinÄt, kÄ konkrÄtajÄ lietoÅ”anas gadÄ«jumÄ izskatÄ«tos ergonomiskÄkais UX.
BÅ«tu arÄ« interesanti paplaÅ”inÄt "portatÄ«vÄs vides" jÄdzienu uz citÄm attÄ«stÄ«bas jomÄm, piemÄram, kļūdu pavairoÅ”anu (vai pÄrslveida testi), kas notiek noteiktos apstÄkļos vai iestatÄ«jumos.
Es arÄ« vÄlÄtos redzÄt vairÄk jauninÄjumu tÄdÄs jomÄs kÄ semantiskÄ un kontekstjutÄ«gÄ koda meklÄÅ”ana, rÄ«ki ražoÅ”anas incidentu korelÄÅ”anai ar noteiktÄm kodu bÄzes daļÄm utt.
Datortehnika (PaaS nÄkotne)
PÄc 2010. gadu ažiotÄžas par konteineriem un bezserveriem risinÄjumu klÄsts publiskajÄ mÄkoÅtelpÄ pÄdÄjos gados ir ievÄrojami paplaÅ”inÄjies.
Tas rada vairÄkus interesantus jautÄjumus. PirmkÄrt, pieejamo opciju saraksts publiskajÄ mÄkonÄ« nepÄrtraukti pieaug. MÄkoÅpakalpojumu sniedzÄjiem ir personÄls un resursi, lai viegli sekotu lÄ«dzi jaunÄkajiem notikumiem atvÄrtÄ pirmkoda pasaulÄ un izlaistu tÄdus produktus kÄ "bez servera podi" (man ir aizdomas, ka tie ir vienkÄrÅ”i padarot savus FaaS izpildlaikus saderÄ«gus ar OCI) vai citas lÄ«dzÄ«gas lietas.
Var tikai apskaust tos, kuri izmanto Å”os mÄkoÅrisinÄjumus. TeorÄtiski Kubernetes mÄkoÅa piedÄvÄjumi (GKE, EKS, EKS vietnÄ Fargate u.c.) nodroÅ”ina no mÄkoÅpakalpojumu sniedzÄja neatkarÄ«gas API darba slodzÄm. Ja izmantojat lÄ«dzÄ«gus produktus (ECS, Fargate, Google Cloud Run u.c.), iespÄjams, jÅ«s jau pilnÄ«bÄ izmantojat interesantÄkÄs pakalpojuma sniedzÄja piedÄvÄtÄs iespÄjas. TurklÄt, parÄdoties jauniem produktiem vai skaitļoÅ”anas paradigmÄm, migrÄcija, visticamÄk, bÅ«s vienkÄrÅ”a un bez stresa.
Å emot vÄrÄ to, cik Ätri attÄ«stÄs Å”Ädu risinÄjumu klÄsts (bÅ«Å”u ļoti pÄrsteigts, ja tuvÄkajÄ laikÄ neparÄdÄ«sies pÄris jaunas iespÄjas), nelielas āplatformuā komandas (komandas, kas saistÄ«tas ar infrastruktÅ«ru un atbildÄ«gas par lokÄlo platformu izveidi darba slodzes uzÅÄmumiem) bÅ«s neticami grÅ«ti konkurÄt funkcionalitÄtes, lietoÅ”anas vienkÄrŔības un vispÄrÄjÄs uzticamÄ«bas ziÅÄ. 2010. gados Kubernetes tika uzskatÄ«ts par rÄ«ku PaaS (platform-as-a-service) veidoÅ”anai, tÄpÄc man Ŕķiet pilnÄ«gi bezjÄdzÄ«gi Kubernetes virsotnÄ veidot iekÅ”Äjo platformu, kas piedÄvÄ tÄdu paÅ”u izvÄli, vienkÄrŔību un brÄ«vÄ«bu, kas pieejama publiski. mÄkoÅa telpa. Konteineru PaaS ierÄmÄÅ”ana kÄ āKubernetes stratÄÄ£ijaā nozÄ«mÄ apzinÄtu izvairÄ«Å”anos no mÄkoÅa visnovatoriskÄkajÄm iespÄjÄm.
Ja paskatÄs uz pieejamo Å”odien skaitļoÅ”anas iespÄjas, kļūst acÄ«mredzams, ka sava PaaS izveide, pamatojoties tikai uz Kubernetes, ir lÄ«dzvÄrtÄ«ga sevis iekrÄsoÅ”anai stÅ«rÄ« (nav ļoti tÄlredzÄ«ga pieeja, vai ne?). Pat ja kÄds Å”odien nolems izveidot konteinerizÄtu PaaS uz Kubernetes, pÄc pÄris gadiem tas izskatÄ«sies novecojis salÄ«dzinÄjumÄ ar mÄkoÅa iespÄjÄm. Lai gan Kubernetes sÄkÄs kÄ atvÄrtÄ pirmkoda projekts, tÄ priekÅ”tecis un iedvesma ir iekÅ”Äjs Google rÄ«ks. TomÄr sÄkotnÄji tas tika izstrÄdÄts 2000. gadu sÄkumÄ/vidÅ«, kad skaitļoÅ”anas ainava bija pilnÄ«gi atŔķirÄ«ga.
TurklÄt ļoti plaÅ”Ä nozÄ«mÄ uzÅÄmumiem nav jÄkļūst par Kubernetes klastera vadÄ«Å”anas ekspertiem, kÄ arÄ« tie neveido un uztur savus datu centrus. Uzticama skaitļoÅ”anas pamata nodroÅ”inÄÅ”ana ir galvenais izaicinÄjums mÄkoÅpakalpojumu sniedzÄji.
Visbeidzot, man Ŕķiet, ka mÄs esam mazliet atkÄpuÅ”ies kÄ nozare mijiedarbÄ«bas pieredze (UX). Heroku tika palaists 2007. gadÄ un joprojÄm ir viens no visvairÄk viegli izmantot platformas. Nevar noliegt, ka Kubernetes ir daudz jaudÄ«gÄks, paplaÅ”inÄms un programmÄjamÄks, taÄu man pietrÅ«kst, cik viegli ir sÄkt un izvietot Heroku. Lai izmantotu Å”o platformu, jums ir jÄzina tikai Git.
Tas viss liek man izdarÄ«t Å”Ädu secinÄjumu: mums ir vajadzÄ«gas labÄkas, augstÄka lÄ«meÅa abstrakcijas, lai darbotos (tas jo Ä«paÅ”i attiecas uz augstÄkÄ lÄ«meÅa abstrakcijas).
Pareiza API visaugstÄkajÄ lÄ«menÄ«
Docker ir lielisks piemÄrs tam, ka vienlaikus ir nepiecieÅ”ams labÄk nodalÄ«t bažas augstÄkÄ lÄ«meÅa API pareiza ievieÅ”ana.
ProblÄma ar Docker ir tÄda, ka (vismaz) sÄkotnÄji projekta mÄrÄ·i bija pÄrÄk plaÅ”i: tas viss, lai atrisinÄtu saderÄ«bas problÄmu (ādarbojas manÄ maŔīnÄā), izmantojot konteineru tehnoloÄ£iju. Docker bija attÄla formÄts, izpildlaiks ar savu virtuÄlo tÄ«klu, CLI rÄ«ku, dÄmonu, kas darbojas kÄ root, un daudz ko citu. KatrÄ ziÅÄ ziÅu apmaiÅa bija vairÄk mulsinoÅ”as, nemaz nerunÄjot par "vieglajÄm virtuÄlajÄm maŔīnÄm", cgrupÄm, nosaukumvietÄm, daudzÄm droŔības problÄmÄm un lÄ«dzekļiem, kas sajaukti ar mÄrketinga aicinÄjumu "veidot, piegÄdÄt, palaist jebkuru lietojumprogrammu jebkur".
TÄpat kÄ ar visÄm labajÄm abstrakcijÄm, ir vajadzÄ«gs laiks (un pieredze un sÄpes), lai sadalÄ«tu dažÄdas problÄmas loÄ£iskos slÄÅos, kurus var apvienot savÄ starpÄ. DiemžÄl, pirms Docker bija sasniedzis lÄ«dzÄ«gu briedumu, Kubernetes iesaistÄ«jÄs cÄ«ÅÄ. Tas tik ļoti monopolizÄja ažiotÄžu ciklu, ka tagad visi centÄs sekot izmaiÅÄm Kubernetes ekosistÄmÄ, un konteineru ekosistÄma ieguva sekundÄru statusu.
Kubernetes ir daudzas tÄdas paÅ”as problÄmas kÄ Docker. Par visÄm runÄm par forÅ”o un saliekamo abstrakciju, dažÄdu uzdevumu sadalÄ«Å”ana slÄÅos nav ļoti labi iekapsulÄts. SavÄ pamatÄ tas ir konteineru orÄ·estrÄtÄjs, kas vada konteinerus uz dažÄdu iekÄrtu kopas. Tas ir diezgan zema lÄ«meÅa uzdevums, kas attiecas tikai uz inženieriem, kas pÄrvalda klasteru. No otras puses, Kubernetes arÄ« ir augstÄkÄ lÄ«meÅa abstrakcija, CLI rÄ«ks, ar kuru lietotÄji mijiedarbojas, izmantojot YAML.
Dokers bija (un joprojÄm ir) forÅ”i izstrÄdes rÄ«ks, neskatoties uz visiem tÄ trÅ«kumiem. MÄÄ£inot sekot lÄ«dzi visiem āzaÄ·iemā uzreiz, tÄ izstrÄdÄtÄjiem izdevÄs pareizi ieviest abstrakcija augstÄkajÄ lÄ«menÄ«. Ar abstrakciju augstÄkajÄ lÄ«menÄ« es domÄju apakÅ”kopa funkcionalitÄte, kas mÄrÄ·auditoriju (Å”ajÄ gadÄ«jumÄ izstrÄdÄtÄjus, kuri lielÄko daļu laika pavadÄ«ja vietÄjÄ attÄ«stÄ«bas vidÄ) patieÅ”Äm interesÄja un kas darbojÄs lieliski..
Dockerfile un CLI utilÄ«ta docker vajadzÄtu bÅ«t paraugam, kÄ izveidot labu āaugstÄkÄ lÄ«meÅa lietotÄja pieredziā. Parasts izstrÄdÄtÄjs var sÄkt strÄdÄt ar Docker, neko nezinot par sarežģījumiem ievieÅ”anas, kas veicina darbÄ«bas pieredzipiemÄram, nosaukumvietas, cgroups, atmiÅas un CPU ierobežojumi utt. Galu galÄ Dockerfile rakstÄ«Å”ana daudz neatŔķiras no Äaulas skripta rakstÄ«Å”anas.
Kubernetes ir paredzÄts dažÄdÄm mÄrÄ·a grupÄm:
klasteru administratori;
programmatÅ«ras inženieri, kas strÄdÄ pie infrastruktÅ«ras jautÄjumiem, paplaÅ”inot Kubernetes iespÄjas un veidojot uz tÄs bÄzes platformas;
galalietotÄji, kas mijiedarbojas ar Kubernetes, izmantojot kubectl.
Kubernetes pieeja "viena API der visiem" ir nepietiekami iekapsulÄts "sarežģītÄ«bas kalns" bez norÄdÄm, kÄ to mÄrogot. Tas viss noved pie nepamatoti ieilguÅ”as mÄcÄ«Å”anÄs trajektorijas. KÄ raksta Ädams Džeikobs: āDokeris sniedza pÄrveidojoÅ”u lietotÄja pieredzi, kas nekad nav pÄrspÄta. PajautÄjiet ikvienam, kurÅ” izmanto K8, vai viÅi vÄlas, lai tas darbotos tÄpat kÄ pirmais docker run. Atbilde bÅ«s jÄ":
Es iebilstu, ka lielÄkÄ daļa infrastruktÅ«ras tehnoloÄ£iju mÅ«sdienÄs ir pÄrÄk zema lÄ«meÅa (un tÄpÄc tiek uzskatÄ«tas par "pÄrÄk sarežģītÄm"). Kubernetes tiek ieviests diezgan zemÄ lÄ«menÄ«. IzplatÄ«ta izsekoÅ”ana tajÄ paÅ”reizÄjÄ forma (daudz laidumu, kas saŔūti kopÄ, lai izveidotu traceview) arÄ« ir ieviests pÄrÄk zemÄ lÄ«menÄ«. IzstrÄdÄtÄju rÄ«ki, kas Ä«steno āaugstÄkÄ lÄ«meÅa abstrakcijasā, parasti ir visveiksmÄ«gÄkie. Å is secinÄjums ir spÄkÄ pÄrsteidzoÅ”i daudzos gadÄ«jumos (ja tehnoloÄ£ija ir pÄrÄk sarežģīta vai grÅ«ti lietojama, tad Ŕīs tehnoloÄ£ijas āaugstÄkÄ lÄ«meÅa API/UIā vÄl ir jÄatklÄj).
PaÅ”laik mÄkoÅa vietÄjÄ ekosistÄma ir mulsinoÅ”a tÄs zemÄ lÄ«meÅa fokusa dÄļ. KÄ nozarei mums ir jÄievieÅ” jauninÄjumi, jÄeksperimentÄ un jÄizglÄ«to, kÄ izskatÄs pareizais āmaksimÄlÄs, augstÄkÄs abstrakcijasā lÄ«menis.
Mazumtirdzniecība
2010. gados digitÄlÄs mazumtirdzniecÄ«bas pieredze lielÄkoties nemainÄ«jÄs. No vienas puses, tieÅ”saistes iepirkÅ”anÄs vieglumam vajadzÄja skart tradicionÄlos mazumtirdzniecÄ«bas veikalus, no otras puses, iepirkÅ”anÄs tieÅ”saistÄ bÅ«tÄ«bÄ ir palikusi gandrÄ«z nemainÄ«ga desmit gadu laikÄ.
Lai gan man nav konkrÄtu domu par to, kÄ Å”Ä« nozare attÄ«stÄ«sies nÄkamajÄ desmitgadÄ, es bÅ«tu ļoti vÄ«lies, ja 2030. gadÄ iepirktos tÄpat kÄ 2020. gadÄ.
ŽurnÄlistika
Esmu arvien vairÄk vÄ«lies globÄlÄs žurnÄlistikas stÄvoklÄ«. Kļūst arvien grÅ«tÄk atrast objektÄ«vus ziÅu avotus, kas ziÅotu objektÄ«vi un rÅ«pÄ«gi. Ä»oti bieži robeža starp paÅ”u ziÅÄm un viedokļiem par tÄm ir izplÅ«dusi. Parasti informÄcija tiek sniegta neobjektÄ«vi. Tas jo Ä«paÅ”i attiecas uz dažÄm valstÄ«m, kur vÄsturiski ziÅas un viedoklis nav noŔķirtas. NesenajÄ rakstÄ, kas publicÄts pÄc pÄdÄjÄm ApvienotÄs Karalistes vispÄrÄjÄm vÄlÄÅ”anÄm, bijuÅ”ais The Guardian redaktors Alans Rusbridžers raksta:
Galvenais ir tas, ka es daudzus gadus skatÄ«jos amerikÄÅu avÄ«zes un man bija žÄl tur esoÅ”o kolÄÄ£u, kuri bija tikai un vienÄ«gi atbildÄ«gi par ziÅÄm, atstÄjot komentÄrus pavisam citiem cilvÄkiem. TomÄr laika gaitÄ Å¾Älums pÄrvÄrtÄs skaudÄ«bÄ. Tagad es domÄju, ka visiem LielbritÄnijas nacionÄlajiem laikrakstiem ir jÄnodala atbildÄ«ba par ziÅÄm no atbildÄ«bas par komentÄriem. DiemžÄl vidusmÄra lasÄ«tÄjam, it Ä«paÅ”i tieÅ”saistes lasÄ«tÄjiem, ir pÄrÄk grÅ«ti saskatÄ«t atŔķirÄ«bu.
Å emot vÄrÄ SilÄ«cija ielejas diezgan apÅ”aubÄmo reputÄciju, kad runa ir par Ätiku, es nekad neuzticÄtu tehnoloÄ£ijÄm žurnÄlistikas "revolÅ«ciju". To sakot, es (un daudzi mani draugi) priecÄtos, ja bÅ«tu objektÄ«vs, neieinteresÄts un uzticams ziÅu avots. Lai gan man nav ne jausmas, kÄ Å”Äda platforma varÄtu izskatÄ«ties, esmu pÄrliecinÄts, ka laikmetÄ, kurÄ patiesÄ«bu kļūst arvien grÅ«tÄk saskatÄ«t, vajadzÄ«ba pÄc godÄ«gas žurnÄlistikas ir lielÄka nekÄ jebkad agrÄk.
SociÄlie tÄ«kli
SociÄlie mediji un kopienas ziÅu platformas ir galvenais informÄcijas avots daudziem cilvÄkiem visÄ pasaulÄ, un dažu platformu neprecizitÄtes un nevÄlÄÅ”anÄs veikt pat elementÄru faktu pÄrbaudi ir izraisÄ«juÅ”as tÄdas postoÅ”as āāsekas kÄ genocÄ«ds, iejaukÅ”anÄs vÄlÄÅ”anÄs un citas. .
SociÄlie mediji ir arÄ« visspÄcÄ«gÄkais mediju rÄ«ks, kÄds jebkad pastÄvÄjis. ViÅi radikÄli mainÄ«ja politisko praksi. ViÅi mainÄ«ja reklÄmu. ViÅi mainÄ«ja popkultÅ«ru (piemÄram, galvenais ieguldÄ«jums tÄ sauktÄs atcelÅ”anas kultÅ«ras attÄ«stÄ«bÄ [ostracisma kultÅ«ras - apm. tulk.] sociÄlie tÄ«kli sniedz ieguldÄ«jumu). KritiÄ·i apgalvo, ka sociÄlie mediji ir izrÄdÄ«juÅ”ies labvÄlÄ«ga augsne straujÄm un kaprÄ«zÄm morÄlo vÄrtÄ«bu izmaiÅÄm, taÄu tie ir arÄ« nodroÅ”inÄjuÅ”i marginalizÄtu grupu locekļiem iespÄju organizÄties tÄ, kÄ viÅiem nekad agrÄk nebija. BÅ«tÄ«bÄ sociÄlie mediji XNUMX. gadsimtÄ ir mainÄ«juÅ”i veidu, kÄ cilvÄki sazinÄs un izsaka sevi.
TomÄr es arÄ« uzskatu, ka sociÄlie mediji izceļ vissliktÄkos cilvÄka impulsus. ApsvÄrtÄ«ba un pÄrdomÄtÄ«ba bieži tiek atstÄta novÄrtÄ par labu popularitÄtei, un kļūst gandrÄ«z neiespÄjami izteikt argumentÄtu nepiekriÅ”anu noteiktiem viedokļiem un nostÄdnÄm. PolarizÄcija bieži kļūst nekontrolÄjama, kÄ rezultÄtÄ sabiedrÄ«ba vienkÄrÅ”i nedzird individuÄlos viedokļus, kamÄr absolÅ«tisti kontrolÄ tieÅ”saistes etiÄ·etes un pieÅemamÄ«bas jautÄjumus.
Interesanti, vai ir iespÄjams izveidot ālabÄkuā platformu, kas veicinÄtu kvalitatÄ«vÄkas diskusijas? Galu galÄ tieÅ”i tas, kas veicina āiesaistÄ«Å”anosā, Ŕīm platformÄm bieži vien nes galveno peļÅu. KÄ raksta Kara Swisher laikrakstÄ New York Times:
Ir iespÄjams attÄ«stÄ«t digitÄlo mijiedarbÄ«bu, neizraisot naidu un neiecietÄ«bu. Iemesls, kÄpÄc lielÄkÄ daļa sociÄlo mediju vietÅu Ŕķiet tik toksiskas, ir tÄpÄc, ka tÄs tika izveidotas Ätrumam, viralitÄtei un uzmanÄ«bai, nevis saturam un precizitÄtei.
BÅ«tu patiesi žÄl, ja pÄris gadu desmitu laikÄ vienÄ«gais sociÄlo mediju mantojums bÅ«tu nianÅ”u un atbilstÄ«bas erozija publiskajÄ diskursÄ.