Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-12 Thread David Crayford

On 12/07/2022 12:21 am, Charles Mills wrote:

+1

And when new hardware comes out, taking advantage of the new architecture is a 
simple matter of updating ARCH() in your C/C++ compile and re-building. You 
probably don't have the appetite to re-work your carefully hand-tuned assembler.


+1 you can't optimize for hardware that hasn't been invented yet



I know whereof I speak. I wrote a commercial product in C++ that successfully handled 
millions of events per second, with CPU utilization that was considered satisfactory by 
customers. Non-trivial events: basically taking an SMF record, reformatting a hundred or 
more fields using a "report writer"* type architecture, translating it to UTF-8 
(non-trivial) and pushing it out the TCP stack.

*By report writer type architecture, I mean it did not work the way you would 
write a hard-coded program, working its way through one SMF record section at a 
time. It went customer-specified-field by customer-specified-field, so for two 
adjacent fields in the same section, it had to decode the relevant triplet 
twice.
We can easily push millions of events through our stack  which is 
written in Metal/C and Java.


https://www.ibm.com/docs/en/om-im/5.6.0?topic=monitor-getting-started



Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Andrew Rowley
Sent: Sunday, July 10, 2022 6:22 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

On 9/07/2022 1:10 am, Colin Paice wrote:

I was told
If it executes

 1. a million times a second - write in assembler
 2. a thousand times a second write it in cobol or C
 3. once a second - write it in Java
 4. Else /bash/rexx/

Probably not an accurate picture these days.

It would have to be a very select piece of assembler to have any
significant advantage over C / C++. C and C++ have the advantage that
the compiler doesn't have to produce maintainable or comprehensible
code, so it can do lots of optimizations, inlining, loop unrolling etc.
- whatever the compiler writers found produces the fastest code. Of
course you can do the same in assembler - it is just a question of
whether it is practicable for larger pieces of code.

Java: that is probably reasonable if you are talking about starting a
JVM from scratch every time e.g. like a z/OS batch job. If you are
talking about a routine executed by a running program, I would expect
Java to be close to C. (Certainly not 3 orders of magnitude different.)



--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-11 Thread Colin Paice
My comments about
1. A million times a second... etc

Were from about 30 years ago, before optimization improved.

I know that the "hot" instruction for MQ on z/OS that showed up in
profiling,  was the Load/Update Address of the next free slot in the trace
buffer in ECSA.
When there were many concurrent threads using MQ trace, they all used this
field.  Sometimes the field was on the same chip.  Sometimes it was in a
different "book"  (and so the time to get this field was 1000 times the
duration if it was in the same CPU)
By giving each TCB its own trace buffer this hotspot disappeared!

The compiler could not optimize this. Only a change of design could fix it.

Colin

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-11 Thread Charles Mills
+1

And when new hardware comes out, taking advantage of the new architecture is a 
simple matter of updating ARCH() in your C/C++ compile and re-building. You 
probably don't have the appetite to re-work your carefully hand-tuned assembler.

I know whereof I speak. I wrote a commercial product in C++ that successfully 
handled millions of events per second, with CPU utilization that was considered 
satisfactory by customers. Non-trivial events: basically taking an SMF record, 
reformatting a hundred or more fields using a "report writer"* type 
architecture, translating it to UTF-8 (non-trivial) and pushing it out the TCP 
stack.

*By report writer type architecture, I mean it did not work the way you would 
write a hard-coded program, working its way through one SMF record section at a 
time. It went customer-specified-field by customer-specified-field, so for two 
adjacent fields in the same section, it had to decode the relevant triplet 
twice.

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Andrew Rowley
Sent: Sunday, July 10, 2022 6:22 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

On 9/07/2022 1:10 am, Colin Paice wrote:
> I was told
> If it executes
>
> 1. a million times a second - write in assembler
> 2. a thousand times a second write it in cobol or C
> 3. once a second - write it in Java
> 4. Else /bash/rexx/
Probably not an accurate picture these days.

It would have to be a very select piece of assembler to have any 
significant advantage over C / C++. C and C++ have the advantage that 
the compiler doesn't have to produce maintainable or comprehensible 
code, so it can do lots of optimizations, inlining, loop unrolling etc. 
- whatever the compiler writers found produces the fastest code. Of 
course you can do the same in assembler - it is just a question of 
whether it is practicable for larger pieces of code.

Java: that is probably reasonable if you are talking about starting a 
JVM from scratch every time e.g. like a z/OS batch job. If you are 
talking about a routine executed by a running program, I would expect 
Java to be close to C. (Certainly not 3 orders of magnitude different.)

-- 
Andrew Rowley
Black Hill Software

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-10 Thread Andrew Rowley

On 9/07/2022 1:10 am, Colin Paice wrote:

