Competitive/Collaborative Programming Class

ICPC Computer Programming Contest Prep

Problem Solving in Computer Science

Fall 2021 -- CSC 2700 Section 01 (1206 Patrick Taylor, 6:00 PM - 7:50 PM)

A language that doesn't affect the way you think about programming is not worth knowing.
--Unix Fortune
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.
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
Know the rules well, so you can break them effectively
--Dalai Lama XIV
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
Some of the best programming is done on paper, really. Putting it into the computer is just a minor detail.
--Max Kanat-Alexander
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
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live
--John Woods
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
That's the thing about people who think they hate computers. What they really hate is lousy programmers.
--Larry Niven
It's got to be the going not the getting there that's good.
--Hary Chapin