• Yep (unregistered)

    SCND!

    Actually, that was a pretty disastrous story. Too bad I can't sell bad DotNetNuke projects for $100k.

  • Alan (unregistered)

    My mates company thought it could develop a social network with one asp.net developer and an inexperienced project manager. When that failed a php-wizard friend of the boss blamed it on asp.net and said he could get the site up by October 10th...

  • <out of memory> (unregistered)

    I tried to add a comment but it overflowed the cache.

    BTW, what do you get when you add up a bunch Pre-Columbian Indians from the Peru area?

    You get the CAPTCHA: incassum

  • (cs)

    Sadly, there's just no substitute for actually knowing what you're doing. Poor Jim is finding that out.

  • Cybercat (unregistered)

    Surely after realizing his $150,000 dollar mistake he'll come around right? Or maybe he needs to spend another $60k just to round it out before he realizes he just spent 3x the original estimate of a programmer who he apparently trusts the opinion of enough to look at his other disaster?

    CAPTCHA: opto

    Like in optimize!

  • NotSo (unregistered) in reply to gabba
    gabba:
    Sadly, there's just no substitute for actually knowing what you're doing. Poor Jim is finding that out.
    Sure there is, listen to someone who does know what they're doing.

    Captcha: distineo - the distro that is bound to be your destiny.

  • Rob (unregistered)

    You can see this wood from the trees story all over the place. I have a hard time trying to push through a multiple of projects that simply cost more in the short term, but will make big savings in the long run, plus they will actually work.

    We seem to either end up doing nothing or constantly hack systems to do things they were never designed to do and then complain that it doesn't work very well.

    I don't care what people say about IT Managers being in the decisional loop, it always seem to boil down to the final decision being decided by someone non-technical or a beancounter unless you have some sort of leverage over them.

    /Rant over

  • (cs) in reply to gabba
    gabba:
    Sadly, there's just no substitute for actually knowing what you're doing. Poor Jim is finding that out.
    I think it's more a case that Jim, like most of the senior managers and CEOs I've encountered, needs to understand that when you approach a technical person for their recommendation in their field of expertise, they usually know wtf they're talking about. Not liking their answer doesn't make you right, or more knowledgeable...
  • (cs)

    Sometimes people do get what they deserve.

  • thetunaman (unregistered)

    I had worked on a similar deal. This was a site written in java. Something like 30k had been spent on it.. no framework, was totally unmanageable code. Go offshore teams!

    The site could maybe handle 1 user at a time, but 2-3 brought it to it's knees. The owner was sad that java was such a slow crappy language and that he wished he had done it in php.. php could handle 100 users on the same server at once!

    I peeked at the code, and found the bug pretty fast. It was an ebay like auction site that could show a list of items for sale. When iterating through the 100 items to display on a given page, rather than do a single query and pull items out of it.. it was doing a full query for all items in the database, grabbing the 1 item it needed, then dumping the row. So to load a page with 100 items, we would make 100 full database queries, each returning all items in the database table, which we would iterate through to show a given item. Once the size of the table grew to around 1000 items, it was just too much to handle and slowed the site to a crawl. (Database being on same server as app didn't help with memory to spare I am sure).

    3 minute change gave a 10000% speedup.

    Sigh to outsourced garbage.

  • (cs)

    This is what happens when you want software with the cheaper than cheapest initial cost.

    Those who goes too low, are realy desperate to get any contract

  • Eff Five (unregistered)

    TRWTF is "community-based diet-tracking system". Seriously WTF is that?

  • AT (unregistered) in reply to GCU Arbitrary
    GCU Arbitrary:
    gabba:
    Sadly, there's just no substitute for actually knowing what you're doing. Poor Jim is finding that out.
    I think it's more a case that Jim, like most of the senior managers and CEOs I've encountered, needs to understand that when you approach a technical person for their recommendation in their field of expertise, they usually know wtf they're talking about. Not liking their answer doesn't make you right, or more knowledgeable...

    The fundamental problem is much more difficult (as it usually is): People who aren't domain experts don't know how to evaluate the competence of those who claim to be domain experts. In this case two self-proclaimed experts presented conflicting opinions and "Jim" picked the answer he wanted to hear (and then didn't change course when his "expert" failed to deliver). There are ways around this of course (check references, find an expert with objectively validated credentials to vet your "experts"), but they are often expensive and inaccurate.

  • JD (unregistered)

    I'd sure like to know what Jim spent that "over $100,000" on. Surely it didn't all go to the same cowboys that originally quoted $6,800? He could have actually spent his $6,800, realised the whole thing was garbage and then gone back to Kyle's company and asked them to do it from scratch - all this for considerably less than $100,000. Yet he's managed to spend that much and still doesn't have anything better than a non-working web app. How far over budget does this man need to go before realising that something is amiss? Considering how content he was about being fobbed off with mistruths about the platform, I'm left thinking that Jim doesn't deserve the budgeting responsibilities he's been given. I wouldn't trust this man with the weekly food shopping.

  • Kevin (unregistered) in reply to Eff Five
    Eff Five:
    TRWTF is "community-based diet-tracking system". Seriously WTF is that?

    noob

    http://www.calorieking.com/

  • (cs)

    Sooooo.... there was a badly designed web app working slow, and it was countered the usual way - throw more hardware at it.

    I wonder how many simultaneous users the system will support when they upgrade to a cluster. Maybe twenty?

  • (cs) in reply to JD
    JD:
    I'm left thinking that Jim doesn't deserve the budgeting responsibilities he's been given. I wouldn't trust this man with the weekly food shopping.

    Lol - you made me spit pepsi all over my keyboard.

  • James (unregistered)

    They really need to include this story verbatim in "The Market For Lemons". It's just about the best example I've ever seen.

  • KG (unregistered)

    You can be sure Jim will never hire an ASP.NET developer again.

  • Alex Z (unregistered)

    As a new ASP.NET developer, this makes me very sad. I never knew that it was so slow for real world applications.

    I will code in PHP from now on.

  • (cs)

    Actually just went through something like this at my job.

    One of the companies we work with approached us to develop 'phase 2' of an online testing application that we had provided for them a while back. They insisted that they would need a hard quote and that was all they would pay as they were highly disappointed with how the prices skyrocketed with 'phase 1' I politely explained that the reason the prices exceed the initial quote was because the initial quote was based on a certain set of requirements whereas the final deliverable was nothing like the initial request due to them playing the "we know that you're 90% done with development now but we've changed our minds about the core requirements" game.

    Anyway, I compiled up a fairly specific quote and sent it off. I believe the total was around $50,000, all things considered it was a fair price for what they were asking. However they insisted they had gotten a quote from another company for only $5,000, 10% of what we were asking and that they could even do it in house and it would cost them a fraction of that. I informed them that there was no way I could possibly match a quote of $5,000 as that rate would barely pay our office secretary, never mind the programmers who would actually be working on the project.

    I recently checked up on their development progress and found out that they "ran into a couple small snags and had to cut a couple features" but were working through them and should have it up and running soon. I suppose that's not bad considering it was supposed to be delivered about 8 months ago.

  • (cs) in reply to JD
    JD:
    I'd sure like to know what Jim spent that "over $100,000" on. Surely it didn't all go to the same cowboys that originally quoted $6,800? He could have actually spent his $6,800, realised the whole thing was garbage and then gone back to Kyle's company and asked them to do it from scratch - all this for considerably less than $100,000. Yet he's managed to spend that much and still doesn't have anything better than a non-working web app. How far over budget does this man need to go before realising that something is amiss? Considering how content he was about being fobbed off with mistruths about the platform, I'm left thinking that Jim doesn't deserve the budgeting responsibilities he's been given. I wouldn't trust this man with the weekly food shopping.

    The way the corporate structure is, it would be impossible for Jim to cancel the contract because that would be admitting he made a mistake, which would jeopardize his job. He is forced into spending more money and making more excuses. This all helps the software contractor, who in this case is more like a con-man than anything else. The contractor has finagled Jim to spend big bucks while at the same time paying the developers peanuts.

  • Addison (unregistered)

    Wow. ASP is slow eh? God dam it you ignorant retards.

    I hate it when people who know nothing spurt BS that they heard from some guy who barely knows any more then they do.

    I hate stupid people.

  • Eff Five (unregistered) in reply to Kevin
    Kevin:
    Eff Five:
    TRWTF is "community-based diet-tracking system". Seriously WTF is that?

    noob

    http://www.calorieking.com/

    s00r% 1a//\ //07 4 1337 ph47 455

  • Annynonomous (unregistered) in reply to JD

    He probably spent the money in small increments. The developers asked for "small" amounts, like the original amount. Over time it added up. There is a certain point at which you should throw in the towel, and you know it, but can't make yourself do it. Your pride or hope or magical thinking prevents it. Logically you know it's wrong to continue spending money on the crap team that's delivering nothing but you've invested too much to back out now.

    Unfortunately I once worked for a company that had this same philosophy as regards a new enterprise system. The old green screen system worked fine, but it wasn't flexible. So to get flexible they traded $350,000, no wait it'll actually take $500,000, no wait $1M, no no now it's $2.5M and a working system for a buggy slow overbudget schlockfest. Good times.

  • Jessta (unregistered) in reply to JD

    "Surely it didn't all go to the same cowboys that originally quoted $6,800? He could have actually spent his $6,800, realised the whole thing was garbage and then gone back to Kyle's company" I imagine it went something like, "we will be done in 2 more weeks, but we need another $6000" 2 weeks later "An issue has cropped up, it'll be a few more weeks" etc. etc. It's like gambling at the pokie machines.

  • (cs) in reply to Addison
    Addison:
    Wow. ASP is slow eh? God dam it you ignorant retards.

    I hate it when people who know nothing spurt BS that they heard from some guy who barely knows any more then they do.

    I hate stupid people.

    ASP = Always Slow Protocol, DUH!!!

  • (cs)

    This reminds me of a blog post I read recently by a member of the CLR performance team. They're spending a huge amount of time wringing the last drop of performance out of the CLR but in practice it's bad programming that's really slowing apps down on the .NET platform. Even the smartest compiler in the world can't compensate for idiot developers.

  • Zach Bora (unregistered)

    This site is in ASP.net, it would be so much faster in php!! The pages is taking at least... 3 seconds to load.

    Also, every other website is as slow, so they must all be in asp.net! What were they thinking?

  • (cs) in reply to Salami
    Salami:
    The way the corporate structure is, it would be impossible for Jim to cancel the contract because that would be admitting he made a mistake, which would jeopardize his job. He is forced into spending more money and making more excuses. This all helps the software contractor, who in this case is more like a con-man than anything else. The contractor has finagled Jim to spend big bucks while at the same time paying the developers peanuts.

    Too true.

    I am working on a C&I billing system that was supposed to be replaced by a competing product... 2 years ago! During this "transition period" the management had spent (I kid you not) 20+ million dollars trying to go live with this new system in the easiest jurisdiction. Keep in mind that the current "legacy" system originally cost them $300,000 in license fee, plus ~$10,000 in yearly maintenance, and is carrying the two most complicated jurisdictions.

    Now what do you think the big shots that made the call to go with the multimillion dollar project in the first place are doing? Are they admitting defeat, scrapping the project and asking the vendor of the "legacy" system to look into expanding into other jurisdictions? No! They are pushing to replace the "legacy" system with the new one in those two jurisdictions, even though it isn't live yet anywhere else.

  • Em dash (unregistered)
    Kyle remoted-in to the server-the codebase was far too large to send over e-mail-and started poking around.

    The cache treated the same image-for example, the logo-on different pages as different images.

    The readability of these sentences would be much improved if there were em dashes in the appropriate spots. The current problem is compounded by the fact that there are legitimate hyphens in the same context.

  • Anonymous Coward (unregistered)

    This doesn't just happen with contracted-out development.

    I recently spent a few months at a company that had been working on a web application for about many years. It was a great idea when they started, but at this point there is so much competition and their idea has been done so many times before that there is very little point in continuing.

    When I arrived, they had decided to rewrite the old CF codebase (serving 6 customers, depending on 3 servers) in Java. The lead on the project broke out MS Project and made the boss a detailed "development plan" - without talking about requirements, because "we know what they are, we've been doing this for years."

    It became clear that the project was a death march in the making around week two of my time there. I did what I could to lead by example when given the chance, but the politics of the place were such that anyone actually engaging the boss would be tromped on by other devs for endangering their pay. Interestingly the boss came to me for help and asked many questions about managing a software project. It's too bad he had no real desire to change the status quo.

    When I left, the new codebase was expanding rapidly, the old system serving customers was utterly neglected, and the developers were fending off process consultants.

    Of course, we were exactly where I'd told the boss we would be. He's since given me a fantastic reference.

  • Migala (unregistered) in reply to NotSo
    NotSo:
    gabba:
    Sadly, there's just no substitute for actually knowing what you're doing. Poor Jim is finding that out.
    Sure there is, listen to someone who does know what they're doing.

    How will you know which self-proclaimed experts actually know what they are doing? The one quoting the higher number is not always right either...

  • Worf (unregistered) in reply to GCU Arbitrary
    GCU Arbitrary:
    gabba:
    Sadly, there's just no substitute for actually knowing what you're doing. Poor Jim is finding that out.
    I think it's more a case that Jim, like most of the senior managers and CEOs I've encountered, needs to understand that when you approach a technical person for their recommendation in their field of expertise, they usually know wtf they're talking about. Not liking their answer doesn't make you right, or more knowledgeable...

    Better yet... when getting quotes, do a sniff test on them! Most quotes for well-specified work shouldn't different significantly from each other (at least, there shouldn't be one that's half the cost of the next lowest, nor should there be a wide spread in the costs).

    When you get a quote for $70k, and someone's willing to do it for an order of magnitude less, it's perhaps time to stop and ask WTF is going on.

    Sometimes it's just because one company is using equipment that's overkill, other times, there maybe be something overlooked. Either way, asking the companies to justify their proposals isn't necessarily out of the question (and sometimes the justifications make it such that the most expensive is the cheapest...)

  • Bob (unregistered) in reply to Triscopic
    Triscopic:
    JD:
    I'm left thinking that Jim doesn't deserve the budgeting responsibilities he's been given. I wouldn't trust this man with the weekly food shopping.

    Lol - you made me spit pepsi all over my keyboard.

    Really?! I wouldn't trust you with it either.

  • rumpelstiltskin (unregistered)

    What would make this story even more ridiculous would be if the ASP.NET screw-ups actually cost 10 times more than Jim's guys, instead of 10 times less. I mention this because it happens a lot in this country- companies keep hiring developers who produce garbage, and have never produced anything but garbage, over and over and over again, when they could spend 1/10th as much and ship the work to Bombay. I'm not saying the Indians would write good code, but at least the bad code would be cheaper.

  • SCB (unregistered) in reply to Annynonomous
    Annynonomous:
    He probably spent the money in small increments. The developers asked for "small" amounts, like the original amount. Over time it added up. There is a certain point at which you should throw in the towel, and you know it, but can't make yourself do it. Your pride or hope or magical thinking prevents it. Logically you know it's wrong to continue spending money on the crap team that's delivering nothing but you've invested too much to back out now.

    Unfortunately I once worked for a company that had this same philosophy as regards a new enterprise system. The old green screen system worked fine, but it wasn't flexible. So to get flexible they traded $350,000, no wait it'll actually take $500,000, no wait $1M, no no now it's $2.5M and a working system for a buggy slow overbudget schlockfest. Good times.

    Apparently the more money people have already spent, the more irrational their decision-making becomes. There is a good article on this at http://en.wikipedia.org/wiki/Sunk_costs

  • SomeCoder (unregistered) in reply to Anonymous Coward
    Anonymous Coward:
    This doesn't just happen with contracted-out development.

    I recently spent a few months at a company that had been working on a web application for about many years. It was a great idea when they started, but at this point there is so much competition and their idea has been done so many times before that there is very little point in continuing.

    When I arrived, they had decided to rewrite the old CF codebase (serving 6 customers, depending on 3 servers) in Java. The lead on the project broke out MS Project and made the boss a detailed "development plan" - without talking about requirements, because "we know what they are, we've been doing this for years."

    It became clear that the project was a death march in the making around week two of my time there. I did what I could to lead by example when given the chance, but the politics of the place were such that anyone actually engaging the boss would be tromped on by other devs for endangering their pay. Interestingly the boss came to me for help and asked many questions about managing a software project. It's too bad he had no real desire to change the status quo.

    When I left, the new codebase was expanding rapidly, the old system serving customers was utterly neglected, and the developers were fending off process consultants.

    Of course, we were exactly where I'd told the boss we would be. He's since given me a fantastic reference.

    Yeah, at an old job we had something kinda similar happen. We had some internal tools and processes that helped over teams do their work. The old system worked great, but was starting to show it's age and inflexibility: new features were needed that the system just couldn't handle easily.

    So a new system was clearly needed. A year later and the new system is about 10x slower, harder to use, barely functions, and is missing key features from the old system. But hey, it's written using the latest technologies and therefore MUST be good, right??

    So much more I could tell from that place...

  • Offshore User 2338 (unregistered) in reply to thetunaman
    thetunaman:
    I had worked on a similar deal. This was a site written in java. Something like 30k had been spent on it.. no framework, was totally unmanageable code. Go offshore teams!

    The site could maybe handle 1 user at a time, but 2-3 brought it to it's knees. The owner was sad that java was such a slow crappy language and that he wished he had done it in php.. php could handle 100 users on the same server at once!

    I peeked at the code, and found the bug pretty fast. It was an ebay like auction site that could show a list of items for sale. When iterating through the 100 items to display on a given page, rather than do a single query and pull items out of it.. it was doing a full query for all items in the database, grabbing the 1 item it needed, then dumping the row. So to load a page with 100 items, we would make 100 full database queries, each returning all items in the database table, which we would iterate through to show a given item. Once the size of the table grew to around 1000 items, it was just too much to handle and slowed the site to a crawl. (Database being on same server as app didn't help with memory to spare I am sure).

    3 minute change gave a 10000% speedup.

    Sigh to outsourced garbage.

    Pleez send to me teh codez...

  • CynicalTyler (unregistered) in reply to Em dash
    Em dash:
    Kyle remoted-in to the server-the codebase was far too large to send over e-mail-and started poking around.

    The cache treated the same image-for example, the logo-on different pages as different images.

    The readability of these sentences would be much improved if there were em dashes in the appropriate spots. The current problem is compounded by the fact that there are legitimate hyphens in the same context.
    I second this motion. Also have you seen my sweet ass-car?

  • (cs) in reply to Addison
    Addison:
    I hate stupid people.
    Wracked with self-loathing, eh?
  • (cs)

    So that's how Community Server was born.

  • (cs) in reply to Alex Z
    Alex Z:
    As a new ASP.NET developer, this makes me very sad. I never knew that it was so slow for real world applications.
    But hey, you oughta see how fast it is for fake world applications!
  • Mark (unregistered) in reply to hatterson
    hatterson:
    Actually just went through something like this at my job.

    One of the companies we work with approached us to develop 'phase 2' of an online testing application that we had provided for them a while back. They insisted that they would need a hard quote and that was all they would pay as they were highly disappointed with how the prices skyrocketed with 'phase 1' I politely explained that the reason the prices exceed the initial quote was because the initial quote was based on a certain set of requirements whereas the final deliverable was nothing like the initial request due to them playing the "we know that you're 90% done with development now but we've changed our minds about the core requirements" game.

    ...

    That's why at meetings I get smart-assed to anyone proposing big changes in the requirements. We'll be halfway done with development when someone wants something changed. They ask if it can be done. I say "Sure, but first I want you to sign this memo stating that this change will delay the project timeline by X weeks." That usually shuts them up fast.

    When they argue my time estimate with the standard "But it's a tiny little change..." I remind them that I'm the developer, they're not.

    Ahhhh, it's good to have leverage.

  • Douglas (unregistered)

    http://www.dbdebunk.com/page/page/3161496.htm

    Especially item #5.

  • (cs) in reply to AT
    AT:
    The fundamental problem is much more difficult (as it usually is): People who aren't domain experts don't know how to evaluate the competence of those who claim to be domain experts. In this case two self-proclaimed experts presented conflicting opinions and "Jim" picked the answer he wanted to hear (and then didn't change course when his "expert" failed to deliver). There are ways around this of course (check references, find an expert with objectively validated credentials to vet your "experts"), but they are often expensive and inaccurate.
    In this instance, Jim could have easily sanity checked the quote by looking up the day rates of ASP.NET programmers. I haven't done that myself, but $6,800 probably doesn't amount to more than about 10 days of work. Jim could then have asked himself if that was remotely enough for the project. Obviously, if he is non technical he has no chance of judging the amount of programming required, but he can think about things like how long it took to write, review and agree the requirements document, that meeting he had with the supplier project manager and the lead developer that took an afternoon (1 man day right there), how much time they budgeted to do testing etc and I'm sure that will give him an idea of at least the order of magnitude of the task and that 10 days is ridiculous for anything except the tiniest of projects.

    Part of the problem is that people see Microsoft Office in the shops for a few hundred dollars and that makes them think that is how much software costs.

  • (cs) in reply to Migala
    Migala:
    How will you know which self-proclaimed experts actually know what they are doing?
    Get 5 quotes, discard the high and low numbers, and average the rest to get a realistic cost estimate, based upon your criteria. Then examine the remaining three much more closely to get a better get feel for the best choice.

    Works great when picking contractors to - redo your roof, siding, driveway, kitchen or website!

  • (cs) in reply to amischiefr
    amischiefr:
    Addison:
    Wow. ASP is slow eh? God dam it you ignorant retards.

    I hate it when people who know nothing spurt BS that they heard from some guy who barely knows any more then they do.

    I hate stupid people.

    ASP = Always Slow Protocol, DUH!!!

    Worse!

    ASP.NET = Always Slow Protocol. Never Executes Totally

  • (cs) in reply to Salami
    Salami:
    The way the corporate structure is, it would be impossible for Jim to cancel the contract because that would be admitting he made a mistake, which would jeopardize his job.

    See, this is the problem with (some) corporations - the way it should work is this: you pick the wrong guy, you find out, you cancel the contract, say 'mea culpa, those guys are cowboys', and move on. Hell, making mistakes cheaply is a valuable skill, and not punishing mistakes in a risky environment is apparently a rare thing. That must be the thing I like about startups - failure is seen as necessary for success.

  • (cs) in reply to jeremypnet
    jeremypnet:
    Part of the problem is that people see Microsoft Office in the shops for a few hundred dollars and that makes them think that is how much software costs.

    That is how much software costs - desktop software that you can sell a billion times. Server software that runs your business is a bit different.

Leave a comment on “Cached Out”

Log In or post as a guest

Replying to comment #:

« Return to Article