코볼은 여전히 ​​배울 가치가 있습니까? [닫은]


23

코볼을 배우는 것이 여전히 타당합니까?


9
당신이 그렇게 오래 산다면 확실하지 않은 9990 년이 될 것이다.
Toon Krijthe

4
@Gamecat --- Y10K 문제가 아직 게으른 회사 나 개인에 의해 해결되지 않은 경우에만!
Mark C

2
COBOL만으로는 멀지 않을 것입니다. 작업하려는 OS의 스택을 laarn해야합니다. 예를 들어, IBM 시스템에서는 VSAM, MVS 또는 Z, CICS, ISPF가 COBOL 외에 IMS 및 ISPF, Panvalet / Easytrieve, JCL 일 수 있습니다.
NoChance

2
cobol.com은 정말 웹 2.0 틱 외모 그들이 멀리 커피 머신 줘! 그것이 현대적이고 실용적이지 않고 유행어삽입 하면 나는 무엇을 모른다.
Raphael R.

당신이 그것을 잘하고 코볼 상점을 찾으면 꾸준한 수입을 얻을 수 있습니다.

답변:


26

COBOL이 여전히 유지되는 틈새 시장에 있지 않는 한 그렇게 생각하지 않습니다.


13
기존 인프라의 70 %가 COBOL에서 실행됩니다. ATM에서 직불 카드 스 와이프, 온라인 비행기 예약, 휴대 전화 통화 라우팅까지. 모든 사람들은 COBOL에서 실행됩니다 (또는 크게 의존합니다). 틈새 시장이나 레거시 환경은 아닙니다. 이러한 시스템의 대부분은 거의 중단없이 수십 년 동안 잘 운영되어 왔으며 (Java 및 .NET에 비해 훨씬 더 나은 실적을 보였으며) COBOL 프로그래머의 수가 감소하고 있습니다. $$$를 많이 만들고 싶습니까? 약 10 년 안에 발생할 수있는 엄청난 코볼 부족에 대비하십시오.
luis.espinal

14
@ luis.espinal : 아닙니다. 이것은 일반적인 신화이며, 70 %는 더 이상 사실이 아닙니다. COBOL 사용량은 꾸준히 감소하고 있으며 결국 폐기 할 것입니다. 그리고 ... COBOL이 전화 통화 라우팅에 관여 했습니까? 나는 그렇게 생각하지 않습니다. 아마도 전화 통화 청구에서 아마도 요즘에는 없을 것입니다.
Wizard79

6
@ 로렌조-신화 70 %? 통신에 관여하지 않습니까? 당신은 그 주장을 백업 할 수 있습니까? 우리는 선적 (컨테이너 수십 K 컨테이너) 또는 건강 관리 산업에 대한 참여도 세지 않습니다. 나는 그것이 어떻게 일하는 지 모르겠지만, 여기 북미와 다른 많은 곳에서 COBOL은 많은 수로 존재하며 잘 작동합니다 . 왜 누군가는 효과가 있고 미션 크리티컬 한 무언가를 다시 작성할 때 위험을 수반 합니까? 나는 Java 또는 C ++로 모두 다시 작성하겠다는 환상을 갖고 싶지만 환상이 있으며 소프트웨어 공학과 소프트웨어의 경제성이 있습니다.
luis.espinal

9
@ luis.espinal : 통신 산업에서 일하면서 전화 교환 장치가 COBOL을 사용하지 않는다는 것을 알고 있습니다 ... 전용 하드웨어 및 펌웨어를 기반으로합니다. 일부 회사는 여전히 청구 및 회계에 COBOL을 사용하지만 모바일 회사와 같은 새로운 회사는이를 위해 다른 기술을 사용합니다. 전환이 진행 중입니다.
Wizard79

8
@ luis.espinal : 내 형제는 주요 스위치 회사에서 새로운 스위치 용 소프트웨어를 작성합니다. 나는 그가 COBOL을 사용하지 않는다는 것을 절대적으로 긍정적으로 보장합니다!
밥 자비스-복원 모니카

36

