Upload
dothien
View
214
Download
1
Embed Size (px)
Citation preview
AdvancedWebAppssyllabus/McAdams 1
AdvancedWebAppsJOU4930|Spring2016|Section1211|1070WeimerHall Tuesdays11:45a.m.–2:45p.m.(periods5,6and7) Instructor: MindyMcAdams,Professor,DepartmentofJournalism Email: [email protected] Office: 3049WeimerHall Officehours: Wednesdays1–3p.m.|AndbyappointmentWorkshop: HoursTBAOfficephone: (352)392-8456(NOTE:Emailisbetter.Muchbetter.) WEBSITE: https://webappsplus.wordpress.com/
CourseDescription Thiscourseaddsserver-side(back-end)Webskillstotheclient-side(front-end)Webskillsstudentshavealreadydevelopedintheprecedingcourse,withthegoalofdevelopingWebappsthatincludeaserver-sidecomponenttoadvancejournalismstorytelling.WebscrapingisalsocoveredtoenablejournaliststogatheropendatafromtheWebforanalysis.Learningaserver-sideprogramminglanguageispartofthiscourse.
CourseObjectives Inthiscourse,studentslearnhowto:
1. UseSQL(StructuredQueryLanguage)tocreatedatabasesandtoread/writedata.2. Scrapewebsitestocollectdatathatcanthenbestored,analyzedandreused.3. WriteprogramsinPython.4. Createserver-sideWebappsusingFlask,aPythonframework.5. Solveproblemsinsettingupandusingcommand-linetools.
AttendanceandAttitudeStudentsareexpectedtoshowrespectforoneanotherandfortheinstructor.Attendanceandarrivingontimeforclassarenecessary.Latenessandabsenceswillresultinalowerfinalgrade.Ifyouhavebeenabsent,youareresponsibleforfindingoutaboutanymissedmaterialbyconsultinganotherstudentorgoingtotheinstructor’sofficehours.Thesematterswillnotbehandledviaemail.
MobiledevicesmustbeturnedOFFandplacedoutofsightduringclass.Donotchecktextmessages,socialmedia,email,etc.,duringclass,asyourinstructorconsidersthisquiterudeandthereforegroundsfordisciplinaryaction.Giveyourfullandundividedattentiontoanyonewhoisspeakinginclass,includingyourfellowstudents.
AdvancedWebAppssyllabus/McAdams 2
Studentsareexpectedtousealaptopcomputerduringclass.However,ifyouareseencheckingsocialmediaoranyothersitesunrelatedtotheimmediatetopicsbeingdiscussedinclass,penaltieswillbeimposed.Penaltiesrangefromawarning(firstoffense)togradepointdeductions.Pleasegiveyourfullattentiontotheclasswhileyouareintheclassroom.
UFAttendancePolicies> https://catalog.ufl.edu/ugrad/current/regulations/info/attendance.aspx
CourseDeadlinesandMakeupWork Lateassignmentsarenotaccepted.Thismeansthatanassignmentsubmittedlateisgradedasazero.Assignmentsarenotacceptedviaemailunlessrequestedbytheinstructor.Ifanillnessorapersonalemergencypreventsyoufromcompletinganassignmentontime,advancenoticeandwrittendocumentationarerequired.Noworkfor“extracredit”isaccepted.
NOTE:AssignmentdeadlinesinCanvasareusuallysetfor11:59p.m.Ifyousubmitafterthedeadline,yourassignmentislate.
AcademicDishonesty Academicdishonestyofanykindisnottoleratedinthiscourse.Itwillbereportedtothestudent’sdepartmentchairANDtotheuniversity’sDeanofStudents—anditwillresultinafailinggradeforthiscourse.Aformalreportoftheoffensewillbefiledwiththeuniversity’sDeanofStudents.
Academicdishonestyincludes,butisnotlimitedto:
! Usinganyworkdonebyanotherpersonandsubmittingitforaclassassignment.! Submittingworkyoudidforanotherclass.! Copyingandpastingcodewrittenbyanotherpersoninplaceofsolvingtheassignedproblemon
yourown.(Note:Insomecasesanassignmentwillrequireyoutousecodewrittenbyothers.Thosecasesareexempt.)
! Sharingcodewrittenbyyouwithanotherstudent.
UFStudentHonorCode> https://www.dso.ufl.edu/sccr/process/student-conduct-honor-code/
RequiredBooksandMoreStudentsarerequiredtoreadseveralassignedchaptersandcompleteexercisesinthesetwobooks:
WebScrapingwithPython:CollectingDatafromtheModernWeb,byRyanMitchell(O’Reilly,2015)
FlaskWebDevelopment:DevelopingWebApplicationswithPython,byMiguelGrinberg(O’Reilly,2014)
AdvancedWebAppssyllabus/McAdams 3
Allstudentsareexpectedtopossesstheirowncopyofeachbook,whetherprintedorelectronic.Quizquestionsaretakenfromthebooksandotherassignedmaterials.Studentsmightneedtousethebookduringclass.Ebooks(PDF,etc.)availableatO’Reilly:http://www.oreilly.com/PrintedbooksmightbecheaperfromAmazon.
WebhostingStudentsarerequiredtohavefull-serviceWebhostingattheirowndomain.TherecommendedproviderisReclaimHosting.OtherhostingcompaniesareacceptableiftheyprovideSSHaccessandprovideMySQL(orMariaDB)viaphpMyAdmin.
> https://reclaimhosting.com/
LaptopAllstudentsinthiscoursemustownalaptoptheycanbringtoclasswiththem.AtabletwillNOTbesufficientforthiscourse.Anyoperatingsystemisokay,butMacOSXisstronglypreferred.Forassistancewithyouroperatingsystemorhardware,pleaseusetheUFComputingHelpDeskifyoucannotsolveaproblem.Bringyourpowercordtoclasswithyou.
HeadphonesorearbudsDuringclass,youmightfindyouneedtowatchorre-watchvideos.Forthisreason,pleasebesuretoalwaysbringheadphonesorearbudswithyou.
StudentswithDisabilities StudentsrequestingaccommodationsmustfirstregisterwiththeDeanofStudentsOffice.TheDeanofStudentsOfficewillprovidedocumentationtothestudent,whomustthenprovidethisdocumentationtotheinstructorwhenrequestingaccommodations.
UFDisabilityResourceCenter> https://www.dso.ufl.edu/drc/
CourseRequirements Readthisentiredocumentinthefirstweekofclasses.Ifanythingisnotcleartoyou,askmeforclarificationbeforeJan.11,2016.Thissyllabusisacontractbetweenyouandme.
Pleasemakesuretocheckthecoursewebsiteatleastonceaweek.Ifyourelyonlyonaprintedordownloadedcopy,youmaymissachangeintheschedule.
> WEBSITE:https://webappsplus.wordpress.com/
AdvancedWebAppssyllabus/McAdams 4
QuizzesTherewillbequizzesontheassignedreading.QuizzesareinCanvasandareopen-book.OntheCourseSchedulepageonthecoursewebsite(seeabove),thereadingscoveredonthatweek’squizarelistedunderthesameweekasthequiz.Deadlines:InCanvas.
AssignmentsAssignmentsarelistedandLINKEDontheCourseSchedulepageonthecoursewebsite(seeabove).Exactdeadlines:InCanvas.Formanyoftheassignments,studentswillbegintheworkduringclass.Studentswilllikelyneedtoworkonallassignmentsoutsideclasstocompletethem.Allstudentsareencouragedtocometothescheduledworkshophoursforhelpwiththeweek’sassignment.StudentsareencouragedtohelponeanotheronassignmentsbutNOTtogivesolutionstoothers.
PresentationsTwiceduringthesemester,eachstudentwillberesponsibleforpresentinganinterestingWebapporwebsitethatusesback-endtechnologies.Thestudentisresponsibleforfindingand“deconstructing”theapp/siteandtellingtheclasswhatisinteresting,admirable,especiallycool,etc.ThepurposeofthepresentationistoinspiretheclassandshowhowcurrentWebtechnologiesandtechniquesareused.Studentsareencouragednotonlytoviewsourcebutalsotofind“howwemadethis”articlesorinterviewsabouttheapp/site.Studentsmightcontactthemakersoftheapp/siteandinterviewthem.Thinkofthisasashow-and-tellthateducatesthewholeclassandofferscreativeinspiration.
FinalprojectInthefinalthreeweeksofthecourse,eachstudentwillproduceandcompleteaWebprojectsuitableforyourprofessionalportfolio.Theprojectmustincludeatleasttwoofthefollowing:Python,Webscraping,aSQLdatabase,aFlaskapp.ItmayalsoincludeWebforms,JavaScript,Bootstrapandanyadditionaltechnologiesyoudesire.Theprojectmustbeliveandfunctionalatyourdomainbythedeadline.
AttendanceandparticipationPointswillbesubtractedifyoumissmorethanone(1)classmeeting,arechronicallylate,orrepeatedlyshowinattention.Participationisexpected;youwillbeworkingonassignedprojectsduringclass.
UFDates(Spring2016)Classesbegin Jan.5Drop/Add Jan.5–11Classesend April20FinalExams April23–29
Jan.18 MLKJr.DayFeb.27–March5 SpringBreak
AdvancedWebAppssyllabus/McAdams 5
GradesandGradingPoliciesQuizzes 30pointsAssignments 40pointsPresentations 10pointsFinalproject 10pointsAttendanceandparticipation 10pointsTOTAL 100points
92–100points A 72–77points C90–91points A– 70–71points C–88–89points B+ 68–69points D+82–87points B 62–67points D80–81points B– 60–61points D–78–79points C+ 59pointsorfewer E
UFPoliciesaboutStudentGrades> https://catalog.ufl.edu/ugrad/current/regulations/info/grades.aspx
CourseEvaluationsStudentsareexpectedtoprovidefeedbackonthequalityofinstructioninthiscoursebasedon10criteria.Theseevaluationsareconductedonline:https://evaluations.ufl.edu
Evaluationsaretypicallyopenduringthefinalweeksofthesemester.Studentswillbegivenspecificdateswhentheyareopen.Summaryresultsoftheseassessmentsareavailabletostudents:https://evaluations.ufl.edu/results/
CourseScheduleandRequiredReadings Pleasenotethatmanyimportantdetailsareonthewebsite(https://webappsplus.wordpress.com/)anddonotappearherein.Assignedreadings,linkstovideos,resources,etc.,areontheCourseSchedulepageofthewebsite.Quizzesarebasedontheassignedreadingsinthatsameweek.
Week1|Jan.5Introductiontothecourse.Tools,technologiesandoutcomes.
Week2|Jan.12IntroductiontoSQLanddatabases. IntroductiontoXAMPP,anApacheWebserverthatrunsonyourcomputer.
Week3|Jan.19SQLanddatabases,part2.MoreadvancedSQLqueries;securityissues.
AdvancedWebAppssyllabus/McAdams 6
Week4|Jan.26SQLdatabaseproject.
Week5|Feb.2IntroductiontoPython.
Week6|Feb.9IntroductiontoWebscrapingwithPythonandBeautifulSoup.UsingPIPandvirtualenv.
Week7|Feb.16Webscraping,part2.MorePython.
Week8|Feb.23Webscrapingproject.
Week9|March1 SpringBreak—classdoesnotmeet.
Week10|March8WebappswithPython;introductiontoFlask,aWebframework.
Week11|March15Flask:Basicapplicationstructureandtemplates.
Week12|March22FlaskforWebformsanddatabases.
Week13|March29Flaskproject.
Week14|April5Student’sindividualWebproject.
Week15|April12Student’sindividualWebproject.
Week16|April19Student’sindividualWebproject.
Weeklytopicsaresubjecttochange.PleasechecktheCourseSchedulepageonthecoursewebsiteforthelatestupdates.