<< Chapter < Page Chapter >> Page >

The modules in this collection will concentrate on the fundamental concepts of computer programming as identified in the earlier moduletitled Tkc0100: Preface. I view these modules as helping to build a bridge between the fun side of Scratch and the serious side of Computer Science.

Those fundamental concepts are transferable from one programming language to the next, and are required for learning the moreadvanced aspects of computer science.

The higher-level features of Scratch are not necessarily transferable to other languages. What I mean by that is thatjust because you know how to compose and play music in Scratch doesn't mean that you know how to compose and play music in some other programming language suchas C++ or Java. However, if you understand the fundamental programming concepts embodied inScratch, you should be able to transfer that understanding to other programming languages.

Drag and drop programming

One of the reasons that it will be useful for you to work through the tutorials is to help you gain proficiency in the drag and drop programming paradigm used with Scratch. This is a relatively new programming paradigm, andit is very different from the paradigm used for old school languages such as C, C++, C#, and Java.

"It seems strange to speak of Java as an old school programming language, but it has been a viable programming language for a littlemore than fifteen years now. In today's fast paced technology world, that probably makes it old school."

Mechanics are difficult to explain

Although drag and drop programming has some major advantages over the old paradigm for the beginning programming student, the mechanics involved are much moredifficult to explain in a written tutorial than the mechanics of programming with Java, for example.

With the old school paradigm, all that is necessary to create a program is to:

  • Open a text editor and type in the program.
  • Open a compiler and compile the program.
  • Execute the program.

Advantages and disadvantages

Because everything in old school programming is based on text, it is easy to explain it in a text-based written tutorial. The disadvantage of old school programminginsofar as the student is concerned is that the student is required to memorize difficult and sometimes arcane programming syntax. This requirement is the downfallof many aspiring programming students.

The advantage of drag and drop programming is that the student is not required to memorize programming syntax; at least not in the beginning. Thatleaves the student free to concentrate on concepts.

One disadvantage of drag and drop programming is that the mechanics are very difficult to explain in a written tutorial. It is sort of like trying to explainto someone how to tie their shoes in a written tutorial. You almost need to see it done in order to learn how to do it yourself.

The best way to explain many aspects of drag and drop programming is through "show me" videos.

Many of the available tutorials are video tutorials, which make it possible for you to see how others accomplish drag and drop programming using Scratch.Once you see how it is done, you should have no difficulty doing it yourself.

Run some student projects

As I mentioned earlier, I also recommend that you run some of the student projects just to see what students are doing with Scratch. If you encounter problems running the student projects, you might consider seeking help on the Scratch forums .

Open the Help page

Once you have opened the Scratch web page in your browser, you should take a look at the Help material that is available by clicking the Help link at the top of the page. You will find links there to a variety of useful resources.

What's next?

In the next module, I will begin the process of helping you to learn about the following computer programming concepts using Scratch:

  • Memory
  • Variables
  • Literals

Resources

Please be aware that many of the following links may take you to information about Scratch v1.4.

Miscellaneous

This section contains a variety of miscellaneous information.

Housekeeping material
  • Module name: Scr0310: Getting Started with Scratch 2.0
  • File: Scr0310.htm
  • Published: 05/10/13
Disclaimers:

Financial : Although the Connexions site makes it possible for you to download a PDF file for thismodule at no charge, and also makes it possible for you to purchase a pre-printed version of the PDF file, you should beaware that some of the HTML elements in this module may not translate well into PDF.

I also want you to know that, I receive no financial compensation from the Connexions website even if you purchase the PDF version of the module.

In the past, unknown individuals have copied my modules from cnx.org, converted them to Kindle books, and placed them for sale on Amazon.com showing me as the author. Ineither receive compensation for those sales nor do I know who does receive compensation. If you purchase such a book, please beaware that it is a copy of a module that is freely available on cnx.org and that it was made and published withoutmy prior knowledge.

Affiliation : I am a professor of Computer Information Technology at Austin Community College in Austin, TX.

-end-

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Teaching beginners to code. OpenStax CNX. May 27, 2013 Download for free at http://cnx.org/content/col11498/1.20
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Teaching beginners to code' conversation and receive update notifications?

Ask