Hello, all! Assignment 6 is live, and is found here.
In assignment 6, we will be using object-oriented programming to design and implement a banking application. Assignment 6 is due by 11:59pm CST on Friday, 12/8.
Please use Piazza, Anna's office hours, my office hours, via email or Piazza, to help with any questions that you might have. Thanks very much, and good luck!
Hello, all! Assignment 5 is live, and is found here.
In assignment 5, we find our second "writing"-type assignment, which is focused on writing a proposal for a new project (based off of your final projects!). Assignment 5, or Writing Assignment 2, is due by 11:59pm CST on Tuesday, 12/5.
Please use Piazza, Anna's office hours, my office hours, via email or Piazza, to help with any questions that you might have. Thanks very much, and good luck!
Hi, everyone! Assignment 3 Grades will be coming to you shortly. Great job on your 1st written work analyzing an actual website for accessibility!
Hi, all! Here is the complete Grocery Store App demo from Lectures 22-24. To run the application, follow the instructions in the email regarding the app. Grocery Store App demo.
Howdy, everyone! Following our lectures on scalability, this document discusses different "design patterns" which are useful to understand, especially when writing scalable applications: Scalabililty resources.
Hi, everyone! Assignment 2 Grades will be coming to you shortly. Check your email for your grade and for feedback on your code! Overall, I'm very pleased with how everyone did implementing the Course Planner!
Hello, all! Assignment 4 is live, and is found here.
In assignment 4, we will use Flask and Python to help a professional sports team with a small web-based application. Assignment 4 is due by 11:59pm CST on Saturday, 11/12.
Please use Piazza, Anna's office hours, my office hours, via email or Piazza, to help with any questions that you might have. Thanks very much, and good luck!
Hi, everyone! Course projects have been chosen and teams have been assigned! As of now, you will have been contacted via email with your group. We were able to assign everyone a project from either their 1st or 2nd choices (of those who voted).
More to come on Tuesday about project expectations and team dynamics. Stay tuned!
Hi, everyone! Assignment 1 Grades will be coming to you shortly. Check your email for your grade and for some style feedback on your code! Overall, I'm very pleased to say that everyone did a really great job!
Hello, all! Assignment 3 is live, and is found here.
In assignment 3, we find our first "writing"-type assignment (distinct from "coding"-type assignments), which is focused on accessibility in web design. Assignment 3, or Writing Assignment 1, is due by 11:59pm CST on Saturday, 11/4.
Please use Piazza, Anna's office hours, my office hours, via email or Piazza, to help with any questions that you might have. Thanks very much, and good luck!
Howdy, everyone! Here are some resources, compiled by Mark Liffiton, to support you as you continue to learn SQL: SQL resources.
Hello, all! Assignment 2 is live, and is found here.
In assignment 2, we will be applying what we have seen with HTML, CSS, and Javascript to make our first web-based application, the Illinois Wesleyan Course Planner. The Course Planner is due by 11:59pm CST on Friday, 10/6.
Please use Piazza, Anna's office hours, my office hours (check the Google form to vote!), via email or Piazza, to help with any questions that you might have. Thanks very much, and good luck!
Howdy, everyone! Here are some resources, compiled by Mark Liffiton, to support you as you continue to learn Javascript: Javascript DOM resources.
Howdy, everyone! Here are some resources, compiled by Mark Liffiton, to support you as you continue to learn HTML/CSS: HTML/CSS resources.
Howdy, everyone! Here are some resources, compiled by Mark Liffiton, to support you as you continue to learn Git: Git resources.
Hello, all! Assignment 1 is live, and can be found here.
Assignment 1 consists of some Python and Javascript coding exercises and is due by 9:25am CST (i.e., start-of-class) on Tuesday, 9/19.
Please use Piazza, Anna's office hours, and myself, via email or Piazza, to help with any questions that you might have. Thanks very much, and good luck!
Hello, everyone! Happy Labor Day Weekend. I wanted to share that we have a wonderful TA joining our class, Anna Sheaffer! If you need to reach Anna, you can do so via her email: asheaffe@iwu.edu.
Anna's office hours will be Mondays from 10am-noon CST, and Wednesdays 7-9pm CST.
Additionally, please use this link to add yourself to our class instance of Piazza.
Finally, one our our colleagues, Elijah Kolawole, has created this very helpful 5-minute video to share how best to install pip and Jupyter notebook for Windows computers. Thanks, Elijah!! As a note: if you would prefer to work on problems outside of Jupyter notebook, that is OK, as well. This brief tutorial is helpful for those who are interested in using the notebooks: Install Jupyter Notebook on Windows.
Thanks very much, and see ya on Tuesday!
Hi, all! Thanks for a great day today! Mark Liffiton of the CS Department has assembled this list of resources to help you get up to speed with Python. Understanding Python will be very important and useful later on, as Python will be our language-of-choice for the backend of our applications, and we will soon see how this is a very critical layer of any web-based application.
The official documentation on unit testing in Python can be found here.
Additionally, I have found this to be a great resource from Nick Parlante, who teaches an introductory class in Python at Stanford University: Python Guide.
I don't want any of you to feel overwhelmed by these resources; I'm providing you more than you need, hopefully, just so that you have them and can rely on them. You don't need to read all of this stuff, although if you felt a little unsure based on the exercises today in class, I'd recommend giving it a look! 😊
See ya next time!
Welcome to CS253, Software Development! This writing-intensive course builds on fundamental coding skills and introduces several aspects of the software development lifecycle, culminating in a final project which combines all of these into a concrete, web-based application. Students are exposed to the layers of the full software development stack, from front-end to backend and everything in between.
If you need anything, please email me at dgeorge@iwu.edu.
See ya soon!
Please note that all lectures and assignment deadlines are subject to change.
Our CS253 website imitates that used by Stanford University's CS110, Autumn 2021.
Course Staff
Office Hours
Lectures/Labs
Moodle
Piazza
26: Architecture Design Patterns, Security I
slides Video Recording
25: User Interface Design, CSS Bootstrap
slides Video Recording
24: Grocery Store App III
Video Recording
23: Grocery Store App II
Video Recording
22: Grocery Store App I
Video Recording
21: Scalability III
slides Video Recording
20: Software Team Building (live lecture)
19: Scalability II
slides Video Recording
18: Scalability I
slides lab17 handout Video Recording
17: Git, Revisited: In-class Demo
Video Recording
16: Course Project Requirements & Teams
slides project handout Video Recording
15: (no lecture; office hours)
14: Object-Oriented Programming
slides Video Recording
OOP Exercises
13: The Software Development Process
slides Video Recording
12: SQL and Data II
slides lab11 handout Video Recording
SQL exercises II
11: SQL and Data I
slides lab10 handout Video Recording
SQL exercises I
10: Python and Flask II
slides lab9 handout Video Recording
09: Our First Server; Python and Flask I
slides lab8 handout Video Recording
Flask server demo
08: Javascript III, Intro to Networking
slides lab7 handout Video Recording
07: HTML, CSS
slides lab6 handout Video Recording
06: Git II
slides lab5 handout
Git conflicts demo Video Recording
05: Git I, Intro to Git
slides lab4 handout Video Recording
04: Javascript II
slides lab3 handout Video Recording
Javascript DOM demo
03: Javascript I, Intro to Javascript
slides lab2 handout Video Recording
02: Python Review, Intro to Testing
slides unit test demo lab1 handout
lab1 answers unit test demo (.ipynb)
lab1 handout (.ipynb)
01: What is Software Development?
slides course info
Python
Python Guide
previous CS253 Python Help
Unit testing
Javascript
Javascript Guide
DOM Guide
SQL
SQL Guide
Git
Git Guide
Using Git in a Team
Gitflow
Scalabililty
Software Architecture Patterns
Writing
Technical Report Guidelines & Suggestions
HATS Procedure for Business Documents
Reports, Proposals, and Technical Papers
How To Write a Good Technical Report