[Updated January 9, 2017]
In this course, students learn how to:
- Use SQL (Structured Query Language) to create databases and read/write data for use in applications for media audiences.
- Scrape websites to collect public data (such as government data for an informed electorate) that can be stored, analyzed and reused, as is typically done in media organizations.
- Write programs in Python.
- Create server-side Web apps using Flask, a Python framework.
- Solve problems in setting up and using command-line tools to support innovative storytelling.
The prerequisite for this course is Introduction to Web Apps, which is offered only in the fall semester.
This course adds server-side (back-end) Web skills to the client-side (front-end) Web skills students have developed in the preceding course, with the goal of developing Web apps that include a server-side component to support presentations of stories and large data sets for media organizations. Web scraping is also covered to enable journalists to gather open data from the Web for analysis and/or informing audiences.
This means you can save information generated from a Web page (you can require users to log in, for example); you can run scripts on the server that will affect what the user sees, among other things; you can read and write information from/to databases.
“With few exceptions, if you can view it in your browser, you can access it via a Python script. If you can access it in a script, you can store it in a database. And if you can store it in a database, you can do virtually anything with that data.” —Ryan Mitchell, Web Scraping with Python (one of our two required books)
“Employers favor back-end developers with experience in PHP, Python, and SQL. PHP is a server-side scripting language which powers giants like Facebook and Wikipedia, as well as any website built with WordPress or Drupal (hence its popularity with employers). Python is a general-purpose programming language prioritizing, clean, efficient, readable code, and SQL is a special-purpose programming language used to manage databases.” —5 Web Developer Job Descriptions & Skills They Require (March 2015)
Python also has a lot of great libraries you can add with a simple download. One of these is BeautifulSoup, which we will use for scraping.
Instructor: Mindy McAdams, Professor, Department of Journalism
E-mail: See this page for my UF e-mail address
Office: 3049 Weimer Hall
Office hours: Wednesday 1–3 p.m. in 3049 Weimer | And by appointment | Spring 2017
“By appointment” just means let me know when you want to come and see me, and I’ll let you know if I can’t be there. I’m often not in my office, so you’ll save a trip if you email me ahead of time.
Office phone: (352) 392-8456 (NOTE: E-mail is better. Much better.)
About me | My GitHub
JOU 4930 | Spring 2017 | Section 1211
Class meets Tuesday 11:45 a.m.–2:45 p.m. (periods 5, 6 and 7)
Location: 3334 Weimer Hall (upper level, INC newsroom)
- Web Scraping with Python: Collecting Data from the Modern Web, by Ryan Mitchell (O’Reilly, 2015)
- Head First Python, 2nd edition, by Paul Barry (O’Reilly, 2017)
You can find both books at O’Reilly.com. O’Reilly often runs sales for 50% off the price of ebooks. However, they almost never offer discounts on printed books, so check the price at Amazon if you want a hardcopy — Amazon’s prices are often a bit lower than O’Reilly’s. Do not buy O’Reilly ebooks from Amazon! The O’Reilly ebooks (PDF versions) are far superior to the Kindle versions. (I own dozens of O’Reilly books. No, they don’t pay me to say so.)