INFM 201-10 (2-Units)
Informatics Technology Foundations
Spring 2021 Syllabus

Dr. Gerry Benoit
E-mail
Office: online
Office Hours:
Virtual office hours. By appointment - just send me an email with times/dates and we'll have a zoom session.


Syllabus Links
Textbooks:
 None. Class readings in the syllabus.
CLOs
PLOs
Resources
Canvas Login and Tutorials
iSchool eBookstore

This 2-unit course starts on January 11 and runs until March 03, 2021. 

You will be enrolled in the Canvas site automatically.

Course Description

Introduction to computing fundamentals with an emphasis on understanding desktop and network computing, web framework architectures, and basic coding. Designed for students of all experience levels to develop a technology foundation applicable to Informatics professionals.

Course Requirements


Contents:

  • Course Dates
  • Description
  • Schedule
  • Weekly Activities: topic, readings, software
  • Assignments
  • Optional/Advanced Readings
  • References/links

  1. Course Dates: Classes begin: 2021-01-11
    Classes end: 2021-03-07
    MLK Birthday January 18, 2021
  2. Course Description:

    Introduction to computing fundamentals with an emphasis on understanding desktop and network computing, web framework architectures, and basic coding. Designed for students of all experience levels to develop a technology foundation applicable to Informatics professionals.

    The most important person in your learning is you … students are responsible for their learning and all of the faculty and SJSU’s resources are here to help you! NB: The course is very fast-paced and not everything will be understood on the first pass. The best learning will be viewing the slides (for the big picture and some details), the readings (for lots of details), and hands-on to activate the most important concepts and skills.

  3. Schedule
    Schedule (using a Monday to Sunday week): Fall Tern begins on Wednesday, August 19]
    Week Dates Weekly Topics
    1 Introduction and Basic Concepts, including Operating Systems and a Unix Lab.
    [Jan 11.  Quiz on this topic due Jan 17.]
    Computing Concepts & Data
    2 Data and Networking Fundamentals; continue with Operating Systems.
    [Jan 18.  Quiz on this topic due Jan 25.]
    Operating Systems
    3 Programming Concepts with Python.
    [Jan 25.  Quiz on this topic due Jan 31.]
    Programming Concepts
    4 Web Frameworks, 1.
    [Feb 01]
    Networking & Web Frameworks 1
    5 Web Frameworks, 2.
    [Feb 08]
    Web Frameworks 2
    6 SDLC and Modularization, 1.
    [Feb 15]
    SLDC
    7 SDLC and Modularization, 2.
    [Feb 22.  Quiz on Weeks 4-7 on Feb 29.]
    Modularization & Algorithms
    8 [Mar 01.  Final project due Mar 07.] Wrap Up
    Grades are released by the Registrar’s Office, sometime after the end of the full Spring term.

    Before the course starts, please review and download/install the software you’ll need for the course:

    1. Computer (Mac or Windows)
    2. Unix terminal window (built-in the Mac; Windows users install Cygwin, the 64-bit version x86_64).
    3. Text editor (Windows users can use NotePad+; all users should get a copy of BBEdit, or Atom, or Sublime, or another text editor program, like TextMate. Note that Apple’s TextEdit or any word processor program will not work.]
    4. Python, version 3.x (Software programming package). [Macs have version 2.7 already installed; you want to upgrade and use at least version 3.8; Windows users may have to install it on their own. Python releases include a helper software tool called IDLE, that you can use optionally.]
    5. File Transfer Protocol (FTP/SFTP) software. You may already have one installed; if not, try Cyberduck for a free version.

  4. Weekly Activities:  Please note that each week we have a video of the topic, required readings, and optional readings.  Since there are no prerequisites for the course but people do have some experience, we'll try to build on your experiences.  There will be additional .pdfs added, too, based on your interests and needs.
  5. Week 1: Welcome to our class. Each term the course content and techniques have been adjusted as we learn about using computer technologies in new settings - for instance, SJSU. This week we want to get a feeling for the breadth and types of “technologies” we’ll encounter. The result is a mental framework of tech so that we can associate current activities and integrate future ones in a logical and useful way. We’ll jump right into our topic starting with Operating Systems. For Mac users, you’ll need the terminal window; Windows users will need to download & install Cygwin software. In later weeks we’ll get into more detail about some of the topics we introduce this week so if you don’t understand fully the details of the tech during the first week, that’s okay. Complete the readings & activities at the start of the week!
    Readings: 01-Basics.pdf, 02-Data.pdf; please start reading the python texts.  You'll want to get a jump on them right away!
    Slides: infm201-Welcome.key
    Software: Check that you have and install if necessary all the software listed above. Confirm that they work before the start of the next module.

    Week 2: Operating Systems The operating system is the master of operations in a computer - allowing end-users to do work, controlling the hardware and other software in a computer, communicating between users and other computers, and pretty much everything! Let’s familiarize ourselves with the concept, use, and some commands of an important operating system, Unix.
    Readings: 03-OS.pdf, 10concepts.pdf
    Slides: infm201-OperatingSystems-1.key
    Software: Terminal window (bash shell)

    Week 3: Intro to Programming No one can become a programmer overnight! And all programming languages have different syntaxes and methods of using them. Fortunately, the concepts used in any programming language carry over to all other languages. In this module, we read about programming languages in general for the concepts. We practice some of these concepts with elementary skills in Python3. For this module, you’ll need to download & install Python, version 3.x (meaning 3.7 or 3.8.x, or the latest release).
    Readings: 05-Python-2.pdf; Complete the python textbooks.
    04-Python-1.pdf
    Slides: infm201-Programming-1.key
    Software: Download and install the proper version of Python 3.x for your computer.
    Text editor (Atom, Notepad++, BBEdit, Sparkle, etc.).
    Terminal window.
    Python via the terminal window. If you want, use Python’s built-in IDLE; some students may want to use other IDEs such as Spyder.  Go for it!

    Week 4: Web Frameworks, Part 1 This module introduces us to Internet Protocols (IPv4 and IPv6), domain naming conventions, common physical and logical networking topologies. In addition, we delve into client/server architecture, request/response models; the idea of sockets, and opening/closing communications channels on the net. We close the section with web framework applications, templates, and MVC architecture.
    Readings: Networking_Concepts.pdf.
    Web Frameworks-Part1.pdf
    Slides: TBA
    Software: None

    Week 5: Web Frameworks, Part 2 Let’s turn to data and file formats. The most important file formats today are text, HTML, JSON, CSV, SVG, XML, and various media formats. Data are typically exported/imported to other formats in unstructured, semi-structured, and structured (SQL) formats for web applications.
    Readings: TBA
    Slides: WebFrameworks-Part2.pdf
    Software: TBA

    Week 6: Software Development Lifecycle (SDLC) The software development life cycle (and in a broader way, systems- or solutions-development life cycle; SDLC) is a methodical approach to understanding the resources that are needed for the “logical analysis” of any tech project and the “physical phase” of building a tech project or implementing a new workflow. These are important skills you’ll apply in UX and Project Management.
    Readings: TBA
    Slides: TBA
    Software: TBA

    Week 7: Modularization Prefatory to building software algorithms and vital to the SDLC is decomposing tasks into their appropriate logical modules.
    Readings: infm201-Modularization1.rtf
    Slides: TBA
    Software: TBA

    Week 8: Wrap Up Following a guide template, you’ll integrate the content of the preceding weeks for a final report as if you’re preparing an analysis for an informatics project at your job.


  6. Assignments

    Each week you complete the readings. Test your comprehension, both by reading the review questions at the end of the lesson and by practice. There are weekly online quizzes. The URL will be posted and you can take the quiz at any time during the week. The quiz for a given week is turned off on the first day of the next week. If you need an extension send me an email. There is a final project, due the last week of the class. Note that some students are more advanced than others and may want more of a challenge. If so, I’ll be glad to create an individualized final project. Submissions and quizzes are due by 11:59 PM Pacific of the due date.

  7. Optional/Advanced Readings

    Throughout the term, I’ll post some readings (monographs, software demos, teaching materials I’ve written to demo themes from other terms, etc.). If you’re interested in something and want some suggestions, just let me know.

    Syllabus as of Dec 8, 2020. Links, readings, slides, etc., are all subject to being finalized before the start of class.

