I was involved in developing the Compaq Crash Analysis Tool (CCAT) as a contract programming gig. The core was written in Java while the expert system rules were written in CLIPS. The backbone was written in Visual Basic, of all things. It worked.
CCAT was developed to run across multiple operating systems: Windows NT, NT Alpha, Tru64 Unix, and VMS AXP. One of the problems was that we had to work across the platforms with a common code base as Java kept changing every month or two. We had to baseline on a common Java version for all the platforms (VMX AXP always lagged the others). It seemed that every "new, improved" version of Java changed the language, often in ways that broke our code. The most annoying thing was Sun's habit of "depricating" (deleting) language constructs that we'd used so we'd have to change our code.
We also found that we had to extensively test our code on every target platform. The NT and Unix code ran without modification, but the VMS AXP code required some special handling due to the OS directory structure and use interface issues.
That said, I liked Java much more than C++ because it was a cleaner implementation. C++ allows people to mix in too much procedural code similar to how so many programmers used FORTRAN programming habits in other languages. Java is being used for some very big projects that I'm aware of like replacing the software that runs NORAD operations in Cheyenne Mountain. When you consider the software maintenance issues of an operation the size of NORAD, it actually makes long term sense.
I'm not programming anymore, so I haven't tried C#. I've heard very good things about it, but the lack of portability to non-Windows platforms hurts it for some uses. For the last 3 years, I've been using business process reengineering using object-oriented techniques to help the military implement space situation awareness. That's enough of a challenge. If you don't have a headache when leaving one of our architecture sessions, you weren't paying attention.
Space/Science » in reply to "Write once, run anywhere"
More like, "Write once, test everywhere"
The whole thread (45 posts)
- a comment on the go for shuttle launch
- re: a comment on the go for shuttle launch
- re: a comment on the go for shuttle launch
- my view as posted on msnbc.com
- Could you imagine what the doctors would say if you had a backup heart?
- Intermittent problems are tough to fix
- re: Intermittent problems are tough to fix
- It's like the "array out of bounds" bug in C programming
- which is itself the best argument against C.
- re: It's like the "array out of bounds" bug in C programming
