Proqram təminatının inkişafının gələcəyi: Kompüterlərin gələcəyi P2

ŞƏKİL KREDİTİ: Quantumrun

Proqram təminatının inkişafının gələcəyi: Kompüterlərin gələcəyi P2

    1969-cu ildə Neil Armstronq və Buzz Oldrin Aya ayaq basan ilk insanlar olduqdan sonra beynəlxalq qəhrəman oldular. Amma bu astronavtlar kameranın qəhrəmanları olsalar da, minlərlə naməlum qəhrəman var ki, onların iştirakı olmadan Aya ilk dəfə eniş etmək mümkün olmayacaqdı. Bu qəhrəmanlardan bir neçəsi uçuşu kodlaşdıran proqram tərtibatçıları idi. Niyə?

    Yaxşı, o dövrdə mövcud olan kompüterlər indikilərdən daha sadə idi. Əslində, adi bir insanın köhnəlmiş smartfonu Apollo 11 kosmik gəmisindəki hər şeydən (və bu mövzuda 1960-cı illərin bütün NASA-dan) bir neçə dəfə daha güclüdür. Üstəlik, o dövrdə kompüterlər proqram təminatını ən sadə maşın dillərində proqramlaşdıran ixtisaslaşmış proqram tərtibatçıları tərəfindən kodlaşdırılırdı: AGC Assembly Code və ya sadəcə olaraq, 1s və 0s.

    Kontekst üçün, bu naməlum qəhrəmanlardan biri, Apollon kosmik proqramının Proqram Mühəndisliyi Şöbəsinin Direktoru, Marqaret Hamilton, və onun komandası bugünkü proqramlaşdırma dillərindən istifadə edərək, səyin bir hissəsini istifadə etməklə yazıla biləcəyini (aşağıda göstərilən şəkildə) bir kod dağı yazmalı oldu.

    (Yuxarıdakı şəkildə Marqaret Hamilton Apollo 11 proqramını ehtiva edən kağız yığınının yanında dayanır.)

    Proqram tərtibatçılarının mümkün ssenarilərin təxminən 80-90 faizini kodlaşdırdıqları müasir dövrdən fərqli olaraq, Apollon missiyaları üçün onların kodu hər şeyi hesaba almalı idi. Bunu perspektivə qoymaq üçün Marqaretin özü dedi:

    "Yoxlama siyahısı kitabçasındakı səhvə görə, görüş radarının açarı yanlış mövqeyə yerləşdirildi. Bu, onun kompüterə səhv siqnallar göndərməsinə səbəb oldu. Nəticə belə oldu ki, kompüterdən eniş üçün bütün normal funksiyalarını yerinə yetirməsi tələb olunurdu. vaxtının 15%-ni istifadə edən əlavə bir saxta məlumat yükünü qəbul edərkən.Kompüter (daha doğrusu, onun içindəki proqram təminatı) ondan yerinə yetirməli olduğundan daha çox tapşırığı yerinə yetirməsinin tələb olunduğunu başa düşəcək qədər ağıllı idi. Sonra göndərdi. astronavt üçün nəzərdə tutulmuş həyəcan siqnalı verdikdə, mən bu anda etməli olduğumdan daha çox tapşırıqla həddən artıq yüklənmişəm və mən yalnız daha vacib olanları, yəni eniş üçün lazım olanları saxlayacağam ... Əslində , kompüter səhv şərtlərini tanımaqdan daha çox şey etmək üçün proqramlaşdırılmışdı.Bərpa proqramlarının tam dəsti proqram təminatına daxil edilmişdir.Proqramın hərəkəti, bu halda, daha aşağı prioritet vəzifələri aradan qaldırmaq və daha vacib olanları yenidən qurmaq idi ... Kompüter olmasaydıbu problemi tanıdı və bərpa tədbirləri gördü, şübhə edirəm ki, Apollo 11 uğurlu Aya eniş olardı."

    — Marqaret Hamilton, Apollo Uçuş Kompüter Proqramlaşdırma MIT Draper Laboratoriyasının direktoru, Cambridge, Massachusetts, "Kompüter yükləndi", məktub Datamation, Mart 1, 1971

    Daha əvvəl işarə edildiyi kimi, proqram təminatı inkişafı Apollonun ilk günlərindən bəri inkişaf etmişdir. Yeni yüksək səviyyəli proqramlaşdırma dilləri yorucu kodlaşdırma prosesini 1 və 0 ilə əvəz etdi və sözlər və simvollarla kodlaşdırdı. Əvvəllər günlərlə kodlaşdırma tələb edən təsadüfi nömrə yaratmaq kimi funksiyalar indi tək bir əmr xətti yazmaqla əvəzlənir.

    Başqa sözlə, proqram kodlaşdırması hər onillikdə getdikcə daha avtomatlaşdırılmış, intuitiv və insana çevrilmişdir. Bu keyfiyyətlər yalnız gələcəkdə də davam edəcək və proqram təminatının inkişafının təkamülünü gündəlik həyatımıza dərindən təsir edəcək şəkildə istiqamətləndirəcək. Bu fəsildə budur Kompüterlərin gələcəyi silsiləsi araşdırılacaq.

    Kütlələr üçün proqram təminatının inkişafı

    1-lərin və 0-ların (maşın dili) kodlaşdırma ehtiyacının söz və simvollarla (insan dili) əvəz edilməsi prosesi abstraksiya qatlarının əlavə edilməsi prosesi adlanır. Bu abstraksiyalar nəzərdə tutulduqları sahə üçün mürəkkəb və ya ümumi funksiyaları avtomatlaşdıran yeni proqramlaşdırma dilləri şəklində gəldi. Lakin 2000-ci illərin əvvəllərində kodsuz və ya aşağı kodlu platformalar təklif etməyə başlayan yeni şirkətlər (Caspio, QuickBase və Mendi kimi) meydana çıxdı.

    Bunlar, texniki olmayan mütəxəssislərə vizual kod bloklarını (simvollar/qrafika) birləşdirmək yolu ilə bizneslərinin ehtiyaclarına uyğunlaşdırılmış xüsusi proqramlar yaratmağa imkan verən istifadəçi dostu, onlayn idarə panelləridir. Başqa sözlə, bir ağacı kəsib onu paltar şkafına çevirmək əvəzinə, onu Ikea-dan əvvəlcədən hazırlanmış hissələrdən istifadə edərək tikirsiniz.

    Bu xidmətdən istifadə etmək hələ də müəyyən səviyyədə kompüter bilikləri tələb etsə də, ondan istifadə etmək üçün artıq kompüter elmi dərəcəsinə ehtiyacınız yoxdur. Nəticədə, abstraksiyanın bu forması korporativ dünyada milyonlarla yeni “proqram təminatçısı”nın artmasına şərait yaradır və bu, bir çox uşağa daha erkən yaşda kodlaşdırmağı öyrənməyə imkan verir.

    Proqram tərtibatçısı olmağın nə demək olduğunu yenidən müəyyənləşdirmək

    Vaxt var idi ki, mənzərəni və ya insanın üzünü ancaq kətan üzərinə çəkmək olar. Rəssam illər boyu şagird kimi oxumalı və məşq etməli, rəssamlıq sənətini öyrənməli idi - rəngləri necə qarışdırmalı, hansı alətlər ən yaxşısıdır, müəyyən bir vizualı yerinə yetirmək üçün düzgün texnikalar. Ticarətin dəyəri və onu yaxşı yerinə yetirmək üçün lazım olan çoxillik təcrübə həm də rəssamların az və uzaq olması demək idi.

    Sonra kamera ixtira edildi. Və bir düyməni basmaqla, mənzərə və portretlər bir saniyə ərzində çəkilirdi ki, əks halda rənglənməsi günlərlə həftələr çəkəcək. Kameralar təkmilləşdikcə, ucuzlaşdıqca və o qədər çox oldu ki, onlar hətta ən sadə smartfona daxil edildi, ətrafımızdakı dünyanı çəkmək indi hamının iştirak etdiyi adi və təsadüfi bir fəaliyyətə çevrildi.

    Abstraksiyalar irəlilədikcə və yeni proqram dilləri daha çox rutin proqram təminatı işlənməsi işini avtomatlaşdırdıqca, 10-20 ildən sonra proqram tərtibatçısı olmaq nə deməkdir? Bu suala cavab vermək üçün gəlin gələcək proqram tərtibatçılarının sabahın tətbiqlərini necə quracağına nəzər salaq:

    *Birincisi, bütün standartlaşdırılmış, təkrarlanan kodlaşdırma işləri yox olacaq. Onun yerinə əvvəlcədən təyin edilmiş komponent davranışları, UI və məlumat axını manipulyasiyalarının (Ikea hissələri) geniş kitabxanası olacaq.

    *Bu gün olduğu kimi, işəgötürənlər və ya sahibkarlar proqram tərtibatçıları üçün xüsusi proqram proqramları və ya platformaları vasitəsilə yerinə yetirmək üçün xüsusi məqsədlər və nəticələri müəyyən edəcəklər.

    *Bu tərtibatçılar daha sonra icra strategiyasını tərtib edəcək və komponentlər kitabxanasına daxil olmaqla və onları bir-biri ilə əlaqələndirmək üçün vizual interfeyslərdən istifadə etməklə proqram təminatının ilkin layihələrinin prototipini yaratmağa başlayacaqlar – genişlənmiş reallıq (AR) və ya virtual reallıq (VR) vasitəsilə əldə edilən vizual interfeyslər.

    *İxtisaslaşdırılmış süni intellekt (AI) sistemləri onların tərtibatçısının ilkin layihələrinin nəzərdə tutduğu məqsədləri və nəticələri anlamaq üçün nəzərdə tutulmuşdur, daha sonra tərtib edilmiş proqram təminatının dizaynını təkmilləşdirəcək və bütün keyfiyyət təminatı testlərini avtomatlaşdıracaq.

    *Nəticələrə əsasən, süni intellekt daha sonra layihənin məqsədlərini və nəticələrini daha yaxşı başa düşməyə və müəyyən etməyə və proqram təminatının müxtəlif ssenarilərdə necə hərəkət etməsini müzakirə etməyə çalışaraq tərtibatçıya çoxlu suallar verəcək (ehtimal ki, şifahi, Alexa kimi ünsiyyət vasitəsilə). və mühitlər.

    *Tərtibatçının rəyi əsasında süni intellekt tədricən onun niyyətini öyrənəcək və layihənin məqsədlərini əks etdirmək üçün kodu yaradacaq.

    *İnsan-maşın əməkdaşlığı, bitmiş və satıla bilən versiya daxili tətbiqə və ya ictimaiyyətə satışa hazır olana qədər proqram təminatının versiyasından sonra versiyanı təkrarlayacaq.

    *Əslində bu əməkdaşlıq proqram təminatı real dünyada istifadəyə məruz qaldıqdan sonra davam edəcək. Sadə səhvlər bildirildiyinə görə, süni intellekt onları proqram təminatının hazırlanması prosesi zamanı qeyd olunan orijinal, arzu olunan məqsədləri əks etdirən şəkildə avtomatik olaraq düzəldəcək. Bu arada, daha ciddi səhvlər problemi həll etmək üçün insan-AI əməkdaşlığını tələb edəcək.

    Bütövlükdə, gələcək proqram tərtibatçıları “necə” məsələsinə daha az, “nə” və “niyə” məsələlərinə daha çox diqqət yetirəcəklər. Onlar daha az sənətkar və daha çox memar olacaqlar. Proqramlaşdırma, məqsəd və nəticələri AI-nin başa düşəcəyi şəkildə metodik şəkildə çatdıra bilən və sonra bitmiş rəqəmsal tətbiqi və ya platformanı avtomatik kodlaşdıra bilən insanları tələb edəcək intellektual bir məşq olacaq.

    Süni intellektə əsaslanan proqram təminatının inkişafı

    Yuxarıdakı bölməni nəzərə alsaq, aydındır ki, biz AI-nin proqram təminatının inkişafı sahəsində getdikcə mərkəzi rol oynayacağını hiss edirik, lakin onun qəbulu sırf proqram təminatı tərtibatçılarını daha effektiv etmək məqsədi ilə deyil, bu tendensiyanın arxasında da biznes qüvvələri var.

    Proqram təminatı şirkətləri arasında rəqabət hər keçən il daha da şiddətlənir. Bəzi şirkətlər rəqiblərini satın alaraq rəqabət aparırlar. Digərləri proqram təminatının fərqləndirilməsi üzrə rəqabət aparır. Sonuncu strategiyanın çətinliyi ondan ibarətdir ki, onu asanlıqla müdafiə etmək mümkün deyil. Bir şirkətin müştərilərinə təklif etdiyi hər hansı bir proqram xüsusiyyəti və ya təkmilləşdirmə, rəqibləri nisbətən asanlıqla kopyalaya bilər.

    Bu səbəbdən şirkətlərin hər üç ildən bir yeni proqram təminatı buraxdığı günlər geridə qaldı. Bu günlərdə fərqləndirməyə diqqət yetirən şirkətlər getdikcə müntəzəm olaraq yeni proqram təminatı, proqram düzəlişləri və proqram xüsusiyyətlərini buraxmaq üçün maliyyə həvəsinə malikdirlər. Şirkətlər nə qədər sürətli innovasiyalar etsə, bir o qədər müştəri loyallığını artırır və rəqiblərə keçid xərclərini artırır. Artan proqram yeniləmələrinin müntəzəm çatdırılmasına doğru bu keçid "davamlı çatdırılma" adlanan bir tendensiyadır.

    Təəssüf ki, davamlı çatdırılma asan deyil. Bugünkü proqram şirkətlərinin ancaq dörddə biri bu tendensiyanın tələb olunan buraxılış cədvəlini yerinə yetirə bilir. Və buna görə də işi sürətləndirmək üçün süni intellektdən istifadəyə böyük maraq var.

    Daha əvvəl qeyd edildiyi kimi, süni intellekt nəhayət proqram təminatının hazırlanmasında və inkişafında getdikcə daha çox əməkdaşlıq rolunu oynayacaq. Lakin qısa müddətdə şirkətlər ondan proqram təminatı üçün keyfiyyət təminatı (sınaq) proseslərini getdikcə daha çox avtomatlaşdırmaq üçün istifadə edirlər. Digər şirkətlər proqram sənədlərini avtomatlaşdırmaq üçün süni intellektdən istifadə etməklə sınaqdan keçirirlər - yeni funksiyaların və komponentlərin buraxılışını və onların kod səviyyəsinə qədər necə istehsal olunduğunu izləmək prosesi.

    Ümumiyyətlə, süni intellekt getdikcə proqram təminatının inkişafında mərkəzi rol oynayacaq. Onun istifadəsini erkən mənimsəyən proqram şirkətləri, nəticədə rəqibləri üzərində eksponensial artım əldə edəcəklər. Lakin bu süni intellekt qazanclarını həyata keçirmək üçün sənaye həm də əşyaların hardware tərəfində irəliləyişləri görməli olacaq – növbəti bölmədə bu məqam ətraflı izah ediləcək.

    Xidmət kimi proqram

    Bütün yaradıcı peşəkarlar rəqəmsal incəsənət və ya dizayn işləri yaratarkən Adobe proqram təminatından istifadə edirlər. Təxminən üç onillik ərzində siz Adobe-nin proqram təminatını CD kimi aldınız və onun əbədi istifadəsinə sahib oldunuz, lazım gəldikdə gələcəkdə təkmilləşdirilmiş versiyaları satın aldınız. Lakin 2010-cu illərin ortalarında Adobe strategiyasını dəyişdi.

    Əhəmiyyətli dərəcədə mürəkkəb sahiblik açarları olan proqram təminatı CD-lərini almaq əvəzinə, Adobe müştəriləri indi Adobe serverlərinə müntəzəm və daimi İnternet bağlantısı ilə yanaşı işləyən proqram təminatı olan Adobe proqramını öz hesablama cihazlarına yükləmək hüququ üçün aylıq abunə ödəməli olacaqlar. .

    Bu dəyişikliklə müştərilər artıq Adobe proqram təminatına sahib deyillər; lazım olduğu kimi icarəyə götürdülər. Bunun müqabilində müştərilər artıq Adobe proqram təminatının təkmilləşdirilmiş versiyalarını daima almaq məcburiyyətində deyillər; nə qədər ki, onlar Adobe xidmətinə abunə olublar, onlar həmişə ən son yeniləmələri buraxıldıqdan dərhal sonra cihazlarına yükləyəcəklər (çox vaxt ildə bir neçə dəfə).

    Bu, son illərdə gördüyümüz ən böyük proqram meyllərindən birinin yalnız bir nümunəsidir: proqram təminatının müstəqil məhsul əvəzinə xidmətə necə keçməsi. Microsoftun Windows 10 yeniləməsinin buraxılışında gördüyümüz kimi təkcə kiçik, ixtisaslaşmış proqram təminatı deyil, bütün əməliyyat sistemləri. Başqa sözlə, proqram bir xidmət olaraq (SaaS).

    Öz-özünə öyrənmə proqramı (SLS)

    Sənayenin SaaS-ə doğru dəyişməsinə əsaslanaraq, həm SaaS, həm də AI-ni birləşdirən proqram təminatı sahəsində yeni bir tendensiya yaranır. Amazon, Google, Microsoft və IBM-in aparıcı şirkətləri öz müştərilərinə süni intellekt infrastrukturunu xidmət kimi təqdim etməyə başlayıblar.

    Başqa sözlə, artıq süni intellekt və maşın öyrənməsi yalnız proqram nəhəngləri üçün əlçatan deyil, indi istənilən şirkət və tərtibatçı öz-özünə öyrənən proqram təminatı (SLS) yaratmaq üçün onlayn AI resurslarına daxil ola bilər.

    Biz Süni İntellektin Gələcəyi seriyamızda süni intellektin potensialını ətraflı müzakirə edəcəyik, lakin bu fəslin kontekstində biz deyəcəyik ki, hazırkı və gələcək proqram tərtibatçıları yerinə yetirilməsi və yerinə yetirilməsi lazım olan vəzifələri qabaqcadan görən yeni sistemlər yaratmaq üçün SLS yaradacaqlar. sadəcə onları sizin üçün avtomatik tamamlayın.

    Bu o deməkdir ki, gələcək AI köməkçisi ofisdə iş tərzinizi öyrənəcək və sənədləri istədiyiniz kimi formatlaşdırmaq, e-poçtlarınızı səs tonunuzda tərtib etmək, iş təqviminizi idarə etmək və s. kimi sizin üçün əsas tapşırıqları yerinə yetirməyə başlayacaq.

    Evdə bu, gəlməmişdən əvvəl evinizi əvvəlcədən qızdırmaq və ya satın almalı olduğunuz ərzaq məhsullarını izləmək kimi tapşırıqlar da daxil olmaqla, gələcək ağıllı evinizi idarə etmək üçün SLS sisteminin olması demək ola bilər.

    2020-ci ilə və 2030-cu illərə qədər bu SLS sistemləri korporativ, hökumət, hərbi və istehlak bazarlarında mühüm rol oynayaraq, tədricən hər birinə məhsuldarlığını artırmağa və bütün növ tullantıları azaltmağa kömək edəcək. Bu seriyanın sonrakı hissəsində SLS texnologiyasını daha ətraflı əhatə edəcəyik.

    Bununla belə, bütün bunların bir tutumu var.

    SaaS və SLS modellərinin işləməsinin yeganə yolu, bu SaaS/SLS sistemlərinin işlədiyi "bulud"u idarə edən hesablama və saxlama avadanlığı ilə yanaşı İnternetin (və ya onun arxasındakı infrastrukturun) böyüməyə və təkmilləşməyə davam etməsidir. Şükürlər olsun ki, izlədiyimiz tendensiyalar ümidverici görünür.

    İnternetin necə böyüyəcəyini və inkişaf edəcəyini öyrənmək üçün bizim məqaləmizi oxuyun İnternetin gələcəyi seriyası. Kompüter avadanlığının necə inkişaf edəcəyi haqqında daha çox öyrənmək üçün aşağıdakı linklərdən istifadə edərək oxuyun!

    Kompüterlərin gələcəyi seriyası

    Bəşəriyyəti yenidən müəyyən etmək üçün yaranan istifadəçi interfeysləri: Kompüterlərin gələcəyi P1

    Rəqəmsal yaddaş inqilabı: Kompüterlərin gələcəyi P3

    Mikroçiplərin əsaslı şəkildə yenidən nəzərdən keçirilməsinə səbəb olan solğun Mur qanunu: Kompüterlərin gələcəyi P4

    Bulud hesablama mərkəzsizləşir: Kompüterlərin Gələcəyi P5

    Niyə ölkələr ən böyük superkompüterləri yaratmaq üçün yarışır? Kompüterlərin gələcəyi P6

    Kvant kompüterləri dünyanı necə dəyişəcək: Kompüterlərin gələcəyi P7    

    Bu proqnoz üçün növbəti planlaşdırılmış yeniləmə

    2023-02-08

    Proqnoz istinadları

    Bu proqnoz üçün aşağıdakı məşhur və institusional bağlantılara istinad edilmişdir:

    ProPublica

    Bu proqnoz üçün aşağıdakı Quantumrun keçidlərinə istinad edilmişdir: