Forgot your password?
typodupeerror

No More Coding From Scratch? 323

Posted by Cliff
from the digging-through-the-automation dept.
Susan Elliott Sim asks: "In the science fiction novel, 'A Deepness in the Sky,' Vernor Vinge described a future where software is created by 'programmer archaeologists' who search archives for existing pieces of code, contextualize them, and combine them into new applications. So much complexity and automation has been built into code that it is simply infeasible to build from scratch. While this seems like the ultimate code reuse fantasy (or nightmare), we think it's starting to happen with the availability of Open Source software. We have observed a number of projects where software development is driven by the identification, selection, and combination of working software systems. More often than not, these constituent parts are Open Source software systems and typically not designed to be used as components. These parts are then made to interoperate through wrappers and glue code. We think this trend is a harbinger of things to come. What do you think? How prevalent is this approach to new software development? What do software developers think about their projects being used in such a way?"
This discussion has been archived. No new comments can be posted.

No More Coding From Scratch?

Comments Filter:
  • by technoextreme (885694) on Saturday November 04, 2006 @06:02PM (#16719723)
    I certainly do not want to be developing the same common hardware implementation for a FPGA over and over and over again. Give me something the code for something that works and let me get to the stuff that is unique to the project.
  • OhGodPleaseNo (Score:3, Interesting)

    by cperciva (102828) on Saturday November 04, 2006 @07:18PM (#16720369) Homepage
    Code re-use is a great idea. Free software is a great idea. Taken together, and to an extreme, they can cause problems, particularly where security is concerned. What happens when someone finds a security flaw? How can you contact the people who are reusing your code if you have no idea who they are?

    To take a personal example, my delta compression code [daemonology.net], which I wrote for FreeBSD, is now being used by Apple and Mozilla to distribute updates; I've talked to their developers, and if I find a security flaw in this code (very unlikely, considering how simple it is), I'll be able to inform them and make sure they get the fix. On the other hand, I know developers from several Linux distributions have been looking at using my code, but I'm not sure if they're actually using it; and searching on Google reveals dozens of other people who are using (or at very least talking about using) this code.

    Putting together software by scavenging code from all over the Internet is like eating out of a garbage dump: Some of what you get is good and some of what you get is bad; but when there's a nation-wide recall of contaminated spinach, you'll have no idea if what you're eating is going to kill you.
  • by kotku (249450) on Sunday November 05, 2006 @05:23AM (#16723439) Journal
    Why does everybody want a "revolution" when evolution does the job? You only have to look at the language popularity charts to see the trend away from low level programming languages to higher level languages with more expressive constructs. Yes they were here years ago but it takes time for things to catch on properly. I program aeronautical systems for a living and never step outside strict ANSI C for flight code. However for the supporting tools around us we use Python. It isn't FAST but it is fast enough to get the job done and we can develop new tools faster and easier than coding them in C/C++. Why becase Python is a more expressive language than C and for a large domain of problems is now more suitable. The current state of programming language usage is more like a sliding window over the domain of currently available and yet to be available languages. There are rarely revolutions but it is dumb to say that what we are doing today is no differnt to 40 years ago. System complexity rises all the times and new ways of expressing the problems and solutions to those problems will evolve over time. Reusing a 20 years old library will not cut it.
  • by samael (12612) <Andrew@Ducker.org.uk> on Sunday November 05, 2006 @06:18PM (#16729179) Homepage
    The promise of SOA is, sadly, not terribly accurate.

    Services change over time, new projects need extra bits of information, changes regulations mean that input that was allowed no longer is, etc. And you either end up with 300 different versions of each business service, so that older clients can still talk to their version of the service, or you have to update the clients whenever the server versions change.

    They're still useful - we use them a lot where I work, but they aren't a silver bullet.

"Don't worry about people stealing your ideas. If your ideas are any good, you'll have to ram them down people's throats." -- Howard Aiken

Working...