Recently I was asked about some college advice. Not wanting to steer a student in
the wrong direction, I simply gave them some general information. Then a few
days later I came across this article and thought I might share it with you,
College Advice by Joel on Software.I thought he gave some good perspective
on things to keep in mind.
Sun Microsystems
Student Developer Information
FAQs - from the last few weeks
Do you give extra credit? Definitely not! If you've been working all semester you should be just
fine. I don't feel it is fair to give extra credit, because I usually get a few
students that complete all the work and it above average. Thus, I don't feel it
is fair to give extra credit.
Do I need a book? Yes. I can't stress how important the textbook is to your learning. You
will need clarification on topics and additional samples. The text provides
valuable information that will help you be successful in the course. You don't
have to purchase the exact edition, or buy a brand new book, just have a copy of
the book. However, some version of the textbook will be essential to your
learning.
How much work is this course going to require? I'm going to assume that you've signed up for this course ready to
work. Check the schedule for quizzes. Assignments will require work and the
programming projects even more work. I will assume that you're going to spend
hours on them.
How much homework are we going to get? After each topic I will assign homework for that topic. The schedule is
tentative and will be changed based on how fast the course is moving. I have
certain topics that I must cover and others that may change as the course moves
forward.
What about quizzes? There are 8 quizzes on different topics we cover in class. Though only
5% of your grade, this could be the difference between an A and a B or a B an a
C.
Is the course hard? I can't answer this with a definitive answer. This is dependent on your
programming experience (none required) and how fast you pick up the material.
Some pick up the material fast, others not so fast. This is ok, we are human and
these differences are fine, as long as you're working and writing C++ code,
hopefully it will sink in after working with the language.
If I've never programmed before, can I take this course? YES. This is the course for you, hence the "Introduction" in the course
title. You will be required to work. So prepare yourself and you'll do fine.
What compiler can I use? We will use the gnu compiler, g++. You can use any compiler as long as
you write your code to the ANSI standard. In other words, if you compile with
Visual Studio, your code must compile with g++ and vice versa.
What editor can I use? We'll use the g++ compiler. There are a number of editors that you can
use: vi, vim, nano, pico, emacs. I use vim, but recommend nano for beginners to
linux. The easiest way to get the environment use ssh or putty to access the
server.
I don't understand an assignment, what do I do? ASK! ASK! ASK! I have students who don't understand what the requirements
are for an assignment or what is expected. If you fall into this situation, ask
me. This helps me, you, and your fellow classmates. I almost expect you to ask.
What Development Environment do I need for class? We'll use g++ with a text editor. The labs have Visual Studio
installed. If you would like a copy you can download a free version for windows.
If you are using a mac you can use g++ from the command line or Xcode.
Visual Studio 2005 Express Edition. You may use this
application you'll use to write, compile and run your C++ code.
How do I get my grades for assignments/projects/tests?
I return all work submitted to me. Thus, you will receive any
assignments/projects/tests in a hard copy for your records. In addition, I also
use the Online gradebook in MyFC to post grades, therefore, you can view grades
at anytime via the online gradebook. For more information see
Checking Grades Online.
This course is an introduction to the basic principles of programming using a
structured programming language, C/C++. Students will design algorithms, write
external documentation, design and write source code in C/C++, and write
internal documentation for programming problems.
Prequisites:
Math 142 (Trigonometry) or three years of high school mathematics including
trigonometry with grades of "C" or better.
Other Requirements:
one additional lab hour per week (to be arranged)
Ever wonder what modules your .NET exe is dependant upon, check out Dependancy Walker. It shows what functions calls are coming
from other modules. This if an exe doesn't work on a particular machine you can
see if you are missing a dependant dll, ocx, exe, etc.
Want to run Linux OS? VMWare Player
- this is the software I used to run linux on top of Windows. Ubuntu Virtual Machine
- the ubuntu vm to play in the vmware player.
Linux comes in different forms or packages known as
distributions here is the one I showed in class,
Ubuntu. (Linux will not be on any test or quiz, this is simply for
you're own knowledge). Our CS Lab runs
Debian.
Had enough of Office 200X? Try open office for free!
OpenOffice.org is a complete Microsoft Office compatible office suite, and is
the leading open-source office suite for word processing, spreadsheets,
presentations, graphics, databases and more.
C++ Games
1945 Fighter Game(This cool game was developed by a student from my Spring Semester Course)
The Computer Science Associate in Science Degree program requires 24 units of
which 20 units are in required courses. The additional 4 elective units must be
chosen from the restricted electives listed below. A minimum grade of “C” is
required in all required and restricted courses.
Required Courses (20 units) Suggested sequence
CSCI 123 F Intro to Programming Concepts in C++ (4)
CSCI 133 F Data Structures in C++ (4)
MATH 150BF Calculus II (4)
MATH 171 F Discrete Mathematics (4)
MATH 172 F Graph Theory and Linear Algebra (4)
Restricted Electives (4 units)
CSCI 223 F C Language for Mathematics and Science (4)
CSCI 241 F Computer Organization and Assembly Language
Programming (4)