COBOL hala öğrenmeye değer mi? [kapalı]


23

COBOL öğrenmek hâlâ mantıklı geliyor mu?


9
9990 civarında olacak, o kadar yaşayacağınızdan emin değilsiniz.
Toon Krijthe

4
@Gececat --- Sadece Y10K problemi daha önce tembel olmayan şirketler veya bireyler tarafından çözülmediyse, doğru mu ?!
Mark C

2
Unutma, tek başına COBOL seni uzaklara götürmez. Çalışmak istediğiniz işletim sistemi için yığını serbest bırakmanız gerekir. Örneğin, IBM makinelerinde, COBOL'a ek olarak VSAM, MVS veya Z, CICS, ISPF, IMS ve ISPF, Panvalet / Easytrieve, JCL olabilir.
NoChance

2
cobol.com gerçekten Web 2.0 görünüyor ve bir kahve makinesi veriyorlar! Eğer bu modern ve pragmatik değilse ve buzzword eklerse ne olduğunu bilmiyorum.
Raphael R.

Eğer iyi olursanız ve bir COBOL mağazası bulursanız, sabit bir gelir elde edebilirsiniz.

Yanıtlar:


26

Sanmıyorum ki, eğer zaten COBOL’un tutulduğu niş pazarda değilseniz.


13
Mevcut altyapının% 70'i COBOL'de çalışıyor. ATM'de bankamatik kartını kaydırmaktan, çevrimiçi uçak rezervasyonu yaptırmaya, hatta cep telefonu görüşmesini yönlendirmeye kadar. COBOL'de çalışan herkes (veya önemli ölçüde buna bağlı.) Neredeyse bir niş veya eski bir ortam. Bu sistemlerin çoğu neredeyse kesintisiz ve on yıllardır iyi çalışıyor (Java ve .NET'te sahip olduğumuzdan çok daha iyi bir kayıt) ve COBOL programcılarının sayısı azalmaktadır. $$$ çok yapmak ister misiniz? Kendinizi yaklaşık on yılda ortaya çıkacak olan muazzam COBOL eksikliği için konumlandırın.
luis.espinal

14
@ luis.espinal: hayır, bu yaygın bir efsanedir ve% 70'lik bir yüzde artık doğru değildir. COBOL kullanımı giderek azalmaktadır ve sonunda ondan kurtulacağız. Ve ... COBOL telefon görüşmesi yönlendirmesine dahil mi? Sanmıyorum Belki telefon görüşmesi faturalarında, ancak bugünlerde bile bu mümkün değildir.
Sihirbaz79

6
@ Lorenzo - Bir efsane% 70? Telekomünikasyonda yer almıyor mu? Bu iddiaları yedekleyebilir misin? Deniz taşımacılığına (onlarca K konteyner / yıl) veya Sağlık endüstrisindeki katılımını bile saymıyoruz. Nerede çalıştığınızı bilmiyorum ama burada Kuzey Amerika'da (ve diğer birçok yerde), COBOL çok sayıda var ve iyi çalışıyor . Neden biri işe yarayan ve bu iş için kritik olan bir şeyi yeniden yazma konusunda risk alsın ki ? Tüm Java veya C ++ 'da yeniden yazacağımı hayal etmeyi çok isterdim, ama fanteziler var ve yazılım mühendisliği ve yazılım ekonomisi var.
luis.espinal

9
@ luis.espinal: telekomünikasyon endüstrisinde çalıştığım gibi, telefon santrallerinin COBOL kullanmadığından emin olduklarını biliyorum ... özel donanım ve bellenime dayanıyorlar. Bazı şirketler hala faturalandırma ve muhasebe için COBOL kullanıyor, ancak yenileri (mobil operatörler gibi) bunun için bile farklı teknolojilere güveniyor. Geçiş devam ediyor.
Wizard79

8
@ luis.espinal: kayınvalidem, yeni anahtarlar için yazılım yazan büyük bir telekom şirketi için çalışıyor. COBOL KULLANMAYIĞINI kesinlikle olumlu olarak garanti ederim!
Bob Jarvis - Monica'yı

36

Nooo, elbette değil. Sonuçta COBOL ölü bir dildir. Yoksa öyle mi?

Bu görüşün sorunu, bunun gibi sitelerdeki programcıların genellikle yüksek teknoloji ürünü, hızlı çalışan (ve aynı derecede hızlı yanan) şirketlerle çalışmasıdır. Onlar için COBOL ölü bir dildir - görülecek bir yer yok. Şimdilik bir süredir olmadı, doğru.

Ancak COBOL onlar için değildi. Yazılım endüstrisinde bundan daha fazlası var. Bilgisayarlar, her zaman eskileri yenileriyle değiştirmek ve yenilemek için bazı irrasyonel ihtiyaç duyan insanlar için icat edilmedi. İş amaçlı yapıldılar.

COBOL'u görmek ister misin? Bordroyu işleyen, mal taşımacılığı yapan veya nakliye yapan (gemilerdeki gibi) veya banka hesabınızı tutan bir şirkete gidin. Kullanıcılar için pratik olarak görünmeyen büyük bir görünmez kod sistemi var ve çoğu her gün bir şekilde ya da başka bir şekilde karşılaşsalar bile (ATM'ler?) Bir daha hiç düşünmüyorlar.

