Background
jLogo Programming
- Commanding a Turtle
- Pseudocode
- Adding New Commands
- Iteration & Animation
- Hierarchical Structure
- Procedure Inputs
- Operators & Expressions
- Defining Operators
- Words & Sentences
- User Interface Events
- What If? (Predicates)
- Recursion
- Local Variables
- Global Variables
- Word/Sentence Iteration
- Mastermind Project
- Turtles As Actors
- Arrays
- File Input/Output
- AI: Pitcher Problem Solver
Java
- A Java Program
- What's a Class?
- Extending Existing Classes
- Types
- Turtle Graphics
- Control Flow
- User Interface Events
Appendices
- Jargon
- What Is TG?
- TG Directives
- jLogo Primitives
- TG Editor
- Java Tables
- Example Programs
- *** New ***:
Installation Notes
Updates
- December 13, 2008
- March 7, 2009
- January 6, 2012
- March 15, 2013
- January 20, 2014
- February 13, 2014
- July 29, 2014
- January 18, 2016
- January 29, 2016
- August 19, 2016
Lastly
Welcome
Now available here in German thanks to Valeria Aleksandrova.
Welcome to BFOIT's "Introduction to Programming and Computer Science" website. Since you're here, reading this, my guess is that you are pretty savvy regarding technology. You browse/search the web to find anything you're interested in; you use e-mail and/or text messaging all the time. With a smart phone, you now can access almost anything on the Internet, watch video, listen to music, play games... But, do you really know what's going on inside a computer? Do you know how computer programmers tell a computer how to do the things you see happening?
This website is for parents and teachers, and some students. It is a walk-through of the basic concepts behind writing computer programs, with an emphasis on graphics and games. The goal is for students to have fun, while learning the importance and practical aspects of mathematics, processes, the scientific method (for debugging), and critical thinking.
A fair question you may have is "Why should I learn how to program a computer?" First of all, for some people, it can be a lot of fun. As for its practicality, Mark Guzdial has a blog post, Why should we teach programming, that elaborates on many reasons.
So, if you are a parent that wants to coach a daughter or son through learning how to program or a teacher responsible for introducing a diverse group of students to computer science and programming, this material will be a good guide. Read through the lessons and act as a coach - demonstrate concepts in the lessons, let your student(s) run with the exercises, and help them when needed. See the preface for more information/background.
Otherwise, if you are interested in learning what programming is all about, this website can be a start. We at BFOIT want to evolve our lessons such that they support self-learning. We are always open to your feedback if you feel specific areas need improvement. So, go for it...
For some background on computer programming, start with What's Computer Programming. If you just want to get started, skip all the introduction stuff and get busy Commanding a Turtle.
It will be a challenge at times, but should be fun.