물론 아닙니다. 코볼은 결국 죽은 언어입니다. 아니면?

이러한 견해의 문제점은 이와 같은 사이트의 프로그래머는 일반적으로 첨단 기술, 빠른 실행 (및 동일하게 빠른 소각) 회사와 협력한다는 것입니다. 그들에게 코볼은 죽은 언어입니다. 한동안은 없었습니다.

그러나 COBOL은 그들을위한 것이 아닙니다. 이보다 소프트웨어 산업에는 더 많은 것이 있습니다. 컴퓨터를 구식으로 항상 업그레이드하고 교체해야하는 비합리적인 요구를 가진 사람들에게는 컴퓨터가 발명되지 않았습니다. 그들은 사업 목적으로 만들어졌습니다.

COBOL을보고 싶으십니까? 급여를 처리하거나 상품 운송 또는 운송 (선박에서와 같이)을 처리하거나 은행 계좌를 처리하는 회사로 이동하십시오. 사용자에게는 실제로 보이지 않는 거대한 보이지 않는 코드 시스템이 있으며, 대부분의 방식으로 매일 또는 다른 방식으로 코드를 접하더라도 생각하지 않습니다.

아니, 죽지 않았어 그러나 그것은 확실히 "레거시"입니까?

다시, 당신이 그것을 보는 방법에 달려 있습니다. 요즘 많은 사람들이 COBOL 대신 Java, C 또는 다른 것을 사용하여 처음부터 다시 작성하여 자연스럽게 새로운 버그를 도입합니다. COBOL에 버그가없고 기발한 것은 아닙니다. 그것은 다음 언어만큼 그렇습니다. 물론 그렇습니다. 그러나 "COBOL 시대"에서 평소 (보험, 은행)보다 버그를 더 심각하게 고려한 회사는 특수 품질 서비스 그룹에서 더 높은 품질의 코드를 생성하는 경향이있었습니다. 오늘날, 시간과 예산이 항상 품질을 능가하는 마감일이 있습니다. 또한,이 시스템은 원래 그 당시의 시스템과 비교하여 오랜 기간 동안 개발되었습니다.

일부 소프트웨어가 30 년 이상 작동 한 경우 전환 유인은 어디에 있습니까? "전체가 깨지지 않으면 고치지 마십시오" 라는 옛 속담을 무시했기 때문에 회사 전체가 사업을 중단했습니다. 많은 사람들이 그 일을 다시 쓰려고 노력했습니다 ... 첫 번째 다시 쓰려면 많은 비용이 들었고 두 번째 것에는 더 많은 비용이 들었습니다 ... 새롭고 개선 된 어느 것도 그것을 대체 할 수 없었습니다. 내가 말했듯이,이 산업은 빠르게 구워지고 있으며 또한 빨리 잊는 경향이 있습니다.

70 년대에 COBOL이 곧 죽거나 죽어 가면서 C / C ++가 지배 할 것입니다. 그런 다음 80 년대 초 파스칼이 다시 인수되었습니다. 그리고 90 년대에 그것은 언어로서의 자바였습니다 ...

Unisys Mapper, dBase, Clipper, Cold fusion 등을 생각해보십시오. 그들 각각은 COBOL의 무덤이 될 것입니다.

이를 고려하면, 대량의 트랜잭션 처리, 배치 처리 또는 레코드 / 트랜잭션 지향 처리에 유용하며 관리 형 COBOL 코드 및 호출로 30 년 된 서브 루틴을 컴파일 (오류없이) 할 수 있다는 사실 관리되는 COBOL.NET에서 Windows와 .NET으로 가고 싶다면 적절한 대체물을 찾는 데 어려움을 겪고 있습니다. (또한 10 년 이상 지속 된 Microsoft 기술을 찾는 데 어려움을 겪고 있습니다.)

예, 새로운 COBOL 코드가 오늘 작성되고 있습니다. 어디를보아야하는지 알아야합니다.

