Ask Questions about RPI Here

@NoKillli is there an online website to learn C++, thanks for any help you can give, I think it is a great idea for them to learn before fall.

I am thinking Khan Academy, but didn’t know if there is another one.

@MomNama

Maybe this one from EDX?
www dot edx dot org/course/introduction-c-microsoft-dev210x-5
or
Coursera
www dot coursera dot org/specializations/c-programming

EDX is pretty good for a lot of free courses. I know my kid is using one of the courses for Physics E&M AP.

Here is some more info for new CS students without any programming background to make your life easier:

Microsoft has a free version of Visual Studio which makes coding soooo much easier. I would have killed for this in the back in dark ages. Once you have a .edu email address, JetBrains lets you have the pro version of many of their products, like this https://www.jetbrains.com/clion My kids use the IDE “IntelliJ” from jetbrains for their Java projects. I’m sure their C/C++ IDE is good also. Our developers at work use their Resharper product.

I am well aware there is a religious debate about beginning students using the command line vs. an IDE. I say go with whatever you can do eliminate barriers to learning the topic. Worry about the other stuff later.

@NoKillli thank you so much, yes will have my son start on it as soon as AP exams are over, because August will be here in no time. So excited for them…RPI is a great school.

Edx and coursera seem both good as we checked them out for my second son a few months ago. We decided however to go with a local community college as he will have a classroom setting that will give him a slightly more rigorous stress level that’ll keep him motivated in learning. There are assignments, lab projects, and exams ofcourse but we won’t be using or transferring any of the credits as he is just there for the exposure. Just wanted to mention this as another option.

@reformedman I checked with all the local colleges, and no they are not offering any classes.

@MomNama if there are none that are local you may consider distance learning which is still affordable since its public and residential state prices. in your state that you are in you can do a search with the words ‘distance learning’ and you will find that there are plenty of community colleges that have online teacher guided classes where students can have text contact with the teacher, ta, or students. Some of these services are software, hybrid, or live.
Hybrid is part online and part in person (test procturing)
Software means the course is entirely software driven online and you can ask questions through some form of portal.
Live is one where it runs on an ontime schedule where everyone meets through an online facecam service like skype.
These services are in the $500-$800 range.
Attending community college in person is around $600-$1000 depending on state.

@MomNama What State are you from ?

@annamom I am in Massachusetts, Pittsfield about an hour from RPI

where is the questionare they use to find your roommate?

Hi, any advice on what elective for a freshman to take.

My S is in Intro to Psychology. He wanted something else, but the class would not fit in or it was closed out. I encouraged some music electives, but he doesn’t want any formal music classes. He just likes to play in a band. I think a lot of electives are filled now by sophs and upperclassman just like the old days when I was in school. They did say each orientation session gets 1/5 the number of open spots so the first orientation doesn’t hog everything.

Figure out your requirements first and enter them into the class scheduler https://yacs.cs.rpi.edu. Now you can see what times are free for electives. BTW, the two numbers in YACS are the # of seats and the # of available spots.

Advisers have pre-registered you for classes before orientation except for the HASS elective. You can talk to an adviser on the first day of orientation and register on the 2nd day at 8AM SHARP. I think the advisers can change around your requirements if you want a different time or class on the first day. Being in the science school, they had him in bio and he dumped it for physics. That is the only text I got from him all day.

Kids were using their phones to register at 8AM to lock down their classes the second day. He blew me off to hang out with his roommate until the end, so I didn’t see him until we were leaving.

Good luck and enjoy orientation if you are going.

@MomNama look at Lynda and Udemy websites for inexpensive high quality courses.

Note my son did well in the DS course. Had a bit of c++ in HS but not much.
That said he did pull many all-nighters.

This is a problem at many colleges and universities. Requiring students participating in orientation to be attached to their phones at 8AM sharp on their second day is unfair to them. Why can’t they register between acceptance and orientation? It is bad at a public university (I do not want my tax $ going to support such a place), it is worse at a private universities where students pay a premium.

@StudentsR1st

The funny this my other son at SUNY did his first registration on the phone with an adviser before orientation. He filled out a worksheet a few weeks before the call. It was an honors program, so maybe that made it easier. I’m not sure how non-honors works. He also had lots of AP and DE, so he was not fighting for a spot in freshman math and science classes and everything went smoothly. Even his first elective was some upper division HASS type course that was not closed.

