Future reuse of code

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • James Cameron

    Future reuse of code

    Hi I'm developing a program and the client is worried about future
    reuse of the code. Say 5, 10, 15 years down the road. This will be a
    major factor in selecting the development language. Any comments on
    past experience, research articles, comments on the matter would be
    much appreciated. I suspect something like C would be the best based
    on comments I received from the VB news group.

    Thanks for the help in advance

    James Cameron
  • E. Robert Tisdale

    #2
    Troll Alert: Future reuse of code

    James Cameron wrote:
    [color=blue]
    > Hi I'm developing a program and the client is worried about future
    > reuse of the code. Say 5, 10, 15 years down the road. This will be a
    > major factor in selecting the development language. Any comments on
    > past experience, research articles, comments on the matter would be
    > much appreciated. I suspect something like C would be the best based
    > on comments I received from the VB news group.
    >
    > Thanks for the help in advance
    >
    > James Cameron[/color]

    This question cross posted to five newsgroups appears to pit
    C against C++ against Java against Pascal against Visual Basic.
    If your intent was to start a flame war, this is the way to do it.

    Comment

    • Harald Hein

      #3
      Re: Future reuse of code

      "James Cameron" wrote:
      [color=blue]
      > I'm developing a program and the client is worried about future
      > reuse of the code. Say 5, 10, 15 years down the road.[/color]

      Tell your customer a lie. No one can predict 5 years, let alone 15 into
      the future in this business. If your client asks, he doesn't have much
      clue and will be happy with any answer.

      Comment

      • A Bag Of Memes

        #4
        Re: Future reuse of code


        "James Cameron" <james.cameron@ bindereng.com.a u> wrote in message
        news:45ab836a.0 308031802.2c968 5eb@posting.goo gle.com...[color=blue]
        > Hi I'm developing a program and the client is worried about future
        > reuse of the code. Say 5, 10, 15 years down the road. This will be a
        > major factor in selecting the development language. Any comments on
        > past experience, research articles, comments on the matter would be
        > much appreciated. I suspect something like C would be the best based
        > on comments I received from the VB news group.
        >
        > Thanks for the help in advance[/color]

        Why would language choice affect code reuse? You can reuse code written in
        any language as long as you care to.



        Comment

        • Mike Wahler

          #5
          Re: Future reuse of code


          James Cameron <james.cameron@ bindereng.com.a u> wrote in message
          news:45ab836a.0 308031802.2c968 5eb@posting.goo gle.com...[color=blue]
          > Hi I'm developing a program and the client is worried about future
          > reuse of the code. Say 5, 10, 15 years down the road. This will be a
          > major factor in selecting the development language. Any comments on
          > past experience, research articles, comments on the matter would be
          > much appreciated. I suspect something like C would be the best based
          > on comments I received from the VB news group.[/color]

          The language doesn't matter. Just keep the code
          in the freezer so it won't spoil.

          -Mike



          Comment

          • Malcolm

            #6
            Re: Future reuse of code


            "James Cameron" <james.cameron@ bindereng.com.a u> wrote in message
            [color=blue]
            > Hi I'm developing a program and the client is worried about future
            > reuse of the code. Say 5, 10, 15 years down the road. This will be a
            > major factor in selecting the development language.
            >[/color]
            Your best bet is conservative C89.

            Why not C++? Because the standard template library is only a few years old.
            Things might have changed out of recognition in 15 years time. You will
            stillbe able to compile the code, probably, but it will be difficult to
            maintain.

            C99 may never be implemented.

            Java COBOL and Visual Basic I know little about. VB is unstable, COBOL is
            virtually obsolete. Java might be an OK choice but is rather tied to the
            net. A C file, OTOH, will almost certainly be linkable in ten years time.



            Comment

            • John D.

              #7
              Re: Future reuse of code

              james.cameron@b indereng.com.au (James Cameron) wrote in message news:<45ab836a. 0308031802.2c96 85eb@posting.go ogle.com>...[color=blue]
              > Hi I'm developing a program and the client is worried about future
              > reuse of the code. Say 5, 10, 15 years down the road. This will be a
              > major factor in selecting the development language. Any comments on
              > past experience, research articles, comments on the matter would be
              > much appreciated. I suspect something like C would be the best based
              > on comments I received from the VB news group.[/color]

              The best language to ensure future reuse of the code is english.
              Whatever programming language you chose always remember to document
              your code.

              Comment

              • Donald Tees

                #8
                Re: Future reuse of code

                "Peter E.C. Dashwood" <dashwood@enter net.co.nz> wrote in message
                news:3f2e2ad3_6 @news.athenanew s.com...[color=blue]
                >
                > "James Cameron" <james.cameron@ bindereng.com.a u> wrote in message
                > news:45ab836a.0 308031802.2c968 5eb@posting.goo gle.com...[color=green]
                > > Hi I'm developing a program and the client is worried about future
                > > reuse of the code. Say 5, 10, 15 years down the road. This will be a
                > > major factor in selecting the development language. Any comments on
                > > past experience, research articles, comments on the matter would be
                > > much appreciated. I suspect something like C would be the best based
                > > on comments I received from the VB news group.
                > >[/color]
                >
                > The source language is irrelevant in terms of code re-use. (It is OBJECT
                > code that will be re-used...)
                >
                > You should select a source language SUITABLE FOR THE JOB YOU WANT TO DO!!!
                >
                > Then make sure that an OO or modular approach is adopted, wrap your
                > functions as components, and you can reuse them FOR EVER not just 15[/color]
                years.[color=blue]
                >
                > Pete.
                >[/color]

                Aren't you talking about marriage or something? About the *only* code I
                know that is still running after 15 years use is in Cobol. I could say the
                same for 30 years.

                Even in the last five years, the components I have used have evolved into
                different packaging, required updates for each OS, etc. etc.

                Donald


                Comment

                • Paul Barnett

                  #9
                  Re: Future reuse of code


                  "Malcolm" <malcolm@55bank .freeserve.co.u k> wrote in message
                  news:bgktdu$n07 $1@news8.svr.po l.co.uk...
                  [color=blue]
                  > ... COBOL is
                  > virtually obsolete...
                  >[/color]
                  Hey! Cut that out!

                  Check out this site: www.microfocus.com


                  Comment

                  • LX-i

                    #10
                    Re: Future reuse of code

                    James Cameron wrote:
                    ^^^^^^^^^^^^^
                    You're a great filmmaker - why are you switching to programming? :)
                    [color=blue]
                    > Hi I'm developing a program and the client is worried about future
                    > reuse of the code. Say 5, 10, 15 years down the road. This will be a
                    > major factor in selecting the development language. Any comments on
                    > past experience, research articles, comments on the matter would be
                    > much appreciated. I suspect something like C would be the best based
                    > on comments I received from the VB news group.
                    >
                    > Thanks for the help in advance
                    >
                    > James Cameron[/color]

                    (I'm a regular poster in comp.lang.cobol )

                    You really need to have them define what they mean by "code reuse". In
                    general, if the design of the system is done using components, this
                    really doesn't have to be an issue. A component could be written in any
                    number of languages, as long as it adheres to a standard interface (such
                    as COM).

                    And, 5 to 15 years down the road, what are they going to be "reusing"?
                    Seems to me, if they're interested in reuse, they'd use whatever
                    language you use on this project. At that point, the only decision you
                    need to make is, what language best supports the business logic you're
                    trying to automate?

                    Once you make this decision, structure the system in such a way that it
                    resembles a collection of building blocks (whether it's broken out by
                    component, by a collection of common subroutines, copybooks/macros,
                    whatever). Then, using your rationale for your language choice, and the
                    modularity design you've chosen, formulate a point paper for your client
                    detailing why the language you've chosen is the best for their needs,
                    and how you're posturing them for future code reuse.

                    Personally, I work on a large aircraft maintenance program for a major
                    military branch ;) . The system is written in COBOL, and we mostly use
                    copybooks (similar to macros in C) for our reuse. Each copybook has
                    comments that define the input parameters expected, and the output one
                    can expect from it. That way, if the process changes, we change the
                    copybook. The disadvantage to this technique is that it requires each
                    program that copies it to be recompiled (rebuilt).

                    I'm working on a few initiatives to convert this to common subroutines,
                    that can be modified and "switched out" without having to modify the
                    underlying programs. This is showing a lot of promise, and I know that
                    there are other regular posters here who have not only done this
                    successfully, but have also utilized C, VB, C++, even .NET classes and
                    components from within COBOL.

                    Of course, the bottom line - decide what language would be best, then
                    convince your client of your genius. :)


                    --
                    ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~
                    ~ / \ / ~ Live from Montgomery, AL! ~
                    ~ / \/ o ~ ~
                    ~ / /\ - | ~ AIM: LXi0007 ~
                    ~ _____ / \ | ~ E-mail: LXi0007@Netscap e.net ~
                    ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
                    ~ I do not read e-mail at the above address ~
                    ~ Please post if you wish to be contacted privately ~
                    ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~

                    Comment

                    • LX-i

                      #11
                      Re: Future reuse of code

                      Malcolm wrote:
                      [color=blue]
                      > Java COBOL and Visual Basic I know little about. VB is unstable, COBOL is
                      > virtually obsolete.[/color]

                      What? COBOL is obsolete? I guess OO and .NET are obsolete too... ;)


                      --
                      ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~
                      ~ / \ / ~ Live from Montgomery, AL! ~
                      ~ / \/ o ~ ~
                      ~ / /\ - | ~ AIM: LXi0007 ~
                      ~ _____ / \ | ~ E-mail: LXi0007@Netscap e.net ~
                      ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
                      ~ I do not read e-mail at the above address ~
                      ~ Please post if you wish to be contacted privately ~
                      ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~

                      Comment

                      • Harley

                        #12
                        Re: Future reuse of code


                        "Malcolm" <malcolm@55bank .freeserve.co.u k> wrote in message
                        news:bgktdu$n07 $1@news8.svr.po l.co.uk...
                        |
                        | "James Cameron" <james.cameron@ bindereng.com.a u> wrote in message
                        |
                        | > Hi I'm developing a program and the client is worried about future
                        | > reuse of the code. Say 5, 10, 15 years down the road. This will be a
                        | > major factor in selecting the development language.
                        | >
                        | Java COBOL and Visual Basic I know little about. VB is unstable, COBOL is
                        | virtually obsolete.

                        COBOL ain't dead yet.
                        It has a history, and some code that surpasses the 15 year reusability
                        requirement.




                        Comment

                        • Thomas Gagné

                          #13
                          Re: Future reuse of code

                          I've been very successful reusing COBOL, but mostly by virtue of it being
                          accessible behind CICS. I can connect to CICS from any platform using various
                          combinations of middleware, and avail my new system of the legacy of
                          COBOL-implemented functions as long as those function serve the customer's
                          purpose.


                          Donald Tees wrote:[color=blue]
                          > "Peter E.C. Dashwood" <dashwood@enter net.co.nz> wrote in message
                          > news:3f2e2ad3_6 @news.athenanew s.com...
                          >[color=green]
                          >>[/color][/color]
                          <snip>[color=blue]
                          > Aren't you talking about marriage or something? About the *only* code I
                          > know that is still running after 15 years use is in Cobol. I could say the
                          > same for 30 years.
                          >
                          > Even in the last five years, the components I have used have evolved into
                          > different packaging, required updates for each OS, etc. etc.
                          >
                          > Donald
                          >
                          >[/color]

                          Comment

                          • Thomas Gagné

                            #14
                            Re: Future reuse of code



                            Peter E.C. Dashwood wrote:[color=blue]
                            >
                            > The source language is irrelevant in terms of code re-use. (It is OBJECT
                            > code that will be re-used...)
                            >[/color]
                            Simply by virtue of being OO it is not guaranteed to be reusable. Paradigm is
                            no substitute for design.
                            [color=blue]
                            > You should select a source language SUITABLE FOR THE JOB YOU WANT TO DO!!![/color]

                            Well said.
                            [color=blue]
                            >
                            > Then make sure that an OO or modular approach is adopted, wrap your
                            > functions as components, and you can reuse them FOR EVER not just 15 years.[/color]

                            Again, well said. Good advice.

                            Comment

                            • jce

                              #15
                              Re: Future reuse of code

                              "James Cameron" <james.cameron@ bindereng.com.a u> wrote in message
                              news:45ab836a.0 308031802.2c968 5eb@posting.goo gle.com...[color=blue]
                              > Hi I'm developing a program and the client is worried about future
                              > reuse of the code. Say 5, 10, 15 years down the road. This will be a
                              > major factor in selecting the development language. Any comments on
                              > past experience, research articles, comments on the matter would be
                              > much appreciated. I suspect something like C would be the best based
                              > on comments I received from the VB news group.
                              >
                              > Thanks for the help in advance
                              >
                              > James Cameron[/color]

                              <---repeated from another post---->
                              In 5/10/15 years the questions come down to (a) Do we have time and money to
                              port (b) Can we survive with what we have or (c) is there a market product
                              that has what we want.

                              In general the argument seems to go straight to (b) and (c). No one wants
                              to pay for an upgrade.
                              <---repeated from another post---->

                              Java already has issues. The backward compatibility isn't the 100%
                              promised....you constantly need to upgrade to get the latest and greatest.
                              The API s have a lifecycle of a year or two so you are constantly faced with
                              question (a).

                              Seems to me that .NET would work best here because then you can pick the
                              source of your choice. I don't know much about this so I shouldn't really
                              comment.

                              You don't say what the application is which makes the response hard. Some
                              language are better for some things than others ;-)
                              It might be better for example as a plug-in to another application (say
                              eclipse) rather than you developing an entire framework.

                              I would always suggest a search on sourceforge to see if something is out
                              there that helps....

                              Personally I have four views - when you are talking of multiple programmers:

                              1. If you have COBOL programmers use COBOL. If you have C programmers use
                              C. This is built on the shaky assumption that they are good coders. I
                              would rather have competent programmers writing competent code that provides
                              higher stability than competent programmers writing immature code. Bear in
                              mind that COBOL has an underground "cool" factor now....no, really...

                              2. Java is the easiest answer to sell and as pointed out here...it's
                              pretty vanilla (which doesn't mean no gotchas) but should be relatively
                              readable. So if you're in competent programmer you can understand this
                              easily enough.

                              3. Does anyone really look to an application to last this long? Seems to
                              me that everything goes through a rewrite as part of natural evolution. I'd
                              rather go for quality than anything (which means I invested in Betamax over
                              VHS and Token Ring over Ethernet I suppose).

                              4. The MOST important question is ........does it matter if I can reuse it
                              in 5 years if I cannot get it out of the door quickly now? No point
                              architecting a 15 year plan if it takes 5 years to execute and you need it
                              in 3 months. I didn't get that priority from your original note.

                              If you are on your own then I only have one comment:
                              Narrow choices down to what you are comfortable with then add those
                              languages you are confident of handling. You have to deliver the quality
                              product NOW and not 15 years from now.

                              Here's the kicker:
                              Imagine......Su n goes belly up in 2006....Microso ft antes up with a few
                              billion to buy the Java licensing rights....woo hooo.....We'll all try
                              desperately to port to Inga's free open source virtual software layer Ingot
                              that runs on EyeBeeEmux to remove Microsoft dependencies... .(remember they
                              once thought the earth was flat and that Senators were for the people).
                              In 2015 we no longer run processors as we know them. Electrons have been
                              isolated on switches that are built on self managed bio matter developed in
                              the Democratic People's China by po'd shepherds who refuse to divulge their
                              methods to the Communist States of America.

                              JCE

                              (Notice the lack of Pascal support here....why did we ignore ADA?)


                              Comment

                              Working...