Introduction to Programming 1A: Introduction
Computer Programmer / Software Developer Career Pathway Course Units
Unit 1: Software Development 101
Have you heard the saying, “Money makes the world go ‘round”? A more accurate statement for today’s world is “Software makes the world go ‘round”! It’s almost impossible to move through an entire day without interacting with at least one piece of software, whether it’s behind a traffic light, microwave, car, or smartphone. We are going to begin your programming journey with a crash course on software development. We’ll set the foundation by discussing some software basics, and we’ll also learn the ins and outs of the software development life cycle. Get ready to explore how software is changing the world!
Unit 2: Speaking the Language
Programming languages have gone through quite the evolution in the past 60 years. Machines only understand binary (1s and 0s), but humans are more comfortable programming in English. So languages have evolved from confusing symbols to easier-to-understand English words. The future of programming languages is heading toward natural language processing, where programmers will be able to write code in plain English instead of learning the rules of a language. With the hundreds of languages that exist today, it can be overwhelming thinking about how to choose one. But after this unit, you will understand how languages differ and which ones are best suited for certain fields.
Unit 3: Problems & Solutions
Many programmers are so eager to begin writing code that they neglect to properly plan beforehand. Rushing through the design process can lead to critical mistakes later on. We will distinguish between a good scope statement and a poor one. We’ll also see how problems can be broken down in order to develop a solution. And we will end the unit by setting up an account at PythonAnywhereso that we can start learning one of the most popular languages in the world today!
Unit 4: A Deep Dive with Data
Data makes the world go ‘round. It is the heartbeat of many businesses, and it holds the power to help or destroy. With a commodity this valuable, it needs to be analyzed and understood correctly. In this unit, we will explore how data is stored in a computer using physical components. We’ll take a look at how images, audio, and video are represented and stored in memory. We’ll work with data types and understand how strings can be manipulated. And finally, we will gain a deeper understanding of how Big Data works in the real world. Hang on tight for this deep data dive!
Unit 5: All About Algorithms
Algorithm seems to be a buzz word these days, but what exactly is an algorithm? Do they really have all the power and control that some people say? In this unit, we will answer these questions and lay a solid foundation of programming skills. We will be using Python to implement our algorithms, but the concepts you will learn are transferrable to most other common languages. Get your fingers warmed up because you’ll be typing code before you know it.
Unit 6: The Data Files
With all the data in the world, we need to have solid methods for collecting, processing, and analyzing it. In this unit, you will learn and implement various techniques in Python for working with data from files, surveys, and the console. We will explore how programming data is stored in memory, keeping in mind some considerations when dealing with real-world data. And finally, you will begin using Python to code in an object-oriented way. Get ready for a paradigm shift.
Unit 7: Running the Numbers
We are surrounded by numbers in our daily lives, whether we realize it or not. Numbers have become important for our day-to-day functioning, as every computer system is built on a foundation of numbers. But did you know that there are people who use completely different number systems? We are going to uncover the secrets of lost number systems and save the world! Well…that may be a bit exaggerated. But we will learn how to convert among number systems, how to use various mathematical operations, how to create vector images and graphs, and how to use data structures.