Slashdot Mirror


Dan Bricklin on Software That Lasts 200 Years

Lansdowne writes "Dan Bricklin, author of VisiCalc, has written a great new essay identifying a need for software that needs to last for decades or even centuries without replacement. Neither prepackaged nor custom-written software is fully able to meet the need, and he identifies how attributes of open source might help to produce long-lasting 'Societal Infrastructure Software'."

359 comments

  1. Work on the hardware first. by dosun88888 · · Score: 4, Insightful

    I think the subject line says it all. You can't worry about your software working for that long until your hardware can last that long.

    ~D

    1. Re:Work on the hardware first. by Keruo · · Score: 4, Funny

      we have the hardware, paper and pen only problem is that the software, human generally dies of old age around 70-100 years I haven't yet seen custom-written software from this field, but some re-packaged with silicone enhancemets did catch my eye

      --
      There are no atheists when recovering from tape backup.
    2. Re:Work on the hardware first. by Deag · · Score: 5, Informative

      Well Dan Bricklin does point out that software of today can run on different hardware and having software tied to specific hardware is a bad idea.

      He says that the system should stay fundamentaly the same and components can be replaced and upgraded, not having everything replaced completely every five years.

      He is not just talking about one specific program that doesn't change, but rather open standards and techniques that mean data that is stored today, will be accessible in 200 years time.

    3. Re:Work on the hardware first. by Vitus+Wagner · · Score: 1, Informative

      Whole point of Open Source software is that you can compile it for any architecture you've ever imagine.

      As long as you have some compilers ported to your new hardware and kernel with compatible system calls, you are perfectly safe.

    4. Re:Work on the hardware first. by Anonymous Coward · · Score: 0

      Even if the hardware and software lasted that long, society would most likely change so much that it would hardly be applicable.

      For example, look at 200 year old recipes or old laws like the Homestead and mining acts.
      Very few people today load up on lard while riding in the caravan to stake their claim in the praries.

    5. Re:Work on the hardware first. by julesh · · Score: 3, Insightful

      Well Dan Bricklin does point out that software of today can run on different hardware and having software tied to specific hardware is a bad idea

      Software of today can run on a variety of different hardware, but there is a degree of similarity between the different types of hardware that probably won't exist between todays computers and those available a hundred years from today, much less two.

      He is not just talking about one specific program that doesn't change, but rather open standards and techniques that mean data that is stored today, will be accessible in 200 years time.

      That, on the other hand, I can agree with. Anyone storing information in a format that isn't publically documented really ought to consider whether they'll still need it in 30 years time, and start migrating it to an open format now if they will. However, there are very few formats that are completely undocumented. I believe the most commonly used might be Microsoft Access databases. I'm not sure what documentation exists on the formats of various other commercial database systems; I believe Oracle's formats are well documented (?). What about MSSQL? Informix?

      Most accounts packages have documentation available on their database formats I believe. Certainly Sage and Pegasus provide such documentation. What about Great Plains, etc.?

    6. Re:Work on the hardware first. by 2Bits · · Score: 2, Interesting

      Well, hardware can be worn out, but you can replace it, component by component, as he has suggested.

      The problem with software is, as long as there is proprietory formats (or if you don't have the source codes), you can forget about what he calls "societal infrastructure software". If the government is thinking about being able to retrieve its data 50 years from now, better enforce that an open data format be used in your application, right now, and with clean and precise documentation. That means, no MS Word format, or something.

      To extend that, the database files would be troublesome too. Anyone knows the internal structure of the Oracle database files?

      My first job, out of school, and the first day on site, was to crack some database files of a system of a dead vendor. And there's no API (was in the early 90s), coz it's some PC software. The company has its customer info and accouting info in that DB, and must migrate it to another system which was still alive. There were about 300K records of all kinds, and no way to retrieve the data, except display them one by one, then copy it to another system. The alternative is to print out the whole thing, and re-enter in the new system. The system was critical to the company, but it has some serious bugs, but no one is going to fix.

      What are you going to do with that? Well, good thing I was fresh out of school, and learned my data structures well, and the files are not encrypted. After one day of cracking, I figured it was some weirdo B+tree plus some kind of trie, and some more acrobatic tree structures and pointers pointing to all directions (probably for indexing or fast access). Another day to figure out enough of info, and by looking at the relationship in the application, to retrieve the data from that dead system.

      That was easy enough. But if I were to brute-force retrieve from Oracle, that would be another thing.

      Governments can enforce that vendors must provide proper documentation of their software data formats before a deal is struck, especially if the system is going to run national infrastructures, such as IRS, etc. Especially when the system costs in the hundred of millions (if not billions), why don't they enforce that? I would be multibillionaire if I knew the answer.

    7. Re:Work on the hardware first. by Anonymous Coward · · Score: 2, Insightful

      Whole point? Umm.. no.

      Side benefit? Yes.

    8. Re:Work on the hardware first. by nmrs · · Score: 1

      not true at all.... as MAME and a host of other emulators have so clearly proven, if the software is that stable and that useful, someone will write an emulator to keep it running on contemporary hardware.

    9. Re:Work on the hardware first. by Vitus+Wagner · · Score: 1, Insightful

      Whole point is that software is comprehandable by humans. Anyone can read, fix and imporve.

      Porting to new architecture is integral part of fixing and improving.

      And it is no side effect, it is quite significal part of RMS's "free as freedom" - independence from any vendor (hardware vendor in this case).

    10. Re:Work on the hardware first. by foobsr · · Score: 1, Funny

      re-packaged with silicone enhancemets did catch my eye

      Please explain !

      CC.

      --
      TaijiQuan (Huang, 5 loosenings)
    11. Re:Work on the hardware first. by warrax_666 · · Score: 2, Interesting
      [...] mean data that is stored today, will be accessible in 200 years time.

      and a huge part of this is hardware support and, interestingly enough, storage bandwidth. You see, you have to migrate data from obsolete hardware/media to newer hardware/media, but in the near future the amount of data stored on obsolete hardware/media may become too large to transfer to newer hardware/media before it dies/decays/whatever, simply because the throughput of the transfer mechanism is too low.
      --
      HAND.
    12. Re:Work on the hardware first. by mqx · · Score: 1

      I think the subject line says it all. You can't worry about your software working for that long until your hardware can last that long.

      Not really true: just look at the Commodore 64 emulators. In a 100 years, the hardware may be long gone, but the emulators will likely survive as a continuing curiosity - because as pure software they can either be ported to new environments, or run as emulator within emulator (e.g. run old x86 C64 emulator within old x86 emulator recursively).

      As the capability of hardware goes forward, then it becomes feasible to emulate yesterday's hardware in today's software: this is just what the C64 emulators do (i.e. 1mhz cpu). In 50 years, it'll probably be a cinch (and, I'm guessing, it will be some university student's fun hack of a project) to emulate an entire Playstation 3 and "retro-game" with it on his future deck.

      The issue here is not about whether it's hardware or software, it's about whether documentation is available: i.e. "is it open".

    13. Re:Work on the hardware first. by Anonymous Coward · · Score: 0

      This is very insulting. Electrical engineers perform to very stringent standards, while software people just swim around in a haze. When a bug shows up in a microprocessor, the world stops and people shout for blood in the streets. When a software bug shows up, people sigh and reboot.
      Hardware is very good. The software is written by dreamers who never use their own software it seems.

    14. Re:Work on the hardware first. by Simon+Brooke · · Score: 4, Interesting
      Software of today can run on a variety of different hardware, but there is a degree of similarity between the different types of hardware that probably won't exist between todays computers and those available a hundred years from today, much less two.

      When I was a young programmer, I was shown a water quality analysis program used by an English water authority that some colleagues of mine at ICL were particularly proud of. Not that they'd written it. It was running on an ICL 2900 series mainframe running VME. But the software wasn't written for a 2900 series, so it actually ran on ICL 1900 emulator, running MOPS. But the software didn't run on a 1900 series, so the emulated 1900 was running an emulator of an older English Electric computer whose designation I've forgotten. But the software wasn't written for the English Electric computer, so the English Electric emulator running on the the 1900 emulator running on the 2900 was running an emulator of the world's first commercial computer, LEO, for which the software was actually written.

      When I saw this program in 1985 it was already thirty years old; it was still being used because it was still useful. If it is still in use it will be fifty years old, and (as 2900s are now very rare) is probably running under a further layer of emulation on an x86.

      Any Turing equivalent machine can, in principle, emulate any other Turing equivalent machine. Of course, true Turing equivalence requires unlimited memory, so in practical terms it's only possible to emulate machines which have less memory than the machine that's doing the emulating. But it's reasonable to suppose that the machines of 100 years in the future will have at least as much horsepower and at least as much memory as the machines of today. So they will be able to emulate the machines of today.

      A program written today may not be able to fully exploit the user interface features of a machine of two hundred years hence, any more than a BBC emulator can exploit the full graphics resolution of a modern workstation. But what a modern workstation can do is a superset of what the BBC Micro could do, so it can be emulated without compromise.

      In other words, hardware compatibility is a non-issue in making software which will last and which will remain useful.

      --
      I'm old enough to remember when discussions on Slashdot were well informed.
    15. Re:Work on the hardware first. by WillWare · · Score: 3, Insightful
      Lots of software includes or utilizes standardized hardware abstraction layers. Think about the POSIX standard, or the virtual machines for Java or Python or Common Lisp. These abstraction layers mean that large amounts of code are portable (sometimes with some effort, sometimes with none) across any hardware platform that supports the abstraction layer.

      Hardware manufacturers will always have a powerful incentive to support the abstraction layer, because by doing so, they'll instantly pick up a huge set of killer apps for their new CPUs. Standardized abstraction layers therefore provide an economically efficient way to divide the labor of porting software to new platforms.

      Are you thinking that in order to have software that's useful in the long term, it must run continuously on exactly the same piece of hardware? Think about Google (a very useful thing in our society). They must be bringing newer, faster computers on-line all the time. But if they're not total boneheads, they don't need to rewrite all their code to do this.

      --
      WWJD for a Klondike Bar?
    16. Re:Work on the hardware first. by Araneas · · Score: 1

      I think you will find huge numbers of recipes today existed in very similar if not identical forms 200+ years ago. I'm no luddite but I regualrily use recipes 50-150 years old.

    17. Re:Work on the hardware first. by hughk · · Score: 1
      I thought that at least one version of MOPS ran native on the 1900 series, at least under George 3. However, that is the distant past and I never had access to the PLAN source code.

      However the issue of nested emulators has also existed in the IBM world although the underlying machine architecture was relatively static, the operating systems weren't.

      --
      See my journal, I write things there
    18. Re:Work on the hardware first. by Anonymous Coward · · Score: 0

      "storing information in a format that isn't publically documented"

      "publicly"
      "publicly"
      "publicly"

      -- Conan The Orthographarian

    19. Re:Work on the hardware first. by 1u3hr · · Score: 2, Insightful
      You can't worry about your software working for that long until your hardware can last that long.

      I'm using software that orignally ran on an 8086, then a 286, the a 486, then two or three generations of Pentiums. The whole point is that hardware dies, software doesn't. Not to mention the bunch of Unix-derived software that I run as DOS or Linux apps, essentially unchanged for almost 30 years, though the hardware on my desk is more powerful than the whole server room at the university I learnt it on, and I doubt has a single commmon piece of hardware.

      If you'd RTFA: "Today, hardware is capable enough that software can be written that will continue to run unmodified as hardware is changed." Consider, perhaps, all the games people play in emulators like MAME.

    20. Re:Work on the hardware first. by 1u3hr · · Score: 1
      Any Turing equivalent machine can, in principle, emulate any other Turing equivalent machine.

      For an entertaining SF novel based on this, see Greg Egan's Permutation City. (And though entertaining, it has very serious philosophical points to make.)

    21. Re:Work on the hardware first. by pluggo · · Score: 0

      We have at least one example of 200+ year-old pen-and-paper software: the Constitution.

      It's open source, in that it is written in a human-readable language and there's a well-defined procedure for changing it. It's software in that it defines procedures and rules governing a system.

      Or maybe I'm just grasping. Hell, maybe if the Constitution and our laws were written in a programming lanugage instead of Legalese, some of those ambiguities would go away.

      --
      Pulling together is the aim of despotism and tyranny. Free men pull in all kinds of directions. It's the only way to mak
    22. Re:Work on the hardware first. by azaris · · Score: 1

      I'm not sure what documentation exists on the formats of various other commercial database systems; I believe Oracle's formats are well documented (?). What about MSSQL? Informix?

      Just dump it all (database structure and data) out in SQL statements and keep a copy of the SQL standard handy. Might be several terabytes but in easy enough to understand format that future conversions are easy.

      Most accounts packages have documentation available on their database formats I believe.

      Frankly, who cares. Most accounting information is not interesting after a few years other than for summary and long-time trend discovery and after the legal requirements for storing your business data have run out you can just about throw away all the details and just keep the totals.

    23. Re:Work on the hardware first. by WillWare · · Score: 1
      there is a degree of similarity between the different types of hardware [existing today] that probably won't exist between todays computers and those available a hundred years from today, much less two.

      The hardware will probably be very different as you say. We'll probably be using molecular logic gates and some sort of nanotube-based memory. But how will it appear to be organized from the programmer's (and therefore the software's) point of view? It's true that the history of computing isn't very old, but we got where we are today by a huge investment of money and thinking, spanning vastly different hardware platforms. There are C compilers for Pentium 4s and G5s, and also for 8080s and 6502s, and they use essentially the same input language. I think that's because all those programming language flame wars have been dealing with real (timeless?) issues.

      One day when we've maxed out Moore's Law, it will stop making economic sense to build a single-CPU computer. If there's a deep change in how software engineering is done, it will probably be around the issues of running a program over several CPUs. (Obviously, just MHO.)

      --
      WWJD for a Klondike Bar?
    24. Re:Work on the hardware first. by The_REAL_DZA · · Score: 1

      He should visit my workplace; we most definitely don't replace everything completely every five years (every twenty-five, maybe... though the guy who was asking me for 5.25" floppy disks the other day might even argue that one.)

      --


      This space intentionally left (almost) blank.
    25. Re:Work on the hardware first. by Short+Circuit · · Score: 1

      I would be multibillionaire if I knew the answer.

      You put your finger on the answer. Very few vendors are perceived as having a good enough product to provide what companies think they need. Those few venders' marketing teams sure work hard on pressing that perception.

      Then there's other things that go with being a successful business like market penetration, brand recognition, and company age.

      Also, if you look, most of today's computing technology businesses started playing the game before anyone had much experience, and there wasn't a whole lot of demand. They were "successful" before it even became possible to be "successful" by today's standards. (Thus the brand recognition, etc.)

      For a new company to try to get in on mature markets, they need lots of capital, lots of hype, and enough razzle-dazzle to keep their prospective client from remembering they were incorporated the previous year. Like Transmeta.

      Or, they need lots of capital and lots of prior recognition in multiple fields so people think they can handle it. Like IBM.

    26. Re:Work on the hardware first. by mvw · · Score: 1
      I was already amazed by the various very good Apple ][ emulators.

      The bad news is, that while the hardware can be emulated at some point you need the old software as well, be it the ROM chips with the Apple ][ Monitor routines, the Apple ][ Basic (Hello Bill! :-) and of course some Apple DOS or ProDOS copy to have a nice system. What about the hundreds of old games? You can't ask the companies, most of them are out of business.

      And that was a rather simple hardware.

      If you would emulate a todays system, you need to emulate the graphics chips, the network card, Direct X, and god knows what else. A legal nightmare to get permission to use under emulation.

      Anyone knows how long it takes until one can use old software? Does it take 70 years or so like the Mickey Mouse character protection?

      Regards,
      Marc

    27. Re:Work on the hardware first. by Travis+Fisher · · Score: 2, Insightful
      As has been pointed out elsewhere in this thread, one way around this problem is to use hardware which can be emulated in other hardware. The problem with this approach is that if you want to assume that a perfect emulator of your hardware will always be available you need to use highly standardized hardware. With the commoditized hardware of today its a stretch to imagine perfect emulation for any given component besides maybe the CPU. In the personal computing world, the closest to perfect emulation of an old machine is for something like the commodore 64, where modern emulators are close to bug-for-bug support of every chip in the machine, including video and i/o. In the x86 world emulators aren't close to that level of approximation.

      So the next thing you might consider is a program which doesn't depend that much on the hardware details, but uses a well-defined interface between its execution and the hardware. This "well-defined interface" is precisely what a modern operating system provides. This next level of abstraction means that you don't have to anticipate exact emulation of hardware, just emulation of hardware sufficient to run the OS and also provision of drivers for the OS to interface with either emulated or physical hardware (like video cards, disk drives, etc.) This potentially requires a lot of things to be updated in a nontrivial way for even small changes in the host platform, not very good.

      I would suggest the best way to get software that could be run for 200+ years is for it to be written for a particular virtual machine. The code for both the software and the virtual machine should be open source (so long-term portable and fixable), and the virtual machine should be very well-defined and not subject to version changing. The virtual machine software should also be cross-platform today so it is easier to port to tomorrows platforms. Java is close to the right idea, but it doesn't have a single virtual machine well-enough defined across various implementations and versions, nor is it open source.

      So why is it better to have a virtual machine written in say C which has to be ported to each new hardware/OS combination rather than having the base application written in C and ported to each new hardware/OS combination? The economy of scale. The virtual machine should have many users who will participate in the port and check for bugs. Then each coroporation/municipality/whoever who wants to run long-term stable code doesn't have to do this porting for themselves. For software which uses minimal I/O (no graphics whatsoever, only stdin/stdout) it probably would make more sense to keep the software in C and port it. But otherwise I/O isn't standard enough without a virtual machine...

    28. Re:Work on the hardware first. by Novus · · Score: 1

      If you would emulate a todays system, you need to emulate the graphics chips, the network card, Direct X, and god knows what else. A legal nightmare to get permission to use under emulation.

      On the other hand, considering the variety of hardware available today that is used through a common interface (such as DirectX), you wouldn't have to emulate a specific graphics card; implementing DirectX using the modern hardware would suffice. As long as the emulated Windows system (or whatever) has graphics card drivers to talk to that seem to do the right thing, everything's OK even though the graphics data simply gets blasted through a reasonably simple DirectX 9 to OpenGL 5.1 wrapper (or whatever we'll be using in the future) instead of being sent to a 100% accurately emulated Geforce FX.
    29. Re:Work on the hardware first. by putaro · · Score: 1

      In other words, hardware compatibility is a non-issue in making software which will last and which will remain useful.
      Well, that's assuming that you never need to make a change to the software. If you haven't got all of the tools AND expertise to use the tools you're going to have big trouble when you need to modify it.

      I wonder if that particular program had any Y2K dependencies and if so, what they did to fix them.

    30. Re:Work on the hardware first. by noselasd · · Score: 1

      No. It's not about 200 years of uptime. It's about the applications and
      the data. As mentioned in the article e.g. gouvernments need to track
      many many things, such as personal records for the citizens. Having to
      consantly upgrade such a system, train people to use that software every
      few years would be a major effort, and cost a lot. If you can just migrate the applications and data to a new platform/hardware as the
      hardware becomes obsolete/faulty is ok, as long as the applications continue to do their job.

    31. Re:Work on the hardware first. by rjstanford · · Score: 2, Insightful

      Governments can enforce that vendors must provide proper documentation of their software data formats before a deal is struck, especially if the system is going to run national infrastructures, such as IRS, etc. Especially when the system costs in the hundred of millions (if not billions), why don't they enforce that? I would be multibillionaire if I knew the answer.

      Well, for large scale data apps, it is available. Heck, I've taken courses in both Informix and Oracle internal structures - in memory and on disk. The information is certainly useful to have in rare but uncomfortable-when-they-happen situations. So not only are the structures (semi)-public, but there is a pool of people who can help you if you need the help. Also, a lot of major companies use source-code escrow in case they ever fold, with automatic release clauses in their larger contracts. This is not an unknown problem these days.

      --
      You're special forces then? That's great! I just love your olympics!
    32. Re:Work on the hardware first. by flacco · · Score: 1
      But it's reasonable to suppose that the machines of 100 years in the future will have at least as much horsepower and at least as much memory as the machines of today.

      funny, lately when i think of the future, Road Warrior-like images flash through my mind.

      --
      pr0n - keeping monitor glass spotless since 1981.
    33. Re:Work on the hardware first. by Carnildo · · Score: 1

      Anyone knows how long it takes until one can use old software? Does it take 70 years or so like the Mickey Mouse character protection?

      It takes until the company that wrote it no longer cares to enforce its copyright.

      (Or, if you want to be legal, it takes 135 years)

      --
      "They redundantly repeated themselves over and over again incessantly without end ad infinitum" -- ibid.
    34. Re:Work on the hardware first. by Carnildo · · Score: 1

      One day when we've maxed out Moore's Law, it will stop making economic sense to build a single-CPU computer. If there's a deep change in how software engineering is done, it will probably be around the issues of running a program over several CPUs. (Obviously, just MHO.)

      If you've been following recent hardware developments, it looks like we'll be seeing that change in the next five years. Everyone's planning to go multicore for either their next generation of CPUs, or the generation after that.

      --
      "They redundantly repeated themselves over and over again incessantly without end ad infinitum" -- ibid.
    35. Re:Work on the hardware first. by jc42 · · Score: 2, Interesting

      You can't worry about your software working for that long until your hardware can last that long.

      Oh, nonsense. Consider the well-known "Hello, world." program in the K&R C "bible". It's been around 30 years or so, and the hardware they were working on now only exists in a few museums. But that program is still in routine use on millions off computers.

      Note also that K&R included not only the code for the program, but the commands to compile and execute it. They correctly pointed out that this information covered the initial implementation details in most software, and once you had it working on a new system, you had soved the major problems in getting any software running on the new system.

      And note that, after more than a quarter century, their sample code to compile and execute this valuable little program still work on millions of computers, without changing a single character.

      Funny thing is, you can't say this about the equivalent programs in most other languages. I've seen attempts to do the same (code + compile if needed + invocation) for any number of other languages and OSs, but I've seen very few successes. Usually code that's only 10 years old will need tweaks. But if you have a standard-compliant (ANSI) compiler and a standard-compliant (POSIC) OS, you can type in this standard program using any editor, type in the compile command to any shell, and type in the invocation to that shell, and see the expected greeting appear on whatever "terminal" hardware you are using.

      I'll bet that this little program will still be around and will still work 200 years from now. Even that bizarre "a.out" name, though I expect that using "-o hello" in the cc command will also work as it did in 1975. (And the program will still have the same subtle bug as the original did. ;-) I wish I could be around then to be proved right or wrong.

      But so far, the signs are that this won't be true for many programming languages or OSs. The idea that code should be reliable in the long run seems to be something that's beyond the comprehension of few language or OS implementers.

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    36. Re:Work on the hardware first. by Lodragandraoidh · · Score: 1

      Dan's list of requirements for this software is :


      Meet the functional requirements of the task.
      Robustness and long-term stability and security.
      Transparency to determine when changes are needed and that undesired functions are not being performed.
      Verifiable trustworthiness of all three of the above.
      Ease and low cost of training for effective use.
      Ease and low cost of maintenance.
      Minimization of maintenance.
      Ease and low cost of modification.
      Ease of replacement.
      Compatibility and ease of integration with other applications.
      Long-term availability of individuals able to train, maintain, modify, determine need for changes, etc.


      If you look at a development framework, such as Zope, it seems to follow most of his requirements.

      I think some of the items on his list will be very hard to define or implement - for example, 'ease of replacement' makes the assumption that something exists with which to replace the software; 'compatibility and ease of integration with other applications' assumes that we have created a universal data interchange specification that everyone adheres to, and none intentionally break.

      I agree with his conclusion - that we will only see this come out of the open source/free software movement - coupled with new ways of doing business outside of the tried and true 'production line' model. Sadly, the entrenched rich corporations will fight this tooth and nail - in fact have already been fighting, as seen in the SCO lawsuite and the maneuverings of Microsoft. Who will win? I put my money on the moneybags...even if they drive their companies into the ground, they will escape on their golden parachutes.

      --

      Lodragan Draoidh
      The more you explain it, the more I don't understand it. - Mark Twain
    37. Re:Work on the hardware first. by jls75 · · Score: 1

      I can't believe Dan Bricklin has the audacity to say this. He is one of the people behind the huge kluge, Trellix. These people think that apache seg-faults are normal, and that also wrote an ftp daemon in java thaat HAD to be restarted every 2 hours. HAH

    38. Re:Work on the hardware first. by mcrbids · · Score: 2, Insightful

      You can't worry about your software working for that long until your hardware can last that long.

      Bzzzzzzt! I call Bullshit...

      The C programming language has been with us 30 years. Most of the non machine-specific coding from 30 years ago would work today with almost no modification on today's Ghz PCs.

      I develop large, powerful applications in PHP that will work well on a Linux, Solaris, Irix, Windows, or AIX system, with virtually no porting whatsoever. Furthermore, the software itself is the executable - it's human readable in its production form!

      And aren't Java applications run in a sandbox Virtual Machine?

      As I've developed increasinly powerful and complex Internet applications, I've discovered that the key to reliability is to develop applications where the individual computer really doesn't matter - "It's the software, stupid!"

      Utilizing standards based, open languages and protocols (PHP, PostgreSQL, Linux, TCP, HTTP, etc) means that my applications will work today, tomorrow, and for many years to come on whatever hardware.

      Linux/OSS software is poised to take the seat of this critical software infrastructure, away from Microsoft who, having this position, have abused the power it brought them.

      So, I use open source software, open protocols and strategies where it makes sense, and relax knowing that the stuff I write the *nix/POSIX standards will be quite accessable and usable in the future.

      -Ben

      --
      I have no problem with your religion until you decide it's reason to deprive others of the truth.
    39. Re:Work on the hardware first. by SEE · · Score: 2, Interesting

      In the United States, the copyright lasts life+70 years for copyrights in the name of an individual for works published in 1978 or later, 95 years in the case of a corporate-held or anonymous copyright for a work published in 1978 or later, and 95 years for any work published from 1923 to 1977 inclusive (with some caveats about renewal rules allowing some to expire earlier).

      So, for original 1977 Apple II ROMs, copyright currently expires in 2072 in the U.S.

    40. Re:Work on the hardware first. by SEE · · Score: 1

      Hardware is easily replaceable.

      An IBM eServer zSeries, which you can buy today, can run S/360 binaries from 1964. A Pentium IV microprocessor can run 8086 object code from 1978 and is assembly-language source compatible with 8080s from 1974 and 8008s from 1972. The Z80 is the most popular embedded microcontroller in history, is still available today, and is object-compatible with the 8080 and aseembly compatible with the 8008. PDP-11 emulators are readily available. And so on.

    41. Re:Work on the hardware first. by mvw · · Score: 1

      Sure and in 2072 the interest in Apple ][ emulation is probably as big as today in the emulation of Charles Babbage's analytical engine. :)

      Thank your for those information!

      Regards,
      Marc

    42. Re:Work on the hardware first. by tigersha · · Score: 1

      Well, actually running an real analytical engine in the flesh WOULD be interesting!

      --
      The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
    43. Re:Work on the hardware first. by tigersha · · Score: 1

      "Hello world" is in routine use on millions of computers??!!! I swear to God I have'nt seen it in a while!

      --
      The dangers of excessive individualism are nothing compared to the oppressiveness of excessive collectivism
    44. Re:Work on the hardware first. by valoriez · · Score: 1

      The Mormon church (LDS) are all over this. They have a storage facility dug into a mountain to ensure long-term storage of the millions of rolls of microfilm, and are now working on digitizing some of the rolls. Interesting article here: http://www.nyu.edu/its/humanities/ninchguide/inter views/interview21.html, a National Initiative for a Networked Cultural Heritage (NINCH) interview. Software AND hardware have to be considered.

  2. 200 years??? by danormsby · · Score: 2, Funny
    Any presidents set for this to show 200 years is a good target to aim for?

    Must have had one hell of a beta test phase.

    --
    Omnis amans amens
    1. Re:200 years??? by pjt33 · · Score: 3, Insightful

      I've stared at your post for a long time trying to work out what you mean. Please put me out of my misery by telling me whether the second word should read "precedents".

    2. Re:200 years??? by danormsby · · Score: 1

      Yes is should. I made a most embosing typo.

      --
      Omnis amans amens
    3. Re:200 years??? by Anonymous Coward · · Score: 0

      The physical significance of Kohn-Sham orbitals is very debatable, Mr Snaketown.

    4. Re:200 years??? by nomadic · · Score: 5, Funny

      I think 200 years isn't long enough. They just don't make software like they used to. For example, last time I visited Atlantis, and used the Amulet of Chr'Thalis to activate the ancient computers laying dormant beneath the Temple of the Dawn, they just started working perfectly. True, they only speak Ancient Atlantean, but the software's just fine. And we're talking about systems that haven't been maintained since the Temple Wardens vanished sometime during the Fourth Age; that's several hundred years at least since their last debugging. Of course, some of the hardware's a bit run-down (in the case of some the Temple traps that's a good thing), and the Orb of Kings is still inactive, but the Temple software works perfectly.

    5. Re:200 years??? by Ours · · Score: 3, Funny

      Wait untill the secret service starts asking you questions about shooting presidents ;-).

      --
      "You superiour intellect is no match for our puny weapons" - The Simpsons
    6. Re:200 years??? by Anonymous Coward · · Score: 0

      For example, last time I visited Atlantis

      This is +1 Informative?!

    7. Re:200 years??? by Fred_A · · Score: 1

      If I mod you "informative" too, will I get modded funny for it and will it improve my karma ?

      Oh wait, I posted so it won't work anyway. Never mind.

      --

      May contain traces of nut.
      Made from the freshest electrons.
    8. Re:200 years??? by squiggleslash · · Score: 1

      The major issue with some programs today, Mozilla, OpenOffice.org, Microsoft Office, etc, is that they take 200 years to load. They should last at least that long ;-)

      --
      You are not alone. This is not normal. None of this is normal.
  3. Open Source by Anonymous Coward · · Score: 5, Funny

    It seems like most open source has been less than 1.0 for at least 200 years. But all for a quality product right? Oh you found a bug? Well thats because its pre-1.0!

    1. Re:Open Source by Wateshay · · Score: 1
      I know you were going for funny, but:
      Linux 2.6 !< 1.0
      Apache neither 1.3 or 2.0 are < 1.0
      Gnome 2.6 !< 1.0
      GTK+ 2.4 !< 1.0
      KDE 3.2 !< 1.0
      GCC 3.4 !< 1.0
      Mozilla 1.7 !< 1.0
      It seems to me that most mature open source projects do eventually hit 1.0. It's just that in the open source world there's no market pressure to prematurely hit 1.0, so 1.0 has come to mean a certain level of stability and feature completeness. In fact, I think it's that kind of deliberate development that will mean today's open source programs stand a much better chance of still being around 200 years from now.
      --

      "If English was good enough for Jesus, it's good enough for everyone else."

  4. What about Job Security? by Anonymous Coward · · Score: 0

    To maintain a product you don't need a lot of developers. How can we survive?

    1. Re:What about Job Security? by kfg · · Score: 1

      How can we survive?

      Produce something useful, for a start.

      KFG

  5. Maybe it's needed, but who will develop it? by Biotech9 · · Score: 4, Insightful

    No company in the world will ever try and develop software that never needs (costly) upgrades and add-ons. Take a look at Micrsofts behaviour with MS Office, it's a complete cash cow because they can update it when they want and force people into upgrading with changed document types. Even the open source community will be too interested in improving and adding on to thier pet projects to consider leaving it alone.

    this article seems pretty flawed.

    We need to start thinking about software in a way more like how we think about building bridges, dams, and sewers.

    The fundamental difference being bridges cost more to alter than software does. And the capabilities of hardware allows more freedom in software, to which there is no correlation in bridges.

    hmmm, just my 2 euro-cents.

    1. Re:Maybe it's needed, but who will develop it? by tessonec · · Score: 5, Insightful

      I think you do not understand completely the point of the article...

      The point is that, given the fact that there is a vast amount of information in computer files, you must be aware that if you can't retreive that information in the future, it will be lost.

      You are right, most of the software gets updated. But it is the interface that understands the format the thing that must last for much more time than a couple of software-updates-cycles

      This is exactly another reason to consider OS standards instead of closed-source formats, as MS in 100 years (if it does still exist) will have forgotten how .doc in windows 2000 looked like

    2. Re:Maybe it's needed, but who will develop it? by Mr_Silver · · Score: 2, Insightful
      Take a look at Micrsofts behaviour with MS Office, it's a complete cash cow because they can update it when they want and force people into upgrading with changed document types.

      Maybe before, but the document format hasn't changed since Office 2000.

      You can send me a document written in Word 2003 and I can happily open it in Word 2000.

      --
      Avantslash - View Slashdot cleanly on your mobile phone.
    3. Re:Maybe it's needed, but who will develop it? by Anonymous Coward · · Score: 0

      I don't know many bridges that cost more than 100 million upgrade copies of MS Office.

    4. Re:Maybe it's needed, but who will develop it? by pheede · · Score: 3, Informative

      In fact, the Word document format hasn't changed since Word 97. So any Word version from 1997 or onwards will do the job.

      And changing the settings to saving in RTF format by default (enabling Word versions from Word 6.0 through 2003, as well as basically all other word processors, to read the documents) isn't all that hard. Not even in a corporate setting.

      Microsofts encourages upgrading of Office installations through a lot of questionable means, but the Word document format isn't one of them.

    5. Re:Maybe it's needed, but who will develop it? by MaxwellStreet · · Score: 1

      Who will develop it?

      There will (according to this article) be cooperatives of gov't agencies and public organizations that raise money to collectively develop systems.

      His example was of a parking ticket management system - there's no reason why different municipalities should each use a different one. He advocates using best practices, viewable (if not open) source, and transparent data interchange techniques to collectively create excellent software for public information infrastructure.

      If you get past the literal analysis of his metaphor (with respect to bridges, sewers, etc.) - and think of them as public works projects that serve the community - the article is far from flawed.

      Quite the opposite - this is a very compelling idea.

      It's efficient with taxpayer dollars by spreading the cost over different government groups (say, municipalities); it provides for paid development efforts as opposed to relying on volunteer open source development; it allows for competition; and it would allow for customization at the municipality level for any special features they can afford to add.

    6. Re:Maybe it's needed, but who will develop it? by BinBoy · · Score: 1

      Also bridges, dams and sewers need lots of maintenance. Even streets need maintenance. The street in front of my house has been repaired repeatedly, repaved once within the last 10 years, had its lines repainted many times and is cleaned twice a week.

    7. Re:Maybe it's needed, but who will develop it? by term8or · · Score: 2, Interesting

      I think that the fundamental reason that construction industry generally succeeds in producing bridges that don't fall down is the existence of building and planning regulations that require product to be of a good standard before they are sold. For example, in the UK if a bridge falls down and someone's killed it's corporate manslaughter and the MD is going to jail. Perhaps what we need is more regulation for the software industry ;-) For example instead of customers paying for software support maybe it should be a legal requirement that VENDORS pay software support and insure via a third party to guarantee support even if they go bust.

      --



      "As a writer / novelist you might want to spellcheck your sig. :) " - AC
    8. Re:Maybe it's needed, but who will develop it? by peragrin · · Score: 4, Informative

      Let's try it, Let's take an Office XP doc saved in the Office XP format and open it up in Office 97,

      What it doesn't open properly? Geez that's A shocker.

      Now you can save an office XP doc in office 97 format, and office 97 doc's can be opened in office XP but office XP doesn't open in Office 97.

      MS does this because when one business upgrades, it forces the partners to upgrade as well. Why because most people have a hard time understanding what the different formats are.

      --
      i thought once I was found, but it was only a dream.
    9. Re:Maybe it's needed, but who will develop it? by Oligonicella · · Score: 2

      Informative, my ass. Morelike Troll. I've personally had great problems salvaging a bunch of manuscripts when I got an XP to replace a dead '85. I had to port all the docs to another computer, save as RTF and then read. At least that's what I planned. Then I simply read them all into Lotus.

      Screw Word and their plethora of docs.

    10. Re:Maybe it's needed, but who will develop it? by _|()|\| · · Score: 1
      No company in the world will ever try and develop software that never needs (costly) upgrades and add-ons.

      The author is clearly aware of the problems of that kind of incentive model, and devotes several paragraphs to addressing it. An important point is that free software doesn't have to be about "pet projects." The incentive for a for-profit company or a volunteer to develop and maintain the software can't match that of the actual users.

      People are recognizing that free software is more than a fad. It's time that collaborative development models move out of the basement and into the mainstream. I'm not talking about IBM or Novell pitching in to Linux or GNOME; I'm talking about customers really banding together. How many millions of dollars have colleges given to get-rich-quick Oracle VARs for slap-dash grading and payroll systems? Can't a few thousand colleges (some of which have been in existence for 200 years) scrape together the cash and manpower to make a decent database that meets their needs?

      For that matter, consider schools in developing countries, for whom license fees are out of all proportion. Even if you give them a fee-free license, it's tantamount to giving them genetically neutered crops.

      I agree that it's unrealistic to expect software not to change for 200 years, because its problem domain is so much more dynamic than "don't fall into the river during a storm or earthquake." I don't think the author is making that literal an argument. The important thing is that there be continuity, to preserve the investment in training and data.

    11. Re:Maybe it's needed, but who will develop it? by jsebrech · · Score: 2, Insightful

      In fact, the Word document format hasn't changed since Word 97. So any Word version from 1997 or onwards will do the job.

      And changing the settings to saving in RTF format by default (enabling Word versions from Word 6.0 through 2003, as well as basically all other word processors, to read the documents) isn't all that hard. Not even in a corporate setting.


      The word format is heavily platform dependent. If you embed objects into word documents, or use scripting, it's pretty much a guarantee it will not work correctly across office and windows versions. Not having the right fonts available will ruin your layout too. Word is not pdf or postscript, it is not a stable or cross-platform format.

      And suggesting rtf is a stable or widely supported format is silly given how many dialects of rtf there are. Every new office version comes with a new rtf dialect.

    12. Re:Maybe it's needed, but who will develop it? by AKnightCowboy · · Score: 3, Informative
      Take a look at Micrsofts behaviour with MS Office, it's a complete cash cow because they can update it when they want and force people into upgrading with changed document types.

      Hmm? I still install Office97 on any brand new computer I get and it works just fine. Why would I need to upgrade it? All the functionality I need to do reports is there and it's 7 year old software.

    13. Re:Maybe it's needed, but who will develop it? by AppleConvert · · Score: 1

      I have to agree the argument does seem flawed.

      Meet the functional requirements of the task.

      As soon as the task changes or becomes more complex, the functional requirements also change. This is a fundamental reason for things like bloat-ware. People make requests that change the functional requirements of large integrated apps.

      This would seem more like an argument for the *NIX way of doing things which would be small programs with small tasks that could be chained together.

      "Hmm I like this bridge but could you widen it for me?"

      Robustness and long-term stability and security.

      Stability and Security can never be gauranteed. A flaw is inevitable in any program. If that flaw is a fundamental flaw then the program would have to be rewritten.

      "Oops, I think I went over the 2 ton limit you need to fix that bridge now."

      Transparency to determine when changes are needed and that undesired functions are not being performed.

      This seemed flawed in perspective. Typically if I talk about something being transparent I talk about it not being seen. And your typical user doesn't care to see the inner workings of a program. I only like being able to see the inner workings because I have a morbid facination with taking things apart sometimes. Hehe I love open-source not so much because I look at it in as much that it is there if I ever felt like looking at it.

      "Do I really want to see what is underneath the bridge or look at it's supports?"

      Ease and low cost of training for effective use.
      Ease and low cost of maintenance.


      These seem to be mutually exclusive to me. Either it's an application that is large and difficult to maintain, or it's a suite of small easily maintainable apps that you have to train the person to use each and how to effectively string them all together.

      "Either cross the Golden Gate or go around the San Francisco Bay"

      Ease of replacement.

      I thought he just finished saying that he didn't want to replace these things for years.

      "How many bridges that you know of are easy to replace and will last for years"

      Long-term availability of individuals able to train, maintain, modify, determine need for changes, etc.

      Look, your going to have to pay someone to do the maintaining and modifications. Unless the code is well documented or you have a large number of individuals that are familiar with the inner workings of the code it would take tremendous amounts of effort in order to just understand the algorythms used. Chances are if the new programmer didn't like the way it was written s/he will be more likely to rewrite the code.

      "You have to train a civil engineer to be able to understand how the bridge was constructed, Then that civil engineer is going to have to assess the bridge and it's plans to find the discontinuities between the two. Then the civil engineer can do something to help you."

    14. Re:Maybe it's needed, but who will develop it? by CommieLib · · Score: 2, Interesting

      You've observed the environment and drawn the wrong conclusions. Yes, software companies release add-ons. My software company is just releasing version 1.4 right now. Is that because we all sat around in a boardroom, smoking cigars and laughing about how we were going to screw our customers out of money?

      Actually, it comes from two reasons. First of all, we never have enough time to deliver all of the features we would like. Software release schedules are driven by sales cycles, so when the cycle rolls around, it's time to ship, so that means we need to cut off development for QA some reasonable amount of time before that.

      Second of all, we have features in our 6th release (the point releases aren't as simple as they look) that, quite literally, I didn't even know existed when I was writing 1.0. We have other technologies and ideas I did know about then, but didn't know that customers would want them.

      And as far as document types, I can open Word 97 docs in Word ver_whateverversionIhave. Microsoft gets zero bastard points for backwards compatibility.

      I see a lot of crap here on Slashdot about how software companies screw people like this and that, and I just wonder how people think we have the fricking time.

      I think this whole 200 year software stuff is wildly naive for the above reasons. A great quote I heard once said something along the lines of: When you place a 500 pound weight on a bridge, you can be reasonably sure that it will also support a 50 pound weight. The same is not true of software. I think what Bricklin has failed to grasp in his analysis is that what we're going through right now is it's own industrial revolution. First OO, then widespread use of patterns, relational databases...we're figuring out vastly better ways of doing things in software. At some point, we'll have as concrete (natch) an understanding of how to build software as we do of bridgebuilding, and then we'll settle into stability.

      Slashdot, circa 3500 BC: Uzan of Ur bemoans having to rebuild the stone bridges every 10 years.

      --
      If your bitterest enemies are people who hack the heads off civilians, then I would say you're doing something right.
    15. Re:Maybe it's needed, but who will develop it? by zog+karndon · · Score: 1

      Office 97 can open office XP docs. But say you have Office 95. Then you can go to the Office Converter Pack site and download a converter for Office 95 to let you load office XP docs in Office 95.

      The office team spends a lot of time worrying about backward and forward compatibility.

    16. Re:Maybe it's needed, but who will develop it? by Tony-A · · Score: 1

      Microsoft's cash cow is everybody else's cash drain.

      Who will develop it is a political/economic problem, and humans have been coping with such problems for a long, long time.

    17. Re:Maybe it's needed, but who will develop it? by iamcf13 · · Score: 1

      No company in the world will ever try and develop software that never needs (costly) upgrades and add-ons.


      Here's one: (me)

      SpamByte: Game Over, Spammers/Computer Crackers

      I just made the 2nd and (hopefully) last update to fix a couple of bugs to handle a case that violates the MIME RFCs and the other to close the door on spammers sending sing 'submarine' file attachments in emails. After that, I should be done. No featuritis for me if I can help it....
    18. Re:Maybe it's needed, but who will develop it? by Photo_Nut · · Score: 0

      "MS does this because when one business upgrades, it forces the partners to upgrade as well. Why because most people have a hard time understanding what the different formats are."

      Actually, MS doesn't do this intentionally, and you are neglecting to mention the free Office converters MS puts out for users of older software, such as Word 97. Your lack of information does not constitute anything informative here.

      Microsoft spent money developing these converters. Proof: http://www.microsoft.com/office/ork/2003/tools/Box A07.htm

  6. Bricklin It by neilmoore67 · · Score: 0

    With radical new ideas like this the software old-guard must be Bricklin it!

    --
    You've probably noticed that people's noses get bigger as they get older. That's because old people are huge liars.
  7. Start using simpler hardware by MavEtJu · · Score: 4, Interesting

    I think the trick is to use simpler hardware, which is easy to replace.

    Take todays computer: motherboard with one big black chip, CPU on it, network card also one chip on it, videocard is too impossible to figure out how it works. Due to the integrated design, you can't fix it if it is broken. And in five years you won't be able to replace it one-on-one.

    On older hardware (8 bitters), you were able to repair it yourself because you knew how it worked and you know you were capable of replacing a failing chip. Even if you didn't have exactly the same chip, you can use one of a newer family which did the same but would be capable of switching much much faster.

    --
    bash$ :(){ :|:&};:
    1. Re:Start using simpler hardware by 91degrees · · Score: 1

      How often do chips go wrong?

    2. Re:Start using simpler hardware by jrockway · · Score: 1

      Pull the heatsink off your CPU and, after you get a new one, come back and tell me that chips don't go wrong :)

      --
      My other car is first.
    3. Re:Start using simpler hardware by 91degrees · · Score: 1

      Well, yes, but I was talking about normal usage. Chips will also go wrong if you hit them hard enough with a hammer.

      Of course, it is perfectly possible to get a reasonably fast CPU that doesn't need a heatsink. Hell, for a lot of applications, you can use a Z80, but aven a 486 will run withough any cooling, and that's easily good enough for Linux.

    4. Re:Start using simpler hardware by djmurdoch · · Score: 1

      When is your next scheduled fan replacement in your PC? You do have a schedule to replace it before it fails, don't you?

      In my experience, most fans outlast the useful life of the PC, so I don't bother to replace them unless they die. But if they do die, there's a pretty good chance something is going to overheat and be damaged.

    5. Re:Start using simpler hardware by 91degrees · · Score: 1

      My PC doesn't have a fan.

      I suspect the hard drive is the most likely part to break, what with it having moving parts. But it should be simple enough to make sure that any computer that is expected to run the same software for over 200 years also has no moving parts, as long as nobody needs to store a lot of data.

    6. Re:Start using simpler hardware by SpinyManiac · · Score: 1

      Pentium 4?
      Thermal protection.

      Don't try that with an Athlon XP.

      --
      It's never too late to have a happy childhood.
    7. Re:Start using simpler hardware by Anonymous Coward · · Score: 0

      Just make sure you don't unplug them.

    8. Re:Start using simpler hardware by 91degrees · · Score: 1

      I can see how this could be a problem. Of course it depends on the application (assuming the program is stored in ROM).

      Of course, there is reliable solid state memory. I wonder how long that will hold data for in practice.

    9. Re:Start using simpler hardware by 1u3hr · · Score: 1
      In my experience, most fans outlast the useful life of the PC, so I don't bother to replace them unless they die. But if they do die, there's a pretty good chance something is going to overheat and be damaged.

      My mobo has a thermometer, at a given temperature it shuts down the PC. I think this is quite standard, look in your BIOS settings.

    10. Re:Start using simpler hardware by ChrisMaple · · Score: 1

      Some die from user abuse, such as static discharge. I killed my serial port by holding my trackball in my lap while wiping dust off my monitor with my hand. Some die from poor engineering; many computers die from inadequate power supplies. Chips do have wearout mechanisms: EPROMS and other programmable devices are likely to fail first. 20 years ago, EPROM data sheets typically claimed only 10 year data retention.

      --
      Contribute to civilization: ari.aynrand.org/donate
    11. Re:Start using simpler hardware by Fweeky · · Score: 1

      A common figure for the estimated lifespan of a modern CPU is about 10 years. After that, ion migration and other entropic effects are likely to kill it.

      I read it in a /. comment, it must be true.

    12. Re:Start using simpler hardware by NanoGator · · Score: 1

      "Pull the heatsink off your CPU and, after you get a new one, come back and tell me that chips don't go wrong :)"

      Yep, I agree, chips go wrong after you sabotage them.

      --
      "Derp de derp."
    13. Re:Start using simpler hardware by SpinyManiac · · Score: 1

      And I thought everyone wanted quiet PCs these days. :)

      --
      It's never too late to have a happy childhood.
  8. No by Mr_Silver · · Score: 5, Insightful
    Neither prepackaged nor custom-written software is fully able to meet the need

    I disagree. It's got nothing to do with the software but the data.

    If the data format is clearly documentented, then it doesn't matter whether the application that generated it is open or closed.

    True, you could argue that since the code is open the data format is also documented, but personally I'd find it easier if it was written in a properly structured document.

    Otherwise you'd have to resort to learning and then plouging through an application written in some 200 year old programming language (by someone who possibly hacked it up with a hangover at the time) to try and understand what they were doing and why.

    --
    Avantslash - View Slashdot cleanly on your mobile phone.
    1. Re:No by Anonymous Coward · · Score: 0

      > Otherwise you'd have to resort to learning and
      > then plouging through an application written in
      > some 200 year old programming language (by
      > someone who possibly hacked it up with a
      > hangover at the time) to try and understand
      > what they were doing and why.

      Yea verily. For sooth older languages give pause to even those skilled in many tongues. Methinks one must ask whether 'tis nobler in the mind to suffer the slings and arrows of obscure allusions, or to take arms against a sea of language troubles, and, by standardizing, end them.

    2. Re:No by huge · · Score: 1
      I disagree. It's got nothing to do with the software but the data.
      Exactly.

      The medium used to store the data should be documented as well.

      We already have the problem accessing 5 - 10 yesr old backups as it's pain trying to find compatible devices for reading the data. But no matter how well documented the data format are if you cannot gain access to it.
      --
      -- Reality checks don't bounce.
    3. Re:No by bstone · · Score: 1

      It's got nothing to do with the software but the data.

      That is the key. Any data that might be needed many years from now needs to be kept and archived in a format that is documented (hopefully self-documented) and usable for as long as the data might be valuable. This could easily be far longer than 200 years. In addition, these archives must be maintained and migrated to media that will last over time.

      The time frame that the data will be needed will differ with each application. Parking ticket data? A few years. Corporate records? Until the statute of limitations is up on taxes/criminal activity. Birth/death records, historical data, etc? Forever.

      The point is that each type of data needs to be looked at and stored appropriately. That's the job of the systems analyst and designers, perhaps with some help from legislation making some of the requirements clear.

      Storing it in Oracle database format is useless. When state of the art becomes a petabit content addressable holographic memory chip with 2 picoseond access time, the physical format of how the data is stored for 'online' access will be far different than it is today. Still, the raw data should be kept archived in a manner that is not subject to whatever the current hardware/software of the day happens to use. In addition, there should be standardization of the format in which it is stored. You shouldn't have to know the format that Podunk, Iowa used to keep their genealogical records a thousand years ago to access that kind of data.

      The programs that access the data, the online formats of the data and the hardware that it exists on can all change dramatically over time. The data itself can't be allowed to be lost, either because it was stored on 1/2" 556 BPI magnetic tape, or stored in a 200 year old database format. Perhaps some sorts of data (geneology, literature, court records, anything of historical value) should be archived by something like the Library of Congress and maintained by them so it doesn't deteriorate and is available in a format that can be used on whatever "current technology" is at the time.

    4. Re:No by Otter · · Score: 1
      I disagree. It's got nothing to do with the software but the data.

      If the data format is clearly documentented, then it doesn't matter whether the application that generated it is open or closed.

      Precisely. That's why comparing software to civil engineering makes no sense. If you could have written a Perl script to transform the Boston Central Artery to the Big Dig, there wouldn't be nearly as much downside to massive construction projects that need to be replaced after 25 years.

    5. Re:No by budhaboy · · Score: 1
      I disagree. It's got nothing to do with the software but the data.

      You took the words out of my mouth, bubba.

      The trick is to make sure that you use data structures that 'span' space of useable information that is constrained by the physical limitations of the system (it is my understanding that it's that last bit that caused that whole 'Y2K' thing a few years back).

    6. Re:No by abb3w · · Score: 1

      If the data format is clearly documentented, then it doesn't matter whether the application that generated it is open or closed.

      So, you also need to define a format and design requirements for Universal Format Documentation, which is itself clearly documented in that format and meets its design specs, and is universally distributed. Hmmm... well, we seem to have gotten started... no wonder the Internet has done so well.

      --
      //Information does not want to be free; it wants to breed.
    7. Re:No by GoofyBoy · · Score: 1

      >We already have the problem accessing 5 - 10 yesr old backups

      In 200 years from now, I would just get my robot butler to use my child's toy scanning quantum microscope to read the molecular magnetic alignment from the backups and have the data by dinner. :)

      --
      The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
    8. Re:No by Anonymous Coward · · Score: 0

      The parent is definatly going in the right direction. First, there was a time when building durable stuctures was hit or miss. The little pig in the brick house had to worry as much about the house killing him as the wolf. We are in a similar period of time for software. Second, the manipulation and storage of data is more about process than about product. Even durable structures are more about process than we generally think. Dont fix the leak in your roof, see how long your house lasts. If the water table moves, then that old hand pump that you fill your modern water bottle with will have to be moved (is it too durable?) or replaced. Lastly, if you took the last 5000 years of architechture and condensed it down to 50 years, thats what the last 50 years of software development has been like.

    9. Re:No by Jesus_666 · · Score: 1

      But because the DRM lobby would have won until then the toy would refuse to give you the data because "The examined molecules did not have valid DRM information assigned with them. Aborting scan."

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
  9. Hypothetical question... by BladeMelbourne · · Score: 4, Funny

    I wonder if there will still be holes/bugs in Microsoft Internet Explorer 6 SP1 in 2204?

    Now excuse me while I get back to writing my "Hello World" application that will last two centuries :-)

    1. Re:Hypothetical question... by OldManAndTheC++ · · Score: 2, Funny
      Now excuse me while I get back to writing my "Hello World" application that will last two centuries :-)

      Unfortunately, in 200 years the language will have evolved, and the words and phrases we use today will have completely different meanings. People of the future will understand "Hello World" to mean "All Your Base Are Belong To Us", and believing your program to be a dire threat, they will fire up their time machine and send back Arnold Schwarzenegger's great-great-great-great-great-great-grandson to eliminate you before you can even write it...

      --
      Soylent Green is peoplicious!
    2. Re:Hypothetical question... by NormalVisual · · Score: 1

      This touches on an interesting point - who's to say that a hundred years from now, computers will have the same basic architecture as they do now? The basic ideas of bytes, words, long words, RAM, ROM, etc. may all be obsolete, so not only would one need to preserve the data itself, they'd need to provide a primer on exactly how this data is represented and how this system it runs on works. If you took someone from 40 years ago that was used to punching in code/data on cards or on a maintenance panel and stuck them in front of a modern PC, they'd be lost, just as a lot of modern programmers with no mainframe experience get lost when you stick them in front of something as new as a S/390. It's reasonable to assume that computers will have some seriously fundamental changes over the next couple hundred years or so, so there's a need to preserve more than just the code and data.

      --
      Please stand clear of the doors, por favor mantenganse alejado de las puertas
    3. Re:Hypothetical question... by JudgeFurious · · Score: 1

      I don't think that's going to be the case. The application that runs for 200 years is going to be "ported" gradually from one type of hardware to another as it evolves. I suspect that even if the computer is very different at the end of that 200 year time period so will the application that runs on it. It will still appear to function the same way of course and it will still be able to read data from a 199 years or so prior but it will evolve to run on the hardware of the time.

      I mean, you're right about it basically but since it will be a gradual change I don't think it will be much of an issue in the end.

      --
      Appended to the end of comments you post. 120 chars.
    4. Re:Hypothetical question... by Ashtead · · Score: 2, Insightful
      The computer might have become different, but the knowledge of how it used to work will not be lost. Just look at Charles Babbage's mechanical computer (difference engine) from the 1830s; no theoretical difficulties in re-implementing that in the 1980s, some 150 years later.

      Similarly, unless some catastrophic loss of historical information should occur, someone 200 years from now would still be able to fathom the concept of a command-line or even a desktop-metaphor GUI. They will of course think it is clunky and old-fashioned, but hey, it is a couple centuries past the state of the art....

      --
      SIGBUS @ NO-07.308
    5. Re:Hypothetical question... by Jesus_666 · · Score: 1

      Maybe we should make our programs LCARS-compatible. That might help.

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
  10. 2 letters by News+for+nerds · · Score: 4, Funny

    vi

    1. Re:2 letters by sisukapalli1 · · Score: 2, Insightful

      I think tex/latex has the capability. We have the some documents (20 years old), and they compile fine and look prefect. If anything, improvements made it easier to "enhance" the document without messing with anything.

      S

  11. It's a tool... by tgv · · Score: 2, Insightful

    For Christ's sake, computers are mostly used as tools. And who keeps their old tools around for so long? Only neanderthals:...

    1. Re:It's a tool... by kfg · · Score: 4, Insightful

      The violin dates from the 1600s. While it has undergone a certain amount of "support" since then it is essentially the same tool as designed by Amati. Some consider it one of the finest tools ever devised by man. Many of the older ones are considered superior to the newer ones.

      I have an automotive body hammer that is nearly identical to a 1500s war hammer, although the upgrade to a fiberglass handle is a nice touch for reducing shock. The basic design goes back some thousands of years with little more than some minor updates in materials.

      My 100 year old desk holds up my computer just fine. It is as technologically advanced as what I can get new at Office Max, except I expect it can last another few hundered years due to the quality of its construction.

      I'm wearing woven fabric clothing, a technology that reaches back at least 10,000 years. There have been a number of attempts to replace this technology over the past 40 years or so. They've all proven inferior except for certain special applications. Hell, even indigo dye for work clothes has proven to be a durable technology for thousands of years that you can still purchase in nearly any clothing store and the "jeans" that are the most common example of the type are about 400 years old (Jacob Davis added rivets to the existing design. He didn't invent the jeans themselves).

      I've been watching a new office building go up in town. It's post and beam, about as old a house building technology as you can get, although the building is considered "modern."

      I also have a couple of fires that burn continuously in my home. It proves rather useful, although the technology is a bit long in the tooth.

      I fully expect that ASCII will be just as viable a way to represent the Latinate alphabet 200 years from now as it was a few decades ago, and the Latinate alphabet is another example of a multithousand year old technology.

      Innovation for innovation's sake often "progresses" to the rear.

      Build it right and build it good. Don't be afraid to change it when there's damned fine reason to on solid theoretical and practical grounds, but otherwise leave it the hell alone if it works.

      That isn't being a Luddite. That's being an engineer.

      KFG

    2. Re:It's a tool... by Anonymous Coward · · Score: 0
      The violin dates from the 1600s. While it has undergone a certain amount of "support" since then it is essentially the same tool as designed by Amati. Some consider it one of the finest tools ever devised by man. Many of the older ones are considered superior to the newer ones.
      Older violins are superior to newer ones because the acoustic properties change as the varnish and wood age. In 200 years time, Stradivarius violins will no longer be the best. When Stradivarius built his violins, they weren't the best available at the time. In fact, it is completely impossible to sit down and build the "best" violin without waiting hundreds of years for it to age. So it is not always possible to "do it right, now".
    3. Re:It's a tool... by CrimsonAvenger · · Score: 1
      200 year old tools...

      I don't know of anyone who keeps their old tools around for use.

      On the other hand, anyone here doubt that a 200-year old hammer would work just fine for anything a modern hammer is used for?

      Or a wheelbarrow?

      Or a drill?

      Sure, modern tools are better (don't know what I'd do without my power tools - I'm lazy), but I've seen tools a century and a half old in the Home Place (Land Between the Lakes), and none of them were unusable, or unrecognizable.

      --

      "I do not agree with what you say, but I will defend to the death your right to say it"
    4. Re:It's a tool... by Artifakt · · Score: 1

      Ive done very high quality cabinetmaking repair*, where I really benefitted from using certtain tools (mostly planes and scorps) that have been handed down for quite a few generations. If they aren't 200 years old, they are at least two thirds of the way there, and most carpenters doing this work swear by antique tools and are used to going to estate auctions and such just to find them.

      *I'm not bragging about the quality of my work, just saying that the things I was repairing deserved exacting precision and skill, and I can only hope I lived up to the standards of the original craftsmen.

      --
      Who is John Cabal?
  12. Already there? by rudy_wayne · · Score: 2, Interesting

    Remember Y2K? Did anyone notice that the world didn't come crashing down on Jan. 1, 2000?

    It seems that all those old mainframes running programs from the 60's weren't in such bad shape after all.

    This is an over-simplification of course -- people did have to do some work to make sure there weren't any "Y2K" problems.

    1. Re:Already there? by hcdejong · · Score: 1

      Yes. but sooner or later those 1960's mainframes will be 'beyond repair'. Even now this is an issue, with replacement parts becoming rare.

    2. Re:Already there? by njcoder · · Score: 3, Funny
      " Remember Y2K? Did anyone notice that the world didn't come crashing down on Jan. 1, 2000?"

      You mean it's safe to come out of my bunker? Thank God! I'm sick of sustaining myself on spam, twinkies and tang.

    3. Re:Already there? by eraserewind · · Score: 2, Informative

      Some work? Hundreds of Billions of dollars were wasted on it. There is no way that having to make that kind maintenance cost can be considered not "in such bad shape after all".

    4. Re:Already there? by Anonymous Coward · · Score: 0

      Agreed. And there were STILL failures, on so-called "repaired" systems, not just the ones which the PHB's didn't bother to deal with (because, as PHB's, they were incapable).

    5. Re:Already there? by Anonymous Coward · · Score: 0

      As a software developer, I was relieved when Jan. 1, 2000 came and went, because it meant I could go back to using dates with two digit years in my programs and won't have to worry about it for the NEXT HUNDRED YEARS! WOO-HOO!

    6. Re:Already there? by happyfrogcow · · Score: 1

      I'm sick of sustaining myself on spam

      in post Y2k, spam is sustained by you! (and your open XP machine...)

  13. Not Possible by deutschemonte · · Score: 5, Insightful

    Constant standards are what is needed to make software last that long.

    Language standards don't even last 200 years, how do we expect something as new as software standards to be more uniform than language standards? Language has been around for thousands of years and we still can't agree on that.

    --
    The preceding message was based on actual events. Only the names, locations and events have been changed.
    1. Re:Not Possible by Anonymous Coward · · Score: 1, Interesting

      Um. Welsh?

      True, there are additions. However, it is still possible to read welsh from 200+ (600+?) years ago and translate that effectively into current welsh/english/whatever.

      Your word 1.0 doc containing that welsh however, is a different matter....

    2. Re:Not Possible by Matthias+Wiesmann · · Score: 1
      Constant standards are what is needed to make software last that long.
      True.
      Language standards don't even last 200 years, how do we expect something as new as software standards to be more uniform than language standards?
      Most of the standards we use a quite old: the numbering system, angles, time units and well the metric unit system...

      Human languages are IHMO a bad reference point, first because they are not simply communication tools, but also social tools. Also while languages evolve quite a lot, we can still read languages written a few millennia ago. Humans are quite good at understanding unknown human languages - they can even bootstrap with an unknown language. Some human languages have even built-in variability and an initial handshake mechanism.

      For data, I think XML is a step in the right direction, between trying to parse and unknown binary file or an unknown XML file (with the DTD), I certainly would prefer the second. For code, the situation is more messy, how many people can still understand FORTRAN or COBOL code?

    3. Re:Not Possible by hcdejong · · Score: 1

      Actually, there are a number of ancient languages that we can't read today.

    4. Re:Not Possible by _|()|\| · · Score: 2, Insightful
      Language standards don't even last 200 years, how do we expect something as new as software standards to be more uniform than language standards?

      How do you know? Lisp has been around for a while, and it's not dead, yet. Some Lispers are working on a language called Arc, which they hope will last a hundred years. On another front, perhaps Parrot or .NET will provide a stable base that will allow languages to evolve, while remaining compatible.

      That said, I don't think it's necessary for a long-lived software project to use one language, exclusively. Standard interfaces can commoditize the language, to some extent.

    5. Re:Not Possible by Araneas · · Score: 1

      Languages have "open" standards. Chaucer and Langland are still readable today.

    6. Re:Not Possible by Araneas · · Score: 1
      No RFC, No ISO implementation. What did you expect?

      Heiroglyphs were a problem untill the Rosetta stone gave us enough information to figure out the format.

    7. Re:Not Possible by Jesus_666 · · Score: 1

      Because languages clearly were designed the wrong way. If we had some RFCs on how to design language, everything would be better.

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
    8. Re:Not Possible by xod · · Score: 1

      Languages DO remain unchanged 200 years and more, when there is an institution preserving them. I'm thinking of the Arabic of the Koran, the Hebrew of the Torah, the Sanskrit of the Vedic scriptures, etc. And possibly the COBOL of the mainframes still being supported long past their expected demise.

      Where will Moore's law be in 200 years? It's expected to grind to a halt before that, and its plateau will put an end to the exponential obsolescence we are accustomed to. More likely, though, capability will surpass usage -- if my wristwatch tells time properly, do I need to replace it with one featuring a chip that's 10 times faster? Laugh all you want at the COBOL machines (I certainly do) but apparently the need to upgrade isn't outweighing the costs.

      There is an attitude of frenzied extreme neophilia among developers today. Any technique that's more than 3 years old is suspect; everyone is desperate to be on the cutting edge and not be seen wearing last year's shoes. J2EE isn't yet stabilized but it's already passe; OMFG, Entity beans are *so* 2001; the cool kids are all using Hibernate + Spring, but before 2005 is out only the lamers will be; the trendy label whores will have found something even more AOP, SOA, and IoC.

      This even extends to terminology itself; I was a programmer, then a coder, then a developer, then an engineer; all without leaving my seat. I used to write programs, then I developed applications, and now I build solutions. Businesses were 20th century; now we all work for Enterprises.

    9. Re:Not Possible by kabloom · · Score: 1

      If you think 200 or 600 years is a long time, try reading aramaic. I know plenty of people who can still read and understand works written in Aramaic after 2000 years.

    10. Re:Not Possible by zooblethorpe · · Score: 1

      Tell that to the Chinese.

      Seriously, in my first year of Mandarin in college, the back of the textbook had a poem from about 3,000 years ago -- it still rhymed, it still had rhythm, and it still made sense.

      So perhaps instead of Python, we should all be coding in Hanyü?

      --
      "What in the name of Fats Waller is that?"
      "A four-foot prune."
  14. think back 200 years by Keruo · · Score: 3, Interesting

    We've had software and computers for ~30 years now
    Going back 200 years, we only began the proper industrialization and everything was pretty much running on steam.
    I think it's flawed to try to design software that lasts for decades or centuries.
    The technology is constantly evolving, and as the hardware changes, so does the software.
    If the hardware developement continues as it does, in 2200 we, or the people then, might be working with hardware running at terahertz speeds with 4096 bit architechtures.
    Probably that's an underestimatement, since the evolving curves tend to be exponential.
    I don't really think they would still need the software someone wrote for windows 95 200 years ago.

    --
    There are no atheists when recovering from tape backup.
    1. Re:think back 200 years by Anonymous Coward · · Score: 0

      "underestimatement"???
      Keruo, is that Japanese for Dubya?

    2. Re:think back 200 years by stienman · · Score: 1

      Today's trains can run on the tracks of the 1800's (baring the fact that originally there were two major standards in the US which eventually settled on one that became today's standard)

      Today's cars can drive on the old dirt roads made way back when.

      Today's water still passes through some of the piping and aquaducts of old.

      What the author is getting at is that a professional programmer, like a professional architect, now needs to focus on building reliable, verifiable programs around open standards for common record sets (library, parking, DMV, etc). This programmer will be paid for the work, just like an architect, and if future modifications are made a programmer (not necessarily to original) will be consulted to see if modifications can be made without a full rebuild. In either case, the old source is available, the standards are available (and extendable), and the new programmer is as able to do the work as a new architect could look at an old building built before his time and know its mysteries.

      Most software developed will still be of the packaged, upgrade every 5 year variety that you speak of.

      Infrastructure software, where the requirements change infrequently, should follow a different development and business model.

      -Adam

  15. Standards, not Software by amitofu · · Score: 5, Insightful

    Standards are what must be designed to last for decades, not the software that conforms to the standards. Things like XML, RDF and POSIX will be supported for decades, if not centuries. Who cares if it is Linux running your POSIX apps, or FreeBSD, or HURD? I don't think it matters if software uses libxml2 to parse your XML data, or some yet-unconceived API--as long as it understands XML!

    If it is stability and reliable infrastructure that is desired, it is standards that must remain constant and software that must evolve to make the standards work with new technology.

    1. Re:Standards, not Software by B2382F29 · · Score: 5, Funny

      Aren't you a little bit optimistic about HURD being available in just 200 Years?

      --
      Move Sig. For great justice.
    2. Re:Standards, not Software by Anonymous Coward · · Score: 0

      I don't think it matters if software uses libxml2 to parse your XML data, or some yet-unconceived API--as long as it understands XML!

      XML alone does not provide a standard data format. What it does provide is a structure that you can follow to make your own format. That means that XML will not make your application compatible with another application unless that other application understands the schema that you are using. It winds up being the same data format compatibility problem that we've always had, but now it's at a higher level. Some people (not necessarily saying you) seem to forget that, when it comes to XML formats, it's the standards built on top of the XML "meta-standard" that provide the true compatibility.

    3. Re:Standards, not Software by phel666 · · Score: 1

      The thing I like about things like XML and RDF is that you don't even need the specifications. If I were reverse engineering a program to read an XML file, I'd find it quite easy. This makes it good if some unknown cataclysm wipes out IETF and the IEEE.

      --
      -- f00!
  16. now history depending on electricity by clsc · · Score: 2, Insightful
    The world is different now than it was even just a decade or two ago. In more and more cases, there are no paper records.

    The point that the author makes here is really that without electricity we will lose great parts of recent history.

    1. Re:now history depending on electricity by I+confirm+I'm+not+a · · Score: 5, Interesting

      The point that the author makes here is really that without electricity we will lose great parts of recent history.

      When I was at secondary school, in Britain during the 1980s, we participated in a UK-wide project to create a modern version of the "Domesday Book", the 11th-century record of people and property.

      The project we worked on was recorded onto a (state-of-the-art) laserdisc so it would "last through the generations".

      Last year I read an article saying that dedicated enthusiasts were desperately trying to assemble a working laserdisc system, in order to archive all the data collected just 20 years earlier.

      Moral: it's not just electricity we need to worry about - media and the equipment necessary to access specific media is vital, too.

      --
      This is where the serious fun begins.
    2. Re:now history depending on electricity by term8or · · Score: 1

      You would have thought that someone would have printed it out;)

      --



      "As a writer / novelist you might want to spellcheck your sig. :) " - AC
    3. Re:now history depending on electricity by dabigpaybackski · · Score: 2, Funny

      **The project we worked on was recorded onto a (state-of-the-art) laserdisc so it would "last through the generations". Last year I read an article saying that dedicated enthusiasts were desperately trying to assemble a working laserdisc system, in order to archive all the data collected just 20 years earlier.** So what's the problem? As long as they included instructions on the laserdisk as to how to build a laserdisk player then they could just...oh. Maybe I should sleep.

      --
      "OH SHIT, THERE'S A HORSE IN THE HOSPITAL!"
    4. Re:now history depending on electricity by Divlje+Jagode · · Score: 1
      Fear not, the project was rescued in 2003.
    5. Re:now history depending on electricity by hughk · · Score: 1
      I was working on a ten year archive project in the late eighties. We had to keep the records of a financial institution for legal reasons, but microfilm was already considered uninteresting (you can write electronically, but you can't eaisly rescan it).

      Writeable optical drives were going through multiple architectural and media changes at the time and we had major problems. Sure the CDR was settled upon later, but the issue was migrating data from one media-tyope to another before the hardware was permanently retired.

      --
      See my journal, I write things there
  17. Re:5 letters by DungeonCoder · · Score: 1, Funny

    Emacs is better

    (mod +5 funny, remember, this is /. :))

  18. Software != Civil Engineering by Jotham · · Score: 2, Insightful

    I disagree with the common comparison of Software to Civil Engineering and Standards Bodies.

    Data Structures would be a better analogy, which Standards Bodies have done a really good job declaring. So in 200 years time you'll still be able to read the DVD data format (assuming the media is still good), even though the software that plays it will likely be different.

    Software is more like mechanical engineering, where things do break and improvements keep being found. You wouldn't for example use a 1960's car engine in a car today, even though the basic principle is the same. No ones asks why they didn't get it right 40 years ago and aren't still using the same design.

    Unfortunately, what would often be considered an early prototype in engineering, is often released as v1.0 -- the cause of which is a long post all unto itself.

    1. Re:Software != Civil Engineering by hcdejong · · Score: 1

      A good job? When exactly none of the most popular computer applications use a standardized data format?

    2. Re:Software != Civil Engineering by mqx · · Score: 1


      You can't compare software engineering with either mechnical engineering or civil engineering, in the same way you generally can't compare any of the engineering professions with each other - but what they do all share, is a common underlying concern for attributes such as reliability, maintainability, risk management, structural integrity, and so on.

  19. Lasting 200 years by banana+fiend · · Score: 2, Interesting

    Societal infrastructure is the key part here.

    How many democracies are older than 200 years? How many governmental structures have survived 200 years? Bridges may last that long, but 200 years ago, Ireland was a very different place. America was a very different place, England was a very different place (see Ireland and America for why ;) ) as a matter of fact, EVERYWHERE was very very different

    200 years ago, the Americans loved the french for helping them in the civil war, the english hated the americans as barbarians, the Irish as "Paddies" and the Irish hated the english. The English hated the French ..... Come to think of it - only some things change.

    Back to the point - Software, or those parts of it that do qualify as societal infrastructure will have to change, simply to keep up with the rate of societal change and anything that lasts for 200 years is a very fundamental tool indeed.

    --
    Johns: Well, how does it look now? Riddick: Looks clear.
  20. See also by CGP314 · · Score: 3, Informative

    See also The Long Now Foundation.

    I read their book in college and, though it is a bit pie-in-the-sky, I thought it raised some interesting ideas. One of their projects was to build a clock that could last a thousand years. When I moved to London one of the first things I did was go to see the thousand-year clock in the National Science Museum. There it was, it all it's broken-non-time-telling glory. About a month ago I checked up on it again. Status: still not fixed : \

    1. Re:See also by tootlemonde · · Score: 2, Interesting

      One of their projects was to build a clock that could last a thousand years.

      Their current project is to build a clock that would last 10,000 years. It would tick once per year and the cuckoo would come out on the millenium.

      More successful clocks are the ones in Salisbury and Wells Calthedral. They've been in more-or-less continuous operation since the 1380s and are working now.

      The Wells clock looks like it was more ambitious than the Long Now project. "As well as telling the time on a 24-hour dial, it shows the motion of the Sun and Moon in the sky, the phase of the Moon and the number of days since the last new Moon."

      The lesson for the Long Now folks is that if you want to build something that runs forever, build it out of cast iron and replace the parts every few hundred years.

  21. Paul Graham said it best. by fatcow · · Score: 2, Informative
    1. Re:Paul Graham said it best. by julesh · · Score: 1

      Interesting article. I don't think he's necessarily right in all aspects of that, but he has some good ideas.

      It's clear that he was approaching the question with the LISP-user's mindset: simpler is better. There is such a thing as too simple, in my opinion.

  22. long-term.. short-term by Janek+Kozicki · · Score: 2, Funny

    hey, all this babbling about long-term and short-term reminds me of xterm. Soon xterm will be 200 years old. Or at least sooner than almost anything else. (except for getty ;)

    --
    #
    #\ @ ? Colonize Mars
    #
  23. Defies the functioning of the economy by syrinje · · Score: 1
    Any technological product that does not contain within itself the seeds of its obsolescence is hughly unlikely to reach the market, even if it were possible to design and produce.


    What prevents that from happening is less the state of scientific or technological development - rather it is governed by simple marketplace economics. The call for a "perpetual" product denies the necessity of transactional perpetuation that is indispensible to sustaining the economy. And our daily survival is closely interlinked with this whimsical beast that we all love to loath.


    This article is really a call for a change in both the economic and pilitical models that are in place today. I don't know if the author did'nt realise that or deliberately chose to focus on the near issue, but it is an expression of dissatisfaction with the way we do business today.


    Which is strange - we routinely accept impossible deadlines in our jobs - deadlines that are dictated by transparently artificial business urgencies.


    Makes me wonder what would happen if the growth rate of ALL companies in the world were to be scaled back by say 15% in some kind of economic Slo-Time....:)

    On one hand, a deliberate, parity maintained global slow-down might improve everybodys quality of life. On the other hand it might just make things worse and result in a month of Black Tuesdays. And on the gripping hand the offended ghosts of Smith, Keynes and company might curse humankind to be confined to a barter economy for evermore.

    --
    See that long UID - that's what you get for lurking too long
    1. Re:Defies the functioning of the economy by hcdejong · · Score: 1

      The point is that Bricklin proposes not to leave the creation of this software to the open market, but to commission software for this purpose. Nothing stops the goverment from specifying "no obsolescence" when they commission a new system. And it'll usually be the government that needs these systems.

      This is not a threat to the current economic model. There'll still be lots of data that doesn't require a 200-year lifespan, so commercial software can still be used.

  24. Too young by frankthechicken · · Score: 2, Insightful

    The problem with comparing computer practices with civil engineering practices, is the age of the two industries.

    Software is such a young industry that best practices, standards etc. have yet to be settled upon and thus will be hard to implement. Most engineering practices have come about after centuries of development, I somehow feel software development will have to mature for a while before we can see similar licences and standards bodies.

  25. Legacy COBOL by FJ · · Score: 2, Interesting

    There are already legacy COBOL programs that are key pieces of many businesses. Some of those are almost 30 years old. Not really exciting code, but still important to many businesses.

  26. Ask the programmers at Duke Nukem Forever by davejenkins · · Score: 4, Funny

    Those Duke Nukem guys should have this problem pegged by now...

    1. Re:Ask the programmers at Duke Nukem Forever by Jesus_666 · · Score: 1

      There's adifference between "can still be used in 200 years" and "can be used in 200 years at the earliest".

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
    2. Re:Ask the programmers at Duke Nukem Forever by MonkeyCookie · · Score: 1

      Actually, it's the Duke Nukem Forever software development process that will last 200 years, and not the software itself. :)

  27. Not possible by kcbrown · · Score: 2, Interesting
    Software is technology as much as it is art, and as such is subject to the same dependencies that other technologies are subject to.

    The nature of technology is to evolve over time. Only the most basic tools we have haven't changed significantly over time: things like the knife, the hammer, etc. Even the screwdriver has seen significant development in the 20th century (Torx screws, for instance).

    Only those things for which the underlying rules don't change can remain constant over time. Software is especially vulnerable to change over time because the platforms it depends on, both other pieces of software (like operating systems) and hardware, change significantly over time. 200 years ago, computers weren't even a glimmer in Charles Babbage's eye.

    And as much as technology has changed over that period of time, so have the needs of society. And since software is written to fulfull those needs, it's absurd to even ask it to live much longer than a lifetime. About the only kind of software that could possibly live that long would be games, and even then only a select few have that kind of timelessness.

    --
    Use 'slashdot stuff' in the subject line in any email you send me if you want to get past the spam filter.
  28. It simply doesn't work.. by sucati · · Score: 1

    An interesting paper, however it's completly idealogical. Consider the IRS's woes with its modernization effort. Also, think about all the mission critical software running on near-end-of-life VAX equipement. Letting software age without proper maintenance and improvement is a dangerous thing.

    1. Re:It simply doesn't work.. by hcdejong · · Score: 1

      No, the problem with the IRS (and others) is that 30 years ago they didn't consider they'd have to move the application and data to another platform eventually, so they tied the application and data to the current platform and/or didn't document what they did.
      If they'd done it the "Bricklin way" those problems wouldn't have existed.

  29. tools vs. infrastructure by karzan · · Score: 2, Interesting

    there is an important difference between tools and infrastructure. true, much software is used as tools--for accomplishing discrete tasks that evolve as societies and technology evolves. but much software--databases, routers, control devices for physical infrastructure, etc--is used more as infrastructure; that is, as a resource expected to be reliable and predictable by many users and necessary for accomplishing other tasks that ride on top of it, including employing new tools.

    infrastructure, because of its multi-user character and the fact that other things are designed to work on top of it, has to have lasting standards--if road lanes suddenly start to become half or double the width, then cars, trucks, traffic flows, etc will all be affected. even if some small technical reason might make it be reasonable to change them, their character as infrastructure means that the long term reliability of how they work is more important than short term technical considerations.

    in other words, it would probably be silly at this point to try to design user interfaces, web browsers, etc. that last 200 years, because they are still rapidly evolving. however it makes a great deal of sense to start designing standards for data storage and interface, as well as actual 'infrastructure' software to last a long time because more users (including developers of more 'tool-like' software) benefit from its stability than from its instability.

  30. Trust me, it's not a problem! by Dr.+q00p · · Score: 2, Insightful

    Just find me a customer that wants to pay for "robustness, testing, maintainability, ease of replacement, security, and verifiability" and I'll deliver.

  31. The problem is more social then tecnical. by jellomizer · · Score: 4, Insightful

    Sure it is possible to write a program that is platform independent and could possible run for 200 years. But the problem is this. How many organizations can last for 200 years without changing their policies or without society changing. Lets compare us Now and 200 years ago 1804. How many companies have lasted sense 1804 not to many. And all of them have changed the way that they did business since then. How many companies 200 years ago would have enough foresight to allow policies for IT workers. Maybe 1 who was swiftly locked away for his crazy talk. Also a lot of todays terminology will go away in 200 year. I predict the term "Race" would be an out dated word confined to the old literature and newspapers, this is because with the steady decline in racial prejudice and inter racial marriages. It would be like 200 years ago a business man will ask you for your religion in order for them to decide to do business with or not, and now there would be some problems even if they asked as just a personal question. Or say we get visited by space aliens, Sex: M F X A I C. Who know what new and unheard of categories will be added or perhaps a method of doing things is drastically changed who even what the company does changes, heck the company I worked for started repairing mainframes, now we do mostly IT Consulting, and that is in 10 years imagine 200 year.
    So to make a program this customizable you need to make it a programming language with everything to you need to add and delete change and alter over time. Now even programming languages think Fortran 30 years ago it was the most popular language out there. And now it is tossed aside for the newer languages, even with fortran compilers for linux, most people will rewrite their fortran code to a more modern language then just port it. To take advantage of new features such as GUI, Internet Connectivity, Color Printing, Web Access. More thing that seemed useless or impossible 30 years ago, are now becoming important. Sure it is possible to make a program run for 200 years. But is is possible to make it useful for 200 year. And beside all this extra design time to make a program that can run for 200 years will cost a lot of money and time to do. Are the users of the applications are willing to pay $1,000,000 for a java program that number crunches their numbers. Or will they pay $50,000 for a program that will last them 10 years, and will be a lot less bloated and simpler to use.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
  32. Paper is a bad analogy by Grab · · Score: 3, Interesting

    I love the way that everyone presents written records as a good example of a "perpetual" medium which surpasses digital.

    You may note that the author says "you can read 100-year-old newspapers *on* *microfiche*". This point practically jumps up and down to be noticed - even in the world of printing, paper copies are not seen as suitable for long-term storage, due to difficulties of preservation and physical bulk. So these paper copies are transferred to some other medium for long-term storage. This medium relies on readers existing - if all companies making microfiche readers went out of business (which probably won't be too many years ahead) then the microfiches will be unreadable. And the microfiches themselves are fragile - a scratch in the wrong place will make it difficult to read, and it's on plastic which will degrade over time.

    Why should digital be any different? If you want ultra-long-term storage of digital data, use punch holes in gold sheets. Otherwise you use a storage medium which gives you a reasonable storage size and reasonable data security.

    On reading the data back, suppose microfiche readers went obsolete and you couldn't buy them. The method of reading the data is still known and recorded, and can be reconstructed by someone needing to get the data back. Similarly, the most common bulk storage methods today are the CD-R and the DVD+/-R (tape backups are practically obsolete). Now the standard for data storage on CD and DVD is, well, *standard*. So if in 200 years time someone wants to read one back, they could build a CD player from first principles.

    Grab.

    1. Re:Paper is a bad analogy by Anonymous Coward · · Score: 0

      Tape backups are practically obsolete?
      Damn! And I just made a 70Gb backup of one of the servers to tape.

    2. Re:Paper is a bad analogy by djmurdoch · · Score: 2, Informative

      Similarly, the most common bulk storage methods today are the CD-R and the DVD+/-R (tape backups are practically obsolete). Now the standard for data storage on CD and DVD is, well, *standard*. So if in 200 years time someone wants to read one back, they could build a CD player from first principles.

      Neither tape nor the organic dyes on CD-Rs are nearly as long lasting as acid-free paper. I've read 200 year old books, but reading a 200 year old tape or a 200 year old CD-R would require *much* more effort than constructing a reader like the ones we use today, if it was even possible.

    3. Re:Paper is a bad analogy by rush22 · · Score: 1

      suppose microfiche readers went obsolete and you couldn't buy them

      I thought microfiche readers were basically just a flashlight and a magnifying glass. Anyone would be able to figure out how to make a primitive one; even without any instructions.

    4. Re:Paper is a bad analogy by Spetiam · · Score: 1

      This medium relies on readers existing - if all companies making microfiche readers went out of business (which probably won't be too many years ahead) then the microfiches will be unreadable.

      No, microfiche is not dependent upon a "company" because, essentially, all it takes to read a microfiche is a lens and a light source. It's really not too complicated. However, as you mention, storage is another issue, but even microfiche is easier to maintain for longer periods than anything digital (aside from the gold punch cards, magnetic and optical media seem to degrade FAR more quickly than ink and paper or microfilm).
  33. Where is the cost of change ? by Alain+Williams · · Score: 2, Interesting
    The cost of changing software can be looked at 2 ways:
    1. Move the software to a new box (but similar) since the old one is worn out or not fast enough or ... In practice this is not too difficult since you can either just copy the binaries or buy new ones or
      ./configure && make
      This I would not call a real change and is not too expensive.
    2. Move the software to a new (or much changed [the current] version of the same one) operating system. This is expensive as there is a lot of recoding that must be done and then work configuring it on the new platform.
    Note that the above is only valid if the software being copied does not really change it's functionality as the customer has not changed the requirement spec.

    One of the nice things about Unix (Linux/...) is that you can still run very old software on new boxes with at most minimal changes - I still use code that I first wrote some 20 years ago.

    There has been much assumption in this discussion that the whole system (hardware, OS, software) has to live unchanged for many years; I think that is missing the point as the true cost of software change is only big in case (2) above.

    Note that some software does need to be regularily changed, eg payroll - because the governments change the rules every year or two.

  34. Hardware is not the point by BaronGanut · · Score: 1

    The point is not to make the software run on the same hardware for 200 years. But to make software that still serves its purpose for a long time.

    Take accounting: They still use the system they started with. A telnet(or ssh) client connecting to a console or menu based server running the database, the server itself is about 1/10th to 1/20th of the physical size it was first, and the client machines has been upgraded and replaced.
    But the old system is still in use because of the speed and usability.

    Same with libraries with large databases of their books, they cannot change database and update every year or third for that sake.. It would cost a lot of time and money.. and there is no real point in it. It works!

    --
    Mohahah!
  35. I'm sad... by Dr.+q00p · · Score: 1

    ...to say that your comment feels more like "5, Insightful" than "3, Funny" to me. Wish I had some modp to give you.

  36. Ink and Paper by Quirk · · Score: 3, Insightful

    What's needed is ink and paper. It's our proven technology for archiving. Micro fiche and magnetic storage devices are now more prevalent than any time before but the book industry and published journals and daily newspapers show no sign of diminishing. And as the article points out newspapers dating back 200 years are still available in the public libraries. Electronic voting protocol is just now hashing out whether a paper trail is prudent. Granted the article rightly points out the need to develop an archiving industry that is able to meet the needs for computers to replace paper, based archiving but as long as hardware development thrives in an open competitive economy the market will dictate the timing of implementing the necessary hardware. Unless some body like the library of congress undertakes financing the necessary hardware and software.

    --
    "Academicians are more likely to share each other's toothbrush than each other's nomenclature."
    Cohen
  37. That's not really data loss by clsc · · Score: 1
    - as that laser disc player could be "reconstructed" from old patents and diagrams as long as they're stored on paper.

    Also, they could just have bought one

    It's merely a case of "Betamax vs. VHS" or "history is written by the victorious part". As long as the artifacts/data are retrievable you will be able to reconstruct, but electricity is still the limit.

    1. Re:That's not really data loss by Jeremy+Erwin · · Score: 1

      The Domesday project didn't use a stock laserdisc player. It used a SCSI laserdisc player hooked up to a modified BBC microcomputer. Once you've built this esoteric bit of of hardware, you'll still have to confront the disturbing possibility of bit rot-- laserdiscs are none too durable.

  38. Survival? by Dr.+q00p · · Score: 2, Funny

    I think there was a /. post some time ago (that I cannot seem to locate right now) that talked about the freeware paradox: The better freeware becomes the less you make on support.

    So, in order to survive I guess you have to make shitty sw and do lots of marketing to sell your products anyway.

    Hmm, sounds familiar in some way...

    1. Re:Survival? by jc42 · · Score: 1

      So, in order to survive I guess you have to make shitty sw ...

      Funny, perhaps, but with a core of truth. I recall a year or so back, when someone here got a high Funny rating for suggesting that consulting firms would be stupid to recommend linux, which would be just a few hours of billing time to install and configure, when they could recommend Windows, which would get them continuous billing time for support.

      I showed this to several friends who worked at companies that did business consulting, and they all reacted the same way. "That's not funny; that's exactly how it works." Several said that their own in-house systems were all linux or BSD, but they'd be stupid to recommend them for clients.

      I've also had occasion to discuss with employers the idea that I shouldn't produce software that "just works", because then they'll never have to hire me again. They all got worried looks on their faces as they agreed that I was right. But they didn't know what to do about it, considering their own restrictions on how company hiring was done.

      If we want true Software Engineering, we need to find a way to end this conundrum. Currently we're paying people to produce software that doesn't last. We do this by the simple approach of paying them to work on software that has problems, and not paying anyone for software that doesn't have problems. Right now, I don't seem to be reading of anyone working on this. Complaining, yes. But how many people realize that when you hire people, they usually try to do things that you pay them to do?

      I'll predict that we will eventually discover that we do have 200-year-old software. And it was all created by people who were writing it for their own use, not because someone was paying them to write it. This is why most Open Source software was created, after all. And it was how unix arose at Bell Labs.

      I have a number of 20-year-old programs that I keep around because they're useful ...

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    2. Re:Survival? by Dr.+q00p · · Score: 1

      Interesting comment. (Actually, I wasn't trying to be funny, apart from the last sentense. :)

      "Currently we're paying people to produce software that doesn't last. We do this by the simple approach of paying them to work on software that has problems, and not paying anyone for software that doesn't have problems."

      Spot on! This is not an approach that only exist in SE, though. Just look at allopathy. Do people pay MD's to stay healthy or to fix problems? Maybe this is the way people work, I don't know. If that is the case then breaking out of this habit will be a hard thing to do. Well, I guess it is since nobody has.

      As I am sure you know we have a similar paradox in sw consulting. The better you get the less time things take and the less you make. Sure you can increase your houerly rate, but only to a certain degree. Having five or ten times higher consulting fee than other firms usually makes customers a bit uncomfortable.

      In both cases I would say that people do not appreciate quality and that they therefore don't wont to pay for it. I guess "good enough is good enough". I wish I knew what to do about it...

    3. Re:Survival? by jc42 · · Score: 1

      As I am sure you know we have a similar paradox in sw consulting. The better you get the less time things take and the less you make.

      Yup. Case in point: I remember my first encounter with writing a device driver, years ago. A new gadget was ordered, but there was no driver. I sent a message off to the vendor's Support people, and they sent me the hardware specs. We had source for the OS, so I grabbed a driver for a similar gadget, cloned it, and modified all the magic numbers to agree with the specs for the new gadget. It took maybe an hour at most.

      A few days later, the new gadget arrived. I plugged it in, ran a couple of tests, and it worked. A Customer Support guy happened to be present, and he was astounded. "We don't have a driver for that." So I said "Well, you do now." And I explained that they had done a good job in the specs, so all I had to do was what I had done, and it worked.

      Now, this isn't too amazing; it's how things should work. The interesting aspect to this is that I've gone to a number of interviews at companies that are, among other things, looking for people to write device drivers. I've never gotten such a job. The reason is always the same. The interviewer asks about driver experience, and I mention having produced a number of them on different projects over the years. But it's never good enough. They always say that they want someone with several years experience writing drivers. I can only honestly admit to a few hours experience. After all, if you have the detailed specs, it only takes an hour or so; if not, you can't do it no matter how much time you have.

      When they bring up the "several years experience" requirement, I've several times asked if this means they really want someone who takes months to write a driver rather than hours. Inevitably, they respond to this as if I'm some sort of wise ass. A couple have told me to my face that, yes, this is what they want.

      It doesn't surprise me that we have a lot of problems getting drivers written for new hardware, given that this appears to be the "normal" attitude toward hiring people to write the drivers.

      Maybe I should be a bit less honest. After all, I could easily stretch the job out to months. But really, I'd much prefer to spend the time on difficult problems. (Something that isn't doable because I can't get the specs isn't what I'd call "difficult"; it's "impossible", and that's not the same thing at all. ;-)

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
  39. Open Source by Anonymous Coward · · Score: 0

    From the article: "most new software and hardware can only access the most recent or most popular old data. (...) The companies that built the software and hardware are often long gone and the specifications lost."

    Theres where OSS makes its difference.

  40. paper books by spectrokid · · Score: 2, Informative

    In Belgium, notary's still pay law students to copy by hand important documents on thick books, made from acid-free paper and solidly bound together. Stacked in a basement, you can throw a jerrycan of gasoline over them and set fire to it. You will lose (almost) nothing. Instead of relying on laser discs (see other post), print everything out and count on OCR.

    --

    10 ?"Hello World" life was simple then

    1. Re:paper books by Night+Goat · · Score: 1

      Funny you should mention burning books. My house burned down once, and we were amazed at how well the photo albums and books survived. Books are surprisingly resilient to fire. I remember back in high school, when school got out, trying to burn this science book that I was forced to buy, since I lost and then found mine. That thing was hard as hell to burn, it never really did get that burned. The outside of the pages burned, but the inside was fine. You could easily learn things if you wanted to.

  41. Word 97-2000 You are Wrong by tessonec · · Score: 1, Redundant

    In fact, the Word document format hasn't changed since Word 97. So any Word version from 1997 or onwards will do the job.

    And changing the settings to saving in RTF format by default (enabling Word versions from Word 6.0 through 2003, as well as basically all other word processors, to read the documents) isn't all that hard. Not even in a corporate setting.

    What? do you think your brand-new Office XP will flawlessly read your 10 years-old Word 2.0 .doc file???

    just googling a little bit shows that you are not right

    Not to mention .doc changes between different archs (MAC, X86...)

    So...

    Microsofts encourages upgrading of Office installations through a lot of questionable means, but the Word document format isn't one of them.

    It IS another of them

    1. Re:Word 97-2000 You are Wrong by Anonymous Coward · · Score: 0

      What? do you think your brand-new Office XP will flawlessly read your 10 years-old Word 2.0 .doc file???

      No, you fool. He said it would read your Word 97
      documents. RTFPost before you comment on it.

    2. Re:Word 97-2000 You are Wrong by tessonec · · Score: 1

      No, you fool. He said it would read your Word 97 documents. RTFPost before you comment on it.

      But the, again... what makes you think that you'll can (I mean MS will let you) read your documents in 20 years from now on?

  42. User defined requirements??? by cardpuncher · · Score: 2, Insightful
    requirements for the project must be set by the users

    I've yet to meet a client commissioning a project who knew well how his own business operated, still less was able to understand how any knowledge he did have might be usefully turned into a specification. One of the reasons some software projects have a short life is that the intended users fundamentally misunderstood how their business worked, or that its way of working was likely to change.

  43. the world is just not ready for this by big+ben+bullet · · Score: 1

    I totally agree with the author, but i think the world is just not ready for this. I've had some really futuristic toughts while reading the article (one tends to have those when reading about things that have to last for 200 years)

    Until society is less about profit, i don't see such a thing happening... open source might be an answer for this but it won't be enough. There would have to be _more_ open and globally adopted standards and this won't happen very soon (again... profit)

    Take the positive things out of futurama, 1984, bill and teds bogus journey, total recall, or any other futuristic story with an 'evolved' society and we might get there...

    I recently read a reply stating the 60's mentality... the fact that technology will have to work for us as it evolves, though nowadays we still have to work for technology too much

    heck... we still have to work! i'd better get back on that before i write a complete article about this subject :-)

  44. The 4-function calculator by dj245 · · Score: 1
    Maybe they don't have uptimes of 200 years, but they could probably have used the same software written 40 years ago. In the future calculators might be so cheap the 4-function might be an antique, but right now their selling point is cheapness (keep one in the car for MPG calculations!). Why write the same software over and over again for the same chip architecture?

    Software that lasts forever is the simplest kind.

    --
    Even those who arrange and design shrubberies are under considerable economic stress at this period in history.
  45. 200 years? I'll raise you 2,200 ... by Bazzargh · · Score: 3, Interesting

    The idea of software that lasts 200 years reminded me of a discussion on the radio the other day about the origin of a joke: "I've had this broom 50 years, its had 5 new heads and 3 new handles". The identity issue played with here dates back at least to Plutarch's Ship of Theseus - if you keep replacing parts of a thing, until no original parts remain, is it still the same thing?

    The relevance to software is captured with an example: Is Linux still Linux? How much remains of the kernel originally published by Linus? Would would you say that Linux has been around for X years (pick X to suit)?

    Most people would agree that it's still Linux. What Linux, the broom, and Theseus' ship have in common is that they could be modified to meet the demands of time, while retaining their identity.

    I've always thought that maintainability is the highest virtue software can strive for, above other quality-oriented goals like being bug-free, or performant. If its buggy, but maintainable, it can be fixed; if its slow, but maintainable, we can make it faster. I think it could also be argued that software, like Theseus' ship, needs to be maintainable to last 200 years; but the version 200 years from now may not resemble the original in the slightest.

    Just my 2c

    Baz

    1. Re:200 years? I'll raise you 2,200 ... by argent · · Score: 1

      Would would you say that Linux has been around for X years (pick X to suit)?

      You're looking at the wrong software. Linux is UNIX, for all practical purposes, and UNIX has been around for getting on 35 years, and it's been 25-30 years since the last major set of changes in existing interfaces, and almost that long since the UNIX API was first independently implemented.

      Linux is just the latest of those implementations, though BSD is a better example of your 50 year old broom since it started out as UNIX and *has* been replaced module by module until no line of the original code remains. Still, if Linux is a newer broom, it's still fundamentally a broom, not a Microsoft Mop or a VMS Vacuum.

      Though I'll note that Microsoft is integrating a kind of "broom compatibility module" in Longhorn.

      So... I wouldn't expect any given software package to last 200 years. But APIs and file formats, open systems and standards more than open source, those will survive.

    2. Re:200 years? I'll raise you 2,200 ... by eraserewind · · Score: 1

      98% of the atoms in your body are replaced each year. Are you still the same person?

    3. Re:200 years? I'll raise you 2,200 ... by narcc · · Score: 1

      I find that incredulous. Do you have a link to more information on the matter?

    4. Re:200 years? I'll raise you 2,200 ... by eraserewind · · Score: 1

      Here's one: The body keeps renewing itself continuously. Bones keep taking fresh calcium and keep rebuilding themselves. The stomach lining renews itself every five days (if it didn't change that often we would have to contend with big holes in our stomach). The skin is replaced every month, the liver every six weeks, and the skeleton every three months. In one year from today, 98 percent of the atoms in our body will be exchanged for new ones. In one year, excepting the two percent, we become new bodies. How do we ever get old?

      Google will give you more results.

  46. 200yrs when we have enough problems with 15yrs... by nih · · Score: 1

    See the BBC Domesday project for a good example

    BBC Domesday project

    --
    I'm a rabbit startled by the headlights of life :(
  47. Wait... by millahtime · · Score: 1

    Wait... what do I care. In 200 years I'll be dead.

  48. Re:5 letters by Anonymous Coward · · Score: 0

    You both suck. The correct answer is NotePad. DUH! FOR GREAT JUSTICE!

  49. What is the reason Donald E. Knuth wrote TeX? by mvw · · Score: 4, Insightful
    Prof. Knuth was unhappy with the degrading typographical quality of the printings of his The arts of Computer Programming series. So he took 10 years of his research time to develop the TeX computer type setting system. (A stunt hard to pull off, if you are not a professor or rich :-). Now look at how he published the TeX System. There is a set of 5 books containting
    • TeX user manual
    • TeX commented source code
    • Metafont user manual
    • Metafont commented source code
    • The Metafont programms to generate the computer modern fonts
    What is that good for?

    If you, say in 500 years, get a copy of these 5 volumes (and if they are printed on good paper, there is good chance that these survive). You just need some kind of computing device and the skillset to implement some easy pascal like programming language. Then you type in the programms and fonts from this book and voila, you have working a TeX system!

    Of course you need to write a .dvi driver for whatever output device you want to need and have at that time.

    If you now find some .tex source of one of Knuth's books, be it in print or some crude hyperflux memory cube, you are then able to reproduce that book in the quality Knuth intended it to have!

    Thus TeX is explicitly developed to transfer the typographic quality of Knuth's books into the future, without depending that lots of software vendors establish lots of data format (e.g. Word 2325 to Wort 2326) converters!

    Regards,
    Marc

    1. Re:What is the reason Donald E. Knuth wrote TeX? by GoofyBoy · · Score: 1

      >say in 500 years, get a copy of these 5 volumes

      Unfortunately, you can't understand the books since it in some ancient, long dead language. :)

      --
      The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
    2. Re:What is the reason Donald E. Knuth wrote TeX? by mvw · · Score: 1
      Unfortunately, you can't understand the books since it in some ancient, long dead language. :)

      They deciphered the hyroglyphs from Egypt, which is pretty amazing. So it might be possible to have English stuff understood for a couple of thousand years.

      I also read that there are archives from Chinese administrations two or three thousand years old. Perhaps boring stuff who paid how much income tax in 500 B.C. That really made me wonder if valuable stuff might get lost (Beatles recordings) and such government protected trivia might survive for a long, long time.

      By the way, there is a book by Physics Professor and Hard SF writer Gregory Benford, Deep Time: How Humanity Communicates Across Millennia which seems to view the pyramids as a kind of (timely) long distance message. I need to get a copy of that.

      Regards,
      Marc

    3. Re:What is the reason Donald E. Knuth wrote TeX? by Anonymous Coward · · Score: 0

      English has evolved somewhat more slowly ever since the 1600s-1700s after printing presses became widespread in England and elsewhere. Remarkably little has changed since Shakespeare's day, and you can really appreciate this when you go back and look at Middle and Old English (texts, not 40s!). English texts are widely available in any country, so it would be fairly hard for knowledge of the language to be lost in a few thousand years (a good example being Latin and the works of the Romans and Greeks, which were kept alive by Islamic and Christian thinkers during what were fairly bad times).

      In short, I'd worry more about the many languages that are losing speakers and will probably die out - hundreds or thousands, if I'm not mistaken.

  50. is it just me... by Anonymous Coward · · Score: 0


    or is everyone else sick and tired of these old computer visionarys coming down from their 42nd floor penthouses to spell d00m upon the current state of computing?

  51. NASTRAN? SPICE? by Anonymous Coward · · Score: 0

    I am too lazy to log in.

    I think this software package, NASTRAN, is possible one of the few that could last that long. Finite element analysis is incredible useful. This software, written in Fortran, has been around since the 60's.

    Also, Spice has proven to be incredibly useful. It even has the ability to model superconducting Josephson's Junctions.

    These types of software allow us to explore and create new products/ inventions. Truly, applications that help advance knowledge are more likely to stay around.

  52. good example by mqx · · Score: 1


    If you want a good example of survivable software and data, just look at the emulators for old 8/16bit computers, e.g. the Commodore 64 emulators. They faithfully reproduce the entire machine, allowing any of the old software to be used without a problem. Even in 200 years time, these old C64 emulators will be around as a curiosity, in the same way that early "flip card" cinema machines are found in museums.

  53. Of course it's not a problem! by jawtheshark · · Score: 1

    I mean: I would deliver too. However, dear customer, you have to wait till 2204 before it's finished. But that day, it will be *perfect* (bugs excluded of course) Ah, yes, and payment in advance please!

    --
    Ahhh...the great dumpster continuum. Many a free computer will be found there. -- sowth (748135)
  54. Society by 12357bd · · Score: 1

    Dan is right, there's a real need for societal software, and somehow it will exist in some form in the near future.

    The problem I see is simple: in other engineering areas standards are used everywhere, ie: electrical normatives regulates every aspect of an industrial device. Software (at least in his current form) cannot be 'normalized' to that level, and that's the problem.

    We can agree on 'simple' or 'closed' things such as data formats, or even on classical algorithms but how we stablish the other details of source code making (ie: variable names, allocation strategies, etc,etc)? And even more important, if we try to normalize those aspects how long will or those norms lasts?

    --
    What's in a sig?
  55. ASCII data by Richard+Kirk · · Score: 1
    It is hard to read someone else's code. However, show them the data and its structure and they can usually figure it out for themselves. If you want your data to live long, then stick the important bits in ASCII. You don't have to stick all your images into ASCII - perhaps just have the header tll you in text form that the data that follows is an image, has 3 bytes per pixel RGB, and the number of lines and pixels. This also allows you to write things like floating-point numbers in a way that does not depend on the machine precision and endian-ness. This, perhaps, is the computer equivalent of paper. You don't know what's on a bit of paper, but you can usually find out without any special tools, just by looking.

    I don't know if media formatting is really part of the problem. My brother only exaggerates slightly when he says he has never deleted a file in 20 years, because his PC disk is always getting bigger. Your data should get copied at regular intervals if you want keep it alive. You will copy it even if you only do that when you upgrade your machine. If you don't, then magnetic media will slowly degrade, CD's may craze, punched cards may get used for shopping lists. If you still have the original text of your PhD on 1/4" tape, then it is probably not readable even if you could find a drive.

  56. Document Format by os2fan · · Score: 3, Interesting
    The main problem is not so much with "applications" but data format. We talk of the aging db2 formats used of data bases. The reason that these hang around for so long, is that much of the corporate history hangs out in it.

    When i design projects, i tend to think more about keeping the data clean, simple and robust over time, rather than the ease which certian applications can reproduce it.

    For example, when i designed KML, the idea was that it was meant to be a robust format that could be defined outside the context of any word-processor, and ultimately aimed at HTML, TeX, etc. At the moment, it is Regina REXX's job to render my markup. Nothing stops this from becoming Perl's or CEnvi's job! It's just a matter of writing a new parsing engine.

    Because it is not something like HTML or TeX or RTF, i have considerable control over the format, and i can map several internal styles onto the same output, eg like {emphasis} vs {bold} in html. But the thing can be to the structure of the document.

    It is more data standard, rather than program standard that is important. The latter is also important, since we don't want to either run dusty decks or old programs.

    But what can you expect from an upgrades-driven market?

    --
    OS/2 - because choice is a terrible thing to waste.
  57. Just a projection by ncaHammer · · Score: 1

    What the author did not mention is that software implementations are always just a projection of a solution using current technologies.

    As long technology advances, the most efficient implementation (in software and hardware) will be drastically different than the previous one.

    If we take the time-machine and a current software (ie Linux-KDE or Eclipse-IDE) and go to 1980 and release it as a brand new OS or IDE do you think that will be succeeded ?
    I strongly doubt

  58. Here you go by 1000101 · · Score: 1

    public class HelloWorld
    {
    public static void main(String[] args)
    {
    System.out.println("hello world");
    }
    }

    That should last you a few hundred years.

    1. Re:Here you go by Anonymous Coward · · Score: 0

      Hello! The world won't have *objects* in 200 years!

      It'll be a mass of 'gray goo' (from nanotech)

      Sheesh...

  59. false economy by mqx · · Score: 1

    I would argue that you shouldn't put too much effort into making software that you think will last 200 years, because in 10 years time, you'll find that a technological change completely invalidates fundamental design/architectural/etc assumptions, and thus your software goes out the window.

    The best you can ever do is write software for a shortish horizon, i.e. a couple of decades or so.

    I mean, if anyone could predict what software would last 200 years, then please contact me because I want your help in betting on the stock market :-).

    Technologies change, either incrementally, disruptively, etc. One quote I remember from Lucent was "we knew the internet was coming, we just didn't know that it'd be like this". Who can predict that a specific protocol, or a specific topological approach or a specific standard will be the direction of the future?

    Designing for 200 years lifetime is basically science fiction: possibly interesting and entertaining, and illustrating some moral or technical dilemas, but ultimately to be obsolete when the real future comes around.

  60. Forget year 2000 by AC-x · · Score: 1

    What about the year 2038 bug? 68 years may have seemed like a long time back in 1970, but it's getting closer, and if there are still a lot of old unix systems/programs running by the mid 2030's there's gonna be a lot of problems.

  61. Rosetta Disk by RedLaggedTeut · · Score: 1
    Readability is why the Rosetta Disk is created such that it can be read by good microscopes.

    There is still the problem that it uses our current language and characters, so you need to know at least one language to figure it out.

    I think creating an abstract communication bootstrap procedure would be fun, if you want to start such a project, please reply or email me at d31337(di4g@ch33rful.c0m)(or see homepage).

    --
    I'm still trying to figure out what people mean by 'social skills' here.
    1. Re:Rosetta Disk by hcdejong · · Score: 1

      The disk contains (among other information) the first three chapters of Genesis. Considering the durability that that text (and the Bible in general) has already shown, it's safe to say that it will be a usable bootstrap.

    2. Re:Rosetta Disk by SimoM · · Score: 1

      I hear that some detailed proposals for "abstract communication bootstrap procedures" have been made. One such is Dr. Hans Freudenthal's LINCOS (short for "Lingua cosmica") that he published as a book in 1960.

  62. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  63. "What?! That's impossible." by Kethinov · · Score: 1

    That's the first reaction this guy's getting from people I bet. Just remember my favorite quote from Captain Picard: "Things are only impossible until they're not!"

    --
    You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
  64. vi by TTL0 · · Score: 1

    'nuff said

    --
    Sanity is the trademark of a weak mind. -- Mark Harrold
  65. Which platform? by blugeoned · · Score: 1

    Which platform should we use, the one that goes out of support in four years or the one that has daily kernel releases?

  66. welcome to oz... by WillAtMH · · Score: 1

    I cant think of any intelectual property that has lasted 200 years. for that matter, I cant think of many bridges, dams, or sewers that have lasted over 200 years without some sort of upgrade. This guy seems to be in fantasy land.

  67. Many say "we need standards", but they are wrong. by master_p · · Score: 1

    Many posters above have said that as long as something is documented correctly, in other words if the standards are open, then software will be long-lived.

    The above is wrong, because software does not only consist of data, but of algorithms, too. Algorithms change as technology changes. Therefore, what matters is the interfaces, not the actual standards. An interface expresses a standard, but a standard can not express an interface.

    For example, if every computer had the same interface for reading a BMP file, we need not be concerned about the BMP format; but the reverse is not true: we have the BMP format, but we don't have the interface to read a BMP file.

    But how are interfaces specified ? is there a uniform language to express interfaces in software ?

    The simple answer is "no". We have specifications that define interfaces, but those can't run as software yet. We have XML, but XML does not define interface behaviour, only a structured data format. And we have a myriad of programming languages, all defining their own interface to software.

    In order to have long lasting software, even for decades, we need to have a mechanism of defining software interfaces, that works on binary level, can be used across distributed environments, allows incremental change of software, it is persistent etc.

    In other words, we need a distributed object oriented persistent information system.

  68. Long Now Foundation by handy_vandal · · Score: 2, Informative

    The Long Now Foundation: 10,000 Year Clock and Library
    "The Long Now Foundation was established in 01996* to develop the Clock and Library projects, as well as to become the seed of a very long term cultural institution. The Long Now Foundation hopes to provide counterpoint to todays 'faster/cheaper' mind set and promote 'slower/better' thinking. We hope to creatively foster responsibility in the framework of the next 10,000 years."

    * The Long Now Foundation uses five digit dates, the extra zero is to solve the deca-millennium bug which will come into effect in about 8,000 years.
    Long Now is the brainchild of Stewart Brand.

    -kgj
    --
    -kgj
    1. Re:Long Now Foundation by Jesus_666 · · Score: 2, Funny

      I wouldn't trust a long Now that can't be cast into an int Now.

      --
      USE HOT GRITS WITH STATUE OF NATALIE PORTMAN (NAKED AND PETRIFIED)
  69. I know it! by haxor.dk · · Score: 1

    ...bring back paper tape!

    better yet, fetch me a case of punched cards!

  70. Give me requirements that last 6 months. by oneiros27 · · Score: 1

    I know that this is centering more around commercial programming, which is much more generic than custom programming.

    But normally, for custom programming work (ie, trying to solve the needs of a specific company), I'm lucky if the requirements stay consistant through the development of the project. At one place I worked, it wasn't uncommon for the management to change significant parts of the project on a weekly basis -- at one point, they kept flip flopping on two major components for about a month... then they get pissed off when we're behind schedule to meet a deadline that the technical staff said was unrealistic in the first place.

    His specific examples were in regards to data storage for the most part, which has entirely different design requirements than your basic calculator application.

    Oh -- and I've gone back and opened up 15+ year old files... but typically, I have to do it older hardware, especially in the case of old PC software, where the current hardware won't run an OS old enough to run the software correctly. Hopefully, these issues with help to drive the emulation market, so we can just emulate the Apple ][e to run Quark Word Juggler or whatever else we might need.

    --
    Build it, and they will come^Hplain.
    1. Re:Give me requirements that last 6 months. by f00zbll · · Score: 1

      I don't know about you, but this kind of behavior is more likely than having well defined specifications and requirements. I've yet to see good functional specifications come from management. The best specs, which weren't perfect usually resulted from the PM and programmers working closely to understand the problem.

    2. Re:Give me requirements that last 6 months. by argent · · Score: 1

      I've gone back and opened up 15+ year old files... but typically, I have to do it older hardware

      I found a program I wrote 20 years ago through Google, and after fixing a bug that that been a bug 20 years before but the computer I was running it on hadn't been fast enough to notice, it compiled and ran on modern UNIX.

      I've got some 30 year old documents in nroff that format up nicer than the original could have ever have printed under groff.

      As for custom programming, after a while you get a feel for ways to make the underlying code generic so you can re-use it over and over again.

      The best example I know of of that comes from Bell Labs... after all we're still using an OS they designed as a test-platform for file systems around 1970.

  71. Applications? by Oligonicella · · Score: 1

    What makes anyone think that the applications that we seem to need today will even be useful 200+ years from now?

    Society -- and its needs -- changes constantly.

  72. Re:5 letters by the+real+darkskye · · Score: 2, Funny

    No vi is correct, the article is about software, not operating systems! :D

    --
    Music is everybody's possession.
    It's only publishers who think that people own it.
    Fuck Beta
    ~John Lenno
  73. Mylar by RogL · · Score: 1

    you want mylar tape, like the old machine-shop CNC programmers used. Design a program, punch it to paper tape, test; if it works, punch a mylar version. Unaffected by shop liquids (coolant / solvents), not easily torn, etc. That's the archive tape.

  74. Software that might have to last 200 years by snkmoorthy · · Score: 0

    Imagine all those space/asteroid probes we will be sending out, assuming it will come back only after centuries, 'll need software that works for centuries and software on the ground station that remains compatible with it.

    what about historical data, would we have to retrieve/upgrade all digital documents just to make sure that it remains compatible, couple of centuries from now.

    I'm bequeathing all my asteriods in the alpha-epsilon nebula to my great great grand children in a will written in Word, after all.

  75. Copyright, not obsolesence, will destroy history by Anonymous Coward · · Score: 0
    Last year I read an article saying that dedicated enthusiasts were desperately trying to assemble a working laserdisc system, in order to archive all the data collected just 20 years earlier.

    It's been done... there were a lot of the players around for a while, and the hardware was a little bit more durable than a modern PC. The data's been rescued, and these people have made good progress on software emulation of the original hardware. The big problem is the plethora of potential copyright owners making the disk not legally copyable or distributable...

  76. X11 : Remote Network Backward Compatible to 1987 by NZheretic · · Score: 1
    The X Window System, more simply 'X' or 'X11', is judged worldwide to be one of the most successful open source, collaborative technologies developed to date.

    Since it's public release in 1987, every new release of the display servers has remained backwards compatible to remote networked applications going back to 1986. That means that you can have a 1987 Unix server running an X application, behind an internal firewall, networked to any modern X display server on any desktop OS you care to name. It is the only graphical network protocol in current use that has remained backwards compatable. X11 display server vendors are not going to break that backward compatiblity

    Building remote network X11 application servers has proven to be the most future proof, vendor independent and secureable route.

  77. Forget applications - how about FORMATS by gatkinso · · Score: 1

    Data formats should last 200 years. Hey I'd be happy with a decade.

    The application itself is almost irrelevant if that were the case.

    --
    I am very small, utmostly microscopic.
  78. Once again, Vernor Vinge is the visionary by squarooticus · · Score: 2, Interesting

    In A Deepness in the Sky, Vinge posits a collection of software of ancient origins that handles all of the Qeng Ho's automation. This software is never replaced, but simply evolves as better ideas appear. While not technically open source (the Qeng Ho considered this software to be one of their proprietary advantages), it is open to every member of the group. By the time of Pham Nuwen, it had existed in some form or another for literally thousands of years, and over that time had been inspected by thousands of people.

    --
    [ home ]
  79. Been there, wrote that by Rogerborg · · Score: 1

    Go into a nuclear power station (make sure to wear your I Am Not A Terrorist shirt). You'll find VMS/VAX machines running software that's gone decades without an error or reboot. Old news.

    --
    If you were blocking sigs, you wouldn't have to read this.
  80. Re:200 years of speech recognition software??? by Arminator · · Score: 3, Funny

    See, this happens when you use 200 year old speech recognition software...

  81. This is a Great Idea, and... by Trolling4Dollars · · Score: 3, Interesting

    ...I agree heartily, but were the United States is concerned, this will probably never happen. The brand of capitalism that currently drives the U.S. is not friendly to goods and services that are expected to last a long time. In the past, you could buy a TV and the company would guarantee it's picture tube for up to ten years. These days you're lucky to find a TV with a five year guarantee on the picture tube and in most cases you are forced into buying an extended warranty that you have to renew.

    The way that homes were built in the early part of the 20th century, those homes could be expected to still last up to 100+ years. These days, the cheap 'lick em and stick em' jobs that people pay hundreds of thousands of dollars for are certain to start falling apart in 10-25 years. I know this because I used to work on some of them. The materials are not meant to last. Many of the homes develop probles with the plumbing, roof, even the electrical in some cases. A lot of these homes can't stand up to tornadoes as well as the old houses could. There was a neighborhood in a city south of me where all the bran new houses were torn apart by a tornado. These houses were built in the late 1980s and 1990s. Within a few blocks, there were a few old farm houses that were unscathed. My point is that houses these days are made of crap, more expensive and are not built to last. They are essentially disposable after one generation grows up in them (while having to fix problems).

    This is all evidence of the disposable, recurring payment culture of the U.S. today. I exclude other countries even though many of them have the same problem, but to a lesser extent. Those other countries are fr more likely to try and build a long-lasting, open source infrastructure. When I was a kid in the 70s, recurring fees were rare other than utilities and mortgage or car payments. Today, you can get nearly anything for a recurring fee. Although all the fees themselves are small, they total to whopping bills if a person needs or wants all those goods and services. Whatever happened to the day when you could buy something and it was yours. 100%. No strings attached. No recurring fees. Just yours. Sure there are a few things, but keep in mind that recurring fee or not, they are not built to last. Durability is anathema to profit in the new American way. The idea of having long-lasting, open source/free software is going to have a lot of opponents in the American software business soley because there is money to be made.

    1. Re:This is a Great Idea, and... by Anonymous Coward · · Score: 2, Insightful
      The brand of capitalism that currently drives the U.S. is not friendly to goods and services that are expected to last a long time.

      Absolute fucking bullshit. There's simply different stratas of goods. People can buy something cheap or something midrange or something expensive. The expensive stuff will, in generall, last longer and be of much higher quality- Harmon Kardon versus Kraco, for example.

      It's called choice. And you know what? Even the cheap stuff lasts a decent amount of time. A lot of this "stuff was build so much better in the OLD DAYS" is myth and rose colored rememberances.

      And stop blaming "capitalism" for everything and see it for the boon that it has been. It's a highly imperfect boon, but, shit, it gets blamed for things that are stupid. Capitalism didn't create a class based society. Capitalism BROKE THE BACK of the serf/aristocracy bullshit that plagued humanity for millenia. There's still classes, but what capitalism gave us is:

      1. A continuum of classes. There's more than rich and poor. Incomes range from zero to the millions in a smooth gradient.

      2. Class mobility. Hard work DOES pay off in this society far more than many others. My parents grew up in abject poverty. I grew up fairly poor. I now make $160K a year. Every single "class warfare" jackass I meet is invariably a lazy dumbass who refuses to pull his or her own weight.

      Yeah, some people get what could be called far too rich, and I know it's a bitter pill for some, but that doesn't stop you or me from succeeding. Wealth can be created anew in our system by creating a value, or perceived value, where none previously existed. There isn't a fixed amount of money floating around.

      And those farm houses a few blocks away survived because the destructive path of a typical torando is very narrow. If the twister had come closer to the farms, they would have been nuked just as thoroughly. This is a force that toses around cars and can *pick* *up* a typical house. The house doesn't exist that can survice a direct hit or even a near miss from a tornado.

      Today, you can get nearly anything for a recurring fee. Although all the fees themselves are small, they total to whopping bills if a person needs or wants all those goods and services.

      The key word being "wants". And most of the new fees are for what amounts to new utilities: cable/satellite service, cell phones, internet access, etc. People buy them voluntarily, and most seem somewhat satisfied. Mosdt of the problems arise from these things being new servies, and the bugs remain to be worked out.

      Why not just leave people alone? You don't like paying fees? Fine. Don't pay them. My mom is writing her autobiography on a Mas IIsi running Mac OS 8. If you don't need to upgrade, don't. Stop whining and let others make the choices that are best for them.

    2. Re:This is a Great Idea, and... by DoctorHibbert · · Score: 2, Insightful

      It's a mistake to compare quality of old houses with new houses. Why? Because all the old poorly built houses are already gone. There are well constructed houses built today that will last centuries (provided sufficient maintainence of course). Most of the poorly built houses today won't be around in a hundred years, just like the ones houses built 100 years ago aren't around today.

      And really, so much of that depends on the amount of maintainance over the years. Old construction techniques and materials are generally inferior to modern ones, yet if maintained properly they can last a long time. I've just completely renovated a 100+ yo Victorian, I know what I'm talking about. Example, our house has a fieldstone foundation that every decade or so needs new mortar in many of the joints, while a modern reinforced concrete foundation generally needs no maintanence. If we don't do that work, the foundation starts to fail and portions of the house sink. Its already happened to some degree, not single room is level. Yes, that can happen in new construction, but not nearly as much and its usually because of problems in the plots geology not the foundation construction.

      Anyway, to reiterate, you don't see many crappy old houses because they are already gone.

      --
      Arbitrary sig
    3. Re:This is a Great Idea, and... by Stevyn · · Score: 1

      What the hell are you talking about? Compare the cost of a television in relation to someone's income in the 50's and in 2004. Televisions are a lot cheaper now then they were. And all this america bashing about the quality of these products is bullshit because electronics are made in asia! And when they hell have you ever been "forced" to buy a warrenty that you have to renew???

      Reoccuring payments are chosen by people over one initial cost. Do most people have $20,000 right now to buy a car? Of course not. They finance it and pay a monthly payment. If they couldn't do this, they couldn't have a new car.

      And as for homes. Well way back when it was the land that was cheap. Now the land is expensive so the building materials have to suffer in quality. But people don't want a house that will last for 50 years. But if they did, then they would have it custom built by a sub contractor using quality materials.

      You sound like just another pissy angry liberal who thinks that complaining will make the world better. Shut up.

    4. Re:This is a Great Idea, and... by HeyLaughingBoy · · Score: 2, Interesting
      The brand of capitalism that currently drives the U.S. is not friendly to goods and services that are expected to last a long time

      Sure it is. The problem is that you're just looking at consumer goods that are expected to be cheap, so there's no incentive to make them long-lasting. Quality costs, and most people don't need the added expense if it's equivalent to the cost of a replacement unit in a few years. (and just how can anyone be *forced* into buying a warranty?)

      We have bridges that have been up for over 100 years, factory equipment is generally designed to work for decades -- back in 1994 or so a small businessman showed me around his machine shop that was mostly WWII surplus lathes, etc that were still churning out parts in production quantities daily. I recently sold an 18 year-old pickup truck that was in great running condition, and I expect it to be still around 10 years from now if maintained properly.
      I can build you control hardware and software that I will guarantee for a 15+ year lifetime if you're willing to pay for it.

      Don't assume that just 'cause your CD player dies after 2 years that all manufactured goods are like that.
    5. Re:This is a Great Idea, and... by kesuki · · Score: 1

      tornadoes are a bad example... since the path of destruction is focal... and generally, any house under the focal point of the tornadoe is going to end up in taters, unless it's made of 8 foot thick steel reinfoirced concrete. in which case you're pretty good, even up to being ground zero for a nuclear blast... but yeah, substandard houses are quite common in modern construction, just slap 2 modular pieces together, and if they're not tied together right a strong wind will blow them down faster than you can say "i'll huff and puff and blow your house down!"
      still, most tornados (touching down in residential areas) leave one block of houses devistated, while the houses across the street didn't even loose the good china in the storm, so you had an awful example.

  82. OpenSource Hardware.. by XiQ · · Score: 1

    A long term solution might be to also make the hardware opensource (release it under the LGPL), which is already done by some people. This makes a difficult design simpeler to understand. More hardware standards would also help...

  83. Windows by CoryS0L0 · · Score: 1

    I'm not sure that todays software is at the level where we can simply "maintain" it to fit and work with newly emerging software. Today's most prolific form of "maintenance" might argueably be software patches. We have all seen the effects of daily patches to common software and the problems that this approach brings about, (::cough:: ::cough:: Windows.)

    Sure, you can have software that lasts 200 years and doesn't need to be modified, but the tough part is to make it interoperable with tomorrow's technologies. We're making great progress with data formats and specs, (XML, webservies, etc...) but we still have a long way to go... I personally don't think that today's software can do this.

  84. Only Good Software Needs to Last by 4of12 · · Score: 1

    A lot of software is quite useful, but written in scripting languages like Python or VB and is thrown away and forgotten once it's accomplished its task.

    Other software embodies important fundamental operations, such an FFT or LU factorization. You'll still find a lot of useful scientific and mathematical software in the SLATEC library that was developed two decades ago that will compile using g77 on any Linux box.

    The bottom line is that there is a need for all kinds of software ranging from the throwaway script to the eternal algorithm: they're all useful.

    --
    "Provided by the management for your protection."
  85. Vinge leaves a clue in that passage... by argent · · Score: 2, Interesting

    In A Deepness in the Sky, Vinge posits a collection of software of ancient origins that handles all of the Qeng Ho's automation.

    If you calculate the offset between the starting date of their oldest calendar and the epoch date of their software, it seems that their software is based on something written in the '70s, or at least that's when its calendar started.

    Things that make you go hmmm...

    1. Re:Vinge leaves a clue in that passage... by Sloppy · · Score: 1
      Heh, gotta love a book where someone's job description is "programmer archeologist."

      If I recall, the characters actually misinterpret the time structure. It looks to them, like time_t is a measure of seconds since Man first walked on the Moon. Close enough, I guess. :-)

      --
      As copyright owner of this comment, I authorize everyone to defeat any technological measure which limits access to it.
    2. Re:Vinge leaves a clue in that passage... by argent · · Score: 1

      That's right, I'd forgotten the details. Need to read that again, probably will when time comes to read the next book in the series. They thought that it was a few million seconds offset or something.

  86. The Issue is Not Software by nyekulturniy · · Score: 1

    Rather, it's preservation of *Data*. If data were preserved in a readable format for future machines to read, parse, and manipulate using their own software, then we would not have to worry whether our data for 2000 is readable in 2021.

    I suggest the best way to preserve data might be optically-readable text characters on microfilm, or acid-free paper, or metal, or all three.

    --
    Nyekulturniy... Proudly confusing readers and editors since 1981!
  87. Understanding the problem? by oneiros27 · · Score: 2, Funny
    During that same project I was complaining about, we finally found out why the director of our department wanted to make the change -- and it was because of a misconception about the front end, which wasn't directly tied to the back end, and could've been changed out without doing nearly as much work.

    That's not to say that the change wasn't needed, as it was, because of other problems, which we started discovering during the course of the project, but then again, they never should've gone to the software they were running in the first place, as it didn't have a benefit/cost ratio better than the software they were on originally.

    Of course, we also went through 4 different PMs on the project, had 'co-project managers' at one point, and I'd get bitched at for bringing up flaws in the project plan, even though I had been told in the first meeting that I was the technical oversight, and if something went wrong, it'd be my fault.

    From my experience, a good project comes when the programmers know what the goals and objectives of the organization are, and are then told what their constraints are (budget, time, etc), to make it happen. It rarely comes when the higher level mangers decide on the solution, and then tell you how you have to build it. For some reason, I got yelled at after putting up the following sign in my cubicle:
    "We're the technical experts. We were hired so that management
    could ignore our recommendations and tell us how to do our jobs."
    -- Mike Andrews in alt.sysadmin.recovery 10 October 2000
    <eUJE5.880$ln6.119642@news.flash.net>
    --
    Build it, and they will come^Hplain.
  88. In others news by Anonymous Coward · · Score: 0

    "Dan Bricklin on Smoking marijuana"

  89. Lasted less than five years by peter303 · · Score: 1

    Their web site has been mostly broken the past two years. No one seems to maintaining it.
    They built a clock prototype, but the overall project seems to be moribound.

    1. Re:Lasted less than five years by handy_vandal · · Score: 1

      Their web site has been mostly broken the past two years. No one seems to maintaining it. They built a clock prototype, but the overall project seems to be moribound.

      Damn, that's depressing news.

      -kgj

      --
      -kgj
    2. Re:Lasted less than five years by dutky · · Score: 1
      peter303 wrote:
      Their web site has been mostly broken the past two years. No one seems to maintaining it.
      They built a clock prototype, but the overall project seems to be moribound.

      The Long Now Foundation is aware of the flaws in their web-site and are fixing them right now. Come back in 10,000 years and you'll see.
    3. Re:Lasted less than five years by peter303 · · Score: 1

      Perhaps it had something to do with the software only had four digits for year field. Or was it two digits? :-)

  90. I Know of Code That Will Last 200 Years by ausoleil · · Score: 2, Funny
    In C:
    #include <stdio.h>

    main()
    {
    for(;;)
    {
    printf ("Hello World!\n");
    }
    }
  91. FORTRAN "2150" by peter303 · · Score: 1

    I expect FORTRTAN and COBOL to be around in some form 200 years from their invention cira 1950s.
    (I'm not sure whether this should be mod funny or tragic :-)

    1. Re:FORTRAN "2150" by Anonymous Coward · · Score: 0

      (I'm not sure whether this should be mod funny or tragic :-)

      Valentine Michael Smith (the man from mars) would say we laugh because its tragic...

  92. COBOL, FORTRAN and SQL by Detritus · · Score: 3, Interesting
    There are standards that have been around for decades and have preserved upward compatibility. Well-written FORTRAN programs (no jokes from the peanut gallery) from the 1960s can be compiled and run on modern machines. At one time, there was a strong movement to standardize high-level languages so that an application could be compiled and run on any computer. The idea was that an applications programmer should be able to write usable programs without knowing or caring about the operating system and other machine dependent trivia. That idea seems to have been lost with the advent of microcomputers and the rise of operating system monocultures such as MS Windows and UNIX.

    Another problem is the advent of the GUI. Give a user, or even a programmer, a text-oriented application today and be prepared for much wailing and gnashing of teeth. As someone who started writing programs on mainframes, it doesn't bother me, but I've seen users look at me like I'm some kind of Martian when I give them a command-line program to solve a problem, even though it is supplied with step-by-step documentation on how to use it.

    Where are we today? I don't believe that there has been much progress made in recent years. You can write portable programs in COBOL, FORTRAN and Ada. ISO Pascal and ANSI BASIC seem to be near extinction. Portable programs are theoretically possible in C, but the pitfalls and temptations are many. I'm not a database programmer, but I would hope that there is a portable subset of SQL that would support the portable use of RDBMS. Why should I know or care that the system is using Oracle or SQL Server?

    --
    Mea navis aericumbens anguillis abundat
    1. Re:COBOL, FORTRAN and SQL by iggymanz · · Score: 2, Informative

      There actually are some compatibility issues before the ANSI standardization of COBOL and FORTRAN, and both languages let one use non-portable extensions. A program has to be written with portability in mind, just like most other compiled languages. No commercial database application uses pure ANSI standard SQL to get real world work done....try to substitute one db for another behind the scenes and things will break. Many applications can use multiple dbms on the back end only because they have configuration settings that tell which database you are using, often to the version (Oracle 4 doesn't speak quite the same SQL as Oracle 8, especially for database creation and modification, though MOST things are backwards compatible). I speak as one who's earned many $10K's because stuff doesn't quite act in a backwards compatible or portable manner , whether language, dbms, OS flavor

  93. Wire and cableless. by WrongWay · · Score: 2, Interesting

    I used to work for a rather large telco-datacenter. They were using software built in 1970, to provision internet connectivity.

    Telnet in (pick a username and try PASSWORD for the password) 75% of users were set up with default passwords. 50% of the active users were employees who left the company several years prior.

    My team coded a new system from the ground up. Taking into account all the changes in the past 30 or so years. It was large roboust and elegant. Anyone who used the old system was completely blow away by the new system... Except the lead consultant from Accenturd. After 5 mins of our hour presentation, he cut us short and went on to be little us.... "anyone can code", " its just a website", ya know your company hired US to do that FOR you.

    In the end accenturd decided that our 30 year old system would be just fine with a few modifiactions.. Sure the old system needs a team of 60, vs the team of 6 our NEW system required. But thats of little consequence.

    $1 million - accenturd charge for simple modifications to a 30 year old system.

    ..VS..

    Free ground up system built by internal employees, who worked with the old system on a daily basis.

    The final descision was made by the person who originally spent the $1 million to accenturd. Seems he didnt want to admit he wasted $1 million for something we coulda gotten internally, for free.

    There is no reason code should be running 30 years. I can assure you the original developer never intended 30 year life cycle on his code.

    Old code still WORKED, that coder impresses me.
    Old code was way obsolete, managment depresses me.

    WrongWay

  94. Vaporware by Waffle+Iron · · Score: 1

    I don't know whether operational software can last that long, but vaporware can be very durable. Ada Lovelace wrote vaporware that is now almost 200 years old and still going strong.

  95. It's called "Longhorn" by Anonymous Coward · · Score: 0

    And it's really a 200-year development cycle.

  96. 200yrs?! by LondonLawyer · · Score: 1

    Come on people...

    Rewind 200yrs. Has society stayed the same? Have there maybe been one or two changes in the basic structure and function? New laws maybe? New organisational bodies?

    Not only does technology change but society does too, and faster by the decade.

    This story is just dumb.

  97. We already have that by aristus · · Score: 2, Funny

    217 years and counting.... of course, it's had 27 patches applied to it.

    --
    Sometimes seventeen/Syllables aren't enough to/Express a complete
  98. Applies particularly to medical software by midgley · · Score: 1

    It applies in two areas:-

    to the data (and means to handle it) of patient records, which need to be preserved workably for around 100 years + the age of reproduction of the next generation, which is near enough forever now.

    to the medical logic modules. If we keep starting again we are not going to accumulate the rules and templates that are needed, instead we will keep generating the same sets of the obvious ones, again and again.

    And paying for the smae thing agian an again.

    http://www.oshca.net/ Open Source Healthcare Alliance is quietly encouraging some of this.

    1. Re:Applies particularly to medical software by iggymanz · · Score: 1

      right now when I go to a new doctor or new insurance company we have to start from square one about what treatments/illnesses I've had in past 5 years, etc. Sure, there are legal requirements for the physical records to be kept, but who really knows where all of it is? no one, that's who. So right now we have essentially zero years of retention as far as I'm concerned, and talking of 50 years or more out seems a dream

  99. Simplicity is the key by Junks+Jerzey · · Score: 1

    Open Source may be open, but in my experience most of it is far, far too complex--and undocumented--to truly be considered open. Yes, closed source is usually complex, too. Some reasons for this complexity:

    1. Inappropriate language choice, usually using systems-level applications to write applications.

    2. Inexperienced programmers. When you're 18 you don't know much about software engineering. There's the fundamental issue that who wrote the software can be just is important as what it is supposed to do.

    3. Computing culture that reveres complexity.

  100. Software ages like wine by rve · · Score: 1

    The foundations of our mainframe ERP package are basically almost 30 years old, only having needed a recompile when moving from 32 bit CISC to 64 bit RISC hardware a couple of years ago. Only last year the last customer who was still using our code from the seventies finally upgraded to the latest version, finally ending our need to support it
    If it lasts 30 years, why not 200? :)

  101. Re:laserdisc by nusratt · · Score: 1

    "dedicated enthusiasts were desperately trying to assemble a working laserdisc system, in order to archive all the data collected just 20 years earlier."

    Send me their phone number. They can have my barely-used laserdisc player, if they agree to transcribe all my laserdiscs to Blu-Ray dual-layer DVD for me. ;-)

  102. Re:Many say "we need standards", but they are wron by argent · · Score: 1

    We don't need binary compatibility to keep a working interface standard alive. Consider UNIX. From Version 7 on, the core system calls of UNIX have not changed, and the differences between V6 and V7 are not major. Every major operating system in use today implements a superset of the V7 core API, including the arch-"anti-UNIX" Windows.

    This is proof by example that interfaces can remain stable long-term without a significant formal standards process or hypothetical "persistent object-oriented" operating systems. Expecting a binary API to remain current over 30+ years is naive, at best. Consider a binary API created in the mid '70s. What would it be facing now, with desktop and home computers containing more RAM than the most advanced OS of the time could have addressed? It would be the "time_t problem" multiplied over and over again throughout the ABI.

  103. It 'll never work. by nusratt · · Score: 1

    Would you be completely comfortable having a conversation in the colloquial English of 200 years ago?

    Now, imagine trying to understand the coder's source-code comments [*cough*] of 200 years ago. ;-)

  104. A difference in attitude by abb3w · · Score: 1

    The fundamental difference being bridges cost more to alter than software does.

    Which is directly correlated to the degree to which people care when one or the other comes crashing down.If a state, federal, or international root-cause investigating committee with subpoena powers was impanelled every time a piece of software crashed (like they often do for a bridge crashing down), Red Hat would be out of business in three weeks, Apple in two weeks, Sun in under a week, and Microsoft inside thirty-eight minutes.

    Dan Bricklin is proposing a class of software with a substantially different attitude. IE, software that the company maintaining it says: "As long as you pay this fixed-cost support contract, we will guaranty to support this exact software package for up to 200 years, will let you shift between and use your licenses on any and all hardware/OS combination no matter how different they may be from what you have now, will make sure it remains completely usuable by any C-average high school graduate after six hours training, will be liable in a civil suit if it should ever crash, and will help you migrate your data to any product from any comptetor you may decide to use instead... although we suggest you get matching terms." (Try asking your favorite software vendor for that and see how long it takes them to stop laughing.)

    With software requirements like that, the cost of making changes to the software becomes very comparable to changing the bridge. In fact, the bridge is probably a lot cheaper.

    [T]he capabilities of hardware allows more freedom in software, to which there is no correlation in bridges.

    Sure there is! Oh, wait, you care about whether your bridge won't come crashing down under use. Oops. Well, then....

    --
    //Information does not want to be free; it wants to breed.
  105. re: "but who will develop it?" by nusratt · · Score: 1

    "No company in the world will ever try and develop software that never needs (costly) upgrades and add-ons."

    And no open-source developer is going to care about having "street cred" which lasts for 200 years. ;-)

  106. The question that has to be asked.... by Anonymous Coward · · Score: 1, Insightful

    Why?

    Society changes, why do we want software from 200 years ago to work today.

    Hell Hardware changes so damned fast. Moore's law or not.

    Making something "just work" for a long time kinda kills inovation. It's when things "need" to be changes or upgraded that new ideas come along.

  107. A call for true "Software Engineering" by ErichTheRed · · Score: 2, Interesting

    The author describes a lot of what's wrong with software development right now. Being on the admin side of things, I've often had to deal with very buggy stuff custom-written by an internal IT department. Lots of key systems at large companies are still running on either the original hardware or upgraded versions of the platform. (There was an article a while back about VAX finally being killed by HP...that should tell you something.) Any improvements are hindered by the original framework (think screen-scraping apps, multiple file format translations, etc.)

    Civil engineers also run into this problem. For instance, take any large city whose highway system was built more than 50 years ago (NYC and Boston come to mind immediately.) No one ever dreamed that everyone would have their own car and stop using the trains/buses/ferries to commute to work. Therefore, overcapacity was never seen as a problem, and the rush hours just get longer every year as everyone tries to stagger their commutes. And since the roads are right next to buildings, in-place upgrades are very rare.

    I think that once the whole IT labor market shakes itself out, software engineering will become another branch of traditional engineering. Just like power plants, dams, airports, etc., we're now dependent on computers, and it's time to put some standards into place. Software needs to be built such that it's portable, easily understood by a similarly-trained engineer, and conducive to improvements. In other words, it needs to be able to outlive the coder.

  108. Marginally Possible by abb3w · · Score: 1

    Um. Welsh?

    Latin? True, there are corrupted, debased forms around, but there's still the real thing too.

    --
    //Information does not want to be free; it wants to breed.
  109. Name that long-lived system. by dswartz · · Score: 2, Interesting

    There is a software and hardware system that my company is designing to be maintainable until 2048. It has a long and well funded development cycle. We are developing version 6.0. Its funny though, the product has only ever been tested since we developed it over thirty years ago. And the design goal is to make it so well and in such quantity that it is never used. What is it?

    1. Re:Name that long-lived system. by ErichTheRed · · Score: 1

      Wild guess...a disaster-recovery hot site/hot system for a bank/stock exchange?

  110. That is some old language... by Anonymous Coward · · Score: 0

    Do you also program in COBOL?

  111. I wish you were right by mangu · · Score: 1

    I have an ink and paper collection of books and magazines going to 1855. Today, most of the cheaper works, like pulp magazines, start getting brittle at 25 years old. Magazines older than 50 take real care in reading, my dad's 1950's and 1940's Popular Sciences rip easily if handled the way one handles new magazines. Paper lasts longer than most software, but not much.

  112. Language standards by gr8_phk · · Score: 2, Informative
    "Language standards don't even last 200 years"

    Lisp is about 50.

  113. One evergreen I know by SpaghettiPattern · · Score: 1
    #include <stdio.h>
    main(){printf("Hello World!\n");}
    --

    I hadn't the slightest objection to his spending his time planning massacres for the bourgeoisie... (P.G. Wodehouse)
  114. Data Standards is the key. by Diabolical · · Score: 2, Insightful

    If the data formats are standardized it should not matter what kind of hardware or media is used, the data just migrates from one technical platform to another.

    I firmly believe that without this we will lose a significant part of our history. Current history is known because of durable "storage" like paper and fossiles, stone tablets or murals. The materials are all degrading but last longer then something digital.

    If we keep on trusting on technology we use right now we would be very lucky if anyone in the near future would be capable of finding anything significant which would be representable of our time. All our information is being recorded in digital format. This includes important things like presidential speeches, signed documents etc.

    This society is more and more dependent on electronic information. Alot of information isn't available in printing anymore let alone in a true durable format. If for some reason there will be some major catastrophy any survivors' offspring in the future will know nothing about this age and it's mistakes and would not learn a thing about it.

    We had the opportunity to study history because of the durability of it's information. Our information, however, doesn't even last a lifetime.

  115. Bricklin Is Clueless by Master+of+Transhuman · · Score: 2, Funny

    if he thinks ANY software could last a century or more. Or even SHOULD so last.

    HUMANS won't last through this century! How does he expect software to do so?

    --
    Richard Steven Hack - This sig is TOO GODDAMN SHORT TO DO ANYTHING USEFUL WITH! MORONS!
    1. Re:Bricklin Is Clueless by Anonymous Coward · · Score: 0

      if he thinks ANY software could last a century or more. Or even SHOULD so last.

      HUMANS won't last through this century! How does he expect software to do so?



      What does the life span of the average HUMAN have to do with the life span of SOFTWARE?

  116. Impossibility by g0bshiTe · · Score: 1

    How can you design a software that will last 200 years. Computing is making leaps and bounds annually. There is no feasable way that software written today will be useful in 20 years let alone 200. Think of the 5 1/4 floppy software. How many people here still use those programs? With CPU archetectures and memory optimizations, code written at anytime will be obsolete in a matter of years. Whose to say computers will continue to use the same hardware even? Techies have already made a switch from a single molecule, how is your code going to run on a CPU made up entirely of individual molecules as opposed to a printed ciruit?

    --
    I am Bennett Haselton! I am Bennett Haselton!
    1. Re:Impossibility by Detritus · · Score: 1
      You've never worked for the government have you? :-)

      I've seen many cases where computers were used for 20+ years. Why replace something that works? In many cases, an old computer that was designed to do a specific job still works better than a modern replacement built from standardized components.

      --
      Mea navis aericumbens anguillis abundat
  117. One word: MAME by NotQuiteReal · · Score: 1

    You don't need the hardware to last.

    --
    This issue is a bit more complicated than you think.
  118. This guy is my hero. It's because of the concept of the electronic spreadsheet (delayed-evaluation functional programming for the masses!) that computers are where they are in business nowadays. Anyone can write applications that used to take cobol'ers in the past.

    Spreadsheets have empowered more people to fulfill their vision of computing than any other tool in the industry's history.

  119. Very true by stealth.c · · Score: 1

    We need common, uencumbered data formats. XML might be key here.

    Anything simple and extensible will do, so any features slapped onto the future applications that deal with the data maintain backward compatibility almost forever. This shouldn't be that hard to accomplish.

    What's really holding it back is, once again, the paradigm that Microsoft pioneered. "We came up with the format, so if you want to read this at all--PAY UP!" This makes communication with the PRESENT difficult, much less pereserving information for the future.

    There is a lot of information flying around the Internet. Useful, factual information. But it's sometimes useless for research because the Internet is so ethereal. There's nothing consistent to reference. A news article will be there one week and gone the next. We need two things: First, we need software (or data, anyway) that will survive format changes into the 23rd century. Second, we need a reliable, academically recognized repository of information published on the Web.

  120. I Think Its A Wonderful Idea... by LifesABeach · · Score: 0

    Software is linear by nature. The Universe is Curvelinear. The only way that we could apply Dan Bricklin's idea is to go into the future that is going to exist, lets say in 200 years, and bring that software back. If only it weren't for that whole space-time-continuem thing getting the way...

    1. Re:I Think Its A Wonderful Idea... by Anonymous Coward · · Score: 0

      Let me guess. You were drunk when you posted this, right?

  121. Market influence by pjmidnight · · Score: 2, Interesting

    Software however written is capable of running for as long as it is viable to the market. It's not an issue of hardware or interdependency between software sources. It's that our market and general theory of technology is destructive/creative in nature. We rebuild software not because it isn't capable of running for centuries but because the users of that software have been emboldened to think creatively about new applications. Our clients could run the software they have for a long period of time. We build platforms that support 5-10 years of enhancement. But the market whether external or internal requires us to innovate rapidly. To create software that last centuries you would need to kill the creative process that is technology. The social process that defines us as humans.

  122. Platform Independence by skrysakj · · Score: 1

    Sounds to me like he would be a proponent of Java, because of the JVM and the ability to run on any hardware/OS. The storage for the data could be anything, the programming, platform independent, because the JVM can be made to run on an machine and therefore, be moved if/when necessary. However, that's nice for the front-end, but it would have to also apply to the back-end, where the data storage is. Client server architecture would throw a wrench into the situation, but it also may help it. Keeping an old legacy system in the back, maybe made of clusters to allow for expansion and easy replacement, would be ideal. And, the client end could be ugpraded as the years go on to allow for new technologies.

  123. 200 Years without a change? by Zardog · · Score: 2, Insightful

    Seems silly to me when you consider even human language has changed so much in the past 100-200 years. Just think what it will look like in 100+ years. If you take any novel or movie today, aren't they just rewritten rehashes of plots that have existed for the past 1000+ years? Important software, like important ideas will be maintained, migrated, changed, morphed and improved upon. The really bad ideas will hopefully decay out of existence. Really, who the &$^% cares what was in our Oracle DB 100 years from now?

  124. Step back... by mratitude · · Score: 1

    Some of the feedback I'm reading brought to mind that many are too close to the issue. Step back and think about a situation where the problem becomes how can this function and the data used or the data generated be useful today and 200 years from now?

    Unless you're talking about a fundamental change in human interaction and use of technology, it isn't out of the question that data on a [say] spreadsheet today might have a use 200 years from now. The data is what is important, not the file format or the storage media.

    Can the circumstance be engineered that would allow a historian access to that data? Look at the scope of the issue - file format, storage consistency, content validation, and so on; But, think in terms of 200 years from today.

    --


    Mod me troll, if you must, I can't help it.
  125. You'd be American then. We do it ... differently by midgley · · Score: 1

    In the UK we keep a cradle to grave medical record, until relatively recently in an A5 sized brown cardboard packet named after Lloyd-George. "Socialised medicine" (except he was a Liberal, but never mind) However, wherever the record is, and however it is formatted, the people _holding_ it have a need to keep it usable for as long as I said for use, or a shorter time but still often > 25 years for leagla and other uses. Are you not in the midst of a programme to connect your medical records even now?

  126. Re:Many say "we need standards", but they are wron by master_p · · Score: 1

    What you are saying is also valid if the standard changes. If 'time_t' goes from 32 to 64 bits, then all software needs recompilation.

    But if there was an interface, let's say a class 'Time' where it was specified and known across all systems, all we would have to do is change the internals of this class from 32 to 64 bits.

    (and if the system consisted from persistent objects, instead of monolithic pieces of code, we would just have to change all the 'Time' instances in all applications, automatically, using a script).

    Interfaces are what matters, not standards.

  127. From a programmer. by Gordon+Bennett · · Score: 3, Insightful

    I take a bow to the report and the author.
    Being a computer programmer, I wouldn't call myself a 'Software Engineer' due to the appalling state of writing software in its current state. There has been for quite some time this in-bred mentality of Versions, that nothing is ever finished, mostly driven by commercial greed - despite the huge advances in computer power, our OS'es and their applications are still struggling to keep up with an Amiga, for chrissake.
    Moreover, it can have lethal consequences; for example, radiation treatment, or airplane control. Deaths ensued. "Sorry that your college outing ended in all their deaths, we were running 1.1.3 of the aileron system."
    Sure, even mechanical engineers get it wrong, but their main onus is to make something that will work, not, as in the software case, 'get it out now, fix it later'.
    So, if someone says they are a 'Software Engineer', ask them, what is it they do that merits the 'Engineer' tag - would they build a bridge that lasts? Nope.

  128. Language of choice by pyrrhonist · · Score: 1

    The language of choice for the 200 year old software project will be COBOL. Hey, if you want your software to last, you obviously need to use a language that, despite the best efforts of trained professionals everywhere, just won't die.

    --
    Show me on the doll where his noodly appendage touched you.
  129. Exactly so by Tired+and+Emotional · · Score: 1
    Exactly correct.

    In 25 years (or 50 in England) when the government archives are released, I wonder how many will be readable. This will be a serious problem for historians. I expect it already is a problem but it will get much worse - back in 1979 data formats were still fairly trivial, and paper documents were still pervasive, but complexity has increased immensely since and many documents are electronic only.

    What we need are Open Document Standards that the government is required by law to use for all data, whether made public or not, so as to protect the data for the future.

    An update to the freedom of information act (in the US) would seem to be one way to achieve this and I believe the GAO has the ability to enforce this and handle the neccesary waiver process in a realistic way.

    And while open source doc formats does not imply use of open source software its clear that open source has an important role to play here by providing a means of verification. Its a compelling case where there is a clear societal need for open source software.

    --
    Squirrel!
  130. Software never *needs* to be replaced. by Zaphod-AVA · · Score: 1

    Software only gets changed because our needs, or our perceptions change. If a piece of software was written to perform a task, it can still do that task any number of years from now.

    If you wanted to write a document, you could do it in an ancient word processor on one of the earliest home computers. Of course, you would percieve it as slow, and missing some key features, like spell checking, and WYSIWYG editing etc.

    Simple things work longer. Keep it simple.

    -Z

  131. Re:Many say "we need standards", but they are wron by argent · · Score: 1

    If 'time_t' goes from 32 to 64 bits, then all software needs recompilation.

    I would describe that as "if time_t goes from 32 to 64 bits, then all you need to do is recompile." It's all a matter of how you look at it.

    But if there was an interface [...] all we would have to do is change the internals of this class from 32 to 64 bits.

    Changing the internals of the object on the other side of the interface isn't the problem that has to be solved. Changing the interface is where the problem comes in.

    For example, when the internal representation of file offsets went from 32 to 64 bits in FreeBSD, dumplicating the external interface so old binaries would run was trivial... I was able to provide a compatible system call so you could run old Netscape binaries easily... the problem came when you really needed more than 32 bits in an offset, you *still* had to recompile all the code that operated on values derived from an offset so they would become 64-bit clean. There were two different competing sets of patches for Amanda for a while, one that used floating point for file offsets and one that used 64-bit integers (long or long long depending on the model).

    The only time you can get away with just changing the internals is when ALL operations on the object *and* on values derived from calculations on the object (such as a time difference).

    Standardised interfaces are what matter, not standards themselves and not clever tools that try to hide the internals as the world changes.

  132. The *Short term software* phenomena..... by MagicBox · · Score: 1

    ...happens for two reasons in my opinion

    1) The way we do business is dynamic. It can have unpredictable changes at any point in time, thus requiring a dynamically *adaptable* infrastructure
    2) We do not yet understand software to the point where it can be *adaptable* to the changes which are required in 1).

    I've said it in the past, but I'll say it again: ... software can only be as advanced as we are, so, many times I look at the advancement of the human brain based on the software we write. And when it comes to advancements in software I very often hear the phrase: "....we've only discovered the tip of the iceberg...", which makes me think: is that telling us somthing about the advancement of us as humans?

    It'll be another few decades before we can write *chameleon* like software that will adapt to the ever changing environment without the need for it to be rewritten from scratch or ditched and replaced by other software

    A more important question is: Do we want software that lasts 200 years or are we willing to accept it? When I think of a break though idea in technology (such as building software that will last centuries) and then I think of the big companies which profit dearly from the term *software lifecycle* (which is so short of course), I think of Oil companies and Electical powered cars: until there's $$$$$$$$$$$$$$$$$$ to be made in Oil the later will not suceed (unless the later eventually proves to be more profitable)

    It is said but true, that just like the human brain has a sense to invent, (unfortunately) it also has a sense for greed. And usually people will lean towards greed and sometimes *forget* to invent

    --

    The phaomnneil pweor of the hmuan mnid. Fcuknig amzanig eh!
  133. Right idea, wrong time. by AnotherBlackHat · · Score: 4, Insightful

    We build disposable software, because computers are still disposable.
    Not because they can't be built to last, but because they quickly become obsolete.

    If Moore's law continues to hold for 40 years, computers will be over a million times more powerful than they are now, the cheapest drive you could buy would hold more than a petabyte, and we'll be saying things like "I remember when a thousand bucks for a terabyte of ram seemed like a good deal, and now I can't even buy a ram stick that small".

    Once the breakneck pace of expansion stops (or at least slows to a reasonable rate) then we should look at making software that lasts.

    Video compression technology is big business today, but it's probably going to seem like a silly idea in the future.

    We don't need buggy whips that last 200 years.

    -- less is better.

  134. All about the standards. by Spaceman40 · · Score: 2, Insightful

    You know why we can drive the latest vehicle over an old bridge, or fill a new high-tech water bottle from an old well's pump? It's because the way water works has stayed the same - it's a liquid with certain wonderful properties - and the way bridges "interface" with land vehicles has stayed the same.

    When we have constantly changing standards, often incompatible with earlier ones, software that works wonderfully with the earlier one will die. This isn't the software's fault any more than it would be the pump manufacturers fault if H2O's density suddenly rose (or viscosity or something).

    It's all about the standards.

    --
    I [may] disapprove of what you say, but I will defend to the death your right to say it.
  135. Virtual Machine by Hatta · · Score: 1

    Who cares about the hardware, just run it in a virtual machine and be done with it. I have hundreds of game roms, which were never designed to be portable and for which the hardware is becoming increasingly difficult to find. Still, they run great under any number of emulators. I'd be willing to be they'd run just as well 200 years after publication as they do 20 years after publication. If I was to live that long, of course.

    --
    Give me Classic Slashdot or give me death!
  136. OT - recurring costs? by anomaly · · Score: 2

    I used to subscribe to this way of thinking - after all "I'll always have a car payment" and
    "As long as I can make the minimum payment, it doesn't matter what my credit card balance is."

    This was foolish youth talking, and 'buy now, pay later' immediate gratification marketing that led me for years.

    I had a wise aunt and uncle who advised me that I could spend 10% more than I earned, or 10% less. The first way I'd sweat payments for the rest of my life, the second way I'd always have money in my pocket. They were right!

    Another great piece of advice from them was "buy a car you can pay off in 3 years. Keep it 6. After the loan is paid off, pay a savings account the same car payment. Then go pay cash for your replacement car. Keep paying yourself, and you'll never need to borrow money for a car loan again." If the next car costs more than the first, keep the first until the savings account has enough to cover the next car.

    This REALLY works! I paid cash for my last two cars. I no longer buy what I don't have cash for, and I'm approaching paying off my house, too. Not in the next year or two, but long before 30 years have passed.

    A side benefit is that I think much more about whether I really want to spend that extra money on options or gadgets when I'm taking greenbacks out of my wallet!

    It is possible to live without debt, even in the US.

    --
    But Herr Heisenberg, how does the electron know when I'm looking?
  137. No, 2 letters by Anonymous Coward · · Score: 0

    Power users use ed.

  138. Software? What about storage. by joNDoty · · Score: 1

    Call it wishful thinking, but when I clicked on the article I was under the impression it would comment on the importance of software lasting 200 years on a DIGITAL MEDIUM. I mean, that would be wonderful. Some digital source that won't scratch, break, corrode, or otherwise become corrupted until hundreds of years have passed.

    But alas, this article is concerned with software as a whole being built to last. Sure, that's a nice idea and all. But really the importance of long-standing software applications varies from application to application.

    I find it much more annoying that the discs I put my software on will fail after a few years!

  139. mod parent up by handy_vandal · · Score: 1

    I wouldn't trust a long Now that can't be cast into an int Now.

    +1 Humorous

    -kgj

    --
    -kgj
  140. The Y2K problem by uberdave · · Score: 1

    The Y2K problem wasn't about "old mainframes from the 60's". It was about a meme that people have, a meme that programmers didn't know, or didn't care that they had, and that you still have. Years are FOUR digits long, not two, as the meme claims. What you meant to say is "old mainframes from the 1960's". The Y2K problem was not a hardware problem, it was/is a psychological problem.

  141. The Clock of the Long Now by garyebickford · · Score: 3, Informative

    The Clock of the Long Now is a clock designed Danny Hillis to last 10,000 years with maintenance using only Bronze Age technology. Ticking will be avoided. The century hand will advance every 100 years, and the cuckoo will come out on the millennium. The first 9 foot tall prototype was built in time for "New Year's Eve 01999" (note extra digit, and the second is under construction now.

    One might argue that the clock incorporates firmware, in the sense that there will be relatively complex algorithms to maintain accuracy by comparing different timing signals, and simpler algorithms to decide when to move the century hand, or cuckoo the millennium. It's not a stored-program system though, so it doesn't meet the criteria that the Babbage engines meet. Nevertheless, this is a good example of hardware designed realistically to operate continuously for 10 millennia. For this project Hillis invented a mechanical serial-bit-adder, a mechanical digital logic element, which evidently lacks the "wearing problem" of a standard clock mechanism. The clock knows about leap years and such.

    The website has images of the prototypes and the design, but I'm on dialup so I didn't look at them. The Principles Page discusses some of the problems to be overcome. For example, power source - right now Hillis is tending toward a temperature-based power source - and maintaining accuracy, which may be based on a phase locked loop using a mechanical oscillator and solar alignment. There are ways to support the foundation, such as buying Brand's Book, or Eno's tunes

    IMHO he might want to use three or four other checks as well. An extension of phase locking can work well with multiple nodes in a network, e.g., the multiple nodes in the human heart rhythm controller. Such networks rapidly converge to a common cycle, and this would provide additional reliability. The NTP network time algorithm is based on multiple sources of the same type, but analogous in concept. Just for fun, it'd be great if the clock also included a display of the 64-bit Unix time, in binary!

    This Wired article was written by Danny Hillis about his original idea. The Long Now Website has other interesting links about long term stuff. Hillis has some interesting friends, like Brian Eno who named "The Clock of the Long Now", and Stewart Brand. Other links: Intro to Brand talk, The actual talk. Buy the book, or the Eno CD "January 07003" to support the foundation.

    --
    It's easier to be a result of the past, but more fun to be a cause of the future! http://www.spacefinancegroup.com/
  142. What lasts two centuries? by Spazmania · · Score: 4, Insightful

    Many things in society are long-term

    Not really true.

    Those historical buildings? They've been gutted and rebuilt from the inside out at least once during the past 50 years for the installation central air conditioning and elevators for the handicapped. And they're the exception to the rule. Few commercial buildings go more than 15 years without major renovation and few residential buildings make it more than 30.

    Roads? Sure, US Route 1 does still travel approximately the same route but its repaved frequently, expanded and changed frequently, and its been supplanted in its original purpose as the major east-coast north-south route by Interstate 95. And even Route 1 has existed for less than a century. Before automobiles at the begining of the 20th century, there was no need for anything like it. Before automobiles, who could conceive of a multilane asphalt highway that needed to sustain speeds over 500 miles per day? How could yesteryear's engineers possibly plan for it?

    The US constitution, the foundation of our law, has seen two major overhauls in the past two centuries: first due to the civil war and again because of the great depression. Even where parts of the text remain the same, their meanings have been drastically altered by the courts. Free speech has become freedom of expression. The right to bear arms somehow doesn't exist at all inside Washington DC except for police. The states have gone from being the primary seats of governance to being almost entirely subsidiary to the federal government. We're living under an almost totally different government than what saw the dawn of the 19th century.

    Even the Catholic Church publishes a new catechism each year, a book which defines the religion. You'd think during two millennia they'd figure it out once and for all, yet it continues to evolve and change.

    Few things last, either in their original purpose or their original design. They're continuously rebuilt, redesigned and reinvented... Even things like roads, buildings and governments for which our design experience goes back thousands of years.

    Our software experience goes back 40 years, if you can call what we did 40 years ago software by any current definition. Why should we build it to last longer than than the roads and buildings, and indeed longer than software in any form has existed?

    I'm sorry, but I'm not smart enough to successfully plan ahead two centuries and neither are you.

    --
    Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
    1. Re:What lasts two centuries? by frank_adrian314159 · · Score: 1
      I'm sorry, but I'm not smart enough to successfully plan ahead two centuries and neither are you.

      That's not the point. What we should be smart enough to do is to:

      • Design a system that will be able to be maintained ten years into the future that doesn't require to be ripped up and redone ab initio every five years
      • Build technical support structures to allow this type of maintenance to be done
      • Build public and private systems for this support
      You don't have to be that smart to do this - just willing to forego shiny things to keep the plumbing done up right and a little bit foresightful.
      --
      That is all.
  143. Why nest multiple layers of emulators? by Anonymous Coward · · Score: 0

    Rather than nesting all those emulators, wouldn't it have been more straightforward to write a new LEO emulator for the ICL 2900?

  144. Won't other options be available in even 50 years? by Anonymous Coward · · Score: 0
    Overengineer software for 200 years today? When something better will certainly come along within a much shorter time frame?

    If in 50 years we have significant AI and if indeed at that time we see a clear need 200-year software, then let the AIs write it: at least they'll have a better idea of how to do it.

    The utility of "200 years" as a software lifetime is unsupported by the article.

    On a broader note, who could possibly predict what we'll need in any aspect of life a mere 20 years in the future?

  145. Bible inconsistencies by ka9dgx · · Score: 1
    The Bible is NOT consistent across translations, editions, etc... its all based on interpretations of interpretations.... the Declaration of Independence might be a better choice for a long term stable source to compare copies against.

    Of course if you did that, there's the danger of noticing that George W. seems to be committing the same sins as George III...

  146. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  147. Re:Many say "we need standards", but they are wron by master_p · · Score: 1

    Maybe we agree after all. That's what I've been saying all along: if interfaces are standardized, the chance of having trouble in changing software would be minimized.

    You can't argue though that if we had a persistent object oriented system, our life would be much easier. You said that we don't need such a system, but you did not comment on my example (if 'time_t' was a class).

    Furthermore, it is important to realize the difference between 'standard' and 'interface'. A standard only declares 'what', but an interface declares 'what' and 'how' simultaneously. That's why it is not enough to have standards (because data are useless without behaviour).

    P.S. you may see that all you have to do is just recompile, and certainly that sounds easy, but in reality, it is translated to millions of dollars lost. With a persistent object oriented system, such loss would be a thing of the past.

  148. Self-modifying? by generationxyu · · Score: 2, Interesting

    ...not necessarily self-modifying, but at least self-upgrading. For instance, imagine a system that is part of the "societal infrastructure." This system is running a database... we'll assume for the moment that it's MySQL. MySQL releases a new version. The database (either automatically or at the DBA's request) patches the running binary. There is a short delay of lag while the caches are repopulated, and then the new version is running. Perhaps a "checkChangelog()" function is called, reading a machine-readable changelog to determine if there's any changes to input/output/config files that it needs to know about... no downtime, no kill -HUP, nothing.

    --
    I mod down pyramid schemes in sigs.
  149. Re:Many say "we need standards", but they are wron by argent · · Score: 1

    If time_t was a class, you would still have to define the interface to that class in terms of other classes (date to time, time to date, difference between times, and so on), and pretty soon you realise that time_t is more like one of those interfaces *to* the OS time class, and the object you're reaching for is something like an opaque "struct timespec".

    The difference between a standard and an interface is like the difference between a streetmap and a street. There are lots of kinds of standards, good and bad, just as there are lots of kinds of maps... and a good standard defining an interface *does* include 'what' and 'how' and also 'why', where those are relevant to the interface.

    With a persistent object oriented system the recompilation is deferred, and the cost when it finally becomes necessary is multiplied many times.

    And recompilation can be made as invisible to the user as you like. Take the FreeBSD ports system, for example. It's noisy, yu see compiles going on, but all that chattiness can be hidden behind a GUI and you'll have no idea that it's downloaded new versions of certain packages, recompiled them for the new API, and installed them.

    I hink the distinction you're making between are "standard" and an "interface" is superficial, and I think the "persistent object oriented system" is just an implementation detail... and one that's not nearly as capable as you think. Eventually one of the classes exposed in the interface WILL have an incompatible change, so you WILL need to rebuild the code around it anyway, so why not get used to it?

  150. My HP11C calculator by klui · · Score: 0

    I think there's a good chance my HP11C scientific calculator's software will last for decades/centuries. Closed source, too.

  151. Fix the data problem first by wcrowe · · Score: 3, Insightful

    Right now, somewhere, there is a government agency putting important data into long term storage, which was created in Microsoft Word. In a few years that data may be unreadable, not because the medium has deteriorated, but because the software that created it will have evolved or no longer exist.

    This is just one example of how proprietary formats are bad for storing important data, long term. This problem was noted years ago when it was discovered that VA tapes, tucked away in underground facilities back in the 60's, could no longer be read because the software that created them is gone.

    An ideal data scheme would include information which describes the data being stored along with the data itself. An example is XML. This concept needs to be pushed.

    It is more likely that we can solve the problem of proprietary data storage schemes long before we can implement 200 year software.

    --
    Proverbs 21:19
    1. Re:Fix the data problem first by MacDaffy · · Score: 1
      Right now, somewhere, there is a government agency putting important data into long term storage, which was created in Microsoft Word. In a few years that data may be unreadable, not because the medium has deteriorated, but because the software that created it will have evolved or no longer exist.
      I have a copy of Microsoft Word 5.1a created on November 15th, 1992 that still runs under Mac OS X 10.3.4. I imagine there'll be a day when it doesn't run, but it's still more useful than most of the dreck they put out now. If I'm around in 200 years, I'll try opening that file you mentioned.
  152. What about millennia? by Anonymous Coward · · Score: 0

    Software for hundreds of years is a good idea, but it doesn't go far enough. Reusable software in its current stage is paid of lot of lip service but I still don't think it has reached the point where it needs to be. Perhaps the greatest paradigm shift in the previous few years has been that symantics can be captured without specifying a preferred syntax (intermediate languages and virtual machines). These technologies are good, but they clearly don't yet go far enough (witness the poor support for functional programming languages and the attested "fake" feel of the .NET implementation of C). The point I am trying to make is that the future of software lies in semantics, not languages. Once the semantics are sufficiently rich, any concievable language syntax can be supported.

    I have had dreams of software systems being reused thousands of years into the future, including pieces of software that "just work" and were written so long ago that people don't know (or have to know) how they work. This is the point at which technology begins to be indistinguishable from magic.

  153. web stuff by glimmy · · Score: 1

    what about web based software like yahoo's buisness software. its not acually fully replaced. Its just updated.

  154. Why? Well... by Synonymous+Yellowbel · · Score: 1
    ... because your school, or your college, or your boss, or your government upgrades their version and you need to read/write the new file format.

    steve

  155. Re:What lasts two centuries? [OT] by Anonymous Coward · · Score: 0
    The right to bear arms somehow doesn't exist at all inside Washington DC except for police.

    Or, say some, alleged "rights for [individuals] to bear arms", has been invented from ambiguous original text which literally just seems to imply that states are allowed to have armies, and not directly relate to individuals rights.

    I think this closely relates to your points about actual "implementation" of constitution (interpretations) changing over time; there are many ways to read the same passages, in different contexts.

  156. The parent post ought to be seen by Anonymous Coward · · Score: 0

    I'm a longtime Linux user; don't touch Windows; but Office is a quality product for those who are willing to put over the money.

  157. Data depends on interpretation by Anonymous Coward · · Score: 0

    Are Word documents data or or not?
    For instance, there are things that don't display depending on whether the program is Word or Open Office.

    Are unicode text data or not? Display of the text really depends on the character sets. In 200 years time, character sets can change.

  158. We already have that - it's inside your skull! by csoto · · Score: 0

    You just need to program it well.

    Thinking Machines are evil. Human potential is infinite.

    --
    There exists no way of exchanging information without making judgments. --Bene Gesserit Axiom
  159. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  160. Re:What lasts two centuries? [OT] by Spazmania · · Score: 1

    say some, alleged "rights for [individuals] to bear arms", has been invented from ambiguous original text

    Well, I'm going to call those folks ignorant. Let me tell you why.

    The fellas in the first congress wrote a great deal about their experiences and about the reasoning they used when constructing the bill of rights. There's no need to invent meaning in any of it; all you have to do is read the rest of what they wrote.

    The problem is that each of those individuals had a different take on what the second amendment was supposed to mean. At least one saw it as an individual right necessary to keep the government from turning oppressive. To literally make it possible for the people to get out their guns, band together and defend themselves from the U.S. Army if the President turned into a King. Others saw it more as a township's right (where township generally meant a grouping of no more than a few tens of thousands of people) to maintain its own police force instead of having military peacekeepers sent in from afar.

    Each of the common interpretations of the second amendment is well supported by the historical documents. Each is also thoroughly refuted by the same.

    --
    Moderating "-1, Disagree" is simple censorship. Have the guts to post your opinion.
  161. Re:Many say "we need standards", but they are wron by master_p · · Score: 1

    f time_t was a class, you would still have to define the interface to that class in terms of other classes (date to time, time to date, difference between times, and so on), and pretty soon you realise that time_t is more like one of those interfaces *to* the OS time class, and the object you're reaching for is something like an opaque "struct timespec".

    That's if you design different Date and Time classes. And even if you do, you would just have to change these two classes. You wouldn't have to change applications.

    and a good standard defining an interface *does* include 'what' and 'how' and also 'why'

    That's what I said. But don't forget that many posters, in the discussion we are commenting, said that as long as data formats are open, there is no problem. But having open data formats (for example Word) is not enough, and this is what I wanted to point out.

    With a persistent object oriented system the recompilation is deferred, and the cost when it finally becomes necessary is multiplied many times.

    No, it does not. You are wrong in this. The cost of computer power may be increased, but the cost of personnel being involved is tremendously decreased. And it is the human cost that it is the problem today; it is much higher than computing power.

    With a deferred compilation system you would also have the benefit of applying the best optimizations possible, according to each specific type of machine that the app runs on. And you would not have to recompile all the apps, just the parts that changed.

    And recompilation can be made as invisible to the user as you like.

    I am in favor of totally hidden compilation. Just write the code and run it. The system should be responsible for caching the compilation result.

    I think the distinction you're making between are "standard" and an "interface" is superficial

    and I think the "persistent object oriented system" is just an implementation detail... and one that's not nearly as capable as you think.

    Not at all. In such a system, all you have to do is declare members of a class as persistent. You wouldn't have to worry about serialization, since the system would take care of it, knowing what is to be serialized or not.

    Most propably you have not understand the benefits of it. With such a system, application development will take the 1/10 of the resources it takes now, and it will effectively unlock the door to distributed computing and paperless office, making the problems we have now a thing of the past. I can give you numerous examples where this applies.

    Eventually one of the classes exposed in the interface WILL have an incompatible change, so you WILL need to rebuild the code around it anyway, so why not get used to it?

    There will not be such a problem, since classes can be versioned. The system will differentiate between classes of the same name and library by versioning the classes. An application that works with class Foo v1.0 will keep working with that class, and will only use Foo v2.0 if the system is updated or if the application always requests the latest version.

    so why not get used to it?

    I can not get used to inneffective solutions, since clearly a better solution exists.

  162. Re:Many say "we need standards", but they are wron by argent · · Score: 1

    That's if you design different Date and Time classes.

    No, that's if the requirements for the classes change. As they do... larger disks, faster processors needing more precise clocks, longer-lasting software needing more seconds. Older software will need to adjust to the changes just as much as newer classes.

    Anwhere you can get away with versioned classes, you can get away with versioned system calls. That's basically how we got applications like Netscape for FreeBSD 1.x running under FreeBSD 2.x: the new system call had the same name but a different call number, so if you recompiled you got the new interface.

    What you're talking about here is defining standards that allow for upgrades. If you have those, it's not nearly as important how you implement them.

    But having open data formats (for example Word) is not enough

    I'm not sure what you're getting at here. Word isn't an open data format. If anything, Word is a perfect example of the problems your object-oriented persistent data store can cause, because that's pretty close to what a Word document is: a series of serialised COM objects. Because the format is defined in terms of non-human-readable data streams that can only be properly used by the genetic descendents of the software that serialised it, it's opaque and unreadable to everything else... even older versions of the same software.

    On the other hand, I can take a 30 year old RUNOFF or NROFF or TEX document, or even documents marked up in formats that aren't any longer available, and still use it.

  163. Answer by dswartz · · Score: 1

    Trident II (D5) MK6 Guidance System. http://gw5.draper.com:573/business/strategic/strat egic.php

  164. Nope, just read the first line and smiled. by LifesABeach · · Score: 0


    "Dan Bricklin, author of VisiCalc, has written a great new essay identifying a need for software that needs to last for decades or even centuries without replacement."

    My first reaction to your comment is, "Would you use VisiCalc today?". (My grin just got bigger)

    There's a twist of grim irony in this clique, "Once Software is made, that Software is obsolete."

    For example, lets look at what is estimated as 80% or more of all software 'usage' today. Mainly Word Processing, Spread Sheets, Data Bases, Presentations, and Graphics. You would think that this is a type of 'hard' ceiling for this kind of software development.

    You'd be wrong, because now is begining to creep into these standard software packages the notion of 'XML', which for the great unwashed is the beginings of 'Data Readability Unification', (DRU). You won't find DRU written anywhere, even today; but XML is growing VERY rapidly.

    Which brings me to my drunken thesis, "if something like XML didn't exist 15 years ago, how is software made then going to be able to handle it now?" Well, the solution is now painfully clear. Go forward in time. Get the specs for then. Come back. Write the program. Get paid.

    Q.E.D.

  165. Re:Many say "we need standards", but they are wron by master_p · · Score: 1

    No, that's if the requirements for the classes change.

    That's what I am talking about.

    As they do... larger disks, faster processors needing more precise clocks, longer-lasting software needing more seconds. Older software will need to adjust to the changes just as much as newer classes.

    No, it will not. It all time and date operations were encapsulated in a time class, only the time class instance would need to be replaced. Applications would not need to be changed.

    Anwhere you can get away with versioned classes, you can get away with versioned system calls. That's basically how we got applications like Netscape for FreeBSD 1.x running under FreeBSD 2.x: the new system call had the same name but a different call number, so if you recompiled you got the new interface.

    It's not the same. With plain functions, you loose encapsulation, because data structures are exposed to the programmer...except if the data structures are handles only.

    What you're talking about here is defining standards that allow for upgrades. If you have those, it's not nearly as important how you implement them.

    Not only that. I also talk about defining the 'how', as well as the 'what'. I am talking about object orientation.

    Word isn't an open data format.

    It is not, but most bring it up as an example of a format that should be opened.

    If anything, Word is a perfect example of the problems your object-oriented persistent data store can cause, because that's pretty close to what a Word document is: a series of serialised COM objects. Because the format is defined in terms of non-human-readable data streams that can only be properly used by the genetic descendents of the software that serialised it, it's opaque and unreadable to everything else... even older versions of the same software

    The problem is not my object-oriented persistent data store, the problem is that the COM mechanism is proprietary and you can't run it on Unix. If you could take the class (or classes) that represents a Word document and could use it on Unix, would there be a problem? The answer is no.

    The problem is also not that it is in binary format. The problem is that there is no global definition of the class and its representation as code that reads the document.

    On the other hand, I can take a 30 year old RUNOFF or NROFF or TEX document, or even documents marked up in formats that aren't any longer available, and still use it.

    But you need to write the code to use the document you mention. On the other hand, with my system, all I would do is import the relevant class, even if it was written 30 years ago.

  166. Re:Many say "we need standards", but they are wron by argent · · Score: 1

    It all time and date operations were encapsulated in a time class, only the time class instance would need to be replaced. Applications would not need to be changed.

    That's only true if the time class NEVER interacts with any other classes or objects, if it's isolated off in the corner of the world, if there's never any need to deal with time except through the time class. The analogous mechanisms exist in other environments, you know... you can deal with time as an opaque object using well defined routines, but you still have to be able, for example, to take a difference between two times and use it in a calculation and to do that you need to know how big it is, what its granularity is, and so on.

    No class is an island.

    If you could take the class (or classes) that represents a Word document and could use it on Unix, would there be a problem?

    Over decades? If there was no standard defining the class and interfaces? Absolutely... not only is it vanishingly unlikely that I'd be able to find a compatible instance of the class after 30 years, but the chance of the software ecosystem the class depended on remaining stable is vanishingly small.

    Plus, you'd be locked into 30 year old programming languages and object models. Think of what that means today: Fortran IV, Simula, Pascal, Pre-Version-6 C (no long data type), no C++, Java, Smalltalk, Modula-2, Standard Lisp, ...

    But you need to write the code to use the document you mention.

    I do? Well, for Runoff maybe, but I happen to know that's been done already. Groff handles nroff just fine. TeX is still around, in multiple implementations in multiple languages.

  167. Re:Right idea, wrong time. - Not really by os2fan · · Score: 1
    Consider, for a moment, paper forms. They serve their purpose well. That is one can create a form and use it.

    Consider then the model where one makes an XML standard form. Instead of using bits of paper, one has an XML file, suitably filed &c, with part of the crc hidden with the digital signature.

    Regardless of the systems in place, the core of the business is not stored in structured program-specific data, but rather forms. One can easily start upgrading the system, or even run several systems, that are none the less capable of using the same forms.

    It then would not really matter, for example, if this office used Linux 2060, and that office used OS/4, and some other office is stuck with some legacy operating system such as Longhorn: everyone's talking together in standard defined XML forms, and acting accordingly.

    That is, one had basically moved the data to a separate entity to the underlying programs.

    --
    OS/2 - because choice is a terrible thing to waste.
  168. Re:Right idea, wrong time - yes really. by AnotherBlackHat · · Score: 1

    Consider, for a moment, paper forms.


    Can you really confidently say that we will be using paper 200 years from now, much less paper forms?

    Maybe we'll decide it's better to have computers track all the information for us.
    Or maybe not.
    The point is, designing for the future implies that you can predict that future with some reasonable accuracy.

    Predicting what tomorrow will be like isn't hard.
    Predict 10 years ahead we can still be fairly confident.
    But 200 years?
    For all we know, computers might be programming themselves by then.

    -- less is better.
  169. Re:Right idea, wrong time - yes really. by os2fan · · Score: 1
    The teletype has been around over 100 years, and is rarely used now. But the idiom of having commands and output is very much alive, because it is something that people can relate to. You don't need a teletype to use a teletype interface.

    Likewise, whatever happens to paper in the next 200 years, does not change the effectiveness of creating a form of authority and request. The point was, that instead of storing data in specific formats, one should start considering a global format for forms, etc, and have programs talk in that way.

    The effect of this is that forms can be shunted around the electrical office in the same way that paper forms are now: the form would grow as different things are done to it, and then ultimately stored on different media, such as microfiche, or some other durable medium.

    One of the side effects is to reduce the interdependence of programs: the payroll forms, for example could be processed on an OS/2 box, and the accounts sent to a Linux box for further processing. Changing the accounting program would then be easy, since it would be a plug-in system.

    --
    OS/2 - because choice is a terrible thing to waste.
  170. Software as art by sydbarrett74 · · Score: 1

    The gist is that software development is still in the craft stage -- it has not progressed to the engineering discipline that, say, civil construction reached with the greeks four-thousand years ago....

    --
    'He who has to break a thing to find out what it is, has left the path of wisdom.' -- Gandalf to Saruman