Programavimas

11 programavimo ateities prognozių

Vienintelis dalykas, kuris skrenda greičiau nei laikas, yra technologijų pažanga. Kartą po pietų lustą kuriantis draugas greitai pasiteisino mikliai paaiškindamas, kad Moore'o įstatymas reiškia, kad jis net atostogaudamas kiekvieną savaitę turėjo priversti savo lustą rinktis 0,67 proc. Jei jis to nedarytų, žetonų greitis nepadidėtų kas dvejus metus.

Dabar, kai atėjo 2017 m., Atėjo laikas įvertinti būsimus technologinius pokyčius, kad tik padėtumėte žinoti, kur atlikti savo statymus kuriant ateities programavimo įgūdžius.

Programavimo ateitis vis sunkiau nuspėjama nuo vis didėjančio daiktų interneto saugumo galvos skausmo iki mašininio mokymosi.

Debesis nugalės Moore'o įstatymą

Yra nedaugelio teigiančių, kad mikroschemų kompanijos atsitrenkė į sieną. Jie nebedubliuoja lusto greičio kas dvejus metus, kaip tai padarė per 80-ojo ir 90-ojo dešimtmečius. Galbūt - bet tai nebesvarbu, nes ribos tarp žetonų yra mažiau apibrėžtos nei bet kada.

Anksčiau procesoriaus greitis, esantis ant jūsų stalo esančio langelio, buvo svarbus, nes gerai, jūs galėjote eiti tik tiek greitai, kiek viduje esantis silicio žiurkėnas galėjo sukti ratą. Kas kelerius metus perkant didesnį, greitesnį žiurkėną, jūsų produktyvumas taip pat padvigubėjo.

Tačiau dabar ant jūsų stalo esantis procesorius ekrane beveik nerodo informacijos. Didžioji dalis darbo atliekama debesyje, kur nėra aišku, kiek žiurkėnų dirba jūsų darbą. Kai ieškote „Google“, jų didžiulis debesis gali skirti 10, 20 ar net 1 000 žiurkėnų, kad surastumėte sau tinkamą atsakymą.

Programuotojų uždavinys yra rasti protingų būdų, kaip elastingai panaudoti tik tiek skaičiavimo galių kiekvieno vartotojo problemai, kad sprendimas būtų pakankamai greitas, o vartotojui nenuobodžiaujant ir nenuklystant į konkurentų svetainę. Yra daug energijos. Debesų kompanijos leis jums susidoroti su daugybe vartotojų, bet jūs turite rasti algoritmus, kurie lengvai veikia lygiagrečiai, tada pasirūpinkite, kad serveriai veiktų sinchroniškai.

DI saugumas bus tik baisesnis

Praėjusį rudenį atsiskleidęs „Mirai“ botnetas buvo pažadinimas programuotojams, kurie kuria naujos kartos daiktų internetą. Šie protingi maži prietaisai gali būti užkrėsti kaip ir bet kuris kitas kompiuteris, ir jie gali naudoti savo interneto ryšį, kad sukeltų sumaištį ir leistų paslysti karo šunims. Ir kaip visi žino, šunys gali apsimesti bet kuo internete.

Bėda ta, kad dabartinėje programėlių tiekimo grandinėje nėra jokio programinės įrangos taisymo mechanizmo. Programėlės gyvavimo ciklas paprastai prasideda ilgąja kelione iš gamyklos į sandėlį ir galiausiai pas vartotoją. Tai nėra įprasta, kad tarp surinkimo ir pirmo naudojimo atsiskleidžia iki 10 mėnesių. Programėlės per tuos ilgus, užsitęsusius mėnesius yra išsiunčiamos pusiaukelėje visame pasaulyje. Jie sėdi dėžėse ir laukia gabenimo konteineriuose. Tada jie sėdi ant padėklų didelėse dėžėse ar sandėliuose. Kol jie bus išpakuoti, jiems viskas galėjo atsitikti.

Iššūkis yra viso to stebėjimas. Pakankamai sunku atnaujinti dūmų detektorių baterijas kiekvieną kartą keičiantis laikrodžiams. Bet dabar mes turėsime pasidomėti apie mūsų skrudintuvą, drabužių džiovyklę ir beveik viską namuose. Ar programinė įranga atnaujinta? Ar buvo pritaikyti visi saugos pleistrai? Dėl įrenginių skaičiaus sunku atlikti protingą namų tinklo stebėjimą. Prie mano belaidžio kelvedžio yra prijungta daugiau nei 30 įrenginių su IP adresais, ir aš žinau tik 24 iš jų tapatybę. Jei norėčiau išlaikyti išmaniąją užkardą, norėčiau atverti tinkamus prievadus tinkamiems protingiems dalykams.

