Q: What is ITP?

A: ITP is an academic program at the Viterbi School of Engineering whose mission is
to offer courses in applied technology to all students at USC. The program offers
cutting edge and hands on courses in web development, new media, 3D animation,
security, programming, video game design and programming, and other innovative
topics in information technology. The unit is a leading source of curriculum
innovation on campus and is also a leader in integrating emerging instructional
technologies in the classroom. We offer minors and specializations; we do not offer
any majors.

Q: Can I get a prerequisite waived?

A: If you would like to take a course and have not taken the proper prerequisite you
will need to contact the instructor of the course and let him/her know why you
think you are prepared. S/he can assess your knowledge and let you know if you're
ready for the course. If you get instructor approval, please forward the instructor's
email to itpadvising@usc.edu along with your student ID number and you will be
granted permission to enroll. Please keep in mind that if you are given permission
to take the more advanced course you can never go back and take the introductory
course and earn credit for it.

Q: Does ITP have waitlists for closed courses?

A: ITP does not have waitlists for their courses. Keep checking back online to see
if a seat opens up. Students change their schedules up until, and even after the
beginning of the semester. If you don't get a seat prior to the start of the semester
you may wish to show up on the first day to see if someone else does not. Please
have a backup plan incase a seat never becomes available.

Q: I would like to take an ITP course but I do not have any programming experience. What can I take?

A: ITP offers many courses that do not require prerequisites or prior programming experience. Please consider taking any of the courses below:ITP Intro Courses Flyer.

Q: I have no computer programming experience but I would like to learn. What course should I take?

A: ITP offers three introductory programming courses that you should consider:

ITP 109 - Introduction to Java Programming

Object-oriented programming language

Great to learn before C++ or Objective-C (used for iOS apps)

Android is built on Java, so this is a good language if you want to learn to create mobile apps

ITP 115 - Programming in Python

Great introductory language

Clear syntax makes it an ideal first language

Scripting language, which is great if you want to go into web development

Used in Maya for digital animation

ITP 165 - Introduction to C++ Programming

The best way to learn programming fundamentals for iOS programming

A good engineering language

Best for high performance applications like video games

If you're still struggling to determine which programming language would be the best fit, please feel free to contact the instructor(s) of the course.

A: At this time ITP courses are taught primarily during the fall and spring semesters. A limited number of ITP courses may be taught in the summer, which can vary from year to year. Please check the schedule of classes for any summer course offerings. All ITP courses are taught in-person on campus and not available through distance education (DEN).

Q: What's the difference between a minor and a specialization?

A:
Minor programs are available to students matriculating in an undergraduate degree program and must be completed simultaneously with the major degree program. Minor course requirements range from 16-26 units, while specializations require fewer units overall. Completion of a minor program will be recorded on the transcript. The student receives a separate minor certificate for each minor completed.
Current USC undergraduates, graduate students, and non-degree seeking students are eligible to pursue a specialization. USC undergraduate students who do not have enough space in their schedule to complete a minor may choose to pursue a specialization instead. Specializations range from 6-12 units. Non-degree seeking students are eligible to enroll as limited status students. Students who complete a specialization are awarded a certificate of completion. All specialization coursework must be taken for a letter grade and the SAP specialization requires a grade of B or better in each course.

Please note ITP minor and specialization coursework is not offered through distance education and must be taken in-person at the University Park Campus.

Q: What does limited status enrollment mean?

A: The limited status program is intended for individuals who wish to take a limited number of courses at USC without formally applying for admission to the university.
Individuals who do not have a bachelor's degree may take up to 16 units. For graduate students, up to 12 units are allowed.
Please refer to: http://www.usc.edu/dept/ARR/registration/limitedstatus.html

Q: Which minor is right for me/what works best with my major?

A: There is no right or wrong major/minor combination. ITP minors are open to all USC undergraduate students. The ITP advisor can help you think through what combination would be best for you, based on your interests and skills.

Q: Does ITP offer any majors or graduate degrees?

A: At this time, ITP does not offer any undergraduate majors or graduate degrees, only
minors and specializations.

Q: What is SAP?

A: The majority of large corporations rely on SAPTM - an Enterprise Resource Planning
(ERP) software – to help manage and streamline their business processes. This
powerful IT solution allows different departments and locations of a company to
share information with one another in real time for more effective communication.
SAP is the world's leading ERP systems vendor. Very few universities provide the
opportunity for learning information systems concepts using SAP. By enrolling in
this specialization, you will gain skills that set you apart from others and prepare
you for a career in the expanding world of ERP systems.
Students pursuing the SAP specialization must receive a B or better in all three
classes, or they will not be eligible for the specialization.

A: Email itpadvising@usc.edu. Mention you've taken ISE 583 and state the 400-level
course you would like to take. Please include your name and student ID number in
the email. The advisor will waive the prerequisite, which will allow you to add the
course.