Cobol Technical Demo

I work as a COBOL programmer - I have 6 months experience - for a consulting firm. Today, with the rest of the COBOL department, I met with the new director of my company.

After the initial analysis by the new responsible team, they noticed that compared to other services / technologies that our company can offer - Java, C ++, Objective-C, etc. - COBOL lacked "advertising." He stated that whenever members of other teams participate in projects, they will implement small demonstrations, which can then be shown to our clients whenever there is a presentation of our company. He gave examples of widgets for mobile devices in Objective-C, cool HTML5 web pages, etc. And I noticed that in COBOL there is nothing like it. Therefore, he wants us to develop some kind of tool / application to show what our competencies are.

We already told him that COBOL is used under the hood and does not have whistles and whistles. In addition, when hiring a COBOL programmer / analyst, the most important thing for the client is that he shows that he has “business logic”.

I know that the coding part is very important, but after a two-week introduction to the mainframe environment and for COBOL, I was able to easily complete my programming tasks. But, having 6 months of experience working in a bank, I have to ask questions to the "business logic" of the "guru" almost every day so that I do not stop changing the logic of the process when performing some kind of maintenance task.

Can we do something (tool / application) that shows either future customers that we have something different than other companies that provide the same services? Or, if not, is there something we can tell our manager to understand that COBOL is different from other languages, and the goal is not to display pretty graphics on the screen.

Thank!

+5
source share
7 answers

I think that you are absolutely right - over the past 20 years there have been a lot of brand marketing in IBM, Oracle / Sun, and Microsoft in the curly brace languages.

Micro Focus is trying to do something. They just restarted www.cobol.com , which includes a good set of video testimonials for the power of COBOL.

Micro Focus, "Visual COBOL R3" . -, , ( ). Micro Focus COBOL, .

+5

COBOL , , . , COBOL " ", , , .

, , COBOL, . , , COBOL, -API , ++, Objective-C .. :

1) , API Google . , HTTP- .

2) , ++, - . , COBOL ++ - , COBOL .

, : COBOL , , COBOL , COBOL primary .

+4

slick demo , () , . - , . COBOL - , .

, , , , , . , .

COBOL . , COBOL, . , - . 20 COBOL , , , , (, , , , ..).

, , , . , :

  • , ( , , , ).
  • , , (, CICS, MQ-Series, DB/2, WebSphere, FTP, XML, RD/z, SAP, SAS ..).
  • , (, , , -, , , , , , ..).
  • " ", - , (, , 2 ).
  • , , - .
  • - , , , " ".

, . COBOL . , , , . , - . , , "" , , .

, , , . - BS - , , .

+3

, OpenCOBOL WORKING-STORAGE CERN ROOT/CINT. CINT - C/++, ROOT - . COBOL.

:

OCOBOL >>SOURCE FORMAT IS FIXED
      *> ***************************************************************
      *> Author:    Brian Tiffin
      *> Date:      20101119
      *> Purpose:   Pass arguments to ROOT/CINT invoked subprograms
      *> Tectonics: cobc -fimplicit-init -C cobparams.cob
      *> ***************************************************************

       REPLACE ==ARRAYSIZE== BY ==450==. 

       identification division.
       program-id. cobfloats.

       data division.
       working-storage section.
       01 cnt pic 999.
       01 val usage float-short.
       01 xes.
          02 an-x usage float-short occurs ARRAYSIZE times.
       01 yes.
          02 an-y usage float-short occurs ARRAYSIZE times.

       linkage section.
       01 vxes.
          02 an-x usage float-short occurs ARRAYSIZE times.
       01 vyes.
          02 an-y usage float-short occurs ARRAYSIZE times.

      *> ***************************************************************
       procedure division using by reference vxes, vyes.
       perform varying cnt from 1 by 1 until cnt >= ARRAYSIZE
           compute val = cnt * function random() end-compute
           move cnt to an-x in xes(cnt)
           move val to an-y in yes(cnt)
       end-perform
       move xes to vxes
       move yes to vyes
       move cnt to return-code
       goback.
       end program cobfloats.

$ cobc -fimplicit-init -C cobparams.cob
$ vi cobparams.c
(Add a #pragma K&R to the top of cobparams.c so CINT lets up on type safety)
[btiffin@home cobol]$ root -l
root [0] gSystem->Load("/usr/local/lib/libcob.so");
root [1] .L cobparams.c+
root [2] int a = 0; float x[450]; float y[450];
root [3] a = cobfloats(&x, &y);
root [4] a
(int)450
root [5] TGraph *graph1 = new TGraph(450, x, y);
root [6] graph1->Draw("A*");

.

ROOT / CINT TGraph from COBOL data

+3

, , , script, . , , , .., , , /.

+2

, , Cobol - - .

May I suggest you prepare a good set of reports on the current database. Extract, drill down, summarize, and cut and qubit data in a dozen different ways. Be sure to check the runtime to create a set of reports compared to other languages ​​trying to do the same. And pay attention to the readability of the code (and therefore the variability of the set of reports) compared to what other languages ​​can offer.

Extract to CSV while you are on it, and add Excel (or another table) to the graphics and data analysis.

+1
source

All Articles