Page 1 of 1

Code Smell - Comp Sci or Not

Posted: Sun Mar 23, 2008 8:12 am
by akuma624
Quickly going over some tech news on a Sunday morning, an unfamiliar term caught my eye on slashdot: code smell. I read over the story and it was interesting - basically has to do with a new method of determining the need to refactor code. The thing that strikes me odd of the term used: code smell is this:

Is computer science really a science - like chem, physics, mathematics? If you are in the camp that says - hell yes, then the obvious follow-up question is does it help the community or the general public perceive this discipline as a true science with terms like: code smell?

If you are in the camp that believes computer science really is not a science but more akin to plumbing - having the right tools, access, and trade know how to "get a job done" - then the obvious follow up question is why do most universities in the teach in the dicipline - computer science.

I am in the first group myself and tend to believe that more than 75% of those in the IT field in the US practice the second type of computer science work - more like a plumber or "fix-it type". Anyway I wanted to post this to hopefully get some insight from the group.

RP

Re: Code Smell - Comp Sci or Not

Posted: Sun Mar 23, 2008 10:58 am
by allix
Comp Sci is not designed to make you a brilliant programmer, you get there by experience.
I always refer to people to "Teach Yourself Programming in Ten Years" by Peter Norvig.

source: http://www.norvig.com/21-days.html

Patience is of course applicable to many subjects like learning Spanish, picking up basic verbs and some commonly used nouns and then working through the language at your own pace.


I do consider comp sci as a science because everything that is taught has gone through vigorous peer-reviews to become teaching material as well as being used in the real world industry.

I hope that answer helps...

Re: Code Smell - Comp Sci or Not

Posted: Sun Mar 23, 2008 11:04 am
by snarkout
Comp-sci generally = math and coding/creating new languages, at least IME - I'd say both of those things certainly are sciences. Info-tech is really more akin to the "plumber" analogy you made, especially when it's reduced to the guy in the office who has minor-clue and can setup tcp/ip in the winboxen and reprogram the linksys if it goes tits up. Even when elevated to the RHCE/MCSE/CCIE level, most people with those credentials are more in the "making things work" biz than anything else. There is a lot to understand when it comes to tcp/ip, but the application of it isn't what I'd consider science. Then again, when I think "science" I tend to think lab coat and test tubes, so wtf do I know.