Competitive/Collaborative Programming Class

ICPC Computer Programming Contest Prep

Problem Solving in Computer Science

Spring 2025 -- CSC 2700 Section 01
1212 Patrick Taylor, 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
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
Think twice, code once.
--Waseem Latif
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
--John Woods
Without requirements and design, programming is the art of adding bugs to an empty text file.
--Louis Srygley
The personal computer isn't "personal" because it's small and portable and yours to own. It's "personal" because you pour yourself into it - your thoughts, your programming.
--Audrey Watters
It's got to be the going not the getting there that's good.
--Hary Chapin
Good programmers write code that humans can understand.
--Martin Fowler
People who are really serious about software should make their own hardware
--Alan Kay
The big optimizations come from refining the high-level design, not the individual routines.
--Steve McConnell
Einstein repeatedly argued that there must be simplified explanations of nature, because God is not capricious or arbitrary. No such faith comforts the software engineer.
--Frederick P. Brooks Jr.
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
Programming is the art of thinking really hard about how to avoid having to think really hard.
--unknown
Know the rules well, so you can break them effectively
--Dalai Lama XIV