Are Fancy IDEs Making Programmers Lazy(er) ?
are all these fancy IDEs with more and more features really making use better at debugging or are they just doing the work for us and causing us to forget how to really debug?
This thought came to me today because I've been doing some low-level ASM and I've came across a problem where I'm getting an Address error but I can't find the line its on. My ASM skills are limited to start with but as far as I can tell the code is right. To try and aid me I was trying to figure out what line the error is happening on. I tried running through the code instruction at a time to see when the error happened however I can input data while its in that mode so it doesn't get to the error. I then figured if only I could find a IDE which would allow me to run though the code line by line, skipping out the compile stage and just having the IDE emulate it (Pretty advanced for a ASM IDE).
Then it dawned on me that if I really knew ASM I wouldn't need that kind of thing and is that the same case when it comes to other high level languages like people learning C++ now in the .NET IDE have more features than the VC++6 one and are they lacking the skills at debugging because of this?
As an example people who programmed back the the days before IDEs (i.e. Marty :)) and just text editors will probably be better at debugging because they grow up just looking at the code to figure out what was wrong, instead of just hovering the mouse over your variables and it working everything out for you.
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
I think it first of all is making you more poductively (Wow that must have been a new word...)
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
Here's one thought,
stop doing ASM.
Here's another thought, debugging in asp.net has been the greatest thing since the boston tea party.
No they dont make anyone lazy, they make us efficient...get out of the 50's this is the 21st century hometeam :bigyello:
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
Or even efficient as jhermiz said...:)
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
Quote:
Originally Posted by Electroman
are all these fancy IDEs with more and more features really making use better at debugging or are they just doing the work for us and causing us to forget how to really debug?
This thought came to me today because I've been doing some low-level ASM and I've came across a problem where I'm getting an Address error but I can't find the line its on. My ASM skills are limited to start with but as far as I can tell the code is right. To try and aid me I was trying to figure out what line the error is happening on. I tried running through the code instruction at a time to see when the error happened however I can input data while its in that mode so it doesn't get to the error. I then figured if only I could find a IDE which would allow me to run though the code line by line, skipping out the compile stage and just having the IDE emulate it (Pretty advanced for a ASM IDE).
Then it dawned on me that if I really knew ASM I wouldn't need that kind of thing and is that the same case when it comes to other high level languages like people learning C++ now in the .NET IDE have more features than the VC++6 one and are they lacking the skills at debugging because of this?
As an example people who programmed back the the days before IDEs (i.e. Marty :)) and just text editors will probably be better at debugging because they grow up just looking at the code to figure out what was wrong, instead of just hovering the mouse over your variables and it working everything out for you.
Poor marty :lol:
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
I wasn't saying we should stop making Nice IDEs, I forgot to add to the end that I agree that these increase productivity and decrease debugging time but I was wondering if anyone else thinks the skills behind programming will be deminishing as people come to relie on IDEs more and more. For Companies I wouldn't expect they woudl be too bothered as long as their employees are able to use the tools at hand then they are fine but if the Employee chnages jobs and goes for a job at a company not using the latest IDE then they may appear to be worse at the job because they have been reliant on the nice fancy IDE at the last place.
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
I find that the programmers I have working for me now cannot debug like those I worked with 20 years ago.
The fancy IDE is great - don't get me wrong - but it does add a "layer-of-magic" that takes them away from what's really going on.
I still prefer to step through new code one line at a time - and reviewing the flow and value of variables - only way to check code for production readiness.
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
It's a bit like the good ole days of Win 3.11 and Win 95. Back then, every developer new the OS intimately. They knew what a DLL was, how they worked, how to write and compile one, what an INI file was, it's segments, pif files, the registry how that was different to INI's.
Now-adays, most of that is hidden, especially with WinXP and MS Office even auto-repairs things.
A lot of todays .Net, VB6.0 and C++ developers don't have the level of knowledge about the OS that older developers do. It's been hidden from them, much like IDE's hide things
BUT
that's not a bad thing. Ppl don't learn that stuff because they don't need to. They don't need to know about Win3.11. They don't need to know assembly, or ASM or other redundent technologies. If that stuff gets thrown in their face then they have to learn that stuff but until then - why bother?!?!
21st century pal - it's not a problem imo.
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
hahaha, Electroman is redundent. :afrog:
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
The COBOL program used to give us the program start address, the address where it bombed, and a core dump. it was up to us to find the actual instruction, and then determine why it was failing. then, years later, the COBOL code was listed next to the instructions. This made it a heck of a lot easier to debug. For ASM, just create breakpoints, and debug.print statements until you locate a general area, then focus on that area. You may be able to use a memory dump, as well. I think you can relocate your starting address if you want to.
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
The IDEs take care of a lot of things for you, so that you can concentrate on the main tasks at hand. While they do hide it and therefore make your knowledge of it diminish over time, they do make you a little more productive in a shorter amount of time.
Pros and cons.
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
If you want to use an IDE, go ahead and do it. IDE's are meant to save us time and make us more efficient. Also think of the features that they have - connecting to a source control tool and all that.
FWIW A few years ago we used to take backup of all the C files on a floppy and label them. Now my VB IDE, connects to source safe and does that job for me. In terms of efficiency, IDEs are here to stay.
:wave:
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
Quote:
Originally Posted by Electroman
are all these fancy IDEs with more and more features really making use better at debugging or are they just doing the work for us and causing us to forget how to really debug?
This thought came to me today because I've been doing some low-level ASM and I've came across a problem where I'm getting an Address error but I can't find the line its on. My ASM skills are limited to start with but as far as I can tell the code is right. To try and aid me I was trying to figure out what line the error is happening on. I tried running through the code instruction at a time to see when the error happened however I can input data while its in that mode so it doesn't get to the error. I then figured if only I could find a IDE which would allow me to run though the code line by line, skipping out the compile stage and just having the IDE emulate it (Pretty advanced for a ASM IDE).
Then it dawned on me that if I really knew ASM I wouldn't need that kind of thing and is that the same case when it comes to other high level languages like people learning C++ now in the .NET IDE have more features than the VC++6 one and are they lacking the skills at debugging because of this?
As an example people who programmed back the the days before IDEs (i.e. Marty :)) and just text editors will probably be better at debugging because they grow up just looking at the code to figure out what was wrong, instead of just hovering the mouse over your variables and it working everything out for you.
In a word yes. IDE's are great at catching simple problems like typos and not terminating you're statements with a simicolon. However to find non-obvious bugs, you have to rely more on you're own skill. Also knowing asm can be a very large plus in this area. For the most part, when a program crashs at runtime most people don't know how to tell what is making it crash, they guess. I would almost bet that some people completely re-write complete algorithms (May not even be near as good as the first one) just because some error's are not so IDE friendly. It helps a ton when you can just click the debug button on the crash message box and understand the assembly and registers. Usually if I have a very hard to find problem, I take it to asm where I can watch all the registers (including all the pointers to memory).
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
Quote:
Originally Posted by Gary Campbell
It's a bit like the good ole days of Win 3.11 and Win 95. Back then, every developer new the OS intimately. They knew what a DLL was, how they worked, how to write and compile one, what an INI file was, it's segments, pif files, the registry how that was different to INI's.
Now-adays, most of that is hidden, especially with WinXP and MS Office even auto-repairs things.
A lot of todays .Net, VB6.0 and C++ developers don't have the level of knowledge about the OS that older developers do. It's been hidden from them, much like IDE's hide things
BUT
that's not a bad thing. Ppl don't learn that stuff because they don't need to. They don't need to know about Win3.11. They don't need to know assembly, or ASM or other redundent technologies. If that stuff gets thrown in their face then they have to learn that stuff but until then - why bother?!?!
21st century pal - it's not a problem imo.
Assembly is still used quite a lot in Games programming ;). However my point isn't to do with ASM its just IDEs in general, I only mentioned the ASM part cos thats what I was doing when this came to me. I could have been learning something else, e.g. ASP.NET, and noticed the same thing.
Yet again I'll say I'm not trying to get everyone to stop using IDEs just wondering if anyone else has noticed whats happening :).
Re: Are Fancy IDEs Making Programmers Lazy(er) ?
Fancy GUI's mean the coder has had to make significant compromises in efficiency and resources, elsewhere in the program.
Take WMP for instance, looks nice a groovy but it falls over and pukes more often than not. Mac's are very slick to look at and so is the OS but we al know what macs do don't we? Try to keep one running unattended for more than 2 hours and you'll know what I mean.
Older software with simpler interfaces (or none at all) tend to work faster and are usually more stable than modern fancy programs that were designed front to back.
Commandline programs are frequently cited as most reliable (and rightly so) because there was no GUI to go wrong. Granted they don't always give their reasons for crashing but they crashed so infrequently as to make this a moot point.
Synopsis: Ban GUI's and welcome the Console-Neuveu revolution.
Real coders write console apps, not pansy-ass GUI ones! :D :lol: