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 Insider News
  4. I’ve inherited 200K lines of spaghetti code — what now?

I’ve inherited 200K lines of spaghetti code — what now?

Scheduled Pinned Locked Moved The Insider News
comdesigncollaborationquestion
5 Posts 5 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.
  • T Offline
    T Offline
    Terrence Dorsey
    wrote on last edited by
    #1

    Ars Technica[^]:

    I am newly employed as the sole "SW Engineer" in a fairly small shop of scientists who have spent the last 10-20 years cobbling together a vast code base. The program itself is a physical model of a complex chemical processing plant; the team that wrote it has incredibly deep domain knowledge but little or no formal training in programming fundamentals. They have asked me to begin presenting to the team some of the principles of modern software development. They want me to introduce some of the industry-standard practices and strategies regarding coding conventions, lifecycle management, high-level design patterns, and source control. Frankly, it's a fairly daunting task and I'm not sure where to begin.

    A daunting task, and here are some great guidelines for getting started.

    D P E 3 Replies Last reply
    0
    • T Terrence Dorsey

      Ars Technica[^]:

      I am newly employed as the sole "SW Engineer" in a fairly small shop of scientists who have spent the last 10-20 years cobbling together a vast code base. The program itself is a physical model of a complex chemical processing plant; the team that wrote it has incredibly deep domain knowledge but little or no formal training in programming fundamentals. They have asked me to begin presenting to the team some of the principles of modern software development. They want me to introduce some of the industry-standard practices and strategies regarding coding conventions, lifecycle management, high-level design patterns, and source control. Frankly, it's a fairly daunting task and I'm not sure where to begin.

      A daunting task, and here are some great guidelines for getting started.

      D Offline
      D Offline
      devvvy
      wrote on last edited by
      #2

      Chemical processing plant... that worries me. Can you implement some sort of ShutDown() or SelfDestructClean() from Finally block?

      dev

      K 1 Reply Last reply
      0
      • T Terrence Dorsey

        Ars Technica[^]:

        I am newly employed as the sole "SW Engineer" in a fairly small shop of scientists who have spent the last 10-20 years cobbling together a vast code base. The program itself is a physical model of a complex chemical processing plant; the team that wrote it has incredibly deep domain knowledge but little or no formal training in programming fundamentals. They have asked me to begin presenting to the team some of the principles of modern software development. They want me to introduce some of the industry-standard practices and strategies regarding coding conventions, lifecycle management, high-level design patterns, and source control. Frankly, it's a fairly daunting task and I'm not sure where to begin.

        A daunting task, and here are some great guidelines for getting started.

        P Offline
        P Offline
        peterchen
        wrote on last edited by
        #3

        In my experience: Don't try to change the scientists. Getting them to use source control is essential for business. Getting them to use other variable names than i, j, k, x, y, z, lambda and combinations thereof is a lofty goal. Getting them to write a purpose (or even a contract) comment on a function is daunting. Everythign else - like code smells / refactoring, you can best do in code reviews, ideally triggered by them asking you "I have this problem, how can I solve this?".

        FILETIME to time_t
        | FoldWithUs! | sighist | WhoIncludes - Analyzing C++ include file hierarchy

        1 Reply Last reply
        0
        • T Terrence Dorsey

          Ars Technica[^]:

          I am newly employed as the sole "SW Engineer" in a fairly small shop of scientists who have spent the last 10-20 years cobbling together a vast code base. The program itself is a physical model of a complex chemical processing plant; the team that wrote it has incredibly deep domain knowledge but little or no formal training in programming fundamentals. They have asked me to begin presenting to the team some of the principles of modern software development. They want me to introduce some of the industry-standard practices and strategies regarding coding conventions, lifecycle management, high-level design patterns, and source control. Frankly, it's a fairly daunting task and I'm not sure where to begin.

          A daunting task, and here are some great guidelines for getting started.

          E Offline
          E Offline
          ed welch
          wrote on last edited by
          #4

          change job ;)

          1 Reply Last reply
          0
          • D devvvy

            Chemical processing plant... that worries me. Can you implement some sort of ShutDown() or SelfDestructClean() from Finally block?

            dev

            K Offline
            K Offline
            KbrKnight
            wrote on last edited by
            #5

            I like this idea. Let there a

            if_spill_detected(cleanupcmd, shutdowncmd, evacuatecmd)

            method which implements

            SOS()

            interface.

            --> Getting information off the Internet is like taking a drink from a fire hydrant. --> In three words I can sum up everything I've learned about life: it goes on.

            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