Assignments

This schedule and related dates/readings/assignments are tentative and subject to change with fair notice. Any changes will be announced in due time in class and on the course’s website in the Canvas Learning Management System. The students are obliged to consult the most updated and detailed version of the reading material and syllabus, which will be posted on the course’s website.

Grading

Deliverable Points CLOs
Quiz 1 15 points #1, #4
Quiz 2 15 points #3
Quiz 3 15 points #2
Quiz 4 15 points #2, #4
Participation 10 points #1-4
Final Project 30 points #1-4

Other Relevant Information:

Participation is important.  You're invited to ask questions, share ideas, offer solutions to other students' questions, perhaps draw parallels between our lessons and your tech experience; perhaps ask for more info or tech details.  I hope you'll enjoy and want to participate vigorously in our group discussion sites 'cause asking questions and sharing your experiences really helps personalize an online learning class.

Welcome and have fun!

Course Workload Expectations

Success in this course is based on the expectation that students will spend, for each unit of credit, a minimum of forty-five hours over the length of the course (normally 3 hours per unit per week with 1 of the hours used for lecture) for instruction or preparation/studying or course related activities including but not limited to internships, labs, clinical practica. Other course structures will have equivalent workload expectations as described in the syllabus.

Instructional time may include but is not limited to:
Working on posted modules or lessons prepared by the instructor; discussion forum interactions with the instructor and/or other students; making presentations and getting feedback from the instructor; attending office hours or other synchronous sessions with the instructor.

