hi my name is Chris Brooks I'm a computer science Professor here at the University of San Francisco I'm really excited to talk to you today about course registration and the classes you can sign up for so let's get started okay so let's take a look at the computer science major and see what the requirements are so to graduate with a Bachelor of Science and computer science from the University of San Francisco you need to complete 128 units total of those 128 units 44 of those are associated with our Core Curriculum there's another 52 units associated with the Cs major but good news there's four units of overlap between the Core Curriculum and the major because uh math 109 calculus counts for both so you really only need 48 units to graduate on top of that you're going to need 36 units of open electives CU 36 + 48 + 44 is 128 within that 12 units you'll need to take a community engaged learning course and a cultural diversity course some of those will satisfy a core requirement as well you are also going to need to take two semesters of foreign language the only exception to this is if you place out of this because you're either multilingual or because you took a foreign language in high school and we'll talk about that in just a second so all computer science students need to take at least two placement tests uh that those are the math placement test and the computer science placement test and they're going to determine which math class and which CS class you start out in and I'll talk you through the sequence in just a second if you want to place out of a foreign language you should take the foreign language placement test as well for the appropriate language that that you're interested in if you don't want to do that and you just want to take your normal standard forign language you don't need to take this test everybody needs to take the math placement and the s placement though even if you want to start at the beginning of the sequence let's talk a little about the major and then we'll get into these undergraduate sequences so the major consists of 20 units of lower division classes those are the ones you take in your first two years 20 units of upper division that's usually what you'll take in your Junior and Senior year and there's also 12 units of math you'll take the math as a lower division student there's a science core requirement that must maintain a lab you can take that at any time uh during your career most students take it in their first two years uh when their schedules are a little more flexible and if you look at the URL down here below there's a list of Courses at USF that will satisfy this requirement the big key is it has to have a lab component associated with it let's talk a little bit about the introductory sequences so remember the first thing you're going to do is you're going to take the Cs placement test and based on that it's going to put you into one of three classes students who come in with no programming experience at all you can still be a CS major you don't need any experience to do this if you come in uh never having programmed before never taking a computer science class you'll start out in cs110 which is introdu Introduction to Computing that if you've taken a little bit more computer science or after you've satisfied cs110 say you took a 1 AP class in high school you might start in cs111 which is foundations of program design in Java uh that's the introductory class to the major and it's the class that students who have a little bit of Prior experience wind up in following that is cs112 intermediate programming Java programming and design once in a while students Place into this if they've had really extensive programming experience in high school if you've taken maybe two AP classes uh or if you've taken a course at a community college you might be ready for this class and again the placement test will govern that um most students take cs112 in their second semester at USF meanwhile you're also going to be starting as a first year student in the math sequence and where you start here will depend on your placement score on the math exam so it's really important to take that if you uh Place into math 108 pre-calculus then that's where you'll start if you have a lower score uh and then that leads you into the three classes that are required for the major math 109 which is calculus that leads you to math 201 discret math and then math 202 which is linear algebra and probability most first year students start out in either math 108 if their math skills are a little rusty or math 109 if they're ready for Calculus if you took calculus in high school and scored well in the AP exam then you probably will be allowed to skip that we don't require you to take the second semester of calculus just one semester is plenty in your second year cs112 again that's uh intermediate Java programming leads into cs221 and then CS2 excuse me cs112 and math 2011 together lead to cs245 which is data structures so this is sort of our our Gateway course you'll take it probably in your fourth semester at USF and that's the the lead into all the upper division classes so your goal is by your fourth semester be taking cs245 if you do that you'll be on track and no matter where you start in the introductory sequence this is very doable we'll show you some some examples of this as an upper division student then you'll take CS 272 which is software development you'll take systems courses you'll take a theory class and an applications class and then in your senior year you'll finish up with Senior Team project which is a Hands-On semester long project where you're working with an external partner to build a real world project that's really going to get used it's super fun and give you a little bit of general advice about how to survive as a CS major so again what you want to think about is taking 16 units per semester because 16 * 8 is 128 and that's how many credit you need to graduate that's four courses per semester most of the time there are some times when you might want to take two units more for example we have a career prep class that you might want to take as a sophomore or you might want to take an honors college class something like that that's totally fine just try to stick to 16 units per semester try to take two CS classes or math classes and two other classes uh at the same time two of your core classes only take three computer science classes in the same semester if you can really make the time commitment computer science is a hard major it requires a lot of time outside a class and so you're really going to want to be ready for it if you take three classes at the same time uh career prep again is an optional open elective it doesn't count towards the major but it counts towards those 52 units that you need and it counts towards graduation uh I strongly consider uh strongly recommend that you take that and you take cs90 490 excuse me Senior Team project in the fall the reason for that is then in the spring spring when you're looking for an internship or a job you've got that class already completed and you're a more competitive applicant our policies um you need to earn a c or better in all the major courses except Calculus math 109 math 109 just requires a D minus everything else has to be C or better this is really important you can repeat no more than two courses and you can't repeat a course more than twice so two repeats total so if you fail or withdraw from a course more than twice or fail or withdraw from two courses then uh you might be disqualified from the major okay so it's really important to manage your time wisely stay on top of the work and not get behind if you start failing a lot of classes we're going to ask you to to choose a different major let me show you a couple of example schedules the fall the first two years are pretty structured and there's a lot of requirements and so it's easier sometimes to see it as a table so one common way that students come in is that they Place into cs110 and they Place into calculus so they' had no programming experience but they're ready for calc and so in that case here's what your SE your four years might look like you would start with cs110 and math 109 in the fall and then in the spring 111 and math 201 and that would follow up with 112 and math 202 and so on notice here we've got cs245 in the fourth semester exactly where we want it if you came in and placed into cs111 because you had taken a little bit of programming in high school then your schedule might look like this and the main thing to notice here is that we you're able to take cs245 data structures a little bit sooner and you can take it in your third semester uh which sort of loosens things up for you a little bit um but overall the the the schedule is very similar now what if you came in and you needed to take math 108 pre-calculus because you weren't quite ready for calculus yet that's fine we can still do it in four years no problem uh you just want to take math 108 and cs10 in your fall semester and then you take the subsequent classes 111 and math 109 in the spring uh and then we follow that up with2 in your sophomore year and then notice here's our Gateway class cs24 5 still in the fourth semester and if you placed into cs111 but you needed math 108 that's okay we can do that too and it winds up looking like this notice again we still have two cs245 Landing your fourth semester don't forget that you need to take your lab science and your foreign language our little kitten is reminding us of this I recommend that you get these things done early the reason for that is is that Junior and senior classes can be hard to schedule sometimes there's only one section of them uh and so you might have more constraints on your schedule in those years your freshman and sophomore years you're going to have more flexibility and it's easier to get those things done so try to get those out of the way early here's some general advice for you first off get used to using degree works as you're registering you want to look up uh where you're at in your degree evaluation this will show you how many credits you have so far especially if you're transferring in any AP credits or credits from another institution that'll show up there as you're trying to decide what classes to take to satisfy different requirements you can just click on the attribute that it shows there for example in this case we still need a public speaking class and so if you click on this thing here that says attribute equals C1 what will happen is a schedule will pop up that will show you all the available courses that you could take right it'll also show you here for your lab requirement these are the very specific courses uh that you must take to satisfy it and if you click on that what you'll see is a list of all the open sections and their times so it makes it really easy to do your schedule uh and so as you're thinking about what to take for your first semester you'll take your placement tests and that'll put you into a math class and a CS class and then you'll be thinking about what are my other two classes and often students take their rhetoric class in the first semester uh often they take a first year seminar if they can uh or they take their foreign language and get those things done as soon as possible this will also show you how many seats are left as you look at it and how many what other courses are there let me talk a little bit about our credit R policy I mentioned that computer science classes can be a lot of work um the way to think about this is that one unit of credit and lecture means one unit one hour in class and a minimum of two hours outside of class per week so if you're taking a 4unit computer science class you should expect to spend at least four unit four hours per week in class at least eight hours per week outside of class working on homework um sometimes when you get up to your upper division levels that's going to be more like 10 hours it's going to be a little bursty but again that's why I say if you're going to take three computer science courses you really want to manage your time carefully because three computer science courses could mean 30 hours a week outside of class working on homework and if you're working on top of that and you're taking other difficult classes that's really a lot so uh you want to really manage your time well how else to succeed get involved get join us on our slack channel right away uh we a lot of stuff goes on there you'll see a lot of announcements and you'll see discuss questions about other thing going things going on you can sign up at usfc S.S slack.com and make sure you use your Don's uh at usfca email to sign up don't use your personal Gmail account uh there's an advising channel on there you can use that to ask questions um if you have other questions you're welcome to email me at C Brooks usfca.edu or you can email computer science at usfca.edu and then we'll see you for your orientation to the major talk uh later in the semester or in the fall thanks for your attention uh please reach out with any questions you might have