7

In the University in which I will start teaching the course sequence for Programming goes in this way:

  • Algorithms and Data Structures
  • Structured Programming Languages
  • Object-Oriented Programming Languages

So as you see, the first contact of the students with Programming is the "Algorithms and Data Structures" course in which several programming fundamentals topics are covered (variables, data types, if/else, loops) and also some data structures and basic algorithms. The weird part -at least for me- is that in this first course there no actual programming: all the topics are covered with Pseudocode and Flowcharts written in the Blackboard.

This seems kind of strange for me, and as a new teacher I have little power to change this (Senior teachers said that coding is for latter courses). So, I want to know if any of you is familiar with that teaching approach and if you can suggest me some textbooks that are using that teaching methodology.

Any advice would be greatly appreciated.

6
  • 2
    People still use flowcharts????
    – JeffE
    Mar 28, 2014 at 1:07
  • 1
    Beleive it or not, we still do (and I'm not proud of it :( ) Mar 28, 2014 at 5:12
  • 1
    There is a language that seems to match well with your approach and it resembles pseudo-code: COBOL. It's common, and business-oriented. Mar 28, 2014 at 9:03
  • 1
    I've no idea about teaching methodology, but real programming (and not only "pseudo-programming") is possible in pseudocode, there are languages that are very similar to pseudocode, like Python and Lua. There are graphical programming environments, like those for modkit and phpblocks. UML can be executable and pseudocode should too. I'm sorry for you and your students :(
    – Trylks
    Mar 28, 2014 at 9:30
  • @Trylks it would be nice to use Python or Cobol as Dave Clarke suggests, but the course is thought in Spanish and Pseudocode must be in that language :S Mar 28, 2014 at 14:06

2 Answers 2

6

This is exactly the approach taken by the Introduction to Algorithms course at MIT—or at least it was the case back in the early 2000's. The book by Cormen et al. takes a decidedly agnostic approach to programming, and presents everything in terms of pseudocode, rather than adopting any particular programming language.

1
  • 1
    The teaching approach seems similar, but the contents are different. In my university -besides the title- the first weeks are devoted to data types, loops, functions and basic programming constructs. The MIT course seems more advanced. Mar 27, 2014 at 22:26
1

I think it is a bad idea. The paper supports everything, and if you make a mistake, it takes skill and time to realise. On the other hand, if you write and run a program, bugs appear because the output is incorrect and you know it. Just think how difficult is to debug a broken program, imagine how much it would be if you don't even know if there is a bug.

It is reasonable for a book to be language agnostic, so the reader can adapt it to their favourite one. But it doesn't mean one can just draw it.

Another lesson to be learned is that there are algorithms out there that look beautiful on paper, but they can become a hell to implement in actual code.

And finally, designing on paper is a good practice, but it is only valid if you consider all possible inputs. And again, this takes skill and experience, that firstly introduced cannot have. On the contrary, if you have the code, you can throw in anything you can imagine and see what happens.

4
  • 2
    Does not answer the question. (The OP didn't ask if this is a good idea)
    – ff524
    Mar 28, 2014 at 12:50
  • 1
    The OP is asking "Any advice would be greatly appreciated.". To me, the OP did ask if this is a good idea.
    – Nobody
    Mar 28, 2014 at 13:19
  • 2
    The OP implied that he knows it's a bad idea, and stated that he has no power to change it.
    – Trylks
    Mar 28, 2014 at 14:31
  • 1
    He can use this as arguments to change it. If the senior professors are reasonable people, they will change opinions if enough supporting evidence is provided. I don't know their side of the story, so I don't know how much is required, but it is definitely not out of scope. After all, changing the teaching method is a possible way of tackle the issue.
    – Davidmh
    Mar 28, 2014 at 15:38

Not the answer you're looking for? Browse other questions tagged .