Introduction to Programming
Take your first steps toward a career as a computer programmer! In this course, you'll learn to use Just BASIC, a free Windows programming language, to create stand-alone applications for professional or personal use.
As you explore the BASIC programming language, you'll learn how to work with graphical user interfaces, controls, variables, arrays, conditional logic, and loops. You'll also examine subroutines, functions, and debugging. After that, you'll discover how to add sound and graphics to your Just BASIC programs. To reinforce the concepts in each lesson, you'll create a working computer-game application.
Even if you've never programmed before, you'll find it easy to follow the step-by-step instructions in each lesson. By the end of the course, you'll have the skills and confidence you need to program in BASIC and design your own custom applications for home, school, or work.
Duration: 6 Weeks
Session Start Dates:
About the Instructor
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 Web sites 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.
A new session of each course opens each month, allowing you to enroll whenever your busy schedule permits!
How does it work? Once a 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.
Keep in mind that the interactive discussion area for each lesson automatically closes 2 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 2 weeks plus 10 days to complete the Final and finish any remaining lessons in your course. No further extensions can be provided beyond these 10 days.
Getting Started With Just BASIC
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. I'll begin by going through a brief history of the evolution of computer programming. We'll cover some basic programming concepts and terms, and then we'll zero in specifically on Just BASIC, the programming language that we'll use throughout the course. We'll then download and install Just BASIC, and at the conclusion of the lesson, you'll create and execute your first Just BASIC program!
Creating Programs With Just Basic
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. In this lesson, I'll introduce you to the resources that Just BASIC provides. I'll show you how you'll use these tools to develop software applications. We'll also 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, we'll create your first actual computer game: the Legend of Mighty Molly.
Creating Windows for Graphical User Interfaces
We’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. We’ll 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. We’ll close out the lesson by creating the Math Madness computer game, which will give you some great practice in working with GUIs.
Adding Controls to Windows
In Lesson 3, we 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. So controls are what we'll concentrate on in this lesson. Just BASIC allows you to create many different types of controls. We'll look at each of Just BASIC’s controls in detail, and then we'll examine each one’s programming syntax. And, as always, I'll have 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.
Working With Controls and FreeForm-J
In this lesson, we’re going to continue our exploration of GUI elements. We’ll first talk about 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, we’ll dig into FreeForm-J, the powerful Just BASIC application that allows you to visually design your GUIs. We’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. We’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.
Working With Variables and Arrays
The subject for this lesson is the retrieval and storage of data in computer memory. Specifically, we’ll be digging into how to store and retrieve individual pieces of data in variables. We’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, we’ll create a computer application called the Ask Mustafa game.
Making Decisions With Conditional Logic
To create complex applications, a computer program needs a way of evaluating different values to determine a logical direction in which to proceed. As programmers, we do this with conditional programming statements that use mathematical, comparison, and logical operators. That’s what we’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, we’ll wrap up the lesson with a project application called the Karaoke Night game.
Using Loops to Process Data
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. We’ll look at how to use a number of different types of loops, and I’ll also explain 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.
Functions and Subroutines
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.
Working With Text Files
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 we'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.
Working With Sound and Graphics
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 we’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. We’ll also work on a new project application that should be a lot of fun: the Slot Machine game.
Debugging Your Applications
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 I'll show you the fundamental steps for identifying and correcting them. We'll talk about the development of error handling procedures, and we'll also 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.
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.