Suteikti šiems įrenginiams galimybę paleisti savavališką kodą yra palaima ir prakeiksmas. Jei programuotojai nori atlikti sumanias užduotis ir leisti vartotojams kuo daugiau lankstumo, platformos turėtų būti atviros. Taip klesti kūrėjų revoliucija ir atviro kodo kūrybiškumas. Bet tai taip pat suteikia virusų rašytojams daugiau galimybių nei bet kada anksčiau. Viskas, ką jiems reikia padaryti, yra rasti vieną prekės ženklo valdiklį, kuris neatnaujino konkretaus tvarkyklės - voilà, jie rado milijonus valdiklių, paruoštų talpinti robotus.

Vaizdo įrašai dominuos žiniatinklyje naujais būdais

Kai HTML standartų komitetas pradėjo įterpti vaizdo žymes į patį HTML, jie tikriausiai neturėjo didelių pramogų perdarymo planų. Jie tikriausiai norėjo išspręsti tik įskiepių nesklandumus. Tačiau pagrindinės vaizdo žymos reaguoja į „JavaScript“ komandas ir tai iš esmės jas programuoja.

Tai didelis pokytis. Anksčiau dauguma vaizdo įrašų buvo vartojami labai pasyviai. Atsisėdi prie sofos, paspaudi paleidimo mygtuką ir pamatai, ką vaizdo įrašo redaktorius nusprendė pamatyti. Visi, žiūrėdami tą katės vaizdo įrašą, mato kates ta pačia seka, kurią nusprendė kačių vaizdo įrašo kūrėjas. Aišku, keli greiti pirmyn, bet vaizdo įrašai daro išvadą taip reguliariai, kaip Šveicarijos traukiniai.

„JavaScript“ vaizdo įrašų valdymas yra ribotas, tačiau slidžiausi interneto dizaineriai sugalvoja sumanius būdus, kaip integruoti vaizdo įrašą į likusį tinklalapį vientisoje drobėje. Tai atveria galimybę vartotojui kontroliuoti pasakojimo raidą ir sąveikauti su vaizdo įrašu. Niekas negali būti tikras, ką įsivaizduos rašytojai, menininkai ir redaktoriai, tačiau jiems reikės programavimo talentų, kad tai įvyktų.

Daugelyje slidžiausių svetainių vaizdo įrašai jau gerai veikia protingose ​​vietose. Netrukus jie visi norės judančių daiktų. Neužteks įdėti IMG žymą su JPEG failu. Turėsite patraukti vaizdo įrašą ir išspręsti standartų problemas, kurios suskaidė naršyklės pasaulį.

Pultai ir toliau keis kompiuterius

Sunku pykti ant žaidimų konsolių. Žaidimai yra puikūs, o grafika - nuostabi. Jie sukūrė puikias vaizdo plokštes ir gana stabilias programinės įrangos platformas, kad galėtume atsipalaiduoti svetainėje ir svajoti apie blogų vaikinų šaudymą ar futbolo mėtymą.

Svetainės konsolės yra tik pradžia. Likusių namų daiktų kūrėjai eina tuo pačiu keliu. Jie galėjo pasirinkti atviro kodo ekosistemą, tačiau gamintojai kuria savo uždaras platformas.

Tai suskaido rinką ir apsunkina programuotojus, kad viskas būtų tiesiai. Tai, kas veikia vienu šviesos jungikliu, neveikia kitu. Plaukų džiovintuvas gali kalbėti tuo pačiu protokolu kaip ir skrudintuvas, bet tikriausiai nebus. Tai daugiau darbo programuotojams, norint įsibėgėti, ir mažiau galimybių pakartotinai panaudoti mūsų darbą.

Duomenys liks karaliumi

Po 2016 m. JAV prezidento rinkimų žodžių šaudymo specialistai šaipėsi iš duomenų smaigalių ekspertų, o tai rodo, kad visa jų statistinė analizė buvo kvailystės pratimas. Spėjimai buvo dramatiškai neteisingi, o didelių duomenų žmonės atrodė blogai.

