Software: This course uses the Microsoft Visual Basic .NET programming language. All of the necessary software will be available on the computers in the CS Lab. As part of our Academic Alliance agreement with Microsoft, students may obtain a copy of Microsoft Windows XP or Visual Studio .NET software to install on your computer at home as long as the software is used for non-commercial academic use. Contact your instructor if you would like to participate or for further information. You can also download Microsoft VB.Net 2005 Express Edition for free from Microsoft's MSDN site. If you plan to work at home, I ask that you use version 2005 of Visual Studio .NET Professional or Express Edition. Visual Studio .NET requires Windows XP or 2000 as your base operating system.
Course Description: The objective of this course is to introduce students to the fundamentals of computer programming and problem solving using Visual Basic .NET. The emphasis is on the fundamentals of structured and object-oriented programming, syntax, semantics, control structures, arrays, file I/O, testing/debugging, implementation, documentation, and the construction of graphical user interfaces.
Upon completing the course students will understand:
Lab Assignments: There will be a "lab session" held in class every week. Lab assignments are due at the end of the day. Late lab assignments will not be accepted without a valid excuse. You can also complete the lab on your own and submit the program to me if you wish via Blackboard's digital drop box. The lab assignments will be available on the course web page before each lab. Work alone or in pairs (depending on computer availability).
Computer Science Lab
Facility:
When working on your homework, you can use
t he lab is located in CAS 170A. There is
both an "upper" lab (located at the top of the ramp) and a "lower" lab (located
at the bottom of the ramp). The upper lab tends to
get quite hot in the summer. You must have a UAA wolfcard to gain access to the
room. Log in with your UAA
username and password (if that doesn't work, try a blank
password).
Lab technicians: Be careful not to
abuse the goodwill of the lab technicians. Their jobs are to help you by making
sure that you have the resources that enable you to do your work. They are NOT
obligated to train you in using the hardware or software. They are there if a
computer is broken, you can't print, can't log in, etc. If you need help
in understanding a homework problem please confer with me or your
fellow students.
Lab tutor: There will hopefully be an upper-division CS
student serving as a lab tutor for approximately 2 hours each day (hours are
variable, but will likely be after class). The tutor is there to help you with
any programming issues that you may have on a first-come first-served basis.
Homework Assignments: There will be approximately 5 problem assignments throughout the course, although this is subject to change. I prefer the assignments be turned in via email with an attachment for your program.
Late Homework Assignments: Assignments will be accepted late only up to the date that solutions are posted online. Homework will not be accepted after the date solutions are posted. Generally, solutions will be posted one week after the due date, but this may vary. For example, solutions may be posted the same day homework is due if there is a test coming up. The homework grade is penalized 5% for each day late.
Questions: If you have any questions, feel free to come in to my office. In general, I have an open door policy -- if I am available in my office, you are welcome to come by. An even better way to reach me is through email. I check my email frequently and you should receive a response quickly. Email is preferred over telephone and you will probably receive a faster response since I don't check voicemail very frequently. You can also contact me online via ICQ, AIM, or MSN Messenger (see contact info on the home page). I'm often up late and will be glad to answer questions if I'm available!
Exams: There will be one midterm and one final exam. If you must miss an exam, notification must be made in advance. Exams will consist of problems to work through. Typically you will either have to describe the output of some code, write some code yourself, or provide short answers. Each exam will be cumulative since the course material builds upon previously covered material! This means you must keep up in the class, or you will quickly find yourself lost. You will be allowed open-book access for the exams.
Grading: Exams will be graded and returned to you. Grades will be posted on the web site throughout the semester. This summer we will be testing a new graphical password system. If you experience difficulties with the technology then let me know and an alternate means of grade notification will be made available.
Grading breakdown:
Homeworks: 30% (each homework assignment
is worth an equal
amount)
Lab: 20% (each lab
assignment is worth an equal amount)
Exam
1: 25%
Exam 2: 25%
The grade scale is shown in the table below. The grading curve may be lowered if necessary but it will not be raised. This means that if you received an 89% then you will at least get a B+, but may receive a higher grade based on the curve. (Final grades don't include a + or -).
Percentage | Grade | Percentage | Grade |
98-100 | A+ | 80-78 | C+ |
93-98 | A | 78-73 | C |
90-93 | A- | 73-70 | C- |
87-89 | B+ | 70-68 | D+ |
83-87 | B | 68-60 | D |
83-80 | B- | 60-0 | F |
An incomplete grade will only be given for a valid excuse (e.g. medical, death in the family). An incomplete grade does not let you take the class over again, your final grade will be assigned based on work submitted in class and work that remains to be submitted.
Cheating: Students are expected to uphold the UAA standard of conduct relating to academic dishonesty outlined in the UAA catalog and student handbook. Cheating is not tolerated and constitutes grounds for dismissal. For this class, it is permissible and encouraged to assist classmates in general discussions of how to attack the homework problems. It is not permissible to copy another's work (or portions of it) and represent it as your own.