What you will learn in this course

Coding 1b: Programming
Building on the prior prerequisite course, nurture your understanding of programming to take on new challenges! Discover a variety of development tools to create code while learning about methods for modular programming and coding structures. Explore security considerations, like encryptions, and toolkits to elevate your coding skills! Finally, start creating your own comprehensive software for the web and move through programming problems as part of the Capstone Project.
Unit 1: Get the IDE(a)?
What is the difference between soft- and hardware? That’s a pretty simple question isn’t it? But do you know how exactly the two play together in order to create the platforms that development and coding take place on? From the basics of hardware and software environments to specific tool-kits needed for development, we will be sure to cover all of this and more. After all, a solid knowledge of the necessary and available tools for development of any kind is essential in order to fully realize your potential as a developer, programmer or other IT expert.
What will you learn in this unit?
- Identify, explain, and compare hardware components
- Understand different software environments and explain what makes them unique
- Briefly describe different sets of development tools
- Accurately explain what dev tool-sets are and can be used for
- Analyze why different tool-kits are used for different purposes
UNIT 1 Assignments
Assignment | Type |
---|---|
Unit 1 Text Questions | Homework |
Unit 1 Lab | Homework |
Unit 1 Activity 1 | Homework |
Unit 1 Activity 2 | Homework |
Unit 1 Discussion 1 | Discussion |
Unit 1 Discussion 2 | Discussion |
Unit 1 Quiz | Discussion |
Unit 2: The Software—Human Interface
At the end of the day, which is more important—having a great interface for users or having well-built software that gets the job done? It’s a trick question. The two are equally important, but some programmers assume that the interface is more of an afterthought, something to be added when all the coding is done. This could not be further from the truth! In this unit, we will explore in detail why user interfaces are one of the most important pieces of any software or development.
What will you learn in this unit?
- Define, explain, and manipulate different data types
- Effectively prompt for, validate, and constrain input information
- Design simple user interfaces and incorporate graphics into them
- Describe different GUI libraries and toolkits
- Perform simple tasks in PythonAnywhere and Trinket.io
UNIT 2 Assignments
Assignment | Type |
---|---|
Unit 2 Text Questions | Homework |
Unit 2 Lab | Homework |
Unit 2 Activity 1 | Homework |
Unit 2 Activity 2 | Homework |
Unit 2 Discussion 1 | Discussion |
Unit 2 Discussion 2 | Discussion |
Unit 2 Quiz | Discussion |
Unit 3: Coding Structures
In previous units, you’ve gotten a taste of what you can do with Python. In this unit, you’ll develop your coding skills by learning about some of the most important features of Python and how to use them. You’ll learn how to create a program that can run different parts of the program in different situations. You’ll discover how to make something happen repeatedly—without having to code it over and over again—and you’ll see how you can organize your variables into groups.
What will you learn in this unit?
- Describe, develop, and program selection statements
- Explain, create, and use loops
- Describe internal documentation and effectively use comments
- Describe, create, and use lists
- Understand, create, and use arrays, both single and multidimensional
UNIT 3 Assignments
Assignment | Type |
---|---|
Unit 3 Text Questions | Homework |
Unit 3 Lab | Homework |
Unit 3 Activity 1 | Homework |
Unit 3 Activity 2 | Homework |
Unit 3 Discussion 1 | Discussion |
Unit 3 Discussion 2 | Discussion |
Unit 3 Quiz | Discussion |
Unit 4: Modular Programming
In the last unit, you got your feet wet with Python programming, and you’ve learned how to create some basic programs. Now, you will be able to expand your skills by learning how to create and use your own functions. Also, you’ll learn how to prevent errors from crashing your programs.
What will you learn in this unit?
- Describe the process for creating functions and create your own functions
- Demonstrate the ability to pass arguments into functions
- Explain the difference between global and local variables and select the appropriate variable to use
- Describe and use recursive functions
- Describe strategies for avoiding errors and apply those strategies to a programming task
UNIT 4 Assignments
Assignment | Type |
---|---|
Unit 4 Text Questions | Homework |
Unit 4 Lab | Homework |
Unit 4 Activity | Homework |
Unit 4 Discussion 1 | Discussion |
Unit 4 Discussion 2 | Discussion |
Unit 4 Quiz | Discussion |
Coding 1B Midterm Exam
- Review information acquired and mastered from this course up to this point.
- Take a course exam based on material from the first four units in this course (Note: You will be able to open this exam only one time.)
MIDTERM Assignments
Assignment | Type |
---|---|
Midterm Exam | Exam |
Midterm Discussion | Discussion |
Unit 5: Data Security
Data security is something of a hot topic across the globe. Everywhere, people are taking steps to secure their information and companies are being forced to think about what to do with data due to privacy protection laws. If you were to go by the news alone, you’d think data security was bad almost everywhere, with banks and major companies reporting data breaches. How does this happen? You may have a rough idea of how companies are breached, but the truth is actually a lot more technical. So, let’s take a look at data security, both how it can be exploited, and also how it can be protected.
What will you learn in this unit?
- Explain the principles of cryptography, including encryption, digital signatures, and authentication methods
- Identify computer, network, and software security risks and vulnerabilities
- Design appropriate system of controls and security measures
- Implement a basic security method (encryption, digital signature, or authentication)
- Describe how to recover a machine from systems failure or virus
UNIT 5 Assignments
Assignment | Type |
---|---|
Unit 5 Text Questions | Homework |
Unit 5 Lab | Homework |
Unit 5 Activity | Homework |
Unit 5 Discussion 1 | Discussion |
Unit 5 Discussion 2 | Discussion |
Unit 5 Quiz | Discussion |
Unit 6: Top-Notch Programming
Now that you’ve learned about lists and loops, you have some powerful Python programming tools that you can use when you write programs. In this unit, we’ll build on that knowledge so that you can program more efficiently. You’ll also learn about some classic algorithms used in programming. And, you’ll discover the most common ways that professional programmers improve their code.
What will you learn in this unit?
- Use Python efficiently to create lists, access functions, and import modules
- Explain and adapt classic algorithms in Python
- Develop algorithms to solve computer programming problems
- Describe and use common peer code review techniques
UNIT 6 Assignments
Assignment | Type |
---|---|
Unit 6 Text Questions | Homework |
Unit 6 Lab | Homework |
Unit 6 Activity | Homework |
Unit 6 Discussion 1 | Discussion |
Unit 6 Discussion 2 | Discussion |
Unit 6 Quiz | Discussion |
Unit 7: Developing Web Solutions: Part 1
Learning the theories of coding and Python is one thing, but practicing in the context of a complete project is something else entirely. Completing separate tasks and assignments is a great start towards a project, but in order to get to know every part of the development life-cycle of a piece of software, it’s necessary to do just that—so get ready to create your own piece of software as part of this project.
What will you learn in this unit?
- Work as part of a structured team in assigned roles
- Create the environment necessary for productive work (i.e., research, flowcharts, etc.)
- Structure dynamic websites and design interfaces and solutions for them
- Build front-end, client-facing websites with a full-stack of HTML, CSS, Python and Django in the cloud
UNIT 7 Assignments
Assignment | Type |
---|---|
Unit 7 Text Questions | Homework |
Unit 7 Lab | Homework |
Unit 7 Activity 1 | Homework |
Unit 7 Activity 2 | Homework |
Unit 7 Discussion 1 | Discussion |
Unit 7 Discussion 2 | Discussion |
Unit 7 Quiz | Discussion |
Unit 8: Developing Web Solutions: Part 2
Finishing a project is always more difficult than starting it—the team is running out of motivation and energy. Some of the initial ideas didn’t work out and some aspects are running late—that is the reality of being a developer. Being able to see it through to the end, however, is the mark of being a good developer. Seeing that big idea completed and ready for usage is a great feeling—especially after all the hard work you put into it!
What will you learn in this unit?
- Describe the structure of back-end coding
- Test and debug your code
- Launch and use your finished application
- Explain the connection between databases and websites
- Write and execute test scenarios as part of a project
UNIT 8 Assignments
Assignment | Type |
---|---|
Unit 8 Text Questions | Homework |
Unit 8 Lab | Homework |
Unit 8 Activity 1 | Homework |
Unit 8 Activity 2 | Homework |
Unit 8 Discussion 1 | Discussion |
Unit 8 Discussion 2 | Discussion |
Unit 8 Quiz | Discussion |
Coding 1B Final Exam
- Review information acquired and mastered from this course up to this point.
- Take a course exam based on material from units five to eight in this course – the last four units. (Note: You will be able to open this exam only one time.)
FINAL Assignments
Assignment | Type |
---|---|
Final Exam | Exam |
Class Reflection Discussion | Discussion |