assignments
due Fri Jan 20
FizzBuzz
- Without looking online or asking others for help, write a program to implement "FizzBuzz" :
Write a program that prints the numbers from 1 to 100.
But for multiples of three print 'Fizz' instead of the number
and for the multiples of five print 'Buzz'. For numbers
which are multiples of both three and five print 'FizzBuzz'.
- What did you use to do that? Include editor, language, compiler, and OS.
- If possible, do it again with a different editor, language, compiler, and OS.
due Tue Jan 24
background
- Describe your programming background, what you'd like to get out of this course, and any particular programming areas or projects you're interested in.
- Come to class ready to show and explain a program that you've written in the past.
- Do some reading on revision control systems and git in particular.
- Install git and set up an account at github . (Several of us, including Sam, Alex, and Isaac can likely help if you have trouble with public/private keys or what-not.)
- Let me know when you have a git username, and I'll add you to the FizzBuzz repo we discussed in class, and if you can, add some of your code to that repository.
- Pick a programming project to work on for the next couple of weeks.
due Tue Jan 31
git ; project 1 progress
Git:
- clone the github fizzbuzz repo to your machine; add your code; merge.
- pair up with someone else ; pick a language neither of you knows, and add another FizzBuzz to the repo. *Both* of you should edit it, through git. Get help as needed.
Programming project 1:
- Report on progress in starting your 1st programming project for this term. Be specific about what you'd like to create by Tue Feb 7.
due Tue Feb 7
project 1
- Submit your first project, including
- code
- README
- tests
- sample input/output
- If this is a part of a larger work and/or work in a term, in addition to pointing at the larger code base, choose some discrete chunk to discuss and illustrate.
due Tue Feb 14
ants 1
- Start exploring the google ai ants software at ants.aichallenge.org
- Describe what you did:
- Run an ant simulator?
- Written an ant bot? If so, which language?
- What else did you investigate in their software system?
- Come to class ready to discuss.
due Tue Feb 21
ants 2
- Continue working or your ants. Choices include
- test/develop your own bot
- play with server side "worker" and php scripts on marlboroants.info
- investigate/code/test related priority queue & A* algorithms
- Again, describe what you did, and make your work available somewhere.
due Tue Feb 28
ant tourney 1
- Submit an ant bot for our first tournament, as discussed in class last week.
- I will put them (or you can) in this ant bots folder, in the same format as the AI challenge starter packages.
- Briefly discuss your bot's strategy and implementation.
- We will have round 2 and a longer write-up due the following week, finishing the ant stuff by spring break.
due Tue Mar 6
ant tourney 2
- Submit your final ant bot for our chocolate-worthy final tournament.
- Again, they will run from the ant bots folder, as last time.
- Please do submit a last ant-bot writeup with your thoughts on this project.
- For Fri (last day before break), bring some other programming tidbit you'd like to discuss.
due Tue Apr 3
final project proposal
- Describe what you will code over the next month for your final project. Be as specific as you can.
- Upcoming deadlines (plan accordingly):
- version 0 : including some tests & docs - due Apr 17
- class presentations : Fri April 27
- final version turned in : Fri May 4
due Tue Apr 10
project progress report 1
- Discuss your project status.
- Submit (or point me towards) at least one file of code in progress.
due Tue Apr 17
project rough draft
- Submit a first rough draft of your project.
- details coming.
due Tue May 1
present final project in class
due Fri May 4
submit final project
- ... as proposed above.
- please *do* include all of : write-up, code, docs, tests.
term grade
- a place for Jim to record the course grade