Curriculum
At Bergen CodeHers, each session will introduce girls to everything from computer science principles to programming in Python! The teacher is well-equipped and ready to guide your daughter in exploring a whole new world in technology, where she has a place.​ Each girl will purchase a copy of "Under One Condition: An Introduction to Computer Science Principles and Programming in Python" and have access to an online coding platform as resources to compliment each of the 8 main sessions.
Session 1
Understanding Computer Science
Introductions of each student's goals for the instructor to create an understanding of their main project interests
What is the internet: how the internet works and what computer networks are
Safe computing: personally identifiable information, data breaches
Dangers of Computing: exploring how a virus, worm, malware, phishing, rouge access point, and keylogging technology are used on the web
Computer networks: bandwidth, Transmission Control Protocol, Internet Protocol, User Data Protocol, The World Wide Web
Design and Development: what the development process is and when to use the iterative development process over the incremental development process
Steps to establish requirements, create a design, implement the design, verify the design, and also maintain it
Session 2
Introduction to Data
What bits are and how binary digits are used
How we can understand binary numbers easily
Understanding the American Standard Code for Information and what decimal, hexadecimal, binary, octal, and char are
Data compression through encoding, substituting, and using algorithms
Lossless compression algorithms versus lossy compression algorithms
Abstraction: analog data, digital data, overflow errors
Session 3
Using Data and Fixing Computing Errors
How data can be transmitted when communicating from a sender to a receiver: data packets reaching a final destination
Encryption: Caesar Cipher, symmetric key encryption, public key encryption, decryption
Using data in programs: data mining, text analysis
Transforming data through visualizations, creating categories in a data set, comparing or combing data, modifying data sets
Data analysis: patterns, trends, correlations, relationships, and outliers
Processing programs: visualization, search tools, and data filtering
Session 4
Introducing Programming in Python: Data Types and Representing Data
Data types: floats and integers, strings, lists, booleans
Determining data types
Strings, Lists, Tuples: how to use functions such as length, repetition, slice, join and split, count, index, and concatenation
Mutability: why lists are mutable and strings are immutable
Methods of mutability
Session 5
Computing Errors
Common computing errors: how to identify, find, and correct
Debugging: understand what you are doing, work in bite-sized pieces, keep revising
Syntax errors, runtime errors, semantic errors, type errors, name errors, and value errors
Midpoint review and clarifying questions
Session 6
Operators, Operands, and Relations
Operators and operands: learn to use exponents, multiply, divide, find remainder, add, and subtract though programming
Math in programming: boolean algebra
Logical operators: using the in, not in, and, or, and not operators with boolean expressions
Relational operators: Using the equal, not equal, greater or less than or equal to, not equal, less than or greater than functions
Session 7
Conditionals and Patterns
Conditional Selection: unary selection, binary selection
Conditionals: nested conditionals and chained conditionals
Iteration: for loop, accumulator pattern
Using for loop: repetition, using values, and ranges
Session 8
Using Turtle Methods and Importing Modules
Importing modules in different contexts
Giving Turtle commands: attributes, multiple turtle, and turtle methods
Creating Turtle designs
Final discussion and key takeaways
Bonus Session
Mapping Out the Future
Before Session 8, parents will be sent an interest form to speak with the instructor and their child on preparing for the future. This can include course selection discussion, advise on taking initiative in school, and how to begin and plan for a passion project. Time slots will be assigned to interested students for after class on session 8.
Planning for each student to create an action plan: identifying a societal issue, brainstorming steps to solve that problem, and creating a plan to take action
Advice from instructor about combatting the gender gap and how to take initiative inside and outside of school: discussion of how to successfully complete an impressive standout passion project