CS 5244 - Internet Software - Professor Oliva

FAQ Subject: Other

Ok, I'm enrolled now, so what's next?
Welcome!  Just as the semester begins, you will receive an email from me with instructions describing how to access the main official course website.  The email will be sent to your vt.edu email address of record at the university, so please be sure you know how to receive email there (and check your forwarding options, if applicable).  If your email is forwarded to an account that is disabled or otherwise refuses to accept the forwarded messages, we'll have no way to contact you.

If you don't receive the welcome message by the end (midnight) of the first day of classes, or if you enrolled within 24 hours of the start of classes, please contact the instructor.

Meanwhile, as soon as possible, please review the technologies for details about what software you'll need.  Install the IDE before class, and be sure to familiarize yourself with it.  The first Java programming assignment generally begins during the first week of class, and is typically due about 10 days later, so please prepare yourself accordingly.  Your experience will be greatly diminished if you can't get started without spending lots of additional time re-learning the practical fundamentals of the Java language (or programming in general).  Please carefully review the prerequisites for more details, as most students tend to overestimate (often significantly) their own level of preparation.

I've heard this is a very difficult class; is it really?
Of course the answer here depends on a lot of factors, not the least of which is what exactly do you consider "difficult" in this context.  This course is not designed to be trivial, and I'm not known for grade inflation or giving out an "easy A" for just showing up.  However, it's not designed to be impossible, either.  The over-riding concern and intent is that you should be able to learn a great deal from this class, no matter what level of background you have when you arrive.

The workload is very closely monitored and balanced. The goal is that it will be challenging enough to keep the interest of more advanced students while ensuring less advanced students are not left behind.  Still, there is often an extremely large gap between the most advanced and the least advanced students; some of you might find the class too easy, some of you might find it is too difficult.  Try to get a feel for the demands of the class as early as possible in the semester.  This is one of the primary reasons the first homework is assigned almost immediately at the start of the semester.

What is assured is that there is definitely a lot of material to cover, and there are several programming assignments (with strict deadlines).   These assignments are apparently harder than most others students encounter in their graduate studies (especially for VTMIT students, who generally have not taken advanced programming classes).  The reason is that you are asked to build real working enterprise applications.  You will be given plenty of help, but often students say they were (mostly pleasantly) surprised by the level of professionalism demanded.

Deadlines in this class are extremely strict.  Assignments must be submitted before 11:00pm on the date due, and more precisely no later than 10:59:59pm.  If you submit your assignment late, you will be penalized for each hour or portion thereof.  Please be sure to carefully review the syllabus for your semester for the exact point deductions.  The point deductions are designed such that it is usually better to submit whatever progress you may have, even if it's incomplete, by the deadline.  As a rule, extensions to deadlines are not granted, especially when requested near the deadlines.  However, if you think you have a special case that merits an exception, please feel free to ask.

Please note that students who are not strong in Java typically find this to be an extremely time-consuming class, since the major assignments throughout the semester all require practical Java programming to complete. If you need to learn Java as we go along, you'll have a (possibly large) additional burden, above and beyond the class requirements (which presume a good working knowledge of Java).  See the prerequisites for more information about the Java expectations.

Perhaps most importantly, please carefully review the feedback of your colleagues who have taken this class to get a better idea of what they thought.

What have other students said about this class/instructor?
Have a look for yourself at the feedback I've received. There is a very wide of cross-section of experiences represented there, so please don't use the reviews of others as your only guideline. Always take into consideration your own situation and your own abilities, recognizing that some of these students were experts in Java, while others were newcomers to programming in general.

The course is already full this semester; can I force-add?
Usually not, but if you believe you have an exceptional case, please ask your faculty advisor to review your situation.  If your faculty advisor agrees, you may be allowed to enroll.  Basically, if  you would be forced to alter your graduate plan of study by not taking this class in some given semester, your case may be considered for a force-add.  Note that students in the VTMIT program are given first preference, followed by CS grad students (if they are allowed to register at all; this varies by semester).

Students in other programs (or those who cannot justify the force-add due to plan of study requirements) should generally monitor the enrollment for the first few weeks of class, to see if any openings become available.  Typically each semester at least a few students drop the class early enough to allow others to enter without the need for a force-add.