Coding 12

What you will learn in this course

Example figure

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

Unit 1 Text QuestionsHomework
Unit 1 LabHomework
Unit 1 Activity 1Homework
Unit 1 Activity 2Homework
Unit 1 Discussion 1Discussion
Unit 1 Discussion 2Discussion
Unit 1 QuizDiscussion

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

UNIT 2 Assignments

Unit 2 Text QuestionsHomework
Unit 2 LabHomework
Unit 2 Activity 1Homework
Unit 2 Activity 2Homework
Unit 2 Discussion 1Discussion
Unit 2 Discussion 2Discussion
Unit 2 QuizDiscussion

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

Unit 3 Text QuestionsHomework
Unit 3 LabHomework
Unit 3 Activity 1Homework
Unit 3 Activity 2Homework
Unit 3 Discussion 1Discussion
Unit 3 Discussion 2Discussion
Unit 3 QuizDiscussion

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

Unit 4 Text QuestionsHomework
Unit 4 LabHomework
Unit 4 ActivityHomework
Unit 4 Discussion 1Discussion
Unit 4 Discussion 2Discussion
Unit 4 QuizDiscussion

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

Midterm ExamExam
Midterm DiscussionDiscussion

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

Unit 5 Text QuestionsHomework
Unit 5 LabHomework
Unit 5 ActivityHomework
Unit 5 Discussion 1Discussion
Unit 5 Discussion 2Discussion
Unit 5 QuizDiscussion

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

Unit 6 Text QuestionsHomework
Unit 6 LabHomework
Unit 6 ActivityHomework
Unit 6 Discussion 1Discussion
Unit 6 Discussion 2Discussion
Unit 6 QuizDiscussion

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

Unit 7 Text QuestionsHomework
Unit 7 LabHomework
Unit 7 Activity 1Homework
Unit 7 Activity 2Homework
Unit 7 Discussion 1Discussion
Unit 7 Discussion 2Discussion
Unit 7 QuizDiscussion

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

Unit 8 Text QuestionsHomework
Unit 8 LabHomework
Unit 8 Activity 1Homework
Unit 8 Activity 2Homework
Unit 8 Discussion 1Discussion
Unit 8 Discussion 2Discussion
Unit 8 QuizDiscussion

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

Final ExamExam
Class Reflection DiscussionDiscussion