The art of developing a prototype
-
One of the developers is giving me a hard time now. We have a simple proto to be developed. Two modules, each having 3 screens. We just need 6 APIs altogether. 3 for each module. The developer is so stuck with the "CRUD" idea in mind. That he cannot resist developing all the Create, Read, Update, Delete & all the fancy REST operations Put, Patch. I just needed a Create API to populate the data. Nobody cares if the data is deletable or updateable. I just needed 3 APIs for the first module & then move on two the 2nd module. Now he's writing the 6th API for the *first module*, :doh: Validating and checking a lot of scenarios for update & delete. :sigh: Sometimes perfectionism is a curse.
-
One of the developers is giving me a hard time now. We have a simple proto to be developed. Two modules, each having 3 screens. We just need 6 APIs altogether. 3 for each module. The developer is so stuck with the "CRUD" idea in mind. That he cannot resist developing all the Create, Read, Update, Delete & all the fancy REST operations Put, Patch. I just needed a Create API to populate the data. Nobody cares if the data is deletable or updateable. I just needed 3 APIs for the first module & then move on two the 2nd module. Now he's writing the 6th API for the *first module*, :doh: Validating and checking a lot of scenarios for update & delete. :sigh: Sometimes perfectionism is a curse.
Nand32 wrote:
Sometimes perfectionism is a curse.
That's not perfectionism, that simply a curse. Wasting time, effort and resources on something that is not in the scope of the project, even potentially introducing bugs with code that should not be there in the first place. throw new NotImplementedException();
Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^] "If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.
-
One of the developers is giving me a hard time now. We have a simple proto to be developed. Two modules, each having 3 screens. We just need 6 APIs altogether. 3 for each module. The developer is so stuck with the "CRUD" idea in mind. That he cannot resist developing all the Create, Read, Update, Delete & all the fancy REST operations Put, Patch. I just needed a Create API to populate the data. Nobody cares if the data is deletable or updateable. I just needed 3 APIs for the first module & then move on two the 2nd module. Now he's writing the 6th API for the *first module*, :doh: Validating and checking a lot of scenarios for update & delete. :sigh: Sometimes perfectionism is a curse.
Sounds like someone who's been burned one time too many when PHBs declared a prototype to be exactly what they needed and insisted on taking it directly into production.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt
-
One of the developers is giving me a hard time now. We have a simple proto to be developed. Two modules, each having 3 screens. We just need 6 APIs altogether. 3 for each module. The developer is so stuck with the "CRUD" idea in mind. That he cannot resist developing all the Create, Read, Update, Delete & all the fancy REST operations Put, Patch. I just needed a Create API to populate the data. Nobody cares if the data is deletable or updateable. I just needed 3 APIs for the first module & then move on two the 2nd module. Now he's writing the 6th API for the *first module*, :doh: Validating and checking a lot of scenarios for update & delete. :sigh: Sometimes perfectionism is a curse.
REST operations aren't fancy, they're just operations. Just slap him with some YAGNI and move on.
"Never attribute to malice that which can be explained by stupidity." - Hanlon's Razor
-
One of the developers is giving me a hard time now. We have a simple proto to be developed. Two modules, each having 3 screens. We just need 6 APIs altogether. 3 for each module. The developer is so stuck with the "CRUD" idea in mind. That he cannot resist developing all the Create, Read, Update, Delete & all the fancy REST operations Put, Patch. I just needed a Create API to populate the data. Nobody cares if the data is deletable or updateable. I just needed 3 APIs for the first module & then move on two the 2nd module. Now he's writing the 6th API for the *first module*, :doh: Validating and checking a lot of scenarios for update & delete. :sigh: Sometimes perfectionism is a curse.
That's a very bad sign indeed. You are becomming a pointy haired boss and are beginning to sound like them. Have you been bitten by one? I would sprinkle you with holy water and garlic juice, but I am allergic myself to one of them.
I have lived with several Zen masters - all of them were cats. His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.
-
One of the developers is giving me a hard time now. We have a simple proto to be developed. Two modules, each having 3 screens. We just need 6 APIs altogether. 3 for each module. The developer is so stuck with the "CRUD" idea in mind. That he cannot resist developing all the Create, Read, Update, Delete & all the fancy REST operations Put, Patch. I just needed a Create API to populate the data. Nobody cares if the data is deletable or updateable. I just needed 3 APIs for the first module & then move on two the 2nd module. Now he's writing the 6th API for the *first module*, :doh: Validating and checking a lot of scenarios for update & delete. :sigh: Sometimes perfectionism is a curse.
It seems that most every time I have ever delivered a POC or mockup, even after explaining that 'these screens aren't wired yet', someone inevitably complains that they can't save their input. :doh: I agree that its overkill for a proto, but hard to argue with someone doing more than required...just at the wrong time.
"Go forth into the source" - Neal Morse
-
Sounds like someone who's been burned one time too many when PHBs declared a prototype to be exactly what they needed and insisted on taking it directly into production.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt
-
Sounds like someone who's been burned one time too many when PHBs declared a prototype to be exactly what they needed and insisted on taking it directly into production.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt
Nah! that never happens! :rolleyes:
"the debugger doesn't tell me anything because this code compiles just fine" - random QA comment "Facebook is where you tell lies to your friends. Twitter is where you tell the truth to strangers." - chriselst "I don't drink any more... then again, I don't drink any less." - Mike Mullikins uncle
-
Sounds like someone who's been burned one time too many when PHBs declared a prototype to be exactly what they needed and insisted on taking it directly into production.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt
-
One of the developers is giving me a hard time now. We have a simple proto to be developed. Two modules, each having 3 screens. We just need 6 APIs altogether. 3 for each module. The developer is so stuck with the "CRUD" idea in mind. That he cannot resist developing all the Create, Read, Update, Delete & all the fancy REST operations Put, Patch. I just needed a Create API to populate the data. Nobody cares if the data is deletable or updateable. I just needed 3 APIs for the first module & then move on two the 2nd module. Now he's writing the 6th API for the *first module*, :doh: Validating and checking a lot of scenarios for update & delete. :sigh: Sometimes perfectionism is a curse.
once worked for a boss who would be a perfect match to your man, this bosses concept of a POC was something that had *full functionality* to be "demonstrated on a subset/sample of the data." Seriously, one project was: "OK team, we got a potential 5 - 6 month project to develop a package to do account consolidation using 'fuzzy logic account matching' on 60 million records from 3 different systems, we need a POC / demo system to do ALL of those things on a 6000 record sample for a meeting with them next week. We're flying in for the demo next Friday and by the way it has to be on their hardware because they can't release any data [privacy bullshit] even for testing." I magnanimously offered myself for the role of preparing the powerpoint slides for that meeting. :)
Message Signature (Click to edit ->)
-
once worked for a boss who would be a perfect match to your man, this bosses concept of a POC was something that had *full functionality* to be "demonstrated on a subset/sample of the data." Seriously, one project was: "OK team, we got a potential 5 - 6 month project to develop a package to do account consolidation using 'fuzzy logic account matching' on 60 million records from 3 different systems, we need a POC / demo system to do ALL of those things on a 6000 record sample for a meeting with them next week. We're flying in for the demo next Friday and by the way it has to be on their hardware because they can't release any data [privacy bullshit] even for testing." I magnanimously offered myself for the role of preparing the powerpoint slides for that meeting. :)
Message Signature (Click to edit ->)
-
It seems that most every time I have ever delivered a POC or mockup, even after explaining that 'these screens aren't wired yet', someone inevitably complains that they can't save their input. :doh: I agree that its overkill for a proto, but hard to argue with someone doing more than required...just at the wrong time.
"Go forth into the source" - Neal Morse
-
It seems that most every time I have ever delivered a POC or mockup, even after explaining that 'these screens aren't wired yet', someone inevitably complains that they can't save their input. :doh: I agree that its overkill for a proto, but hard to argue with someone doing more than required...just at the wrong time.
"Go forth into the source" - Neal Morse
-
Bingo! My boss should read this. He exactly has this (sly) behaviour of trying to push a proto into production. But we push him back explaining why that wouldn't work. But this developer who is doing this genuine proto is just crazy. lol :)
Nand32 wrote:
My boss should read this. He exactly has this (sly) behaviour of trying to push a proto into production
Tell the boss the prototype has a bug that can delete half of the data randomly, and nobody knows why, so while it's okay as a prototype, it *cannot* leave a test environment.
-
Sounds like someone who's been burned one time too many when PHBs declared a prototype to be exactly what they needed and insisted on taking it directly into production.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt
So true, this was the first thing which came to my mind as well since it has happened so frequently. The other alternative is when the customer sees the prototype and is frustrated that it isn't a fully functional program they can start using tomorrow. :sigh:
-
once worked for a boss who would be a perfect match to your man, this bosses concept of a POC was something that had *full functionality* to be "demonstrated on a subset/sample of the data." Seriously, one project was: "OK team, we got a potential 5 - 6 month project to develop a package to do account consolidation using 'fuzzy logic account matching' on 60 million records from 3 different systems, we need a POC / demo system to do ALL of those things on a 6000 record sample for a meeting with them next week. We're flying in for the demo next Friday and by the way it has to be on their hardware because they can't release any data [privacy bullshit] even for testing." I magnanimously offered myself for the role of preparing the powerpoint slides for that meeting. :)
Message Signature (Click to edit ->)
Lopatir wrote:
they can't release any data [privacy bullshit] even for testing
Been there, done that so many, many times. We build commercial inkjet printing systems. I've lost track the number of times a customer has complained of a printing problem, we've asked them to send us their data, and one of two things happen. They either outright refuse, or they send us "pretend" data that was hacked together by hand. We're still supposed to fix their problem, though :suss:.
Software Zen:
delete this;
-
One of the developers is giving me a hard time now. We have a simple proto to be developed. Two modules, each having 3 screens. We just need 6 APIs altogether. 3 for each module. The developer is so stuck with the "CRUD" idea in mind. That he cannot resist developing all the Create, Read, Update, Delete & all the fancy REST operations Put, Patch. I just needed a Create API to populate the data. Nobody cares if the data is deletable or updateable. I just needed 3 APIs for the first module & then move on two the 2nd module. Now he's writing the 6th API for the *first module*, :doh: Validating and checking a lot of scenarios for update & delete. :sigh: Sometimes perfectionism is a curse.
I can't help but think that three years down the line you'll be thanking the invisible pink unicorn that he went to all that trouble.
I wanna be a eunuchs developer! Pass me a bread knife!
-
Lopatir wrote:
they can't release any data [privacy bullshit] even for testing
Been there, done that so many, many times. We build commercial inkjet printing systems. I've lost track the number of times a customer has complained of a printing problem, we've asked them to send us their data, and one of two things happen. They either outright refuse, or they send us "pretend" data that was hacked together by hand. We're still supposed to fix their problem, though :suss:.
Software Zen:
delete this;
I'm sure they love it when you take their hacked together pretend data, discover that it actually works, and close their problem report as no-repro. :rolleyes: Seriously, unless your customer is the NSA or something similar, that's what NDAs are for. :doh: :doh: :doh:
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, weighing all things in the balance of reason? Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful? --Zachris Topelius Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies. -- Sarah Hoyt
-
One of the developers is giving me a hard time now. We have a simple proto to be developed. Two modules, each having 3 screens. We just need 6 APIs altogether. 3 for each module. The developer is so stuck with the "CRUD" idea in mind. That he cannot resist developing all the Create, Read, Update, Delete & all the fancy REST operations Put, Patch. I just needed a Create API to populate the data. Nobody cares if the data is deletable or updateable. I just needed 3 APIs for the first module & then move on two the 2nd module. Now he's writing the 6th API for the *first module*, :doh: Validating and checking a lot of scenarios for update & delete. :sigh: Sometimes perfectionism is a curse.
-
One of the developers is giving me a hard time now. We have a simple proto to be developed. Two modules, each having 3 screens. We just need 6 APIs altogether. 3 for each module. The developer is so stuck with the "CRUD" idea in mind. That he cannot resist developing all the Create, Read, Update, Delete & all the fancy REST operations Put, Patch. I just needed a Create API to populate the data. Nobody cares if the data is deletable or updateable. I just needed 3 APIs for the first module & then move on two the 2nd module. Now he's writing the 6th API for the *first module*, :doh: Validating and checking a lot of scenarios for update & delete. :sigh: Sometimes perfectionism is a curse.
One very useful skill to have is an understanding of what to leave out of a POC. I always try to omit at least one key thing that prohibits the POC from going immediately into production. Otherwise there is strong possibility that it might. You can easily find a whole new set of problems dropped in your lap when that happens and, of course, they have to be fixed immediately since the POC is in production.
"They have a consciousness, they have a life, they have a soul! Damn you! Let the rabbits wear glasses! Save our brothers! Can I get an amen?"