CS 510 Fall 2022
For more information on applying to the CS MS program, see http://cs.indstate.edu/info/apply.html
CS 510 is Fast Track Introduction to Programming. The course has no pre-reqs (can be taken by those with no prior CS or programming experience) and is meant to (a) get you programming (in python), and (b) get you ready to pass the admissions interview (python programming and basic algorithms / data structures). CS 510 would count as elective credit towards the MS degree.
Who should Register
Domestic students can apply to ISU as a Guest/Unclassifed student and take the course either face to face or online. To do this, click on the Apply button, click to create an account if this is your first time starting an application at ISU, choose Graduate when prompted between Graduate or Undergraduate, for the Field of Interest choose "Guest Admission / Unclassified", and for Program of Study choose "Guest Admission (One Semester Only)". Choose the term that you plan to take the course, and complete the remaining required fields.
International students can check back here for course info (sample quizzes, reading assignments, programming assignments, tutorials, etc.) that will be posted publicly throughout the fall 2022 term. International students outside of the US are not in general allowed to take courses online inside of the US without being enrolled in a degree program. International persons who are in the US on a visa of some type might be allowed to take the course (in particular, those on F2 or H4 likely would be allowed).
For those with no or little prior programming and CS experience, you are highly recommended to take this course to get you ready to apply to the CS MS program. For international students, you can get some benefit by following along with the material that will be posted here.
The specific learning outcomes of the course are as follows.
- Can install and competently use terminal programs (e.g., Putty, Terminal) to connect to remote linux servers.
- Can navigate the linux file system within the text-based terminal, including dealing with files and directories, copying files, setting file permissions.
- Can install and competently use file transfer programs (e.g., FileZilla, WinSCP, sftp) to move files between your personal computer and Linux servers.
- Can use a text editor (e.g. vim, emacs, nano, jove) within the terminal to edit text files (including programs).
- Have a basic understanding of the file structure and settings within Linux.
- Have a working knowledge of particular quirks of the ISU CS server, including the homework handin system.
- Understanding how different base systems work, in particular binary, octal, decimal, and hexadecimal. Able to convert numbers between different base systems, and why these are important/useful in computing.
- Understanding of logarithms and exponentials, including the rules for using these, and their use in algorithm analysis.
- Know, can use, and can derive the formulas for arithmetic and geometric summations, and apply these in algorithm anslysis.
- Understanding of Boolean logic, can evaluate complicated Boolean expressions, can explain and derive truth tables for basic Boolean expressions, can apply DeMorgan's laws to Boolean expressions.
See also Math for CS - Getting Started.
Data Structures and Algorithms
Course content will be coming online later in summer 2022.