GEOG 863
GIS Mashups for Geospatial Professionals

GEOG 863 Syllabus

PrintPrint

This syllabus is divided into several sections. You can read it sequentially by scrolling down the length of the document or by clicking on any of the links below to "jump" to a specific section. Please read the entire document.


Instructor

Jim Detwiler
Jim Detwiler photo
E-mail:
Please use Canvas' e-mail client (Canvas Inbox)
Office hours: By appointment

Return to top of page.


Course Overview

GEOG 863: GIS Mashups  for Geospatial Professionals.
Prerequisites: GEOG 485 or equivalent programming experience

Geographic Information Systems have long provided skilled professionals with the means to map and analyze objects and phenomena on the Earth’s surface using desktop computers. In recent years, the Internet has greatly extended the reach of GIS beyond the desktop. Geospatial technology vendors and the open-source community have devised web service protocols and web mapping application programming interfaces (APIs) so that third-party developers can create their own applications for use on web-enabled devices. These applications serve a wide array of purposes, including place and way finding, data dissemination, and data collection. For example, tabular crime data published on a city’s website can be combined with base data layers such as municipal boundaries and roads to produce a map that is valuable for both the city’s police department and its citizens. This course focuses on how geospatial professionals can create such applications using industry-relevant geospatial APIs. Students will build applications using the core web technologies of HTML, CSS, and JavaScript. Topics covered will include the implementation of 2D maps and 3D scenes, understanding API documentation, layer discovery and visualization, user interface development, data querying, and geoprocessing.

GEOG 863 is an elective course in the Postbaccalaureate Certificate Program in GIS and the Master of Geographic Information Systems (MGIS) degree program.

What will be expected of you?

Like any graduate level course, you will be challenged to move beyond the knowledge and skills that you bring to the class. However, you'll be glad to know that you don't have to show up for class at a certain time! All you need to do is complete your assignments before the published deadlines. Some of the assignments are one week in length, while others are two.

During the term, I encourage everyone to use the class discussion forums, chat rooms or e-mail to help each other find relevant materials and learn about interesting applications of mashups. I can always be contacted via class e-mail and will check my account daily during the week (and typically at least once each weekend). If I am traveling, I may check somewhat less frequently, but I will alert you of this beforehand.

My colleagues and I have worked hard to make this the most effective and convenient educational experience possible. How much and how well you learn is ultimately up to you. You will succeed if you are diligent about keeping up with the class schedule, and if you take advantage of opportunities to communicate with me, as well as with your fellow students.

For a more detailed look at what will be covered in each lesson, as well as due dates for our assignments and activities, please refer to the semester-specific course schedule that is part of this syllabus (see "Course Schedule").


Course Objectives

GEOG 863 will provide students with an understanding of the technology that makes building mashups possible and teaches them how to build their own mashups.

At the successful completion of this course, students should be able to:

  • Compose a geospatial app using non-programming tools such as app templates and application builders
  • Explain the basic rules/terminology of Hypertext Transfer Markup Language (HTML)
  • Assemble a simple web page containing paragraphs, lists, tables, images, and links without the aid of an HTML editor
  • Discuss the benefits of using Cascading Style Sheet (CSS) technology
  • Employ JavaScript (JS) to add dynamic content/behavior to a web page
  • Describe how Asynchronous Module Declaration (AMD) work
  • Locate and interpret class, property and method documentation in a web mapping API reference
  • Identify useful code samples and apply them in a web mapping sandbox
  • Explain the concept of class inheritance
  • Incorporate web maps and web scenes into a JavaScript application
  • Describe how the REST web services protocol works
  • List the commonly used layer types in a web mapping API and discuss their use
  • Diagnose problems in an app using browser debugging tools & strategies
  • Describe and employ the user interface widgets available in a web mapping API
  • Incorporate HTML form elements into an app
  • Depict different geometry types using the appropriate symbol objects
  • Choose and implement an appropriate layer renderer to convey the desired information on a web map
  • Define popup window content/behavior programmatically
  • Explain the concept of a promise in the context of JavaScript and demonstrate how to code one
  • Define and execute queries to identify features of interest
  • Describe the relationship between a server-hosted geoprocessing service and a client-based task
  • Execute a geoprocessing task synchronously and asynchronously

Required Course Materials

All materials needed for this course are presented online through our course website and in Canvas. In order to access the online materials, you need to have an active Penn State Access Account user ID and password (used to access the online course resources). If you have any questions about obtaining or activating your Penn State Access Account, please contact the Outreach Helpdesk.

You do not need to purchase any materials for this course, however, the following books may be useful as references:

  • Learning Web Design: A Beginner's Guide to HTML, CSS, JavaScript and Web Graphics by Jennifer Niederst Robbins (ISBN-13: 978-1449319274)
  • Head First JavaScript Programming by Eric T. Freeman & Elisabeth Robson (ISBN-13: 978-1449340131)
  • A Smarter Way to Learn JavaScript by Mark Myers (ISBN-13: 978-1497408180)

Using the Library

Just like on-campus students, as a Penn State student you have a wealth of library resources available to you!

