Linux Takes Flight on Northwest Simulators
Rewbob writes "Northwest arlines is spending $34 million to convert its flight simulators to linux. "
Nifty practical applications. Normally when neat toys like this
come along, I beg for someone to send me one, but for some reason,
I don't expect NW to ship an airplane simulator over to the
Geek Compound. But the best part is that there will be one less
Fortran program out there *grin*.
Boy... news like this just gives me the warm fuzzies all over...
Many people seeking engineering degrees still have to take fortran.
I took fortran77 last semester because it's a requirement for me.
ACM. multiplayer air combat simulation. Have to get the nice landscapes yourself, though...
http://www.websimulations.com/
When I was in school a few years ago, everyone at my college had to take FORTRAN. It was an engineering/science college and I believe it still has that requirement. At the govt lab I used to work at, most of the scientists did all their work in FORTRAN.
Shouldn't that actually be DOUBLE PRECISION FORTRAN programmers..... ?
Arf, arf.
Real FORTRAN programmers can write FORTRAN in any language
Ugh. I know this to be true. Back in the mid 80's I had the misfortune of seeing some code written by an old Fortran programmer that was purportedly C code... What it really was, was FORTRAN code that was just marginally close enough to C that it would pass through the compiler without errors (although prodigious warnings). Lint positively went postal at the sight of that code.
Imagine this: All the code was in the main(), no other functions were used (so sometimes the main was 20 or 30 pages of code). Flow control consisted mainly of liberal use of 'goto' to mostly numeric labels (like 'L010030'). Instead of using #define for constants, the programmer used global variables set to the value of the constant. The programmer didn't seem to understand C looping functions, so mostly did things with do and while loops instead of using for loops where appropriate. Things that should have been done with real data structures such as trees, linked lists, etc. were all done with arrays (apparently the guy didn't understand pointers). The programmer didn't seem to understand printf() very well either, so the way that he did output was abhorrent.
What a horrible, wretched mess. It segment faulted and bus errored right and left. I was glad I wasn't the guy who had to maintain that stuff...
From what I gathered from the original post he/she was not tying to discredit FORTRAN or praise C.
Well, while you are correct that it wasn't my express intent with that post to do that, I do have an active dislike of Fortran and a fondness for C.
The post was just a funny story about the difficulties that occur when you take a verteran A programmer and try to make them a B programmer.
That was indeed the real intent of the post. I guess I struck a nerve with someone who either is a big Fortran fan or (obviously) a big time C/C++ hater.
I know I had a tough time once I left nursery school (Java) and moved out into the real world (C/C++).
On the other hand, going from C++ to Java is pretty easy (at least it was for me). Going directly from C to Java would be a bit more of a leap of course.
Try checking your math department. When I took computational linear algebra a few years ago, I had to pick up enough FORTRAN to get by since all of the in-class examples and many of the homework and test questions used it. C was allowed for some of the homework assignments, but the rest of the class was in FORTRAN.
(OTOH, if you took regular linear algebra instead of the computer-assisted variety, you could more than likely get through college without ever having to write a line of FORTRAN code.)
20 January 2017: the End of an Error.
Well, okay, that's a bit of an exaggeration... But we've still got a few million lines of FORTRAN code here (some Fortran V, some Fortran 77) at NWA on the Unisys mainframes.
:-( But good Fortran code is surprisingly easy to follow, IMhO.
I'm not sure which I dislike more -- ugly C code, or old Fortran V code which makes heavy use of arithmetic IFs and assigned GOTOs.
--
-Rich (OS/2, Linux, Mac, NT, Solaris, FreeBSD, BeOS, and OS2200 user in Bloomington MN)
Mainframe/UNIX Bit Twiddler and long time Windows/Linux Hobbyist.
The Theorem Theorem: If If, Then Then.
Now maybe it is because every mining engineer I know is a little bit on the stogy side, but every mining app I know of was written in fortran. It is a great language when you really have to crunch numbers!
Well as a mechanical engineer it's seems that I can't throw a thermodynamics book with out hitting somebody writing linear fortran code.
I took a C++ class a few years ago and really adored that style of coding. Now I am a C++ programmer writing C++ code in F77. OK except for classes, overloading, etc etc etc....
Actually I picked up perl a few months ago and was surprised at the similarities to fortran.
Do you really think IRIX has a that high market-value than linux will have in future??
If so, why SGI gave the infos on the new intel-based systems to the linux-developpers?? Why did they unroll the kernel-features the same day those machines were officially avalyable??
I do not think there is much need for SGIs in the future.... the PC Hardware will become the longer the more efficient concerning 3D.
-- +\ |"/ + Tobias Goeller
And when I went to an interview with a consulting firm, the interviewer asked me what languages I had programmed in? I told him before I left Engineering school I took Cobol and Fortran. "Fortran!! Man, nobody programs in that anymore!" I responded, "Hey, doesn't somebody have to maintain the code?" His response, "Who cares, that won't make us any money."
--Somewhere there is a village missing an idiot.
Back in my days in uniform, we had the AN/ALQ-T-4 simulator. It simulated a B-52 Electronic Warfare cockpit. It ran FORTRAN. Before I touched the T-4, I was trained on the T-5 simulator, lovingly known as "HAL", at the USAF Electronic Warfare School. It too, ran on FORTRAN. Eventually, both were replaced by the B-52 Weapons Systems Trainer, and the SECT (Simulator for Electronic Combat Training). The WST ran FORTRAN, and the version of the SECT that I was on the design team ran FORTRAN.
.
I guess it just goes to show, nothing TRULY obsolete. . .
Fly Microsoft Air instead, but just once!
http://www.flightgear.org/ is an open-source flight simulator that has a port to Linux.
They describe on their website:
This isn't "Mission Critical" to Northwest.
I don't think anyone deems corporate training
as "mission critical".
Flight safety *is* extermely important. However,
"mission critical" is usually reserved for systems
that if they didn't work your company would
be dead in water and not making money.
Northwest not being able to train pilots for a
day or two will not have an immediate impact on their bottom line. It would a pain in the butt
getting those pilots rescheduled, but planes
would still fly.
If their revenue management, reservation, or flight scheduling systems went off line. Those are critical. I suspect all of these are
chunging away on the corporate "big iron".
I'm not sure any company is up for betting
the large corporate fortune on a non-stop
performance of a beawolf cluster. Crunching
numbers for R&D isn't "Mission critical" either.
I work in a combat simulations group, and every sim has FORTRAN at its core, either for the entire structure except for UI, or at least for the aerodynamic sections of code. I don't think that FORTRAN will ever be done away with, there is too much heritage with it out there. Modern Aerospace Engineering Degrees require FORTRAN (at least mine did), but C/C++ are all electives for the CS majors.
We are planning on porting one of the sims from IRIX to linux, but thats been planned for awhile. I'll just have to see what happens...
-- toolie
What makes you think they could use any operating system they wanted to? Do you think cost wasn't a consideration in their decision?
Looks to me more like there will be one more fortran program on linux. ;) My job security just get's better and better.
I don't think this counts as mission critical. If the flight simulators crash Northwest will still fly its planes and makes its money.
Anyone who is a CS-type that thinks FORTRAN is dead just needs to talk to a mechanical or aerospace engineer. FORTRAN is still the primary language of engineering. Anything that is real-number math intensive is done in FORTRAN: CFD, simulations, etc. Granted, the FORTRAN code is often linked to other written in C or C++. The one person who said he was told in an interview "nobody progams in FORTAN anymore" was obviously not interviewing for an engineering position at Boeing, Ford, or Sverdrup.
Better than a Navy air craft carrier running Windows NT Server -- dead in the water.
Also a major jet engine manufacturer in the US has successfully compiled FADEC (Full Authority Digital Engine Control) software on Linux.
I know of at least one Unmanned Air Vehicle project which uses RTLinux.
Linux is nowhere close to flight certification but it could turn out to be a very useful system for flight systems development.
From what I gathered from the original post he/she was not tying to discredit FORTRAN or praise C. The post was just a funny story about the difficulties that occur when you take a verteran A programmer and try to make them a B programmer. I know I had a tough time once I left nursery school (Java) and moved out into the real world (C/C++).
Note: The comment above about Java and C/C++ was in no way intended to be against Java or for C/C++ :^)
Are you sure this wasn't an old FORTRAN program that had been run through something like Cobalt Blue's FORTRAN-to-C translator? I played with^H^H^H^H^H^H^H^H^H^H^Hevaluated a copy of it back in the mid/late-80s and seem to recall it creating labels like that in the translated code.
CUR ALLOC 20195.....5804M
which analyst/columnist it was a month or so ago that issued a challenge looking for any mission-critical usage of Linux by a Fortune 500 company? I remember reading it on the web, some analyst going on about how no one was taking Linux seriously. Would love to be able to forward him this story.
Just another rabid Linux evangelist.
- jon
Ganymede, a GPL'ed metadirectory for UNIX
The article says that they evaluated several different operating systems. Also, it would seem that developing a flight simulator would be a costly proposition. I think the cost of OS licensing would be a fairly small percentage of the whole.
;)
I'm really not trying to stand up and say, "See how great Linux is?" I titled the post "Impressive" because, well, _I_ was impressed when I read the article. (It was also a nod to Darth Vader in ESB)
No, I don't know the first thing about commercial flight simulators. All of my assumptions could be completely wrong. I would love for someone who knows something about this stuff to correct me, so I'll know if this really IS impressive.
Finally, despite what one moderator thinks, this was not meant as a troll. I was genuinely impressed that Linux would be chosen for such a task. I understand that probably no one else is interested in whether or not I'm impressed. I'm also sure that slashdot would be no worse off if I kept my little opinions and comments to myself.
I apologize if the original post was troll-like, but I promise that it was not my intent. You can tell when I'm trolling, because I'll log in as Anonymous Coward.
Save the whales. Feed the hungry. Free the mallocs.
You seem to be putting down Fortran
I'll be happy to put down any Fortran 77 or older. The incident described in the initial posting happened in the late 80's, way before Fortran 90 came out. I haven't seen enough Fortran 90 to make an honest judgement yet (and hopefully won't have the occasion to).
(and Fortran programmers),
I wouldn't put down all Fortran programmers, this particular guy probably wrote lousy Fortran code by Fortran standards.
while forgetting that the C language in is only marginally better.
C is a much better general purpose language than Fortran 77, and nearly infinitely better for systems programming.
One can just as easily put down C
C isn't perfect, but it provides everything necessary to write good code. Fortran 77 is missing a lot of things I consider necessary to write good code. That being said, C was written by experts, for experts, and it has a fairly steep learning curve for the inexperienced.
and C programmers.
There are good C programmers, and bad C programmers. Technically speaking, I wouldn't consider the guy who wrote the code I was describing a C programmer at all. He was a Fortran programmer trying to fool the C compiler into compiling thinly disguised Fortran code.
Most C programs are composed of really poor quality code.
The same thing could be said about just about any language. This doesn't necessarily mean the language is bad. It also doesn't mean that there isn't a lot of really good, clean C code out there. C provides what is necessary to write good code, but it doesn't go out of its way to force you to do it. It also provides a number of features which provide a tremendous amount of power that are dangerous if misused.
They consist of code that is not modular, a nightmare to read, figure out, maintain, and extend.
I've had to maintain some of it. I've also seen code in Pascal, various BASICk dialects and even some Java that was pretty horrid. Some of the code I've seen in other languages has been just as bad as the worst C code I've seen (other than IOCC entries of course). Even languages that attempt to force people to do the right thing can be circumvented by the truly lazy, truly clueless or truly warped.
C in fact encourages the writing really poor quality code because it is so primitive and lacks several important features while supporting some really awful features.
Oh please. I'm not saying that C is ideal for every use, but to say that it actively encourages bad programming is a little much. For some things C is the right tool for the job, for some others, C++, Java, Perl, etc.
Most C programs are also full of bugs.
Again, this is something that could be said about just about any language. I've seen plenty of buggy code written in languages that supposedly do more to try to insulate inexperienced, lazy or bad programmers from themselves.
Especially prominent are bugs cause by abnormal conditions which the programmer didn't think of or which are too much work to take care of in C.
The problem of not handling all abnormal conditions is in no way unique to C. I've seen this sort of bug in every language I've had the occasion to deal with.
See the "Fuzz Revisited" paper for ample evidence of this.
I've probably seen it before, but do you by chance have an URL?
I'm sorry, but AN/ALQ-T is just an awesome acronym. Did anyone ever pronounce it "anal cutie"? I just got to know! :)
One of my previous jobs was working with a quantum physics group that had a program to simulate quantum interaction... sort-of a chemistry lab simulator that does the reactions atom by atom.
They started writing the code back in the late 60's, and are still writing it today. Of course, it's written entirely in FORTRAN. They still have a copy of the first version of the program... stored on punch cards. The original programmer (who's still working with the project) once gave me this prophetic quote:
"I don't know what computers will look like 20 years from now, but I know they will run FORTRAN."
I think he's probably right.
--Mid
Anybody out there know of a
Linux flight simulator?
I've been a fan since my first
Sublogic simulator on my TRS80.
It was a Christmas gift.
Ole Bill slapped his brand name on it years
later.
Thanks for the laugh. I have an up all night project and your posting sure woke me up.
Are you sure this wasn't an old FORTRAN program that had been run through something like Cobalt Blue's FORTRAN-to-C translator?
Unless it generates significantly worse code than f2c (which I am familiar with), I doubt it. This code, if it was translated, appeared to have been done by hand. A friend of mine also had occasion to talk to the guy who wrote the code and he seemed to think it was hand written.
Maybe someone can program (I don't really care in what language) a new personality more befitting an airlines company. Instead of the rude flight attendents maybe some happy ones. Instead of the "shove it up your butt" checkin clerks, some "how may I happily help you today" clerks. And the "I think I need another drink" pilots to "Jeez I am flying a great group of people today." Lets face it, their flying doesnt need to get better, it's their people skills.
Beau C
Finite Element Analysis (FEA) software packages (for stress analysis) all have FORTRAN at thier core, Computational Fluid Dynamics (CFD) software also has FORTRAN at its core. I would dare say most hard core engineering simulation and analysis software has FORTRAN doing the heavy lifting. C/C++ is used for the user interfaces, but FORTRAN gets the job done.
I am a mechanical engineer and I took FORTRAN, but the university I went to just removed the requirement for mechanical engineers to take FORTRAN because of the maturity and availability of software like MathCAD and Matlab which will do a good job of crunching numbers for the everyday general engineering work that most people do. Writing programs in FORTRAN used to be your only option.
Your password has expired, please login to change it.
I know both NWA and Opinicus. The rehost from Vax/VMS to Linux makes sense to me, actually the
OS is not real critical as a Sim tends to use almost NO OS features in operation. Flight Sims run a realtime dispatcher on top of whatever OS they boot from, and newer Sims are distributed computing systems with the host OS doing little during operation. just for reference the new A320 and 777 Sims from Thomson use 15-25 Motorola VME CPU cards spread in cages both on the Sim and in the computer room, and one of those runs Mot SYSV unix and talks to the "host" Sun workstation , the rest all run a custom RTOS.
dave
Nomenclature of DOD Electronics has a definite pattern to it, I'll try and recall it from memory:
AN/ = Electronics unit built for US Dept of Defense (Originally: Army/Navy)
A = Airborne application
L = Radar
Q = Countermeasures
T = Trainer
4 = 4th in this series of devices
Fortran has left college reqirements to make room for C++ -- In fact, my school is doing a major Java push for GUI development. Fortran is dying. dead. kaput. You just can't fit that many languages into curriculum, and the C++ is just so much more valuble in the workplace.
I think they *might* teach it somewhere on campus, but no one in thier right mind would take it becuase it's just wasted credits.
Sorry.
OK, I like Linux as much as the next guy, but I don't think I would want to get on a real plane run by Linux....
DrLunch.com The site that tells you what's for lunch!
from
http://beowulf-underground.org
http://www.psrv.com/vastf90.html
Kinda neat poetic justice - altho a Minneapolis based company.
Wondering if Linux would be up to running a ticket/reservation system as well.
Chuck
try { do() || do_not(); } catch (JediException err) { yoda(err); }
Licensed under the GPL, looking for any contributions, pretty nice already-- Flight Gear.
Simulators have very little to do with flying skills. The largest benefit is gained in obtaining emergency management skills, and actually 'experiencing' emergencies in a safe enviornment.
In the immortal words of Socrates, who said; 'I drank what?'
Here is a company that probably could/would use ANY operating system they wanted. They apparently did some real comparisons and chose a free operating system.
-- This part of my post left blank for note-taking --
Save the whales. Feed the hungry. Free the mallocs.
Back in the mid 80's I had the misfortune of seeing some code written by an old Fortran programmer that was purportedly C code..
You seem to be putting down Fortran (and Fortran programmers), while forgetting that the C language in is only marginally better. One can just as easily put down C and C programmers.
Most C programs are composed of really poor quality code. They consist of code that is not modular, a nightmare to read, figure out, maintain, and extend. C in fact encourages the writing really poor quality code because it is so primitive and lacks several important features while supporting some really awful features. Most C programs are also full of bugs. Especially prominent are bugs cause by abnormal conditions which the programmer didn't think of or which are too much work to take care of in C. See the "Fuzz Revisited" paper for ample evidence of this.