Hayır, ölmedi. Ama kesin "miras" mı ... yoksa öyle mi?

Yine, nasıl baktığına bağlı. Günümüzde birçok insan Java, C veya COBOL yerine başka bir şey kullanacak, sıfırdan yazacak ... devam ederken yeni böcekler ortaya çıkacak, doğal olarak. Bu COBOL'un böcek ve tuhaflıklarının olmadığı anlamına gelmez. Bir sonraki dilde olduğu gibi. Tabii ki öyle. Ancak “COBOL times” da, böcekleri normalden daha fazla ciddiye alan şirketler (sigorta, bankalar) özel hizmet gruplarıyla daha yüksek kalite kodu üretme eğilimindeydiler; Bugün zamanın ve bütçenin daima kaliteyi kazandığı son tarihler var. Ayrıca, bu sistemler başlangıçta, şimdiki değere kıyasla daha uzun süre boyunca geliştirilmiştir.

Bazı yazılımlar 30 yıldan fazla bir süredir çalışıyorsa, geçiş yapmak için teşvik nerede? Bütün şirketler işten atıldı çünkü kırılmazsa, düzeltmeyin” denilen eski atasözünü göz ardı ettiler. Birçoğu, şeyi yeniden yazmaya çalıştı ... sonra ilk yeniden yazma çok pahalıya mal oldu, ikincisi daha da pahalıya mal oldu ... ve yeni ve gelişmiş olanların hiçbiri yerini almayı başaramadı. Dediğim gibi, bu endüstri hızlı yanıyor ve aynı zamanda hızlı unutabiliyor.

70'lerde COBOL yakında öldü ya da ölüyordu, C / C ++ hüküm sürecekti. Sonra yine 80'li yılların başında Pascal devraldı. Sonra 90'lı yıllarda Java Dil olarak ...

Unisys Mapper'ı, dBase'i, Clipper'ı, Cold fusion'ı düşünün ... insanlar bunları bile hatırlıyor mu? Her biri COBOL için mezar kazası olacaktı.

Bunu hesaba katarak ve yüksek hacimli işlemlerin, toplu işlemlerin veya kayıt / işlem odaklı işlemlerin işlenmesinin harika olduğu gerçeği ve bunun COBOL kodu olarak 30 yıllık yazılmış bir alt yordamı derleyebildiği ve çağırabildiği ve yönetilen bir COBOL.NET den Windows ve .NET gitmek isterse, onun için uygun bir yedek bulmakta sorun yaşıyorum. (Ayrıca on yıldan fazla süren bir Microsoft teknolojisi bulmakta da güçlük çekiyorum.)

Evet, bugün yeni COBOL kodu yazılmaktadır. Birinin nereye bakacağını bilmesi gerekir.

COBOL, IMHO'ya gülmek isteyenler için, Mısır Piramitlerine gülmek gibi, 5000 yıl boyunca oradalar ve gelecek 5000 yıl içinde hala orada olacaklar, bugün 24 denetime ihtiyaç duyan “merhaba dünyası” konutu silinecek, değiştirildi, gelecek ay unutuldu.

