Taking Programming Skills to the Next Level
Interested in learning advanced Python concepts? Searching for a high school course that is challenging, yet fun and engaging? For those who have taken Foundations of Programming (FOP), Procedural Programming is a new course at FLVS that allows students to tackle advanced concepts in computer science.
Procedural Programming has six modules that build upon the concepts taught in FOP while allowing students to design programs based on their own interests. The concepts use real-world examples students relate to.
The course does a great job of overlapping and reviewing the concepts students learn in Foundations of Programming. The first module focuses on writing basic algorithms while reviewing coding concepts learned in the previous course. Data structures, documenting, and debugging are also taught in Module One. The first two programming assignments in the course provide students with guiding criteria while allowing students to come up with the program topic based on their hobbies or interests. As a teacher, it is neat to see how creative the students are!
The second and third modules provide deeper application using the Math module, working with selection statements, iterations, and even recursion. A favorite assignment in Module Three is the Adventure Game program. Students create a suggested game or develop an original concept. During the design and creation of the program, they are challenged to use the concepts of Decomposition, Pattern Recognition, Algorithmic Design, and Generalize & Assess. The final assignment in the first segment allows the student to explore Integrated Development Environments (IDEs) outside of the course. The student is tasked with comparing and contrasting at least two different IDEs.
In the second segment of Procedural Programming, students demonstrate their ability to create programs that work with reading external files and data analysis. Module Five covers the important concepts of Cryptography. Students are asked to write about different methods of security based upon scenarios, as well as why encryption is important. The course finishes with a capstone project. Students choose from three real-world scenarios and come up with a solution to the identified problem. The project allows students to demonstrate the use of almost every concept learned, while providing them a programming opportunity that is realistic to the workplace.
By allowing students to expand upon the concepts learned in Foundations of Programming into real world applications, Procedural Programming is a must for students who want to take their programming skills to the next level.
Post by Dawn Evans, FLVS Lead Computer Science Instructor
Image Credit: Noah, FLVS Middle School Student
If these courses are taken consecutively are they considered AP Capstone and is there a special diploma that is given upon graduation?
We recommend Foundations of Programming and then Procedural Programming. It’s not considered part of AP Capstone and there is not a special diploma at graduation.
I wonder if I can take these in cambrige when I start college
How does Foundations of Programming (FOP), Procedural Programming (PP) compare with or fit in with the course AP: Computer Science A?
Should FOP and PP be taken before the AP Computer Science course?
I would definitely recommend taking Foundations of Programming and Procedural Programming before AP Computer Science as they introduce many of the concepts in AP Comp Sci. It would be ideal to take FoP and/or PP during 9th or 10th grade.
There are many programming classes offered through FLVS. My question is after taking Digital Information Technology, how does one decide which courses to take? Thanks for sharing your insights! I appreciate a knowledgeable perspective!
Taking DIT (Digital Information Technology) is a great first course on your path to learn programming! Once you complete it, give Foundations of Programming a try! It will introduce you to the Python programming language.
For the Foundations of Programming and Procedural Programming classes, do you get certified in Python? Also, are these two classes weighted 4.5 or 5.0?
Both courses are honors level and would result in 0.5 weighting. We do have industry certification opportunities after both courses, not necessarily Python certification, however.
Is it possible for a student to take module 1 one summer, and module 2 the next summer, or would it be too much of a challenge to remember everything that far apart?
Hi Julie — Yes, you can take one module at a time. If you need help scheduling your future courses, don’t hesitate to reach out to your school counselor to discuss your progress and course options! 🙂