I don't know what would be appropriate (there are books upon books of this type of stuff - as well as websites), but here is some jargon (I don't what your level of knowledge is, so some of this may be elementary - also, I am using my memory for definitions so I may not be textbook - I'll also keep it somewhat simplistic and not use too much techno-babble, as the jargon of the future may be substantially different, even if the meanings remain):
Object - a piece of code designed to do a single function (often combined with other objects to create a program).
Module - an object or group of objects that perform a function (many times a compound function, made up of multiple objects - may be a stand alone program or another piece to a program).
Syntax - the text and format of a programming language (by this, I mean the correct usage of a programming language's verbs, commands, variables, etc. - this does not guarantee a program will function as planned, only that it will be understood by the computer).
Source Code - the human readable representation of the program (words like if, when, until, +, -, =, etc. are easier to read and understand than 1's and 0's).
Object Code - the machine readable representation of the program (machine language is discussed below, but basically this is what the computer actually executes).
Recursion - the technique of having an object perform itself (being a mainframe program, in which recursion is often frowned upon, an example is not presenting itself right now - perhaps I'll edit later or someone else will chime in).
Flowchart - a pictoral symbolization of a program or system of programs.
Variable - a programmer defined piece of the program used to store a value (also called Fields, these are used as holders for totals, counters, quantities, names, addresses, etc. - anything that may not be static throughout the execution of a program, as records from an employee file are read in, the name field will change for each employee).
Loop - a programming technique that allows a piece of code to automatically be executed over and over (hopefully until a condition is met that will end the loop - otherwise, the loop is known as an infinite loop and the program will either automatically terminate or need to be manually terminated).
Iteration - one time through a loop (one of a computer's strengths is the ability to perform monotonous iterative tasks faster than human beings).
Client-Server - the technique of a single computer (the server) executing a program that is then utilized by multiple people at "client" workstation (a mainframe is the perfect example of this - at a bank, the customer account program will be executed by the computer in the back room or at another building, while the teller will see the results on his/her screen).
Multitasking - the technique of a computer running multiple programs at the same time (mainframe computers and other multi-processor computers can accomplish this via the use of multiple processing chips to perform the functions - Windows-style PCs use a prioritizing/swapping/timesharing method that closely resembles multitasking - I think that this is still the case).
Debugging - the technique of finding a problem (or bug) in a program by analyzing computer generated messages, program results and memory dumps (a picture of the contents of the program's space in memory at the time of failure) - computers of the future should have advanced self-debugging capabilities.
Machine Language - 1's and 0's - the language of the computer (on's and off's that the computer recognizes and uses to manipulate internal registers that are used to perform the functions it is programmed for).
Binary - a base 2 numbering system (what machine language is made up - where the 1's and 0's are in the program is what tells the computer what to do).
Hexadecimal - a base 16 numbering system that is also an extrapolation of the Binary numbering system and the Machine Language (the computer, for the most part, deals in chunks of binary code - bits and bytes).
Bit - a 0 or 1 (the smallest form of data understandable by the computer).
Byte - 8 bits (the 8 bits are divided into two halves of 4 bits which total 15 when all are turned on, hence the base 16 numbering system 0 - F, it's easier for programmers to deal with) - since it is so ingrained, it will probably still be used by computer programmers of the future (just not to the same extent, as even today programmers are less likely to understand Hexadecimal than they needed to be 10 years ago).
Abend - abnormal end of a program (this is generally a bad thing - like those times when a program crashes and you get to look at some stuff and decide if you want to send it to Microsoft).
Dump - a picture of what was in the computers memory at the time of an abend (this is the stuff that you can look at before sending the report to Microsoft - I don't know how complete that dump is, however).
Okay, that's all I have for now. I hope that this helps.