Peki tüm bu COBOL programcıları nerede?

Ah, işte burası ovma yatıyor. Mesele şu ki, çoğunun bilgisayar bilimi arka planı yok. Birçoğu profesyonel programcı değildir (üniversitedeki CS / SE programından mezun olan). Çoğunlukla, 30'lu yaşlarının sonlarında, tüm uzmanlık alanlarından, tamamen şirket tarafından özel olarak bu iş için eğitilmiş kişilerdir. Bu yüzden onlar "COBOL programcıları" değildir - aldıkları eğitim, içerden çok fazla terfi eden şirkete özeldir. Ve bu onları hemen hemen görünmez yapıyor.


9
Bir iPhone / masaüstü / Web 2.0 zihniyetine sahip olmak bilgisayar dünyasının genişliğini unutmanın iyi bir yoludur.
Paul Nathan

8
Peki tüm bu COBOL programcıları nerede? Taksileri sürmek.
johnc

1
@johnc - nereden aldın? Mevcut altyapının% 70'i COBOL'de çalışıyor ve COBOL programcıları yetersizliği var. COBOL'u sadece dot-com günlerinde geri bildiyseniz bir iş bulmak zor olabilirdi (şimdi on yıldan bahsediyoruz). Ama şimdi??? Dostum, COBOL, sadece bu sistemlerin kritikliği ve COBOL ile çalışmayı bilen (veya şansı yakalayacak kadar akıllı) olan yazılım geliştiricilerin yetersizliği nedeniyle yaklaşık on yıl içinde yüksek talep görecek.
luis.espinal

2
@ luis.espinal COBOL programcılarının eksikliğiyle karşı karşıya olduğumuz sorunların tamamen (ve acı verici) farkındayım, ancak yorumum biraz da anlamsız bir şekilde deneyimlerden itiraf ettiğimden söz edildi. Avustralya’da, en azından, tanıdığım hemen hemen her taksi şoförü, son on yılda, yeni bir göçmen olmayan (ve muhtemelen bazıları) eski bir COBOL programcısı oldu. Tesadüf, belki de, bunun taksi şoförleri, göçmenler veya COBOL geliştiricileri hakkında kişisel bir yargıya neden olmadığını söylüyorum. Bu sadece bir gözlem.
johnc

2
@ johnc - Sözünden şüphe etmiyorum, ama bu gözlemin aşırı inanmaya zor olduğunu düşünüyorum.
Rook

16

Kendinizi COBOL programcısı olarak görüyorsanız, devam edin. COBOL'da yazılmış ve bakım gerektiren milyarlarca satır hala var.

Aslında, gereksiz bilgi diye bir şey yoktur , bu nedenle sahip olduğunuz (ve) sahip olduğunuz bilgiyi ve daha geniş fırsatları genişletin.


1
Gereksiz bilgi diye bir şey olmadığı göz önüne alındığında, Intercal'i öğrendiğiniz bir sonraki dile aday gösteririm!
Tikhon Jelvis

@TikhonJelvis: Çok kolay, çok kolay. Malbolge, aradığınız şey.
Magus

15

COBOL

Öğrenme mantıklı geliyor mu?
Şey, bu bir niş ve sürdürülmesi gereken ve sadece yeniden yazılamayan tonlarca eski çalışma kodu var. Bu nedenle, tüm programcıların geniş kitleleri için gerçekten bir seçenek olmamakla birlikte, bireyler için sabit bir gelir için bir bakış açısıdır.

Bununla birlikte, onlarca yıldan beri var olanları yavaşça geliştirmek yerine, yeni çözümler üretmekle ilgileniyorsanız, COBOL muhtemelen doğru dil değildir.


8

Pek çok Avrupalı ​​şirket hala z / vse ve cobol programları gibi çalışan ana bilgisayarlara güveniyor. Yetenekli cobol programcılarına, kimsenin piyasanın dolduracağını düşündüğünü, bunun da maaşı arttıracağını talep ediyor.

