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. A career first for me

A career first for me

Scheduled Pinned Locked Moved The Weird and The Wonderful
hardwarecssdebuggingjsonperformance
19 Posts 11 Posters 4 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.
  • D Daniel Pfeffer

    Gary Wheeler wrote:

    passed away a couple of years ago

    Did he fall, or was he pushed? :suss: :)

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

    G Offline
    G Offline
    Gary Wheeler
    wrote on last edited by
    #7

    Let me put it this way. The only thing he and I had in common is that we are/were both avid cyclists. I used to see him out on our local bike paths a couple times a month. It was so, so tempting...

    Software Zen: delete this;

    1 Reply Last reply
    0
    • H honey the codewitch

      Congratulations! I don't envy you your task, and that's quite a rabbit to pull out of your hat. Horror stories like these are how I convince my managers that code reviews are worth their weight in meetings.

      Real programmers use butterflies

      G Offline
      G Offline
      Gary Wheeler
      wrote on last edited by
      #8

      I've been working here for 30 years, and in all that time there has only been one code review ever held. At the end of that one, the developer on the 'hot seat' told his boss if he ever held another one, he'd quit. I wasn't present, but I'm pretty sure it wasn't handled very well. I don't think anyone went into it with the idea of "stabbing it with their steely knives" trying to kill the beast, but I doubt the ground rules were very detailed. Also, the guy chosen as the guinea pig was probably the worst choice to go first. Sharp guy and easy to work with, but not one to handle criticism well. That said, if there had ever been any kind of detailed code review of the POS I'm modifying, the author would have been terminated with extreme prejudice shortly thereafter.

      Software Zen: delete this;

      H 1 Reply Last reply
      0
      • G Gary Wheeler

        I've been working here for 30 years, and in all that time there has only been one code review ever held. At the end of that one, the developer on the 'hot seat' told his boss if he ever held another one, he'd quit. I wasn't present, but I'm pretty sure it wasn't handled very well. I don't think anyone went into it with the idea of "stabbing it with their steely knives" trying to kill the beast, but I doubt the ground rules were very detailed. Also, the guy chosen as the guinea pig was probably the worst choice to go first. Sharp guy and easy to work with, but not one to handle criticism well. That said, if there had ever been any kind of detailed code review of the POS I'm modifying, the author would have been terminated with extreme prejudice shortly thereafter.

        Software Zen: delete this;

        H Offline
        H Offline
        honey the codewitch
        wrote on last edited by
        #9

        That sounds like a disaster. Code reviews can be helpful but you do have to go in with the idea of constructive criticism, and in any case, it's easier after the first couple of times. :)

        Real programmers use butterflies

        1 Reply Last reply
        0
        • G Gary Wheeler

          I have been working as a developer for a little over 40 years. In all that time, I have kept my comments clean. I am an avid user of curse words in my normal conversations, both verbal and online. It just always seemed unprofessional to use vulgar language in my code. Until today.

          /***********************************************************
          * USELESS SHIT LEFT OVER FROM THE ORIGINAL IMPLEMENTATION *
          ***********************************************************/

          I am now saddled with responsible for a piece of product code that is over 30 years old and still in active use. It's in C and started out on custom-built embedded hardware. Now it runs under Windows on an industrial PC. The original creator of this pus-oozing bedsore author of this stuff deliberately wrote it in a fashion that no one else could maintain it. He even cultivated a mythology about it, that it was dangerous for other people to even look at it, because it was so "performance-intensive". A few years ago he decided to retire rather than accept reassignment to another product. A succession of other people have taken it over, but no significant maintenance has been performed. We now have a hardware obsolescence issue that requires a code change. I've spent well over 100 hours over the last month going through the code, finding all references to the bits that need replaced. Based on my study, only 4 out of the over 20 functions in the module really do anything with the hardware that's going obsolete. The rest are basically stubs and no-ops, but their return values are used to direct logic elsewhere. I have had to trace every single reference to the functions and the global values involved to ensure that it was safe to change things. I had to leave all these other bits in place because removing them would have wreaked havoc in other logic I don't want to touch. After all this, it took me less than a day to write the new code.

          Software Zen: delete this;

          B Offline
          B Offline
          Bernhard Hiller
          wrote on last edited by
          #10

          Look at it from a different angle: that guy was actually very smart. When ever you touch a little useless line, you are likely to break the codez. Thus he provides proof that the code really requires deep long thoughts and enormous diligence. Which can be provided by really smart asses people like him only.

          Oh sanctissimi Wilhelmus, Theodorus, et Fredericus!

          1 Reply Last reply
          0
          • G Gary Wheeler

            I have been working as a developer for a little over 40 years. In all that time, I have kept my comments clean. I am an avid user of curse words in my normal conversations, both verbal and online. It just always seemed unprofessional to use vulgar language in my code. Until today.

            /***********************************************************
            * USELESS SHIT LEFT OVER FROM THE ORIGINAL IMPLEMENTATION *
            ***********************************************************/

            I am now saddled with responsible for a piece of product code that is over 30 years old and still in active use. It's in C and started out on custom-built embedded hardware. Now it runs under Windows on an industrial PC. The original creator of this pus-oozing bedsore author of this stuff deliberately wrote it in a fashion that no one else could maintain it. He even cultivated a mythology about it, that it was dangerous for other people to even look at it, because it was so "performance-intensive". A few years ago he decided to retire rather than accept reassignment to another product. A succession of other people have taken it over, but no significant maintenance has been performed. We now have a hardware obsolescence issue that requires a code change. I've spent well over 100 hours over the last month going through the code, finding all references to the bits that need replaced. Based on my study, only 4 out of the over 20 functions in the module really do anything with the hardware that's going obsolete. The rest are basically stubs and no-ops, but their return values are used to direct logic elsewhere. I have had to trace every single reference to the functions and the global values involved to ensure that it was safe to change things. I had to leave all these other bits in place because removing them would have wreaked havoc in other logic I don't want to touch. After all this, it took me less than a day to write the new code.

            Software Zen: delete this;

            M Offline
            M Offline
            MarkTJohnson
            wrote on last edited by
            #11

            Gary Wheeler wrote:

            He even cultivated a mythology about it, that it was dangerous for other people to even look at it,

            Observing the code changes the code. Physics!

            I’ve given up trying to be calm. However, I am open to feeling slightly less agitated.

            G 1 Reply Last reply
            0
            • M MarkTJohnson

              Gary Wheeler wrote:

              He even cultivated a mythology about it, that it was dangerous for other people to even look at it,

              Observing the code changes the code. Physics!

              I’ve given up trying to be calm. However, I am open to feeling slightly less agitated.

              G Offline
              G Offline
              Gary Wheeler
              wrote on last edited by
              #12

              He told his management he didn't want anyone else to see it since they wouldn't understand it and would screw it up if allowed.

              Software Zen: delete this;

              1 Reply Last reply
              0
              • G Gary Wheeler

                I have been working as a developer for a little over 40 years. In all that time, I have kept my comments clean. I am an avid user of curse words in my normal conversations, both verbal and online. It just always seemed unprofessional to use vulgar language in my code. Until today.

                /***********************************************************
                * USELESS SHIT LEFT OVER FROM THE ORIGINAL IMPLEMENTATION *
                ***********************************************************/

                I am now saddled with responsible for a piece of product code that is over 30 years old and still in active use. It's in C and started out on custom-built embedded hardware. Now it runs under Windows on an industrial PC. The original creator of this pus-oozing bedsore author of this stuff deliberately wrote it in a fashion that no one else could maintain it. He even cultivated a mythology about it, that it was dangerous for other people to even look at it, because it was so "performance-intensive". A few years ago he decided to retire rather than accept reassignment to another product. A succession of other people have taken it over, but no significant maintenance has been performed. We now have a hardware obsolescence issue that requires a code change. I've spent well over 100 hours over the last month going through the code, finding all references to the bits that need replaced. Based on my study, only 4 out of the over 20 functions in the module really do anything with the hardware that's going obsolete. The rest are basically stubs and no-ops, but their return values are used to direct logic elsewhere. I have had to trace every single reference to the functions and the global values involved to ensure that it was safe to change things. I had to leave all these other bits in place because removing them would have wreaked havoc in other logic I don't want to touch. After all this, it took me less than a day to write the new code.

                Software Zen: delete this;

                Mike HankeyM Offline
                Mike HankeyM Offline
                Mike Hankey
                wrote on last edited by
                #13

                I embed some curse words in my comments but I'm the only one that will ever read itr.

                The less you need, the more you have. Why is there a "Highway to Hell" and only a "Stairway to Heaven"? A prediction of the expected traffic load? JaxCoder.com

                1 Reply Last reply
                0
                • G Gary Wheeler

                  I have been working as a developer for a little over 40 years. In all that time, I have kept my comments clean. I am an avid user of curse words in my normal conversations, both verbal and online. It just always seemed unprofessional to use vulgar language in my code. Until today.

                  /***********************************************************
                  * USELESS SHIT LEFT OVER FROM THE ORIGINAL IMPLEMENTATION *
                  ***********************************************************/

                  I am now saddled with responsible for a piece of product code that is over 30 years old and still in active use. It's in C and started out on custom-built embedded hardware. Now it runs under Windows on an industrial PC. The original creator of this pus-oozing bedsore author of this stuff deliberately wrote it in a fashion that no one else could maintain it. He even cultivated a mythology about it, that it was dangerous for other people to even look at it, because it was so "performance-intensive". A few years ago he decided to retire rather than accept reassignment to another product. A succession of other people have taken it over, but no significant maintenance has been performed. We now have a hardware obsolescence issue that requires a code change. I've spent well over 100 hours over the last month going through the code, finding all references to the bits that need replaced. Based on my study, only 4 out of the over 20 functions in the module really do anything with the hardware that's going obsolete. The rest are basically stubs and no-ops, but their return values are used to direct logic elsewhere. I have had to trace every single reference to the functions and the global values involved to ensure that it was safe to change things. I had to leave all these other bits in place because removing them would have wreaked havoc in other logic I don't want to touch. After all this, it took me less than a day to write the new code.

                  Software Zen: delete this;

                  S Offline
                  S Offline
                  Slow Eddie
                  wrote on last edited by
                  #14

                  Would it be easier to deduce the function it performed and re-write from scratch. Or is that not possible given the circumstances?

                  "Momma looks down and she spit on the ground evry time my (his) name gets mentioned" - Paul Simon

                  G 1 Reply Last reply
                  0
                  • S Slow Eddie

                    Would it be easier to deduce the function it performed and re-write from scratch. Or is that not possible given the circumstances?

                    "Momma looks down and she spit on the ground evry time my (his) name gets mentioned" - Paul Simon

                    G Offline
                    G Offline
                    Gary Wheeler
                    wrote on last edited by
                    #15

                    We have sufficient information to recreate the product, but neither the manpower nor the time to do so.

                    Software Zen: delete this;

                    1 Reply Last reply
                    0
                    • G Gary Wheeler

                      'twould be nice, except this guy passed away a couple of years ago :suss:.

                      Software Zen: delete this;

                      C Offline
                      C Offline
                      Caslen
                      wrote on last edited by
                      #16

                      If you know where he's buried you could still arrange for his legs to be broken...

                      G 1 Reply Last reply
                      0
                      • C Caslen

                        If you know where he's buried you could still arrange for his legs to be broken...

                        G Offline
                        G Offline
                        Gary Wheeler
                        wrote on last edited by
                        #17

                        If I came across it, I hope my bladder's full...

                        Software Zen: delete this;

                        1 Reply Last reply
                        0
                        • G Gary Wheeler

                          I have been working as a developer for a little over 40 years. In all that time, I have kept my comments clean. I am an avid user of curse words in my normal conversations, both verbal and online. It just always seemed unprofessional to use vulgar language in my code. Until today.

                          /***********************************************************
                          * USELESS SHIT LEFT OVER FROM THE ORIGINAL IMPLEMENTATION *
                          ***********************************************************/

                          I am now saddled with responsible for a piece of product code that is over 30 years old and still in active use. It's in C and started out on custom-built embedded hardware. Now it runs under Windows on an industrial PC. The original creator of this pus-oozing bedsore author of this stuff deliberately wrote it in a fashion that no one else could maintain it. He even cultivated a mythology about it, that it was dangerous for other people to even look at it, because it was so "performance-intensive". A few years ago he decided to retire rather than accept reassignment to another product. A succession of other people have taken it over, but no significant maintenance has been performed. We now have a hardware obsolescence issue that requires a code change. I've spent well over 100 hours over the last month going through the code, finding all references to the bits that need replaced. Based on my study, only 4 out of the over 20 functions in the module really do anything with the hardware that's going obsolete. The rest are basically stubs and no-ops, but their return values are used to direct logic elsewhere. I have had to trace every single reference to the functions and the global values involved to ensure that it was safe to change things. I had to leave all these other bits in place because removing them would have wreaked havoc in other logic I don't want to touch. After all this, it took me less than a day to write the new code.

                          Software Zen: delete this;

                          K Offline
                          K Offline
                          kapalmuks 3
                          wrote on last edited by
                          #18

                          ..with all your due respect!!.. 😇😇😇😇

                          1 Reply Last reply
                          0
                          • G Gary Wheeler

                            I have been working as a developer for a little over 40 years. In all that time, I have kept my comments clean. I am an avid user of curse words in my normal conversations, both verbal and online. It just always seemed unprofessional to use vulgar language in my code. Until today.

                            /***********************************************************
                            * USELESS SHIT LEFT OVER FROM THE ORIGINAL IMPLEMENTATION *
                            ***********************************************************/

                            I am now saddled with responsible for a piece of product code that is over 30 years old and still in active use. It's in C and started out on custom-built embedded hardware. Now it runs under Windows on an industrial PC. The original creator of this pus-oozing bedsore author of this stuff deliberately wrote it in a fashion that no one else could maintain it. He even cultivated a mythology about it, that it was dangerous for other people to even look at it, because it was so "performance-intensive". A few years ago he decided to retire rather than accept reassignment to another product. A succession of other people have taken it over, but no significant maintenance has been performed. We now have a hardware obsolescence issue that requires a code change. I've spent well over 100 hours over the last month going through the code, finding all references to the bits that need replaced. Based on my study, only 4 out of the over 20 functions in the module really do anything with the hardware that's going obsolete. The rest are basically stubs and no-ops, but their return values are used to direct logic elsewhere. I have had to trace every single reference to the functions and the global values involved to ensure that it was safe to change things. I had to leave all these other bits in place because removing them would have wreaked havoc in other logic I don't want to touch. After all this, it took me less than a day to write the new code.

                            Software Zen: delete this;

                            O Offline
                            O Offline
                            obermd
                            wrote on last edited by
                            #19

                            Been there done this rewrite. Only in my case it was my boss's code that I rewrote. He had four entry points and I whittled them down to two - add() and delete(). Had to track down all the instances where he used the four entry points and rework those as well. Final code not only was about two thirds the size it executed about a third faster (very disk intensive).

                            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