Kaip jie padarė tokią išvadą? Lyginant vieną skaičių rinkinį (prognozes) su kitais skaičių rinkiniais (rinkimų rezultatus). Jiems vis tiek reikėjo duomenų.

Duomenys yra tokie, kokius matome internete. Šviesa suteikia mums informacijos apie realų pasaulį, tačiau skaičiai pasakoja apie viską internete. Kai kurie žmonės gali neteisingai prognozuoti pagal netobulus skaičius, tačiau tai nereiškia, kad turėtume nustoti rinkti ir aiškinti skaičius.

Duomenų rinkimas, kaupimas, tvarkymas ir analizavimas ir toliau bus vienas iš svarbiausių įmonės darbų. Sprendimų priėmėjams reikalingi numeriai, o programuotojams ir toliau bus pavesta pateikti duomenis lengviau suprantamu būdu. Tai nereiškia, kad atsakymai bus tobuli. Kontekstas ir intuicija ir toliau vaidins savo vaidmenį, tačiau poreikis susigrumti duomenis neišnyks vien todėl, kad keli žmonės numatė, kad Donaldas Trumpas nebus išrinktas. Tai reiškia daugiau darbo programuotojams, nes nėra poreikio kurti didesnę, spartesnę ir daug duomenų reikalaujančią programinę įrangą.

Mašininis mokymasis taps nauja standartine funkcija

Kai koledžo vaikai lanko kursą „Duomenų struktūros“, jie sužino, koks buvo gyvenimas, kai jų seneliai parašė kodą ir negalėjo priklausyti nuo sluoksnio, vadinamo „duomenų baze“, egzistavimo. Tikri programuotojai turėjo saugoti, rūšiuoti ir prisijungti prie duomenų lentelių, neturinčių „Oracle“, „MySQL“ ar „MongoDB“.

Mašininio mokymosi algoritmai yra per kelerius metus nuo šuolio. Šiuo metu programuotojai ir duomenų mokslininkai, norėdami atlikti kompleksinę analizę, turi parašyti daug savo kodo. Netrukus tokios kalbos kaip R ir kai kurie išmaniausi verslo žvalgybos įrankiai nustos būti specialūs ir pradės būti įprasta funkcija daugumoje programinės įrangos paketų. Jie bus nuo keturių ar penkių specialių skaidrių „PowerPoint“ pardavimo denyje iki mažo stačiakampio architektūros piešinyje, kuris yra savaime suprantamas dalykas.

Tai neįvyks per naktį, ir tiksliai nėra aišku, kokia ji bus forma, tačiau akivaizdu, kad vis daugiau verslo planų priklauso nuo to, ar mašininio mokymosi algoritmai randa geriausius sprendimus.

Vartotojo sąsajos dizainas taps sudėtingesnis, nes kompiuteriai ir toliau blėsta

Kiekvieną dieną atrodo, kad yra viena priežastis, kodėl galite naudoti kompiuterį. Tarp išmaniųjų telefonų, svetainių konsolių ir planšetinių kompiuterių populiarumo vis dar atrodo, kad vieninteliai žmonės, kurie vis dar laikosi kompiuterių, yra biuro darbuotojai ir studentai, kuriems reikia atlikti užduotį.

Tai gali būti iššūkis programuotojams. Anksčiau buvo lengva manyti, kad programinės įrangos ar svetainės vartotojai turės klaviatūrą ir pelę. Dabar daugelis vartotojų taip pat neturi. Išmaniųjų telefonų vartotojai trina pirštus į stiklinį ekraną, kuriame vos telpa visos 26 raidės. Pulto vartotojai stumia rodyklių klavišus nuotolinio valdymo pulte.

Svetainių kūrimas tampa vis sudėtingesnis, nes prisilietimo įvykis šiek tiek skiriasi nuo paspaudimo įvykio. Vartotojai turi skirtingą tikslumą, o ekranai labai skiriasi. Išlaikyti viską tiesiai nėra lengva, o ateinančiais metais tai tik blogės.

Atvirumo pabaiga

Kompiuterio perdavimas nėra tik lėta tam tikros formos faktoriaus mirtis. Tai miršta dėl ypač atviros ir svetingos rinkos. PC mirtis bus galimybių uždarymas.