Asıl soru, "Kobol kullanarak yeni bir şey geliştirebilecek miyim?" Olmalı. Çünkü hemen hemen her şey mevcut iş için kritik olan şeylerin bakımı veya çeşitliliğidir.


5

Her gün COBOL ve PL / I kodlarının yazıldığı IBM için çalışıyordum. Ayrıca, IBM’in ana bilgisayarlarına dayanan büyük şirketlerden, saniyede binlerce işlem gerektiren pek çok banka gibi bu diller hala yoğun olarak kullanılıyor.

Böyle bir yerde çalışmak istemiyorsanız (Bu yüzden 6 ay boyunca orada çalıştım) o zaman bu dilleri öğrenmeyi bile düşünmeyin.


Ekonominin bel kemiği üzerinde çalışmak, kesinlikle bu tür trafikle uğraşmak, ki bu pek çok kişi tarafından iyi bir mühendislik ve iş fırsatı olarak görülecektir.
luis.espinal

5

Her gün yeni Cobol kodu yazarız ve sürekli yeni programcılar arıyoruz. Tedarik buralarda çok küçük.


5
Bu gerçekten korkutucu ama ilginç. Asla gerçek bir canlı cobol programcısıyla tanışmadım (ve ben bahar tavuğu değilim)
Tim

3
Neden korkutucu? Muhtemelen, hiç bir Lisp programcısı ile tanışmadınız ...

@Tim MicroFocus'tan Code Project hakkında yazılar yazan bir adam var - hepsi COBOL'da ... .NET için! COBOL'un daha modern teknolojilerle güncellendiğini görmek gerçekten garip.
MetalMikester

2
@Thorbjorn - Lisp kodlar ve lisp programcıları tanırdım. Belki de sadece cahil ve önyargılıyım ama kobolda bildiğim şey beni bu dilde DAHA FAZLA kod yapmayı düşünmeye zorlamıyor.
Tim,

1
Lisp ilginç projeler için kullanılır ve başlı başına ilginç bir dildir. Öyleyse C ++, Ruby on Rails, Smalltalk ve Haskell. Cobol sıkıcı iş uygulamaları için kullanılır ve sadece bunun için derleyiciler ve araçlar oluşturmak zorunda olan insanlar için ilginçtir. Temel olarak, havalı çocuklar Cobol kullanmaz ve ben de "cool" kelimesini, beni de içerecek kadar gevşek kullanırım. Cobol insanlarını bulmak için bir işletme okulu gibi farklı yerlere gitmeniz gerekecek.
David Thornley

4

COBOL programcısı olarak bir iş sahibi olmak istiyorsanız, emin olun, devam edin ve öğrenin.

Başka bir nedenle, modern programlama teknikleri konusunda size yardımcı olabilecek faydalı bir şeyler öğrenmeye çalışmak gibi, hayır, canınızı sıkmayın.


IMO, modern programlama tekniklerinin programlama dilleri ile ilgisi yoktur ve yazılım metodolojisi ile de ilgilidir. Varis yaşamında OO dillerinden başka bir şey görmemiş, ancak iyi bir OO tasarımının nasıl olduğunu tarif edemeyen geliştiriciler var. İyi programlama ve yazılım mühendisliği ilkeleri programlama dillerini aşar. Yeterli becerilere sahip genç bir geliştiricinin, Java'da yazılmış başka bir prosedürel kabuk katmanından daha eksik bir kritik "prosedürel" mirasla başa çıkacak daha iyi bir yazılım mühendisliği öğrenme deneyimine sahip olacağını hayal ediyorum (ben bir Java geliştiricisi btw.)
luis.espinal

3

2000 yılında, bir araya getirilen diğer tüm dillerden daha fazla yazılmış COBOL satırı olduğuna dair bir istatistik okudum.
Buna ek olarak IBM, herhangi bir MVS sisteminde derlenen herhangi bir TEXT deck'in (nesne kodu) tüm MVS sistemlerinde çalıştırılabilir olduğunu ve güneş parladığı sürece COBOL programlamanın olacağına dair bir garantiniz olduğunu garanti eder.


6
COBOL'un ne kadar ayrıntılı olduğunu düşünürseniz, bu hiç şaşırtıcı değil ;-).
Oliver Weiler