As a user of Penn State Libraries, you can...

  • search for journal articles (many are even immediately available in full-text)
  • request articles that aren't available in full-text and have them delivered electronically
  • borrow books and other materials and have them delivered to your doorstep
  • access materials that your instructor has put on Electronic Reserve
  • talk to reference librarians in real time using chat, phone, and e-mail
  • ...and much more!

Assignments and Grading

Students earn grades that reflect the extent to which they achieve the learning objectives listed above. Opportunities to demonstrate learning include the following, and grades will be based on points assigned to each of several components of the course as follows:

  • 8 Individual Projects - 50% of course grade:
    Each lesson concludes with a hands-on project to be completed individually by the student. See the Course Schedule for project due dates. In addition to producing solutions to the programming scenarios presented, you will also sometimes be required to produce a short write-up of what you learned or record a video that presents findings on a research topic.
  • 8 Lesson Quizzes - 20% of course grade:
    A quiz will be held at the end of each lesson to test the student's comprehension of class materials and other reading as required.
  • Final Project - 20% of course grade:
    A student-selected final project will be submitted at the end of the course.
  • Review Quiz - 10% of course grade:
    A 20-question review quiz at the end of the course will cover all of the course material.

Grading

Course grades are awarded on the following basis :

Grade Assignments
A 93-100%
A- 90-92.9%
B+ 86-89.9%
B 83-85.9%
B- 80-82.9%
C+ 76-79.9%
C 70-75.9%
D 60-69.9%
F <60%
W Withdrew

Note:

Students need to earn at least a "C" grade in all four courses to be eligible for one of our Post baccalaureate Certificates. Only credits associated with a grade of "B" or higher may be counted toward the MGIS degree.


GEOG 863 Course Schedule

imagePrintable Schedule

Below, you will find a summary of the learning activities for this course and the associated time frames. We will use the Calendar in Canvas to post assignments, due dates, etc. Please refer to that information in order to keep on top of things! Specific details for each project can be found in each lesson. If the need arises and changes to this syllabus are required, all students will be notified in advance.

Lesson 1: Creating Mapping Apps Without Programming
Date: Week 1
Topics: ArcGIS Online, Esri configurable apps, Web AppBuilder

Lesson 2: Web Publishing Technologies: HTML/XHTML/CSS
Date: Week 2
Topics: HTML, XML, XHTML, CSS

Lesson 3: Introduction to the ArcGIS API for JavaScript
Date: Week 3
Topics: 2D maps, 3D scenes, JavaScript fundamentals, HTML/CSS/JS separation, Asynchronous Module Definition, the Document Object Model, Esri's JS Software Developer's Kit, graphic overlays

Lesson 4: Adding Layers
Date: Week 4
Topics: Loading ArcGIS Online web maps/web scenes, autocasting, the REST API, layer types, IDEs, debugging, JSLint/JSHint, code beautifiers

Lesson 5: Layer Visualization
Date: Week 5
Topics: non-programming options, 2D symbols, 3D symbols, Esri's Symbol Playground, renderers, using browser tools to obtain viewpoint values, popup configuration

Lesson 6: Building Search/Query Capability
Date: Week 6
Topics: the Search widget, promises, layer definition expressions, query definition & execution

Lesson 7: GUI Development
Date: Week 7
Topics: Esri widgets, customizing widget appearance & behavior, incorporation of HTML form elements, event handling

Lesson 8: Geoprocessing
Date: Week 8
Topics: tasks, identifying geoprocessing service inputs & outputs, synchronous & asynchronous job execution


Course Policies

Late Policy

