Ask Slashdot: What Do You Consider Elegant Code?
OK, I missed that it was trying to implement memory-mapped I/O, because I only looked at the "Duff's Device" code.
The rest still applies, with apologies for the ranting.
Ask Slashdot: What Do You Consider Elegant Code?
Um - maybe my eyes are just skipping something - but isn't that (Wikipedia) implementation completely 'bugged'?
I.e. it seems that it only increments the source "from" pointer, not the destination "to" pointer?
Not to mention that the idea that "tricky" code is "elegant" is pretty much completely backwards. Coding in odd ways just to be tricky, or to minimize lines of source code for the sake of 'compactness', or pretty much any other 'clever coding' goal - tends to create buggy code that is hard to debug and hard for anyone else to understand if they need to modify it. As evidenced by the many good programmers here who looked at that "clever" code and didn't notice that it continuously overwrites the same location in memory...
It was such 'cleverness' that led to the bad reputation of 'goto' from people writing spaghetti code. At least in the early days of programming, programmers had the excuse of slow processors and limited memory and poor compilers, to justify coming to equate 'tricky' with "clever and elegant". Unless you're coding for some ultra-tiny system, such thinking is simply obsolete, and anyone engaging in it ought to be embarrassed at their misguided priorities.
Elegant code is functionally correct, will create a fast/efficient/compact run-time (assuming a decent compiler / interpreter and depending on settings appropriate to the project), and above all must be READABLE and MAINTAINABLE.
Where old-time programmers abused GOTO, modern C++ programmers tend to abuse inheritance and templates, creating code that is often nearly impossible to follow even with the aid of a good development/debugging environment - let alone follow by reading the static source code. And the sad thing is, they think they're engaging in "good programming" even as they create incomprehensible, unmaintainable monstrosities.
Measles Outbreak In NYC
Just tell them that the vaccine is fully organic, low sodium, fat free and gluten free.
Also, it's got Electrolytes.
Fishing Line As Artificial "Muscle"
One of my personal long standing predictions has been that when we finally get really cheap "good enough" robot muscles, personal robots will take off much like PCs did, even if the muscles have significant problems to be worked around.
I presume that with use these muscles will stretch and lose strength. But that's OK - just pair them with control software that adapts automatically. If the muscles get too weak, replace them. The main question will be how fast they degrade. If they could last in an intermittently active robot for a month, that's probably enough to get started.
Another question is how fast they can cycle without over heating and ruining them. Given the sorts of applications they describe, I suspect there are issues with speed. But one good thing about this development is that anyone can experiment with it in their garage, and many will, and solutions for fast cycling muscles will be found.
Schneier: Break Up the NSA
Most likely, the NSA would be split along the lines of their three core missions:
- Spy on and sabotage information systems of enemies of the United States to disrupt their operations.
- Spy on and sabotage information systems of friendly foreign nations to maintain and enhance US hegemony.
- Spy on and sabotage information systems of US citizens, to chill free speech that might threaten the NSA with budget cuts.
Then the first could be downsized as not an essential contributor to their primary goal of maintaining the power of the NSA.
Use the freed resources to step up the last, as obviously they've gotten too lax there and it is starting to threaten the primary goal.
Math Models Predicted Global Uprisings
The FAO food price index doesn't appear to be especially "up" right now:
So how does this model work again?
Psychologists: Internet Trolls Are Narcissistic, Psychopathic, and Sadistic
...you nazi libertarian communist illiterate whack-job faux liberal neocon conspirators!
Internet Censorship Back On Australian Agenda
To insure that people have access to great entertainment, we insure that the creators of great entertainment are fairly compensated - so we must destroy the greatest means of distributing content ever invented.
Or, we could design a system of tagging content that allows it's distribution to be monitored and recorded, making it easy for creators of edited content to incorporate a fair tagging of how much of others' content went into their work. Any new content for which the creator wishes to be paid would be submitted to a registration and review site, to be assigned a registered tag.
Any content for which the creator doesn't want to be paid could be uploaded, and the storage provider would be required to assign it an unregistered tag. If the unregistered content became popular enough, it would be reviewed to determine if it contained the untagged work of other creators - but only to insure fair distribution of fees. ALL content uploaded can be used by anyone. If you don't want everyone to get it, encrypt it.
Money would be collected as fees on internet users, at two levels: Full fee - no restrictions on content consumption, TBD whether paid in proportion to amount of content consumed or flat fee. No fee - all tagged content is stripped except tiny fragments considered "fair use" (such as quotes, links to content, maybe images shrunken to no more than 256x144 pixels, video represented as a single frame from the original, etc).
Slashdot Tries Something New; Audience Responds!
Instead of focusing on a "new look", why not analyze where Slashdot fails, and see if you can't improve on that?
While it's fine for everyone to have a voice and toss off irreverent irrelevancies - that's kind of at the heart of Slashdot commenting - why not try to build something new that IN ADDITION tries to help commenters move past the classic "all heat, no light" mode of internet discussions?
E..g., for controversial issues, help different sides build their arguments into a few high-contrast positions explaining to the ignorant other sides why their position is correct? With branching and versioning to allow evolution of those positions. Similarly, for the various outrages that fearful governments and greedy corps frequently try to impose, and are reported here, how about creating a means of building consensus positions on useful actions to counter them?
Make Slashdot the vanguard in Open Source consensus building. Something along the lines of liquid democracy instead of simple polling and modding. Maybe throw in something along the lines of building up a topic-focused micro-wiki of useful information, links and ideas centered on the topic.
NASA Sues Apollo Astronaut To Return Moon Camera
Not sure this is most up-to-date, but see http://www.fas.org/sgp/crs/misc/RL31253.pdf which seems to indicate a 5 year limitation for "theft".
"Ordinarily, the statute of limitations begins to run as soon as the crime has been completed." This appears to apply to alleged theft.
"The federal courts have long held that a statute of limitations may be enlarged retroactively as long as the previously applicable period of limitation has not expired." But this was not done in this case, so far as I have heard.
So I don't know what the judge is referring to in saying there is no applicable federal statute of limitations.
But someone in NASA should have looked at this proposed lawsuit and told the lawyer who wanted to bring charges that he's an ass to involve NASA's reputation in something so relatively trivial. If their goal is to get back at Mitchell for flouting their 'authoritae', they could have simply issued a press release stating that either the camera is not authentic, or Mitchell must have stolen it, as it was supposed to have been left on the LEM and they have no record of giving him permission to take it.
Let Quantum Physics Officiate Your Wedding
'The quantum marriage will literally be broken up by skepticism about it.'
I just want to say that I doubt the legitimacy of all weddings performed by quantum entanglement.
Japan's Elderly Nix Robot Helpers
Besides the obvious price and limited capabilities issues, I think where they fell down was in treating patients as objects to be "taken care of".
They needed to put the patient in control.
The robotic wheelchair/bed in the article will likely be much more popular, as it enables patients to do things for themselves. But reaching things with it might be difficult - perhaps it needs to be designed to bundle up the patient so it can hold them vertically, as if standing, so they can get closer to tables and counters and such. In effect, make a giant mobile hand and arm that can gently grab the person and move them around as they direct, instead of a mobile bed.
AT&T Goes After Copper Wire Thieves
Maybe the invisible hand of the market is trying to tell them something - like
"Copper is too valuable to leave lying around - look for alternatives, such as the fiber optic lines Telcos were suppost to install to people's homes as part of the now ancient de-regulation deal."
Curious NASA Pre-Announcement
If you look at the list of participants, it may provide a clue:
- Mary Voytek, director, Astrobiology Program, NASA Headquarters, Washington
- Felisa Wolfe-Simon, NASA astrobiology research fellow, U.S. Geological Survey, Menlo Park, Calif.
- Pamela Conrad, astrobiologist, NASA's Goddard Space Flight Center, Greenbelt, Md.
- Steven Benner, distinguished fellow, Foundation for Applied Molecular Evolution, Gainesville, Fla.
- James Elser, professor, Arizona State University, Tempe
If you follow up the connection of James Elser to NASA, it turns out to be a project called "Follow the Elements"
So I'm guessing that they've found certain exo-planets in the Goldilocks zone that have the right balance of precursor elements/molecules for life.
Crooks Hack Music Players For ATM Skimmers
Might it help to make card readers transparent - so there's nothing but clear plastic and a very small read head with some wires leading off into the ATM?
Then if you ever see other electronic cruft surrounding the read head, or see a non-transparent reader, you'd know to be suspicious...
Scientists Propose One-Way Trips To Mars
There's a better way.
Send a robotic mission to check out Phobos, including digging into it to make sure it isn't dangerously radioactive beneath the surface.
Send a nuclear powered robotic fuel factory to Mars surface, with the ability to launch enough rocket fuel and oxygen to orbit for a return mission.
Send supplies to Mars surface and to Mars orbit. Include tele-operated robots and a relay sat network.
Once you're sure they've arrived and deployed safely, launch the fuel factory back to orbit with enough fuel for a human return mission.
If that works ok, send a human crew to Phobos, where they land and dig in for radiation protection.
Dispatch a new fuel factory ship to Mars at the same time as the crew.
The crew's first task will be to secure the first fuel ship, for their eventual return mission.
From Phobos, the crew controls the robots on the surface to explore, prospect, set up infrastructure.
Each human should have at least 3 robots on the surface - most of the time the robots will be moving from point A to point B on their own, while the human controls the remaining robot.
Instead of a human that can only tolerate an hour or two in a suit on the surface each day, you get humans working in comfort at least 8 hours a day - making up for any loss in productivity from tele-robotics over being there in an awkward spacesuit. The crew works in shifts to make full use of the robots.
A relief mission arrives 2 years later, allowing anyone who wants to, to go home.
But it also brings more equipment for use on Mars, to start building a base for humans in some convenient location.
Two or three such missions later, with lots of experience landing and launching fuel factory rockets, the first human colonists land.
They find a well established base, already stocked with and producing fresh food and air and fuel.
They've got lots of smart tele-robotic helpers controlled from up above to keep them safe and make the mission a success.
The colonists mostly work via robots themselves - only going out in suits and rovers for special tasks and missions.
Most of their work is science or making stuff - in a shirt-sleeves environment - for the robots to deploy.
They don't plan to return to Earth, at least not for many years. They're colonists, not adventurers.
But very likely, some years later, a modified fuel factory ship will lift off to take the first Mars ambassador back to the old world.
The overall aim is to totally AVOID a flags and foot-prints model, that would lose support after 2 or 3 missions as happened with Apollo, dooming us to another 50 year gap.
It takes advantage of 35-50 years rapid progress in computers, software, robotics/AI, chemistry, manufacturing technologies, instead of blindly trying to repeat Apollo for Mars to show how wonderful and powerful and bold a nation we are. This time, it should be an international effort, even if one nation could do it.
Hawking: No 'Theory of Everything'
I hate to say it, but as people get older and become disappointed that certain things didn't get accomplished in their lifetimes, they tend to deny the possibility that it will ever be accomplished.
I don't think we should take Hawking's change of heart too seriously.
Many More Android Apps Leaking User Data
An appropriate approach might be to define trust levels. It would define "sensitive data packages", such as user name, GPS location, camera input, microphone input, etc - which apps could request be transmitted (with user permission settings or per-use acceptance), OR could be provided to the application. Applications would be installed at a trust level that grants them different access permissions to sensitive data, and would be prohibited from getting or manipulating data packages above their trust level.
Most trusted would be "obtains no sensitive data, engaes in no communications, does no data storage".
Next most trusted might be "All communications via a module that requires user permission settings to transmit specfic "sensitive" data packages"
Then there'd be "Transmits arbitrary data, but explicitly asks user permission for pre-packaged sensitive data."
Worst might be "Reads sensitive data (with user permission control), reads data stored by other apps, stores data for other apps, transmits arbitrary data".
Mom Arrested After Son Makes Dry Ice "Bombs"
Excellent idea. Let's start a movement to rename it the "United States of Ankh-Morpork". Maybe that would wake a few people up...
"I'm to be an Ankhmorporkian, where at least I'm told I'm free..."
Japanese Consortium Projects a Humanoid Robot On the Moon By 2015
I didn't say it would be a *living* human :-)
I agree - though really the hardest part is getting there and getting back, so I think it might be part of their motivation.