cs 418/518 web programming fall 2017jbrunelle/cs518/lectures/lecture1.pdf · class policies follow...

18
CS 418/518 Web Programming Fall 2017 Dr. Justin F. Brunelle [email protected] http://www.cs.odu.edu/~jbrunelle/cs518

Upload: others

Post on 19-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

CS 418/518Web Programming

Fall 2017

Dr. Justin F. [email protected]

http://www.cs.odu.edu/~jbrunelle/cs518

Page 2: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Course Concepts

● LAMP Architecture● Web Architecture● Web Standards

Page 3: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Course Content

● LAMP: Linux, Apache, MySQL, PHP● GitHub● jQuery● Docker

Page 4: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Why LAMP?● Standard, well documented stack● Teaches web design fundamentals● Open Source● Why not Node.js/METEOR/MEAN/whatever?

– Fewer “standard” tutorials and examples

– Recently popular technologies, but do not exemplify standard web design principles

– LAMP principles translate natively to these technologies

Page 5: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Why GitHub?

● Industry standard● Public!● Accountability● Branching/rollback/repository/tracing

Page 6: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Why jQuery?

● Adding client-side development to LAMP● Standard library● Widely adopted

Page 7: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Why Docker?

● Emerging industry practice● Principles translate to other services● Re-usability● Consistency

Page 8: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Administrative Notes

● Room (Dragas 1117)● Meeting times (4:20-7:00)● No Exams● Demos and projects● Simulates long-term, professional development

environment

Page 9: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Course Resources

● http://www.cs.odu.edu/~jbrunelle/cs518● Syllabus

– You are responsible for knowing all policies in the syllabus

● Readings– Listed under the day they are expected to be completed.

● Lecture Notes and Assignments– Posted on schedule page before class

Page 10: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Additional Resources

● W3C● Stack Overflow● Waterloo Course Website:

https://opencs.uwaterloo.ca/web-basics/https://opencs.uwaterloo.ca/web-programming/

Page 11: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Optional: Textbooks

● Beginning PHP5, Apache and MySQL Web● PHP, MySQL, & JavaScript

– Free access on campus:http://proquest.safaribooksonline.com/book/databases/mysql/9780596803605

Page 12: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Development

● Course prerequisite: CS330 – OOP and Design● Assuming basic HTML and CSS experience● Course development done in LAMP● Git for source control (https://try.github.io)● Docker for deployment & grading

Page 13: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Course Projects

● Single project– Long-term development

– F16: Stack Overflow

– F17: Slack

– F18: Social Media

● 4 “releases”● Intra-group or individual only

– Collaboration via class mailing list and slack only

Page 14: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Grading

● Dockerized development– No magic laptops!

● Submissions via GitHub– Used for demos and grading

– Creates a public portfolio

● Feedback/grading sent via email

Page 15: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Rough Grading Outline

● 4 releases, 25 points each– 15 points – Functional requirements

– 3 points – project write-up

– 3 points – website usability

– 2 points – aesthetics

– 2 points – status report

● Extra credit– Additional features

– 0-10 extra points pending quality

Page 16: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Class Policies

● Follow academic integrity policies● Attendance is not required

– But you are responsible for material covered in class

– Attendance required on demo days

● Seeking help– Mailing list only

– All unapproved collaboration considered an honor code violation!!

● Office hours: Friday afternoons– Please email me to make an appointment

Page 17: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

How to cheat

● Cheating results in a score of 0/25 for your milestone

● Inter-group collaboration● Sharing code● Passing off open source code as your own● Failing to cite your code “inspiration”

Page 18: CS 418/518 Web Programming Fall 2017jbrunelle/cs518/lectures/lecture1.pdf · Class Policies Follow academic integrity policies Attendance is not required – But you are responsible

Dr. Justin F. Brunelle

● BS, MS, PhD in CS from ODU● Advisor: Dr. Michael L. Nelson

– s/VT/ODU/s/Electronic Music/.*/

– Ford muscle cars

● Digital preservation research @ ODU– Web Crawling, JavaScript, Web Architecture

● Principal Researcher @ MITRE– Helping government adopt emerging tech

– Specialize in data & cloud computing