Unit II: NetLogo Programming

CS 1150 Programming Environments for Elementary Education—Fall 2017

Day 16: NetLogo Introduction

Logistics

Finish Sample Exam Review

Last time we reviewed most of the sample exam. Today, we will do the last problem and address any questions that might have arisen about the exam items and the exam itself.   [ Show last problem; develop & discuss a solution. ]       Questions/wonderings about any other exam items?     [   Any other questions/wonderings?  

Programming Basics

We have seen and done some programming in one language and are about to look at another. Let's consider for a moment what is similar and different about programming languages. They all share the same basic capabilities:

Most programming languages are designed with some particular purpose or set of purposes in mind. They share the above basics but have differences that relate to their purpose. Scratch was meant to be easy to learn and use, particularly for kids. Other languages are meant for solving problems in general or perhaps in some particular domain. Ease of learning and use is typically not important, per se, in most programming languages (though they are considerations).

One thing that seems to make Scratch relatively easy to program in (as compared to some other languages) is that you have pretty much all the instructions right in from of you. All you have to do is look for the right one, select it, put in in the proper place, and make sure of any data values in it. With other programming languages that is not so. You have to know or look up the instructions. And, you have to type the instructions which means there is a possibility of typing errors.

NetLogo Information

NetLogo is a variant of the Logo programming language. Logo was designed to teach programming to children. The main context for Logo programming was drawing, much as we have done in Scratch. Originally, Logo programs guided a physical robot that was place on paper on the floor. The robot could move around and could raise and lower a pen that attached to it. Logo and it use was the brain child of Seymour Papert who worked at MIT. (Disciples of his, produced Scratch.)

The focus in Logo programming was the creation of new instructions (referred to as procedures) that could be combined to accomplish larger tasks. The Logo language had basic actions similar to sprites in Scratch but it was cumbersome to just sequence the actions without putting them in a block and naming the block.

Early educational research with Logo programming indicated that essentially all students could learn to program and that being good at other school work was not required for being good at programming. Indeed, often students who performed less well in school (or came from low socioeconomic situations) performed quite well at programming. Papert's main idea was to have students learn by doing instead of learning "about" stuff.

The NetLogo Environment

(You are expected to have read Sante Fe Institute's core concepts document (a PDF) and to have downloaded and installed NetLogo on your computer from the NetLogo site at Northwestern.   Any questions, comments, or wonderings about that material?     Any trouble installing NetLogo?  )

NetLogo is a programming environment much like the Scratch programming environment. It allows you to write and test programs and to save them to run or revise at a later time. Running a program requires a particular set of steps.

Next Assignment—NetLogo Tutorials

NetLogo has two basic types of programs—agent-based simulations and student-created programs.

The agent-based simulations are typically and illustrate some cute thing or interactions between possibly real-life actors (e.g., chemical reactions, biological processes, objects in space, etc.). They are either instructor developed or their development is guided by an instructor. In theory they can be simple because the agents involved might follow very simple instructions and students "might" be able to create such instruction. However, I would imagine this would rarely create the emergent behavior seen in the Termites program.

Student developed programs, if done by novice programmers will likely involve turtle graphics similar to our drawing in Scratch. Such programs might, however, produce very interesting results or be quite complex.

The NetLogo tutorials activity is being used to familiarize you with the NetLogo environment and let you see some emergent behavior I hope you enjoy it.

Questions? Comments? Wonderings?  

Next Time

Day 17: Work on NetLogo Tutorials

Logistics

Today's Activities

The plan for today is to:  1) straighten out due date for the NetLogo tutorials assignment;  2) respond to any questions you have on the the NetLogo tutorials;  3) allow time to work on the NetLogo tutorials assignment

Next Time

Questions? Comments? Wonderings?   See you Thursday.

Day 18: Review/Reflect on NetLogo Tutorials

Logistics

Assignment

You should have completed the PAC commenting for this assignment. If you have not, do so as soon as possible. A small late penalty will apply. FYI, my intent was that pairs would be submitting a single assignment rather than individuals. ???

Comments? Questions

Reflection on the PAC Comments

My planis to discuss some of the comments made for the PAC part of this assignment. Hopefully that discussion will clarify some aspects of programming in/with Logo and help you recognize the similarities and differences between Scratch and Logo and help prepare you for additional Logo programming and for teaching Logo.

Some "general" things

Specific issues

Programming Language Similarities and Differences

I have suggested that all programming languages are similar. Do you agree? Let's check on some of the similarities.

Next Time

Questions? Comments? Wonderings?   See you Thursday.

Day 19: Work on Logo Initials

Logistics

Today's Activities

The plan for today is to:  1) respond to any questions you have on the the Logo initials assignment;  and 2) allow time to work on the Logo initials assignment

Next Time

Questions? Comments? Wonderings?   See you Thursday.

Day 20: Work on Logo Initials

Logistics

Today's Activities

The plan for today is to:  1) respond to any questions you have on the the Logo initials assignment;  and 2) allow time to work on the Logo initials assignment

Next Time

Questions? Comments? Wonderings?   See you Tuesday.