코볼, IMHO를 비웃는 사람들에게는 이집트 피라미드를 비웃는 것과 같으며, 5000 년이 지난 지금도 5000 년이 지나도 여전히있을 것입니다. 오늘날 24 개의 통제가 필요한 "hello world"주택은 삭제 될 것입니다. 다음 달에 잊혀진

그렇다면 코볼 프로그래머들은 어디에 있습니까?

아, 여기에 문지름이 있습니다. 문제는 많은 컴퓨터 과학 지식이 없다는 것입니다. 그들 중 다수는 전문 프로그래머가 아닙니다 (CS / SE 프로그램을 졸업 한 대학 졸업자와 마찬가지로). 대부분의 경우, 그들은 전문 지식의 모든 분야에서 30 대 후반에서 30 대 후반의 사람들로, 해당 직무를 위해 회사가 전적으로 훈련했습니다. 따라서 그들은 "COBOL 프로그래머"가 아닙니다. 그들이받은 훈련은 내부에서 많이 홍보하는 회사에 한정된 것입니다. 그리고 그것은 그것들을 거의 보이지 않게 만듭니다.


9
iPhone / desktop / Web 2.0 사고 방식을 갖는 것은 컴퓨팅 세계의 광대 함을 잊는 좋은 방법입니다.
Paul Nathan

8
그렇다면 코볼 프로그래머들은 어디에 있습니까? 택시 운전.
johnc

1
@ johnc-어디서 얻었습니까? 기존 인프라의 70 %가 COBOL에서 실행되며 COBOL 프로그래머가 부족합니다. 닷컴 시대에 코볼 만 알고 있다면 일자리를 구하기가 어려웠을 수도 있습니다 (현재 10 년 동안 이야기하고 있습니다). 그러나 지금??? COBOL은 이러한 시스템의 중요성과 COBOL과 함께 일할 수있는 소프트웨어 개발자의 부족으로 인해 약 10 년 만에 수요가 높아질 것입니다.
luis.espinal

2
@ luis.espinal 나는 우리가 COBOL 프로그래머의 부족에 직면하고있는 문제를 완전히 (그리고 고통스럽게) 알고 있지만, 내 의견은 경험에서 다소 경솔하게 말했었다. 호주에서는 적어도 지난 10 년간 내가 만난 모든 택시 기사가 최근 이민자 (아마도 일부는 아니었다)는 전직 COBOL 프로그래머였다. 우연의 일치라고 생각합니다. 저는 택시 운전사, 이민자 또는 COBOL 개발자에 대해 개인적으로 판단하지 않습니다. 그것은 단순히 관찰입니다.
johnc

2
@ johnc-나는 당신의 말을 의심하지 않지만 그 관찰은 믿기 어려울 것입니다.
Rook

16

자신을 COBOL 프로그래머로 볼 수 있다면 그렇게하십시오. 유지 보수가 필요한 COBOL로 작성된 수십억 줄이 여전히 있습니다.

실제로 불필요한 지식과 같은 것은 없으므로 지식을 넓히고 기회를 넓힐 수 있습니다.


1
불필요한 지식과 같은 것이 없다는 것을 감안할 때, 나는 당신이 배우는 다음 언어를 위해 Intercal을 지명합니다!
Tikhon Jelvis 5

@TikhonJelvis : 너무 쉽게, 너무 쉽게. Malbolge는 당신이 찾고있는 것입니다.
Magus

15

코볼

그것을 배우는 것이 의미가 있습니까?
글쎄, 그것은 틈새 시장이며 유지 보수가 필요하고 재 작성 할 수없는 수많은 작동하는 레거시 코드가 있습니다. 따라서 실제로 모든 프로그래머에게 엄청난 옵션은 아니지만 개인의 꾸준한 수입에 대한 관점입니다.

그러나 수십 년 전부터 개선 된 솔루션을 천천히 개선하기보다는 새로운 솔루션을 만드는 데 관심이 있다면 COBOL이 올바른 언어가 아닐 수 있습니다.


8

많은 유럽 기업들이 여전히 z / vse 및 코볼 프로그램과 같은 메인 프레임에 크게 의존하고 있습니다. 숙련 된 코볼 프로그래머에 대한 수요가 있으며, 시장을 가득 채울 것이라고 생각하는 사람은 아무도 없습니다.

문제는 "코볼을 사용하여 새로운 것을 개발할 것인가?" 거의 모든 것이 기존 미션 크리티컬 한 것들의 유지 보수 또는 변형이기 때문입니다.


5

저는 COBOL 및 PL / I 코드가 매일 작성된 IBM에서 일했습니다. 또한 초당 수천 건의 거래가 필요한 많은 은행과 같이 IBM 메인 프레임에 의존하는 대기업의 경우 이러한 언어가 여전히 많이 사용됩니다.

그런 곳에서 일하고 싶지 않다면 (그 때문에 6 개월 동안 방금 일한 이유입니다) 그런 언어를 배우는 것을 생각조차하지 마십시오.


경제의 중추를 다루고 그러한 유형의 트래픽을 처리하는 것은 많은 사람들에게 좋은 엔지니어링 및 비즈니스 기회로 여겨 질 것입니다.
luis.espinal

5

우리는 매일 새로운 Cobol 코드를 작성하고 있으며 새로운 프로그래머를 지속적으로 찾고 있습니다. 공급이 너무 적습니다.


5
정말 무섭지 만 흥미 롭습니다. 나는 실제 라이브 코볼 프로그래머를 만난 적이 없으며 (봄 닭고기가 아님)
Tim

3
왜 무섭지? 아마 Lisp 프로그래머를 만나 본 적이 없을 것입니다.

@Tim MicroFocus에서 코드 프로젝트에 대한 기사를 작성하는 사람이 있습니다. 모두 COBOL ... .NET 용입니다! 최신 기술로 COBOL이 업데이트되는 것은 정말 이상합니다.
MetalMikester

2
@Thorbjorn-나는 lisp로 코딩하고 lisp 프로그래머를 알고있었습니다. 어쩌면 나는 단지 무지하고 편견이 있지만 코볼에 대해 알고 있다고해서 그 언어로 더 많은 코드를 만드는 것에 대해 크게 생각하지는 않습니다.
Tim

1
Lisp는 흥미로운 프로젝트에 사용되며 그 자체로는 흥미로운 언어입니다. C ++, Ruby on Rails, Smalltalk 및 Haskell도 마찬가지입니다. Cobol은 둔한 비즈니스 응용 프로그램에 사용되며 컴파일러와 도구를 만들어야하는 사람들에게만 흥미 롭습니다. 기본적으로, 멋진 아이들은 코볼을 사용하지 않으며, "쿨"을 너무 느슨하게 사용합니다. 코볼 사람들을 찾으려면 비즈니스 스쿨과 같은 다른 장소로 가야합니다.
David Thornley

4

COBOL 프로그래머로 일하고 싶으면 계속해서 배우십시오.

다른 이유로, 현대적인 프로그래밍 기술에 도움이 될 수있는 유용한 것을 배우려고하는 것과 같이, 귀찮게하지 마십시오.


현대적인 프로그래밍 기술인 IMO는 프로그래밍 언어와 관련이 없으며 소프트웨어 방법론과 더 관련이 있습니다. 상속인의 삶에서 OO 언어 외에는 아무것도 보지 못했지만 좋은 OO 디자인이 무엇인지 설명 할 수없는 개발자가 있습니다. 좋은 프로그래밍 및 소프트웨어 엔지니어링 원칙은 프로그래밍 언어를 초월합니다. 나는 더 나은 소프트웨어 공학 학습 경험을보다 누락 된 중요 "절차"기존 아직 자바로 작성된 절차 지각의 또 다른 레이어를 처리해야합니다 괜찮은 기술을 가진 젊은 개발자 상상 (내가 BTW 자바 개발자입니다.)
luis.espinal

3

2000 년에 나는 다른 모든 언어를 결합한 것보다 더 많은 코볼이 작성되었다는 통계를 읽었습니다.
또한 모든 MVS 시스템에서 컴파일 된 모든 TEXT 데크 (객체 코드)가 모든 MVS 시스템에서 실행 가능하며 태양이 비추는 한 COBOL 프로그래밍이 보장 될 것임을 IBM이 보증합니다.


