commit 0baff24f1d8a326f51dd2c7df98a30a3ef3b4144 Author: hmanso02 Date: Sun Aug 27 17:54:16 2017 -0400 added fp diff --git a/README.md b/README.md new file mode 100644 index 0000000..7767d34 --- /dev/null +++ b/README.md @@ -0,0 +1,64 @@ +# cs4241-16b-FinalProject + +For your final project, you'll implement a course project that exhibits your mastery of the course materials. +This project gives you an opportunity to be creative and to pursue individual research and learning. + +## General description + +Your project should consist of a complete Web application. +The site must exhibit facets of the three main sections of the course material: + +- Static Web page content and design. You should have a project that is well-designed, easily navigable, and exhibits good human-computer interaction. +- Dynamic behavior implemented with JavaScript and possibly other JavaScript librarires. +- Server-side programming. Typically this will take the form of some sort of persistent data and possibly server-side computation. + +Additionally, you should incorporate features that you independently research to add to your project. + +## Example Projects + +The following list describes a few examples of what I would consider to be good projects. Excellent projects serve someone: define your users and stakeholders. +Don't just create a webapp with a pile of features. +I encourage you to identify projects that will have impact. + +Here are some ideas: + +- Interactive data visualization: Find an interesting dataset, then visualize it using d3.js. See visualizations on the New York Times, 538, or [mbtaviz (wpi grads!)](https://mbtaviz.github.io/) for inspiration. +- WPI Infrastructure: There are a lot of things that could be done better on the WPI school website. Find something you care about and make a prototype that shows how it could be better. Avoid course schedulers or course survey browsers -- these already exist! +- (bonus) Infrastructure ideas: Course sizes are growing, making it more difficult than ever for professors to learn about all the students in their course. Create a webapp that provides a better interface to the students in the course (search, filtering, with profiles almost like Facebook) using Banner data. Alternately, create a flash-card game that uses student data (pictures, names) to help professors get to know their students. + +## Logistics + +### Team size +Students are encouraged to work in teams of 2 or 3 students for the project. +This will allow you to build a good project without expending an excessive amount of effort. While I would expect a team of three students to produce a project with more features, I expect a single person project to exhibit all of the required facets described above. + +### Schedule / Deliverables + +- November 21: You should provide an outline of your project and the names of the team members. The outline should have enough detail so that I can determine if it meets the minimum expectations, or if it goes too far to be reasonable by the deadline. + +There are no other scheduled checkpoints for your project. +You must be done in time to present it to me before the term ends. + +#### Turning in Your Outline / Project + +Deploy your outline, in the form of a webpage, to Heroku. +Ensure that your project has the proper naming scheme (cs4241-fp-yourGitHubUsername) so we can find it. +Folks on the same team should post the same webpage. + +## Final Presentation + +Presentations will occur during the final week of class. +We'll also set up a submission site so we can get your repo links. + +As for the presentations, we will take over a different room on WPI's campus, with tables. +You'll set up and demo to folks who stop by. +You'll also demo to me and other graders. + +This is a fun event. +Since there was no textbook for the course, I'm going to ask or contributions so we can buy tasty food/drink. +Look for a Square Cash link from me soon. + +## FAQs + +- **Can I open-source my project?** You may open source your project from the beginning. I encourage it. While other course code should be kept hidden, this is a case where others can and should learn and draw inspiration from everyone else. +- **Can I use XYZ framework?** You can use any web-based frameworks or tools available.