Programavimas

10 programinės įrangos kūrimo prognozių 2018 m

Siddhartha Agarwal yra produktų valdymo ir strategijos viceprezidentas, „Oracle Cloud Platform“.

Kūrėjai turėtų jaudintis dėl ateinančių galimybių 2018 m., Kai produktai ir įrankiai, susiję su tokiomis technologijomis kaip „blockchain“, „chatbots“, funkcijos be serverio ir mašininis mokymasis, tampa pakankamai subrendę realaus pasaulio projektams. Tuo pačiu metu daugelis kūrėjų bus susirūpinę dėl spaudimo pristatyti kodą ir funkcijas greičiau, nepakenkiant saugumui ar našumui. Bet ir tame fronte yra gerų naujienų.

Kūrėjams 2018 m. Bus apibrėžta įtampa tarp naujų transformacinių galimybių išnaudojimo ir spaudimo daryti daugiau, kokybiškiau. Žemiau pateikiama 10 prognozių, susijusių su šių jėgų pasirodymu ateinančiais metais.

1. B2B sandoriai, naudojantys „blockchain“, pereina į gamybą

Verslas pradėjo suprasti saugumą, patikimumą ir efektyvumą, kurį galima pasiekti iš „blockchain“ įgalintų operacijų. Ateinančiais metais kūrėjai įgyvendins daugelį „blockchain“ naudojimo atvejų finansinėse paslaugose ir gamybos tiekimo grandinėse. „Blockchain“ yra technologija, leidžianti efektyvias, saugias, nekintamas ir patikimas operacijas tarp organizacijų, kurios gali visiškai nepasitikėti viena kita, pašalindamos tarpininkus.

Apsvarstykite įmonę, kuri užsisako produktus iš ofšorinių gamintojų. Šie produktai siunčiami per laivybos bendrovę, per muitinę, per kitą laivybos įmonę ir galiausiai pirkėjui. Šiandien kiekvieno veiksmo tikrinimas ir suderinimas dažniausiai atliekamas el. Laiškuose ir skaičiuoklėse, kuriuose dalyvauja daug žmonių ir procesų. „Blockchain“ pašalina rankinius procesus ir susitaikymą, neatšaukiamai įrašydamas „blockchain“ knygos atnaujinimus, kai minimalus skaičius šalių sako: „Taip, įvyko ši operacijos dalis“.

„Blockchain“ debesų paslaugos suteiks mastelio, atsparumo, saugumo ir iš anksto sukurtų integracijų su įmonės sistemomis, todėl kūrėjams bus daug lengviau sutelkti dėmesį į verslo naudojimo atvejus, o ne į pagrindinį „hiperskaidžių“ audinio diegimą.

2. Pokalbių robotai reguliariai bendrauja su klientais ir darbuotojais

Žmonėms atsibodo reikalauti kelių programų mobiliesiems, kad jie galėtų atlikti tą patį darbą, pvz., Trijų skirtingų oro linijų programų, skirtingais būdais užsiregistruoti ir gauti įlaipinimo kortelę. Geresnis būdas yra suteikti tą pačią funkciją, bet naudojant populiariausią telefono programą - pranešimus. Susirašinėjimas turi tris patrauklius elementus, vienodus visoje terpėje: greitas, išraiškingas ir pokalbių - nereikia mokymų. Dėl pažangos dirbtinio intelekto ir natūralios kalbos apdorojimo srityje žmonės naudos „Facebook Messenger“, „Slack“, „WeChat“, „WhatsApp“ ar balso asistentą, pvz., „Amazon Alexa“ ar „Google Home“, norėdami užduoti klausimus ir gauti atsakymus iš intelektualiųjų robotų.

