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




One knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it?
--Brian Kernighan
People who are really serious about software should make their own hardware
--Alan Kay
Twenty hours at the keyboard can save you two hours of planning.
--Isaac Traxler
Delivering good software today is often better than perfect software tomorrow, so finish things and ship.
--David Thomas
Perl – The only language that looks the same before and after RSA encryption.
--Keith Bostic
When in doubt, do something.
--Harry Chapin
The most difficult thing in the world is to know how to do a thing and to watch someone else do it wrong without comment.
--Theodore H. White
Everyday life is like programming, I guess. If you love something you can put beauty into it.
--Donald Knuth
That's the thing about people who think they hate computers. What they really hate is lousy programmers.
--Larry Niven
There is nothing good or bad about knowledge itself; morality lies in the application of knowledge.
--Jon Erickson
Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
--Nartin Fowler
I'm not a great programmer; I'm just a good programmer with great habits.
--Kent Beck
If the steps become to big, they become walls...
--Herb Sutter
Think twice, code once.
--Waseem Latif
Walking on water and developing software from a specification are easy if both are frozen.
--Edward V. Berard
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
How do you expect to succeed if you do not know the rules?
--Anonymous
'Martyrdom' is the only way a person can become famous without ability.
--George Bernard Shaw
You are not reading this book because a teacher assigned it to you, you are reading it because you have a desire to learn, and wanting to learn is the biggest advantage you can have.
--Cory Althoff