There doesn't seem to be much interest or much consumer demand for applying this technology to higher gas mileage instead of higher performance.
The market for high fuel efficiency is with some of the hybrid cars (can't say whether they hybrid Highlander, Escape, and even Camry are really providing such high gas mileage, and the hybrid Accord and certainly the hybrid version of the ES300 seem to be more of a performance market) -- there is also a small fuel efficiency market with the VW direct-injection Diesels. Beyond that, I don't see anyone marketing fuel efficiency, even at today's high gas prices.
Go over to www.thetruthaboutcars.com, and those dudes have the odd article complaining that there are no advances in fuel economy, but they rag on any car with a 0-60 time of 8 seconds or longer. There was this thing on cable TV covering the auto show where there is a Mazda 3 (otherwise a small, practical car with somewhat sporty handling and good ergonomics and space efficiency) being equiped with a 260 HP 2 litre direct-injection turbo motor.
I imagine with that motor you have a sporty car with comparable gas mileage to say a V6 Camry, and maybe a souped-up Mazda 3 with that motor is a more ecological choice for someone who wants a sporty car than a Mustang GT with a V8. On the other hand, couldn't they equip a Mazda 3 with a 1 litre 130 HP motor using that same technology, and wouldn't that car get a lot better gas mileage yet have perfectly workable levels of acceleration? I know things don't scale -- the 1 litre engine doesn't get twice the mileage of a 2 litre engine on account that not all the drag in a vehicle is engine friction.
Perhaps some gym class/athletic programs/sports in school manage to promote sports elite and take the fun out of such activities for the majority of the other kids.
If the emphasis is on competition and winning, the vast majority of school children don't belong to the few that are advanced a few months in maturation and have the muscle strength to dominate in these competitions and thereby most warm the bench. At all levels from the gym class through the "revenue sports" of high school football (yes, they charge money to watch these kids play football), the emphasis is on winning rather than having a rotation to keep as many kids involved, or even providing any degree of remedial sports training to offer any degree of encouragement or extra support for the kids who don't dominate their sports teams.
There may be some cultural or social reasons for the less athletically gifted to try out for sports teams and be part of the team even if they play a minor supporting role, but the whole sports culture is a kind of primate dominance hierarchy thing rather than focused on keeping as many people physically fit.
Also, I don't know if the Latin teacher is a frustrated Classics scholar, the English teacher is a frustrated attorney, or if the Math teacher is a frustrated research engineer (although the Physics teacher, if you had that subject, was always a little beyond the fringe), but the Gym teacher is most likely a frustrated athlete given the very broad pyramid of people attempting to make a career out of sports with a chosen few at the very tippy top.
Come to think of it, I think I had come across Forbidden Archealogy at some time or another, and I believe there is some kind of dedication or sponsorship indicated inside the front cover to the Hare Krishna group (not that there is anything wrong with that!).
I found it fascinating that all of the focus is on Creationism or Creation Science arising out of interpretation of Christian writings, but it stands to reason that people of other faiths have their own creation narratives and may one to publish what they consider as scholarly books supporting those other viewpoints.
What I gather is that there are examples of anachronisms to the stratigraphic hypothesis -- that lower strata predate higher strata. The stock natural-science explanation is that strata can get jumbled through faulting, a human could be buried into a hole dug into exposed Jurassic rocks, or that human footprints could occur during the Age of Dinosaurs owing to us seeing some pock marks in the rocks and allowing ourselves to say, "Aha, human footprints."
What is interesting is that Christian Creationists see this and go "See, anachronism, those rocks cannot be x-million years old," and there is at least one Vedic Creationist (different set of religious holy books, different time lines) who goes "see, humans have existed for millions of years."
Nurses know everything and how to do anything. My mom was in a nursing home, and one RN asked me how I was doing. I replied that I had a brush with death because I grabbed an electric heat thermostat I was installing with both hands and got a shock because I thought I had pulled all of the breakers but the box must have been hot from another panel. I was scolded "One hand! You must never grab those things with two hands, always one hand!"
On another occasion, a different nurse told me what I need to get to fix my parents sump pump, that I needed to replace the check valve in the outflow if I was changing the pump.
My theory is that nurses in our area are all farmers or their husbands are general contractors, and they have to work nursing jobs so one person in the farm family can get health insurance. I wonder if they are also good with graphic design?
Earthlings descended from B-Ark colonists
on
Interstellar Ark
·
· Score: 1
I thought the fact that the B-Ark was a ruse to get rid of a bunch of people perceived not to contribute to society and the plague spread by unsanitized telephones killed the people not on the B-Ark was widely known. And that we, the humans of Earth, are descendants of the B-ark colonists.
What is the Java version using in place of DX-9? Is it using Java3D? Does that get translated into DirectX 9 on Windows. OpenGL? Which Java libary for OpenGL?
In Java, you can have threads communicate by passing objects that you treat as immutable -- a thread creates an object, passes it as an argument to invokeLater(), where it gets synchronized with the event queue, acted upon, and then garbage collected. That the thread that called invokeLater() on an object no longer retains any references to that object is a matter of programming discipline, but that style of multi-threaded programming is available.
The question or concern I have is that if one programs threads that way, communicating by creating, passing, and garbage collecting objects, is the garbage collector happy with this, or does this create more overhead than you save with the thread parallelism (on multi core of course)?
The problem is not that Clippy is unlike a human helper. Clippy is exactly like a human helper who is interrupting, distracting, and making lame suggestions at a time when you are most frustrated trying to figure out how to do something.
My big gripe about help is that you want to use a particular feature, say select the "Lisa Novak" font that looks like pastings from random magazine pages. You search "Lisa Novak", come up with a help entry that says, yes, that feature is supported. Then it says, "Select font from Preferences menu, General tab, Font drop-down (not really, help is never that explicit of telling you to expect a menu entry, dialog tab, or dialog widget at each step)" but then where in the what is the Preferences menu? Sometimes it is under Files, sometimes under Edit, sometimes Windows, and sometimes there is not menu entry, there is one of those toolbar icons, which doesn't appear because you have to activate that toolbar or add the toolbar to which it belongs.
Major universities, even ones with an accredited College of Engineering and that win their football bowl game, may have a major way to go in administering computing systems. I am just a user of whatever systems they make available.
I plug my USB key into the slot. Nothing happens. I find someone using a Solaris machine who looks Unix savy and ask about mounting the drive -- said Good Samaritan enters a few commands and then gives up. I ask one of the "consultants" (student hourly worker, but a fine, fine students of engineering) and am told about logging into a Windows machine, transfering the files to the shared drive, and then accessing them from my Unix account.
I will use the comments to my Troll-modded post to shame the sys-admins to upgrade to a current version of Linux (I believe they have Debian). But my comment was that the problem wasn't necessarily inherent in Linux -- the problem was cultural, and we were talking an Engineering College computing center and the people who run it, not Grandma.
Wasn't Delphi like the even and odd-numbered Star Trek movies? I thought the even-numbered Delphi versions (2, 4, 6) were the ones that they had better control of the bugs.
I actually was quite fond of Delphi 2 and tried to make my stuff compile on it as long as I could (I believe the Delphi 2 compiler ran much faster and Delphi started up faster than later versions). I also thought that Delphi 2 would be most compatible with FPC, but they are moving in a kind of Delphi 3 direction.
Which Delphi got a stable version of the TypeLib Editor for ActiveX development? I have ActiveX versions of all the VCL controls I have developed, and I am familiar with Delphi 6 and Delphi 3. The ActiveX development support in Delphi 3 was kind of in an early stage but quite mature by Delphi 6 -- I suppose what I want in Delphi 6 is also found in Delphi 5, but I only have Professional versions of 2, 6, and 7 and more limited versions of 4 and 5 along with access to 3 at the U.
One major difference between ActiveX and VCL: in Windows, and ActiveX is an ActiveX is an ActiveX, and it is pretty much upward and downward compatible between 98 through XP. On Delphi, your VCL's have to be compiled against every compiler version, and if you want to share or sell VCL's to people, you need to have the whole stable of 2, 3, 4, 5, 6, and 7 on hand. If I want to sell you a VCL, I could build it on 2, 6, or 7, but I don't have 5, so I would have to be a nag and say my VCL requires 7 and since you are staying with 5, too bad. Java has similar version restrictions, although downloading J2SE is free (as in beer). Microsoft, bless their black little hearts, is amazingly upwards and downwards compatible between Windows versions.
Instead of framing the question if Linux was ready for Kylix/Delphi, I ask if the Delphi crowd was ready for Linux.
The sort of person developing on Linux probably came from a university Unix background and was comfortable with vi, emacs, make, makefiles, and the whole Unix style of software development. It is not clear that IDE's are of interest to the people already on Linux, let alone the stories on this thread about cost and bugs with Kylix. If the Linux world is to be sold on IDE's, it may come from Eclipse, but it wasn't coming from Borland for the cited reasons.
The real breakthrough would have been if Kylix could have brought the Delphi developer community over to Linux -- we are talking about people who have never used a command-line compiler, a makefile, or know how to use a text editor that doesn't support the old WordStar shortcuts. We are also talking about people used to paying for their programming tools. This could have been a path for bringing a whole crop of people away from Windows and over to Linux by supplying them with development tools in the style that they had become accustomed to.
One side of the equation was the cost and bugs of early versions of Kylix. The other side of the equation was that there were a ton of nagging compatibility issues between Windows and Linux about such things like file names and directory structures -- a lot of Delphi Windows developers who had heard how marvelous Linux was found that the differences were deeper than dir is called ls and copy is called cp. A Delphi developer looks at all the things they need to take care of in their code to get a Kylix version and decides to lie down until the feeling passes. The historical fact that numerous "Year of Linux on the Client" came and went to no effect was a factor in this lethargy - read Joel Spolsky about how porting your app to serve less than 10 percent of the market should take less than 10 percent of the total effort, and Kylix coupled with what was different about Linux was not a 10 percent solution.
A lot of people in the Linux world complain about Kylix costing money, being commercial and proprietary, not being in the spirit of Linux at so many levels. Borland is what made Microsoft tolerable as a development target to many developers -- think of the primitive state of development tools from MS pre and even post Turbo Pascal and Delphi. Kylix could have made Linux more tolerable as a development environment to more people -- in the Unix world there is this One True Way of C/C++, vi/emacs, make, and an OS with only one True Way, and I include pre-Borland Windows, is not much fun to work with.
Linux is breaking out of the One True Way with Python, Perl, Ruby, Java, Eclipse, and so on. Kylix could have opened an alternate path to software development and enriched Linux, but it didn't work out.
That is a good question - what can one use for developing a native Win32 app?
I know a fellow doing C++/MFC, but that seems like an exercise in masochism, even for C++ programming. The official Microsoft Way was that mere mortals program in VB and that real guru types produced the ActiveX controls that were assembled in applications by VB, and you can do the same thing using Matlab or even Python (assembling apps in a scripting environment using ActiveX controls implemented in C++ using MFC or ATL).
But none of these methods are pure native. I have been using Delphi - I have used it with my home-grown GUI framework, with the VCL, and to produce and to use ActiveX controls. I had also been taught Pascal (from Brinch Hansen no less!), so while I consider the Pascal begin-ends so 1970's and a little clumsy in syntax, I have not approached Delphi with the kind of Pascal aversion that keeps others away from it.
So in the end, there is nothing perfect for the Win32 API -- you can do C and the giant switch statement in the style of Petzold, you can engage in the masochism of C++ and what passes for object-oriented programming and frameworks in the MFC/ATL world, you can have the convenience and power of VB 6 but then you have to deal with an archaic bastardized language (Basic), or you can have the convenience, power, and native code of Delphi, and you have to deal with (from the perspective of people from the outside looking in) with a bastardized dialect of Pascal, which was never a favorite in the programming profession, the power and added features of the Delphi dialect of Object Pascal notwithstanding.
But the real reason Delphi is waning is that among the developer community, interest in programming for the Win32 API is waning. Really. One group of people has deserted the Windows API for Java. Another group has bought into Managed Code, WinForms, and C#. The biggest group has abandoned client apps altogether and concentrated on Web apps - for a lot of data entry/fill-in-the-blanks user interfaces, while Web apps are slow and clunky, they are apparently good enough and have all of the goodness of universal access over the Web. A final group is perhaps discouraged of developing client apps for Windows (developers, developers, developers, developers!) because whatever clever kind of shrink wrap app you developed will be Borged by Microsoft.
So Delphi is the best way (still) to do a native-mode Win32 API app, but the in house client app developers have forked into Java and C#, the people who want to reach a broader audience (along with in-house developers) have gone away from client and over to Web apps, and the folks who would be developing the next killer client app for Windows have been discouraged. If no one is developing native-mode Win32 apps, no interest in Delphi.
That's right. Mod the parent post "Troll" because it suggests that the user experience of Unix is out of the mainstream. La-la-la-la I can't hear you!
On one extreme you have Grandma and her computer for doing e-mail; on the other extreme you have a bearded guru; in the middle you have the computing center for the engineering college at a Big-10 university 2-hours drive from the Eastern shore of one of the Great Lakes. We have mainly Windows boxes, a few Unix-y things like Solaris and others for running those Unix-only engineering packages, and some token Linux boxes that are treated like the red-haired child of questionable paternity. No, the folks running the computing center are not Linux-heads, but they are not helpless Grandma either in terms of Linux adoption.
For starters, one cannot plug in one of those USB memory sticks into a Linux PC. Forget about plugging the thing and having it auto-recognized and mounted. Forget even about shell commands to "mount" (that is so DEC 1970's PDP-11) that device. No can do. One is told to log into a Windows station, copy the files to a network share accessible from the Unix side, log out, and then access the files from Linux. No joke.
I mean for crying out loud, a USB memory stick is not like someone's wonder digital camera-scanner-PDA-coffee maker. Everyone is using those memory sticks, and that you can't just plug it into the computer and access it from Linux is completely stupid. Yeah, yeah, our computer center guys are not followers of the True Way or have the Right Distro, but we are not talking about Grandma and her e-mail, we are talking about a bunch of computer admins at the engineering college of a university.
As to the red-headed child effect, there is a dearth of applications on these things. Like why don't they have Open Office/Star Office, Eclipse, and a couple other things on them? Why, because there is no demand, mainly because no one uses these boxes for anything, and we are talking engineering college and university.
So if the failure to adopt Linux indicates stupid people, there are stupid people even in the academic environment by that standard, which suggests Linux has a ways to go in terms of adoption.
Your story is entirely made up based on your fellow techs not wanting to talk to you. If it was real, they would be saying, "Why didn't I think of that!"
The original post should have been made under the Humor than the Science category. Yes, it is wrong and cruel to animals and perhaps a stupid use of tax money as well, and that makes it funny. No, there is nothing wrong to see humor in something that is wrong and cruel because that is one way to make people aware that something wrong and cruel is also stupid.
My favorite comment was from Louis Rukeyser around the time in the early 1980's when the market turned around from the long 70's slump and started the big, long bull market that carried through to 2000. We all heard about the 1920's market crash where people were despondent and jumped out of windows. Well, the market had such a big increase that Rukeyser talked about people "leaping from the sidewalk back up into the upper-story windows."
I am not sure which defensive position I am taking -- defending ActiveX or defending Delphi.
As an alternative to ActiveX, I am looking at Java Swing. But it will be a while before I get my stuff rewritten, so I have still have an interest in the Windows API and in ActiveX.
The original discussion was that Delphi was good for arranging pretty widgets but if you wanted to develop new widgets you had to drill down to C++. My suggestion was that in some regards Delphi may be a better development environment for ActiveX than the MS C++ tools. I am not saying that Delphi makes ActiveX a breeze, but it makes implementing ActiveX controls tolerable.
The thing is that if you have an underlying operating system, it is helpful to have a language that incorporates the idioms of that operating system into the language itself. C++ is not that language, at least not for Windows, largely because C++ is a platform-independent standard where you can't just stuff features in the language just because they are convenient for Windows, although Microsoft has tried mightily to sneak them in.
Just as the Java language has built in support for the features of the underlying JRE, the two languages that have Windows support built-in are VB and Delphi. Everything from message maps to BSTR's to Variants to Dispatch interfaces are just plain painful mixes of #defines, classes, templates, and wizards in C++ while they are language features in VB and Delphi. I am not saying the C++ is deficient, but the way Microsoft decided to use C++ to use their OS-specific features is painful. The C-language and the raw Windows API are a little verbose, but you can pretty much figure out message loops and giant case statements to see what is going on, but once Microsoft went to COM/ActiveX and threw C++ into the mix, the result was an OS-specific extension to C++ using legal C++ extension mechanisms but done badly. What MS did with VB and what Borland did with Delphi was to add OS-specific features into those respective languages so all of the cruftiness of COM was hidden away.
OK, if we are talking ActiveX and the task at hand is to develop ActiveX controls, what tool does one use? There may be a VB way that is every bit as capable of the Delphi way, but I never looked into it. I have implemented ActiveX controls in Delphi and I have dabbled at implementing ActiveX controls in VC++, and there are things to recommend about Delphi. Look, C++ is a great language, and people tell me that C++ is a great GUI programming language (the parent post topic) if you are using Qt, but there is a certain impedance mismatch between the way MS went about using the C++ extension mechanisms to handle their own COM and ActiveX features and low-level data types. You really think MFC is an example of a good C++ class library? ATL for all that matters?
The Microsoft C++ solution of macros, classes, templates, and wizards is so painful that even Microsoft abandoned it and went with C# and Windows.Forms. Case in point -- C Windows API guru Charles Petzold who stated he could never grasp the MS C++ solutions in the form of MFC and ATL but found himself once again at home with C# Windows.Forms and wrote his next book. C# by the way is OS-specific -- the CLR-specific string type for example is a primitive type in C# rather than something synthesized from classes and templates.
I am not saying Delphi rocks, Delphi rules, blah, blah. All I am saying is that there are reasons for developing and maintaining ActiveX controls because so much in the Windows world supports it, that Delphi makes ActiveX implementation tolerable, and the Delphi Type Library Editor allows extending as well as trimming COM interfaces during the development phase before the COM object is published and the interface set in stone.
Um, don't you think there is an upper bound on the resolution you want on some images? When you start seeing every pimple, hair, and pore, I would think it stops being fantasy-enhancing and starts becoming a clinical rotation in urology or perhaps skin lesions.
The remark about the evil of ActiveX controls is sort of like remarks that since people in occult cults listen to rock-and-roll music then people who listen to rock-and-roll are susceptile to occult cults or belong to them (or some variation thereof).
ActiveX is a remarkably powerful system for visual component software -- restricted to Windows, yes, but supported by many programming languages ranging from VB through Delphi to Matlab. It is also remarkably crufty so to either develop for it or to use it you end up using some form of "wizards" and automatic code generation. And yes, the use of ActiveX on Web sites, especially malicious Web sites is evil, but such things like Flash and some of the free anti-virus sites are delivered through ActiveX. You could also disable all Internet ActiveX and still be able to use client apps on your computer using ActiveX -- there is hardly a major Windows app that doesn't use ActiveX at some level anyway, so if you are to dismiss ActiveX, there is little you can run under Windows.
Delphi is a remarkably powerful tool for developing ActiveX controls as well, and I like it better than the VS/VC++ approach because I find it to be more flexible in tinkering with COM interfaces until you are ready to publish the control. Delphi ActiveX development requires some faith in wizard-generated code (actually, GUI development in Delphi is remarkably free of wizards and auto-generated code because the VCL base classes have so much of the functionality in them, but ActiveX in Delphi requires it). You will also have to become friends with the Type Library Editor -- the Delphi way of writing and maintaining the IDL code that is the plumbing of COM and ActiveX. The Type Library Editor is buggy and has its quirks, but I find it much more powerful for inspecting and modifying COM interfaces than any of the MS tools.
My all time favorite software engineering book is Glenford Meyers, Reliable Software through Composite Design. The book predates OO and is based on a module/function tree/hierarchy model of a software system. The book comes up with these module "strengths" ranging from "coincidental" (taking reoccuring sequences of code and calling it a module -- considered weakest reason) to "functional" (making a module out of code that has a simple declarative sentence description -- considered the strongest reason). The book has a lot of discussion regarding whether a repeated sequence of code merits its own module.
As the book predates the widespread use of OO, it has a kind of proto-OO or proto-object in the form of "communicational" modules -- collections of functions that operate on some common data organized in a data structure or a name space. The communicational-strength module, of which there is a lot of support in Modula-2 and pre-OO Ada, is kind of like a static or perhaps a singleton object, and the reason for this kind of programming is that back in the day dynamic memory allocation was regarded as being fraught with peril -- either too expensive or too risky in terms of heap fragmentation. Remember also the computer speeds and amount of memory that we had compared to today. Classes and their objects are really the communicational module applied to where you have good heap management algorithms and perhaps even GC as well so you dynamically allocate an allow multiple instances of things and don't worry.
I wish there was a latter edition of "Reliable Software through Composite Design" that addressed OO in some ways, but Martin Fowler's works on refactoring comes close. What I also like about Fowler is that all of his refactorings are reversable so if you find that you have too many code snippets in functions, inlining the code snippets and eliminating the functions is an "allowed" process instead of something you are scolded into never doing.
As to cut-and-paste, whenever you see yourself using the text editor to copy any block of code to replicate the same functionality, you are asking for some kind of trouble at some level. The whole problem with cut-and-paste is that your code is littered with multiple copies of the same function, perhaps with some minor variations, and if you have a bug in that sequence or need to revise that common functionality, it is a lot of work to search it all out in your code and fix it.
On the other hand, many times that repeated sequence of code doesn't lend itself to a proper kind of function and you have so many customizations of that function or flag parameters to that function (Glenford Meyers really lays into flags as function inputs and explains why -- I guess Microsoft didn't read his book when doing the Windows API).
A lot of the idioms of programming languages -- loops, functions, objects, macros, anonymous functions, etc -- are efforts to avoid cut-and-paste, and if you are programming in a weak programming language (dunno, like.bat or perhaps VB), you end up with cut-and-paste to do the job rather than wrestle with the language. At some level, some degree of repeating yourself in code is unavoidable and introducing higher-level languages (closures? functional programming?) to avoid this may be unavailable or perhaps in itself introduce obfuscation if these features are generally not known to your maintenance programmers. So if you are left with some cut and paste, don't sweat it.
Max Faget, who died recently, was regarded as the "American Korelev" or perhaps Sergei Pavlovich is best known as the "Russian Faget." The name Faget is pronounced "fuh-ZHAY" because he was a Cajun.
OK, OK, I misspelled grammar, but I did not misspell a perjorative word. The man probably had to live down his name everywhere outside some parts of Louisiana, but if a person could claim credit for the Mercury spacecraft blunt body reentry shape, the solid rocket escape tower, and the throttable descent engine on the Lunar Module, I guess there are certain things one could shrug off.
Eclipse may be FOSS software (it is not GPL, but has some form of source license, free access to source codes, way of accepting contributions), but it has IBM behind it. You could say Eclipse is IBM developing some project in house and then opening it up for others to use; on the other hand, Eclipse seems to be a part of IBM's Java strategy in selling computing services.
Then there is Java -- long time criticized by RMS but not trumpeted by SUN as being GPL'd. And how about Open Office/StarOffice with a strong SUN contribution?
Yes, FOSS may be an insurgency, but I see it backed/encouraged/funded by big corporate entities who have a stake in its success.
I resent this offense to Catholics. Archbishop Balmer is not some made-up Monty Python character. He is a real person who runs the Diocese of Seattle . . .
At the risk of being one of those grammer fascists, I believe calling the then-Soviet shuttle "Buran" would be like calling the U.S. Shuttle "Columbia." Buran, meaning snow storm, was the name of Soviet Shuttle number 1, and I suppose the other craft could have been named "Galileo" if the Soviets were Trekkers.
On the other hand, we don't know what to call it other than "Buran" because the Soviet Space Transportation System (SSTS?) was never given a proper name other than letting people call it Buran.
By the way, does anyone know what kind of reentry vehicle -- lifting body, straight wing, delta wing -- this thing is?
The Russian and U.S. "capsules" were blunt body reentry vehicles -- some were ballistic, others used an offset CG for a small amount of hypersonic lift to mitigate the G-load and thermal load of reentry. Apollo along with the Russian Zond used offset CG to good effect for reentry from lunar distance. All landed mainly by parachute with either crushable couch struts to mitigate a land impact (Apollo, if they had to go down on land) or braking rockets -- the Russians may have crumped a Soyuz with a landing rocket failure, resulting in broken teeth.
The Shuttle famously uses a delta wing that produces a large amount of lift everywhere from hypersonic reentry down to the subsonic landing speed, and this famously drove up the cost and weight. Max Faget had a straight-wing Shuttle proposal that was equally famously rejected, both on the idea that straight-wing craft have nasty hypersonic handling (think Yeager and his tumble in the X1A, his tumble in the NF104, and Mike Adam's accident in the X15) along with the Air Force wanting the Shuttle to have more hypersonic cross range. But Faget's explanation of the thing is that the straight wing vehicle pancaked in -- it didn't really fly on those wings in hypersonic reentry -- and the straight wing Shuttle was like a cookie cutter applied to an Apollo heat shield, and the control of blunt body reentry with offset CG for some small amount of lift was well tested. But the Faget Shuttle would have to do some kind of Alley Oop maneuver at subsonic speed to transition from a full stall pancake attitude to proper flight on those straight wings, and there was some concern about doing that stall recovery safely.
Then there was the DC-X, the closest thing to a Buck Rogers spaceship from the 1930's comic books, which was to reenter as a blunt body (don't remember if it was nose first or tail first) but land on its tail using rocket thrust. Of course the DC-X on landing is this big mainly empty fuel tank so it is not going that fast before the rockets cut in for landing, but if the rockets fail, you are going to crump that thing.
Perhaps the only new thing under the sun for reentry (although not an orbital reentry) was the Rutans' "shuttle cock" folding tail where they reentered with a stable, high drag configuration and then straightened the tail for atmospheric flight and landing.
NASA wants to go back to the Apollo style reentry and landing but probably on land using parachutes and landing rockets like Soyuz and the Chinese spacecraft. You save big time on weight and there are safety advantages in terms of heat tile damage, but this low-control landing has problems of its own. Do you suppose NASA could wait awhile on the outcome of this Air Force project to see how it turns out?
What makes major damage to chromosomes (as opposed to some regulatory gene changing state) a fringe hypothesis. As cancer is related to age, exposure to certain chemicals, radiation, what is so on-the-fringe of arguing that the cancer trigger is a major scrambling of the genetic machinary instead of a minor switch left in the wrong position?
I also remember a discussion of cancer from someone at the U in biological sciences, the emphasis is that cancer cells are far from normal, not only mutated but rapidly mutating.
The market for high fuel efficiency is with some of the hybrid cars (can't say whether they hybrid Highlander, Escape, and even Camry are really providing such high gas mileage, and the hybrid Accord and certainly the hybrid version of the ES300 seem to be more of a performance market) -- there is also a small fuel efficiency market with the VW direct-injection Diesels. Beyond that, I don't see anyone marketing fuel efficiency, even at today's high gas prices.
Go over to www.thetruthaboutcars.com, and those dudes have the odd article complaining that there are no advances in fuel economy, but they rag on any car with a 0-60 time of 8 seconds or longer. There was this thing on cable TV covering the auto show where there is a Mazda 3 (otherwise a small, practical car with somewhat sporty handling and good ergonomics and space efficiency) being equiped with a 260 HP 2 litre direct-injection turbo motor.
I imagine with that motor you have a sporty car with comparable gas mileage to say a V6 Camry, and maybe a souped-up Mazda 3 with that motor is a more ecological choice for someone who wants a sporty car than a Mustang GT with a V8. On the other hand, couldn't they equip a Mazda 3 with a 1 litre 130 HP motor using that same technology, and wouldn't that car get a lot better gas mileage yet have perfectly workable levels of acceleration? I know things don't scale -- the 1 litre engine doesn't get twice the mileage of a 2 litre engine on account that not all the drag in a vehicle is engine friction.
If the emphasis is on competition and winning, the vast majority of school children don't belong to the few that are advanced a few months in maturation and have the muscle strength to dominate in these competitions and thereby most warm the bench. At all levels from the gym class through the "revenue sports" of high school football (yes, they charge money to watch these kids play football), the emphasis is on winning rather than having a rotation to keep as many kids involved, or even providing any degree of remedial sports training to offer any degree of encouragement or extra support for the kids who don't dominate their sports teams.
There may be some cultural or social reasons for the less athletically gifted to try out for sports teams and be part of the team even if they play a minor supporting role, but the whole sports culture is a kind of primate dominance hierarchy thing rather than focused on keeping as many people physically fit.
Also, I don't know if the Latin teacher is a frustrated Classics scholar, the English teacher is a frustrated attorney, or if the Math teacher is a frustrated research engineer (although the Physics teacher, if you had that subject, was always a little beyond the fringe), but the Gym teacher is most likely a frustrated athlete given the very broad pyramid of people attempting to make a career out of sports with a chosen few at the very tippy top.
I found it fascinating that all of the focus is on Creationism or Creation Science arising out of interpretation of Christian writings, but it stands to reason that people of other faiths have their own creation narratives and may one to publish what they consider as scholarly books supporting those other viewpoints.
What I gather is that there are examples of anachronisms to the stratigraphic hypothesis -- that lower strata predate higher strata. The stock natural-science explanation is that strata can get jumbled through faulting, a human could be buried into a hole dug into exposed Jurassic rocks, or that human footprints could occur during the Age of Dinosaurs owing to us seeing some pock marks in the rocks and allowing ourselves to say, "Aha, human footprints."
What is interesting is that Christian Creationists see this and go "See, anachronism, those rocks cannot be x-million years old," and there is at least one Vedic Creationist (different set of religious holy books, different time lines) who goes "see, humans have existed for millions of years."
On another occasion, a different nurse told me what I need to get to fix my parents sump pump, that I needed to replace the check valve in the outflow if I was changing the pump.
My theory is that nurses in our area are all farmers or their husbands are general contractors, and they have to work nursing jobs so one person in the farm family can get health insurance. I wonder if they are also good with graphic design?
I thought the fact that the B-Ark was a ruse to get rid of a bunch of people perceived not to contribute to society and the plague spread by unsanitized telephones killed the people not on the B-Ark was widely known. And that we, the humans of Earth, are descendants of the B-ark colonists.
What is the Java version using in place of DX-9? Is it using Java3D? Does that get translated into DirectX 9 on Windows. OpenGL? Which Java libary for OpenGL?
The question or concern I have is that if one programs threads that way, communicating by creating, passing, and garbage collecting objects, is the garbage collector happy with this, or does this create more overhead than you save with the thread parallelism (on multi core of course)?
My big gripe about help is that you want to use a particular feature, say select the "Lisa Novak" font that looks like pastings from random magazine pages. You search "Lisa Novak", come up with a help entry that says, yes, that feature is supported. Then it says, "Select font from Preferences menu, General tab, Font drop-down (not really, help is never that explicit of telling you to expect a menu entry, dialog tab, or dialog widget at each step)" but then where in the what is the Preferences menu? Sometimes it is under Files, sometimes under Edit, sometimes Windows, and sometimes there is not menu entry, there is one of those toolbar icons, which doesn't appear because you have to activate that toolbar or add the toolbar to which it belongs.
I plug my USB key into the slot. Nothing happens. I find someone using a Solaris machine who looks Unix savy and ask about mounting the drive -- said Good Samaritan enters a few commands and then gives up. I ask one of the "consultants" (student hourly worker, but a fine, fine students of engineering) and am told about logging into a Windows machine, transfering the files to the shared drive, and then accessing them from my Unix account.
I will use the comments to my Troll-modded post to shame the sys-admins to upgrade to a current version of Linux (I believe they have Debian). But my comment was that the problem wasn't necessarily inherent in Linux -- the problem was cultural, and we were talking an Engineering College computing center and the people who run it, not Grandma.
I actually was quite fond of Delphi 2 and tried to make my stuff compile on it as long as I could (I believe the Delphi 2 compiler ran much faster and Delphi started up faster than later versions). I also thought that Delphi 2 would be most compatible with FPC, but they are moving in a kind of Delphi 3 direction.
Which Delphi got a stable version of the TypeLib Editor for ActiveX development? I have ActiveX versions of all the VCL controls I have developed, and I am familiar with Delphi 6 and Delphi 3. The ActiveX development support in Delphi 3 was kind of in an early stage but quite mature by Delphi 6 -- I suppose what I want in Delphi 6 is also found in Delphi 5, but I only have Professional versions of 2, 6, and 7 and more limited versions of 4 and 5 along with access to 3 at the U.
One major difference between ActiveX and VCL: in Windows, and ActiveX is an ActiveX is an ActiveX, and it is pretty much upward and downward compatible between 98 through XP. On Delphi, your VCL's have to be compiled against every compiler version, and if you want to share or sell VCL's to people, you need to have the whole stable of 2, 3, 4, 5, 6, and 7 on hand. If I want to sell you a VCL, I could build it on 2, 6, or 7, but I don't have 5, so I would have to be a nag and say my VCL requires 7 and since you are staying with 5, too bad. Java has similar version restrictions, although downloading J2SE is free (as in beer). Microsoft, bless their black little hearts, is amazingly upwards and downwards compatible between Windows versions.
The sort of person developing on Linux probably came from a university Unix background and was comfortable with vi, emacs, make, makefiles, and the whole Unix style of software development. It is not clear that IDE's are of interest to the people already on Linux, let alone the stories on this thread about cost and bugs with Kylix. If the Linux world is to be sold on IDE's, it may come from Eclipse, but it wasn't coming from Borland for the cited reasons.
The real breakthrough would have been if Kylix could have brought the Delphi developer community over to Linux -- we are talking about people who have never used a command-line compiler, a makefile, or know how to use a text editor that doesn't support the old WordStar shortcuts. We are also talking about people used to paying for their programming tools. This could have been a path for bringing a whole crop of people away from Windows and over to Linux by supplying them with development tools in the style that they had become accustomed to.
One side of the equation was the cost and bugs of early versions of Kylix. The other side of the equation was that there were a ton of nagging compatibility issues between Windows and Linux about such things like file names and directory structures -- a lot of Delphi Windows developers who had heard how marvelous Linux was found that the differences were deeper than dir is called ls and copy is called cp. A Delphi developer looks at all the things they need to take care of in their code to get a Kylix version and decides to lie down until the feeling passes. The historical fact that numerous "Year of Linux on the Client" came and went to no effect was a factor in this lethargy - read Joel Spolsky about how porting your app to serve less than 10 percent of the market should take less than 10 percent of the total effort, and Kylix coupled with what was different about Linux was not a 10 percent solution.
A lot of people in the Linux world complain about Kylix costing money, being commercial and proprietary, not being in the spirit of Linux at so many levels. Borland is what made Microsoft tolerable as a development target to many developers -- think of the primitive state of development tools from MS pre and even post Turbo Pascal and Delphi. Kylix could have made Linux more tolerable as a development environment to more people -- in the Unix world there is this One True Way of C/C++, vi/emacs, make, and an OS with only one True Way, and I include pre-Borland Windows, is not much fun to work with.
Linux is breaking out of the One True Way with Python, Perl, Ruby, Java, Eclipse, and so on. Kylix could have opened an alternate path to software development and enriched Linux, but it didn't work out.
I know a fellow doing C++/MFC, but that seems like an exercise in masochism, even for C++ programming. The official Microsoft Way was that mere mortals program in VB and that real guru types produced the ActiveX controls that were assembled in applications by VB, and you can do the same thing using Matlab or even Python (assembling apps in a scripting environment using ActiveX controls implemented in C++ using MFC or ATL).
But none of these methods are pure native. I have been using Delphi - I have used it with my home-grown GUI framework, with the VCL, and to produce and to use ActiveX controls. I had also been taught Pascal (from Brinch Hansen no less!), so while I consider the Pascal begin-ends so 1970's and a little clumsy in syntax, I have not approached Delphi with the kind of Pascal aversion that keeps others away from it.
So in the end, there is nothing perfect for the Win32 API -- you can do C and the giant switch statement in the style of Petzold, you can engage in the masochism of C++ and what passes for object-oriented programming and frameworks in the MFC/ATL world, you can have the convenience and power of VB 6 but then you have to deal with an archaic bastardized language (Basic), or you can have the convenience, power, and native code of Delphi, and you have to deal with (from the perspective of people from the outside looking in) with a bastardized dialect of Pascal, which was never a favorite in the programming profession, the power and added features of the Delphi dialect of Object Pascal notwithstanding.
But the real reason Delphi is waning is that among the developer community, interest in programming for the Win32 API is waning. Really. One group of people has deserted the Windows API for Java. Another group has bought into Managed Code, WinForms, and C#. The biggest group has abandoned client apps altogether and concentrated on Web apps - for a lot of data entry/fill-in-the-blanks user interfaces, while Web apps are slow and clunky, they are apparently good enough and have all of the goodness of universal access over the Web. A final group is perhaps discouraged of developing client apps for Windows (developers, developers, developers, developers!) because whatever clever kind of shrink wrap app you developed will be Borged by Microsoft.
So Delphi is the best way (still) to do a native-mode Win32 API app, but the in house client app developers have forked into Java and C#, the people who want to reach a broader audience (along with in-house developers) have gone away from client and over to Web apps, and the folks who would be developing the next killer client app for Windows have been discouraged. If no one is developing native-mode Win32 apps, no interest in Delphi.
On one extreme you have Grandma and her computer for doing e-mail; on the other extreme you have a bearded guru; in the middle you have the computing center for the engineering college at a Big-10 university 2-hours drive from the Eastern shore of one of the Great Lakes. We have mainly Windows boxes, a few Unix-y things like Solaris and others for running those Unix-only engineering packages, and some token Linux boxes that are treated like the red-haired child of questionable paternity. No, the folks running the computing center are not Linux-heads, but they are not helpless Grandma either in terms of Linux adoption.
For starters, one cannot plug in one of those USB memory sticks into a Linux PC. Forget about plugging the thing and having it auto-recognized and mounted. Forget even about shell commands to "mount" (that is so DEC 1970's PDP-11) that device. No can do. One is told to log into a Windows station, copy the files to a network share accessible from the Unix side, log out, and then access the files from Linux. No joke.
I mean for crying out loud, a USB memory stick is not like someone's wonder digital camera-scanner-PDA-coffee maker. Everyone is using those memory sticks, and that you can't just plug it into the computer and access it from Linux is completely stupid. Yeah, yeah, our computer center guys are not followers of the True Way or have the Right Distro, but we are not talking about Grandma and her e-mail, we are talking about a bunch of computer admins at the engineering college of a university.
As to the red-headed child effect, there is a dearth of applications on these things. Like why don't they have Open Office/Star Office, Eclipse, and a couple other things on them? Why, because there is no demand, mainly because no one uses these boxes for anything, and we are talking engineering college and university.
So if the failure to adopt Linux indicates stupid people, there are stupid people even in the academic environment by that standard, which suggests Linux has a ways to go in terms of adoption.
Your story is entirely made up based on your fellow techs not wanting to talk to you. If it was real, they would be saying, "Why didn't I think of that!"
The original post should have been made under the Humor than the Science category. Yes, it is wrong and cruel to animals and perhaps a stupid use of tax money as well, and that makes it funny. No, there is nothing wrong to see humor in something that is wrong and cruel because that is one way to make people aware that something wrong and cruel is also stupid.
My favorite comment was from Louis Rukeyser around the time in the early 1980's when the market turned around from the long 70's slump and started the big, long bull market that carried through to 2000. We all heard about the 1920's market crash where people were despondent and jumped out of windows. Well, the market had such a big increase that Rukeyser talked about people "leaping from the sidewalk back up into the upper-story windows."
As an alternative to ActiveX, I am looking at Java Swing. But it will be a while before I get my stuff rewritten, so I have still have an interest in the Windows API and in ActiveX.
The original discussion was that Delphi was good for arranging pretty widgets but if you wanted to develop new widgets you had to drill down to C++. My suggestion was that in some regards Delphi may be a better development environment for ActiveX than the MS C++ tools. I am not saying that Delphi makes ActiveX a breeze, but it makes implementing ActiveX controls tolerable.
The thing is that if you have an underlying operating system, it is helpful to have a language that incorporates the idioms of that operating system into the language itself. C++ is not that language, at least not for Windows, largely because C++ is a platform-independent standard where you can't just stuff features in the language just because they are convenient for Windows, although Microsoft has tried mightily to sneak them in.
Just as the Java language has built in support for the features of the underlying JRE, the two languages that have Windows support built-in are VB and Delphi. Everything from message maps to BSTR's to Variants to Dispatch interfaces are just plain painful mixes of #defines, classes, templates, and wizards in C++ while they are language features in VB and Delphi. I am not saying the C++ is deficient, but the way Microsoft decided to use C++ to use their OS-specific features is painful. The C-language and the raw Windows API are a little verbose, but you can pretty much figure out message loops and giant case statements to see what is going on, but once Microsoft went to COM/ActiveX and threw C++ into the mix, the result was an OS-specific extension to C++ using legal C++ extension mechanisms but done badly. What MS did with VB and what Borland did with Delphi was to add OS-specific features into those respective languages so all of the cruftiness of COM was hidden away.
OK, if we are talking ActiveX and the task at hand is to develop ActiveX controls, what tool does one use? There may be a VB way that is every bit as capable of the Delphi way, but I never looked into it. I have implemented ActiveX controls in Delphi and I have dabbled at implementing ActiveX controls in VC++, and there are things to recommend about Delphi. Look, C++ is a great language, and people tell me that C++ is a great GUI programming language (the parent post topic) if you are using Qt, but there is a certain impedance mismatch between the way MS went about using the C++ extension mechanisms to handle their own COM and ActiveX features and low-level data types. You really think MFC is an example of a good C++ class library? ATL for all that matters?
The Microsoft C++ solution of macros, classes, templates, and wizards is so painful that even Microsoft abandoned it and went with C# and Windows.Forms. Case in point -- C Windows API guru Charles Petzold who stated he could never grasp the MS C++ solutions in the form of MFC and ATL but found himself once again at home with C# Windows.Forms and wrote his next book. C# by the way is OS-specific -- the CLR-specific string type for example is a primitive type in C# rather than something synthesized from classes and templates.
I am not saying Delphi rocks, Delphi rules, blah, blah. All I am saying is that there are reasons for developing and maintaining ActiveX controls because so much in the Windows world supports it, that Delphi makes ActiveX implementation tolerable, and the Delphi Type Library Editor allows extending as well as trimming COM interfaces during the development phase before the COM object is published and the interface set in stone.
Um, don't you think there is an upper bound on the resolution you want on some images? When you start seeing every pimple, hair, and pore, I would think it stops being fantasy-enhancing and starts becoming a clinical rotation in urology or perhaps skin lesions.
ActiveX is a remarkably powerful system for visual component software -- restricted to Windows, yes, but supported by many programming languages ranging from VB through Delphi to Matlab. It is also remarkably crufty so to either develop for it or to use it you end up using some form of "wizards" and automatic code generation. And yes, the use of ActiveX on Web sites, especially malicious Web sites is evil, but such things like Flash and some of the free anti-virus sites are delivered through ActiveX. You could also disable all Internet ActiveX and still be able to use client apps on your computer using ActiveX -- there is hardly a major Windows app that doesn't use ActiveX at some level anyway, so if you are to dismiss ActiveX, there is little you can run under Windows.
Delphi is a remarkably powerful tool for developing ActiveX controls as well, and I like it better than the VS/VC++ approach because I find it to be more flexible in tinkering with COM interfaces until you are ready to publish the control. Delphi ActiveX development requires some faith in wizard-generated code (actually, GUI development in Delphi is remarkably free of wizards and auto-generated code because the VCL base classes have so much of the functionality in them, but ActiveX in Delphi requires it). You will also have to become friends with the Type Library Editor -- the Delphi way of writing and maintaining the IDL code that is the plumbing of COM and ActiveX. The Type Library Editor is buggy and has its quirks, but I find it much more powerful for inspecting and modifying COM interfaces than any of the MS tools.
As the book predates the widespread use of OO, it has a kind of proto-OO or proto-object in the form of "communicational" modules -- collections of functions that operate on some common data organized in a data structure or a name space. The communicational-strength module, of which there is a lot of support in Modula-2 and pre-OO Ada, is kind of like a static or perhaps a singleton object, and the reason for this kind of programming is that back in the day dynamic memory allocation was regarded as being fraught with peril -- either too expensive or too risky in terms of heap fragmentation. Remember also the computer speeds and amount of memory that we had compared to today. Classes and their objects are really the communicational module applied to where you have good heap management algorithms and perhaps even GC as well so you dynamically allocate an allow multiple instances of things and don't worry.
I wish there was a latter edition of "Reliable Software through Composite Design" that addressed OO in some ways, but Martin Fowler's works on refactoring comes close. What I also like about Fowler is that all of his refactorings are reversable so if you find that you have too many code snippets in functions, inlining the code snippets and eliminating the functions is an "allowed" process instead of something you are scolded into never doing.
As to cut-and-paste, whenever you see yourself using the text editor to copy any block of code to replicate the same functionality, you are asking for some kind of trouble at some level. The whole problem with cut-and-paste is that your code is littered with multiple copies of the same function, perhaps with some minor variations, and if you have a bug in that sequence or need to revise that common functionality, it is a lot of work to search it all out in your code and fix it.
On the other hand, many times that repeated sequence of code doesn't lend itself to a proper kind of function and you have so many customizations of that function or flag parameters to that function (Glenford Meyers really lays into flags as function inputs and explains why -- I guess Microsoft didn't read his book when doing the Windows API).
A lot of the idioms of programming languages -- loops, functions, objects, macros, anonymous functions, etc -- are efforts to avoid cut-and-paste, and if you are programming in a weak programming language (dunno, like .bat or perhaps VB), you end up with cut-and-paste to do the job rather than wrestle with the language. At some level, some degree of repeating yourself in code is unavoidable and introducing higher-level languages (closures? functional programming?) to avoid this may be unavailable or perhaps in itself introduce obfuscation if these features are generally not known to your maintenance programmers. So if you are left with some cut and paste, don't sweat it.
OK, OK, I misspelled grammar, but I did not misspell a perjorative word. The man probably had to live down his name everywhere outside some parts of Louisiana, but if a person could claim credit for the Mercury spacecraft blunt body reentry shape, the solid rocket escape tower, and the throttable descent engine on the Lunar Module, I guess there are certain things one could shrug off.
Then there is Java -- long time criticized by RMS but not trumpeted by SUN as being GPL'd. And how about Open Office/StarOffice with a strong SUN contribution?
Yes, FOSS may be an insurgency, but I see it backed/encouraged/funded by big corporate entities who have a stake in its success.
I resent this offense to Catholics. Archbishop Balmer is not some made-up Monty Python character. He is a real person who runs the Diocese of Seattle . . .
On the other hand, we don't know what to call it other than "Buran" because the Soviet Space Transportation System (SSTS?) was never given a proper name other than letting people call it Buran.
By the way, does anyone know what kind of reentry vehicle -- lifting body, straight wing, delta wing -- this thing is?
The Russian and U.S. "capsules" were blunt body reentry vehicles -- some were ballistic, others used an offset CG for a small amount of hypersonic lift to mitigate the G-load and thermal load of reentry. Apollo along with the Russian Zond used offset CG to good effect for reentry from lunar distance. All landed mainly by parachute with either crushable couch struts to mitigate a land impact (Apollo, if they had to go down on land) or braking rockets -- the Russians may have crumped a Soyuz with a landing rocket failure, resulting in broken teeth.
The Shuttle famously uses a delta wing that produces a large amount of lift everywhere from hypersonic reentry down to the subsonic landing speed, and this famously drove up the cost and weight. Max Faget had a straight-wing Shuttle proposal that was equally famously rejected, both on the idea that straight-wing craft have nasty hypersonic handling (think Yeager and his tumble in the X1A, his tumble in the NF104, and Mike Adam's accident in the X15) along with the Air Force wanting the Shuttle to have more hypersonic cross range. But Faget's explanation of the thing is that the straight wing vehicle pancaked in -- it didn't really fly on those wings in hypersonic reentry -- and the straight wing Shuttle was like a cookie cutter applied to an Apollo heat shield, and the control of blunt body reentry with offset CG for some small amount of lift was well tested. But the Faget Shuttle would have to do some kind of Alley Oop maneuver at subsonic speed to transition from a full stall pancake attitude to proper flight on those straight wings, and there was some concern about doing that stall recovery safely.
Then there was the DC-X, the closest thing to a Buck Rogers spaceship from the 1930's comic books, which was to reenter as a blunt body (don't remember if it was nose first or tail first) but land on its tail using rocket thrust. Of course the DC-X on landing is this big mainly empty fuel tank so it is not going that fast before the rockets cut in for landing, but if the rockets fail, you are going to crump that thing.
Perhaps the only new thing under the sun for reentry (although not an orbital reentry) was the Rutans' "shuttle cock" folding tail where they reentered with a stable, high drag configuration and then straightened the tail for atmospheric flight and landing.
NASA wants to go back to the Apollo style reentry and landing but probably on land using parachutes and landing rockets like Soyuz and the Chinese spacecraft. You save big time on weight and there are safety advantages in terms of heat tile damage, but this low-control landing has problems of its own. Do you suppose NASA could wait awhile on the outcome of this Air Force project to see how it turns out?
I also remember a discussion of cancer from someone at the U in biological sciences, the emphasis is that cancer cells are far from normal, not only mutated but rapidly mutating.