CSE 135: Server-Side Web Languages

Summer 2017 | University of California, San Diego CSE Department

Homework #4 - Releasing Our Server Side App

This homework presents an opportunity to finish our exploration into Web app building by preparing our SoundBoard app for production.

In the previous assignment you completed the bulk of your coding tasks. In this assignment we will refine our program in three ways:

  1. Performance - by making our executions faster for our end users
  2. Security - by locking down our app in preparation for the hack contest
  3. Polish - addressing things undone or done poorly in HW3 and adding docs and polish for the final launch

The performance part of the assignment should be measured both before and after your efforts. Use a tool like Webpagetest.org or your browser's developer tools to show load times of your app before you optimize and after your optimize. Use compression, minification, source bundling, image sprites, caching, image optimization, HTTP2 and any other trick you see fit for you gain. Your changes should be global. Server-side schemes like PHP accelerators are possible, but likely you will find client side efforts the most useful to hit your speed goal.

Security wise you should attempt to lock down your app as hard as possible. 'Unhackable' apps will retain full points during the hack contest. Apps with holes may lose points during the content described separately which your team may gain if you hack successfully. Make sure you particular think carefully about data validation, especially around your sign-up and login process and the associated session system.

Polish wise you should comment and organize your code and maybe your interface for handoff to the TAs. You should put together a short PDF document of slides or easily readable report with bullet points that indicates any improvements you made from HW3 to HW4. If you lost points on HW3 because you couldn't finish in time now is the time to do this


Back to CSE135

Grading

  • 10pts for performance improvements 2pts per 10% in time improvement (max 10pts)
  • 30pts for polish up to 10pts on presentation/discussion and 20pts for improvements
  • 20pts (or more) for hacking contest (details coming later)

Total: 60pts (or more)

Please indicate that you are done to the TA via e-mail by Wed 9/6 11:59 PM - Hacking contest begins @ 6PM 9/8.