6
장황한 COBOL의 사실에 대해 생각한다면 놀라운 일이 아닙니다. ;-).
Oliver Weiler

3

나는 어떻게 그것을 "학습"했는지 말할 수있다.
나는 그것에 대해 어떤 단서도 얻지 않고 밤새 그것을 배우는 데 어려움이 없었으며, 그것으로 일하는 데 고용되었다.

따라서 필요한 경우 배울 수 있습니다. 쓸데없는 지식으로 자신을 과부하 할 필요가 없습니다. 실제적으로 필요한 경우가 아니면 흥미 롭거나 흥미로운 것은 없습니다.

일반적인 대답 : 특정 구현 (언어 등)이 아닌 코딩 원칙을 배우십시오.


2

나는 그것에 시간을 보내지 않을 것입니다.
어쨌든, COBOL은 20 ~ 30 년 전에 시작된 여러 대기업에 미션 크리티컬 한 많은 레거시 응용 프로그램의 빌딩 블록입니다.
따라서 COBOL에서 핵심 비즈니스의 일부인 회사에 고용 된 경우이를 배우기 시작해야 할 가능성이 있습니다.


처럼? (15 자)
TheLQ

@TheLQ 은행 또는 보험 회사는 20 \ 30 년 전에 COBOL에 소프트웨어 기반을두고 있습니다.
systempuntoout

2

결국 일이 작동하는 방식 (또는 작동하던 방식)이 나쁜 것이 아니라는 점을 알고 있다면 배우십시오.

그러나 이력서에서 COBOL 기술을 지나치게 강조하지 않는 것이 좋습니다.

이력서에 COBOL이있는 곳 (예 : 내가 사는 실리콘 밸리)에서는 책임이 있습니다. 물론 여기저기서 전문 지식이 필요한 장소를 찾은 경우에는 해당 장소에만 광고하십시오 . 그러나 일반적으로 자신에게 호의를 베풀고 COBOL을 알고 있다는 것을 언급하는 것을 잊지 마십시오.

네, 궁금하다면 배우십시오. 아무에게도 말하지 마십시오.


1

직장 시장의 관점에서 볼 때 가치가 없을 수도 있지만 "좋은 하루에"일이 어떻게 이루어 졌는지 느낌을 얻기 위해 살펴볼 수도 있습니다. ^^


시장이 COBOL에 좋지 않은 유일한 시간은 전자 과대 광고와 닷 컴 종말 중에였습니다.
luis.espinal

1

개인적 관점에서 볼 때 먼저 배우는 것이 더 좋습니다. 그러나 많은 대기업은 COBOL 코드베이스에 대한 투자가 매우 커서 결코 뒤쳐 질 수 없을 것이므로 COBOL 프로그래머가 코드베이스를 유지하고 새 코드를 작성하는 산업을 만듭니다. 내가 일하는 회사는 대규모 금융 회사이며 개발자를위한 기술 분할은 대략 30 % COBOL, 40 % Java 및 30 % C #입니다.


2
가능합니다. 그러나 왜 – 작동 코드는 작동 코드입니다.

0

방금 호주 최대의 취업 웹 사이트에서 "코볼"을 검색했습니다. 87 개의 결과를 반환했으며 (빠른 탈락으로) 대부분 은행과 금융 기관의 기존 유지 관리 위치 인 것 같습니다. 아마도 Cobol 경험의 희귀 성 때문에 아마도 "현대적인"언어 기반의 직업보다 현저히 더 나은 임금을받습니다.

예, 1) 레거시 유지 관리를 신경 쓰지 않고 2) 더 이상 소수의 사람들이 배우는 것이기 때문에 돈이 많이 들고 경쟁이 치열한 틈새 시장에 들어가기를 원한다면 Cobol이 배울 가치가있는 것처럼 보입니다.

(코볼 시장은 대부분의 일차 세계 경제에서 비슷하지만 잘못 될 수 있다고 가정합니다.)


