Competitive/Collaborative Programming Class

ICPC Computer Programming Contest Prep

Problem Solving in Computer Science

Fall 2025 -- CSC 2700 Section 01
1245 Patrick Taylor Hall, 6:00 PM - 7:50 PM



Class Home




[On identifying talented programmers] It’s just enthusiasm. You ask them what’s the most interesting program they worked on. And then you get them to describe it and its algorithms and what’s going on. If they can’t withstand my questioning on their program, then they’re not good. I’m asking them to describe something they’ve done that they’ve spent blood on. I’ve never met anybody who really did spend blood on something who wasn’t eager to describe what they’ve done and how they did it and why. I let them pick the subject. I don’t pick the subject, so I’m the amateur and they’re the professional in this subject. If they can’t stand an amateur asking them questions about their profession, then they don’t belong.
--Ken Thompson
With software there are only two possibilites: either the users control the programme or the programme controls the users. If the programme controls the users, and the developer controls the programme, then the programme is an instrument of unjust power.
--Richard Stallman
The most important property of a program is whether it accomplishes the intention of its user.
--C.A.R. Hoare
Delivering good software today is often better than perfect software tomorrow, so finish things and ship.
--David Thomas
Some of the best programming is done on paper, really. Putting it into the computer is just a minor detail.
--Max Kanat-Alexander
I'm not a great programmer; I'm just a good programmer with great habits.
--Kent Beck
What kind of programmer is so divorced from reality that she thinks she'll get complex software right the first time?
--James Alan Gardner
A language that doesn't affect the way you think about programming is not worth knowing.
--Alan Perlis
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
--John Woods
Know the rules well, so you can break them effectively
--Dalai Lama XIV
Not only is this incomprehensible, but the ink is ugly and the paper is from the wrong kind of tree.
--Professor W.
But while you can always write 'spaghetti code' in a procedural language, object-oriented languages used poorly can add meatballs to your spaghetti.
--Andrew Hunt
Premature optimization is the root of all evil.
--Donald Knuth
People who are really serious about software should make their own hardware
--Alan Kay
It goes against the grain of modern education to teach children to program. What fun is there in making plans, acquiring discipline in organizing thoughts, devoting attention to detail and learning to be self-critical?
--Alan J. Perlis
...I’m not saying simple code takes less time to write. You’d think it would since you end up with less total code, but a good solution isn’t an accretion of code, it’s a distillation of it.
--Robert Nystrom