× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



On 3/15/2012 10:45 AM, Scott Klement wrote:

On 3/15/2012 3:48 AM, Nathan Andelin wrote:
The real future for the IBM i platform will be determined on how well
WE adapt to the Internet. Note that I say WE, rather than IBM. IBM is
doing a pretty good job on their part. WE are not. WE resist change.
WE fail to invest meaningfully. We're suffering from a false sense of
entitlement.

I wholeheartedly agree with the part about resisting change, and I also
wholeheartedly agree that this is the biggest problem with both RPG and
this platform.

But, I think "adapt to the Internet" is only one issue, and ot might not
even be the most important one. To me, it's three things:

1) Modern, proper, database design. Most RPGers still haven't come to
grips with the fact that databases can be used other ways besides native
I/O. A proper database will be designed in a way that's elegant to
query, and has proper constraints and RI in place.

2) Writing code in a modular, stateless, service-oriented, fashion. Far
too many programmers are still writing code in a monolithic fashion,
making it hard to reuse, repurpose, and greatly increasing the time it
takes to read, test or troubleshoot.

3) Use a modern UI, and be flexible about it. Even in 2012, people still
think 'RPG=5250', as if they are the same thing. New code is still being
written where there's an EXFMT in the middle of business logic. 5250 is
1960's technology, and makes us look archaic. You should be ready and
able to output your reports to HTML, Excel, XML, or JSON. And when a
new technology comes along, you should be able to adapt to that without
rewriting the whole program from the ground-up. Interactive screens
should be in browsers today (even if they're not on the Internet.) And I
should be able to use a new display technology without rewriting your code.

But, I've said all of this a million times.

Keep saying it Scott.

I had an Aha! moment in this thread when someone noted his company was
looking for a cheap and easy modernisation process. My Aha! was that
there is no such thing. What was the cheap and easy process that took
us from mules to cars? Whale oil lamps to electricity? Punched cards
to disk? Batch to interactive? There is no cheap and easy. There is,
however, work that we RPG programmers can do to make our code base more
amenable to modernisation, to change.

Write functions. No, THINK functions. If you touch a program, the
place you touch in the mainline should become a function. A function
that can be tested in isolation from the rest of the code, from the rest
of the job. And is. The more independent our functions are, the more
ways we can combine them to accomplish new and modern requests.

This is not easy - it is work. It requires discipline, that's for sure.
I'm in a program and changing '> 50' to '>= 50' - why would I take that
section of code and turn it into a function? Why waste that time? It
takes discipline to pull some weeds every time I go into the garden, but
my tomatoes are always better when I do.

I love living in the future!
--buck

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.