Kai pirmą kartą buvo pristatyti asmeniniai kompiuteriai, programuotojas galėjo surinkti kodą, nukopijuoti jį į diskus, įdėti tuos diskus į „ziplock“ maišelius ir pasaulis galėjo jį nusipirkti. Nebuvo nei vidutinio žmogaus, nei vartininko, nei griežtos centrinės jėgos, prašiusios mūsų pasakyti: „Motina, gal aš?“

Pultai yra tvirtai užfiksuoti. Niekas į tą turgų nepatenka be kapitalo investicijų. Programų parduotuvės yra šiek tiek atviresnės, tačiau jos vis dar yra sienomis apaugę sodai, kurie riboja tai, ką galime padaryti. Aišku, jie vis dar atviri programuotojams, kurie šokinėja per reikiamus ratus, tačiau visus, kurie padaro klaidingą žingsnį, galima mesti. (Kažkaip jie visada atideda mūsų programas, kol kenkia kenkėjiškos programos. Eik, pavaizduok.)

Šis skirtumas yra svarbus atvirojo kodo atveju. Tai ne tik diskelių pardavimas maišeliuose. Prarandame galimybę dalytis kodu, nes prarandame galimybę kaupti ir valdyti kodą. Kompiuterio pabaiga yra didelė atvirumo pabaigos dalis. Kol kas dauguma žmonių, skaitantys tai, tikriausiai turi padorų darbalaukį, galintį kompiliuoti ir paleisti kodą, tačiau tai lėtai keičiasi.

Mažiau žmonių turi galimybę parašyti kodą ir juo dalytis. Kalbant apie būtinybę mokyti naujos kartos programuoti, yra mažiau praktinių vektorių, kad būtų galima platinti atvirą kodą.

Autonominis susisiekimas yra čia

Tai ne vien automobiliai. Kai kurie nori pagaminti autonominius lėktuvus, kurių neapkrauna kelių poreikis. Kiti nori sukurti autonomines riedlentes labai lengvoms kelionėms. Jei jis juda, kai kurie įsilaužėliai svajoja pasakyti, kur eiti.

Programuotojai nekontroliuos to, ką žmonės mato ekrane. Jie kontroliuos, kur žmonės eina ir kaip bendrauja su pasauliu. O žmonės yra tik žaidimo dalis. Visi mūsų dalykai taip pat judės autonomiškai.

Jei norite vakarienės iš garsaus šefo miesto centre, autonominė riedlentė su šildoma kamera gali ją atvežti į jūsų namus. Jei norite, kad jūsų veja būtų nupjauta, autonominė vejapjovė pakeis apylinkės vaiką.

Ir programuotojai gali panaudoti visas šaunias idėjas, kurias jie turėjo per pirmąją interneto revoliuciją. Jei manėte, kad iššokantieji skelbimai internete yra blogi, palaukite, kol programuotojams bus sumokėta už tai, kad jūsų autonominiai riedučiai būtų nukreipti pro naujo restorano virtuvės angą. Dar alkanas?

Įstatymas ras naujas ribas

Rašalas vos buvo sausas „Bill of Rights“, kai prasidėjo diskusijos, ką reiškia, kad mūsų dokumentų paieška būtų pagrįsta. Dabar, praėjus daugiau nei 200 metų, mes vis dar ginčijamės dėl detalių.

Technologijų pokyčiai atveria naujas galimybes įstatymams. Prieš kelerius metus Aukščiausiasis Teismas nusprendė, kad transporto priemonių sekimo technologijai reikalingas orderis. Bet tai tik tada, kai policija pasodina sekėją į automobilį. Niekas iš tikrųjų nežino, kokios taisyklės galioja, kai kas nors paveda stebėjimo duomenis iš „Waze“, „Google Maps“ ar bet kurios iš šimtų kitų programų, kurios talpina mūsų vietas.

O kaip įtakoti mašinų veikimą? Duomenų atsisiuntimas yra vienas dalykas, tačiau klaikiai vilioja ir pakeisti duomenis. Ar teisinga, kad policija (ar privatūs veikėjai) klastoja dokumentus, antraštes ar gabalus? Ar svarbu, ar taikiniai yra tikri teroristai, ar tiesiog žmonės, per ilgai parkavę aikštelėje be parketo, nepamaitinę skaitiklio?