
College of Professional and Global Education · School of Information
Informatics Technology Foundations
INFM 201
- Fall Session I 2023
- Sections 10, 11
- 2 Unit(s)
- 08/07/2023 to 10/01/2023
- Modified 07/17/2023
Canvas Information
This course will be available on Canvas August 7th, 6 am PT. (Beginning of Informatics Session I)
You will be enrolled in the Canvas site automatically.
Contact Information
Dr. Gerry Benoît
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.
Course Information
Important note:
Please remember that everyone has a different computer setup. For example, many folk say "I use a Mac" or "I use Windows." Great - but you know that within these labels are lots of subsets - Mac El Capital ≠ Ventura, different features may be available and the Intel-chip in some Macs works a lot differently than the M1 and M2 chips do. This isn't an issue for most software but it is a big concern for python libraries. For Windows users, Win95, Win10, Win11 and then there are various "sub builds" that can affect your particular environment.
Some students have software install for work and that in rare cases can conflict with other software like Cygwin. If you can telnet or otherwise get access to a Unix terminal window (at work through SJSU) that might be a good solution. You'll have to contact the SJSU IT Folk for specific directions for connecting to a SJSU unix box and issuing basic Unix commands.
We cannot cover everything in depth, nor can we address individual computer environments, yet we have a course that will definitely present a very useful, applicable, and I hope easily understood set of readings and activities that will establish in your mind's eye an immediately applicable understanding for your personal and work computing needs.
Cheers!
Course Description and Requisites
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
- Course Dates: Classes begin: 2022-08-08
Classes end: 2022-10-02
Labor Day: Sept 05, 2022 - 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.
Graduate Standing or Instructor Consent.
Classroom Protocols
Expectations
Students are expected to participate fully in all class activities. It is expected that students will be open-minded and participate fully in discussions in class and debate in a mature and respectful manner. Use of derogatory, condescending, or offensive language including profanity is prohibited. Disagreement is healthy and perfectly acceptable. Expressing disagreement should always include an explanation of your reasoning and, whenever possible, evidence to support your position. In accordance with San José State University's Policies, the Student Code of Conduct, and applicable state and federal laws, discrimination based on gender, gender identity, gender expression, race, nationality, ethnicity, religion, sexual orientation, or disability is prohibited in any form.
Program Information
Course Workload
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 Goals
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.
Course Learning Outcomes (CLOs)
Upon successful completion of the course, students will be able to:
- Understand the fundamentals of computers, networked systems, and the software tools used to create computer-based solutions.
- Be exposed to the concepts common to programming languages, being sensitized to fundamental computing using a popular programming language.
- 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).
- Learn about how common web frameworks work, popular tool options, and data/file types for sharing data between frameworks/systems.
- 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.
Course Materials
Textbooks
No Textbooks For This Course.
Course Requirements and Assignments
Assignments: Readings, Quizzes, Participation
Each week you complete the readings and hands-on work. Test your comprehension, both by reading the review questions at the end of the lesson and by practice. It might be a challenge but learning how to use your computer, responding to errors, seeing how your particular computing environment works are all critical to computing work.
There are weekly online quizzes. The URL will be posted and you can take the quiz at any time during the week. It's open-book, and you can take each quiz two times, with the higher score being saved. The quiz for a given week is turned off on the first day of the next week - keep up with the schedule - we don't really have the time to fall behind.
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.
Participation: participation in the group chat is required because (a) it’s good to keep in touch with classmates and me, so you feel engaged with the topic and the class, (b) it’s a way of sharing issues you’ve surmounted, ask questions, answer questions, share ideas and discoveries, and (c) lots of useful participation can’t help but lift a grade. [The more you discuss ideas, the more I see about your learning and participation overall contributes 10% of the total grade.]
Submissions and quizzes are due by 11:59 PM Pacific of the due date.
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 |
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.
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 conceptual 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 that's built-in - access it from the Utilities > Terminal menu.
- Because there are so many versions of Windows OS out there, some Windows users may need to download & install the Windows Linux Subsystem (WLS) or a Unix-emulator, such as 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. Or better yet, check out this site (https://www.geeksforgeeks.org/how-to-run-linux-commands-on-windows-10/) for using Unix on Windows 10, without relying on Cygwin.
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.pdfSlides: infm201-Operating systems-1.keySoftware: Terminal window (bash shell; or z-shell zsh).
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 (e.g., meaning 3.8 or 3.11.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. For the latest Python version visit https://www.python.org/downloads/ and pick your OS version if that's an option.
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
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.
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
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.
Grading Information
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 or undergraduate (for BS-ISDA) level work;
For core courses in the MLIS program (not MARA, Informatics, or BS-ISDA) — 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.
Graduate Students are advised that it is their responsibility to maintain a 3.0 Grade Point Average (GPA). Undergraduates must maintain a 2.0 Grade Point Average (GPA).
University Policies
Per University Policy S16-9 (PDF), relevant university policy concerning all courses, such as student responsibilities, academic integrity, accommodations, dropping and adding, consent for recording of class, etc. and available student services (e.g. learning assistance, counseling, and other resources) are listed on the Syllabus Information web page. Make sure to visit this page to review and be aware of these university policies and resources.
Course Schedule
Schedule
Week # | M | T | W | Th | F | S |
1 | Week 1: Concepts & Data | |||||
2 | Week 2: Operating Systems | Quiz 1 Due | ||||
3 | Week 3: Programming Concepts | Quiz 2 Due | ||||
4 | Week 4: Networking/Frameworks | Quiz 3 Due | ||||
5 | Week 5: Frameworks | |||||
6 | Week 6: SLDC | Quiz 4 Due | ||||
7 | Week 7: Modularization | |||||
8 | Week 8: Wrap-up | Project Due |
For the Fall 2023 Schedule for Informatics, Session I (8 Week, 2-Unit Course) Note that quizzes are due the end of the week, e.g., Quiz 1 is due by the end of week 2, which starts on Aug 14, so quiz is due by 11:59 pm on Sunday, Aug 20. |
||
Wk | Date | [Topic] |
1 | Aug 07 | Welcome & Computing Concepts; Unix Lab Web Frameworks-Part 1 All about Data; Networking |
2 | Aug 14 | Operating Systems Encoding Unicode Data Operating Systems Data storage Quiz 1 Due by the end of this week |
3 | Aug 21 | Intro to Python fundamentals Quiz 2 Due |
4 | Aug 28 | Web Frameworks 1 and 2 Quiz 3 Due |
5 | Sep 04 | Web Frameworks 1 and 2, Continued |
6 | Sep 11 | SDLC - Modularization Quiz 4 Due |
7 | Sep 18 | SDLC - Modularization, continued |
8 | Sep 25 | Final Quiz or Project Due |