Syllabus summer 2013 Georgetown

MPJO-779-40: WEB DEVELOPMENT FOR MEDIA

GEORGETOWN UNIVERSITY: MPS-JOURNALISM

Tuesdays 6 p.m. to 9:20 p.m. | Summer 2013

Instructor: Greg Linch

Clarendon campus, Mac lab

  • Office hours are by appointment.

COURSE OVERVIEW

Merely using the web and digital tools is no longer enough for today’s media professionals. Journalists and communicators alike need to have a strong foundational and practical understanding of how websites and applications are built and how to troubleshoot when problems arise. This class does not aim to make you full-time coders (though maybe you’ll want to be after!) or require any previous web development experience, but we do want you to come away with some coding skills. You’ll also be able to collaborate more effectively with web developers and to continue learning on your own.

Students will learn about the various areas of web development and the fundamental technologies used to code and design web pages by diving into HTML and CSS, plus some basic JavaScript, jQuery and PHP. Students will set up and customize their own self-hosted website using WordPress. Readings, hands-on demonstrations, self-learning tutorials and assignments will be the basis for instruction.

COURSE OBJECTIVES

By the end of the semester, students should be able to:

  • Understand the fundamental concepts and technologies in modern web development
  • Set up, customize and maintain a self-hosted site using WordPress
  • More expertly conceive, build or collaborate on technical projects
  • Approach problem-solving from a programmer’s perspective
  • Communicate more effectively with web developers
  • Be aware of other programming languages, frameworks, libraries, etc., and their uses
  • Continue to learn and teach yourself coding or other technical skills

REQUIRED READING

There is no required text for this course. Instead, the instructor will assign selected readings throughout the semester. Students will be expected to read materials before class, write an analysis post when assigned and discuss in class. Students should post any questions to course blog.

EQUIPMENT

Required: Access to a computer (preferably a laptop) where you can install free software tools:

Purchase a domain (e.g., yourname.com) and basic-level personal hosting space.

Note:  You aren’t required to install or set up these before the first class, but you are encouraged to do so and start learning what they do and how they work by using them.

ATTENDANCE

As outlined by the university, missing more than two classes will result in a final grade reduction of one level (for example, an A will be converted to an A-). Absences for classes, beyond the initial two, will result in further reduction of the final grade. If you are absent for more than four classes, you will be in danger of failing this course.

Each week builds upon the previous week, so you risk falling behind if you miss class. If you do fall behind, you are responsible for catching up and learning on your own.

If you have to miss a class session, let the instructor know as soon as possible. You will still be responsible for completing all the homework, assignments and projects.

CLASSROOM ETIQUETTE, CLASS PARTICIPATION AND OTHER GUIDELINES

Students should turn off all cell phones, pagers or other communication devices while in class. Class discussions should be respectful and considerate of others’ views and opinions.

Students are expected to do all the reading and any homework before coming to class in order to be ready to learn additional concepts and to apply skills to the hands-on work in class. It is also expected that computers in class will only be used for coursework. It is easy to miss important parts or not fully grasp technical concepts if you are distracted. Email is the primary means of communication outside of class for any questions. Phone calls should be arranged by email.

Late work will result in one full letter grade lower for each day after the deadline. If you have an emergency and will miss a deadline, you must request an extension from the instructor know as soon as possible. If the request is approved, a new deadline will be given.

ASSIGNMENTS

Unless specified, all assignments are due Sunday at 5 p.m. before the next class.

Self-learning: Read texts, watch videos or complete tutorials as assigned.

Analysis posts (~300-400 words, 11 total): For assigned readings and self-learning, write reactions and highlight what you found most interesting or had questions about on the course blog.

Mid-term assignment: Set up a self-hosted WordPress site. Due: Sunday, June 16 at 5 p.m.

Project explainer or developer profile (~800 words): Pick a news or PR project to deconstruct what, how and why it was built, plus lessons learned or what it might mean in the larger context of journalism. Alternatively, you may profile a developer working in news or PR – perhaps more interestingly – outside of news or PR whose work might be relevant to those fields. Due: Sunday, Aug. 4 at 5 p.m.

Final project site: Create a customized site using the WordPress site created for the midterm.  Due: Sunday, July 21 at 5 p.m.

Final project critiques: Evaluate your peers’ project sites. Due: Thursday, July 25 at 9 p.m.

