Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Do we build like a house or like a car

Do we build like a house or like a car

Scheduled Pinned Locked Moved The Lounge
discussionannouncement
16 Posts 11 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • OriginalGriffO OriginalGriff

    Part of the problem is that we don't build systems like we do a house or a car: you don't have to be a professional architect to design software, you don't have to follow any building regulations, you aren't liable if the house collapses when you hand over the keys. You don't need to confirm to government legislation like you do with cars, you don't have to have any testing done at all, and test results aren't in any way public; you don't have to do recalls if there is a bug. Instead, we have idiots throwing together lumps of code they copied from SO and QA, calling that "new software", being surprised when it doesn't do the job, and shipping it well before it's ready to meet arbitrary deadlines. And until that changes, don't expect me to worry about feeling outdated! :laugh:

    Sent from my Amstrad PC 1640 Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!

    Richard DeemingR Offline
    Richard DeemingR Offline
    Richard Deeming
    wrote on last edited by
    #7

    OriginalGriff wrote:

    Part of the problem is that we don't build systems like we do a house or a car

    Customer: Build me a small bungalow. Programmer: (Builds small bungalow) Customer: Well that's no good! I wanted it to be twenty stories high! Fix it NOW!!!1! Programmer: (Tears down bungalow; builds twenty-storey high tower block) Customer: This is ridiculous! Where's the underground car-park and swimming pool? Programmer: You didn't ask for either of those things. We'll have to tear it down and start again. Customer: Unacceptable! You're already well over budget and past the deadline we agreed on. Don't tear it down; just add an underground car park and swimming pool! Programmer: (Face-palm; tries to meet customer demands; building collapses) Customer: You suck! My twelve-year-old nephew could have done a better job - he knows the facebooks and everything!


    "These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer

    "These people looked deep within my soul and assigned me a number based on the order in which I joined" - Homer

    OriginalGriffO 1 Reply Last reply
    0
    • Richard DeemingR Richard Deeming

      OriginalGriff wrote:

      Part of the problem is that we don't build systems like we do a house or a car

      Customer: Build me a small bungalow. Programmer: (Builds small bungalow) Customer: Well that's no good! I wanted it to be twenty stories high! Fix it NOW!!!1! Programmer: (Tears down bungalow; builds twenty-storey high tower block) Customer: This is ridiculous! Where's the underground car-park and swimming pool? Programmer: You didn't ask for either of those things. We'll have to tear it down and start again. Customer: Unacceptable! You're already well over budget and past the deadline we agreed on. Don't tear it down; just add an underground car park and swimming pool! Programmer: (Face-palm; tries to meet customer demands; building collapses) Customer: You suck! My twelve-year-old nephew could have done a better job - he knows the facebooks and everything!


      "These people looked deep within my soul and assigned me a number based on the order in which I joined." - Homer

      OriginalGriffO Offline
      OriginalGriffO Offline
      OriginalGriff
      wrote on last edited by
      #8

      And that's part of what I mean: If you go to an architect, or a builder, and say "Build me a small bungalow" they will respond with questions: "Where?", "How many bedrooms?", "How many square feet / meters?", "What kind of roof?", "What kind of bricks?", and so on, and so on - because they are used to getting the details tied down in contract form so everyone knows exactly what they are expecting to get. But we don't! We take "Build me a small bungalow" as complete, and definitive - and build what be think the customer might want: a one room bungalow with 8 kitchens and no bathroom on the side of a cliff. (And many will copy the roof from SO despite it being designed for a small lorry, the kitchens from QA where they used to produce McVomits burgers, and the front door from a web site they found that deal with rabbit hutches.) I take care to tie down the deliverables - and generally stage payments based on their delivery - to avoid the "I wanted it to be twenty stories high!" bit. :-D

      Sent from my Amstrad PC 1640 Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!

      "I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
      "Common sense is so rare these days, it should be classified as a super power" - Random T-shirt

      E W 2 Replies Last reply
      0
      • OriginalGriffO OriginalGriff

        Part of the problem is that we don't build systems like we do a house or a car: you don't have to be a professional architect to design software, you don't have to follow any building regulations, you aren't liable if the house collapses when you hand over the keys. You don't need to confirm to government legislation like you do with cars, you don't have to have any testing done at all, and test results aren't in any way public; you don't have to do recalls if there is a bug. Instead, we have idiots throwing together lumps of code they copied from SO and QA, calling that "new software", being surprised when it doesn't do the job, and shipping it well before it's ready to meet arbitrary deadlines. And until that changes, don't expect me to worry about feeling outdated! :laugh:

        Sent from my Amstrad PC 1640 Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!

        R Offline
        R Offline
        Rage
        wrote on last edited by
        #9

        This is only partially true, as it depends on what you are designing SW for. You have legal requirements in finance, in pharma, etc... We (in the automotive business) have a lot of norms[^], legal requirements, design rules[^] that we have to fullifll, and we are personaly liable in case of quality issue that leads to damages or injuries. Recent past gives many examples[^].

        Do not escape reality : improve reality !

        OriginalGriffO 1 Reply Last reply
        0
        • R Rage

          This is only partially true, as it depends on what you are designing SW for. You have legal requirements in finance, in pharma, etc... We (in the automotive business) have a lot of norms[^], legal requirements, design rules[^] that we have to fullifll, and we are personaly liable in case of quality issue that leads to damages or injuries. Recent past gives many examples[^].

          Do not escape reality : improve reality !

          OriginalGriffO Offline
          OriginalGriffO Offline
          OriginalGriff
          wrote on last edited by
          #10

          Yes, and generally speaking the software for those industries "just works" as a result - because everybody is constrained by the rules, developer and client alike. When was the last time your car stereo gave a BSOD on the motorway and took the brakes out? :laugh:

          Sent from my Amstrad PC 1640 Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!

          "I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
          "Common sense is so rare these days, it should be classified as a super power" - Random T-shirt

          R 1 Reply Last reply
          0
          • OriginalGriffO OriginalGriff

            Is "Idiot Consultant" taken?

            Sent from my Amstrad PC 1640 Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!

            C Offline
            C Offline
            CodeWraith
            wrote on last edited by
            #11

            Now, that's redundant in more ways than one.

            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.

            1 Reply Last reply
            0
            • OriginalGriffO OriginalGriff

              Yes, and generally speaking the software for those industries "just works" as a result - because everybody is constrained by the rules, developer and client alike. When was the last time your car stereo gave a BSOD on the motorway and took the brakes out? :laugh:

              Sent from my Amstrad PC 1640 Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!

              R Offline
              R Offline
              Rage
              wrote on last edited by
              #12

              OriginalGriff wrote:

              "just works"

              Well, if only you would know ... :^)

              Do not escape reality : improve reality !

              1 Reply Last reply
              0
              • OriginalGriffO OriginalGriff

                And that's part of what I mean: If you go to an architect, or a builder, and say "Build me a small bungalow" they will respond with questions: "Where?", "How many bedrooms?", "How many square feet / meters?", "What kind of roof?", "What kind of bricks?", and so on, and so on - because they are used to getting the details tied down in contract form so everyone knows exactly what they are expecting to get. But we don't! We take "Build me a small bungalow" as complete, and definitive - and build what be think the customer might want: a one room bungalow with 8 kitchens and no bathroom on the side of a cliff. (And many will copy the roof from SO despite it being designed for a small lorry, the kitchens from QA where they used to produce McVomits burgers, and the front door from a web site they found that deal with rabbit hutches.) I take care to tie down the deliverables - and generally stage payments based on their delivery - to avoid the "I wanted it to be twenty stories high!" bit. :-D

                Sent from my Amstrad PC 1640 Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!

                E Offline
                E Offline
                Eric Lynch
                wrote on last edited by
                #13

                But, its agile...it takes true agility to dodge responsibility when it all falls apart :)

                1 Reply Last reply
                0
                • P pivertt

                  Hi all, it struck me yesterday: when I started in IT, we built programs (systems) like we built houses: we planned the layout, had paper documentation on every routine, it took sometimes years to finish and the investment was huge but it was going to last forever. Additions followed the same guidelines if it was allowed by building regulations. It could house everything between 1 - 10 people without major issues. Today we program like we build cars. We switch systems every 5 years, not because the current car doesn't suit our needs anymore but just because the other one has a keycard to unlock. Basically, it's just a newer version of the same. In a few years, parts will be difficult to find, cost of maintenance grows. For big parcels we need to rent a van and if we see someone with a newer version, we feel outdated. Like to hear your thoughts on that...

                  D Offline
                  D Offline
                  Daniel Pfeffer
                  wrote on last edited by
                  #14

                  When programming critical systems, we still use the "house" model. OTOH, software has become much cheaper because we (or our clients) are willing to accept a less rigorous model for most development. Both models have their place.

                  Freedom is the freedom to say that two plus two make four. If that is granted, all else follows. -- 6079 Smith W.

                  1 Reply Last reply
                  0
                  • OriginalGriffO OriginalGriff

                    And that's part of what I mean: If you go to an architect, or a builder, and say "Build me a small bungalow" they will respond with questions: "Where?", "How many bedrooms?", "How many square feet / meters?", "What kind of roof?", "What kind of bricks?", and so on, and so on - because they are used to getting the details tied down in contract form so everyone knows exactly what they are expecting to get. But we don't! We take "Build me a small bungalow" as complete, and definitive - and build what be think the customer might want: a one room bungalow with 8 kitchens and no bathroom on the side of a cliff. (And many will copy the roof from SO despite it being designed for a small lorry, the kitchens from QA where they used to produce McVomits burgers, and the front door from a web site they found that deal with rabbit hutches.) I take care to tie down the deliverables - and generally stage payments based on their delivery - to avoid the "I wanted it to be twenty stories high!" bit. :-D

                    Sent from my Amstrad PC 1640 Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!

                    W Offline
                    W Offline
                    W Balboos GHB
                    wrote on last edited by
                    #15

                    OriginalGriff wrote:

                    But we don't!

                    Honestly - please don't say "WE" I force people to give me what real 'what is it you want' - which prevents most of your problems. If they don't know - how should I know? It's there job to know what needs to be done and mine only to implement it. This doesn't always win friends - the lazy ones and the clueless ones - wanting you (me) to do their job for them so they'll look good (or blame me if they don't) - keep getting sent away until they come up with something. I don't give them a blank check, there, either - as I have a site with roughly 500 users to consider and don't want one user's stuff to screw up the others. Interestingly - it all works out. Using a line from a car manufacturer (or someone) "the quality goes in before the name goes on" - an the non-dullard senior management learned to appreciate a sincere effort to do it right the first time.

                    Ravings en masse^

                    "The difference between genius and stupidity is that genius has its limits." - Albert Einstein

                    "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010

                    1 Reply Last reply
                    0
                    • OriginalGriffO OriginalGriff

                      Part of the problem is that we don't build systems like we do a house or a car: you don't have to be a professional architect to design software, you don't have to follow any building regulations, you aren't liable if the house collapses when you hand over the keys. You don't need to confirm to government legislation like you do with cars, you don't have to have any testing done at all, and test results aren't in any way public; you don't have to do recalls if there is a bug. Instead, we have idiots throwing together lumps of code they copied from SO and QA, calling that "new software", being surprised when it doesn't do the job, and shipping it well before it's ready to meet arbitrary deadlines. And until that changes, don't expect me to worry about feeling outdated! :laugh:

                      Sent from my Amstrad PC 1640 Bad command or file name. Bad, bad command! Sit! Stay! Staaaay... AntiTwitter: @DalekDave is now a follower!

                      D Offline
                      D Offline
                      dandy72
                      wrote on last edited by
                      #16

                      OriginalGriff wrote:

                      You don't need to confirm to government legislation like you do with cars, you don't have to have any testing done at all, and test results aren't in any way public; you don't have to do recalls if there is a bug.

                      Blame those handing out the contracts. If you could, would you purchase your next car just by identifying the lowest bidder?

                      1 Reply Last reply
                      0
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • World
                      • Users
                      • Groups