Sure we are a small company, and only have under a TB of data in our databases, but there are a lot of companies in the same position who shell out ridiculous amounts of money for Oracle (only for the name-brand, nothing else), and then someone ends up stabbing themselves in the eye in frustration (might be a slight exaggeration). Or else pay for a full time DBA; I've worked for a company with 3 developers and 1 full time Oracle DBA - that's just nuts.
My consulting experience holds this to be true as well. I've worked on a number of projects over the years that involved an Oracle database; exactly one really needed Oracle for what they were doing. Everyone else essentially bought a Formula 1 racer complete with pit crew to drop their kid off at soccer games. Most of those projects would've been fine with mySQL. (And, I grant you, for that one massive enterprise project that really needed Oracle and had a sizeable team of DBAs to tune and support it... it worked great and I can't imagine having used anything else in its place.)
As a developer, I prefer to work with MS SQL Server given a choice, just because, specifically from the perspective of a developer who needs to work with the DB as a developer does, but who will probably never need to administrate the DB, which are the case most of the time for me, I find it the easiest to work with. I spend more time working on the parts of the problem that are interesting to me and less time massaging a date into a format that Oracle likes. (Or similar details for Sybase or mySQL... I admit I've never used postgres)
People don't make major choices about their broad vocations simply on money.
Sure they do. Not everyone, of course, but you're kidding yourself if you don't think that there would be more kindergarten teachers and less doctors if the two had identical salaries.
Case in point: one of my roommates in college graduated with a degree in chemical engineering (from a school with a strong/respected program in it), only to become a software consultant because he had an offer to be that for a bigger salary. Seven or eight years later and he's still in IT and not anywhere near chemical engineering.
Going further afield, a ton of art and music majors were retrained by big 5 consulting companies during the tech boom to be IT consultants. I'm not going to tell you money was the sole motivator for all of them, but I'd bet it was a big one for a lot of them.
I think it's safe to assume that it does, honestly. Not so much in the Linux kernel itself, but how many commonly-used OSS applications mimicked features, UI design, etc. from the closest Microsoft equivalent?
A lot of that I'm sure is safe, but I can't imagine that somewhere in there and among Microsoft's untold zillions of software patents that there isn't a (legally) reasonable case that could be made against something OSS that people would care about.
This is really interesting to me because I look at the same information and, for me, the right answer is completely opposite.
I know perl guys who have worked at the same company for 10-15 years, generally maintaining the same perl apps they worked on years ago. They're too valuable for the company to ever let go because they know these "legacy" apps like the back of their hand, but at the same time they rarely if ever get to do much in the way of new development.
Nothing against perl -- I'm not in the camp of people who think perl is a hammer and every problem is a nail, but there are definitely a lot of things for which it'd be my preferred tool -- but I look at a job like that and it scares the shit out of me.
I got into technology because I like learning new things and get excited about using a new tool or language that will do more, easier, than the one I would've used for the same job 5 years ago. That's not for everyone, but to me it goes squarely in the positives column.
.NET development jobs are almost always C# or VB.NET, at least in my experience. I've generally seen more C# projects, so that's probably the way you want to go..NET web development will almost always use ASP.NET, which is like the next generation of ASP. An ASP.NET page looks and feels very different to me than an old school ASP page; your mileage may vary.
C# basic syntax is very, very close to Java. That being said, as someone with a few years of experience with both Java and.NET, I strongly prefer to do.NET work. I find that I spend a lot less time dealing with the nuts and bolts and more time with the parts of a project that are interesting to me. Admittedly, a lot of that is what the.NET framework as a whole does for you vs. what C# specifically does for you. I also have to admit that some of that comes from a tendency of a lot of Java developers I've worked with have to architect and abstract things well past the point of good object-oriented programming into ridiculousness; not something inherently wrong with the Java language but a mindset that feels much more common in that camp to me.
The main piece of advice I'd give you if you're thinking about taking a look at.NET is to try to approach it with an open mind. I've known some brilliant Java/PHP/etc. developers who picked up.NET but were trying, essentially, to write Java code in C# -- often, you can make that work, but there's generally a better way to get things done. There are some cases in which you'd do things differently in.NET than you would in another language, and as long as you're not coming in with the assumption that the.NET way is wrong because it's not the way you'd do it in PHP you'll pick it up in no time.
Google's been producing a number of offerings that go after an area Microsoft's long dominated (the Office suite and its components). Seems like it'd be a smart business move for Microsoft to try to push Google a little on its turf, especially since they've had a (admittedly, much weaker) search offering for a long time.
Also, it seems like advances in searching algorithms might be easily applicable to a lot of existing Microsoft products without even going into Google country.
You raise some interesting points, but I just don't see most of the non-geek users migrating to Linux even still. Non-geeks on Linux always feel like an urban legend to me; certainly I can relate a tale or two of a friend of a friend of a friend who was a non-geek running Redhat (or whatever) and loving it, but I've never actually met one of these people.
You also have to figure that Vista doesn't cost a fortune to the average user, even though in real terms it does. It comes automagically installed when they buy their Dell or Best Buy PC. Sure, they're ultimately still paying for it, but who really knows or cares?
Now Mac, there you have something. There I'm seeing more than a few non-geeks switch teams. There's still no way OSX machines will overtake Vista machines for market share this generation, but it's going to be a lot closer than it has been, I think. Although OSX certainly is superior in a lot of ways, its gains among non-geeks has very little to do with that; rather, it's because of the brilliant idea of the Apple stores and their "geniuses". My father-in-law bought a Mac last year, and he's about as computer illiterate as a man can be and still own a computer. He doesn't seem to have any less serious problems than he did with his Windows machine (somehow), but he loves that he can take them to the people at the Apple store for free instead of having to bug his kids.
Eh, I'm sure a lot of us (being the Slashdot crowd) would be bothered by these things, but I honestly can't see 95%+ of Vista users even noticing.
There are lots of great uses for virtual machines, but you don't need one to surf MySpace and YouTube, send e-mail, download porn, run Word, or any of the things the vast majority of home users will be using their PCs for.
Because the joke is based on a truth that half of the potential audience doesn't agree with, (aka all Republicans are gay child molesters) the humor is lost.
Except half of the audience doesn't believe that. That's not why it's funny.
He who laughs last probably didn't get the joke. It's over your head, and that's okay.
If we abandon the basic nature of what America is supposed to be and one of the very things that made it great because we're afraid of what terrorists might do, I've got news for you: they don't need to kill anyone and they don't need to blow up shit. They've already won.
What's so hard about having to ask a judge for a warrant to wiretap a terrorist? If the FBI or whoever goes to a judge and says "We have these legitimate reasons to think this dude might be a terrorist, can we wiretap him and find out?", no judge is saying no.
There's checks and balances built into our government for a reason. Power corrupts, and power without oversight corrupts a whole lot easier.
Both parties are full of shit. Although it appears that Republicans are simply more full of shit than Democrats at the moment. Don't confuse me with a Democrat, it's just much easier to criticize a party when it owns all three branches of the government.
Amen to that. The question is, how do we take our country back from these yahoos?
I mean, I'm all for voting out the particular yahoos who decided this was a good idea and are telling me the government needs to spy on me without due process for my own safety. No question about that. But does that really effect long-term change in government and how it does things?
Voting for a third party is in the short term throwing your vote away. Is there any way for America as a country to get to a place where it wouldn't be? Is there a better way to bring about reform?
I love this country, but it kills me to see where it's going and what it's doing. There's got to be a way to fix it, but I don't know what that would be.
Fortunately, you're not the bouncer at this club, so to speak.
It's more than a little naive to assume that the only reason someone could have for wanting to work at MS or Sony is material gain.
What country do you live in? Do you approve of everything its government has ever done? The world, sorry to say, is not quite the black and white place you'd like it to be.
I have to believe (perhaps naively) that this isn't going to happen, at least not on the scale the article might suggest.
All things being equal (which, of course, they're not, but...), I don't see how a country which pursues censorship and control of information on the Internet to the degree that China does can innovate and get ahead here. The free flow of ideas is a better soil for the tree of knowledge to grow.
A bunch of other people have brilliantly conveyed that there's so much more to the learning and growing you do in college than your coursework. However, let me also respond to this:
That along the idea of bullshit "core courses" being required for me to get a "well rounded" education is precisely why I don't have a college degree. I'm getting along fine without it and refuse to put up with 4 years of High School Part 2 just to get to graduate school.
This also misses the point, and I don't blame you for it -- before I went to college, I assumed it was meant to prepare me for my career, too.
The irony has been that, even though I have a degree appropriate to my career, the classes required by my major have been the most useless to me in my post-college life.
Most of what you need to know to do any job, you learn doing that job. No one is going to take the time at your job to teach you all the other stuff, and believe it or not, it's worth something.
The constantly changing schema is puzzling also. Did you not plan your database beforehand? I'm guessing this is an XP shop then, eh? XP doesn't stand for 'no planning'. I can understand changes to the schema in the early stages of programming, but if you're getting close to 'multiple releases' then the schema should be pretty solid by now, and the little changes needed to make to DBUnit shouldn't be a big bother.
In theory I'd agree with you, but in practice I've rarely worked on a project of significant size that didn't see DB changes (if small ones) damn near right up until release.
Maybe one of the other developers didn't code or design his part of the database perfectly. Maybe the first few times you run against production-quality data, you discover a few special cases you missed that require an additional piece of data to be tracked. Maybe the DBAs introduce constraints late in the game that force you to add a field or refactor a table or two. Maybe your first real stress test shows you that, while your code is logically correct, it takes 4 minutes to execute a common operation which needs to happen in under 4 seconds, and fixing that requires getting at the data a different way. Maybe requirements change in a significant way two weeks from release, or a new business rule is introduced.
It's never everything, but it's always something. We work in a world where deadlines are often set more by clients needs than the amount of time it would take to do something right. As long as that's true, there are going to be surprises that no design planned for. You can do a lot of things right to minimize it, but it never really goes away.
In the case of software, you can offer a development model that allows the end user to make the software do what s/he wishes without having to consult with you. You tear down the artificial distinction between developers and end-users makes everyone equal, which is intrinsically a good thing.
The problem is, the distinction isn't entirely artificial. Most end users for most projects won't be developers, and most of those who are developers don't want to spend their time working on that project.
The corrallary of what you're saying is that if you're not a developer who wants to throw time/effort at a project, generally, you have no hope of getting features you want added if they're not interesting to the dev team. Good UIs and documentation often fall on this list, but they're not the only items on it.
I think the open source paradigm and community is still evolving, and I can imagine ways in which someday there might be solutions to these problems, but we're not there yet.
Your problem is "one day". I'm approaching two months on OSX, and I still don't know if I like it - too little time.
This is sort of obvious, but I'm not sure if you realize it so I'm goint to point it out anyway:
The vast majority of users aren't interested in spending 3+ months evaluating an operating system. This isn't a momentus decision like choosing a mate, buying a house, or even buying a car to them. It probably doesn't even rate the amount of time they spend picking out a new TV or a prom date. They'll pick one that seems good (or more likely stick with the one their computer came with) and be done with it.
Its also ironic when we were "fringe" users and used browsers like various gecko based browsers or KHTML based browsers, had something like 10% marketshare and we complained that we ere not a target, nor a priority since 90% of the people used IE.
Wow, how things have changed
Not so much, no.:) To a large degree, Slashdot is the fringe. It doesn't represent the normal population, where Firefox is catching on nicely but is still a long, long way from being the majority browser.
Judging the mainstream based on Slashdot is like trying to learn about normal human interaction by people watching at a Star Trek convention.
I'd say you're very close to hitting the nail on the head, and it's a pitfall that's very common in open source projects and among (otherwise brilliant) open source developers.
It's not so much a need to have invented a thing for it to be good, as it is a belief that if I see no need for a tool or feature, such a tool or feature is useless, and anyone who wants it is wrong. The idea that another person might have a different working style or might be trying to accomplish something different with the tool never enters the picture.
There are definitely debugging tasks that are as easy or easier to perform with print/logging statements; equally, there are definitely tasks that are easy or easier to perform with the debugger.
To some degree, I'd argue that writing useful debug output statements requires you to already have a pretty good idea of what is or could be going wrong. Stepping through code in a debugger, even at a fairly rapid pace, can often show me where something unexpected is happening. At that point, if I think debug output statements will narrow the problem down further faster, I'll switch gears.
Both are useful tools; neither should be used to the exclusivity of the other.
Man. It just goes to show you, different strokes for different folks.
Or alternately, maybe different tools are better or worse depending on the kind of work you do.
My last job used Eclipse exclusively. (Theoretically, you could use the free Java IDE of your choice, but for all practical purposes it needed to be Eclipse.)
I'd used VS2003 before that (among other things) and I'm using VS2005 now. I can honestly say that if someone tried to make me use Eclipse again, I'd start looking for a new job. I know a lot of people love it and objectively I have to accept that it's probably very good in some way, but I just can't stand it. I wish I could rationally defend why, but I can't; it's just like nails on a chalkboard to me.
I don't think your preferences are wrong, but they're not for me.
And to keep a bit more on the original topic... using vi/emacs/vim/whatever for Linux-based dev has always worked great for me; that said, I can't imagine developing anything with a graphical interface that way. (I know graphical programs are written for/on Linux; I just haven't personally worked on any.)
Sure we are a small company, and only have under a TB of data in our databases, but there are a lot of companies in the same position who shell out ridiculous amounts of money for Oracle (only for the name-brand, nothing else), and then someone ends up stabbing themselves in the eye in frustration (might be a slight exaggeration). Or else pay for a full time DBA; I've worked for a company with 3 developers and 1 full time Oracle DBA - that's just nuts.
My consulting experience holds this to be true as well. I've worked on a number of projects over the years that involved an Oracle database; exactly one really needed Oracle for what they were doing. Everyone else essentially bought a Formula 1 racer complete with pit crew to drop their kid off at soccer games. Most of those projects would've been fine with mySQL. (And, I grant you, for that one massive enterprise project that really needed Oracle and had a sizeable team of DBAs to tune and support it... it worked great and I can't imagine having used anything else in its place.)
As a developer, I prefer to work with MS SQL Server given a choice, just because, specifically from the perspective of a developer who needs to work with the DB as a developer does, but who will probably never need to administrate the DB, which are the case most of the time for me, I find it the easiest to work with. I spend more time working on the parts of the problem that are interesting to me and less time massaging a date into a format that Oracle likes. (Or similar details for Sybase or mySQL... I admit I've never used postgres)
People don't make major choices about their broad vocations simply on money.
Sure they do. Not everyone, of course, but you're kidding yourself if you don't think that there would be more kindergarten teachers and less doctors if the two had identical salaries.
Case in point: one of my roommates in college graduated with a degree in chemical engineering (from a school with a strong/respected program in it), only to become a software consultant because he had an offer to be that for a bigger salary. Seven or eight years later and he's still in IT and not anywhere near chemical engineering.
Going further afield, a ton of art and music majors were retrained by big 5 consulting companies during the tech boom to be IT consultants. I'm not going to tell you money was the sole motivator for all of them, but I'd bet it was a big one for a lot of them.
I think it's safe to assume that it does, honestly. Not so much in the Linux kernel itself, but how many commonly-used OSS applications mimicked features, UI design, etc. from the closest Microsoft equivalent?
A lot of that I'm sure is safe, but I can't imagine that somewhere in there and among Microsoft's untold zillions of software patents that there isn't a (legally) reasonable case that could be made against something OSS that people would care about.
So the better question, I agree, is: then what?
This is really interesting to me because I look at the same information and, for me, the right answer is completely opposite.
I know perl guys who have worked at the same company for 10-15 years, generally maintaining the same perl apps they worked on years ago. They're too valuable for the company to ever let go because they know these "legacy" apps like the back of their hand, but at the same time they rarely if ever get to do much in the way of new development.
Nothing against perl -- I'm not in the camp of people who think perl is a hammer and every problem is a nail, but there are definitely a lot of things for which it'd be my preferred tool -- but I look at a job like that and it scares the shit out of me.
I got into technology because I like learning new things and get excited about using a new tool or language that will do more, easier, than the one I would've used for the same job 5 years ago. That's not for everyone, but to me it goes squarely in the positives column.
.NET development jobs are almost always C# or VB.NET, at least in my experience. I've generally seen more C# projects, so that's probably the way you want to go. .NET web development will almost always use ASP.NET, which is like the next generation of ASP. An ASP.NET page looks and feels very different to me than an old school ASP page; your mileage may vary.
.NET, I strongly prefer to do .NET work. I find that I spend a lot less time dealing with the nuts and bolts and more time with the parts of a project that are interesting to me. Admittedly, a lot of that is what the .NET framework as a whole does for you vs. what C# specifically does for you. I also have to admit that some of that comes from a tendency of a lot of Java developers I've worked with have to architect and abstract things well past the point of good object-oriented programming into ridiculousness; not something inherently wrong with the Java language but a mindset that feels much more common in that camp to me.
.NET is to try to approach it with an open mind. I've known some brilliant Java/PHP/etc. developers who picked up .NET but were trying, essentially, to write Java code in C# -- often, you can make that work, but there's generally a better way to get things done. There are some cases in which you'd do things differently in .NET than you would in another language, and as long as you're not coming in with the assumption that the .NET way is wrong because it's not the way you'd do it in PHP you'll pick it up in no time.
C# basic syntax is very, very close to Java. That being said, as someone with a few years of experience with both Java and
The main piece of advice I'd give you if you're thinking about taking a look at
It would help if you read the entire grandparent post instead of just the first sentence. :)
Google's been producing a number of offerings that go after an area Microsoft's long dominated (the Office suite and its components). Seems like it'd be a smart business move for Microsoft to try to push Google a little on its turf, especially since they've had a (admittedly, much weaker) search offering for a long time.
Also, it seems like advances in searching algorithms might be easily applicable to a lot of existing Microsoft products without even going into Google country.
And, hey. Microsoft likes to patent stuff.
You raise some interesting points, but I just don't see most of the non-geek users migrating to Linux even still. Non-geeks on Linux always feel like an urban legend to me; certainly I can relate a tale or two of a friend of a friend of a friend who was a non-geek running Redhat (or whatever) and loving it, but I've never actually met one of these people.
You also have to figure that Vista doesn't cost a fortune to the average user, even though in real terms it does. It comes automagically installed when they buy their Dell or Best Buy PC. Sure, they're ultimately still paying for it, but who really knows or cares?
Now Mac, there you have something. There I'm seeing more than a few non-geeks switch teams. There's still no way OSX machines will overtake Vista machines for market share this generation, but it's going to be a lot closer than it has been, I think. Although OSX certainly is superior in a lot of ways, its gains among non-geeks has very little to do with that; rather, it's because of the brilliant idea of the Apple stores and their "geniuses". My father-in-law bought a Mac last year, and he's about as computer illiterate as a man can be and still own a computer. He doesn't seem to have any less serious problems than he did with his Windows machine (somehow), but he loves that he can take them to the people at the Apple store for free instead of having to bug his kids.
Eh, I'm sure a lot of us (being the Slashdot crowd) would be bothered by these things, but I honestly can't see 95%+ of Vista users even noticing.
There are lots of great uses for virtual machines, but you don't need one to surf MySpace and YouTube, send e-mail, download porn, run Word, or any of the things the vast majority of home users will be using their PCs for.
Because the joke is based on a truth that half of the potential audience doesn't agree with, (aka all Republicans are gay child molesters) the humor is lost.
Except half of the audience doesn't believe that. That's not why it's funny.
He who laughs last probably didn't get the joke. It's over your head, and that's okay.
No, it's not trivial. That's sort of the point.
If we abandon the basic nature of what America is supposed to be and one of the very things that made it great because we're afraid of what terrorists might do, I've got news for you: they don't need to kill anyone and they don't need to blow up shit. They've already won.
What's so hard about having to ask a judge for a warrant to wiretap a terrorist? If the FBI or whoever goes to a judge and says "We have these legitimate reasons to think this dude might be a terrorist, can we wiretap him and find out?", no judge is saying no.
There's checks and balances built into our government for a reason. Power corrupts, and power without oversight corrupts a whole lot easier.
Both parties are full of shit. Although it appears that Republicans are simply more full of shit than Democrats at the moment. Don't confuse me with a Democrat, it's just much easier to criticize a party when it owns all three branches of the government.
Amen to that. The question is, how do we take our country back from these yahoos?
I mean, I'm all for voting out the particular yahoos who decided this was a good idea and are telling me the government needs to spy on me without due process for my own safety. No question about that. But does that really effect long-term change in government and how it does things?
Voting for a third party is in the short term throwing your vote away. Is there any way for America as a country to get to a place where it wouldn't be? Is there a better way to bring about reform?
I love this country, but it kills me to see where it's going and what it's doing. There's got to be a way to fix it, but I don't know what that would be.
Fortunately, you're not the bouncer at this club, so to speak.
It's more than a little naive to assume that the only reason someone could have for wanting to work at MS or Sony is material gain.
What country do you live in? Do you approve of everything its government has ever done? The world, sorry to say, is not quite the black and white place you'd like it to be.
I have to believe (perhaps naively) that this isn't going to happen, at least not on the scale the article might suggest.
All things being equal (which, of course, they're not, but...), I don't see how a country which pursues censorship and control of information on the Internet to the degree that China does can innovate and get ahead here. The free flow of ideas is a better soil for the tree of knowledge to grow.
A bunch of other people have brilliantly conveyed that there's so much more to the learning and growing you do in college than your coursework. However, let me also respond to this:
That along the idea of bullshit "core courses" being required for me to get a "well rounded" education is precisely why I don't have a college degree. I'm getting along fine without it and refuse to put up with 4 years of High School Part 2 just to get to graduate school.
This also misses the point, and I don't blame you for it -- before I went to college, I assumed it was meant to prepare me for my career, too.
The irony has been that, even though I have a degree appropriate to my career, the classes required by my major have been the most useless to me in my post-college life.
Most of what you need to know to do any job, you learn doing that job. No one is going to take the time at your job to teach you all the other stuff, and believe it or not, it's worth something.
The constantly changing schema is puzzling also. Did you not plan your database beforehand? I'm guessing this is an XP shop then, eh? XP doesn't stand for 'no planning'. I can understand changes to the schema in the early stages of programming, but if you're getting close to 'multiple releases' then the schema should be pretty solid by now, and the little changes needed to make to DBUnit shouldn't be a big bother.
In theory I'd agree with you, but in practice I've rarely worked on a project of significant size that didn't see DB changes (if small ones) damn near right up until release.
Maybe one of the other developers didn't code or design his part of the database perfectly. Maybe the first few times you run against production-quality data, you discover a few special cases you missed that require an additional piece of data to be tracked. Maybe the DBAs introduce constraints late in the game that force you to add a field or refactor a table or two. Maybe your first real stress test shows you that, while your code is logically correct, it takes 4 minutes to execute a common operation which needs to happen in under 4 seconds, and fixing that requires getting at the data a different way. Maybe requirements change in a significant way two weeks from release, or a new business rule is introduced.
It's never everything, but it's always something. We work in a world where deadlines are often set more by clients needs than the amount of time it would take to do something right. As long as that's true, there are going to be surprises that no design planned for. You can do a lot of things right to minimize it, but it never really goes away.
In the case of software, you can offer a development model that allows the end user to make the software do what s/he wishes without having to consult with you. You tear down the artificial distinction between developers and end-users makes everyone equal, which is intrinsically a good thing.
The problem is, the distinction isn't entirely artificial. Most end users for most projects won't be developers, and most of those who are developers don't want to spend their time working on that project.
The corrallary of what you're saying is that if you're not a developer who wants to throw time/effort at a project, generally, you have no hope of getting features you want added if they're not interesting to the dev team. Good UIs and documentation often fall on this list, but they're not the only items on it.
I think the open source paradigm and community is still evolving, and I can imagine ways in which someday there might be solutions to these problems, but we're not there yet.
Your problem is "one day". I'm approaching two months on OSX, and I still don't know if I like it - too little time.
This is sort of obvious, but I'm not sure if you realize it so I'm goint to point it out anyway:
The vast majority of users aren't interested in spending 3+ months evaluating an operating system. This isn't a momentus decision like choosing a mate, buying a house, or even buying a car to them. It probably doesn't even rate the amount of time they spend picking out a new TV or a prom date. They'll pick one that seems good (or more likely stick with the one their computer came with) and be done with it.
The creator of PHP thinks that PHP is #1 and all others are #2 or lower? Shocking.
They say to a man with a hammer, everything looks like a nail. I'm sure it was even worse for the guy who invented the hammer.
Its also ironic when we were "fringe" users and used browsers like various gecko based browsers or KHTML based browsers, had something like 10% marketshare and we complained that we ere not a target, nor a priority since 90% of the people used IE.
:) To a large degree, Slashdot is the fringe. It doesn't represent the normal population, where Firefox is catching on nicely but is still a long, long way from being the majority browser.
Wow, how things have changed
Not so much, no.
Judging the mainstream based on Slashdot is like trying to learn about normal human interaction by people watching at a Star Trek convention.
I'd say you're very close to hitting the nail on the head, and it's a pitfall that's very common in open source projects and among (otherwise brilliant) open source developers.
It's not so much a need to have invented a thing for it to be good, as it is a belief that if I see no need for a tool or feature, such a tool or feature is useless, and anyone who wants it is wrong. The idea that another person might have a different working style or might be trying to accomplish something different with the tool never enters the picture.
There are definitely debugging tasks that are as easy or easier to perform with print/logging statements; equally, there are definitely tasks that are easy or easier to perform with the debugger.
To some degree, I'd argue that writing useful debug output statements requires you to already have a pretty good idea of what is or could be going wrong. Stepping through code in a debugger, even at a fairly rapid pace, can often show me where something unexpected is happening. At that point, if I think debug output statements will narrow the problem down further faster, I'll switch gears.
Both are useful tools; neither should be used to the exclusivity of the other.
Man. It just goes to show you, different strokes for different folks.
Or alternately, maybe different tools are better or worse depending on the kind of work you do.
My last job used Eclipse exclusively. (Theoretically, you could use the free Java IDE of your choice, but for all practical purposes it needed to be Eclipse.)
I'd used VS2003 before that (among other things) and I'm using VS2005 now. I can honestly say that if someone tried to make me use Eclipse again, I'd start looking for a new job. I know a lot of people love it and objectively I have to accept that it's probably very good in some way, but I just can't stand it. I wish I could rationally defend why, but I can't; it's just like nails on a chalkboard to me.
I don't think your preferences are wrong, but they're not for me.
And to keep a bit more on the original topic... using vi/emacs/vim/whatever for Linux-based dev has always worked great for me; that said, I can't imagine developing anything with a graphical interface that way. (I know graphical programs are written for/on Linux; I just haven't personally worked on any.)