FAQ, Pt. II:

 

Q. I have no prior programming experience, unlike those who have taken CS 3 that you regularly mention. Am I at a disadvantage to those students in terms of workload, grades, etc.?

 

  1. Well, for the first couple weeks, you’re definitely at a disadvantage. The cs3 students have already spent an entire semester learning scheme, higher-order procs, lambdas, recursion, and abstraction – there is no reason why any of them should get less than 100% on all assignments for the first couple weeks.

 

So, you will probably be spending more time and effort than they will for the first couple weeks and your grades over the first few assignments still (probably) won’t be as good as theirs.

 

Fortunately, the class is not curved. It doesn’t matter how well the cs3 students do; you need only be concerned with yourself. Many persons who have not taken cs3 get As and A-s in 61a.

 

I haven’t seen the numbers myself, but I have heard that, statistically speaking, there is no difference between the average final grades of cs3 and non-cs3 students.

 

 

Q. I’m completely lost; I feel very awkward using scheme (I like my c++ much better) and I’m thinking about dropping the course. What do you think?

 

A. It’s almost ironic that scheme is most often harder to learn for people who have prior programming experience in other languages than for those who have never programmed before. Scheme requires a different way of thinking about problems – this can work against people who have had another, different sense of programming per se ingrained in them from the use of other languages.

 

  Once you’ve become accustomed to it, however, you’ll begin thinking about problems in scheme-terms and feeling awkward coding in anything else. By the end of the course, scheme will be a tool that you use without even thinking about it (like writing with a pen). (Heidegger, anyone?)

 

  How quickly you overcome your initial awkwardness with scheme is up to you – the more you play around with it, the faster you’ll become proficient. This class is really about thinking logically – if you are rational, reasonably intelligent, and willing to work very hard at absorbing new concepts, you’ll do very well in the course. If you fail to satisfy any of the three (especially the last), you’ll have a hard time.

 

  If you do decide to stick it out, please be aware that the TAs and I are happy to help anyone who tries to help himself or herself. Don’t be afraid to schedule office hours, etc. – we’re here for you. Also, you may want to look into the recommended text 'Simply Scheme' by Brian Harvey. It is the book used in cs3.

 

Q. I have an Internet connection at home and I’d like to use it to do course material. What do I need?

 

A. A program called ‘ssh client’ which you can get for free from software.berkeley.edu or from the nice people in 333 Soda. If you want a pretty version of emacs (like the one on the machine I use in lecture), you’ll need an X-windows server like ‘exceed’ available at the same locations. There is much help available at www-inst.eecs.berkeley.edu.

 

Q. I don’t have an Internet connection. What do I do?

 

A. Your situation is more precarious. With an Internet connection, you could connect directly to the machines in 310 Davis. Without, you’ll have to do the work on your own computer and then bring it (on disk, maybe) into the labs. There are many subtle differences between the STk that we use on the instructional machiens and the scheme that you get with other programs. If you do decide to write code on your own machine, be sure to test it on a lab computer before you hand it in.

 

  You can try programs called ‘Dr. Scheme’ or the windows version of ‘STk’. Be aware, however, that you will need to load in the Berkeley extensions (called ‘teachpacks in Dr.Scheme) in order to get it to work. I’ll have one of the TAs collect more information on this.