assignments
1. a web page
due Thu Jan 30
- Create a website that summarizes your internet related experience and background. Think of this as a mini resume or job portfolio, what you want others in this group to know about what you can contribute to a project, what you're interested in, and what you have done before. Include a description of the tools and methods you used, including links to their documentation - enough so that someone else could follow in your footsteps. Be ready to discuss your choices in class.
- Use technologies that showcase what you know.
- You can use any hosting service you wish :
- this assignment course page (as a bare minimum)
- a blog post
- a hosted web service (e.g. nearlyfreespeech)
- a public wiki
- a github or gitlabs or similar page
- ... whatever you like.
- And you can use any technology you want :
- html, images, css, dynamically generated content, ...
- If you have time, willing to spend a bit of money, and the inclination, register a new domain name, and host this somewhere new to you.
- Questions? Ask.
2. html & css
due Thu Feb 6
- Using only HTML and CSS, create a set of web pages.
- You may work in a group of two people if you like.
- Use oswd.org and csszengarden for ideas.
- Include at least one .css file (a common theme for the site)
- Include at least three .html files
- Include some images.
- Put in a navigation menu that makes it clear where you are.
- Deploy with a folder that you create within our class playground
3. javascript
due Thu Feb 13
- Read up on the javascript language using the sources on the resources page.
- Come to class Tuesday ready to share something about
- Create a website made of (home.html, styles.css, code.js, optional images) that uses javascript to do something interactive, for example change something on the page when something is clicked. Use just the base javascript and DOM, without extra effect libraries. A calculator, a simple game - whatever complexity seems appropriate given your level of experience. You can work on this with someone else in the class if you like; if so, be explicit about who did what.
4. PHP
due Tue Feb 25
- Write some PHP scripts on shannon.
- Start by reading some of its docs and coding some of their examples.
- Then make your own PHP site which :
- On the first visit, asks for your name and favorite color.
- On subsequent visits, tells you your name and favorite color.
- Saves the information in text file.
- Be ready to discuss these concepts : state, cookies, and GET vs POST.
5. flask mini project
due Fri Mar 13
- Create a small web app using Flask & SQLite, - either the book reader I described in class, a simple blog engine, or something of your choice.
- Include a user login and session management.
- Work either by yourself or with another student.
- Discuss briefly what information is stored where and how the tech pieces fit together.
- Be ready to present your work and explain what you did.
6. ⮕ spring break checkin ⬅
due Mon Mar 30
- As we gear up to do this online, please drop me a note here to let me know you're doing.
- What timezone are you in?
- How is your access to the internet?
- Do you have questions or concerns?
7. weekly checkin number 1
due Tue Apr 7
- Tell me what you did this week.
- Get a github ID and tell me what it is.
- I'll send out a slack invite; get it running and try it out.
- Read (at least) chapter 1 of "stealing the network" ... thoughts?
- Read about cookies, privacy, 3rd party trackers and all that with the links in my March 12 notes. Can you find some specific examples in your own browser cookies?
8. weekly checkin number 2
due Tue Apr 14
- Tell me what you did this week.
- Commit something to the github recipe site.
- Do something on our slack workspace.
- Read through at least chapter 3 in the book.
9. playing with pentesting
due Tue Apr 21
- For Tues, read chap 5 : the thief no one saw
- Pick at least one of the pentesting practice sites, exercises, and tutorials from our redteamblueteam discussions on slack. Be ready Tues to share what you did.
- In your leviathan/kraken groups, continue to discuss setting up a machine with a known vulnerability for the other group to attack. Again, checkout my notes in the readteamblueteam slack channel for ideas.
10. hackthatsite
due Tue Apr 28
- For Thu Apr 23, read chap 6: "Flying the Friendly Skies", and come to our (online) class ready to discuss.
- For Tue Apr 28, read chap 7, "dis-card", and again be ready to discuss.
- Explore some of the challenges at hackthissite.org. Be ready on Tues to show your efforts at and lead a conversation about at least two - your choice which.
- Contribute to some of the course slack channels.
- Post here about how your week went, and what you've been doing.
11. last weekly assignment
due Tue May 5
- For Thu April 30, read chap 8, "social (in)security", and be ready to discuss.
- For Tue May 5, read chap 9, "BabelNet". Ditto.
- Continue to explore any of the techniques mentioned, on hackthatsite or other places, report on your progress, and share in class.
- Tell me here what you did this week.
12. term wrapup
due Fri May 8
- Summarize what you've learned in the last half of the semester from your readings and trying things out.
- Do you think you'll continue to explore these topics?
13. semester grade
due Mon May 11
- a place for Jim's last round of comments about the entire semester
14. your feedback
due Wed May 13
- Please give me any feedback you have about how the class went - what you liked and didn't like.
- What would have improved it?
- What worked for you?
- How did the last month online work? What would have helped it go better?