I know I shouldn't be posting without reading the entire thread but I got tired after page 3.
Look, what the different terms mean and whether or not they are demeaning completely depends on both the speaker and the beholder. The term "hacker" used to once belong to anyone that really knew how to use a computer, for good or for bad. However, with everyone using computers nowadays, the definition had to evolve. But it is worth noting that by the stands of two decades ago or more, everyone capable of posting to this site would be considered a hacker back in the day.
Today, the definition of a hacker has changed significantly, but it is still subject to who is speaking and listening. I sat in on a presentation given by a representative of Red Hat. Every time he wanted to refer to the audience, being made mostly of computer related majors, he would use the term hackers. However, this is few and far between when the term gets used like this. More often in the professional computing community, an address to the community is actually meant to be addressed to a certain sub-group or sub-community. Each community has certain terms that they can be addressed by.
As a software engineering major, I have been called several terms. Hacker was one of them, as mentioned above, and was by no means meant to be a negative term. As someone that programs, most conferences addressed to my area is addressed only to the area of software development. So with the assumption that most IT majors are not included, more specific terms may be applied. To address us in a positive light, most would refer to us as "developers." However, a negative term does exist when used correctly, which it is in most cases. The term is "code monkey." The idea that the person writing software has sold their soul to the corporate system for a mediocre, underpaid job and that they will amount to nothing more. However, there are limiting times when even this term can be seen in a positive light. Most of the time this will be when one developer is talking with another developer. It is kind of like how only black people can make black jokes without being racist. Only developers can really make code monkey jokes without it being negative.
Just as similarly, IT professionals also have similar terminology. I am not a member of this community, however, so all I can do is speculate what the terminology might be. Since IT professionals are often in charge or maintaining complex computer systems with already existing products, a positive light term for this is often "admins" while a negative light term would be something like "script kiddie." But again, it probably would not be out of the question to see two IT professionals talking and have one call the other a script kiddie and then both laugh their asses off about it.
Another thing to understand is that while within the community, the term "hacker" can be positive, often the use of the term from someone outside of the community is often taken as something negative. However, this negative light is a bit different. While the speaker might have meant it as a compliment or insult to the other's profession, it is usually received by a member of the community as being told off by someone completely ignorant of the field. Many of those that would fall under the title of "hacker" often also fall under the category of anti-social nerds or geeks. It is these people that are often the most easily offended due to their nature. They often see the other person as not only ignorant, but expendable. They see others as being wasteful within the job force due to the nature of most other jobs being easily replaceable my machinery and computers programmed by the said "hackers." In fact, it is often joked within the community how many cubicle jobs could easily be replaced with a perl script.
Now within the community, what most people call a "hacker" is actually a "cracker." And no, I am not referring to the negative term for Caucasians. This is due to the nature between the two terms. While developers "hack" together software and IT professionals "hack" together complex computer systems, the incorrectly termed hackers illegally "crack" open software for their own use. Most often to bypass DRM. Now the ethics are often debated because software is technically just digital information and many programmers feel that all information should be free and therefore feel that the removal of DRM from software is justified. I have my own personal opinions about how software and copyrights should mingle, but that is irrelevant to this thread. I just hope this post was still relevant by the time I finished it.
[edit]
I forgot to add in a little something. A cracker may or may not use security exploits. The best example of this would be the infamous cracker, Kevin Mitnik. Assuming what he pleads is true, he actually relied on a technique known as social engineering. He released a book about his exploits called "The Art of Deception." The idea behind social engineering is instead of hacking through the technology, he simply tricked humans with access to give him access. Basically it is the idea of being a con artist for the sake of computer exploitation.
As a remark on the "lazy"ness of these "hackers," the notion is questionable. It does take a large deal of intelligence to do this kind of work and a great deal of time invested in learning about it and relevant fields. However, even I will say that if the same end desired effect can be made by cutting a corner or taking short cuts, we often will. It does often result is messier and harder to use code and software most of the time, but many developers are willing to make it just work now so they can afford to make it work well tomorrow. Also "hackers" that are actually true to the term "script kiddies" are probably the only true lazy hackers, as they rely on a script already written for them to do all the work for them. They just give the script the environment to run in. It takes minimal work to do this and is probably one of the few positions within the community worthy of the "lazy" tag.