We get it—choosing an online degree can be intimidating. You want to know everything you can about the program so there are no surprises once you start weekly coursework and projects. If you’re reading this, you most likely know that qualified technology professionals are in high demand. Your first step to stand out to employers is a well-rounded education focused on both hard and soft skills of a tech role, and that’s where the 100 percent online University of Wisconsin Bachelor of Science in Applied Computing comes in.
However, what does a UW Applied Computing course look like? What exactly are you expected to complete each week? How do you interact with classmates and faculty?
Below are the answers to these questions and more. This is your inside look at APC 300: Programming I.
What will I learn in the course?
APC 300: Programming I is an introduction to the history of computing, fundamental computer concepts, and structured programming techniques. It provides hands-on coverage of simple data types, problem solving, program design, conditional execution, loops, and basic user-defined methods. Python is used to teach the basic concepts of program analysis, design, implementation, debugging, and testing.
This course provides a solid foundation in computing by focusing on problem-solving and fundamental programming skills. You will gain skills in computational thinking and learn to implement solutions using a contemporary programming language. This course will emphasize good programming practices such as writing well-tested comprehensible code that is developed incrementally and iteratively. The course will cover essential topics that will include variables, data types and expressions, control structures (conditionals, loops), basic data structures, functions and modular programming, handling input/output, and testing and debugging.
By the end of the course, you will be able to:
- Explain the fundamental computing concepts relevant to computational problem-solving
- Apply the principles of computational thinking and structured programming to solve a given problem
- Apply your knowledge of the syntax and semantics of a contemporary programming language while writing a program
- Effectively use programming constructs such as variables, conditionals, loops, data structures, and functions
- Create programs that handle input and output that involves user interaction as well as data files
- Write clean, modular, and well-documented code
- Create programs that are well-tested and correctly perform a given task
- Analyze code to determine its purpose, behavior, and correctness
What will the lectures be like?
In fall and spring semesters, the course comprises 13 lessons across a total of 15 weeks. One lesson spans two weeks, and there is one week for review before the final exam. The course is also offered in the summer and features an accelerated 11-week format with 1-3 lessons per week. Unlike an on-campus program, you are not required to attend a lecture during a specific time.
Along with readings, some lessons include narrated slideshows and screencasts where the faculty member walks you through the week’s lesson(s). This is especially helpful for the APC 300: Programming I course, as you dive into the world of computer systems and languages.
As a student, you take the reins of your learning experience. You can start and stop a reading, narrated slideshow, or video on your own schedule within the lesson, and you can listen to, watch, or reference content as many times as you need to reinforce the material.
What types of assignments will I complete?
APC 300: Programming I is a project-based course with the goal that you will feel confident and be successful with your new programming skill set. Every week, students study new information which consists of short videos and reading materials. There are also programming assignments with peer review and a weekly quiz. The course has three exams throughout: Two focus on specific topics, while the final exam is comprehensive.
Each lesson includes a peer review where you’ll complete one to two individual programming exercises as you give and receive peer feedback on these assignments. There are also ungraded practice exercises assigned for you to sharpen your skills.
A small group discussion each week called the “Algorithms Alcove” has you working in small groups to review a problem you were assigned individually as practice. This same group will complete a programming assignment together later in the course.
All assignment due dates are clearly outlined in the Course Calendar, which you can refer to anytime during the course.

Who is the instructor?
Arpan Jani, PhD, is a professor in the Department of Computer, Information, and Data Sciences at the University of Wisconsin–River Falls, where he has taught since 2004. He received his PhD from the University of Minnesota. He has taught a variety of courses including those in programming, information systems for business management, database management, systems analysis and design, project management, and ethics and technology.
His current research interests include agent-based modeling, information systems and decision support, behavioral ethics, and judgment and decision-making under conditions of risk and uncertainty. His research has been published in the International Journal of Project Management, Journal of Educational Technology Systems, Journal of Business Economics, and Communications in Nonlinear Science & Numerical Simulation. He has also presented his work at national and international conferences.

Get Program Guide
Learn more about our 100% online degree and certificate programs.
Do students in the course interact?
Yes. Students interact and share ideas through ungraded and graded discussions in Canvas, the program’s learning management system. Students are broken into small discussion groups to work together on assignments, such as working out solutions to practice exercises.
There is also a small group assignment and weekly peer reviews. You can collaborate, ask questions, and have general, non-assessment discussions in the virtual Student Resource Lounge. Many students are surprised to find that they get to know their instructors and classmates better online than in a traditional classroom.
How much do I do in one week?
Time commitment varies depending on how much previous educational and/or professional experience you bring into the program, as well as your work and life schedule.
In addition to the UW Applied Computing academic directors and other resources offered by your chosen home campus, the UW Online Collaboratives Student Services team is comprised of Success Coaches. Offering support for academic, coursework, graduation, and personal needs, your Success Coach is there to guide you through the program.
Have questions about APC 300: Programming I or the online bachelor’s UW Applied Computing program? Learn about our expert faculty, how to apply, and more. Enrollment advisers can help with all of your questions. Call 608-262-2011 or email learn@uwex.wisconsin.edu.