Skip to main content
Ctrl+K
Final Exam: Monday, March 17th, 2025, 1-3 PM @ Main Auditorium
Winter 2025 ENGR131: Introduction to Programming for Engineers - Home Winter 2025 ENGR131: Introduction to Programming for Engineers - Home
  • Welcome to ENGR 131!

Syllabus

  • Syllabus
    • ๐Ÿ‘‹ Introduction to Programming for Engineers
    • ๐Ÿ“จ Contact Process
    • ๐Ÿ“– Student Learning Information
    • ๐Ÿ“š Course Materials
    • ๐Ÿ“† Course Schedule
    • ๐Ÿ’ฏ Earning Credit
    • โฐ Late Assignments
    • ๐ŸŽ“ Expectations of Students
    • ๐Ÿ›‘ Academic Policies
    • ๐Ÿ’™ Counseling Services
    • ๐Ÿ’ก Tips for Success
    • ๐ŸŽ“ How to Get an A

Course Content

  • Week 1๏ธโƒฃ
    • ๐Ÿ“– Readings
      • ๐Ÿ“– Guide for Reading Materials
      • ๐Ÿ“– ๐Ÿง‘โ€๐Ÿ’ป How to Use JupyterLab
      • ๐Ÿ“– Making Sure You Get Credit
      • ๐Ÿ“– The Programming Mindset ๐Ÿง 
      • ๐Ÿ“– Programming, Design, and Engineering ๐Ÿ› ๏ธ
      • ๐Ÿ“– Python Programming Language ๐Ÿ
      • ๐Ÿ“– What is a Program? ๐Ÿค”
      • โ“ What is a Program
      • ๐Ÿ“– Formal and Natural Languages: The Engineerโ€™s Playbook ๐Ÿ“š
      • โ“ Formal vs. Natural Languages
      • ๐Ÿ“– ๐Ÿ“ Python Modules and Packages
      • โ“ What is a Python Module?
      • ๐Ÿ“– ๐Ÿ““ Python Variables
      • โ“ Variables
      • ๐Ÿ“– ๐Ÿˆ Python Operators
      • โ“Python Operators
    • ๐Ÿ‘ฉโ€๐Ÿซ Lecture
      • ๐Ÿ“ Why Computer Programming is an Essential Skill
      • ๐Ÿ‘จ๐Ÿฝ๐Ÿ‘ฉ๐ŸพEngineering 131 Winter 2024 Instructors
      • ๐Ÿ“ Who is Professor Agar
      • ๐Ÿ“๐Ÿงช๐Ÿ”ฌ Scientific Research in Agarโ€™s Lab
      • ๐Ÿ“ Accessing Course Content
      • ๐Ÿš€ Activity: Hello, World! JupyterHub
      • ๐Ÿ“ ๐Ÿ Why Python?
      • ๐Ÿ“ Programming Basics
      • ๐Ÿ“ ๐Ÿ–ฅ๏ธโœจComputer Components: Whatโ€™s Inside That Magic Box?
      • ๐Ÿ“ ๐Ÿ‰ Python Modules for Engineers
      • ๐Ÿ“ ๐ŸŽ‰ Welcome to Variable Wonderland!
      • ๐Ÿ“ ๐Ÿ› ๏ธ Engineering with Python Operators
      • ๐Ÿฅจ Philly Pretzel Challenge!
    • ๐Ÿงช Lab: Building a Computer
    • ๐Ÿ—“๏ธ๐Ÿ“š Week 1: Attendance โœ…
    • โ“ Calculating Total Credits at Drexel! ๐ŸŽ“
    • Calculate Drexel Basketball Playerโ€™s Game Stats! ๐Ÿ€
    • ๐Ÿ  ๐Ÿง  Homework 1 - Python with โ€œThe Officeโ€
  • Week 2๏ธโƒฃ
    • ๐Ÿ“– Readings
      • ๐Ÿ“– The One with Python Strings ๐ŸŽ‰
      • โ“Pootie Tangโ€™s Wild String Manipulation Adventures
      • ๐Ÿ“– Python Datatypes: The Many White Houses of Code๐ŸŽ‰
      • โ“ Python Datatypes: The Periodic Table Edition ๐Ÿงช
      • ๐Ÿ“– Comments: Talking to Your Future Self (and Others) ๐Ÿ’ฌ
      • โ“ Commenting
      • ๐Ÿ“– ๐ŸŽฏ Lists and Tuples through a Bucket List Adventure!
      • โ“ ๐Ÿ”ฌ Materials Design: Lists and Tuples
      • ๐Ÿ“– Python Dictionaries and Bad Vexillology Design
      • โ“ Dictionaries and Search Engine Optimization (SEO) ๐Ÿ‘€
      • ๐Ÿ“– ๐ŸŽฎ Precision in Python: Fixed-Point, Floating-Point, and Integer Representation
      • โ“ Precision in Python: NIST Laboratory Adventures ๐Ÿงช
      • ๐Ÿ“– Data Precision and Its Impact on Energy Efficiency and Cost ๐Ÿ’ก
      • ๐Ÿ“– ๐ŸŽถ Understanding Quantization with the THX Deep Note ๐ŸŽถ
    • ๐Ÿ‘ฉโ€๐Ÿซ Lecture
      • ๐Ÿ“ ๐ŸŽ‰ Welcome to String Wonderland!
      • ๐Ÿ“ ๐Ÿ”‹ Data Types
      • ๐Ÿ“ ๐Ÿ–‹๏ธ Python Commenting and Docstrings
      • โ“ ๐Ÿฆด Hytrl Skull Collection Problem
      • โญ ๐Ÿ•น๏ธ Evolution of Computing Through Video Game History
      • ๐Ÿ“ ๐Ÿ”ฌ Python Lists
      • ๐Ÿ“ ๐Ÿ—๏ธ Python Dictionaries
      • ๐Ÿ“ ๐Ÿ”ฌ Precision in Python: Integers and Floating-Point Numbers
      • โ“ ๐Ÿฉบ Chevalier Jackson Collection Problem
    • ๐Ÿงช ๐ŸŽฎ Lab 2: Scrabble Game Calculator
    • ๐Ÿงช ๐ŸŽฎ Building a Scrabble Word Finder
    • ๐Ÿ—“๏ธ๐Ÿ“š Week 2: Attendance โœ…
    • โ“ Python Basics: Data Structures and Types Quiz ๐Ÿ
    • โ“ Python Basics: Data Structures and Types Quiz ๐Ÿ
    • ๐Ÿ  Python Programming: Explore the Nutshell Studies ๐Ÿ•ต๏ธโ€โ™€๏ธ๐Ÿ”
  • Week 3๏ธโƒฃ
    • ๐Ÿ“– Readings
      • ๐Ÿ“– ๐ŸŽฎ Errors in the Negative World ๐ŸŒŒ
      • โ“๐Ÿ’ฅ Errors and Exceptions
      • ๐Ÿ“– Debugging: The Fine Art of Problem-Squashing ๐Ÿ›๐Ÿ”
      • ๐Ÿ“– Debugger in Jupyterlab
      • โ“๐Ÿž Debugging
      • ๐Ÿ“– ๐Ÿ› ๏ธ Python Engineerโ€™s Toolbox: Essential Tools for Mathematical and Computational Engineering
      • โ“๐Ÿ Python Tools for Engineering ๐Ÿ› ๏ธ
      • ๐Ÿ“– ๐ŸŒŸ NumPy Guide ๐ŸŒŸ
      • โ“ ๐ŸŒŠ Lotl of NumPy ๐Ÿงช๐Ÿพ
      • ๐Ÿ“– ๐Ÿค– What is Symbolic Computation?
      • ๐Ÿ“– ๐Ÿ› ๏ธ Basic Operations with SymPy
      • ๐Ÿ“– โœจ Printing with SymPy
      • ๐Ÿ“– ๐Ÿงฎ SymPy Calculus: Driving Engineering Solutions
      • ๐Ÿ“– ๐Ÿงฉ Solvers in SymPy: Cracking the Code of Engineering Problems
      • โ“ โŒ Eliminate or โœ… Evaluate: Surviving the Sympy ๐Ÿฆ‘ Challenge!
    • ๐Ÿ‘ฉโ€๐Ÿซ Lecture
      • ๐Ÿ“ โœˆ๏ธ Errors in the Skies: Debugging Like an Engineer ๐Ÿ› ๏ธ
      • ๐Ÿ“ Your First Program: Hello, Engineering! ๐Ÿš€
      • ๐Ÿ“ ๐Ÿบ Debugging in a Beer-Making Plant: Brewing Perfect Code ๐Ÿ›๐Ÿ”
      • โญ ๐Ÿ–ฅ๏ธ Introduction to Operating Systems, BIOS, Command Line, and File Systems
      • ๐Ÿ“ Super Debugging Troopers ๐Ÿš”๐Ÿฑโ€๐Ÿ‘ค
      • ๐Ÿ“ NumPy Quickstart Guide with a Rainman Spin ๐ŸŒŸ
      • โ“ Sorting M&Ms with NumPy
      • ๐Ÿ“ Symbolic Computation with SymPy
      • โ“ Dodgeball: Simple Symbolic Projectile Motion
    • ๐Ÿงช ๐Ÿ”ฉโš™๏ธ๐Ÿ’ช Designing Composites with Optimal Mechanical Properties
    • ๐Ÿ  Homework The Flight of the Angry Bird ๐Ÿš€๐Ÿฆ
    • ๐Ÿ—“๏ธ๐Ÿ“š Week 3: Attendance โœ…
    • โ“ ๐ŸŽ๏ธ NumPy Drift: Speeding Through Arrays at Lightning Speed ๐Ÿ
  • Week 4๏ธโƒฃ
    • ๐Ÿ“– Readings
      • ๐Ÿ“– Boolean: Squid Game Red Light, Green Light Edition ๐Ÿฆ‘๐Ÿšฅ
      • ๐Ÿ“– ๐Ÿคฅ If-Else Statements: The Tale of Pinocchioโ€™s Nose
      • โ“ ๐Ÿž๏ธ South Park Adventures ๐Ÿงข๐ŸŒฒ
      • ๐Ÿ“– ๐Ÿค– Loops in Python: Westworld Edition
      • ๐Ÿ“– ๐ŸŸก For Loops in Python: Pac-Man Style
      • ๐Ÿ“– ๐Ÿ•ถ๏ธ Nested Loops in Python: The Matrix Style
      • ๐Ÿ“– ๐Ÿฅฃ continue, break, and else: Snap, Crackle, Pop in Python Loops
      • โ“ ๐Ÿ““ Mortified: High School Diaries ๐Ÿ“”๐Ÿ’”
      • ๐Ÿ“– ๐ŸŽฅ While Loops in Python: TikTok Reels Style
      • โ“ ๐ŸŒบ 50 First Dates ๐ŸŒด๐Ÿ’ž
    • ๐Ÿ‘ฉโ€๐Ÿซ Lecture
      • ๐Ÿ“ ๐Ÿค–๐Ÿ”Œ Welcome to Boolean Logic in Engineering!
      • ๐Ÿ“ ๐Ÿ”ง๐ŸŒ Decision-Making with if-else Statements in Python
      • ๐Ÿ’ป Activity 5.1: Nuclear Plant Temperature Alert
      • ๐Ÿ“๐Ÿ”ฌ Automating Electron Microscopy Data Analysis with for Loops
      • ๐Ÿ“ ๐Ÿค–๐Ÿ”ง Programming an Assembly Line: Nested Loops in Action
      • Quick Guide to Interactive Development Environments (IDEs) and Git
      • ๐Ÿ“ ๐Ÿงช Quantum Control with continue, break, and else
      • ๐Ÿ“ ๐Ÿ—๏ธ Civil Engineering and while Loops: Understanding Bridge Resonance
      • ๐Ÿ’ป Activity: Taking Integrals with Loops
    • โ“ Practice Quiz: Control Structures for Renewable Energy Applications
    • ๐Ÿงช ๐ŸŽฎLAB 4 : BATTLESHIP๐ŸŽฎ
    • ๐Ÿ—“๏ธ๐Ÿ“š Week 4: Attendance โœ…
    • ๐Ÿ ๐Ÿง™โ€โ™‚๏ธ๐Ÿ“œ Casting Spells and Conditional Loops: Homework That Taps Your Mana!
  • Week 5๏ธโƒฃ
    • ๐Ÿ“– Readings
      • ๐Ÿ› ๏ธ Function Junction, Whatโ€™s Your Function? ๐Ÿš‚๐Ÿ’ป
      • โ„๏ธ Let it Flow, Let it Flow! ๐Ÿšฆ
      • โ“ Functions and Flow Control in the Mall
      • ๐ŸŽฒ What Happens in the Function, Stays in the Function โ€“ Vegas Rules of Scope ๐Ÿƒ
      • โ“ Shrinkflation Function Scope
      • ๐Ÿ–– Arguments and Parameters: The Spock & Captain Kirk Duo
      • ๐Ÿค– Return Statements: โ€œIโ€™ll Be Backโ€โ€”Just Like the Terminator, but with Data!
      • โ“ Norman Doors - How, โ€œNotโ€ to Design Arguments, Parameters, and Return Statements
      • ๐Ÿ› ๏ธ Args and Kwargs: The Art of Flexible Functions
      • โ“ *args and **kwargs in Brawl Stars
    • ๐Ÿ‘ฉโ€๐Ÿซ Lecture
      • ๐Ÿ“ ๐Ÿ—๏ธ Engineering Applications of Python Functions
      • ๐Ÿ“ ๐ŸŒŠ Flow Control in Functions & Nested Function Calls
      • ๐Ÿ“ ๐Ÿ“ก Returning Information from Functions: Best Practices in Engineering
      • ๐Ÿ’ป Activity: Toynbee Tiles: Error Handling, Function Definitions, and Returns
      • ๐Ÿ“ ๐Ÿš€ Function Scope & Variable Assignment: Lessons from the Mars Climate Orbiter
      • ๐Ÿ“ ๐ŸŒ Internet and Networking Overview
      • ๐Ÿ“ ๐ŸŽฎ Mastering *args and **kwargs: Flexible Functions in Game Development
      • ๐Ÿ“ โš™๏ธ Lambda Functions in Engineering: The Power of One-Liners
      • ๐Ÿ’ป Activity Rube Goldberg Machine: Modular Functions with *args and **kwargs
    • โ“ Practice Quiz: Kanye Says the Darndest Things! ๐Ÿค”
  • Week 6๏ธโƒฃ
    • ๐Ÿ  ๐Ÿš€ Homework: Build Your Own Star Wars Title Scene! ๐ŸŒŒ
    • ๐Ÿ•น๏ธ Pac-Man Python Challenge: Master Code Modularity & Functions! ๐Ÿ’๐Ÿ‘ป
    • ๐Ÿ—“๏ธ๐Ÿ“š Week 6: Attendance โœ…
  • Week 7๏ธโƒฃ
    • ๐Ÿ“– Readings
      • ๐Ÿš€ Object-Oriented Programming (OOP) in Python: The Silicon Valley Edition ๐Ÿ’ป
      • ๐ŸŽ๏ธObject-Oriented Programming & Sports Cars ๐ŸŽ๏ธ
      • ๐Ÿ“ Classes and Instances in Headis
      • โ˜• Mastering Object-Oriented Programming with Kopelauac Coffee
      • โœ๏ธ Implementing Change Methods in Classes: The Evolution of Helvetica
      • ๐ŸŽฉ Mastering Magic Methods & Operator Overloading in Python
      • ๐Ÿฆ€ Magic Methods and the โ€œBlue Bloodโ€ of Horseshoe Crabs
      • ๐Ÿš€ Advanced Python Classes: Unlocking Their Power
      • ๐ŸฅŠ Python Inheritance & Methods: PowerSlap Edition
      • ๐Ÿˆ Inheritance in Python: Building NFL Madden Player Classes
      • ๐Ÿฑ Polymorphism in Python: Cat Breeds Edition
      • ๐Ÿ”ฅ Polymorphism in Python: Pokรฉmon Battle System
      • ๐Ÿฆž Abstraction in Python: Daliโ€™s Lobster Telephone Edition
      • ๐Ÿš— Abstraction in Python: The Single Bit Flip That Killed Toyotaโ€™s Accelerator
      • ๐Ÿถ Multiple Inheritance in Python: Mixed Dog Breeds
      • โŒš Multiple Inheritance in Python: The Rolex GMT Master
    • ๐Ÿ‘ฉโ€๐Ÿซ Lecture
      • ๐Ÿ“ ๐Ÿš€ Object-Oriented Programming (OOP) in Python
      • ๐Ÿ“ Introduction to Classes and Instances in Python ๐Ÿš€๐Ÿ“š
      • ๐Ÿ“ Change Methods in Python ๐Ÿš€
      • ๐Ÿ“โœจ Magic Methods in Python โœจ
      • ๐Ÿ’ป Engineering Material Simulation ๐Ÿš€๐Ÿ”ง
      • ๐Ÿ“ Inheritance in Python ๐Ÿš—๐Ÿ“š๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ
      • ๐Ÿ“ Polymorphism in Python ๐Ÿ
      • โœจ ๐Ÿš€ Composable Software Deployments on Kubernetesโœจ
      • ๐Ÿ“ Decorators and Abstraction in Python Classes ๐ŸŽจ๐Ÿ“š
      • ๐Ÿ“ Multiple Inheritance in Python ๐Ÿโœจ
      • ๐Ÿ’ป๐Ÿฆ‡ What We Code in the Shadows ๐Ÿ’€๐Ÿ’ป
      • ๐Ÿ—“๏ธ๐Ÿ“š Week 7: Lecture Attendance โœ…
    • ๐Ÿงช๐Ÿ  Welcome to Azeroth! ๐ŸŒโš”๏ธโœจ
    • โ“A Manufacturing System using Object-Oriented Programming
    • ๐Ÿ—“๏ธ๐Ÿ“š Week 7: Attendance โœ…
  • Week 8๏ธโƒฃ
    • ๐Ÿ“– Readings
      • ๐Ÿ“– Principles of Effective Data Visualization
      • โ“ Graphical Excellence Questions
      • ๐Ÿ“– ๐Ÿผ Pandas DataFrames: The Swiss Army Knife of Data!
      • ๐Ÿ“– ๐Ÿ“Š Data Visualization with Seaborn: The Engineerโ€™s Guide ๐Ÿš€โš™๏ธ
      • โ“ Seaborn Graphing Made Simple
      • ๐Ÿ“– ๐Ÿฆธ Superhero Analytics: The Data Tools Your Boss Doesnโ€™t Know About! ๐Ÿคซ๐Ÿ’ป
      • โ“ Welcome to the wild world of Zillow Gone Wild! ๐Ÿกโœจ
    • ๐Ÿ‘ฉโ€๐Ÿซ Lecture
      • ๐Ÿ“ Introduction to Data Visualization ๐Ÿ“ˆ
      • ๐Ÿ’ป Activity: Refining a Simple Plot
      • ๐Ÿ“ Choices for Figures ๐ŸŽจ
      • ๐Ÿ“ Monte Carlo in a Circle โ—ฏ
      • ๐Ÿ“Monte Carlo Math โ‰…
      • ๐Ÿ’ปActivity: Curve Fitting ๐Ÿ“Š
      • ๐Ÿ“Importance of Data Analysis and Visualization โ—
      • ๐Ÿ“Deceptive data presentation ๐Ÿ›ซ ๐Ÿ›ฌ
      • ๐Ÿ—“๏ธ๐Ÿ“š Week 8: Attendance โœ…
      • ๐Ÿ“Cool Visualizations ๐Ÿ ๐ŸŠ ๐Ÿ ๐Ÿข ๐Ÿฌ
    • ๐Ÿ—๏ธ Mission: Bridge Safety Analysis โ€“ The Engineerโ€™s Challenge! ๐ŸŒ‰
    • ๐Ÿ—“๏ธ๐Ÿ“š Week 8: Attendance โœ…
    • ๐Ÿ  Homework Week 8: Combining Concepts to Build Interoperable Code for Plotting ๐Ÿ“Š๐Ÿ”ง
    • โ“Quiz: Implicit Equation Plotting
  • Week 9๏ธโƒฃ
    • ๐Ÿ“– Readings
      • ๐Ÿš€ Getting Started with scikit-image ๐ŸŒŸ
      • ๐Ÿš€ A Crash Course on NumPy for Images
      • ๐Ÿงฉ Image Segmentation: Dividing the World into Pixels of Interest
      • โ“๐Ÿงฉ Survive in the World into Pixels of Interest
      • ๐Ÿค– Welcome to the World of Machine Learning with Scikit-learn! ๐ŸŽ‰
      • ๐ŸŽ“ Supervised Learning with Scikit-learn: Teaching Machines Like an Engineer ๐Ÿš€
      • ๐ŸŽฏ Overfitting and Underfitting in Machine Learning: The Balancing Act โš–๏ธ
      • ๐Ÿ” Unsupervised Learning with Scikit-learn: Discovering Hidden Patterns ๐ŸŽฒ
      • โ“ Machine Learning with scikit-learn
    • ๐Ÿ‘ฉโ€๐Ÿซ Lecture
      • ๐Ÿ“ ๐ŸŽจ Image Analysis in Python
      • ๐Ÿ“ Image Filtering
      • ๐Ÿ“ Analyzing Diatoms with scikit-image: A Classical Engineering Spin
      • Clash Royal Object Detection
      • ๐Ÿ“ ๐Ÿค– Introduction to Machine Learning: An Engineering Perspective
    • โ“Machine Learning Fashion-MNIST ๐Ÿ‘—๐Ÿ‘–๐Ÿ‘•
    • ๐Ÿ—“๏ธ๐Ÿ“š Week 9: Attendance โœ…
    • Angry Birds Come Back!
  • Week ๐Ÿ”Ÿ
    • ๐Ÿ‘ฉโ€๐Ÿซ Lecture
      • Recommended Installation (Anaconda)
      • National Research Platform (NRP) - JupyterHub
      • ๐Ÿ“ Visual Introduction to ML
      • ๐Ÿ“ Overfitting
      • ๐Ÿ“ Supervised Learning with Support Vector Machines (SVMs)
      • ๐Ÿ“ ๐Ÿ” Unsupervised Learning: K-Means Clustering in Engineering
      • ๐Ÿ“ Dimensionality Reduction Using PCA: The Eigenfaces Example
      • ๐Ÿ“ Pytorch Quickstart, a deep learning framework for Python ๐Ÿค–
      • ๐Ÿ“ What is a neural network
      • ๐Ÿ“ Training a Classifier ๐Ÿค–๐Ÿ“š
      • ๐Ÿ“ ๐ŸŒ NLP From Scratch: Translation with a Sequence to Sequence Network and Attention ๐ŸŒ
      • ๐Ÿ—“๏ธ๐Ÿ“š Week 10: Attendance โœ…
    • ๐Ÿ—“๏ธ๐Ÿ“š Week 10: Attendance โœ…
  • Practice Midterm
    • โ“ ENGR131: Introduction to Programming for Engineers
  • โ“ ENGR131: Practice Final: Introduction to Programming for Engineers
  • Viewing Your Grades ๐Ÿš€
  • ๐Ÿš€ LockDown Browser Requirement ๐Ÿ–ฅ๏ธ
  • ๐Ÿˆ Super Bowl Squares ๐Ÿˆ
  • Repository
  • Open issue
  • .md

Lecture

Lecture#

  1. ๐Ÿ“ ๐ŸŽ‰ Welcome to String Wonderland!

  2. ๐Ÿ“ ๐Ÿ”‹ Data Types

  3. ๐Ÿ“ ๐Ÿ–‹๏ธ Python Commenting and Docstrings

  4. โ“ ๐Ÿฆด Hytrl Skull Collection Problem

  5. โญ ๐Ÿ•น๏ธ Evolution of Computing Through Video Game History

  6. ๐Ÿ“ ๐Ÿ”ฌ Python Lists

  7. ๐Ÿ“ ๐Ÿ—๏ธ Python Dictionaries

  8. ๐Ÿ“ ๐Ÿ”ฌ Precision in Python: Integers and Floating-Point Numbers

  9. โ“ ๐Ÿฉบ Chevalier Jackson Collection Problem

previous

๐Ÿ“– ๐ŸŽถ Understanding Quantization with the THX Deep Note ๐ŸŽถ

next

๐Ÿ“ ๐ŸŽ‰ Welcome to String Wonderland!

By Joshua C. Agar and Theo S. Beers

ยฉ Copyright 2025.