3

Size nasıl "öğrendiğimi" söyleyebilirim:
onunla çalışmak için çalıştım, ne olduğu hakkında hiçbir fikrim yoktu ve bir gecede bunu öğrenmede zorluk çekmedim.

Yani, ihtiyacın olursa öğrenebilirsin. İşe yaramaz bilgilerle kendinizi aşırı yüklemeye gerek yok. Gerçekten pratik bir ihtiyaç duymadığınız sürece, onunla ya da angajmanlarıyla ilgili ilginç bir şey yoktur.

Genel cevap: kodlama prensiplerini öğren, spesifik uygulamalarını değil (diller gibi)


2

Bunun için zaman harcamam.
Her neyse, COBOL, 20 30 yıl önce başlayan birçok Büyük Şirket için kritik öneme sahip olan birçok eski uygulama programının yapı taşlarıdır.
Bu nedenle, COBOL'de ana işinin bir parçası olan bir şirket için işe alınmışsanız, öğrenmeye başlamanız için bir ihtimal var.


Sevmek? (15 karakter)
TheLQ

@TheLQ Bankaları veya Sigorta şirketleri, 20 ila 30 yıl önce COBOL'de yazılım kuruluşlarına sahip oldular.
systempuntoout

2

Sonuçta, işlerin nasıl yürüdüğünü (veya işe alıştığını) bilmek kötü bir şey olamazsa onu öğrenin.

Bununla birlikte, özgeçmişinizde COBOL becerilerinizi çok fazla vurgulamanızı tavsiye ederim.

Bazı yerlerde (örneğin yaşadığım Silikon Vadisi'nde) özgeçmişinizde COBOL olması bir sorumluluk olacaktır. Tabii ki, burada ve orada uzmanlığınıza ihtiyaç duyan bir yer bulabilirsiniz ve bu durumda devam edin ve yalnızca bu yerlere reklam verin . Ancak genel olarak, kendinize bir iyilik yapın ve COBOL'u bildiğinizi belirtmeyi unutmayın.

Yani evet, merak ediyorsan öğren, kimseye söyleme.


1

Belki bir iş piyasası perspektifinden değmez, ancak "iyi günlerde" nasıl yapıldığını hissetmek için bir göz atmak isteyebilirsiniz. ^^


Piyasanın COBOL için kötü olduğu tek zaman (sanırım), e-hype ve hepsi ile dot-com kıyamet sırasındaydı.
luis.espinal

1

Kişisel bir bakış açısıyla, önce öğrenilecek daha iyi şeyler olduğunu söyleyebilirim. Bununla birlikte, birçok büyük şirket COBOL kod tabanına, muhtemelen geride asla bırakamayacakları çok büyük yatırımlara sahiptir ve COBOL programcılarının kod tabanını koruyabilmeleri ve yeni kod yazabilmeleri için bir endüstri yaratacaktır. Çalıştığım şirket büyük bir finansal şirket ve geliştiricilere yönelik teknoloji bölümümüz kabaca% 30 COBOL,% 40 Java ve% 30 C #.


2
mümkün, evet, fakat neden - çalışma kodu çalışma kodudur.

0

Sadece Avustralya'nın en büyük iş web sitesinde "cobol" için bir arama yaptım. 87 sonuç döndürdü ve (hızlı bir kayma ile) çoğunlukla bankalarda ve finans kurumlarında eski bakım pozisyonları gibi görünüyorlar. Muhtemelen Cobol deneyiminin azlığından dolayı, daha çok "modern" dil temelli işlerden daha iyi ödeme yapıldı.

Bu yüzden evet, 1) eski bakımları yapmayı düşünmüyorsanız Cobol'un öğrenmeye değeceği ve 2) artık iyi öğrenilen ve muhtemelen çok rekabetçi olmayan bir nişe girmek istediğinizde öğrenmeye değer olduğu görülüyor.

(Cobol pazarının çoğu Birinci Dünya ekonomisinde benzer olacağını, ancak yanlış olabileceğini farz ediyorum?)


