Saturday, 4 May 2013

Designer Vs Programmer Vs Coder Vs Hacker:

A designer is a programmer that takes into account UserStories, design principles (eg. beauty, OO), and FunctionalRequi ­rements, then reconciles all of them into a design or architecture (a large scale reusable design).

A programmer is a coder that is systematic, using tests, documenting their code and some methodology. If they're good, they'll even be aware of and operate at the state of the art, using TestFirst and ExtremeProgramm ­ing.

A coder is anyone who uses a programming language, usually low-level like C++.

A hacker is a technocratic, elitist or obfuscatory coder.
Many different definitions for "hacker", including:

1) A hobby programmer (whether professional or not);
2) a particularly skilled programmer;
3) an undisciplined CowboyCoder who disregards all good SoftwareEnginee ­ring practice, etc.

You seem to lean to #3. Most folks who call themselves"hackers" usually are 1 or 3. I try to avoid this term because of the many different definitions it has.

I don't conceive of hackers as bad programmers, rather as an attitude of unmitigated arrogance and contempt for others. Basically, hackers hate users and fellow coders. Programmers tolerate users and respect fellow coders. And designers respect users.

At its most benign, the hacker attitude is one of total and complete unconcern with anyone else.

Why does a"hobby programmer" program? For no reason, to no purpose, for no person except himself. As soon as you start programming for a reason, towards a goal then the activity ceases to be fun.

I think that is what unifies the benign and malign meanings of hacker.

There are many, who call themselves"hackers", who program for a greater cause (greater than pure enjoyment, self-aggrandize ­ment, or resume-padding) ­. And there are many who eschew the term "hacker" who write code for no other reason than it pays the bills--Money Oriented Programming it's called.

And contempt for users is certainly not a trait limited to hackers/ ­coders--see the AntiPattern The Customers AreIdiots (and related stuff) for more info on that.
True. But I didn't make myself clear regarding 'goals'. I did not mean 'cause' since someone who programs because it's their job to do so is working towards a goal ... unless they genuinely don't care about doing a tolerable job.
Calling yourself hacker doesn't make you a hacker.

To become hacker well established member of hacker community must call you a hacker and of course you have to display extreme expertise at the things you are doing. Hackers also shouldn't generally hate anybody unless this particular person restrictsaccess, is authoritarian, forces hacker into drudgery or wastes his time.

Probably you just met posers.