# Thread: Developing good logic skills

1. *Moved to General Discussions*

2. Originally Posted by MK27
I absolutely and very strongly disagree with Snafuist about this. You will be much much better off putting twice as much time into K&R (or whatever) than spending that time reading philosophy (even math philosophy).
But you don't have to: we're sharing the exact same opinion here. fsx got what he asked for, namely book titles.

Greets,
Philip

3. Originally Posted by MK27
Bladactania, it would be stupid or crazy to try reading about computer algorithms if you did not have at least some grounding in at least one language.

How an algorithm is presented doesn't matter; the "egghead" stuff Sharke refers to is probably the worst way to do it though. I believe the purpose is generally not explanatory anyway; it's academic analysis.

So all that being said, the best and most practical explanation of a process is bound to be in real code -- plus, you can count on the fact that the source is an actual programmer. Beat that logic...
Eh, your painting readers and authors with a wide paintbrush there. I find a contradiction that how an algorithm is presented doesn't matter to you but you are here defending a specific approach. This topic in particular is similar to floating point in that you do not need to understand how floating point works internally to use it on a regular basis but knowing how it works is still imperative, because it is easy to abuse a specific circumstance.

That egghead stuff is actually asymptotic analysis, and as you will see notations around other resources to detail an algorithm's run time, it is important to understand. No, the explanation does not need to be complex or even that correct in a mathematical sense. That's why computer science is applied science. You may not even rely on a deep mathematical understanding unless the platform demands that you be stringent with your choices (such as programming a wristwatch). But you should know enough to know what O(n) means and how to classify your own algorithms as O(n). Hence there are nontechnical resources in some texts and online besides technical ones.

That does not make in-depth resources bad or "the worst way to go about it." It depends on the reader's aptitude and circumstance.

edit: fsx was not looking for an algorithm book or anything like that. We're off topic.