Bankacılık / sigorta / PA bile yavaş yavaş daha modern teknolojilere dönüşüyor. Öyleyse şimdi bu boşluğa girmek iyi olabilir, ama nihayetinde tüm eski kurallar ve niş pazarı ortadan kalkınca ne olacak?
Sihirbaz79

@Lorenzo: Bu, alanımızdaki herhangi bir uzmanlık hakkında söylenebilir (genel olarak tüm alanlar dahil). Yeniden eğitim. Örneğin. Buharlı lokomotif sürücüleri dizel ya da elektrikli lokomotif sürücüleri, vb. Yeniden çalışmak zorunda kaldılar. :)
Bobby Tables

Fakat COBOL zaten bir niş… fikir şu ki, eğer şimdi COBOL'u kucaklarsanız, muhtemelen diğer teknolojilerden daha erken bir zamanda yeniden eğitmeniz gerekecek.
Wizard79

1
@ Lorenzo - Hayır, gerçekten değil. Cs univ.'de ana akım olmadıkları gerçeği, onları otomatik olarak niş yapmaz. Bu sadece onlarla karşılaştığınız çevrelerde hareket etmediğiniz anlamına gelir. Otomobil üretim hattında çalışan kaç işçi tanıyorsunuz? Deniz mimarları? Uçak pilotları? Sizce onlar da niş mi? (ayrıca, bu örnek kategorilerin her ikisi için de iş reklamları bulmakta sorun yaşayacaksınız). Birinin nereye bakacağını bilmesi gerekiyor.
Rook

1
@Lorenzo - aslında COBOL ve FORTRAN kodlarının ve bilgi tabanlarının sonunda yeniden yazılacağına inanıyor musunuz? Gerçekten diyorum. Endüstride ve akademi'de böyle bir şeyin mümkün olduğuna ve daha az arzu edildiğine inanan biriyle hiç tanışmadım . COBOL gibi (çirkin bir tepki) göründüğü kadar çirkin, bu sistemler nokta-com günlerinden beri kurduğumuz e-saçmalıklardan daha iyi çalışıyor. Bu endüstriyel kalitenin bir kanıtı. Bu sistemleri yeniden yazmak yerine (sıfır riskli ve sınırsız ekonomik kaynaklar varsayarsak) sürdürmek daha iyi mühendislik ve ekonomidir.
luis.espinal

0

Çalışmak istediğiniz sorunlu alan türlerini düşünün. Genellikle, bu alan adlarının genellikle amaç için kullanılan bir dizi dili vardır. COBOL buna uygunsa devam edin.

Kolona ya da 10 ayak direği ile yoğun olarak kullanan sorun alanlarına dokunmamın bir yolu yok. Hamburger çevirmeyi tercih ederim.

Ayrıca, dilin programlama yeteneğinize / konseptlerinize bir miktar bonus / iyileştirme sunup sunmadığını dikkate alın. COBOL'un daha iyi yapılmadığını veya başka bir dilde daha iyi gösterilebileceğini / uygulayabileceğini / özelliklerini yapabileceğini düşünemiyorum.

Siz ve başkaları farklı hissedebilirsiniz.


0

COBOL'da yazılmış çok sayıda eski sistem var. Onları korumak veya başka programlama dillerine taşımak isteyip istemediğinize rağmen, hala COBOL öğrenmeye değer.

Ne olursa olsun, çoklu programlama dillerinde bazı bilgiler bir artı olacaktır, çünkü sahip olduğunuz bilgi, farklı proje ihtiyaçları için bir programlama dili veya yaklaşım seçmenize izin verir. Bilginizi programlama dillerinde daha iyi, daha temiz ve daha verimli kodlar oluşturmak ve tuzaklardan kaçınmak için kullanabilirsiniz.


2004-2005 yılları arasında ülkemde 200KSLOC'luk Ada83'ü Ada95'e ve 25KSLOC'luk COBOL68 ve COBOL74'ü Ada95'e taşıyan bir Donanma modernizasyon projesine katıldım. 1987'de COBOL'u öğrendim ve kesinlikle COBOL'u öğrenmek için zaman ve çabaya değer. Daha önce COBOL bilgisine sahip olup olmadığımı hayal edemiyorum.
Adrian Hoe,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.