Kūrėjai, naudodamiesi naujomis išmaniosiomis robotų kūrimo debesų paslaugomis, gali greitai sukurti robotus, kurie supranta kliento ketinimus, palaiko pokalbio būseną ir protingai reaguoja, tuo pačiu palengvindami integraciją su galinėmis sistemomis. Įsivaizduokite, kad nufotografavote suknelę, kurią matėte filme, ir nusiųskite vaizdą į savo mėgstamos drabužių parduotuvės robotą, kuris naudoja atpažinimą ir dirbtinį intelektą rekomenduodamas panašias sukneles. Darbuotojai taip pat gali būti labai naudingi robotams, atliekantiems tokias užduotis, kaip paklausti, kiek atostogų dienų liko, pateikti pagalbos tarnybos bilietą ar užsisakyti nešiojamąjį nešiojamąjį kompiuterį, kur sistema netgi žino, kuriems nešiojamiesiems kompiuteriams darbuotojas turi teisę, ir gali pateikti būsenos atnaujinimus pagal jų užsakymą. Atsižvelgiant į tai, kad eksperimentuoti su savo darbuotojų baze yra daug atlaidžiau, kūrėjai pirmiausia gali panaudoti savo robotų kūrimo rinkinius, kad sukurtų ir išbandytų į darbuotojus nukreiptus robotus.

3. Mygtukas išnyksta: AI tampa programos sąsaja

Dirbtinis intelektas tampa vartotojo sąsaja, o tai reiškia, kad sinchroninis programų ir paslaugų naudojimo prašymo ir atsakymo modelis palaipsniui išnyksta. Išmanieji telefonai vis dar yra „žemo intelekto koeficiento“, nes turite juos pasiimti, paleisti programą, paprašyti ką nors padaryti ir galų gale sulaukti atsakymo. Naujos kartos pažangiose programose programa inicijuos sąveiką naudodama „push“ pranešimus. Ženkime šį žingsnį toliau, kur programa, robotas ar virtualus asmeninis asistentas, naudojantys dirbtinį intelektą, žinos, ką daryti kada, kodėl, kur ir kaip. Ir tiesiog daryk tai. Du pavyzdžiai:

  • Išlaidų patvirtinimo programa stebi jūsų išlaidų ataskaitų tvirtinimo modelį, pradeda automatiškai patvirtinti 99 procentus išlaidų ataskaitų ir atkreipia jūsų dėmesį tik į retą ataskaitą, kuriai reikia jūsų dėmesio.
  • „Analytics“ programa supranta pagrindinius duomenis, verslo vartotojo iki šiol užduodamus klausimus, klausimus, kuriuos to paties duomenų rinkinio užduoda kiti įmonės vartotojai, ir kiekvieną dieną pateikia naują įžvalgą, apie kurią analitikas galėjo nepagalvoti. Organizacijoms renkant daugiau duomenų, dirbtinis intelektas gali padėti mums sužinoti, kokius klausimus užduoti.

Kūrėjai turi išsiaiškinti, kokie duomenys yra iš tikrųjų svarbūs jų verslo programai, kaip stebėti ir mokytis iš operacijų, kokius verslo sprendimus labiausiai naudinga tokio pobūdžio iniciatyvus dirbtinis intelektas, ir pradėti eksperimentuoti. Įterptasis dirbtinis intelektas gali numatyti, ko jums reikia, pateikti informaciją ir funkcijas tinkama laikmena tinkamu laiku, taip pat prieš jums to prireikus, ir automatizuoti daugelį užduočių, kurias šiandien atliekate rankiniu būdu.

4. Mašinų mokymasis naudojamas praktiškai, konkrečiai sričiai

Mašininis mokymasis iš neaiškaus duomenų mokslo srities pereina prie pagrindinių programų kūrimo tiek dėl to, kad populiariose platformose jau yra paruoštų modulių, ir dėl to, kad jie yra labai naudingi nagrinėjant didelius istorinius duomenų rinkinius. Mokantis mašinomis, vertingiausia įžvalga ateina su kontekstu - ką jūs darėte anksčiau, kokius klausimus uždavėte, ką daro kiti žmonės, kas yra įprasta, palyginti su anomalia veikla.

Tačiau norint, kad mašininis mokymasis būtų efektyvus, jis turi būti sureguliuotas ir mokomas konkrečioje srityje, apimančioje tiek analizuojamus duomenų rinkinius, tiek klausimus, į kuriuos ji atsakys. Pavyzdžiui, mašininio mokymosi programos, skirtos nustatyti nenormalius saugumo analitiko vartotojo elgesio atvejus, labai skirsis nuo mašininio mokymosi programų, skirtų gamyklos robotų operacijoms optimizuoti, o tai gali labai skirtis nuo tų, kurios skirtos priklausomybės atvaizdavimui mikroservisais pagrįstoje programoje.