은행 / 보험 / PA조차도 보다 현대적인 기술 로 천천히 진화하고 있습니다. 이제이 틈새 시장에 진입하는 것이 좋지만 결국 모든 기존 코드와 틈새 시장이 사라지면 어떻게 될까요?
Wizard79

@Lorenzo : 글쎄, 이것은 우리 분야의 모든 전문 분야 (일반적으로 모든 분야조차도)에 대해 말할 수 있습니다. 재 훈련. 예. 증기 기관차 드라이버는 재교육과 디젤 또는 전기 기관차 드라이버, 등 등 :) 될했다
바비 테이블

그러나 COBOL은 이미 틈새 시장입니다 ... 아이디어는 지금 COBOL을 받아들이면 다른 기술보다 빨리 재교육을 받아야 할 것입니다.
Wizard79

1
@Lorenzo-아뇨. cs univ.에서 주류가 아니라는 사실이 자동으로 틈새 시장을 만들지는 않습니다. 그것은 당신이 그들을 만나는 곳에서 움직이지 않는다는 것을 의미합니다. 자동차 라인 생산에 종사하는 근로자는 몇 명입니까? 해군 건축가? 비행기 조종사? 당신은 그들이 틈새 시장이라고 생각합니까? 또한이 두 예 카테고리 모두에서 구인 광고를 찾는 데 어려움이 있습니다. 어디를 봐야하는지 알아야합니다.
Rook

1
@Lorenzo-실제로 모든 COBOL 및 FORTRAN 코드와 지식 기반이 다시 작성 될 것이라고 믿습니까? 진심으로. 나는 그런 일이 가능하고 훨씬 덜 바람직 하다고 믿는 학계와 학계의 어느 누구도 본 적이 없다 . 코볼이 (주관적인 반응)처럼 보이지만, 이러한 시스템은 닷컴 시대 이후 우리가 구축 한 전자 쓰레기보다 훨씬 잘 작동합니다. 그것은 산업 품질의 증거입니다. 시스템을 다시 작성하는 대신 엔지니어링 및 경제를 유지하는 것이 더 좋습니다 (위험이없고 무한한 경제적 자원을 가정).
luis.espinal

0

작업하려는 문제 도메인의 종류를 생각해보십시오. 일반적으로 이러한 도메인에는 일반적으로 목적에 사용되는 언어 세트가 있습니다. COBOL이 일치하면 계속 진행하십시오.

코볼이나 10 피트 극으로 많이 사용하는 문제 영역을 만질 방법이 없습니다. 차라리 버거를 뒤집고 싶어요.

또한 언어가 프로그래밍 능력 / 개념에 약간의 보너스 / 개선을 제공하는지 고려하십시오. COBOL이 더 잘 수행되지 않거나 다른 언어로 더 잘 보여 질 수있는 / 구현 / 기능을 생각할 수 없습니다.

당신과 다른 사람들은 다르게 느낄 수 있습니다.


0

COBOL로 작성된 레거시 시스템이 여전히 많이 있습니다. 이를 유지 보수하든 다른 프로그래밍 언어로 이식하든 COBOL을 배우는 것이 좋습니다.

그것이 무엇이든 관계없이, 여러 프로그래밍 언어에 대한 일부 지식은 당신이 가진 지식이 다른 프로젝트 요구에 대한 프로그래밍 언어 또는 접근 방식을 선택할 수 있기 때문에 더해집니다. 프로그래밍 언어에 대한 지식을 활용하여 더 좋고 깨끗하며 효율적인 코드를 구성하고 함정을 피할 수 있습니다.


2004 년에서 2005 년 사이에 저는 Ada83 200KSLOC를 Ada95로, 25KSLOC COBOL68 및 COBOL74를 Ada95로 포팅하는 우리 나라의 해군 현대화 프로젝트에 참여했습니다. 1987 년에 COBOL을 배웠으며 COBOL을 배우는 데 시간과 노력을 들일만한 가치가 있습니다. COBOL에 대한 사전 지식이 없는지 상상할 수 없었습니다.
Adrian Hoe
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.