This week we will begin to think about final projects. You are to have your final project pre-proposal written up and printed out (or handwritten) for class on Tuesday, April 5. We will be commenting on each other’s ideas, so make sure your proposal is legible.
I’m posting the recent CS50 Fair video, which is where student at Harvard show off their final projects, to help you come up with ideas. Keep in mind at Harvard they have a huge staff to help teach and advise students on technologies they need to use, so many of these may be more advanced than projects we can here this year.
The video is also extremely long, so I’ve posted it, not for you to watch the entire thing, but to watch snippets if you are stuck wondering what to do, or what is possible.
We had a great call with Kasey Champion of Microsoft on Monday. She answered a wide variety of questions on everything from what day to day life of a software engineer looks like, what type of classes to take in college to get a job at a company like Microsoft, Google, or Facebook, and how much money she made in her first year at Microsoft. If you want to follow up with her directly, you can email her at Kaseyc@exchange.microsoft.com.
By now you should have turned in Writing Problem 4-3 by emailing or sharing with me at email@example.com. If you have not submitted, please do so asap.
Problem 4-0: Web Page was due last Friday, March 25, and Problem 4-1: Search Engine is due (or at least should be started) by the end of this week (April 1).
Ok enough about due dates!
And don’t forget to be thinking about your final projects! You may work individually or in a team. I will allow up to three people per team. Pre-proposals are due by start of class next Tuesday, April 5th. This is a one or two paragraph write up about what you think you want to create, and who you want to work with. If you are working in a team, be sure to include all team members names as well. Have the pre-proposal written up or printed out and with you for Tuesday’s class. I will be grading these for completion. Each team member should have a writeup.
Great job on the web pages (problem 4-0) I’ve viewed so far! I love your creativity!
The next writing assignment, Writing Problem 4-3, is coming due next week. Deadline has been moved up to Monday, March 28. This essay involves various social issues related to the internet. You may choose from one of five topics. For extra credit, you may choose more than one topic. A grading rubric is now included in the problem description here.
We should all be working on learning and practicing using HTML/CSS, either using codecademy or the CS50 videos. Problem 4-0 should be created and tested using c9 and added to a new unit4 folder in your dropbox. If you are using images you have downloaded, or an external CSS stylesheet, please be sure to add these to your dropbox as well.
The styling programs we developed in class can be viewed here. Click on the link using chrome, then you can use developer tools to view the source. Be sure to view the css code as well.
For students having problems getting their preview to work, and/or apache50 to start, we have a fix!
Step1: Copy and paste the following line into your terminal window (do not click)
echo "deb http://mirror.cs50.net/ide50/2015/dists/trusty/main/binary-amd64/ /" | sudo tee /etc/apt/sources.list.d/cs50.list >/dev/null
Step2: Run update50
This should update your workspace back to version 53.
If you finish Problem 4-0, please move ahead and learn more about CSS styling if you are using codecademy, or watch the CS50 CSS videos. Syntax for CSS can be found at http://www.w3schools.com/css/.
Then move on to Problem 4-1, where you will create a nicely styled front end for your search engine. The process to send the get request for your search is demonstrated in David Malan’s search videos here.
Flushing Library Internship
We are now officially finished with C, but not with CS50! As we move into learning more about the internet and programming for the web, you should be either working on the less comfortable track (codeacademy.com), or the more comfortable track (CS50 videos).
The first program you will submit for either of these tracks is Problem 4.0: Create Your Own Web Page. This should be done in cloud9 in your ide50 workspace. Please submit your html file, and any other files referenced by your html (css, jpg, png, etc.) into a new unit 4 folder in dropbox.
Whether you are using the less or more comfortable tracks, you are welcome to use code academy and watch the CS50 videos. The biggest difference is that the more comfortable track will move on to learn PHP in order to implement CS50 Finance.
Unit 3 Quiz
Monday, March 7th, we will have quiz-3, which will be assess your understanding of concepts learned in unit 3. Topics will include:
- Bubble sort, selection sort, and insertion sort: you must understand how all three work and be able to demonstrate by sorting the first few elements in an array according to each algorithm.
- Understanding how a function works, how parameters are passed into a function and how it may return a number, a boolean, a string, or nothing at all.
- Being able to translate one of the sorting algorithms from pseudocode into c code.
- What does a “seed” do to a random number generator like drand48.
Links to review for Unit 3 Quiz
Slides with sample questions: Unit3 Review Slides
Explanations/Answers to sample questions:
Unit 3 Review Slides Explanations (pdf) / Slides Explanations (MSWord)
Here is an additional video that explains what it means for an algorithm to be in O(n2).
This week we will transition into web programming, getting into an area we are all more familiar with. Interacting in a web browser rather than a command line text prompt.
If you have not yet completed the two required programs from Unit 3, RNG and Sort Race, you can continue to work on these during the beginning of this week. However you should be moving onto HTML by Wednesday or Thursday at the latest.
You can learn more about the two tracks for learning HTML/CSS here.
This week we will be working on Problem 3-4 Sort Race. This will be the last program in C you will be required to complete. If you are working on the Hacker Edition of CS50, please keep moving ahead to work on 3-6 Seek. Anybody who has completed Fifteen parts 1 or 2 will receive extra credit.
Problem 3-4: Sort Race
A great time was had by all! Students saw a live walkthrough by Zamayla, debugged a program with David Malan, worked hard, collaborated, ate lots of pizza and had fun!