I have run into the tentacles of trust for trying to use Visual Studio.NET to run some ActiveX components. You can only do this at Full Trust because, of course, and ActiveX is old windows code flying the Jolly Roger pirate flag. If you try to run such an app on a network drive share (such as a typical university network account setup), it gives the dreaded Security Exception unless you persuade your sysadmin to give the network shares Full Trust.
It is pretty lame -- we run plain ordinary.EXE files off network share drives (the student account logins) but.NET thinks this is this big security hole to run a.NET app that uses an ordinary Windows.DLL or.OCX run from the same place.
I found some books on the subject of.NET security and zones and trusts and blah, blah. Geez, it reads like the Federal Register.
I second everything you said about the Win32 API. The only possible criticism of it is that it has this flat, largish global namespace and that everything has to be be a window handle object into which you stuff everything through that narrow WinProc() interface with the zillion message codes.
But the Windows API is essentially, as you say, OO-lite for C. Of course everyone wants to use C++ style OO these days, and that is where the trouble starts (MFC followed by ATL are increased levels of obfuscation).
The idea is that you make a window handle a field variable of an object class, add some methods to create and destroy and manage the window handle, and then windows suddenly become objects in your class framework. Oh, if it were only that easy!
What is it that makes a Windows class framework so hard that we tolerate POS like MFC and ATL? One problem is that it is so easy to blow away a window handle -- it can be blown away with DestroyWindow() if you expose the window handle through a Get() function, it can be blown away when the parent window handle gets destroyed, and it can even vanish during window handle create (CreateWindow() can return a NULL HWND if your WinProc decides to bail on getting the WM_CREATE message). So it is hard to synchronize the lifetime of the window handle with the lifetime of the object containing it.
The next problem is that you would like your C++ object to hook into messages sent to the window handle object. Since there are a zillion messages, making a master base class with a zillion virtual functions is too clumsy. The MFC solution is these ugly MESSAGE_MAP macros to generate message dispatch jump tables, for which I have never seen a satisfactory answer to how they work. My own solution is to come up with base classes that use a switch statement to dispatch the commonly-used messages to virtual methods, and to have a virtual WndProc() method to which you can hook more messages using another switch statement.
The final bit of ugly is that a lot of messages that you would want (did I get pressed?) get sent as WM_COMMAND messages to the parent window handle. What I see the Borland VCL do is that you have parent-child relationships among the VCL classes that mirror the parent-child of the underlying window handles, and that a parent class resends WM_COMMAND messages as CM_ (really WM_USER) messages back to the child window handle where the child framework class hooks into it. Baroque, yes, but they had to find some way to do it.
But what is this business of getting away from the Windows API in.NET? Windows.Forms famously exposes window handles and displace contexts (HDC's) along with giving you a WinProc() method to hook Windows messages. There is a lot of stuff in the Windows API not supported in.NET (multi-media, screen scrolls), combined with the availability of the HWND and HDC from a Windows.Forms class, and you get the picture. How in the heck are they planning on weaning us from Win32 when Windows.Forms entices, tempts, and cajoles us to hook into Win32 to do all the stuff we are doing in our Windows apps that MS hasn't implemented as a Windows.Forms class or method?
Geez Louis! 99.99 percent of the time you can tell an e-mail is spam/a virus message/etc just by looking at the subject heading. The freakin trouble is that under certain circumstances you can't delete the freakin thing without activating the virus/Trojan/worm payload.
No, locking your doors won't make you a 100 percent secure -- you could open the door to an axe murderer. But Outlook is leaving the freakin front door wide open with a big sign saying, "hey, no one is home!"
Should I be free to have the front door wide open to get some air? Sure. But tell me one circumstance, one lousy circumstance, where you ever want to run a script or an EXE from an e-mail. And no, I don't mean an attachment, I mean this freakin auto-run stuff just for previewing an e-mail.
About inhaling fumes -- cars may be giving off odorless forms of pollution, but by and large unburned hydrocarbons (like from a flat head lawnmower engine) smell, and I can't smell cars anymore. I remember waiting in traffic and wondering "what is that smell?" and it was a driver 4 cars up hanging a cigarette out the window. I imagine that mopeds and lawnmowers are putting out more pollution than cars.
As to modes of transportation, at various times I walk, drive, bicycle, and take the bus. Mr./Ms. Bicyclist, do you yield to pedestrians? I can't count the number of times on foot that I have almost been smashed into by dudes on bikes running red lights against the walk light I have patiently waited for across a busy campus intersection. Oh, and since I don't bicycle that much, I am probably much heavier than you are, and if you ever hit me on your bike you may not knock me down, and you will probably get me really mad at you and since I weigh more I will get the idea that I can take you on.
I have seen these military convoys on the Interstate, and when most of us want to go 65 these guys are creeping along at 50. From the noise coming from the HMMV's, it sounds like these things are geared for off road use and that 50 MPH is about all those things can do on the highway. In the convoy there were all these poor dudes in HMMV's, and there were their officers riding in olive drap painted Suburbans (with 4WD hubs, but cruising comfortably in 2WD on the highway).
Yeah, the military-style Hummer looks like one mean vehicle, and the civilian one is so wide it has to have those truck cab roof lights on it, and the people who own one thing they are hot sh*t like that California governer dude. But if I had to ride in a military convoy, would I want to ride with kids in the noisy, bumpy school bus, or would I want to ride with the teachers in the smooth, car-like Suburban?
So then they come out with the H2, which is not really even a Hummer or anything like the HMMV -- the thing is a freakin' Suburban (or Tahoe or whatever) with some stupid looking grill on it to make you believe that Governer Arnold drives one of these things but he doesn't. But then a Suburban is a heck of a lot more comfortable than a Hummer, so why doesn't a person buy a Suburban rather than the Suburban which is styled to look like a HMMV, which is a vehicle on the same level as a school bus - something you don't want to ride in unless you are forced to by being one of the enlisted guys?
I had this idea of putting dipoles in a kind of helix on a stick and spinning it. The idea is a kind of radar-reflecting screw thread -- spin it one way it looks like you are going fast, spin it the other way, it looks like you are going slow.
A colleague tested built one and tested it and said that he got a speed reading from a Doppler radar, although the real test would be to put it on a moving cart and spin it and see if you have a slower reading.
I did some analysis on the thing, and if I remember right, if you illuminated it with linear polarization it reflected back at you in circular polarization. A cop radar spoofer won't get any DOD funding, but I had thought of proposing to put it on the nose of a cruise missile as a Doppler radar spoofer (and a way to get some grant money), but I figured that the polarization change in the reflection would give it away so I decided no one would fund it.
Ripping off Longhorn pixel by pixel? Well, that's your problem right there!
Story I heard is that they are going to go to some kind of pixel-scale independent vector graphics scheme (can you imagine reading Small Fonts on a 4096 by 2048 or whatever ultra-resolution LCD monitor?). Also, they (finally? This was promised for.NET/GDI+.) are going to synchronize screen updates with vertical retrace to get rid of all that flicker and tear when you are twiddling your thumbs waiting for an install program to complete and have nothing to do but stare at the %complete number get updated. In the style of OS X, every widget will have its own frame buffer for repaints, and they will blit to the graphics card during vertical blank.
Don't know if they are worrying about Linux, but they seem to be looking over their shoulder at the Web browser as the desktop and are trying to offer some reason to do stuff on the client (better graphics) than over the network.
Yeah, I have a copy of Man Plus, and "they" (the dudes at whatever the NASA-like thing) remove the poor guy's wing-wang because I suppose that part can't be exposed to vacuum.
Actually, writing direct to the Windows API in C using the "giant switch" statement in your WinProc to respond to messages is pretty straightforward -- don't look at the VC++ generated WinApp as an example because everything Microsoft does is convoluted and crufty -- where did those guys ever learn to program? Go straight to Petzold and he will walk you through it.
But we are all supposed to be using C++ and Object Oriented programming, and the Microsoft OO framework is this abomination called MFC (I am beginning to sound like the 2nd and 3rd Dune novels. Abomination! Abomination!). The dudes at Microsoft had trouble programming cleanly in C, and turn them lose in C++? MFC is this ugly mess of typedefs, macros, classes, templates, AND wizard-generated code. Abomination!
If you want to pound out a quick GUI program, you are much better off in VB 6 than to wade through MFC. All of the Windows stuff, including support for COM objects is designed into the language rather than (Abomination!) the way it is in MFC. I would just as soon use the Borland languages (I use Delphi -- I am told C++ Builder is pretty much the same) to generate COM and ActiveX objects and then use them from VB 6.
So don't blame the wanna-be programmers for not understanding C++ and being lazy and using VB 6. Blame Microsoft for not knowing how to program in C++ to develop a usable framework for it.
If Open Office uses its own UI system, shouldn't that make porting easier? For example, if something is tied to the Windows API, porting can be a real pain because you have to find equivalent ways to do things in other systems, and the Windows calls can be sprinkled throughout the code. If it uses its own UI and renders its own widgets, it seems that all you need to do is to port versions of the UI modules to the different systems and then it would target its own UI. You describe Open Office as being its own Java, and the way you port Java is to have the Java VM implemented in the different places.
Yes, the app was at fault because that is what crashed. But the Windows API is famous for weak defensive programming practices, and while the app did something "wrong", often times you get crashes in API functions, which is something that shouldn't be happening.
Oh yeah, why was Stalin demanding a second front (i.e. Italy, but the Germans stalled the American and British progress by "heading for the hills", Dieppe, where Canadian commandos valiantly failed, and finally Normandy)? I guess he could have handled the whole thing a alone?
Never mind, we asked for Stalin's help to fight Japan. Which he did. After the atomic bombs were dropped.
The computer-controlled lab equipment is for environmental testing -- to count how many people have peed in the swimming pool, or if someone has taken a dump on the banks of the Charles River.
The medical test is for counting how many hand-squeeze reps a patient with Lou Gehrig's disease can do before they tire out.
I don't think either application merits a "clean-room" design of an embedded system (what you would want controlling, say, a radiation therapy machine -- do you really want to trust a SUN and Solaris for something like that?).
There was a time when it was the right-wing nuts who were charging every kind of conspiracy and risk to health. Remember fluoride in water and how the issue was lampooned in Dr. Strangelove?
I had a libertarian friend who liked to poke fun both at the right-wing nuts who were upset about fluoride along with the liberals who were in a big huff about how bad the conservatives were. He offered up the "fluoron" theory: fluorescent light bulbs emitted "fluorons", subatomic particles smaller than an electron so they were not yet detected by science, but they were shaped like a hammer and sickle (the Soviet emblem), and if one penetrated your skull it would explode a brain cell and turn it into a Communist idealogue. Light exposure (small number of Commie brain cells) turned you into a liberal while heavy doses turned you into a pinko -- and fluorescent lights were everywhere in public schools and government buildings.
I guess we have come full circle and now the loony Left has become what the loony Right once was.
At least I could read flow charts. The problem with flow charts is also the problem that Structured Programming (an loop invariant analysis and all that jive) tried to solve. If the flow chart fits on one page it is good, but any useful system has a flow chart that could cover walls and walls.
I would like very much to have a tool like UML to explain my designs -- I am a very visual/graphical type person. The trouble is that UML has so many kinds of lines, arrow heads, and connector icons that I can't make heads or tails of it. Even if I could learn the UML iconography and calligraphy, the representation is so busy that it seems to be useless.
I know of two people I know doing "shrink-wrap" apps. My friend is doing this medical testing freeware/shareware deal. My sister-in-law is doing some kind of automating of chemical lab tests that she is selling through some lab equipment company. These are small markets that are unlikely to be absorbed or assimilated by MS any time soon. Both are using VB 6.0 and don't have any hurry to change any time soon.
.NET might make sense in "the enterprise" where your IT dept makes everyone run XP Professional and goes around and loads the.NET runtime. Other than that, no one has the.NET runtime because Windows does not come with it. Until the.NET runtime becomes more ubiquitous, I don't why these people should switch from VB 6.
The deal is that "they" (those astrophysicists who worry about spiral galaxies revolving like phonograph records) need cold Dark Matter -- even neutrinos with mass are zinging around too much to be roped in to galactic halos.
In terms of medicine and clinical evidence of a cause of disease, you have at one end non-resistant bacterial infection and penicilin. You give the patient a shot of penicilin and they improve -- a lot and quickly. The improvement shows up in cultures and in symptoms of the patient. The differential diagnosis that your sore throat is not bacterial is that it does not respond to penicilin.
At the other end, you have statin (cholesterol-lowering drug) therapy for heart attack patients. You give them the drug, there is a dramatic reduction in cholesterol, but in a motivated patient you are going to see them diet to take weight off and do other lifestyle changes. And then you wait and see if they stay just about the same or if they die from another heart attack down the road.
I have the impression that the anti-retrovirals are somewhere in the middle. Now I know that antibiotics are not a simple, fast cure for TB -- the TB bacilis walls itself off and is slow growing and is difficult to treat with antibiotics. On the other hand, I have heard there is some controversy whether the theraputic effect of statin medicine is the reduction in cholesterol -- there is some discussion that statins may combat hidden sources of inflamation that may be underlying a lot of artery disease -- the inflamation response promoting plaques and blood clots and such.
Also, my quick Google indicates that anti-retrovirals are given to otherwise healthy people with positive HIV tests, and there is some emerging controversy about whether this is the way to go.
I also think Duesberg has something constructive to say that AIDS appears to be a different disease in American gay men, in hemophiliacs, and in people in Africa. I won't repeat all the stuff about different opportunistic infections, different times from HIV antibody to developing AIDS, different standards for diagnosing the disease. The one point I will repeat is the of all the risk groups, the hemophiliacs seem to live much longer with HIV, and this is a group of not very healthy people to begin with. Duesberg points to major increase in the mortality of hemophiliacs, and he correlates that with the introduction of widespread use of AZT to treat HIV infection in those patients.
With any other disease we admit there is controversy in the scientific understanding, controversy in clinical treatment, and the modern way is to let the public know about this and for doctors to let patients make informed decisions about their own treatment.
With any other disease we would have Duesberg say "AZT does more harm than good, and at the very least otherwise healthy people shouldn't take it until we have a better understanding of the differential prognosis for HIV for different categories of patients." A patient could see the doctor and say "that Duesberg fellow says AZT is bad" and the doctor could say "there is some controvery on the subject, but I have read journal articles saying there is a good improvement for patients in your condition and I recommend you take it" and then the patient can make an informed decision.
No, mention Duesberg and veins bulge out of the neck, and eyes pop out of the skull, and people launch into attacks "He is a nut! He is a washed-up jealous scientist! He is a deceiver!" I have yet to see a refutation of this position that 1) addresses the specific points he raises (go hear him talk someplace -- I have heard the rantings of pseudo-scientists before, and while Duesberg may be in error, his arguments are well-structured and deserving of proper debate), and 2) doesn't make a gratuitis jab at his reputation or launch into an ad-hominem attack.
How about one of the "real scientists" going out and give a talk "The HIV hypothesis: what we know, the arguments raised by skeptics, and what we still need to learn." No, the real scientists sputter that Duesberg is so far out they don't even know how to respond, and if scientists spent all their time refuting quacks, they would get any work done. I think there is r
Rhere is something scientifically strange about HIV/AIDS that it doesn't fit patterns of other viral illnesses. Secondly, any discussion of HIV/AIDS is gets so politicized that you cannot discuss competing hypothesis with a lot of protestors shoving signs down your throat.
I know that every crackpot thinks they are Galileo fighting the Inquisition, but there are times when science initially gets things plain wrong. This family of diseases related to Mad Cow Disease was for a long time attributed to "slow viruses" and now they think that prions (proteins in a "wrong" conformation) are the infectious agent, but the case for prions is not absolutely airtight and maybe they will come up with some refinement to the theory down the road.
There was a time when viruses were a hot topic in cancer research, but as to cancer, scientists are as stumped as ever. Nixon's War on Cancer funded a lot of virologists -- Duesberg was one; others included Fauci and Gallo. OK, maybe Duesberg has a big ego, maybe he is jealous that his compatriots have taken center stage.
Duesberg lectured about his bugbear AZT, originally a cancer chemotherapy drug, and I asked him in question period about the newer anti-reverse transcription drugs which are more tailored to retroviruses rather than AZT which is a broad-spectrum DNA messer-upper. If an anti-retrovirus drug helps treat people with AIDS symptoms, it strongly suggests a retro virus involved, even if how HIV infection kills immune cells and so long after infection and after antibodies indicating an immune response are present is still a mystery.
He explained that AIDs drugs suppress the bone marrow, and when you go on your "drug holiday" the immune cells rebound, so I suppose he was talking about AZT instead of the newer drugs. A physician-type person sitting next to me was shaking his head.
So I went home and Googled to get info on the anti-retroviral drugs. I was expecting to see at least anecdotal evidence that you can give anti-retrovirals to an AIDs patient at death's door and watch that fellow's CD4 count rebound and the person leap out of bed. Guess what: all the Web sites I found on the anti-retrovirals were just as mealy-mouthed about when to give them, how well the work -- so much for all of that clinical experience.
With bacterial illness and antibiotics, the clinical results are simply amazing, or they were amazing 40 years ago before widespread resistance came on the scene. I get the impression that anti-retrovirals are given to healthy people with positive HIV tests, and then they give people these bogus PCR-based "viral-load" tests to show them that the anti-retroviral drugs are working (kind of like the blinking lights in the car wash telling you that you are getting the spray wax you paid for).
Lets talk about the clinical experience you mention. If a reverse-transcription blocking drug has a dramatic effect on an AIDS patient, that strongly suggests that some kind of retrovirus is involved and Duesberg's "retroviruses are harmless passengers" is wrong.
What happens when you give an anti-retroviral to how sick of an AIDS patient, and how less sick does this AIDS patient become? If Duesberg is full of it, there should be an answer to this question. None of this "viral load" PCR test car wash blinking lights stuff -- what happens to CD4 counts and to AIDS symptoms?
There are several different observations of dark matter. If a spiral galaxy were like the Solar System, the stars on the fringes would orbit much more slowly than stars near the core. It turns out that spiral galaxies tend to spin like a freakin' phonograph record, which means there must be a lot of unseen mass in the spherical halo in which the spiral arm disk is embedded. Than you have galaxy clusters which tend to mill around much faster than the visible mass accounts for -- if those galaxy clusters are gravitationally bound, there must be even more hidden mass. Finally, Inflation Cosmology predicts that the Universe must have enough mass to keep it from flying apart forever, and that is even more mass.
The hidden mass could be weakly interacting particles like neutrinos, which have either zero or very small rest mass, but have mass just like photons when they are zinging around according to E=mc^2. It could be stuff like frozen stars and rogue planets roaming around. The trouble with neutrinos is they are "hot" dark matter -- they contribute to gravity, but they are zinging around that they cannot congregate in a galaxy halo to get the phonograph record effect. The trouble with dark stars and rogue planets is 1) they are not turning up enough in searches, and 2) there are theoretical limits on the amount of baryonic matter (protons and sh*t made from protons like planets and stars and people and stuff) on account of the Big Bang and the abundance ratios of light elements.
The $60,000 dollar question is whether cold dark matter exists -- particles much more massive than a neutrino so they aren't zinging around so much that they can congregate in galaxies, but non-baryonic (i.e. some form of matter unknown to physics) but also weakly interacting like neutrinos (really hard to detect).
I always thought the notion that galaxies have strange orbital mechanics and that low and behold there is mystery matter was kind of bogus, but fellow Slashdotters tell me that MOND (a theory that there is no dark matter but instead a fudge factor in Newton's law at large distances) is weak against the data, and hey, the neutrino, a bookkeeping term to account for missing momentum in nuclear reactions was kind of made-up too, but apparently they can be detected.
This business of the electron-positron energies is also an indirect observation just like the galaxy as a phonograph record, but it is a different data point, and hey, it may lead somewhere.
Actually, psychology made sense because he was talking about how human prejudices, mental limitations, and tendencies should influence user interface design. When we think psychology we thing Freud or TV's Bob Hartley, but a lot of psychology deals with mid-level mental functions (vision, hearing, airplane cockpit workload) instead of higher-level mental functions (how my mom was too cheap to spring for a Barbie doll for my sister and how that affects my sister in adult life).
Its too bad if Donald Norman reverted to "Design" because the book goes deeper than just design (traditionally the relationship of function to aesthetics).
Earnestness, lack of any sense of humor or irony -- last refuge of the terminally virtuous.
It is pretty lame -- we run plain ordinary .EXE files off network share drives (the student account logins) but .NET thinks this is this big security hole to run a .NET app that uses an ordinary Windows .DLL or .OCX run from the same place.
I found some books on the subject of .NET security and zones and trusts and blah, blah. Geez, it reads like the Federal Register.
But the Windows API is essentially, as you say, OO-lite for C. Of course everyone wants to use C++ style OO these days, and that is where the trouble starts (MFC followed by ATL are increased levels of obfuscation).
The idea is that you make a window handle a field variable of an object class, add some methods to create and destroy and manage the window handle, and then windows suddenly become objects in your class framework. Oh, if it were only that easy!
What is it that makes a Windows class framework so hard that we tolerate POS like MFC and ATL? One problem is that it is so easy to blow away a window handle -- it can be blown away with DestroyWindow() if you expose the window handle through a Get() function, it can be blown away when the parent window handle gets destroyed, and it can even vanish during window handle create (CreateWindow() can return a NULL HWND if your WinProc decides to bail on getting the WM_CREATE message). So it is hard to synchronize the lifetime of the window handle with the lifetime of the object containing it.
The next problem is that you would like your C++ object to hook into messages sent to the window handle object. Since there are a zillion messages, making a master base class with a zillion virtual functions is too clumsy. The MFC solution is these ugly MESSAGE_MAP macros to generate message dispatch jump tables, for which I have never seen a satisfactory answer to how they work. My own solution is to come up with base classes that use a switch statement to dispatch the commonly-used messages to virtual methods, and to have a virtual WndProc() method to which you can hook more messages using another switch statement.
The final bit of ugly is that a lot of messages that you would want (did I get pressed?) get sent as WM_COMMAND messages to the parent window handle. What I see the Borland VCL do is that you have parent-child relationships among the VCL classes that mirror the parent-child of the underlying window handles, and that a parent class resends WM_COMMAND messages as CM_ (really WM_USER) messages back to the child window handle where the child framework class hooks into it. Baroque, yes, but they had to find some way to do it.
But what is this business of getting away from the Windows API in .NET? Windows.Forms famously exposes window handles and displace contexts (HDC's) along with giving you a WinProc() method to hook Windows messages. There is a lot of stuff in the Windows API not supported in .NET (multi-media, screen scrolls), combined with the availability of the HWND and HDC from a Windows.Forms class, and you get the picture. How in the heck are they planning on weaning us from Win32 when Windows.Forms entices, tempts, and cajoles us to hook into Win32 to do all the stuff we are doing in our Windows apps that MS hasn't implemented as a Windows.Forms class or method?
No, locking your doors won't make you a 100 percent secure -- you could open the door to an axe murderer. But Outlook is leaving the freakin front door wide open with a big sign saying, "hey, no one is home!"
Should I be free to have the front door wide open to get some air? Sure. But tell me one circumstance, one lousy circumstance, where you ever want to run a script or an EXE from an e-mail. And no, I don't mean an attachment, I mean this freakin auto-run stuff just for previewing an e-mail.
As to modes of transportation, at various times I walk, drive, bicycle, and take the bus. Mr./Ms. Bicyclist, do you yield to pedestrians? I can't count the number of times on foot that I have almost been smashed into by dudes on bikes running red lights against the walk light I have patiently waited for across a busy campus intersection. Oh, and since I don't bicycle that much, I am probably much heavier than you are, and if you ever hit me on your bike you may not knock me down, and you will probably get me really mad at you and since I weigh more I will get the idea that I can take you on.
I like "aksed" and "larnyx."
I have seen these military convoys on the Interstate, and when most of us want to go 65 these guys are creeping along at 50. From the noise coming from the HMMV's, it sounds like these things are geared for off road use and that 50 MPH is about all those things can do on the highway. In the convoy there were all these poor dudes in HMMV's, and there were their officers riding in olive drap painted Suburbans (with 4WD hubs, but cruising comfortably in 2WD on the highway).
Yeah, the military-style Hummer looks like one mean vehicle, and the civilian one is so wide it has to have those truck cab roof lights on it, and the people who own one thing they are hot sh*t like that California governer dude. But if I had to ride in a military convoy, would I want to ride with kids in the noisy, bumpy school bus, or would I want to ride with the teachers in the smooth, car-like Suburban?
So then they come out with the H2, which is not really even a Hummer or anything like the HMMV -- the thing is a freakin' Suburban (or Tahoe or whatever) with some stupid looking grill on it to make you believe that Governer Arnold drives one of these things but he doesn't. But then a Suburban is a heck of a lot more comfortable than a Hummer, so why doesn't a person buy a Suburban rather than the Suburban which is styled to look like a HMMV, which is a vehicle on the same level as a school bus - something you don't want to ride in unless you are forced to by being one of the enlisted guys?
A colleague tested built one and tested it and said that he got a speed reading from a Doppler radar, although the real test would be to put it on a moving cart and spin it and see if you have a slower reading.
I did some analysis on the thing, and if I remember right, if you illuminated it with linear polarization it reflected back at you in circular polarization. A cop radar spoofer won't get any DOD funding, but I had thought of proposing to put it on the nose of a cruise missile as a Doppler radar spoofer (and a way to get some grant money), but I figured that the polarization change in the reflection would give it away so I decided no one would fund it.
Story I heard is that they are going to go to some kind of pixel-scale independent vector graphics scheme (can you imagine reading Small Fonts on a 4096 by 2048 or whatever ultra-resolution LCD monitor?). Also, they (finally? This was promised for .NET/GDI+.) are going to synchronize screen updates with vertical retrace to get rid of all that flicker and tear when you are twiddling your thumbs waiting for an install program to complete and have nothing to do but stare at the %complete number get updated. In the style of OS X, every widget will have its own frame buffer for repaints, and they will blit to the graphics card during vertical blank.
Don't know if they are worrying about Linux, but they seem to be looking over their shoulder at the Web browser as the desktop and are trying to offer some reason to do stuff on the client (better graphics) than over the network.
Yeah, I have a copy of Man Plus, and "they" (the dudes at whatever the NASA-like thing) remove the poor guy's wing-wang because I suppose that part can't be exposed to vacuum.
But we are all supposed to be using C++ and Object Oriented programming, and the Microsoft OO framework is this abomination called MFC (I am beginning to sound like the 2nd and 3rd Dune novels. Abomination! Abomination!). The dudes at Microsoft had trouble programming cleanly in C, and turn them lose in C++? MFC is this ugly mess of typedefs, macros, classes, templates, AND wizard-generated code. Abomination!
If you want to pound out a quick GUI program, you are much better off in VB 6 than to wade through MFC. All of the Windows stuff, including support for COM objects is designed into the language rather than (Abomination!) the way it is in MFC. I would just as soon use the Borland languages (I use Delphi -- I am told C++ Builder is pretty much the same) to generate COM and ActiveX objects and then use them from VB 6.
So don't blame the wanna-be programmers for not understanding C++ and being lazy and using VB 6. Blame Microsoft for not knowing how to program in C++ to develop a usable framework for it.
What else is known about its private UI setup?
Yes, the app was at fault because that is what crashed. But the Windows API is famous for weak defensive programming practices, and while the app did something "wrong", often times you get crashes in API functions, which is something that shouldn't be happening.
Never mind, we asked for Stalin's help to fight Japan. Which he did. After the atomic bombs were dropped.
The medical test is for counting how many hand-squeeze reps a patient with Lou Gehrig's disease can do before they tire out.
I don't think either application merits a "clean-room" design of an embedded system (what you would want controlling, say, a radiation therapy machine -- do you really want to trust a SUN and Solaris for something like that?).
I had a libertarian friend who liked to poke fun both at the right-wing nuts who were upset about fluoride along with the liberals who were in a big huff about how bad the conservatives were. He offered up the "fluoron" theory: fluorescent light bulbs emitted "fluorons", subatomic particles smaller than an electron so they were not yet detected by science, but they were shaped like a hammer and sickle (the Soviet emblem), and if one penetrated your skull it would explode a brain cell and turn it into a Communist idealogue. Light exposure (small number of Commie brain cells) turned you into a liberal while heavy doses turned you into a pinko -- and fluorescent lights were everywhere in public schools and government buildings.
I guess we have come full circle and now the loony Left has become what the loony Right once was.
I would like very much to have a tool like UML to explain my designs -- I am a very visual/graphical type person. The trouble is that UML has so many kinds of lines, arrow heads, and connector icons that I can't make heads or tails of it. Even if I could learn the UML iconography and calligraphy, the representation is so busy that it seems to be useless.
The deal is that "they" (those astrophysicists who worry about spiral galaxies revolving like phonograph records) need cold Dark Matter -- even neutrinos with mass are zinging around too much to be roped in to galactic halos.
For a high-speed Pentium you will want a Pentium III. The Pentium 4 is only rated full speed.
At the other end, you have statin (cholesterol-lowering drug) therapy for heart attack patients. You give them the drug, there is a dramatic reduction in cholesterol, but in a motivated patient you are going to see them diet to take weight off and do other lifestyle changes. And then you wait and see if they stay just about the same or if they die from another heart attack down the road.
I have the impression that the anti-retrovirals are somewhere in the middle. Now I know that antibiotics are not a simple, fast cure for TB -- the TB bacilis walls itself off and is slow growing and is difficult to treat with antibiotics. On the other hand, I have heard there is some controversy whether the theraputic effect of statin medicine is the reduction in cholesterol -- there is some discussion that statins may combat hidden sources of inflamation that may be underlying a lot of artery disease -- the inflamation response promoting plaques and blood clots and such.
Also, my quick Google indicates that anti-retrovirals are given to otherwise healthy people with positive HIV tests, and there is some emerging controversy about whether this is the way to go.
I also think Duesberg has something constructive to say that AIDS appears to be a different disease in American gay men, in hemophiliacs, and in people in Africa. I won't repeat all the stuff about different opportunistic infections, different times from HIV antibody to developing AIDS, different standards for diagnosing the disease. The one point I will repeat is the of all the risk groups, the hemophiliacs seem to live much longer with HIV, and this is a group of not very healthy people to begin with. Duesberg points to major increase in the mortality of hemophiliacs, and he correlates that with the introduction of widespread use of AZT to treat HIV infection in those patients.
With any other disease we admit there is controversy in the scientific understanding, controversy in clinical treatment, and the modern way is to let the public know about this and for doctors to let patients make informed decisions about their own treatment.
With any other disease we would have Duesberg say "AZT does more harm than good, and at the very least otherwise healthy people shouldn't take it until we have a better understanding of the differential prognosis for HIV for different categories of patients." A patient could see the doctor and say "that Duesberg fellow says AZT is bad" and the doctor could say "there is some controvery on the subject, but I have read journal articles saying there is a good improvement for patients in your condition and I recommend you take it" and then the patient can make an informed decision.
No, mention Duesberg and veins bulge out of the neck, and eyes pop out of the skull, and people launch into attacks "He is a nut! He is a washed-up jealous scientist! He is a deceiver!" I have yet to see a refutation of this position that 1) addresses the specific points he raises (go hear him talk someplace -- I have heard the rantings of pseudo-scientists before, and while Duesberg may be in error, his arguments are well-structured and deserving of proper debate), and 2) doesn't make a gratuitis jab at his reputation or launch into an ad-hominem attack.
How about one of the "real scientists" going out and give a talk "The HIV hypothesis: what we know, the arguments raised by skeptics, and what we still need to learn." No, the real scientists sputter that Duesberg is so far out they don't even know how to respond, and if scientists spent all their time refuting quacks, they would get any work done. I think there is r
I know that every crackpot thinks they are Galileo fighting the Inquisition, but there are times when science initially gets things plain wrong. This family of diseases related to Mad Cow Disease was for a long time attributed to "slow viruses" and now they think that prions (proteins in a "wrong" conformation) are the infectious agent, but the case for prions is not absolutely airtight and maybe they will come up with some refinement to the theory down the road.
There was a time when viruses were a hot topic in cancer research, but as to cancer, scientists are as stumped as ever. Nixon's War on Cancer funded a lot of virologists -- Duesberg was one; others included Fauci and Gallo. OK, maybe Duesberg has a big ego, maybe he is jealous that his compatriots have taken center stage.
Duesberg lectured about his bugbear AZT, originally a cancer chemotherapy drug, and I asked him in question period about the newer anti-reverse transcription drugs which are more tailored to retroviruses rather than AZT which is a broad-spectrum DNA messer-upper. If an anti-retrovirus drug helps treat people with AIDS symptoms, it strongly suggests a retro virus involved, even if how HIV infection kills immune cells and so long after infection and after antibodies indicating an immune response are present is still a mystery.
He explained that AIDs drugs suppress the bone marrow, and when you go on your "drug holiday" the immune cells rebound, so I suppose he was talking about AZT instead of the newer drugs. A physician-type person sitting next to me was shaking his head.
So I went home and Googled to get info on the anti-retroviral drugs. I was expecting to see at least anecdotal evidence that you can give anti-retrovirals to an AIDs patient at death's door and watch that fellow's CD4 count rebound and the person leap out of bed. Guess what: all the Web sites I found on the anti-retrovirals were just as mealy-mouthed about when to give them, how well the work -- so much for all of that clinical experience.
With bacterial illness and antibiotics, the clinical results are simply amazing, or they were amazing 40 years ago before widespread resistance came on the scene. I get the impression that anti-retrovirals are given to healthy people with positive HIV tests, and then they give people these bogus PCR-based "viral-load" tests to show them that the anti-retroviral drugs are working (kind of like the blinking lights in the car wash telling you that you are getting the spray wax you paid for).
Lets talk about the clinical experience you mention. If a reverse-transcription blocking drug has a dramatic effect on an AIDS patient, that strongly suggests that some kind of retrovirus is involved and Duesberg's "retroviruses are harmless passengers" is wrong.
What happens when you give an anti-retroviral to how sick of an AIDS patient, and how less sick does this AIDS patient become? If Duesberg is full of it, there should be an answer to this question. None of this "viral load" PCR test car wash blinking lights stuff -- what happens to CD4 counts and to AIDS symptoms?
The hidden mass could be weakly interacting particles like neutrinos, which have either zero or very small rest mass, but have mass just like photons when they are zinging around according to E=mc^2. It could be stuff like frozen stars and rogue planets roaming around. The trouble with neutrinos is they are "hot" dark matter -- they contribute to gravity, but they are zinging around that they cannot congregate in a galaxy halo to get the phonograph record effect. The trouble with dark stars and rogue planets is 1) they are not turning up enough in searches, and 2) there are theoretical limits on the amount of baryonic matter (protons and sh*t made from protons like planets and stars and people and stuff) on account of the Big Bang and the abundance ratios of light elements.
The $60,000 dollar question is whether cold dark matter exists -- particles much more massive than a neutrino so they aren't zinging around so much that they can congregate in galaxies, but non-baryonic (i.e. some form of matter unknown to physics) but also weakly interacting like neutrinos (really hard to detect).
I always thought the notion that galaxies have strange orbital mechanics and that low and behold there is mystery matter was kind of bogus, but fellow Slashdotters tell me that MOND (a theory that there is no dark matter but instead a fudge factor in Newton's law at large distances) is weak against the data, and hey, the neutrino, a bookkeeping term to account for missing momentum in nuclear reactions was kind of made-up too, but apparently they can be detected.
This business of the electron-positron energies is also an indirect observation just like the galaxy as a phonograph record, but it is a different data point, and hey, it may lead somewhere.
Its too bad if Donald Norman reverted to "Design" because the book goes deeper than just design (traditionally the relationship of function to aesthetics).
Thanks for the heads up -- I had confused Innes with Harry Shearer, who was instead part of the "Spinal Tap" project.