Student time outside of class:
In any seven-day period, a student is expected to be academically engaged through submitting an academic assignment; taking an exam or an interactive tutorial, or computer-assisted instruction; building websites, blogs, databases, social media presentations; attending a study group;contributing to an academic online discussion; writing papers; reading articles; conducting research; engaging in small group work.

Course Prerequisites

Graduate Standing or Instructor Consent. 

Course Learning Outcomes

Upon successful completion of the course, students will be able to:

  1. Modularize logical and computing questions to implement a basic SDLC practice, working from algorithm development, to coding, testing, and debugging small programs as might be found in web frameworks.
  2. Understand the fundamentals of computers, networked systems, and the software tools used to create computer-based solutions.
  3. Be exposed to the concepts common to programming languages, being sensitized to fundamental computing using a popular programming language.
  4. Understand IP, domain naming conventions, common physical and logical networking topologies - such as client/server, request/response, how communication channels work; web frameworks (templates and MVC architecture).
  5. Learn about how common web frameworks work, popular tool options, and data/file types for sharing data between frameworks/systems.

SLOs and PLOs

This course supports Informatics SLO 4: Use best practices in Web application design and information architecture to design and develop user-centered knowledge structures for the Web environment and to communicate deliverables to project stakeholders.

SLO 4 supports the following Informatics Program Learning Outcomes (PLOs):

  • PLO 1 Apply technology informatics skills to solve specific industry data and information management problems, with a focus on usability and designing for users.
  • PLO 4 Identify user needs, ideate informatics products and services, prototype new concepts, and evaluate a prototype's usability.
  • PLO 5 Work collaboratively in teams and use project management practices effectively to solve user-centric information and data problems.

Textbooks

Required Textbooks:

  • Severance, C. (2015). Introduction to networking: How the Internet works. Ann Arbor, MI: CreateSpace Independent Publishing Platform. Free from: http://net-intro.comarrow gif indicating link outside sjsu domain

Grading Scale

The standard SJSU School of Information Grading Scale is utilized for all iSchool courses:

97 to 100 A
94 to 96 A minus
91 to 93 B plus
88 to 90 B
85 to 87 B minus
82 to 84 C plus
79 to 81 C
76 to 78 C minus
73 to 75 D plus
70 to 72 D
67 to 69 D minus
Below 67 F

 

In order to provide consistent guidelines for assessment for graduate level work in the School, these terms are applied to letter grades:

  • C represents Adequate work; a grade of "C" counts for credit for the course;
  • B represents Good work; a grade of "B" clearly meets the standards for graduate level work;
    For core courses in the MLIS program (not MARA or Informatics) — INFO 200, INFO 202, INFO 204 — the iSchool requires that students earn a B in the course. If the grade is less than B (B- or lower) after the first attempt you will be placed on administrative probation. You must repeat the class if you wish to stay in the program. If - on the second attempt - you do not pass the class with a grade of B or better (not B- but B) you will be disqualified.
  • A represents Exceptional work; a grade of "A" will be assigned for outstanding work only.

Students are advised that it is their responsibility to maintain a 3.0 Grade Point Average (GPA).

University Policies

Per University Policy S16-9, university-wide policy information relevant to all courses, such as academic integrity, accommodations, etc. will be available on Office of Graduate and Undergraduate Programs' Syllabus Information web page at: https://www.sjsu.edu/curriculum/courses/syllabus-info.php. Make sure to visit this page, review and be familiar with these university policies and resources.

In order to request an accommodation in a class please contact the Accessible Education Center and register via the MyAEC portal.

icon showing link leads to the PDF file viewer known as Acrobat Reader Download Adobe Acrobat Reader to access PDF files.

More accessibility resources.