I was told
If it executes

1. a million times a second - write in assembler
2. a thousand times a second write it in cobol or C
3. once a second - write it in Java
4. Else /bash/rexx/

Probably not an accurate picture these days.

It would have to be a very select piece of assembler to have any 
significant advantage over C / C++. C and C++ have the advantage that 
the compiler doesn't have to produce maintainable or comprehensible 
code, so it can do lots of optimizations, inlining, loop unrolling etc. 
- whatever the compiler writers found produces the fastest code. Of 
course you can do the same in assembler - it is just a question of 
whether it is practicable for larger pieces of code.


Java: that is probably reasonable if you are talking about starting a 
JVM from scratch every time e.g. like a z/OS batch job. If you are 
talking about a routine executed by a running program, I would expect 
Java to be close to C. (Certainly not 3 orders of magnitude different.)


--
Andrew Rowley
Black Hill Software

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-10 Thread Rony
> Am 08.07.2022 um 17:10 schrieb Colin Paice :
> 
> I was told
> If it executes
> 
>   1. a million times a second - write in assembler
>   2. a thousand times a second write it in cobol or C
>   3. once a second - write it in Java
>   4. Else /bash/rexx/
> 
> Though if it executes once a year and runs for a week- I might look at C

As intriguing - and easy to memorize! - such listings are, they may quickly 
become totally misleading. E.g. Java has become able to run as quick as C/C++ 
and sometimes even faster than C/C++! 

One aspect that should be stressed in this context: given the ever ongoing 
improvements in hardware and software infrastructures benchmarks - if deemed 
important nowadays :) - need to be redone on a regular (yearly) basis. 

One interesting - REXX-related - table about speed improvements of different 
REXX/Rexx implementations over the decades can be found at the website of the 
father of REXX - Mike F. Cowlishaw - at: 
http://speleotrove.com/misc/rexxcpslist.html

Looking at these numbers (I do not know of any comparable historical table for 
other programming languages using the same benchmark program throughout the 
decades on different implementations of a language) one can see how 
breathtaking the technical improvements have been over the decades: going from 
114 RexxCPS in 1994 to 23,774,392 (!) RexxCPS in 2021.  So in 2021 Rexx 
programs would execute roughly 220,000 times (!) faster than in 1994!

—-rony 



>> On Fri, 8 Jul 2022 at 15:52, Dave Jones  wrote:
>> 
>> Timothy Sipples said:
>> 
>> "Which leads to an interesting thought exercise. In 2022 if you're trying
>> to choose a programming language for business application programming that
>> stands the best chance of being durable (being realistically maintainable,
>> extendable, enhance-able) for the next 40+ years — a common requirement for
>> many high value, nontrivial business applications — what programming
>> language would you choose? I suggest Enterprise COBOL ought to be a
>> candidate. (Any other nominations?)"
>> 
>> Enterprise PL/I, of course. :-)
>> DJ
>> 
>> --
>> For IBM-MAIN subscribe / signoff / archive access instructions,
>> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>> 
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-08 Thread Steve Beaver
Enterprise PL/I


 

-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of David Spiegel
Sent: Friday, July 8, 2022 10:12 AM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

+1

On 2022-07-08 10:51, Dave Jones wrote:
> Timothy Sipples said:
>
> "Which leads to an interesting thought exercise. In 2022 if you're trying to 
> choose a programming language for business application programming that 
> stands the best chance of being durable (being realistically maintainable, 
> extendable, enhance-able) for the next 40+ years — a common requirement for 
> many high value, nontrivial business applications — what programming language 
> would you choose? I suggest Enterprise COBOL ought to be a candidate. (Any 
> other nominations?)"
>
> Enterprise PL/I, of course. :-)
> DJ
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-08 Thread David Spiegel

+1

On 2022-07-08 10:51, Dave Jones wrote:

Timothy Sipples said:

"Which leads to an interesting thought exercise. In 2022 if you're trying to choose 
a programming language for business application programming that stands the best chance 
of being durable (being realistically maintainable, extendable, enhance-able) for the 
next 40+ years — a common requirement for many high value, nontrivial business 
applications — what programming language would you choose? I suggest Enterprise COBOL 
ought to be a candidate. (Any other nominations?)"

Enterprise PL/I, of course. :-)
DJ

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-08 Thread Colin Paice
I was told
If it executes

   1. a million times a second - write in assembler
   2. a thousand times a second write it in cobol or C
   3. once a second - write it in Java
   4. Else /bash/rexx/

Though if it executes once a year and runs for a week- I might look at C

Colin

On Fri, 8 Jul 2022 at 15:52, Dave Jones  wrote:

