 
 
 
 
 
   
 Next: Prerequisites
 Up: W4444 Programming and Problem
 Previous: The Course
From past end-of-semester evaluations:
Professor Ross is the most professional and organized instructor I've
had at CU. He manages the classroom very well takes attendance and
draws all students into the discussion. Most importantly he minimizes
distractions -- openly condemning folks who use laptops for personal
use and engage in side bar conversations. Very well led class. This
class is also unique in that the students do more than 70% of the
talking. The instructor is a facilitator forcing the students to
engage him and others in class. ...The class is the best
class I've taken at Columbia and I highly recommend it to others.
This course really was quite excellent. One of the best run courses I
have taken at Columbia: the timing for everything was excellent and
nothing ever felt rushed. The course takes work and it takes
imagination but being able to have the courage to try new things and
apply an engineering mind to the problems pays off even when they
aren't successful. As close to a sandbox based class as I have seen.
This course gave a lot of benefits and I think rates as one of the
most positive and memorable experiences of my degree. Much of what we
did is applicable to problem solving in a greater context this course
helped strengthen these skills significantly. It is great to have a
course in computer science in which person to person communication is
so important. Among other things I was impressed by how Prof. Ross
moderated the discussions and gave people personal attention and
memorized all their names. ...In summary a lot
of work a lot of stress but a lot of fun.
Certainly the best course I have taken at Columbia. PPS encourages one
to keep thinking of ways to beat your competition and this is what
makes it unique. The fact that we get to code our ideas makes this
course especially attractive for those who wish to improve their Java
programming skills. Having to come up with your own strategies makes
this course very interesting and students are encouraged to try out
different approeaches even if it doesn't yield the best results. The
open discussions in the bi-weekly classes definitely facilitates the
evolution of new ideas as students need not worry about their own
plans being copied by other teams -- in fact one wishes that his her
ideas are borrowed by the participants as credit will be given to
them. Prof. Ross does a great job of communicating each student's
ideas to the class often developing them into something more useful
for the problem and some times comes up with his own strategy as
well. The rotating teams makes PPS a bit of a lottery but I think
making people work with those they are not familiar with is an added
attraction of the course. The course does involve a lot of work mostly
because of its adversarial nature. This is perfectly fine as the
instructor does warn the students about this in the first class and it
doesn't seem like too much work when you're enjoying it. ...
I really wish there were more courses which are so
open-ended.
One of the few classes that I would voluntarily sit down
and think about hypothetical situations ...for hours on end
This course is one of the best computer science courses offered in the
department. I say this after completing my bachelors and masters in CS
at Columbia. I found the material challenging but fun and problems
required creative as well as technical problem-solving. I enjoyed the
discussion aspect of the class as well and got much more out of this
than many lecture style courses.  This is by far the best CS course
that I have taken across my 5 years of studying Computer Science. It
takes your programming skills to a whole new level and does wonders
for your overall confidence. This is a course that helps you learn not
only if you are really into programming but draws you in with its
magnificent course structure and intense group dynamics it makes
believers out of cynics. It has really been a great experience.
Prof. Ross has literally kept the spirit of problem solving alive. He is truly inspirational.
Spectacular class. One of the best i've ever experienced. 
Prof. Ross led the class well. He managed to integrate the students'
ideas together, while also not getting bogged down with them. This
enabled us to make decidedly forward progress during each session.
This is easily one of the best computer science classes that I've
taken. It should be made compulsary for all CS majors. The learning
that you get from applying all the knowledge that one has accumulated
over the years is very fulfilling. Excellent course, excellent TA,
excellent instructor.
This was a great and very different course. I can't say that I learned
a lot of new knowledge, but I did learn how to think about problems
differently and use new approaches to solve Computer Science
problems. It was a lot of fun, too, being mostly a discussion class
and involving many games. The slightly competitive aspect was good,
and the professor didn't let it get out of hand either.
It's a challenge. But it's worth [it]. 
fantastic course. great student interaction, great class discussion. a
pleasure to attend class.
The first course in my life where I've attended more than
half the classes... in fact I attended all of them.
and enjoyed every minute of it.
The small class size and that too of hand-picked students
really made the discussions to be of very high quality.
And the idea of having different team members for different
problems was fantastic. It was fun interacting with so many
bright and motivated people in a single semester.
A wonderful class with a very different format. Being able to discuss
solutions and devise one's own is far superior to having everyone
implement cookie-cutter solutions based on a textbook. I was able to
learn quite a bit about devising algorithms, far more than I've
learned from any other class in that regard.
Hands down the best CS course I've ever taken. Incredibly
challenging and rewarding, I think everyone should take this
course. It is the culmination of three years of preparatory CS
courses.
By far the most unique course offered by the C.S. department. A
lot of work but worth every minute. Great class.
One of the best CS courses I have taken.
This was a very interesting class and it really refined my problem solving
 skills. This was one of the best classes I took at Columbia.
A very different course that is an asset to the computer science
department.
This was the best course I have ever taken in the Columbia Computer
Science department. The small class size was very important towards this end.
This is one of the best courses at the CS department.  Wonderful for
higher-level students
who are serious about computer science.   A lot of work, though, but as it
should be.
One of the best courses Ive taken at this university. This is what
all CS courses should be like.  ... people more concerned with
creativity ... are going into this department and that this is the
type of class that they need.  The small class size and
discussion-based setup made this class the one of the only
intellectually challenging cs classes out there. You don't have to be
creative to memorize algorithms or hack kernel code, but these open
ended problems excited an interest and an enthusiasm that I've never
seen in almost any other class.
It's unfortunate that I can't select answers better than excellent for
this class. This class was easily my favorite class through all 4 years of
school here. It was fun and it was very challenging. The work was VERY
heavy, but was reasonable considering the nature of the class. 
This is a class that ALL serious computer scientists should consider taking.
It's a class that focuses more on ideas than on the implementation. It's
also a class where teamwork is key and good communication is vital.
Most CS courses are about learning concepts. Those classes teach you those
concepts by beating them into your head in lectures, then in textbooks then
in homework assignments. This class makes it much easier to learn new
material because it's learned in a way that all material should be learned,
through experience and application. All new concepts are discovered and
learned by the students themselves rather than be told what to learn by the
professor.
Professor Ross was an excellent professor. He taught the class the way it
should have been. He maintained his role as a mediator more than as a
teacher which was important to the structure of the class. He allowed us to
think during class (something unheard of in most classes) and to come up
with our own solutions and ideas. I would hope he teaches future offerings
of this class.
Class size was beyond comparison. Having a small class is a wonderful thing.
... To be able to give each student this much
attention can only be a good thing. The class size for this particular class
is important. ... The purpose of the class is to
allow for discussions during class time. Having a class of more than 25
would make that difficult for many students like myself. Having fewer people
in the class makes me more comfortable and gives me the chance to speak my
mind. Something I have not had in ANY class up to this point.
I would and I will recommend this class to all of my computer science
friends.
 
 
 
 
 
   
 Next: Prerequisites
 Up: W4444 Programming and Problem
 Previous: The Course
Ken Ross
2008-09-16