Have you ever wondered how your favorite webpages or apps function? Learn about the influence of computers on our daily life, the purpose of programming languages, and how computers function. Experiment with Python to explore algorithms, syntax, and data structures while putting the software development cycle into practice by starting to plan and develop your own app in the Capstone Project. Discover the potential of a career in this field!
Unit 1: Our Digital Life
Could you imagine today's world without computers? Look around you. Computers are everywhere—on your desk, in your pocket, and inside almost every device and appliance in your house. They have brought enormous benefits to our world, but they have created some challenges as well. Computers seem amazingly smart, but they do their work only by performing an enormous number of simple steps very quickly. Someone has to tell the computer what the steps should be. If you learn how to code, this could be you!
What will you learn in this unit?
Unit 2: The Big Programming Picture
Coders write programs. So now it’s time to see what programming is all about. A program is a sequence of statements in a language that both humans and computers can understand. Programs are translated by compilers or interpreters into machine instructions. Machine instructions, in turn, are interpreted by a processor, and operate on data that is stored in a main memory. There are many different programming languages, based on a number of different programming styles including procedural and object-oriented programming.
What will you learn in this unit?
Unit 3: Let’s Do Some Programming
As computer languages evolve so do computer programmers. Today's coders write code or use some markup style language for their websites and presentations. We will begin by writing code using Python. Maybe you've heard of it? Python is a simple programming language which is known for its code readability, or its ability to be understood by the novice coder. Success with Python is near! However, before we can get started creating and running coding projects we need to understand a little more about syntax, data structures, and algorithms.
What will you learn in this unit?
Unit 4: The Big Process Picture
So far, we have learned about programing statements, tools, and algorithms. We have even practiced a little, by implementing and refining code. We have also learned about procedural programming and how it's based on procedure calls and functions. We've covered object-oriented programming and how it creates and manipulates objects to make things happen, each with their own collection of data, code, and methods. While it's not likely that you will ever master all programming languages, it is totally possible to become an expert in several languages. In this unit, you will add some project management skills to your already impressive skillset, by taking a look at the software development life cycle.
What will you learn in this unit?
Unit 5: The Big People Picture
Now that you’ve mastered some of the basics of programming, it’s time to discover what you can actually do with your skills. You may be surprised to learn just how many opportunities are available to you as a computer scientist! Nearly every industry relies on technology of some sort, from marketing to medicine to defense. In this unit, we’ll identify computing careers in some of the top industries, as well as understand the different specializations and roles within a programming team. Finally, we will discuss different educational paths for getting where you want to go.
What will you learn in this unit?
Explore a variety of industries, which are related to computing
Explain the responsibilities of team members in developing software
Describe the different types of specializations within programming
Identify the education and training requirements for a career in computing
Unit 6: Security, Privacy & Other Issues
Early in the course we discussed some of the positive impacts of technology on society, such as a more productive work force full of exciting opportunities, the free and equitable access to information, better communication and increased accessibilities for people with disabilities. Nevertheless, there is a darker side to technology! As Peter Parker (that’s Spiderman but don’t tell anyone) learned from his Uncle Ben, “with great power, comes great responsibility.” In today’s digital age, that power often lies with you, the programmer, and it’s up to you to keep us safe. So, you must be aware of the challenges that come along with our reliance on technology and be vigilant in making sure that these challenges are kept under control.
What will you learn in this unit?
Unit 7: Capstone Project Part I
Take a step back and look at how much you’ve learned. You know about the advancements that technology has brought in personal and professional life, the process of developing software and the people involved, some of the ethical and security risks of technology, and the programming basics of writing code using Python! It’s time to put all this acquired knowledge to good use. In the last two units of the course, you’ll complete a capstone project by researching, designing, and creating a software solution to a problem. Ready? Here we go!
What will you learn in this unit?
Use critical thinking skills to analyze the needs of a software project
Describe user personas for a product’s target users
Create a flowchart and dataflow diagram
Identify functional and technical requirements of a mobile application
Unit 8: Capstone Project Part II
The time has come. You have a spec, or part of a spec, for a single process, data flow diagrams, a data model for your database, and even a flowchart that visually maps out the algorithm you will need to code. In this final unit of the course, you’ll enter the Development Phase of the Software Development Life Cycle, creating the ‘Calculate & Transact Payment’ process of the application.
What will you learn in this unit?