I think what your other son experienced is best. Hopefully it was on-line and there was the opportunity for an effective on-line discussion. The latter is key to ensuring that parents are confident that their child will be properly advised.

Does anyone know why RPI does not teach C++ as the first course?
I understand data structure courses are in general time consuming, however, in the case of RPI, I suspect a major problem is that many students may not have C++ to begin with.

@annamom
AP-Computer Science A is the high school equivalent first course of college level computer science. For many schools JAVA is the first course and for RPI and many other STEM concentrated colleges the course of preference is Python. Python is a high level language program that can run anywhere python is installed while C++ is a program that needs to get compiled whenever/wherever it is going to run so the complexity is one major factor in learning curve. C++ is a high level language used for controlling hardware and is generally used for embedded hardware while python is an easy to use and easy to learn scripting language that can get any student up and running making games and understanding basic logic flow.

These are some of the reasons why Python, is comparative and an acceptable equivalent to high school AP-CompSci which is currently taught in java. C++ although manageable by some, is not considered basic at all, at minimum it would be intermediate but certainly can be considered advanced without a doubt.

My son did data structures in his second semester and struggled along with everyone else. The misconception here is that it is generally a hard course because the students haven’t learned C++ first. Most schools teach Data Structures without first having taught C++. Data Structures isn’t overly difficult innately as many other schools teach it without issue. In fact one nearby college is notable for having an easy DS course. RPI purposefully uses DS as a weed-out class for transfer enrollment to the compsci major. It’s made hard on purpose and there is much benefit gained from that. If you do a search for jobs on indeed (and other job search sites), with Software as a keyword you will see that Python and C++ are the two most sought after criteria sought after by companies. Python is a very useful so I’m glad it’s taught there.

As others have said on the reddit, DS is very doable as long as you start the homeworks early and give it the proper number of hours of study that it demands. My son did just that and has been tutoring DS since then.

@reformedman I do not disagree with you, in particular, C++ is useful.
I looked into the material (lecture notes and homework) for the past semester, I think the material is no more difficult than many other colleges, however, from many reddit comments, I think students are saying the homework requires many hours/week. I believe a major reason is because students taking the course and without background in C++ will found the programming assignment challenging.
I don’t think it is truly weed out though as I recalled reading someone mentioned they got C in DS but higher grades in upper level classes. Hence, I wonder why RPI teaches C++ in the first level course and then using C++ in DS.

After that, I think python is pretty easy to master or even self-taught.

@annamom @reformedman Data Structures at RPI is harder in my opinion than at a lot of schools, particularly state schools, by a pretty big margin. It’s also not common for freshman to take data structures in their first or second semester at other schools. At most schools, data structures is taken in sophomore or junior year. Some of my fellow interns that went to Binghamton told me that they took data structures in Java and it was a joke. They also did a lot less than we did at RPI in terms of actual data structures they studied and algorithms. If you are comparing data structures at RPI to the course at peer schools, I would agree it’s pretty much the same. I also don’t think C++ is the main reason the course is so hard.

The homework assignments, even if you’re a prodigy, take a very long time (10-40 hours a week). If you are taking a lot of courses, it really adds up. You also cover a lot in data structures at RPI that is usually covered at algorithms in a lot of schools and you don’t just do basic trees, etc. you do a lot of niche data structures that are really annoying. They also don’t necessarily let you use the data structures provided by the C++ programming language on most assignments, but they make you create your own data structures and then use them to solve a complicated problem (say, using Markov chains to analyze data within certain times with memory allocation). Here’s an example homework assignment from the course: http://www.cs.rpi.edu/academics/courses/fall17/csci1200/hw/10_image_comparison_hashing/hw.pdf. Remember, you do this in your first semester of college.

Even beyond that, the curve is absolutely awful. Around 30 percent of the course drops and for those that stick around an additional 20 to thirty percent fail. The curve gets worse as the semester goes on since the dumber students drop which makes the average scores go higher. If you are below a set amount below the average in any section of the course (homeworks, labs, tests) you instantly fail the course, even if you have a C average (for example) overall or you fall 0.5% below the cut off. The course also has around 250 (or more) students so it’s very hard to get attention. You also cannot collaborate on homework assignments or labs or else you’ll fail, which also makes it difficult.