"COBOL programcılarına tam anlamıyla ihtiyaç duyacağımız noktaya nasıl geldik?" New Jersey Valisi Phil Murphy yakın tarihli bir basın toplantısında sordu.
İçindekiler
- Fortran
- Ada
- Pascal'ın
- TEMEL / Visual Basic
- COBOL
Daha önce görülmemiş sayıda insanla karşı karşıyayız işsizlik Başvuruların ardından eyalet, 40 yıllık işsizlik başvuruları platformunu derhal genişletmek zorunda kaldı - bu bir revizyon bu, onlarca yıllık kodlama diline aşina programcılar için çılgınca bir aramayı anında başlattı COBOL.
Önerilen Videolar
Ancak bu sorunu yaşayan sadece New Jersey değil. Dünyanın pek çok bankacılık, savunma ve yapay zeka sistemi, Apple'ın garajı tükendiğinde moda olan programlama dillerini kullanıyor.
Teknoloji endüstrisinin yeni ve son teknoloji olan şeylere karşı bir ilgisi var ancak COBOL gibi eski kodlama dilleri olmasaydı, Ada, Pascal ve Fortran, kredi endüstrisi, bilimsel araştırma kuruluşları ve çok sayıda savunma sistemi büyük bir tehlikeyle karşı karşıya kalacaktı. dur. Başka bir deyişle, tüm bu eski kurallar olmasaydı, mahvolurduk.
Elli yıllık programlama dilleri hâlâ milyonlarca işlem ve istatistiği hesaplamakta ve modern dünyanın güvendiği sistemlerin omurgasını oluşturmaktadır. Örneğin, 2017'ye göre ATM'lerin yüzde 95'inden fazlası ve bankaların yüzde 40'ı COBOL kodunu kullanıyor Reuters raporu.
Bu eski tablolayıcıların birçoğu hala belirli işlevleri çok iyi yerine getiriyor. Ayrıca, hayati önem taşıyan, zaman içinde test edilmiş yazılımı parçalarına ayırmak istemeyen birçok şirket yöneticisi de var. şirketlerinin işlerini elden geçirmek ve modernize etmek yerine, sadece eski kodu yamalarlar ve en iyi.
Antik teknolojiyle güreşmek yeni bir olgu değil. Örneğin, Kaliforniya DMV'yi ve maaş bordrosu teknolojisini güncellemeye çalışırken yüz milyonlarca dolar harcadı. Ancak mevcut salgın ve bunun sonucunda ortaya çıkan işsizlik dalgası, Amerika'nın yazılım altyapısının da fiziksel altyapısı gibi ne kadar çökmekte olduğunu ortaya çıkardı.
İşte dünyamızın sandığınızdan çok daha fazla bağımlı olduğu beş "eski" dil ve bunun sizi neden biraz tedirgin edebileceği.
Fortran
Fortran olmasaydı, hava tahmini, astrofizik ve üst düzey istatistiksel analiz gibi şeyler için kullandığımız süper bilgisayarların ve modellerin çoğu işe yaramazdı.
1950'lerde IBM tarafından oluşturulan Fortran (Formül Çevirisi'nin kısaltması), kullanıma sunulan ilk üst düzey dillerden biriydi. Sayılar yerine sözcükler kullanıldı ve kodlayıcıların makine kullanımına göre %500 daha hızlı program yazmasına olanak tanıdı kod. Bugün bu dili öğrenen geliştiricilerin sayısı neredeyse aynı değil.
Johns Hopkins Uygulamalı Fizik Laboratuvarı'nda veri bilimcisi olan James Howard, "Fortran'ı her zaman kullanıyorum, ancak bunu hiç düşünmüyorum" diyor. Howard yıllardır bu dilde programlama yapmamış olsa da uygulamaları düzenli olarak Fortran'ın temel kütüphanelerine erişiyor. 70'lerin başında inşa edilmiş, bakımlı ve "göz kamaştırıcı derecede hızlı".
Howard'ın en son Fortran programı yazmak zorunda kaldığı zaman yaklaşık 10 yıl önceydi. Federal Reserve'de çalışıyordu ve verileri iki uygulama arasında taşıması gerekiyordu; biri C, diğeri Fortran'da yazılmıştı. Satıcı Fortran kitaplığını sağlamayı bıraktığı için programlar iletişimi durdurdu.
40'lı yaşlarındaki programcı, çocukluğunda okuduğu bir şeyi hatırladı; C programlama dilinin veri çağırma yapısı Fortran'ınkinin tersiydi. Sırayı tersine çevirmek için basit bir senaryo yazdı ve işte, Federal Rezerv yeniden iş başındaydı.
Ada
Hükümet programcıları, savunma ve güvenlik sistemleri gibi güvenilirlik gerektiren sistemler geliştirirken nispeten belirsiz Ada kod tabanına güveniyorlar. İçinde tam olarak ne programlanmış? Bu biraz hükümet sırrı ama NASA ve Boeing son yıllarda uyduları ve uçakları programlamak için Ada tabanlı kod kullandılar.
Savunma Bakanlığı (DOD), 1970'lerde ordu tarafından kullanılan ve o zamanlar 400'ün üzerinde olan programlama dillerinin sayısını azaltmak için Ada'nın gelişimini denetledi. Ada, ölüm kalım durumlarında tartışmasız güvenilir olacak şekilde tasarlandı ve programcı hatalarına karşı güçlendirildi. Dil 1980 yılında kullanıma sunulmasına rağmen Kongre, 1995 yılına kadar bu dilin tüm hükümet sistemlerinde kullanılmasını zorunlu kılmadı. İki yıl sonra Savunma Bakanlığı, yaygın olarak bulunabilen güncel sistemleri kullanmanın daha ucuz ve daha esnek olacağını düşünerek bu görevi bıraktı. Ama bugün hala kullanılıyor.
Pascal'ın
Birçok programcı Pascal'ı neredeyse ölü bir programlama dili olarak görüyor ancak dil birçok yönden varlığını sürdürüyor. “İster inanın ister inanmayın, dünyanın pek çok yerinde hala çok popüler bir dil, ancak ABD'de Latince konuşuyor olacağız," diyor büyük bir sigorta şirketinde üç yılını güncellenmesine yardımcı olarak geçiren Dave Hatter Hangi poliçelerin maliyetini ve ne kadar ödediklerini tahmin eden milyon satırlık kod.
Bu eski programların çoğu, günümüzün güvenlik ihlalleriyle ilgili endişelerinden çok önce yazılmıştı ve hassas özel bilgilere sahipti. Şu anda bir siber güvenlik teknisyeni olarak çalışan Hatter, programların sırf "gizlilik yoluyla güvenlik" nedeniyle nispeten güvenli olabileceğini düşünüyor; genç kodlayıcılar onlarca yıllık kodlarla ne yapacaklarını bilmiyor. "15 yaşındaki bir bilgisayar korsanının, COBOL'lu bir tür IBM 390 ana bilgisayarıyla nasıl çalışılacağına dair hiçbir fikri olmayacak" diyor. “Öğrenemediklerini söylemiyorum. Ama onların haberi olmayacak."
Pascal, ilk Apple işletim sisteminin temeliydi ve dilin soyundan gelen Delphi'nin hala güçlü savunucuları var. Aslında, yaygın popülerlik kazanan ve kullanılan ilk görüntülü arama uygulamalarından biri olan Skype, orijinal olarak Delphi'de yazılmıştır.
TEMEL / Visual Basic
İnsanların 2020'de kullandığı diller söz konusu olduğunda BASIC tam olarak listenin başında yer almıyor ancak güvendiğimiz modern uygulamaların çoğu onsuz var olamaz. Örneğin, daha önce bir Excel makrosu programladıysanız BASIC'in bir formunu kullanmışsınızdır.
Yeni Başlayanlar İçin Çok Amaçlı Sembolik Talimat Kodunun kısaltması olan BASIC, 1963 yılında Dartmouth College'da bir öğretmenin bir yolu olarak başlatıldı. genel izleyici kitlesi programlama teorileri ve yetenekleri - gibi daha sağlam dillere geçmeden önce suya bir dalış Fortran. BASIC'in popülaritesi kişisel bilgisayarla birlikte arttı; Apple, IBM ve Atari bilgisayarlarının hepsinin kendi versiyonları vardı.
1980'lerin ortalarına gelindiğinde, kendi kendini yetiştirmiş bilgisayar meraklıları BASIC'ten daha az etkileniyor ve üçüncü taraf programlarla daha fazla ilgileniyorlardı. Daha sonra Microsoft 1991 yılında Visual Basic'i piyasaya sürdü; bu tam olarak BASIC'in bir güncellemesi değildi ancak aynı komutların ve yapıların bazılarını kullanıyordu ve daha iyi bir grafik arayüzüne sahipti. Daha sonra dil, çok sayıda işletme tarafından irili ufaklı programlar yazmak için kullanıldı. Microsoft, 2008 yılında Visual Basic 6 (en son sürüm) desteğini durdurduğunu açıklamış olsa da dilin hâlâ çok sayıda kullanıcısı var. Kontrol edin Tiobe Endeksi (en popüler programlama dillerini listeleyen): VB hala ilk 10'da!
COBOL
Eski uygulamaları güncelleyen ve geçişini yapan Brandon Edenfield, "Gördüğümüz insanların %90'ından fazlasının yazdıklarının temel parçası olarak COBOL'a sahip olduğunu söyleyebilirim" diye tahmin ediyor. Modern Sistemler New York ve Singapur borsaları için kuralların revize edilmesine yardımcı oldu. "Aklınıza gelebilecek herhangi bir büyük şirket muhtemelen sağlıksız miktarda bu tür şeylere sahiptir."
Ortak İş Odaklı Dil'in kısaltması olan COBOL, 1959'da bütçe takibi, bankacılık işlemleri ve bordro muhasebesi gibi veri işleme görevlerine yönelik olarak piyasaya sürüldü. Savunma Bakanlığı (DOD) dili başlangıçta geçici bir proje olarak tasarladı. Daha sonra Savunma Bakanlığı, bilgisayar üreticilerinin sattıkları makinelere COBOL'u dahil etmelerini talep etti ve dil, önümüzdeki birkaç on yılda hızla yayıldı. 2017'ye göre ATM'lerin %95'inden fazlası ve bankaların %40'ı hala COBOL kodunu kullanıyor Reuters raporu.
Bu programlamanın büyük bir kısmı ana bilgisayarlara dağıtıldı ve modern sistemler buluta taşındı. New Jersey'deki durumun da gösterdiği gibi, COBOL kodunu nasıl sürdüreceğini bilen geliştiriciler iş gücünden yaşlanıyor ya da çoktan emekli olmuş durumda.
Bu programları modernleştiren şirketler bunu genellikle birkaç farklı yolla yaparlar.
“Büyük bir sistem entegratörü koda bir sürü gövde atacaktır; Oturacaklar, bakacaklar ve yeniden yazacaklar” diyor Edenfield. Bu yaklaşım genellikle en riskli, zaman alıcı ve maliyetli olanıdır. Ortalama olarak, elle kodlanan, büyük yeniden platform oluşturma işleri 3 ila 10 yıl sürebilir ve yüz milyonlarca dolara mal olabilir.
Edenfield otomatik çözümler öneriyor ve ilk mantıksal adımın kodu başka bir yere taşımak olabileceğini söylüyor. COBOL'un güncel olmayan bir sürümünden güncel bir sürüme geçiş, birçok sistemin modern sürüme geçişini sağlayacak sunucular. Makine güncellemesini Fransızca'dan İngilizce'ye çevirmeye benzetiyor: "Söylenenlerin temeli mükemmel bir şekilde çevrilmiş. Sadece ifade şeklinin sözdizimini düzeltmeniz gerekiyor. Bu yaklaşımın aynı zamanda güncelleme süresini ve maliyetini de azaltabileceğini söylüyor; bu da altı ila 24 ay arasında bir süre anlamına geliyor.
Ucuz olacak mı? Eh, daha ucuz olacak. Modern Sistem projelerinin fiyatları genellikle 200.000 ila 10 milyon dolar arasında değişmektedir. Edenfield, projenin büyük bir bölümünün kodu çevirmek değil, her şeyin doğru olduğundan emin olmak için test yapmak olduğunu açıklıyor.
Bu güncellemelerin gerçekleşmemesinin nedeni nedir?
"Bunu daha önce kimse duymamıştı çünkü bu seksi bir konu değil ve insanlar genellikle sahip oldukları kirli çamaşırlar hakkında konuşmaya çalışmıyorlar" diye açıklıyor. BT yöneticilerinin aynı zamanda kutuyu yola tekmeleme alışkanlığı da var.
"New Jersey eyaletinin artık bu konuya dikkat edeceğine bahse girerim, ancak aynı zamanda meslektaşlarının yarısının bunun onların başına gelmeyeceğini düşüneceğine de bahse girerim, 'Ben değil.'"