Hi good afternoon!
I need to teach someone some basic programming.
Do you have any lesson plans there or links to them?
It will be better if the lesson plan will just be for general programing (no specific language).
Thank you!
Printable View
Hi good afternoon!
I need to teach someone some basic programming.
Do you have any lesson plans there or links to them?
It will be better if the lesson plan will just be for general programing (no specific language).
Thank you!
So, you are doing basic programming concepts?
- Hello World
- Important, language keywords (using, include, etc)
- Variable and Data Types Introduction
- Arrays [, pointers and references]
- Important, language keywords (new, delete, etc)
- Methods
- Classes
- Standard Libraries (CLR, STL, etc) (sometimes bits and pieces are introduced earlier)
At least that's how most of my programming classes have gone.
But kas, those are all language principles.
I would teach abstract programming principles before introducing any languages. Start with the basics: sequence, selection, iteration. Then build on that with a few concepts like functions. Use pseudo-code to go through common algorithms.
And stay away from OO until you have to. OO is of no use to the beginner.
In fact, depending on the frequency of the class..... don't even touch the computers for two weeks.... pen/pencil & paper it through the fundamentals.
-tg
While some of the items I mentioned are language specific, almost all of them can be applied, generically, to almost all languages. I don't see why you wouldn't want to touch on them with some pseudo code.Quote:
Originally Posted by penagate
- Hello World << c'mon.... can't we have a little creativity here? Also, how do you do this in pseudocode?
- Important, language keywords (using, include, etc) << you even included the word "language" in it, and then used language specific keywords in your example. They have no pseudocode equivelent
- Variable and Data Types Introduction << again, you've cited language specific constructs here.
While I'm not trying to discount your list, I question if they should be taught (as laid out in the list - in any order) in the first month.... and Hello World certainly wouldn't be the first thing they learn.
Design concepts, programming methodologies & concepts, logic constructs, FLOWCHARTING, you can never go wrong with flowcharting, not even necessary to use the standard symbols, just be able to draw out the flow of the problem.
-tg
Thank you very much everyone for your responses!
I think I will start with flowcharting, because with that, I can measure and build up the logical thinking.
How about some good exercises? Something that can be done in flowchart then transferred to pseudo-code.
Thank you!
DSL troubleshooting flowchart :p Print to a console the outcome of the troubleshooting.. have the console ask the user questions, which in turn follows the "Flowchart" to the conclusion.Quote:
Originally Posted by bulletrick
chem
I think it might be interesting to come up with a problem, and ask the students to construct questions for the user.
For intro to flowcharting - have them flowchart the process of making coffee, or tea... or something not too complex, but mundane...
-tg
Now this would actually be interesting to look at.Quote:
Originally Posted by techgnome
I make coffee (at least two pots) every morning of my life, but I am totally on "auto pilot" when I do so.....I would actually have to stop and think about the steps involved. :lol:
That's what makes it so interesting.... The oddest flowchart assignment I've ever had.... tying your shoelaces! :eek2:
-tg
Quote:
Originally Posted by bulletrick
An BANK ATM application never fails. :wave:
Leave off the database for the meantime.
Initial features:
1) Log-in with PIN
2) Withdraw Amount
3) Inquire Amount
Start with a simple flowchart showing how to switch tv on or something (sequence). Then maybe something like a bank transaction (selection) and to finish of maybe a loop program or something (repetition).
And a naughts and crosses game as a final quiz or something is always challenging at least for some :)
The instructor could be the 'computer' and have the class be the program. The visual feedback for something like tying shoes would be worth seeing I bet.