Bad Developers
-
I am having the most frustrating week. We have a major project due with tight deal lines and the business decided to bring in a consultant to give us a hand. Oh this is so frustrating. This guy has to be on of the worst developers I have ever seen. I have been spending the last 3 days rewritting all his code. He just puts everything into one giant function. Nothing can be reused. I had to go back and extract everything to make classes and new functions. I am constantly telling him he can not do this yet he continues to do what he wants. How can he survive as and OO developer like this! I dont know how much more I can take it. :mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
-
I am having the most frustrating week. We have a major project due with tight deal lines and the business decided to bring in a consultant to give us a hand. Oh this is so frustrating. This guy has to be on of the worst developers I have ever seen. I have been spending the last 3 days rewritting all his code. He just puts everything into one giant function. Nothing can be reused. I had to go back and extract everything to make classes and new functions. I am constantly telling him he can not do this yet he continues to do what he wants. How can he survive as and OO developer like this! I dont know how much more I can take it. :mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
If you read The Daily WTF[^] you'll see that it appears to be fairly common for "Highly paid consultants" to not be able to program for toffee (yet bosses will call them in and expect them to be better than the developers they've already got) -- Help me! I'm turning into a grapefruit! Buzzwords!
-
I am having the most frustrating week. We have a major project due with tight deal lines and the business decided to bring in a consultant to give us a hand. Oh this is so frustrating. This guy has to be on of the worst developers I have ever seen. I have been spending the last 3 days rewritting all his code. He just puts everything into one giant function. Nothing can be reused. I had to go back and extract everything to make classes and new functions. I am constantly telling him he can not do this yet he continues to do what he wants. How can he survive as and OO developer like this! I dont know how much more I can take it. :mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
What does your line manager think? The tigress is here :-D
-
I am having the most frustrating week. We have a major project due with tight deal lines and the business decided to bring in a consultant to give us a hand. Oh this is so frustrating. This guy has to be on of the worst developers I have ever seen. I have been spending the last 3 days rewritting all his code. He just puts everything into one giant function. Nothing can be reused. I had to go back and extract everything to make classes and new functions. I am constantly telling him he can not do this yet he continues to do what he wants. How can he survive as and OO developer like this! I dont know how much more I can take it. :mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
If you name and shame hime we all will give him a wide berth and he'll have to go into a job to which he is more suited... ;) I guess the two who voted a '1' on this are getting worried it might be them... -- modifed at 13:03 Thursday 25th August, 2005
-
What does your line manager think? The tigress is here :-D
I have talked to 2 other developers about him. One dev (who I am working with on the project) just things we should sit down with him and try and get him to use our standards. Which I have done a few times and still this morning I had to explain to him how 2 pieces of code should be in two seperate functions and he looked at me like I had 3 heads. Another dev things I should go to my boss and just let him know that the guy sucks and I am rewritting his code. My only consern his that we have so little time. So for now I am having him do some testing....not sure what I should do about the whole situation...ahhhhhhh :mad::mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
-
I am having the most frustrating week. We have a major project due with tight deal lines and the business decided to bring in a consultant to give us a hand. Oh this is so frustrating. This guy has to be on of the worst developers I have ever seen. I have been spending the last 3 days rewritting all his code. He just puts everything into one giant function. Nothing can be reused. I had to go back and extract everything to make classes and new functions. I am constantly telling him he can not do this yet he continues to do what he wants. How can he survive as and OO developer like this! I dont know how much more I can take it. :mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
Easier to fix than you might think. At my old employers {INSERT INFLAMMATORY COMMENT OF YOUR CHOICE HERE} there was a simple fix. For every hour you spent fixing their code they got paid for two less. 2 because of the hour you lost of your own because of the hour you spent fixing theirs. Since this is also not in the requirements it gets billed at time and a half as it's a late change with no notice. This will work if you boss has the nads to do it. The guy will get the hint or he won't get any money. - Rex
My name is Maximus Decimus Meridius, commander of the Armies of the North, General of the Felix Legions, loyal servant to the true emperor, Marcus Aurelius. Father to a murdered son, husband to a murdered wife. And I will finish this project, in this life or the next. Slightly modified " from Gladiator. Code-frog System Architects, Inc.
-
I am having the most frustrating week. We have a major project due with tight deal lines and the business decided to bring in a consultant to give us a hand. Oh this is so frustrating. This guy has to be on of the worst developers I have ever seen. I have been spending the last 3 days rewritting all his code. He just puts everything into one giant function. Nothing can be reused. I had to go back and extract everything to make classes and new functions. I am constantly telling him he can not do this yet he continues to do what he wants. How can he survive as and OO developer like this! I dont know how much more I can take it. :mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
I am totally there with you dude. I've taken over automated builds of one of our website projects (surprise surprise, we hired a consultant) with NAnt and CruiseControl... ...which was a huge mistake to volunteer for. Some of the codebehind classes for these ASP.NET pages inherit from this mysterious gargantuan "NCPage" page that has a bazillion helper functions. The other ASP.NET pages inherit from the normal Page class. There's almost no exception handling anywhere. Some of the classes aren't even in namespaces (this is VB.NET...not C#). There's a function in the ginorma-class named GetUserType() which returns a string. In another part of the application, there's a function in an inherited class called GetUserType() which returns a DataSet (:~ )...but I'm not sure why GetUserType(), indicating a single return value, would return a DataSet. And, instead of using a real ORM layer, there's this stupid DBAccessor class that is just a crappy wrapper over the ADO.NET classes. And, I think, by far the worst design decision made by these people was the decision to use DreamWeaver for ASP.NET development. If you've ever seen this bastardized implementation of ASP.NET, you'll know what I'm talking about. They've got a <mm:DataSet /> server control that is a very covoluted wrapper over the actual .NET DataSet class. And, because there's almost no documentation on the different attributes and child elements it expects, I had to open up Reflector and dig into the source to figure out why everything broke when I changed the AdapterType to SQLClient rather than the OleDb provider they had been using before. It's hellish.
[Cheshire] I can't afford those plastic things to cover the electric sockets so I just draw bunny faces on the electric outlets to scare the kids away from them... [RLtim] Newsflash! Kids aren't afraid of bunnies. [Cheshire] Oh they will be... -Bash.org -- modifed at 11:39 Thursday 25th August, 2005
-
I am totally there with you dude. I've taken over automated builds of one of our website projects (surprise surprise, we hired a consultant) with NAnt and CruiseControl... ...which was a huge mistake to volunteer for. Some of the codebehind classes for these ASP.NET pages inherit from this mysterious gargantuan "NCPage" page that has a bazillion helper functions. The other ASP.NET pages inherit from the normal Page class. There's almost no exception handling anywhere. Some of the classes aren't even in namespaces (this is VB.NET...not C#). There's a function in the ginorma-class named GetUserType() which returns a string. In another part of the application, there's a function in an inherited class called GetUserType() which returns a DataSet (:~ )...but I'm not sure why GetUserType(), indicating a single return value, would return a DataSet. And, instead of using a real ORM layer, there's this stupid DBAccessor class that is just a crappy wrapper over the ADO.NET classes. And, I think, by far the worst design decision made by these people was the decision to use DreamWeaver for ASP.NET development. If you've ever seen this bastardized implementation of ASP.NET, you'll know what I'm talking about. They've got a <mm:DataSet /> server control that is a very covoluted wrapper over the actual .NET DataSet class. And, because there's almost no documentation on the different attributes and child elements it expects, I had to open up Reflector and dig into the source to figure out why everything broke when I changed the AdapterType to SQLClient rather than the OleDb provider they had been using before. It's hellish.
[Cheshire] I can't afford those plastic things to cover the electric sockets so I just draw bunny faces on the electric outlets to scare the kids away from them... [RLtim] Newsflash! Kids aren't afraid of bunnies. [Cheshire] Oh they will be... -Bash.org -- modifed at 11:39 Thursday 25th August, 2005
David Stone wrote: There's almost no exception handling anywhere Ouch. Cleaning up some mess myself at the mo. Lots of problems are coming from the fact that the consultant who wrote the abomination in question really really missed "On Error Resume Next". Nothing like burying your mistakes :) Ryan
O fools, awake! The rites you sacred hold Are but a cheat contrived by men of old, Who lusted after wealth and gained their lust And died in baseness—and their law is dust. al-Ma'arri (973-1057)
-
I am totally there with you dude. I've taken over automated builds of one of our website projects (surprise surprise, we hired a consultant) with NAnt and CruiseControl... ...which was a huge mistake to volunteer for. Some of the codebehind classes for these ASP.NET pages inherit from this mysterious gargantuan "NCPage" page that has a bazillion helper functions. The other ASP.NET pages inherit from the normal Page class. There's almost no exception handling anywhere. Some of the classes aren't even in namespaces (this is VB.NET...not C#). There's a function in the ginorma-class named GetUserType() which returns a string. In another part of the application, there's a function in an inherited class called GetUserType() which returns a DataSet (:~ )...but I'm not sure why GetUserType(), indicating a single return value, would return a DataSet. And, instead of using a real ORM layer, there's this stupid DBAccessor class that is just a crappy wrapper over the ADO.NET classes. And, I think, by far the worst design decision made by these people was the decision to use DreamWeaver for ASP.NET development. If you've ever seen this bastardized implementation of ASP.NET, you'll know what I'm talking about. They've got a <mm:DataSet /> server control that is a very covoluted wrapper over the actual .NET DataSet class. And, because there's almost no documentation on the different attributes and child elements it expects, I had to open up Reflector and dig into the source to figure out why everything broke when I changed the AdapterType to SQLClient rather than the OleDb provider they had been using before. It's hellish.
[Cheshire] I can't afford those plastic things to cover the electric sockets so I just draw bunny faces on the electric outlets to scare the kids away from them... [RLtim] Newsflash! Kids aren't afraid of bunnies. [Cheshire] Oh they will be... -Bash.org -- modifed at 11:39 Thursday 25th August, 2005
-
I am having the most frustrating week. We have a major project due with tight deal lines and the business decided to bring in a consultant to give us a hand. Oh this is so frustrating. This guy has to be on of the worst developers I have ever seen. I have been spending the last 3 days rewritting all his code. He just puts everything into one giant function. Nothing can be reused. I had to go back and extract everything to make classes and new functions. I am constantly telling him he can not do this yet he continues to do what he wants. How can he survive as and OO developer like this! I dont know how much more I can take it. :mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
why rewrite it, just use it, when/if it fails just say sorry I can't follow the 'consultants' code, you will have to call him back to fix it. That might bring matters to a head, but I doubt it, after all one one person gets the blame, i.e. YOU!
"An education isn't how much you have committed to memory, or even how much you know. It's being able to differentiate between what you do know and what you don't." - Anatole France
-
I have talked to 2 other developers about him. One dev (who I am working with on the project) just things we should sit down with him and try and get him to use our standards. Which I have done a few times and still this morning I had to explain to him how 2 pieces of code should be in two seperate functions and he looked at me like I had 3 heads. Another dev things I should go to my boss and just let him know that the guy sucks and I am rewritting his code. My only consern his that we have so little time. So for now I am having him do some testing....not sure what I should do about the whole situation...ahhhhhhh :mad::mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
BrockVnm wrote: Another dev things I should go to my boss and just let him know that the guy sucks and I am rewritting his code. I concur but be very careful how you present it. Only put the guy on the defensive as a last resort. Speak about the code not the author. Things will go much more smoothly as a result. Provide measurable examples of what he did vs. what you replaced it with. If the code is simply ill-formatted as opposed to being outright wrong, you might not get anywhere.
"One must learn from the bite of the fire to leave it alone." - Native American Proverb
-
I am having the most frustrating week. We have a major project due with tight deal lines and the business decided to bring in a consultant to give us a hand. Oh this is so frustrating. This guy has to be on of the worst developers I have ever seen. I have been spending the last 3 days rewritting all his code. He just puts everything into one giant function. Nothing can be reused. I had to go back and extract everything to make classes and new functions. I am constantly telling him he can not do this yet he continues to do what he wants. How can he survive as and OO developer like this! I dont know how much more I can take it. :mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
Make sure you have the documenation to back it up with and then talk to your boss. Show him where the guy isn't following the set standards and that you have talked with him about it. Show him the time wasted by you having to rework all the code and the effect it is having on the project. By all means don't work yourself into the ground fixing it to make the deadline. The heroic coder method gets you no where except high expectations and shorter deadlines. As a consultant myself any time I go into a company I am expected to follow the standards for that company. I would be ashamed to work for the same firm with this guy if he is as bad as you say.
-
If you read The Daily WTF[^] you'll see that it appears to be fairly common for "Highly paid consultants" to not be able to program for toffee (yet bosses will call them in and expect them to be better than the developers they've already got) -- Help me! I'm turning into a grapefruit! Buzzwords!
Beat me to it. Also, Joel On Software has written recently a very good article about developer talent. One thing he mentioned was that throwing more developers, even if they are equal in skill, at a problem will not necessarily make the problem be resolved quicker. On the contrary, the communication and code merging overheads, as well as the time it takes for another developer to learn the code base can delay the problem further.
Tech, life, family, faith: Give me a visit. I'm currently blogging about: Who is Jewish, the Trivia Game! Judah Himango
-
Beat me to it. Also, Joel On Software has written recently a very good article about developer talent. One thing he mentioned was that throwing more developers, even if they are equal in skill, at a problem will not necessarily make the problem be resolved quicker. On the contrary, the communication and code merging overheads, as well as the time it takes for another developer to learn the code base can delay the problem further.
Tech, life, family, faith: Give me a visit. I'm currently blogging about: Who is Jewish, the Trivia Game! Judah Himango
Judah Himango wrote: Also, Joel On Software has written recently a very good article about developer talent. One thing he mentioned was that throwing more developers, even if they are equal in skill, at a problem will not necessarily make the problem be resolved quicker. On the contrary, the communication and code merging overheads, as well as the time it takes for another developer to learn the code base can delay the problem further. This is an issue that has been noticed way back when: The Mythical Man-Month[^] Quran Translation Intro Discover
-
I am having the most frustrating week. We have a major project due with tight deal lines and the business decided to bring in a consultant to give us a hand. Oh this is so frustrating. This guy has to be on of the worst developers I have ever seen. I have been spending the last 3 days rewritting all his code. He just puts everything into one giant function. Nothing can be reused. I had to go back and extract everything to make classes and new functions. I am constantly telling him he can not do this yet he continues to do what he wants. How can he survive as and OO developer like this! I dont know how much more I can take it. :mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
BrockVnm wrote: I have been spending the last 3 days rewritting all his code. Your fault. Now that I have your attention ( ;) ) - Do you have written coding standards? Do you have regular meetings? Is the boss of both of you available? As long as you are going to rewrite his code you are (a) encouraging sloppy code on his side, and (b) putting the "elitist arrogant coder" label on yourself. way 1: push Written Guidelines, and code reviews way 2: Make a call to the boss of both of you: X has written this code you need already, but it's not reusable. Ask if you should (a) Spend company time to refactor his code, (b) Spend company time to write it again in a usable manner, or (c) way 3: In the next meeting, make a mess that you spent Time T just to integrate X' creations into the project, and that you don't think it is your job to nanny your co's
Pandoras Gift #44: Hope. The one that keeps you on suffering.
aber.. "Wie gesagt, der Scheiss is' Therapie"
boost your code || Fold With Us! || sighist | doxygen -
If you name and shame hime we all will give him a wide berth and he'll have to go into a job to which he is more suited... ;) I guess the two who voted a '1' on this are getting worried it might be them... -- modifed at 13:03 Thursday 25th August, 2005
Merrion wrote: I guess the two who voted a '1' on this are getting worried it might be them... Or have no sense of humour. I voted a 5 to try and rebalance the score because your message was both truthful and funny. The best kind of humour. Michael CP Blog [^] Development Blog [^]
-
I see this alot. I dont know how many times I see no error checking. None the less this is one of the current consultants favorite things!
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
BrockVnm wrote: I dont know how many times I see no error checking. None the less this is one of the current consultants favorite things! That's because all their customers care about is time to market. They won't listen any talk about robustness, extensibility, maintainability, or (God forbid!) performance. So why the consultants should care? They put something together as quickly as possible, take the money and leave. If the customers cared more about quality, they would have got it. Sadly, it is rarely the case.
My programming blahblahblah blog. If you ever find anything useful here, please let me know to remove it. -- modifed at 15:26 Thursday 25th August, 2005
-
Judah Himango wrote: Also, Joel On Software has written recently a very good article about developer talent. One thing he mentioned was that throwing more developers, even if they are equal in skill, at a problem will not necessarily make the problem be resolved quicker. On the contrary, the communication and code merging overheads, as well as the time it takes for another developer to learn the code base can delay the problem further. This is an issue that has been noticed way back when: The Mythical Man-Month[^] Quran Translation Intro Discover
A.A. wrote: This is an issue that has been noticed way back when: The Mythical Man-Month[^] Come on, we want Joel (and his readers) to have the pleasure of discovering things for themselves! Why read up on existing technology/books when you can re-invent the wheel and perhaps file a patent application on it?:-D
-
Make sure you have the documenation to back it up with and then talk to your boss. Show him where the guy isn't following the set standards and that you have talked with him about it. Show him the time wasted by you having to rework all the code and the effect it is having on the project. By all means don't work yourself into the ground fixing it to make the deadline. The heroic coder method gets you no where except high expectations and shorter deadlines. As a consultant myself any time I go into a company I am expected to follow the standards for that company. I would be ashamed to work for the same firm with this guy if he is as bad as you say.
-
I am having the most frustrating week. We have a major project due with tight deal lines and the business decided to bring in a consultant to give us a hand. Oh this is so frustrating. This guy has to be on of the worst developers I have ever seen. I have been spending the last 3 days rewritting all his code. He just puts everything into one giant function. Nothing can be reused. I had to go back and extract everything to make classes and new functions. I am constantly telling him he can not do this yet he continues to do what he wants. How can he survive as and OO developer like this! I dont know how much more I can take it. :mad:
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.
Thanks everyone for your input! It is nice to feel like I am not the only one that this happens too. I will differently take all of your advice into consideration. I just have to come up with the courage to talk to my boss...ha-ha! Thanks again!!
We shouldn't assume something's debugged just because everyone in the whole world has access to the source code.