> Timothy Sipples said:
>
> "Which leads to an interesting thought exercise. In 2022 if you're trying
> to choose a programming language for business application programming that
> stands the best chance of being durable (being realistically maintainable,
> extendable, enhance-able) for the next 40+ years — a common requirement for
> many high value, nontrivial business applications — what programming
> language would you choose? I suggest Enterprise COBOL ought to be a
> candidate. (Any other nominations?)"
>
> Enterprise PL/I, of course. :-)
> DJ
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
>

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-08 Thread Dave Jones
Timothy Sipples said:

"Which leads to an interesting thought exercise. In 2022 if you're trying to 
choose a programming language for business application programming that stands 
the best chance of being durable (being realistically maintainable, extendable, 
enhance-able) for the next 40+ years — a common requirement for many high 
value, nontrivial business applications — what programming language would you 
choose? I suggest Enterprise COBOL ought to be a candidate. (Any other 
nominations?)"

Enterprise PL/I, of course. :-)
DJ

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-08 Thread Bob Bridges
LOL, I really enjoyed this.

I've probably posted it here before, but an old joke:

Jack was a COBOL programmer in the late 1990s who (after years of being
taken for granted and treated as a technological dinosaur by all the UNIX
programmers and Client/Server programmers and website developers, etc) was
finally getting some respect.  You see, he'd become a private consultant
specializing in Year-2000 conversions.  He was working short-term
assignments for prestigious companies, traveling all over the world on
different assignments.  He was working 70- and 80- and even 90-hour weeks,
but it was worth it.

However, several years of this relentless, mind-numbing work had taken its
toll on Jack.  He had problems sleeping and began having anxiety dreams
about the year 2000.  It had reached a point where even the thought of the
year 2000 made him nearly violent.  He must have suffered some sort of
breakdown, because all he could think about was how he could avoid the year
2000 and all that came with it.

By the end of 1997 Jack had decided to contact a company that specialized in
cryogenics.  He made a deal to have himself frozen until 2001 through their
totally automated (and very expensive) process.  He was thrilled.  The next
thing he would know, he'd wake up in the year 2001 -- after the New Year
celebrations and computer debacles, after the leap year, and after the dust
had settled. Nothing else to worry about except getting on with his life.

He was put into his cryogenic receptacle, the technicians set the revive
date, he was given injections to slow his heartbeat to a bare minimum, and
that was that.

The next thing Jack saw was an enormous and very modern room filled with
excited people.  They were all shouting "I can't believe it!" and "It's a
miracle" and "He's alive!".  There were cameras (unlike any he'd ever seen)
and equipment that looked like it came out of a science fiction movie.

Someone who was obviously a spokesperson for the group stepped forward.
Jack couldn't contain his enthusiasm.  "It's over?" he asked.  "Is 2001
already here?  Are all the millennial parties and promotions and crises all
over and done with?"

The spokesman explained that there had been a problem with the programming
of the timer on Jack's cryogenic receptacle.  It hadn't been year-2000
compliant; it was actually 8000 years later, not the year 2001.  But the
spokesman told Jack that he shouldn't get excited; someone important wanted
to speak to him.

Suddenly a wall-sized projection screen displayed the image of a man that
had a striking resemblance to Bill Gates.  This man was Prime Minister of
Earth.  He told Jack not to be upset.  That this was a wonderful time to be
alive.  That there was world peace and no more starvation.  That the space
program had been reïnstated and there were colonies on the moon and on Mars.
That technology had advanced to such a degree that everyone had
virtual-reality interfaces that allowed them to contact anyone else on the
planet, or to watch any entertainment, or to hear any music recorded
anywhere.

"That sounds terrific," said Jack. "But I'm curious:  Why is everybody so
interested in me?"

"Well," said the Prime Minister.  "The year 10,000 is just around the
corner, and it says in your files you know COBOL..."

---
Bob Bridges, robhbrid...@gmail.com, cell 336 382-7313

/* I drive 'way too fast to worry about cholesterol.  -Anonymous */

-Original Message-
From: IBM Mainframe Discussion List  On Behalf Of
Timothy Sipples
Sent: Friday, July 8, 2022 01:37

It's *so* weird! Imagine writing this:

"Sarah, age 23, rejected her college advisor's career advice and started
work at Boeing in Seattle last year. Her friends who mainly pursued careers
in banking and law outright laugh at her for designing airplanes, the
antiquated vehicles invented well over a century ago. But Sarah takes their
ribbing in stride even as she works on designs that past generations of
engineers could mostly comprehend."

Or this:

"Last night Olivia Rodrigo won the 2022 GRAMMY for Best New Artist. It's
ironic that the Recording Academy uses the word 'new' to describe any award
they hand out. Audio recording was invented all the way back in the 1800s
with only modest incremental improvements since. And it's particularly
galling that Rodrigo has never publicly thanked Thomas Edison and other
music recording pioneers for contributing to her success in the ancient
industry she chose. Of course everyone knows music is dying. One analyst in
Ecuador predicts that within 10 years the number of people who listen to
music at least once per day will fall by 92.4%."

Here's how I think of programming languages. There's a very short list of
programming languages that are both so common, so useful, and (relatedly) so
adaptable (incrementally improved, integrated, extended, etc.) that they
have (for all intents and purposes) achieved "immortality." COBOL is
definitely on this distinguished short list. Other things being eq

Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-07 Thread Timothy Sipples
It's *so* weird! Imagine writing this:

"Sarah, age 23, rejected her college advisor's career advice and started work 
at Boeing in Seattle last year. Her friends who mainly pursued careers in 
banking and law outright laugh at her for designing airplanes, the antiquated 
vehicles invented well over a century ago. But Sarah takes their ribbing in 
stride even as she works on designs that past generations of engineers could 
mostly comprehend."

Or this:

"Last night Olivia Rodrigo won the 2022 GRAMMY for Best New Artist. It's ironic 
that the Recording Academy uses the word 'new' to describe any award they hand 
out. Audio recording was invented all the way back in the 1800s with only 
modest incremental improvements since. And it's particularly galling that 
Rodrigo has never publicly thanked Thomas Edison and other music recording 
pioneers for contributing to her success in the ancient industry she chose. Of 
course everyone knows music is dying. One analyst in Ecuador predicts that 
within 10 years the number of people who listen to music at least once per day 
will fall by 92.4%."

Here's how I think of programming languages. There's a very short list of 
programming languages that are both so common, so useful, and (relatedly) so 
adaptable (incrementally improved, integrated, extended, etc.) that they have 
(for all intents and purposes) achieved "immortality." COBOL is definitely on 
this distinguished short list. Other things being equal it's a great 
characteristic when you're making investment choices including career choices.

It just doesn't matter that (for example) the C programming language was 
ostensibly born circa 1969 (with an earlier implementation, the B programming 
language) and COBOL was first specified in 1960. If in 2022 you want to assign 
any significance to a ~9 year difference in birth dates to make some sort of 
utility argument then you're (in a word) crazy. The C programming language is 
another entry on the distinguished short list, but it just so happens it's a 
pretty awful programming language for most business application programming.

Which leads to an interesting thought exercise. In 2022 if you're trying to 
choose a programming language for business application programming that stands 
the best chance of being durable (being realistically maintainable, extendable, 
enhance-able) for the next 40+ years — a common requirement for many high 
value, nontrivial business applications — what programming language would you 
choose? I suggest Enterprise COBOL ought to be a candidate. (Any other 
nominations?)

— — — — —
Timothy Sipples
Senior Architect
Digital Assets, Industry Solutions, and Cybersecurity
IBM zSystems/LinuxONE, Asia-Pacific
sipp...@sg.ibm.com


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: NOTSP The Latin of Software Code Is Thriving - The New York Times

2022-07-07 Thread Charles Mills
Drives me nuts! If someone wanted a career in automotive technology, no one 
would run cutesy articles talking about hundred-year-old technology.

UNIX is fifty-plus years old for gosh sakes -- about five years younger than 
the System 360. Would it be cute if some 24-year-old wanted to work with fusty 
old UNIX?

I guess that is the fusty old code that is baked into iPhones?

Charles


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Gabe Goldberg
Sent: Wednesday, July 6, 2022 12:28 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: NOTSP The Latin of Software Code Is Thriving - The New York Times

Next time you laugh at musty old tech, remember that new technologies 
are often built on it.

Caitlin Mooney is 24 years old and infatuated with technology that dates 
to the age of Sputnik.

Mooney, a recent New Jersey Institute of Technology graduate in computer 
science, is a fan of technologies that were hot a half-century ago, 
including computer mainframes and software called COBOL that powers 
them. That stuff won’t win any cool points in Silicon Valley, but it is 
essential technology at big banks, insurance companies, government 
agencies and other large institutions.

During Mooney’s job hunt, potential employers saw her expertise and 
wanted to talk about more senior positions than she was seeking. “They 
would get really excited,” Mooney told me. She’s now trying to decide 
between multiple job offers.

The resilience of decades-old computing technologies and the people who 
specialize in them shows that new technologies are often built on lots 
of old tech.

When you deposit money using your bank’s iPhone app, behind the scenes 
it probably involves computers that are the progeny of those used in the 
Apollo moon missions. (Also, half-century-old computer code is baked 
into the iPhone software.)

It’s often seen as a problem or a punchline that so much musty 
technology is still around. But it’s not necessarily an issue.

https://www.nytimes.com/2022/07/06/technology/cobol-jobs.html?smid=url-share 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN