Besides "whats actually going on", learning the lower level support also enables you to know what the system is capable of, as opposed to what the tool provider decided to surface/externalize. It lets the application developer know when it might be appropriate to dive a bit deeper and directly use an API or similiar construct.
This is along the lines of what I'm trying to do with a CL column I recently started. The first article was how to test and set bits in CL (and COBOL). Something that, while possible with CL and COBOL constructs, is a real pain as those languages/tools elected to not externalize any direct bit-level support. But knowing that the underlying ILE MI constructs are there makes it a piece of cake due to the integrated nature of ILE :-)
Bruce Vining
http://www.brucevining.com/
Integrated solutions for the System i user community
"Bradley V. Stone" <bvstone@xxxxxxxxxxxx> wrote:
> > Exactly Bruce! That's why for most I suggest starting with APIs.. it
"forces" you to learn what's actually going on. Of course, I don't make
suggestions without a brief high level interview of the skills
in the shop.
Using that logic (which I agree with, by the way), I wonder why you
don't teach how to do it WITHOUT the CGI APIs? i.e use the regular
envvar APIs, write stdin/stdout using the standard C APIs, and do URL
decoding manually.
That's how I learned.
Well, the hardest thing when teaching a subject (which I'm sure you know) is
finding the least common denominator in which to start. So I chose the CGI
APIs. I could have prefaced my books/articles with "APIs 101" but then how
far back do I keep going? :) If we don't stop we would end pack up with
assembler or punchcards.. haha.. (btw, I enjoyed assembler classes too...)
Brad
www.bvstools.com
As an Amazon Associate we earn from qualifying purchases.