Surveys: Fill out the initial one before the first class (http://bit.ly/MPJO779SUM13survey1) and any others sent out during the course. These surveys will help the instructor know where everyone stands and if any adjustments in content or pacing are needed.

GRADING

Your course grade will be based on the following:

In-class participation: 20%
Self-learning and surveys: 15%
Analysis posts: 10%
Midterm: 10%
Explainer or profile: 10%
Final project site: 25%
Final project critiques: 10%

Graduate course grades include A, A-, B+, B, B-, C and F. There are no grades of C+, C- or D.

A         100-93                                                 B-         82.99-80

A-         92.99-90                                              C          79.99-70

B+        89.99-88                                              F          69.99-0

B          87.99-83

The instructor will provide a warning by mid-semester to any student who appears to be on track for a poor final grade.

University Resources

Students with Disabilities Policy

Students with documented disabilities have the right to specific accommodations that do not fundamentally alter the nature of the course. Students with disabilities should contact the Academic Resource Center (Leavey Center, Suite 335; 202-687-8354; arc@georgetown.edu; http://ldss.georgetown.edu/index.cfm) before the start of classes to allow time to review the documentation and make recommendations for appropriate accommodations. If accommodations are recommended, you will be given a letter from ARC to share with your professors. You are personally responsible for completing this process officially and in a timely manner. Neither accommodations nor exceptions to policies can be permitted to students who have not completed this process in advance.

Georgetown Honor System

All students are expected to maintain the highest standards of academic and personal integrity in pursuit of their education at Georgetown. Academic dishonesty in any form is a serious offense, and students found in violation are subject to academic penalties that include, but are not limited to, failure of the course, termination from the program, and revocation of degrees already conferred. All students are held to the Honor Code. The Honor Code pledge follows:

In the pursuit of the high ideals and rigorous standards of academic life, I commit myself to respect and uphold the Georgetown University Honor System: To be honest in any academic endeavor, and To conduct myself honorably, as a responsible member of the Georgetown community, as we live and work together.

PLAGIARISM

Stealing someone else’s work is a terminal offense in journalism, and it will wreck your career in academia, too. Students are expected to work with integrity and honesty in all their assignments. The Georgetown University Honor System defines plagiarism as “the act of passing off as one’s own the ideas or writings of another.” More guidance is available through the Gervase Programs at http://gervaseprograms.georgetown.edu/honor/system/53377.html. If you have any doubts about plagiarism, paraphrasing and the need to credit, check out http://www.plagiarism.org.

SYLLABUS MODIFICATION

The syllabus may change to accommodate discussion of emerging topics. Also, the schedules of guest speakers may require some shifting of our agenda. The instructor will make every effort to provide as much advance notice as possible for any alterations.

CLASS SCHEDULE

COURSE PREPARATION (Due: Sunday, May 19 at 5 p.m.)

WEEK 1 (TUESDAY, MAY 21)

Introduction

  • Overview of class
  • Review of survey results
  • What do you want to build?
  • Which track are you interested in picking?

Assignment for week 1:

WEEK 2 (TUESDAY, MAY 28)

Content and presentation

  • View source/Browser inspector
  • Document-Object Model (DOM)
  • HTML
  • CSS
  • Responsive and adaptive design

Assignment for week 2:

  • Complete tutorial: Codecademy HTML & CSS for Beginners track, including projects
  • Create a prototype homepage (e.g. for a personal site) using HTML and CSS
  • Analysis post

WEEK 3 (TUESDAY, JUNE 4)

Scripting and databases

  • The DOM revisited
  • Intro to programming concepts and using JavaScript
  • Client-side scripting
  • Server-side scripting
  • Databases for web applications

Assignment for week 3:

WEEK 4 (TUESDAY, JUNE 11)

Scripting, databases, servers, different code environments

  • Review JavaScript/jQuery concepts and gallery homework exercise
  • Intro to server-side scripting and databases
  • Intro to web servers and server stack
  • Development, staging and production environments
  • MAMP (Mac) and XAMPP (Windows)
  • PHPmyadmin
  • Git/GitHub
  • How to set up self-hosted WordPress on your local machine

Assignment for week 4:

WEEK 5 (TUESDAY, JUNE 18)

Site customization

  • Loops and arrays
  • More on version control with GitHub
  • Intro to themes and plugins

Assignment for week 5:

  • Completely Codecademy PHP courses 1, 2, 4, 5 (skip 3)
  • Read WordPress codex entry excerpts to better understand customization options. Focus on fundamentals, key concepts and general steps.
  • Analysis post
  • Pitch post: 200 words on what you want to do for your final project site, why and who the audience is

WEEK 6 (TUESDAY, JUNE 25)

Diving into development

  • Guest: Andy Nacin, a lead developer of WordPress.org
  • Codex/documentation
  • Diving deeper into themes and plugins
  • Post formats, custom post types, custom fields — oh, my!

Assignment for week 6:

  • Find and read code and documentation on GitHub for WordPress themes (example)
  • Analysis post
  • Update pitch post, including some ways you could use the different available options for your project
  • Work on project

WEEK 7 (TUESDAY, JULY 2)

Command line and more WordPress

  • A walk-through of command line basics
  • Brief intro to APIs
  • Discuss projects and, generally speaking, what customizations are planned
  • Show example of how to create a custom post type

Assignment for week 7:

WEEK 8 (TUESDAY, JULY 9)

Hands-on APIs

  • Uses
  • API wrappers
  • Examples
  • Practice

Assignment for week 8:

WEEK 9 (TUESDAY, JULY 16)

Project management

  • Agile vs. Waterfall
  • Rapid prototyping
  • A/B testing
  • Work on projects, ask questions and show nearly-finished sites to instructor

Assignment for week 9:

WEEK 10 (TUESDAY, JULY 23)

Final project

  • Explore sites, take notes
  • Discussion

Assignment for week 10:

  • Write a critique with constructive feedback for each site and send to instructor by Thursday, July 25 at 9 p.m. The instructor will then compile the critiques, remove names and send by Friday night.
  • Make adjustments to your project based on feedback over the weekend. Send update message to instructor when changes are finished by Sunday, July 28 at 5 p.m.

WEEK 11 (TUESDAY, JULY 30)

The wider world of web development

  • Washington Post newsroom visit
  • Introduction to additional common tools

Assignment for week 11:

  • Devise self-learning plan to use after the course ends, including goals and timetable; share Google doc with instructor
  • Analysis post
  • Complete project explainer or journalist profile
  • Complete end-of-course survey

WEEK 12 (TUESDAY, AUGUST 6)

Leveling up

  • Review self-learning plans and next steps
  • Feedback and discussion of goals
  • Discuss end-of-course survey