Competitive/Collaborative Programming Class

ICPC Computer Programming Contest Prep

Problem Solving in Computer Science

Spring 2026 -- CSC 2700 Section 01
1218 Patrick Taylor Hall, 6:30 PM - 8:20 PM



Class Home




The three principal virtues of a programmer are Laziness, Impatience, and Hubris. See the Camel Book for why.
--perldoc perl
Happiness should be a function without any parameters.
--Pranshu Midha
Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
--Martin Fowler
The most disastrous thing that you can ever learn is your first programming language.
--Alan Kay
Perl – The only language that looks the same before and after RSA encryption.
--Keith Bostic
What kind of programmer is so divorced from reality that she thinks she'll get complex software right the first time?
--James Alan Gardner
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
--Rick Cook
Everyday life is like programming, I guess. If you love something you can put beauty into it.
--Donald Knuth
A change in perspective is worth 80 IQ points
--Alan Kay
Without requirements and design, programming is the art of adding bugs to an empty text file.
--Louis Srygley
It's got to be the going not the getting there that's good.
--Hary Chapin
The big optimizations come from refining the high-level design, not the individual routines.
--Steve McConnell
Walking on water and developing software from a specification are easy if both are frozen.
--Edward V. Berard
Think twice, code once.
--Waseem Latif
The issue of finding the best possible answer or achieving maximum efficiency usually arises in industry only after serious performance or legal troubles.
--Steven S. Skiena
If the steps become to big, they become walls...
--Herb Sutter
Managers of programming projects aren’t always aware that certain programming issues are matters of religion. If you’re a manager and you try to require compliance with certain programming practices, you’re inviting your programmers’ ire. Here’s a list of religious issues:
■ Programming language
■ Indentation style
■ Placing of braces
■ Choice of IDE
■ Commenting style
■ Efficiency vs. readability tradeoffs
■ Choice of methodology—for example, Scrum vs. Extreme Programming vs. evolutionary delivery ■ Programming utilities
■ Naming conventions
■ Use of gotos
■ Use of global variables
■ Measurements, especially productivity measures such as lines of code per day
--Steve McConnell
College is a waystation - the last convenience store on the road to life-long responsibility.
--Dennis Miller