Introductory-level educational COBOL materials with modern tooling
My understanding of is that the problem isn&#x27;t &quot;learning COBOL&quot; it&#x27;s learning all of the environment that surrounds COBOL, the IBM Z Mainframes, learning JCL and what not.<p>In fact it seems this is the case with every language, Java was the first language I picked up, I did it through school, I am familiar with syntax and how it works under the hood, yet I don&#x27;t feel comfortable on Java projects, not because I have any problem with Java it&#x27;s because I don&#x27;t know the entire environment around it, there&#x27;s DI frameworks, finding the magic Spring config to make things work the way you want, etc. As an engineer I don&#x27;t really have an ability to see what is going on in an application and really trace the code start to finish because there are three or four layers wrapping, abstracting, surrounding, or smothering any code that anyone has actually written on my team.<p>Same thing with .Net I&#x27;ve tried picking it up since .Net core came out, but it just seems that figuring out how to string all the packages, and dependencies and figuring out how the build tooling works is more effort than the language itself.<p>Repeat for JS, you can know Node and JS and in this environment that will get you a nickle and a piping hot cup of Jack Squat because you can&#x27;t just know JS, you need to know JS, and React or Angular, and in order to work with those tools you also need to use Webpack or Babel, and a transpiler and all the tutorials that go &quot;step by step&quot; seem to consist of &quot;install these packages don&#x27;t ask why just do it and then add 4 lines of code&quot;.<p>The problem isn&#x27;t nor has it ever been the langauge, so far I&#x27;ve picked up Perl, Python, Java, C#, JS, TS, Ruby, AWK, and a handful of other languages with ease (The only one I&#x27;ve struggled with thus far is LISP) it is the environment that surrounds each of these things, and I only forsee it getting worse as we continue to move things to a higher and higher level, we think we are simplifying but it feels more like we are building a leaning tower on a foundation of sand, where soon coding will become more of a priesthood than anything, where the right incantations will produce a certain effect but no one will really know how or why because no one person knows or understands what the 14 layers of abstraction we are running on do. Which inevitably ends up reinventing the wheel at every layer of the stack as teams try to solve problems within the area they understand not realizing how much easier it would be to solve in another layer, and we&#x27;ll just end up running around in red robes chanting prayers to the Omnissiah.<p>01010000 01110010 01100001 01101001 01110011 01100101 00100000 01110100 01101000 01100101 00100000 01101111 01101101 01101101 01101110 01101001 01110011 01110011 01101001 01100001 01101000