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. Other Discussions
  3. The Weird and The Wonderful
  4. Redundant Coding: The new paradigm!

Redundant Coding: The new paradigm!

Scheduled Pinned Locked Moved The Weird and The Wonderful
questionlearning
22 Posts 15 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.
  • J josda1000

    Hey, O'Brien always said that he would never do without a second backup. O'BRIEN In order to bring the system up to Starfleet code, I had to pull out the couplings to make room for a secondary backup. GILORA Starfleet code requires a second backup? O'Brien reacts to her tone. O'BRIEN (patiently) In case the first backup fails. GILORA What are the chances that a primary system and its backup would both fail at the same time? O'BRIEN It's not likely, but in a crunch, I wouldn't want to be caught without a second backup. http://www.twiztv.com/scripts/ds9/season3/ds9-315.txt[^]

    Josh Davis
    This is what plays in my head when I finish projects.

    R Offline
    R Offline
    Richard Jones
    wrote on last edited by
    #5

    They seem to need all those parellel systems so they can re-route warp power through them every episode. :laugh:

    I need an app that will automatically deliver a new BBBBBBBBaBB (beautiful blonde bimbo brandishing bountiful bobbing bare breasts and bodacious butt) every day. John Simmons / outlaw programmer

    J 1 Reply Last reply
    0
    • R Richard Jones

      They seem to need all those parellel systems so they can re-route warp power through them every episode. :laugh:

      I need an app that will automatically deliver a new BBBBBBBBaBB (beautiful blonde bimbo brandishing bountiful bobbing bare breasts and bodacious butt) every day. John Simmons / outlaw programmer

      J Offline
      J Offline
      josda1000
      wrote on last edited by
      #6

      Yeah, they always have "auxiliary power", often going to "phasers" or "forward shields"... hmmm... if you don't get yourself into a battle, you won't need the weapons or shields... lol

      Josh Davis
      This is what plays in my head when I finish projects.

      1 Reply Last reply
      0
      • R Richard A Dalton

        I'm pretty sure the very model you describe is in use in some situations. Am I crazy for thinking that something along those lines was in use by NASA at some point? Or was that just a crazy story I heard? There's a scene in the movie Apollo 13 where the guys back in Houston need to check some maths. The camera pans along a line of slide rule wielding boffins all confirming that they get the same result and giving a thumbs up. -Rd

        R Offline
        R Offline
        Ray Cassick
        wrote on last edited by
        #7

        Yeah... NASA has always used the triple redundancy method in all it's calculations. Even today on the shuttles.


        LinkedIn[^] | Blog[^] | Twitter[^]

        N H 2 Replies Last reply
        0
        • D Delphi4ever

          Today my esteemed coworker invented a brand new programming paradigm: Redundant Coding (tm). This buggy old legacy code we are working with has a least three almost identical and insanely complicated instances of a special form of coordinate transformation. We want to simplify, but which one to keep? My coworker suggested that we compare the results of the three code blocks too see which one, if any, would give diviant results. This immideately lead to the idea of letting the three instances "vote" on the right result. And BAM the Redundant Coding programming paradigm was born. Just as a jumbo jet has three of everything just in case, our code has three almost identical code blocks, just in case one of them is buggy! If one code block produces deviant results, the other two will take over! I am, of course, kidding. We will clean this mess up eventually.

          A Offline
          A Offline
          AspDotNetDev
          wrote on last edited by
          #8

          I actually thought of this as an idea to ensure correctness. Probably also has some applications to AI (e.g., random mutations of algorithms that are then compared to the original algorithms to check for correctness).

          [Forum Guidelines]

          1 Reply Last reply
          0
          • J josda1000

            Hey, O'Brien always said that he would never do without a second backup. O'BRIEN In order to bring the system up to Starfleet code, I had to pull out the couplings to make room for a secondary backup. GILORA Starfleet code requires a second backup? O'Brien reacts to her tone. O'BRIEN (patiently) In case the first backup fails. GILORA What are the chances that a primary system and its backup would both fail at the same time? O'BRIEN It's not likely, but in a crunch, I wouldn't want to be caught without a second backup. http://www.twiztv.com/scripts/ds9/season3/ds9-315.txt[^]

            Josh Davis
            This is what plays in my head when I finish projects.

            N Offline
            N Offline
            Nagy Vilmos
            wrote on last edited by
            #9

            Too. Much. Time.


            Panic, Chaos, Destruction. My work here is done. or "Drink. Get drunk. Fall over." - P O'H

            1 Reply Last reply
            0
            • R Ray Cassick

              Yeah... NASA has always used the triple redundancy method in all it's calculations. Even today on the shuttles.


              LinkedIn[^] | Blog[^] | Twitter[^]

              N Offline
              N Offline
              Nagy Vilmos
              wrote on last edited by
              #10

              Soemwhere, I've got an electronicafied copy of the Apollo Orbiter Guidance System Manual. Serriouly geeky stuff.


              Panic, Chaos, Destruction. My work here is done. or "Drink. Get drunk. Fall over." - P O'H

              R R 2 Replies Last reply
              0
              • N Nagy Vilmos

                Soemwhere, I've got an electronicafied copy of the Apollo Orbiter Guidance System Manual. Serriouly geeky stuff.


                Panic, Chaos, Destruction. My work here is done. or "Drink. Get drunk. Fall over." - P O'H

                R Offline
                R Offline
                Ray Cassick
                wrote on last edited by
                #11

                Dude... it would be SO COOL if I could get a copy of that...


                LinkedIn[^] | Blog[^] | Twitter[^]

                C 1 Reply Last reply
                0
                • D Delphi4ever

                  Today my esteemed coworker invented a brand new programming paradigm: Redundant Coding (tm). This buggy old legacy code we are working with has a least three almost identical and insanely complicated instances of a special form of coordinate transformation. We want to simplify, but which one to keep? My coworker suggested that we compare the results of the three code blocks too see which one, if any, would give diviant results. This immideately lead to the idea of letting the three instances "vote" on the right result. And BAM the Redundant Coding programming paradigm was born. Just as a jumbo jet has three of everything just in case, our code has three almost identical code blocks, just in case one of them is buggy! If one code block produces deviant results, the other two will take over! I am, of course, kidding. We will clean this mess up eventually.

                  C Offline
                  C Offline
                  Chris Meech
                  wrote on last edited by
                  #12

                  See, here we go again. It's just old technology wrapped up with a new name and released upon an unknowing public. I think this used to be called the Copy-Paste paradigm. :)

                  Chris Meech I am Canadian. [heard in a local bar] In theory there is no difference between theory and practice. In practice there is. [Yogi Berra]

                  1 Reply Last reply
                  0
                  • N Nagy Vilmos

                    Soemwhere, I've got an electronicafied copy of the Apollo Orbiter Guidance System Manual. Serriouly geeky stuff.


                    Panic, Chaos, Destruction. My work here is done. or "Drink. Get drunk. Fall over." - P O'H

                    R Offline
                    R Offline
                    Rob Grainger
                    wrote on last edited by
                    #13

                    Nagy Vilmos wrote:

                    Soemwhere, I've got an electronicafied copy of the Apollo Orbiter Guidance System Manual. Serriouly geeky stuff.

                    "electronica-fied". Wow, an Apollo Orbiter GSM set to blinding techno perhaps, now that is a geek-fest. :laugh:

                    1 Reply Last reply
                    0
                    • R Richard A Dalton

                      I'm pretty sure the very model you describe is in use in some situations. Am I crazy for thinking that something along those lines was in use by NASA at some point? Or was that just a crazy story I heard? There's a scene in the movie Apollo 13 where the guys back in Houston need to check some maths. The camera pans along a line of slide rule wielding boffins all confirming that they get the same result and giving a thumbs up. -Rd

                      B Offline
                      B Offline
                      BillW33
                      wrote on last edited by
                      #14

                      The NASA space shuttle uses five identical computers! Look at this article under "Flight Systems: http://en.wikipedia.org/wiki/Space_Shuttle[^]

                      Just because the code works, it doesn't mean that it is good code.

                      1 Reply Last reply
                      0
                      • D Delphi4ever

                        Today my esteemed coworker invented a brand new programming paradigm: Redundant Coding (tm). This buggy old legacy code we are working with has a least three almost identical and insanely complicated instances of a special form of coordinate transformation. We want to simplify, but which one to keep? My coworker suggested that we compare the results of the three code blocks too see which one, if any, would give diviant results. This immideately lead to the idea of letting the three instances "vote" on the right result. And BAM the Redundant Coding programming paradigm was born. Just as a jumbo jet has three of everything just in case, our code has three almost identical code blocks, just in case one of them is buggy! If one code block produces deviant results, the other two will take over! I am, of course, kidding. We will clean this mess up eventually.

                        P Offline
                        P Offline
                        pg az
                        wrote on last edited by
                        #15

                        Delphi4ever wrote:

                        We will clean this mess up eventually

                        Although you used the phrase "clean..up", the Google query (( Joel rewrite )) is actually ALL you need to bring up "Things You Should Never Do, Part I by Joel Spolsky". I find this query amazing - it makes me suspicious, that Google has tracked my searches, knows I am interested in programming stuff, and e.g. if some random person enters the Google query (( Joel rewrite )) then it might fetch a differently tailored hit list ? Anyway the article speaks for itself and being now an oldster I find myself agreeing, although I cringe at my history of youthful aspirations to "clean up" stuff.

                        pg--az

                        R 1 Reply Last reply
                        0
                        • P pg az

                          Delphi4ever wrote:

                          We will clean this mess up eventually

                          Although you used the phrase "clean..up", the Google query (( Joel rewrite )) is actually ALL you need to bring up "Things You Should Never Do, Part I by Joel Spolsky". I find this query amazing - it makes me suspicious, that Google has tracked my searches, knows I am interested in programming stuff, and e.g. if some random person enters the Google query (( Joel rewrite )) then it might fetch a differently tailored hit list ? Anyway the article speaks for itself and being now an oldster I find myself agreeing, although I cringe at my history of youthful aspirations to "clean up" stuff.

                          pg--az

                          R Offline
                          R Offline
                          Richard A Dalton
                          wrote on last edited by
                          #16

                          I've just finished an almost complete rewrite of a system that I support. The users see relatively few differences apart from the fact that things are a little nippier. I see big differences when I need to react to features requests. The original app was developed under extreme time pressures by a developer that was figuring out ASP.Net as they went. I think I might have just about stayed within the spirit of that Joel article. I didn't start again with an empty IDE. It was an evolution, even if virtually every line of code in the App was touched at some point. Kinda like the Janitor that has had the same Mop for 30 years. He's changed the handle 6 times and the head 20 times, but it's the same Mop. -Rd

                          P 1 Reply Last reply
                          0
                          • R Richard A Dalton

                            I've just finished an almost complete rewrite of a system that I support. The users see relatively few differences apart from the fact that things are a little nippier. I see big differences when I need to react to features requests. The original app was developed under extreme time pressures by a developer that was figuring out ASP.Net as they went. I think I might have just about stayed within the spirit of that Joel article. I didn't start again with an empty IDE. It was an evolution, even if virtually every line of code in the App was touched at some point. Kinda like the Janitor that has had the same Mop for 30 years. He's changed the handle 6 times and the head 20 times, but it's the same Mop. -Rd

                            P Offline
                            P Offline
                            pg az
                            wrote on last edited by
                            #17

                            Richard A. Dalton wrote:

                            I see big differences when I need to react to features requests

                            I didn't go back and reread Joel's article, but indeed if your app NEEDS to support further changes that can easily justify refactoring - bad code is so brittle.

                            Richard A. Dalton wrote:

                            developer that was figuring out ASP.Net as they went.

                            But, even Microsoft is figuring-out-stuff-as-it-goes. I don't know much about Asp.net personally, but synchronicity-wise I was just skimming slashdot and found a seemingly worrisome article -- Google query (( slashdot cookies ASP )) finds the article IT: New Crypto Attack Affects Millions of ASP.NET Apps[^]

                            pg--az

                            1 Reply Last reply
                            0
                            • R Ray Cassick

                              Dude... it would be SO COOL if I could get a copy of that...


                              LinkedIn[^] | Blog[^] | Twitter[^]

                              C Offline
                              C Offline
                              Carlos Fonseca
                              wrote on last edited by
                              #18

                              http://www.ibiblio.org/apollo/links.html[^] http://history.nasa.gov/afj/[^]

                              Quidquid latine dictum sit, altum viditur.

                              R 1 Reply Last reply
                              0
                              • C Carlos Fonseca

                                http://www.ibiblio.org/apollo/links.html[^] http://history.nasa.gov/afj/[^]

                                Quidquid latine dictum sit, altum viditur.

                                R Offline
                                R Offline
                                Ray Cassick
                                wrote on last edited by
                                #19

                                DUDE! That is freakin' sweet! Thanks!


                                LinkedIn[^] | Blog[^] | Twitter[^]

                                1 Reply Last reply
                                0
                                • R Ray Cassick

                                  Yeah... NASA has always used the triple redundancy method in all it's calculations. Even today on the shuttles.


                                  LinkedIn[^] | Blog[^] | Twitter[^]

                                  H Offline
                                  H Offline
                                  hairy_hats
                                  wrote on last edited by
                                  #20

                                  Yes, its probes' systems vote between the results of the calculations in metric, imperial, and knotted rope tied to a log that's thrown off the back.

                                  1 Reply Last reply
                                  0
                                  • D Delphi4ever

                                    Today my esteemed coworker invented a brand new programming paradigm: Redundant Coding (tm). This buggy old legacy code we are working with has a least three almost identical and insanely complicated instances of a special form of coordinate transformation. We want to simplify, but which one to keep? My coworker suggested that we compare the results of the three code blocks too see which one, if any, would give diviant results. This immideately lead to the idea of letting the three instances "vote" on the right result. And BAM the Redundant Coding programming paradigm was born. Just as a jumbo jet has three of everything just in case, our code has three almost identical code blocks, just in case one of them is buggy! If one code block produces deviant results, the other two will take over! I am, of course, kidding. We will clean this mess up eventually.

                                    P Offline
                                    P Offline
                                    patbob
                                    wrote on last edited by
                                    #21

                                    Delphi4ever wrote:

                                    Today my esteemed coworker invented a brand new programming paradigm: Redundant Coding (tm). ... This immideately led to the idea of letting the three instances "vote" on the right result. And BAM the Redundant Coding programming paradigm was born.

                                    Sorry, that's as "old as the hills".. or at least, as old as the Space Shuttle. Three computers, each with software written by a different team of engineers (so the bugs are in different places) that vote on the result. Everything's working correctly when every vote is unanimous, but it can fly when there's only a simple majority. They scrubbed a launch in the early days because the votes weren't all unanimous. Now there's the way to use your backup systems :)

                                    patbob

                                    1 Reply Last reply
                                    0
                                    • D Delphi4ever

                                      Today my esteemed coworker invented a brand new programming paradigm: Redundant Coding (tm). This buggy old legacy code we are working with has a least three almost identical and insanely complicated instances of a special form of coordinate transformation. We want to simplify, but which one to keep? My coworker suggested that we compare the results of the three code blocks too see which one, if any, would give diviant results. This immideately lead to the idea of letting the three instances "vote" on the right result. And BAM the Redundant Coding programming paradigm was born. Just as a jumbo jet has three of everything just in case, our code has three almost identical code blocks, just in case one of them is buggy! If one code block produces deviant results, the other two will take over! I am, of course, kidding. We will clean this mess up eventually.

                                      B Offline
                                      B Offline
                                      BrainiacV
                                      wrote on last edited by
                                      #22

                                      One place I worked had five (count'em...5!) different memory management routines because "Microsoft's doesn't work." Really? Could it be you just don't know how to use it? Because that's going to be a big surprise to the millions of other programmers using it. But hey, when management wanted my opinion they told it to me.

                                      Psychosis at 10 Film at 11

                                      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