Kūrėjai turės geriau išmanyti domenui būdingus naudojimo atvejus, kad suprastų, kokius duomenis rinkti, kokius mašininio mokymosi algoritmus taikyti ir kokius klausimus užduoti. Kūrėjai taip pat turės įvertinti, ar konkretaus domeno „SaaS“ ar supakuotos programos tinka tam tikram projektui, atsižvelgiant į tai, kad reikia didelių mokymų duomenų.

Naudodamiesi mašininiu mokymusi, kūrėjai gali kurti išmaniąsias programas, kad generuotų rekomendacijas, numatytų rezultatus ar priimtų automatinius sprendimus.

5. „DevOps“ juda link „NoOps“

Mes visi sutinkame, kad „devops“ yra labai svarbus, kad kūrėjai galėtų greitai kurti naujas programas ir funkcijas, išlaikydami aukštą kokybės ir našumo lygį. „Devops“ problema yra tai, kad kūrėjai turi praleisti 60 procentų savo laiko lygties opų pusėje, taip sutrumpindami laiką, skirtą plėtrai. Kūrėjai turi integruoti įvairius nuolatinio integravimo ir nepertraukiamo pristatymo (CICD) įrankius, išlaikyti šias integracijas ir nuolat atnaujinti CI / CD įrankių grandinę, kai išleidžiamos naujos technologijos. Visi daro KI, bet ne per daug žmonių daro CD. Kūrėjai atkakliai reikalaus debesijos paslaugų, kad švytuoklė 2018 m. Sugrįžtų į kūrėjų pusę. Tam reikės daugiau automatikos, kad būtų reali CICD.

„Docker“ suteikia jums pakuotę, perkeliamumą ir galimybę atlikti judrius diegimus. CD turi būti šio „Docker“ gyvavimo ciklo dalis. Pvz., Jei naudojate konteinerius, kai tik pakeisite kodą į „Git“, numatytasis artefaktas turėtų būti „Docker“ vaizdas su nauja kodo versija. Be to, vaizdas turėtų būti automatiškai nukreiptas į „Docker“ registrą, o konteineris, dislokuotas iš vaizdo, į „dev-test“ aplinką. Atlikus kokybės užtikrinimo patikrinimą ir pritaikius gamyboje, reikia pasirūpinti konteinerių tvarkymu, saugumu ir masteliu. Verslo lyderiai daro spaudimą kūrėjams, kad jie greičiau pristatytų naujoves; „devops“ modelis turi atlaisvinti daugiau laiko kūrėjams, kad tai būtų įmanoma.

6. Atvirasis šaltinis kaip paslauga pagreitina atvirojo kodo inovacijų vartojimą

Atvirojo kodo modelis išlieka vienu geriausių inovacijų variklių, tačiau diegti ir palaikyti šias naujoves dažnai yra per daug sudėtinga. Pavyzdžiui:

  • Norite srautinio duomenų / įvykių valdymo platformos, todėl kreipkitės į „Kafka“. Pradėdami naudoti „Kafka“ mastelį, turite nustatyti papildomus „Kafka“ mazgus ir apkrovos balanso didelius „Kafka“ klasterius, atnaujinti šias grupes, kai pasirodys nauji „Kafka“ leidimai, ir tada integruoti šią paslaugą su likusia aplinka.
  • Norite „Kubernetes“ konteinerių orkestravimui. Užuot pasirūpinusi „Kubernetes“ sankaupos naujinimais, atsarginėmis kopijomis, atkūrimais ir pataisomis, platforma turėtų tai padaryti už jus. „Kubernetes“ siunčiama kas šešias savaites, todėl platforma turėtų būti dislokuota ir savaime gydoma.
  • Norite „Cassandra“, skirtos „NoSQL“ duomenų bazėms. Turėtumėte norėti, kad platforma valdytų „Cassandra“ sankaupos atsarginę kopiją (dalinę arba pilną pagal tvarkaraštį), pataisymą, grupavimą, mastelio keitimą ir didelį prieinamumą.

