Course Code: itp
For many people, the prospect of learning how to become a computer programmer is more than a little scary. But in this first lesson, you'll learn that you don't have to be a computer genius to learn how to program. You'll begin by going through a brief history of the evolution of computer programming. The lesson will cover some basic programming concepts and terms and will then zero in specifically on Just BASIC, the programming language that you'll use throughout the course. You'll then download and install Just BASIC, and at the conclusion of the lesson, you'll create and execute your first Just BASIC program!
In order to work with any programming language, you need access to a set of software tools. These tools include such things as a code editor, a compiler or interpreter, and a source code debugger. This lesson will introduce you to the resources that Just BASIC provides. You'll see how you can use these tools to develop software applications and spend some time getting comfortable with Just BASIC's code editor. You'll learn how to configure it to suit your personal preferences and work habits. Finally, for some great practice, you'll create your first actual computer game: the Legend of Mighty Molly.
You'll begin this lesson by exploring how to create the fundamental building blocks of Windows application GUIs. You'll learn how to create different types of windows, including regular windows, text windows, graphics windows, and dialog windows. The lesson will also cover some of the finer details of creating windows, such as how to set foreground and background colors and how to set font attributes. You'll close out the lesson by creating the Math Madness computer game, which will give you some great practice in working with GUIs.
In Lesson 3, you learned how to create windows. Most desktop application user interfaces are more than just windows, however. They also consist of a collection of interface controls, such as buttons and text boxes. For that reason, this lesson will focus on controls. Just BASIC allows you to create many different types of controls. You'll look at each of Just BASIC's controls in detail and then examine each one's programming syntax. As always, there will be a cool application project for you to develop: the Lottery Picker application. By the end of this lesson, you should feel confident in your ability to create attractive, user-friendly graphical interfaces.
In this lesson, you'll continue your exploration of GUI elements. The lesson will show you how to fine-tune your controls to make them do exactly what you want them to do. Then, you'll learn how to build application menus, an integral part of many applications. Next, you'll dig into FreeForm-J, the powerful Just BASIC application that allows you to visually design your GUIs. You'll wrap things up with a quick look at Just BASIC's built-in dialogs, prebuilt tools that can communicate with users and even collect small amounts of information. You'll also work on another project application: the Family Photo Album. This application will test all that you've learned so far about GUI elements.
The subject for this lesson is the retrieval and storage of data in computer memory. Specifically, you'll be digging into how to store and retrieve individual pieces of data in variables. You'll also take a look at how to store groups of data using arrays, including the rules to follow when naming variables and arrays. Another important topic is the different types of data that can be stored, along with how to convert numbers to strings and vice versa. To test your newfound knowledge, you'll create a computer application called the Ask Mustafa game.
To create complex applications, a computer program needs a way of evaluating different values to determine a logical direction in which to proceed. As a programmer, you can do this with conditional programming statements that use mathematical, comparison, and logical operators. That's what you'll focus on in this lesson. With conditional logic, you can create applications that react differently depending on the data that they receive. This provides an interactive user experience and programs that are adaptive enough to handle different types of situations. To illustrate how conditional logic works, you'll wrap up the lesson with a project application called the Karaoke Night game.
In this lesson, you'll learn how to create and work with loops. Loops are code blocks that repeat a series of programming statements over and over again. Using loops, you can develop applications that can process large amounts of data using a minimum number of programming statements. You'll look at how to use a number of different types of loops and learn the types of situations that each type of loop is best for. By the end of this lesson, you should feel confident enough in your knowledge of loops to create the Guess My Number game.
The larger your applications become, the more complicated your program code becomes. One effective way of making your programs easier to create and maintain is to break them up into small parts, called procedures. In this lesson, you'll learn how to work with two types of procedures: subroutines and functions. You'll learn how to pass data to your subroutines and functions for processing. You'll also learn how to return data back from functions. This lesson's application project is the BASIC BlackJack game, which will give you the opportunity to practice working with subroutines and functions.
Like most other programming languages, Just BASIC allows you to interact with your computer's file system. You can retrieve information about your computer's drives, and you can open files, read from them, write to them, and close them. As such, you can create reports, documents, and log files, so that's what you'll focus on in this lesson. The application for lesson is the Tic Tac Toe game. It's a project that will exercise many of the programming muscles that you've developed throughout the course so far.
It's no secret that graphical user interfaces provide users with a stimulating interactive experience. Some programming languages, including Just BASIC, allow you to take things a step further by integrating sound and graphics into desktop applications, so that's what you'll focus on in this lesson. You'll learn how to draw custom graphics and how to incorporate WAV and MIDI sounds into your Windows applications. You'll also work on a new project application that should be a lot of fun: the Slot Machine game.
In this final lesson, you'll learn how to track down and deal with the errors that inevitably crop up when you develop a new software application. Program errors can occur for any number of reasons, so this lesson will show you the fundamental steps for identifying and correcting them. You'll learn about the development of error handling procedures and investigate using Just BASIC's debugger as a means of keeping an eye on the internal operation of your programs. Your final project application will be to develop a computer version of that old classic, the Hangman game. On the surface, it seems like a simple program, but it will put all of your new Just BASIC skills to the test.
Richard Blum has been an IT industry professional for over 20 years, working mainly as a network and systems administrator. During this time, he has worked with Microsoft, Novell, Unix, and Linux servers, and has created websites using a variety of different programming languages. Blum is the author of several programming and systems administration books, including Professional Assembly Language, C# Network Programming, PostgreSQL 8 for Windows, Sendmail for Linux, Postfix, and Network Performance Open Source Toolkit.
There are no prerequisites to take this course. No previous programming knowledge or experience is required.
The instructional materials required for this course are included in enrollment and will be available online.
A new session of each course opens each month, allowing you to enroll whenever your busy schedule permits.
Once a course session starts, two lessons will be released each week for the six-week duration of your course. You will have access to all previously released lessons until the course ends.
The interactive discussion area for each lesson automatically closes two weeks after each lesson is released, so you're encouraged to complete each lesson within two weeks of its release.
The final exam will be released on the same day as the last lesson. Once the final exam has been released, you will have two weeks plus 10 days (24 days total) to complete the final and finish any remaining lessons in your course. No further extensions can be provided beyond these 10 days.
The instructor was extremely knowledgable, helpful and showed both interest and excitement regarding the subject matter he presented. Thank you for this opportunity!"
The exercises were interesting, and the material was presented in a way that kept my attention."
This course was very convenient for me and it made learning easy because I was able to grasp it at my own paste. The instructor made studying easy because of the notes that were prepared."
This was my first programming class and I was skeptical about taking it online. However, the teacher was very knowledgeable and made it easy to understand the course. The examples and games used were great. Thank you, Mr. Blum!"
I approve of this course! Thank you for the opportunity to help me on my journey into programming."
This was a great entry-level course. I feel I received a good overview of programming, and I now feel prepared to take the next step toward choosing a language to learn."
Richard did a great job designing this course. I learned a ton in a short period and it was interesting every step of the way. I plan to take additional courses like this to further my education and I hope they're all as rewarding as this one."
The instructor presented the material quite well and was very responsive to all questions. I would certainly recommend this course as a sort of starter class."
The courses were well written and easy to follow."
I took this course with reservations - thinking an online classroom might be something less than effective - but it was actually very enjoyable and I found it to be very well structured for learning. My instructor's personal style was also very welcoming and encouraging. I am looking forward to taking more classes."