Resources for the TIY-Durham Python course.
Clinton Dreisbach
Class is from January 12 to April 3, 2015.
Lecture is from 9 AM to 12:30 PM Monday-Thursday, with breaks during that time. Depending on the topic, we may end early.
Lab is from 1 PM to 5 PM Monday-Thursday and 9 AM - 5 PM on Friday.
A teacher or TA will be available Monday-Friday from 9 AM to 5 PM at minimum. During lab time, you can schedule one-on-one time with either of us. After hours, we may be available in the classroom or in HipChat, which we use for group communication.
We will take off January 19th for Martin Luther King Day.
These topics are listed week-by-week. However, this list is not definitive and we will reorder things based off how the class is going.
Each list of topics is a list of things students should be comfortable with at the end of that week.
By the end of this week, students should be comfortable with:
This week is a week for review and catch-up. Things will fall through the cracks during the previous 8 weeks, and so we have this week as a flex week to make sure we cover everything you need.
During this week, you will be pitching your final project ideas, forming groups, and getting feedback. In class, we will cover some software development principles. You should be comfortable with:
You will be working on your final project and presentation during this time.
During the last three weeks of the course, you will be working on your capstone project, putting all you’ve learned into practice. You will be working by yourself, or with a group of 2-4 people on your project. These people can be in any Iron Yard class in Durham.
During week 10, you’ll present your idea for a final project and get feedback, helping you scope the project. During weeks 11 and 12, you’ll work primarily on this project. We will have lecture time, but it will be tailored to what you need to know for your project and may be optional. We will let you know what days lecture is optional.
This project must use Python. It can be a data project, a web project, a systems programming project, or something else! Because this is a general- purpose programming course, the choices are wide. If you are not working on a project with a strong visual component, I highly suggest thinking about working with someone from another class to make your project visual.
All students must bring their own MacBook laptop. Your MacBook should have a minimum of 4 GB of RAM and 128 GB of hard drive space. Those are minimum specs, and I recommend getting 8 GB of RAM and a 256 GB hard drive, but that’s your choice to make. Any of the current MacBook Air models or MacBook Pro models will work. I have a 13-inch MacBook Pro and really dig it.
Your MacBook must be running OS X Mavericks or Yosemite. Both are free upgrades from the App Store.
There is no commercial software required for the class.
You can miss up to 4 lectures; after that, your enrollment in the job placement program is forfeit. I don’t recommend missing any, as we will be moving very fast.
Your homework is due by 6 AM on the day it is due. After that, it is late.
I would rather see a solid attempt on time than a complete assignment late. Solid attempts are not considered late.
You are expected to do your own work. You should use all resources available to you, including open-source code, but copy and pasting open-source code is prohibited: you should use it only for inspiration or as a library in a bigger project.
Copying homework is taken very seriously and can result in forfeiting job placement or explusion.
Like the technical community as a whole, classes at The Iron Yard are made up of a mixture of people from all different backgrounds.
Diversity is one of our huge strengths, but it can also lead to communication issues. To that end, we have a few ground rules that we ask people to adhere to when they’re taking a class at The Iron Yard. These rules apply equally to teachers, students, other staff, and guest lecturers.
This isn’t an exhaustive list of things that you can’t do. Rather, take it in the spirit in which it’s intended - a guide to make it easier to enrich all of us, the technical communities in which we participate.
This code of conduct applies to all communication: this includes in class, HipChat, email, and other forums such as Skype, Google+ Hangouts, etc.
If you believe someone is violating the code of conduct, we ask that you report it by talking to your teacher. If you do not feel comfortable talking to your teacher, speak with any Iron Yard teacher or campus director.
Be welcoming, friendly, and patient.
Be considerate. Your work will be used by other people, and you in turn will depend on the work of others. Any decision you take will affect your colleagues, and you should take those consequences into account when making decisions.
Be respectful. Not all of us will agree all the time, but disagreement is no excuse for poor behavior and poor manners. We might all experience some frustration now and then, but we cannot allow that frustration to turn into a personal attack. It’s important to remember that a community where people feel uncomfortable or threatened is not a productive one. Members of the Iron Yard community should be respectful when dealing with other members as well as with people outside the Iron Yard community.
Be careful in the words that you choose. Be kind to others. Do not insult or put down other people. Behave professionally. Remember that harassment and sexist, racist, or exclusionary behavior are not appropriate for this class. This includes, but is not limited to:
Repeated harassment of others. In general, if someone asks you to stop, then stop.
When we disagree, we try to understand why. Disagreements, both social and technical, happen all the time and The Iron Yard is no exception. It is important that we resolve disagreements and differing views constructively. Remember that we’re different. The strength of The Iron Yard comes from its varied members, people from a wide range of backgrounds. Different people have different perspectives on issues. Being unable to understand why someone holds a viewpoint doesn’t mean that they’re wrong. Don’t forget that it is human to err and blaming each other doesn’t get us anywhere, rather offer to help resolving issues and to help learn from mistakes.
This text is taken from the Django project.