Kūrėjai vis dažniau ieškos debesijos paslaugų, kad visa ta greita inovacija būtų teikiama iš atvirojo šaltinio, tuo pačiu rūpindamiesi šių technologijų naudojimo ir valdymo aspektais.

7. „Serverless“ architektūros gamyba yra didelė

Be serverio architektūros patrauklumas yra aiškus: kai yra poreikis, kad mano kodas būtų vykdomas pagal tam tikrą įvykį, infrastruktūra yra momentinė, mano kodas dislokuojamas ir vykdomas, ir aš esu apmokestinamas tik už mano kodo vykdymo laiką. Tarkime, kad norite sukurti kelionių rezervavimo funkciją, norėdami užsisakyti / atšaukti skrydžius, viešbučius ir išsinuomotus automobilius. Kiekvienas iš šių veiksmų gali būti sukurtas kaip funkcija be serverio, parašyta skirtingomis kalbomis, tokiomis kaip „Java“, „Ruby“, „JavaScript“ ir „Python“. Nėra programos serverio, veikiančio su mano kodu; veikiau funkcijos yra greitinamos ir vykdomos infrastruktūroje tik tada, kai to reikia.

Kūrėjams funkcijų be serverio sujungimas sudėtingoms operacijoms atlikti kelia naujų iššūkių: aprašyti, kaip šios funkcijos turėtų būti sujungtos grandinėje, derinti paskirstytas operacijas ir nustatyti, kaip sugedus vienai grandinės funkcijai sukurti kompensuojančias operacijas, kad būtų panaikinti netinkami pakeitimai. Ieškokite debesijos paslaugų ir atvirojo kodo įrankių, tokių kaip „FN“ projektas, kad jie galėtų klestėti padėdami kūrėjams lengvai valdyti be serverio funkcijų programavimą, sudėtį, derinimą ir viso ciklo valdymą, taip pat jas įdiegti ir išbandyti nešiojamajame kompiuteryje arba „on-prem“ serveryje. ar koks debesis. Svarbiausia bus pasirinkti be serverio platformą, kuri užtikrintų maksimalų perkeliamumą.

8. Vienintelis klausimas apie konteinerius tampa „Kodėl gi ne?“

Konteineriai taps numatytuoju „dev / test“ darbu ir įprastu gamybos programų įprastu dalyku. Tikimės, kad toliau gerės saugumas, valdomumas, orkestravimas, stebėjimas ir derinimas, kurį skatins atvirojo kodo naujovės ir pramonės standartai. Konteineriai yra daugelio šiuolaikinę plėtrą skatinančių tendencijų, įskaitant mikroservisų architektūras, debesų programas, serverio neturinčias funkcijas ir „devops“, pagrindas.

Konteineriai nebus prasmingi visur, pavyzdžiui, kai jums reikia labiau nurodomos debesies platformos, pvz., Integravimo „PaaS“ ar mobiliojo „PaaS“, tačiau šios aukštesnio lygio debesų paslaugos pačios veiks konteineriuose ir bus išimtys, įrodančios taisyklė.

Be to, programinės įrangos licencijavimo modeliai, skirti didelės vertės komercinei, vietoje esančiai programinei įrangai, turės apimti konteinerių naudojimo išplitimą. Kainodaros programinės įrangos modeliai turės palaikyti „įjungimą“ ir „išjungimą“ licencijavimą, nes konteineriai yra greitinami, didinami ir mažinami.

9. Programinė įranga ir sistemos tampa savaime gydomos, savireguliuojamos ir valdomos

Kūrėjai ir gamybos operacijų grupės skęsta žurnalų, žiniatinklio / programos / duomenų bazės našumo stebėjimo ir vartotojo patirties stebėjimo bei konfigūracijos duomenyse. Be to, šie įvairūs duomenų tipai nutildomi, todėl jūs turite įnešti daug žmonių į kambarį, kad galėtumėte derinti problemas. Tada iškyla žinių perdavimo klausimas: kūrėjai daug laiko praleidžia pasakodami gamybos ops apie savo programų ypatumus, kokius slenksčius nustatyti, kokias serverio topologijas stebėti operacijai ir pan.

$config[zx-auto] not found$config[zx-overlay] not found