Join us for a CSP Webinar on Teaching with Pseudocode

January 26, 2016 at 7:51 am 10 comments

Should be interesting — see if you can guess where each of us sits on the Pseudocode question tonight.

Computer Science Principles (CSP) is a programming language agnostic course. CSP aims to teach students the fundamentals of programming and the process involved in building algorithms and solving problems. Pseudocode and flow charts are two common tools, but how useful are they? How best should they be used in a CSP high school classroom?

Come and listen to Deepa Muralidhar (our webinar host) and the following experts discuss these questions during our next CSPwebinar on Tuesday, January 26 at 4:30pm PT/7:30pm ET:

  • Dan Garcia – Professor, UC Berkeley
  • Mark Guzdial – Professor, School of Interactive Computing, Georgia Tech
  • Jill Westerlund – CS Principles Teacher, Hoover High School, Alabama

To join via Adobe Connect, go to Or call in at +1-8667678829.

Entry filed under: Uncategorized. Tags: , .

White House Champions of Change for CS Education: Jane Margolis and Andreas Stefik On Imposter Syndrome: The week I made Forbes’ 30 Under 30 Science List

10 Comments Add your own

  • 1. Cyril Pruszko  |  January 26, 2016 at 9:44 am

    You should check out LiveCode. It’s commands are English-like (pseudocode?) and it is a scripting language that compiles to all major platforms (PC,Mac,Linux,iOS,Android,HTML). It is free (Community version) and in wide use worldwide. It is simple to learn yet powerful and full featured. Many of the top apps in the Apple Store have been written in it.

    I have used for a few years now and the computer science enrollment has grown immensely. We start out programming games and apps, then move on to more serious programming (AI, big data, data structures, etc). Surprisingly, very few are left behind. Even better, the enrollment of girls in upper level courses (AP, etc) is now between 25-50%.

    LiveCode allows the teaching of concepts, not syntax. The programs read as you would speak it to a non-programmer.I find that the students then do much better in other languages (Python, Java,etc) later on. I have seen many positive skills and habits transfer forward to those languages.

    It allows me to teach computer science principles and programming together through the common element of pseudocode. Speak, write, then run. The students learn while producing real, working programs.

    LiveCode is the hook and It is at least a plus on the side of teaching pseudocode early on.

    • 2. Mark Guzdial  |  January 26, 2016 at 9:50 am

      My dissertation work was in HyperCard (see paper here), Cyril, and I built commercial applications in SuperCard. I’ve been using LiveCode since it was RunRev. I agree that it’s a powerful language well-suited to introductory computer science.

      But the benefits don’t have anything to do with pseudocode. Livecode is not a pseudocode. And I’m going to argue tonight that it’s not effective to teach introductory students with pseudocode.

      • 3. Cyril pruszko  |  January 26, 2016 at 10:28 am

        I agree with you about not teaching with pseudocode itself but I disagree that LiveCode is not pseudocode.

        Pseudocode is a high level description of the program or algorithm. In early programs that students do, LiveCode is pseudocode. It writes the way the students talk. It is very English-like and easy to read and understand. That makes it more like pseudocode than a programming language.

        Why do you say it isn’t? Do we have different definitions of pseudocode?

  • 5. Dan Lessner  |  January 26, 2016 at 12:23 pm

    Mark, will it be available later? I would like to know what do you have to say, but I am on the other half of the globe (with all my colleagues).

  • 10. Peter Donaldson  |  January 28, 2016 at 6:01 pm

    I’m looking forward to watching the recording of the session particularly as we tried to grapple with the issue of pseudocode in exams in our recently published paper “Code or (not Code) – Separating Formal and Natural
    Language in CS Education”. One of the major difficulties we found was that the term pseudocode is overloaded with two different distinct uses.

    1. As an informal way of describing an algorithm at the level of intent to help clarify someone’s thinking when designing code.
    2. As a precise reference language for describing computational techniques in various textbooks or in exams where detailed understanding of a specific language can’t be assumed.

    One of the outcomes from this work was a formally defined reference language called Haggis which our national exam board, the SQA, now uses for code snippets in code comprehension questions for all CS exams at National 5, Higher and Advanced Higher (the last three years of high school).

    Details of the reference language can be found on the Higher Computing Science and Advanced Higher Computing Science pages at . The language has a wide range of constructs and was designed for ease of reading rather than economy of expression.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Trackback this post  |  Subscribe to the comments via RSS Feed

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 10,184 other subscribers


Recent Posts

Blog Stats

  • 2,053,935 hits
January 2016

CS Teaching Tips

%d bloggers like this: