Re:They won't run PETA's ad either
on
Superbowling
·
· Score: 1
An issue is not made "controversial" because a loud, but very, very small, group of people declares some position contrary to the majority wisdom. The non-existance of UFOs is not controversial. The morality of eating meat is not controversial. The immorality of molesting young boys is not controversial. (And if you're lucky enough to not know who advocates that and thus think I might be making that up, google on NAMBLA. No link for hopefully obvious reasons.)
An issue is controversial when there are large groups of people who feel very strongly about differing sides of the issue. Who will be President is controversial. Abortion is controversial. Gay marriage rights are controversial. The most controversial issues are the ones that split the country nearly fifty-fifty, and everybody feels strongly about.
PETA is not controversial, they are clearly a fringe group. (This does not prove anything about how right or wrong they may be, but it is self-deception to pretend that they are anything but a fringe group. I too sympathize with my own set of fringe groups, most thinking people do (though which ones varies widely and is not intrinsically useful as a truth determinant either), but they are still fringe.)
Your post should not be "modded down" per se, but I'd go with "Interesting" more then "Informative".
I can't see a good reason why he would want a linker to link the.net environment and runtime into a single executable. That is just plain nuts. Yeah, I would rather have my users download a 30MB file instead of a 20MB runtime and a couple hundred K app...
Actually, he had two good reasons, one of which you winged and one that zoomed right past you, likely because you've never had to support software that you wrote and may have multiple versions in the field.
First, he objects that users may not download the larger file (and I'd add that some users will balk at installing what is effectively an OS upgrade just to try some software out, especially corporate users), and that as a result those users won't give him money. Unlike free software, a lost user is cash out of pocket. This is not trivial when software is your living.
This isn't quite what you said because you missed the "money" aspect of the objection, which is critical.
Of course it's easy to mock Joel, because it's his living, not yours.
Secondly, he objects that without static linking, he's at the whimsy of both the users and Microsoft as to which.Net runtime his software actually gets dynamically linked to, and observes that there is a "solution" to this virtually nobody can use (so it's not really a "solution"). Again, if his software doesn't run, it's money out of pocket. And again, if you've never had to support software you probably wouldn't understand why it's nice to bundle everything up, as much as possible, into one self-contained bundle.
I won't go so far as to qualify you as an absolute moron, but you are committing one of the key Moron Sins, which is "Assuming everybody in the world has needs identical to yours and projecting from there." So you're at least partially there with your Rant-From-Inexperience.
In order to compute an MD5 hash, you must include every last bit of data used to create the hash.
In order for the voter to verify their vote, you must give them every last bit used to compute the hash.
If we assume that we are not printing out the voter's vote, then we must give them everything else, plus we must give them exactly how the vote was encoded.
Otherwise, neither they nor anybody else can every verify the has by re-computing it.
Once somebody has all the data, plus precisely how the vote was encoded, it is trivial to take the hash of (all voter data + all possible votes) and determine which matches the hash. Thus, we are still giving the voter a piece of paper that confirms exactly how they voted, making them susceptible to all vote-selling and other such nasty scams.
There is no way to give the voter the ability to verify their vote without also giving someone else the ability to reverse-engineer the vote in trivial time with an MD5 hash. If even one bit is kept from the voter, they can not verify. If all bits are given to the voter, then anyone can verify. There is no in-between.
(Even if you ask the voter to provide some secret, it can be beaten out of them, and it can be trivially positively determined whether a given secret is the one in the hash; this is one of those cases where more security is bad; see how making cars harder to steal has increased carjackings, a far more dangerous crime.)
There is no way out. You must not allow the voter to take any proof of their voting out of the booth; they must leave all evidence in the booth or the system breaks. That's why a paper receipt is desirable, but the system must keep it.
2) Voting machine spits out receipt with a MD5 hash key of his vote record, it's one way, it can never be decrypted again to determine how user voted. MD5 hash is also stored on server
No, this is a good idea in concept but it won't work. There's generally only a very small set of possible voting outcomes, generally in the thousands, and that's brute-forcable in trivial time.
You can't pad with a random number or any of the other tricks usually used to make MD5 useful even in these circumstances because then you make it useless as a checksum.
Non-reversible algorithms only work when the potential inputs are much, much larger then the checksum itself. MD5, with its 128-bit size, is itself larger then most elections by a long shot.
Consider the California recall election: A yes/no/abstain (recall the governer?), a selection from ~200 candidates (IIRC), and a handful of yes/no/abstains for proposals that rode on the election (again IIRC); that's only 200*3^(~5) possible voting outcomes, nor was that a terribly unusual ballot (just selecting the governor is equivalent information-wise to 5 yes/no/abstain choices).
Yeah, you can pad it with the voter's name or other information but anybody who has that information can just add it in trivially.
MD5, in this domain, is reversible because this domain is trivially reversible. (In other words, weakness of the domain, not MD5.)
Again, good thought; I don't want to imply it's a bad idea. But it won't work.
What worked MUCH better was designing the framework from the beginning, outlining how the different functions/processes/data structures etc. would have to communicate with each other, then splitting the programming tasks up.
Welcome to 1970.
There's a damn good reason nobody does that kind of design anymore on a real world system, and that is, in a nutshell, it doesn't work on any but a trivial system... such as you might do for a programming assignment in college.
If you're serious about becoming a good programmer, you need to be expanding your horizon past school assignments, even now. I'm not far out of college but even when I was in it I was doing extra things that revealed how miserably that design methodology worked.
(Heck, I even had homework assignments large enough to reveal how that doesn't work; YMMV.)
You might want to hold off on the design prognostication; if you're in college, odds are you're promoting a design approach that has been obsolete since before you were born. I'd be a little embarrased about such things, especially in this industry.
As cheap as paper is, as cheap as this "digital paper" could even hope to be, it's nothing compared to how cheap streaming bytes are.
Even if buying a newspaper-thick sheaf of this stuff becomes as cheap as newspaper is now, I assure you the economy would rapidly adapt to re-use paper as often as possible.
Babble about the disposability is more to emphasize how cheap they want to make this, then a true "commitment" to disposing of these things. Economically, we're all going to want to buy as little of this stuff as possible. "Disposing" of this is a pipe dream on the order of flying cars and jetpacks; technically feasible, grossly uneconomical.
That's not to say that this may not have some impact... but you need not worry about a 1-to-1 replacement of normal paper to digital paper in the landfills. It is quite likely that after a couple of iterations, with "paper" that works for years, that it would cut enough into paper waste to make it an environmental gain.
So this is more then just a graceful "I'm not trying to be antagonistic" post;-), I'd point out to people that really good 2.0 headphones are actually pretty easy to come by if you can get earbuds. As I write I'm listening to a Mozart clarinet concerto through my Sony MDR-W08 headphones, which are dirt-cheap as headphones come but nearly match the quality of my $100 studio-style headphones I bought for my synthesizor-based music composition. I don't know that you can get MDR-W08s right now (doubtful), but similarly good earbuds abound. Just make sure you get earbuds that fit into your ear; I accidentally got a pair once that seem designed for ears with holes about twice the size of the ones I own, and I'm a 6'4" guy (just shy of 2 meters for you metric folk).
My theory is that those little piezo-electric speakers are pretty good, but you need to get them close to the ear; once you do that, you've basically won the battle. The expensive headphones then concentrate on keeping other noises out. (This is not entirely true but seems a very good approximation.) You can get good sound from headphones with the speakers further out, but the highs and lows both seem to rapidly dissipate and it takes a lot more balancing work.
I'm not an "audiophile" per se, but I do appreciate the way these headphones don't suck the life out of music.
However, back to the topic. You have 2 ears, therefore 2 speakers are enough to create a complete 3D soundscape. The 5.1 headphones are pure gimmick.
The 5.1 headphones would be pure gimmick, if we had been able to work out the sound transformations for convincing the brain a sound is coming from a given direction.
AFAIK, there has been progress in the field but it has hit a wall, and all the demos I've ever heard impart a very synthetic characteristic to the sound vs. the original source. (And I'm not speaking as an "audiophile"; the degradation in sound quality is clearly audible to me.)
The headphones can off-load these computations that are so freakishly complex we still can't do them onto reality itself, since "reality" remains better then any algorithm we've put together yet and doesn't sound synthetic.
Now, I've never used these or even heard of these, but I can easily believe that they are more then a gimmick at our current levels of understanding of sound spatialization. Nor would I expect two-speaker setups (headphones or otherwise) to match these any time in the forseeable future.
There are some (classical) recordings out there that are done using a fake head, with mic in place of the eardrums.
This goes to prove my point. Normally "preprocessing" sound before it gets to production is an anathema to a sound engineer; there's virtually nothing you can do to improve the sound while recording it, except record it with higher fidelity. "Aural recording" (if that's the name) is an exception, because you can't add that in post-processing, no matter what inputs you provide yourself. If it was something that could be added in post-processing, the sound engineers would insist on doing so to maintain maximal control over the sound.
The unrealistic aspect is that your guy has 100 HP to the standard-man-on-the-street's 15 or so, so your guy can do a lot of things most people wouldn't, and survive the resulting beatings. But that's because it's a game; game chars are often overpowered that way because frankly, playing a real human being sucks.
(Some day perhaps it will be viable; but many has been the time I jump off of something only to discover that it was farther to the ground then I thought, because the depth cues aren't sufficient in current 3D games to really know how far away something is. Playing an accurate human in most genres, excepting sports, isn't viable with current graphics technology. We need real depth, for one thing.)
An AC writes: "Actually, I though so too, but I've just checked, and KEdit does accept "inflexable". This is a fresh install of KDE 3.2 RC1, using aspell with British English."
OK. My apologies to Godeke.
(Maybe it's British? In which case you might want to switch to an American dictionary.;-) )
In my resume, I break my technical skills into two segments, "Expert" and "Skilled". "Expert" is defined as "being able to immediately be productive in the skill" and "Skilled" is "significant use, but would take some re-acclimation time to be expert at". (This may seem silly but it covers the situations like "C++ expert desired, Java a plus" handily; I'm not claiming to be a Java expert, but I have used it and would pick it up extremely quickly again. Call me a sucker but I believe in being truthful on my resume; I think bifurcating my skill list like this can indicate that to someone who is looking, but I'm not certain.)
The first skill I list myself as an expert in is English. (And at the risk of sounding immodest, it's not a lie, either. I write a lot, almost as much as I code, and not just "Slashdot posts" either.) That got me one job of the two I've used the resume with.
Of course, it does mean you'd damn well better proof-read your resume until it is absolutely perfect English, but it's worth it.
The other job, incidentally, came from putting "Design Patterns" on my resume, which made it stand out from my competition who, as it turns out, were lying about their competency as it is. Which leads me to another thing, put "buzzwords" on the resume that indicate actual proficency on the topic, things that some schmoe claiming C++ wouldn't know. You claim the C++ to get past HR, you talk about "generic programming with templates and the STL" to get into the final "good" pile that the technically-skilled folks are keeping.
(If the technical folks haven't got a veto on hiring technical folks, it's a job you don't want anyhow. There's the old saying "A people hire A people, B people hire C people", well, HR people hire D people. You probably don't want to be working under D people.
(Typo police: You may still find typos in this message. "Expert" doesn't mean perfect. Proof-reading your own text is still well-nigh impossible. Go bother someone else. Hree, let me through ewe a bonne.)
"Friendly" doesn't generally engender "putting up with idiots with a smile". I'm "friendly" myself but getting tens of emails from idiots can wear that off pretty quickly (been here twice at least). It would be even worse if they were asking something from me ("Give me a job!"), rather then just disagreeing/calling my ancestry into question.
(For too many people, the last two are inextricably bound.)
I spell check my/. posts via kedit, and it *accepts* "inflexable" and "inflexible".
Maybe somebody with kedit can check this, but the most likely explanation is that you added "inflexable" at some point. I've checked my/usr/share/dict/words (which has the complete Webster's International Dictionary from 1934), the Merrian-Webster online, and www.dictionary.com, and none of them have shown "inflexable". I'd expect that even if "inflexable" was an archaic form, that the 1934 Webster's would have it in there (it being 70 years less archaic in 1934).
I've done this myself; one should always know how to remove words from their spell-checking program, and be very careful with that "add" button.
I have a theory that "the first" is always remembered as a classic, even when otherwise it would be of dubious merit.
Who's the best playwright ever? Why, Shakespeare of course. Who was the first significant playwright ever? Why, Shakespeare of course.
Who are the best composers ever? Why, Bach (first to use 12-tone scale), Beethoven (creator of the symphonic form), and Mozart (early Sonatas and a lot of other stuff too).
What's the best big-budget sci-fi movie ever? Why, Star Wars of course.
Now, if any of the "firsts" came back and wrote a new *whatever* (play, symphony, movie) without the benefit of their name, it would have no commercial or critical success whatsoever. A Shakespeare play wouldn't make it out of the gate, unless he modernized the English, and even then I have my doubts. And so on.
Each of the firsts are great in their own way because they are the one who made the form viable; there were people writing "things like symphonies" before Beethoven but he is the one who brought it all together into a cohesive whole; listening to his symphonies all in a row is like a miniature history of the form. So I don't mean to say they are worthless. But they do end up casting a shadow that is impossible for later people to overcome, and "the first person to do something is always the best" is just too much coincidence for me to stomach.
Now, culture has sped up. Shakespeare had essentially his entire life to be The Great and Mighty Shakespeare. The music composers were often supplanted in their own lifetime by some other school of music, but generally towards the end. Now, culture is moving so fast that Lucas, the previous "owner" of big-budget sci-fi, produces movies that are almost exactly the same as his old movies and he is villified and demonized; the complete cycle within a small fraction of his lifetime.
The fact is that SWI and SWII aren't all that different in quality level then the originals, accounting for the relative effects differences. They just came too many cultural generations too late. If Star Wars itself was somehow released to a public that hadn't seen it, suitably updated, and with some other Big Budget film occurring when Star Wars did in our time line, it too would do well at the box office, but be decried as derivative and sucky by the same geeks who are screaming about SW I and SW II.
Am I saying that SW I and SW II are as good as the originals? No, I'm saying they are as bad as the originals. As the first big budget sci-fi flicks, Star Wars were better then we could have expected. And they are legitimate classics. But they are not so good that no future movie could ever hope to be that good... unless you wrap them in so much nostalgia and mythos that nothing could ever penetrate it.
SW 4-6 have "stood the test of time" because the same "pre-pubescents" who "thought it was good" are still around saying it's good. Show Star Wars to a ten-year-old and ask them if it's any good. They'll enjoy it, but don't expect them to become obsessed with it; they'll go right back to their Pokemon or other modern trend.
Current hibernation modes would not be able to do that because they end up storing various memory-based file-system caches in the hibernation as well. You do not want those caches to get out of sync with the real contents of the disk; big lossage.
"So avoid saving those caches...", well there's a reason they are saving them. If you don't save them, you have to first close all open files, and now your "suspension" isn't transparent. So you've opened the door to two "modes" of program starting, "suspended" and "not suspended", or some such other crap. And re-loading the cache with new, valid data on startup takes time, which defeats the point of this in the first place.
My point is not that there are no solutions to these problems but to try to give a taste of how these things cascade rapidly. OS design is a subtle and tricky work, which only becomes truly apparent once you actually try to sit down and code solutions to these problems.
Ummm... most people look at Mensa membership as an indication that you haven't come to terms with being beat up on the playground in school by kids who were dumber than you.
When I was a kid in elementary school, in fourth or fifth grade, I found a puzzle book in the school library, sponsered by Mensa, that contained 12 or so puzzles. The book said that if you got any of them right, even one of them, you qualified for Mensa.
Now, I think I can safely claim that I was smarter in such mathematical things then your average fourth or fifth grader. But I'm not so smart that I should have been able to get four or five of them correct without particularly trying; in Piaget terms I was certainly still firmly in Concrete Operational.
I lost my respect for Mensa right then and there. (I guess it's a varient on the "I won't join any club that will have me"... at least not as an elementary student doing that well.)
What's more, I took a couple of the problems I thought were the easiest and tried them out on some of the other students. As I recall, pretty much all the "normals" (scare-quotes here used to indicate "the people Mensa are hypothetically trying to exclude if you're willing to be a bit arrogant about it") got it right, usually almost immediately. My respect dropped even lower.
This would be about 15 years ago; I doubt their standards have raised. (Kinda like "A people hire A people; B people hire C people.")
Mensa, like any other massive club, probably has some neat branches that do interesting things (University ACM clubs vary widely in quality, for instance), but on the whole I would consider it neutral at best on a resume, and it would certainly put me on the look out for arrogance in a candidate... something that in our industry is never appropriate, no matter how much you know, because there's always another technology, another programming language, another subtle bug that your co-worker has spent 20 man-hours discovering and you will too if you're too arrogant to seek his/her knowledge out first.
I would echo the advice against putting Mensa on a resume or seeking it out for that purpose.
(I would be interested if anybody here knows of anybody getting rejected for Mensa membership.)
Well, "create a similar work of your own" is a bit fuzzy; if it's close enough it becomes a "derivative work", but that's handled tolerably well in copyright law.
We don't want them to die. We want them to pass through it and come out an older and wiser company, less inclined to pull shit it has learned the hard way it can't get away with, no matter how big it is.
Compare the IBM of 2004 to the IBM of 1984.
If Intel were to "die", the resulting market would have lost the wisdom that Intel is likely to learn over the next couple of years, barring some technical miracle.
First, garbage collection is not traditionally considered part of "AI" in the full-out "intelligence" sense I clearly meant.
Second, "garbage collection" has no semantic meaning whatsoever, and in fact, the entire point of garbage collection is to ensure that it makes no semantic change to memory. If it makes a change in something other then GC bookkeeping data structures, it's a bug, usually a very bad one that is hard to track down.
Garbage collection is not like sleep and dreaming at all.
As an AI dilettante, one of the things I've wondered is, is sleep fundamental to a concious, intelligent, sane mind? (Or perhaps more accurately, a dreaming period.)
Right now, there's no AI algorithm that requires sleep, or anything that comes even close. On the other hand, the only intelligence that we know of does require it. It's one of the many basic differences between current AI and the brain, so it's not necessarily "the" or even "an" answer.
But I find it an intriguing question. I can't answer it at all, and I wouldn't argue it either way. It's worth thinking about, though.
I've always wondered what game developers might come up with in a dual-head environment. RTS games with a full map and a zoomed-in view simultaneously. A FPS with front and rear views.
If this was so awesome, we'd probably have seen it by now. Nothing stopping current games from taking their head-to-head 2-player mode and providing the user with two views, even in one-player mode. Nothing preventing RTSs from dedicating half the screen to a map.
The reality is, if you have X viewing space, at the resolutions we have right now, you want about 4X or 5X space dedicated to your main task. The only thing that this might help with is a form-factor that is not conducive to RTS or FPS (depending on if the screens are arranged vertically or horizontally)... but that's a weakness, not a strength.
It looks damn cool, but if you really seriously try to think clearly about holding one of these in your hands, seriously playing an RTS, see if you don't start wanting the two screens to become just a bigger integrated view onto the playing field.
Splitting the screen is only useful when the value of the two views is such that BOTH of the following are true: You want to see both screens immediately at all times, AND both screens are so close to equally valuable as to make no difference. Again, if those conditions were true, we'd already be playing games that dedicated half their screen to maps or something.
The console may make it, but after a first generation of games, we will not see "one entire screen dedicated entirely to a map" anymore. Instead, it will be a bigger screen onto the relevant playing field, and while you may be able to pull up a map onto just that screen, you'll have to invoke it, it won't be there full time, and you'll begrudge that extra space, not be thankful the second screen is there for the map. First generation games always fall prey to hype and learn the hard way what really works about the system.
It's a variation on the standard money fallacy: "If I just had twice as much money, I'd be happy." The reality is, your expectations will rise with the extra income and on average it will not make you happier. (The key is to manage expectations, not make tons of money necessarily, though you do need a certain amount of raw material to work with.) "If I just had a second screen..." turns into "I miss the days when you looked at a map and the game was actually paused" pretty fast.
Someday we'll have so much resolution we really can piss it away on things like a usable "rear view mirror" in a racing game that can be used just like the real thing. We're not there on desktops yet, we're a long way from being there on handhelds.
Fanboys, before you flame away, try to really seriously imagine being in the situations I talk about here, and try to remember how rarely hype=reality in earlier ideas. (Everyone who sent a video e-mail today, raise your hand. One... Two... anybody else? Guess that aspect of the broadband internet didn't turn out like the hype said, huh?) If you're not already routinely actually using your windowing system (vs. always maximizing the current window, which Windows ends up encouraging)... on handheld-sized screens... then you're not going to want a dedicated screen split from your main task. (I use split windows... but just barely at 1024x768, they only get really useful at 1280x1024, and become mandatory at 1600x1200.)
What will mining the moon do to things like tides here on Earth?
Please stop worrying about this. The Moon's mass is a really big number.
Mining the moon will have precisely no measureable effect on tides on the Earth. The quadrillions of tons that we'd have to move off-planet just isn't going to happen; by the time we have a power source to do that, we either won't want to, or we won't care.
If we all started digging with shovels (or hell, construction equipment, it doesn't matter) for the rest of our lives and the shoveled dirt was magically removed from Earth, it would not be a significant amount of the mass of the Earth before we all died. (It would bother us because we'd first get to the part of the planet we most like, the very surface. But percentage wise, it's insignificant.)
An issue is not made "controversial" because a loud, but very, very small, group of people declares some position contrary to the majority wisdom. The non-existance of UFOs is not controversial. The morality of eating meat is not controversial. The immorality of molesting young boys is not controversial. (And if you're lucky enough to not know who advocates that and thus think I might be making that up, google on NAMBLA. No link for hopefully obvious reasons.)
An issue is controversial when there are large groups of people who feel very strongly about differing sides of the issue. Who will be President is controversial. Abortion is controversial. Gay marriage rights are controversial. The most controversial issues are the ones that split the country nearly fifty-fifty, and everybody feels strongly about.
PETA is not controversial, they are clearly a fringe group. (This does not prove anything about how right or wrong they may be, but it is self-deception to pretend that they are anything but a fringe group. I too sympathize with my own set of fringe groups, most thinking people do (though which ones varies widely and is not intrinsically useful as a truth determinant either), but they are still fringe.)
Your post should not be "modded down" per se, but I'd go with "Interesting" more then "Informative".
I can't see a good reason why he would want a linker to link the .net environment and runtime into a single executable. That is just plain nuts. Yeah, I would rather have my users download a 30MB file instead of a 20MB runtime and a couple hundred K app...
.Net runtime his software actually gets dynamically linked to, and observes that there is a "solution" to this virtually nobody can use (so it's not really a "solution"). Again, if his software doesn't run, it's money out of pocket. And again, if you've never had to support software you probably wouldn't understand why it's nice to bundle everything up, as much as possible, into one self-contained bundle.
Actually, he had two good reasons, one of which you winged and one that zoomed right past you, likely because you've never had to support software that you wrote and may have multiple versions in the field.
First, he objects that users may not download the larger file (and I'd add that some users will balk at installing what is effectively an OS upgrade just to try some software out, especially corporate users), and that as a result those users won't give him money. Unlike free software, a lost user is cash out of pocket. This is not trivial when software is your living.
This isn't quite what you said because you missed the "money" aspect of the objection, which is critical.
Of course it's easy to mock Joel, because it's his living, not yours.
Secondly, he objects that without static linking, he's at the whimsy of both the users and Microsoft as to which
I won't go so far as to qualify you as an absolute moron, but you are committing one of the key Moron Sins, which is "Assuming everybody in the world has needs identical to yours and projecting from there." So you're at least partially there with your Rant-From-Inexperience.
In order to compute an MD5 hash, you must include every last bit of data used to create the hash.
In order for the voter to verify their vote, you must give them every last bit used to compute the hash.
If we assume that we are not printing out the voter's vote, then we must give them everything else, plus we must give them exactly how the vote was encoded.
Otherwise, neither they nor anybody else can every verify the has by re-computing it.
Once somebody has all the data, plus precisely how the vote was encoded, it is trivial to take the hash of (all voter data + all possible votes) and determine which matches the hash. Thus, we are still giving the voter a piece of paper that confirms exactly how they voted, making them susceptible to all vote-selling and other such nasty scams.
There is no way to give the voter the ability to verify their vote without also giving someone else the ability to reverse-engineer the vote in trivial time with an MD5 hash. If even one bit is kept from the voter, they can not verify. If all bits are given to the voter, then anyone can verify. There is no in-between.
(Even if you ask the voter to provide some secret, it can be beaten out of them, and it can be trivially positively determined whether a given secret is the one in the hash; this is one of those cases where more security is bad; see how making cars harder to steal has increased carjackings, a far more dangerous crime.)
There is no way out. You must not allow the voter to take any proof of their voting out of the booth; they must leave all evidence in the booth or the system breaks. That's why a paper receipt is desirable, but the system must keep it.
2) Voting machine spits out receipt with a MD5 hash key of his vote record, it's one way, it can never be decrypted again to determine how user voted. MD5 hash is also stored on server
No, this is a good idea in concept but it won't work. There's generally only a very small set of possible voting outcomes, generally in the thousands, and that's brute-forcable in trivial time.
You can't pad with a random number or any of the other tricks usually used to make MD5 useful even in these circumstances because then you make it useless as a checksum.
Non-reversible algorithms only work when the potential inputs are much, much larger then the checksum itself. MD5, with its 128-bit size, is itself larger then most elections by a long shot.
Consider the California recall election: A yes/no/abstain (recall the governer?), a selection from ~200 candidates (IIRC), and a handful of yes/no/abstains for proposals that rode on the election (again IIRC); that's only 200*3^(~5) possible voting outcomes, nor was that a terribly unusual ballot (just selecting the governor is equivalent information-wise to 5 yes/no/abstain choices).
Yeah, you can pad it with the voter's name or other information but anybody who has that information can just add it in trivially.
MD5, in this domain, is reversible because this domain is trivially reversible. (In other words, weakness of the domain, not MD5.)
Again, good thought; I don't want to imply it's a bad idea. But it won't work.
Quick, retreat! I was proven wrong!
Surely there's some leftist dogma I can throw up here... oh, yes, oppression! That's the ticket!
Only just, given the fact that the bulk of the USAs collective wealth has come at the expense of the populations to which it provides charity.
Ha! That shows them. My leftist bubble remains unpopped by facts!
What worked MUCH better was designing the framework from the beginning, outlining how the different functions/processes/data structures etc. would have to communicate with each other, then splitting the programming tasks up.
Welcome to 1970.
There's a damn good reason nobody does that kind of design anymore on a real world system, and that is, in a nutshell, it doesn't work on any but a trivial system... such as you might do for a programming assignment in college.
If you're serious about becoming a good programmer, you need to be expanding your horizon past school assignments, even now. I'm not far out of college but even when I was in it I was doing extra things that revealed how miserably that design methodology worked.
(Heck, I even had homework assignments large enough to reveal how that doesn't work; YMMV.)
You might want to hold off on the design prognostication; if you're in college, odds are you're promoting a design approach that has been obsolete since before you were born. I'd be a little embarrased about such things, especially in this industry.
What's next?
Anzexium, the post with the answers to your questions!
Entering a relationship out of loneliness is almost always a recipe for disaster.
I sure hope you have better reasons for joining the EU then that!
As cheap as paper is, as cheap as this "digital paper" could even hope to be, it's nothing compared to how cheap streaming bytes are.
Even if buying a newspaper-thick sheaf of this stuff becomes as cheap as newspaper is now, I assure you the economy would rapidly adapt to re-use paper as often as possible.
Babble about the disposability is more to emphasize how cheap they want to make this, then a true "commitment" to disposing of these things. Economically, we're all going to want to buy as little of this stuff as possible. "Disposing" of this is a pipe dream on the order of flying cars and jetpacks; technically feasible, grossly uneconomical.
That's not to say that this may not have some impact... but you need not worry about a 1-to-1 replacement of normal paper to digital paper in the landfills. It is quite likely that after a couple of iterations, with "paper" that works for years, that it would cut enough into paper waste to make it an environmental gain.
Sounds good.
;-), I'd point out to people that really good 2.0 headphones are actually pretty easy to come by if you can get earbuds. As I write I'm listening to a Mozart clarinet concerto through my Sony MDR-W08 headphones, which are dirt-cheap as headphones come but nearly match the quality of my $100 studio-style headphones I bought for my synthesizor-based music composition. I don't know that you can get MDR-W08s right now (doubtful), but similarly good earbuds abound. Just make sure you get earbuds that fit into your ear; I accidentally got a pair once that seem designed for ears with holes about twice the size of the ones I own, and I'm a 6'4" guy (just shy of 2 meters for you metric folk).
So this is more then just a graceful "I'm not trying to be antagonistic" post
My theory is that those little piezo-electric speakers are pretty good, but you need to get them close to the ear; once you do that, you've basically won the battle. The expensive headphones then concentrate on keeping other noises out. (This is not entirely true but seems a very good approximation.) You can get good sound from headphones with the speakers further out, but the highs and lows both seem to rapidly dissipate and it takes a lot more balancing work.
I'm not an "audiophile" per se, but I do appreciate the way these headphones don't suck the life out of music.
However, back to the topic. You have 2 ears, therefore 2 speakers are enough to create a complete 3D soundscape. The 5.1 headphones are pure gimmick.
The 5.1 headphones would be pure gimmick, if we had been able to work out the sound transformations for convincing the brain a sound is coming from a given direction.
AFAIK, there has been progress in the field but it has hit a wall, and all the demos I've ever heard impart a very synthetic characteristic to the sound vs. the original source. (And I'm not speaking as an "audiophile"; the degradation in sound quality is clearly audible to me.)
The headphones can off-load these computations that are so freakishly complex we still can't do them onto reality itself, since "reality" remains better then any algorithm we've put together yet and doesn't sound synthetic.
Now, I've never used these or even heard of these, but I can easily believe that they are more then a gimmick at our current levels of understanding of sound spatialization. Nor would I expect two-speaker setups (headphones or otherwise) to match these any time in the forseeable future.
There are some (classical) recordings out there that are done using a fake head, with mic in place of the eardrums.
This goes to prove my point. Normally "preprocessing" sound before it gets to production is an anathema to a sound engineer; there's virtually nothing you can do to improve the sound while recording it, except record it with higher fidelity. "Aural recording" (if that's the name) is an exception, because you can't add that in post-processing, no matter what inputs you provide yourself. If it was something that could be added in post-processing, the sound engineers would insist on doing so to maintain maximal control over the sound.
Played GTA3? This can already happen.
The unrealistic aspect is that your guy has 100 HP to the standard-man-on-the-street's 15 or so, so your guy can do a lot of things most people wouldn't, and survive the resulting beatings. But that's because it's a game; game chars are often overpowered that way because frankly, playing a real human being sucks.
(Some day perhaps it will be viable; but many has been the time I jump off of something only to discover that it was farther to the ground then I thought, because the depth cues aren't sufficient in current 3D games to really know how far away something is. Playing an accurate human in most genres, excepting sports, isn't viable with current graphics technology. We need real depth, for one thing.)
An AC writes: "Actually, I though so too, but I've just checked, and KEdit does accept "inflexable". This is a fresh install of KDE 3.2 RC1, using aspell with British English."
;-) )
OK. My apologies to Godeke.
(Maybe it's British? In which case you might want to switch to an American dictionary.
In my resume, I break my technical skills into two segments, "Expert" and "Skilled". "Expert" is defined as "being able to immediately be productive in the skill" and "Skilled" is "significant use, but would take some re-acclimation time to be expert at". (This may seem silly but it covers the situations like "C++ expert desired, Java a plus" handily; I'm not claiming to be a Java expert, but I have used it and would pick it up extremely quickly again. Call me a sucker but I believe in being truthful on my resume; I think bifurcating my skill list like this can indicate that to someone who is looking, but I'm not certain.)
The first skill I list myself as an expert in is English. (And at the risk of sounding immodest, it's not a lie, either. I write a lot, almost as much as I code, and not just "Slashdot posts" either.) That got me one job of the two I've used the resume with.
Of course, it does mean you'd damn well better proof-read your resume until it is absolutely perfect English, but it's worth it.
The other job, incidentally, came from putting "Design Patterns" on my resume, which made it stand out from my competition who, as it turns out, were lying about their competency as it is. Which leads me to another thing, put "buzzwords" on the resume that indicate actual proficency on the topic, things that some schmoe claiming C++ wouldn't know. You claim the C++ to get past HR, you talk about "generic programming with templates and the STL" to get into the final "good" pile that the technically-skilled folks are keeping.
(If the technical folks haven't got a veto on hiring technical folks, it's a job you don't want anyhow. There's the old saying "A people hire A people, B people hire C people", well, HR people hire D people. You probably don't want to be working under D people.
(Typo police: You may still find typos in this message. "Expert" doesn't mean perfect. Proof-reading your own text is still well-nigh impossible. Go bother someone else. Hree, let me through ewe a bonne.)
"Friendly" doesn't generally engender "putting up with idiots with a smile". I'm "friendly" myself but getting tens of emails from idiots can wear that off pretty quickly (been here twice at least). It would be even worse if they were asking something from me ("Give me a job!"), rather then just disagreeing/calling my ancestry into question.
(For too many people, the last two are inextricably bound.)
I spell check my /. posts via kedit, and it *accepts* "inflexable" and "inflexible".
/usr/share/dict/words (which has the complete Webster's International Dictionary from 1934), the Merrian-Webster online, and www.dictionary.com, and none of them have shown "inflexable". I'd expect that even if "inflexable" was an archaic form, that the 1934 Webster's would have it in there (it being 70 years less archaic in 1934).
Maybe somebody with kedit can check this, but the most likely explanation is that you added "inflexable" at some point. I've checked my
I've done this myself; one should always know how to remove words from their spell-checking program, and be very careful with that "add" button.
I have a theory that "the first" is always remembered as a classic, even when otherwise it would be of dubious merit.
Who's the best playwright ever? Why, Shakespeare of course. Who was the first significant playwright ever? Why, Shakespeare of course.
Who are the best composers ever? Why, Bach (first to use 12-tone scale), Beethoven (creator of the symphonic form), and Mozart (early Sonatas and a lot of other stuff too).
What's the best big-budget sci-fi movie ever? Why, Star Wars of course.
Now, if any of the "firsts" came back and wrote a new *whatever* (play, symphony, movie) without the benefit of their name, it would have no commercial or critical success whatsoever. A Shakespeare play wouldn't make it out of the gate, unless he modernized the English, and even then I have my doubts. And so on.
Each of the firsts are great in their own way because they are the one who made the form viable; there were people writing "things like symphonies" before Beethoven but he is the one who brought it all together into a cohesive whole; listening to his symphonies all in a row is like a miniature history of the form. So I don't mean to say they are worthless. But they do end up casting a shadow that is impossible for later people to overcome, and "the first person to do something is always the best" is just too much coincidence for me to stomach.
Now, culture has sped up. Shakespeare had essentially his entire life to be The Great and Mighty Shakespeare. The music composers were often supplanted in their own lifetime by some other school of music, but generally towards the end. Now, culture is moving so fast that Lucas, the previous "owner" of big-budget sci-fi, produces movies that are almost exactly the same as his old movies and he is villified and demonized; the complete cycle within a small fraction of his lifetime.
The fact is that SWI and SWII aren't all that different in quality level then the originals, accounting for the relative effects differences. They just came too many cultural generations too late. If Star Wars itself was somehow released to a public that hadn't seen it, suitably updated, and with some other Big Budget film occurring when Star Wars did in our time line, it too would do well at the box office, but be decried as derivative and sucky by the same geeks who are screaming about SW I and SW II.
Am I saying that SW I and SW II are as good as the originals? No, I'm saying they are as bad as the originals. As the first big budget sci-fi flicks, Star Wars were better then we could have expected. And they are legitimate classics. But they are not so good that no future movie could ever hope to be that good... unless you wrap them in so much nostalgia and mythos that nothing could ever penetrate it.
SW 4-6 have "stood the test of time" because the same "pre-pubescents" who "thought it was good" are still around saying it's good. Show Star Wars to a ten-year-old and ask them if it's any good. They'll enjoy it, but don't expect them to become obsessed with it; they'll go right back to their Pokemon or other modern trend.
Current hibernation modes would not be able to do that because they end up storing various memory-based file-system caches in the hibernation as well. You do not want those caches to get out of sync with the real contents of the disk; big lossage.
"So avoid saving those caches...", well there's a reason they are saving them. If you don't save them, you have to first close all open files, and now your "suspension" isn't transparent. So you've opened the door to two "modes" of program starting, "suspended" and "not suspended", or some such other crap. And re-loading the cache with new, valid data on startup takes time, which defeats the point of this in the first place.
My point is not that there are no solutions to these problems but to try to give a taste of how these things cascade rapidly. OS design is a subtle and tricky work, which only becomes truly apparent once you actually try to sit down and code solutions to these problems.
Ummm... most people look at Mensa membership as an indication that you haven't come to terms with being beat up on the playground in school by kids who were dumber than you.
When I was a kid in elementary school, in fourth or fifth grade, I found a puzzle book in the school library, sponsered by Mensa, that contained 12 or so puzzles. The book said that if you got any of them right, even one of them, you qualified for Mensa.
Now, I think I can safely claim that I was smarter in such mathematical things then your average fourth or fifth grader. But I'm not so smart that I should have been able to get four or five of them correct without particularly trying; in Piaget terms I was certainly still firmly in Concrete Operational.
I lost my respect for Mensa right then and there. (I guess it's a varient on the "I won't join any club that will have me"... at least not as an elementary student doing that well.)
What's more, I took a couple of the problems I thought were the easiest and tried them out on some of the other students. As I recall, pretty much all the "normals" (scare-quotes here used to indicate "the people Mensa are hypothetically trying to exclude if you're willing to be a bit arrogant about it") got it right, usually almost immediately. My respect dropped even lower.
This would be about 15 years ago; I doubt their standards have raised. (Kinda like "A people hire A people; B people hire C people.")
Mensa, like any other massive club, probably has some neat branches that do interesting things (University ACM clubs vary widely in quality, for instance), but on the whole I would consider it neutral at best on a resume, and it would certainly put me on the look out for arrogance in a candidate... something that in our industry is never appropriate, no matter how much you know, because there's always another technology, another programming language, another subtle bug that your co-worker has spent 20 man-hours discovering and you will too if you're too arrogant to seek his/her knowledge out first.
I would echo the advice against putting Mensa on a resume or seeking it out for that purpose.
(I would be interested if anybody here knows of anybody getting rejected for Mensa membership.)
Well, "create a similar work of your own" is a bit fuzzy; if it's close enough it becomes a "derivative work", but that's handled tolerably well in copyright law.
It's interesting to note that software is already treated like the text of a book; software is the only thing I know of covered by both patents and copyright. Is anybody surprised the system is unbalanced as a result?
The patent system and the copyright system were never designed to interact; of course this is only one small example of the general problem of previously seperate domains starting to interact thanks to the Internet.
Maybe Intel blew it, but they'll survive.
We don't want them to die. We want them to pass through it and come out an older and wiser company, less inclined to pull shit it has learned the hard way it can't get away with, no matter how big it is.
Compare the IBM of 2004 to the IBM of 1984.
If Intel were to "die", the resulting market would have lost the wisdom that Intel is likely to learn over the next couple of years, barring some technical miracle.
First, garbage collection is not traditionally considered part of "AI" in the full-out "intelligence" sense I clearly meant.
Second, "garbage collection" has no semantic meaning whatsoever, and in fact, the entire point of garbage collection is to ensure that it makes no semantic change to memory. If it makes a change in something other then GC bookkeeping data structures, it's a bug, usually a very bad one that is hard to track down.
Garbage collection is not like sleep and dreaming at all.
As an AI dilettante, one of the things I've wondered is, is sleep fundamental to a concious, intelligent, sane mind? (Or perhaps more accurately, a dreaming period.)
Right now, there's no AI algorithm that requires sleep, or anything that comes even close. On the other hand, the only intelligence that we know of does require it. It's one of the many basic differences between current AI and the brain, so it's not necessarily "the" or even "an" answer.
But I find it an intriguing question. I can't answer it at all, and I wouldn't argue it either way. It's worth thinking about, though.
I've always wondered what game developers might come up with in a dual-head environment. RTS games with a full map and a zoomed-in view simultaneously. A FPS with front and rear views.
If this was so awesome, we'd probably have seen it by now. Nothing stopping current games from taking their head-to-head 2-player mode and providing the user with two views, even in one-player mode. Nothing preventing RTSs from dedicating half the screen to a map.
The reality is, if you have X viewing space, at the resolutions we have right now, you want about 4X or 5X space dedicated to your main task. The only thing that this might help with is a form-factor that is not conducive to RTS or FPS (depending on if the screens are arranged vertically or horizontally)... but that's a weakness, not a strength.
It looks damn cool, but if you really seriously try to think clearly about holding one of these in your hands, seriously playing an RTS, see if you don't start wanting the two screens to become just a bigger integrated view onto the playing field.
Splitting the screen is only useful when the value of the two views is such that BOTH of the following are true: You want to see both screens immediately at all times, AND both screens are so close to equally valuable as to make no difference. Again, if those conditions were true, we'd already be playing games that dedicated half their screen to maps or something.
The console may make it, but after a first generation of games, we will not see "one entire screen dedicated entirely to a map" anymore. Instead, it will be a bigger screen onto the relevant playing field, and while you may be able to pull up a map onto just that screen, you'll have to invoke it, it won't be there full time, and you'll begrudge that extra space, not be thankful the second screen is there for the map. First generation games always fall prey to hype and learn the hard way what really works about the system.
It's a variation on the standard money fallacy: "If I just had twice as much money, I'd be happy." The reality is, your expectations will rise with the extra income and on average it will not make you happier. (The key is to manage expectations, not make tons of money necessarily, though you do need a certain amount of raw material to work with.) "If I just had a second screen..." turns into "I miss the days when you looked at a map and the game was actually paused" pretty fast.
Someday we'll have so much resolution we really can piss it away on things like a usable "rear view mirror" in a racing game that can be used just like the real thing. We're not there on desktops yet, we're a long way from being there on handhelds.
Fanboys, before you flame away, try to really seriously imagine being in the situations I talk about here, and try to remember how rarely hype=reality in earlier ideas. (Everyone who sent a video e-mail today, raise your hand. One... Two... anybody else? Guess that aspect of the broadband internet didn't turn out like the hype said, huh?) If you're not already routinely actually using your windowing system (vs. always maximizing the current window, which Windows ends up encouraging)... on handheld-sized screens... then you're not going to want a dedicated screen split from your main task. (I use split windows... but just barely at 1024x768, they only get really useful at 1280x1024, and become mandatory at 1600x1200.)
What will mining the moon do to things like tides here on Earth?
Please stop worrying about this. The Moon's mass is a really big number.
Mining the moon will have precisely no measureable effect on tides on the Earth. The quadrillions of tons that we'd have to move off-planet just isn't going to happen; by the time we have a power source to do that, we either won't want to, or we won't care.
If we all started digging with shovels (or hell, construction equipment, it doesn't matter) for the rest of our lives and the shoveled dirt was magically removed from Earth, it would not be a significant amount of the mass of the Earth before we all died. (It would bother us because we'd first get to the part of the planet we most like, the very surface. But percentage wise, it's insignificant.)