Late projects are automatically marked down 10 percent (regardless of how late they're submitted). Hopefully, this will encourage you to stay on track, but not penalize you too harshly should you fall behind.

Technical Requirements

For this course, we recommend the minimum technical requirements outlined on our "Program Technical Requirements" page. If you need technical assistance at any point during the course, please contact the Outreach Helpdesk (for World Campus students) or the IT Service Desk (for students at all other campus locations).

Internet Connection

Access to a reliable broadband Internet connection is required for this course. A problem with your Internet access may not be used as an excuse for late, missing, or incomplete coursework. If you experience problems with your Internet connection while working on this course, it is your responsibility to find an alternative Internet access point, such as a public library or wireless hotspot.

Mixed Content

This site is considered a secure website, which means that your connection is encrypted. We do, however, link to content that isn't necessarily encrypted. This is called mixed content. By default, mixed content is blocked in Internet Explorer, Firefox and Chrome. This may result in a blank page or a message saying that only secure content is displayed. Follow the directions on our technical requirements page to view the mixed content.

Equations

This course must be viewed using one of the following browsers: Firefox (any version), Safari (versions 5.1 or 6.0), Chrome (0.3 or later), or Internet Explorer with the MathPlayer PlugIn. If you use any other browser, there will be pages containing equations that do not render properly. If you need technical assistance at any point during the course, please contact the Outreach Helpdesk (for World Campus students) or the IT Service Desk (for students at all other campus locations).

Penn State E-mail Accounts

All official communications from the Penn State World Campus are sent to students' Penn State e-mail accounts. Be sure to check your Penn State account regularly, or forward your Penn State e-mail to your preferred e-mail account, so you don't miss any important information.

Academic Integrity

This course follows the guidelines for academic integrity of Penn State's College of Earth and Mineral Sciences. Penn State defines academic integrity as "the pursuit of scholarly activity in an open, honest and responsible manner." Academic integrity includes "a commitment not to engage in or tolerate acts of falsification, misrepresentation, or deception." In particular, the University defines plagiarism as "the fabrication of information and citations; submitting others' work from professional journals, books, articles, and papers; submission of other students' papers, lab results or project reports and representing the work as one's own." Penalties for violations of academic integrity may include course failure. To learn more, see Penn State's "Plagiarism Tutorial for Students."

Course Copyright

All course materials students receive or to which students have online access are protected by copyright laws. Students may use course materials and make copies for their own use as needed, but unauthorized distribution and/or uploading of materials without the instructor’s express permission is strictly prohibited. University Policy AD 40, the University Policy Recording of Classroom Activities and Note Taking Services addresses this issue. Students who engage in the unauthorized distribution of copyrighted materials may be held in violation of the University’s Code of Conduct, and/or liable under Federal and State laws.

For example, uploading completed labs, homework, or other assignments to any study site constitutes a violation of this policy.

Accommodations for Students with Disabilities

Penn State welcomes students with disabilities into the University's educational programs. Every Penn State campus has an office for students with disabilities. The Student Disability Resources (SDR) website provides contact information for every Penn State campus: Contacts for Disability Resources at all Penn State Campuses. For further information, please visit the Student Disability Resources (SDR) website.

In order to receive consideration for reasonable accommodations, you must contact the appropriate disability services office at the campus where you are officially enrolled. You will participate in an intake interview and provide documentation, see Applying for Services from Student Disability Resources. If the documentation supports your request for reasonable accommodations, your campus’s disability services office will provide you with an accommodation letter. Please share this letter with your instructors and discuss the accommodations with them as early in your courses as possible. You must follow this process for every semester that you request accommodations.

Counseling and Psychological Services

Many students at Penn State face personal challenges or have psychological needs that may interfere with their academic progress, social development, or emotional wellbeing.  The university offers a variety of confidential services to help you through difficult times, including individual and group counseling, crisis intervention, consultations, online chats, and mental health screenings.  These services are provided by staff who welcome all students and embrace a philosophy respectful of clients’ cultural and religious backgrounds, and sensitive to differences in race, ability, gender identity and sexual orientation. Services include the following:

Counseling and Psychological Services at University Park  (CAPS): 814-863-0395
Counseling and Psychological Services at Commonwealth Campuses
Penn State Crisis Line (24 hours/7 days/week): 877-229-6400
Crisis Text Line (24 hours/7 days/week): Text LIONS to 741741

Reporting Bias-Motivated Incidents

Penn State takes great pride to foster a diverse and inclusive environment for students, faculty, and staff. Acts of intolerance, discrimination, or harassment due to age, ancestry, color, disability, gender, gender identity, national origin, race, religious belief, sexual orientation, or veteran status are not tolerated (Policy AD29 Statement on Intolerance) and can be reported through Educational Equity via the Report Bias webpage.

Military Personnel

Veterans and currently serving military personnel and/or spouses with unique circumstances (e.g., upcoming deployments, drill/duty requirements, disabilities, VA appointments, etc.) are welcome and encouraged to communicate these, in advance if possible, to the instructor in the case that special arrangements need to be made.

Inclement Weather

In case of weather-related delays at the University, this online course will proceed as planned. Your instructor will inform you if there are any extenuating circumstances regarding content or activity due dates in the course due to weather delays. If you are affected by a weather-related emergency, please contact your instructor at the earliest possible time to make special arrangements.

Connect Online with Caution

Penn State is committed to educational access for all. Our students come from all walks of life and have diverse life experiences. As with any other online community, the lack of physical interaction in an online classroom can create a false sense of anonymity and security. While one can make new friends online, digital relationships can also be misleading. Good judgment and decision making are critical when choosing to disclose personal information with others whom you do not know.

Deferred Grades

If you are prevented from completing this course within the prescribed amount of time, it is possible to have the grade deferred with the concurrence of the instructor. To seek a deferred grade, you must submit a written request (by e-mail or U.S. post) to your instructor describing the reason(s) for the request. It is up to your instructor to determine whether or not you will be permitted to receive a deferred grade. If, for any reason, the course work for the deferred grade is not complete by the assigned time, a grade of "F" will be automatically entered on your transcript.

Attendance

This course will be conducted entirely online. There will be no set class meeting times, but you will be required to complete weekly assignments with specific due dates. Many of the assignments are open for multiple days, so it is your responsibility to complete the work early if you plan to travel or participate in national holidays, religious observances or University approved activities.

If you need to request an exception due to a personal or medical emergency, contact the instructor directly as soon as you are able. Such requests will be considered on a case-by-case basis.


Disclaimer

Please note that the specifics of this Course Syllabus can be changed at any time, and you will be responsible for abiding by any such changes. All changes will be communicated with you via e-mail, course announcement and/or course discussion forum.