Competitive/Collaborative Programming Class

ICPC Computer Programming Contest Prep

Problem Solving in Computer Science

Spring 2021 -- CSC 2700 Section 01 (100 Tureaud Hall, 6:30 PM - 8:20 PM)

Without requirements and design, programming is the art of adding bugs to an empty text file.
--Louis Srygley
Some of the best programming is done on paper, really. Putting it into the computer is just a minor detail.
--Max Kanat-Alexander
Our consciousness is programmed. We see things a certain way from a young age - we're programmed to keep doing them that way. Then you have to spend adulthood learning how to overcome it, to read out the programs. Try to create. I want to tell people to create. Just start by creating your day. Then create your life.
--Prince
The most important property of a program is whether it accomplishes the intention of its user.
--C.A.R. Hoare
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.
Not only is this incomprehensible, but the ink is ugly and the paper is from the wrong kind of tree.
--Professor W.
Any fool can write code that a computer can understand. Good programmers write code that humans can understand.
--Martin Fowler
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
Learn the rules like a pro, so you can break them like an artist
--Pablo Picasso
A language that doesn't affect the way you think about programming is not worth knowing.
--Unix Fortune
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
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
Progress is possible only if we train ourselves to think about programs without thinking of them as pieces of executable code.
--Edsger W. Dijkstra
There is nothing good or bad about knowledge itself; morality lies in the application of knowledge.
--Jon Erickson
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
The big optimizations come from refining the high-level design, not the individual routines.
--Steve McConnell
There ain't no rules around here. We are trying to accomplish something.
--Thomas Edison