Slashdot is powered by your submissions, so send in your scoop


Forgot your password?

Comment Re:A few problems... (Score 3, Insightful) 149

I don't know about "anti-pattern", but they cause trouble because they cause other code to be non-deterministic and it's very difficult to create patterns around that sort of behavior. They're practically the logical equivalent of the "COME FROM" in Intercal, which was originally a joke for goodness sake. I was flabbergasted when I found out people are vaunting code that actually works this way. It's particularly painful in implementations where the "reactions" can override program flow with errors or silent rejection or just running off and doing whatever they want. It's nearly impossible to debug since reactions (triggers) are almost always coded in a language or paradigm separate from some procedural language used to provide the UI or whatever other layer is being reacted TO.

I just don't like it! But that's just me.

Comment Re:The cypher (Score 1) 89

Thanks for beating me to this -- it sounds like a simple substitution cipher; even with a many-to-one I'm amazed it would be THAT hard to crack. Of course, looking at the images in the articles I wasn't having a good time telling one rune from the next (there was a series of like 5 "R" looking characters in a row), so maybe it was a high order many-to-one so the trick helped narrow the field.

I'm impressed that such a cipher lasted this long, though!

Comment Re:Classic Slashdot (Score 1) 463

Ob-On-Topic Follow up... off site backups are BACKUPS... if you archive something off of your production systems (say, because it's outdated), you once again need TWO COPIES (like beta and classic Slashdot!). Putting an entire country's banking records in one place seems like an awful bad idea whatever that place is.

Comment Only for swing voters (Score 3, Insightful) 269

Most voters stick with long-standing ideals that they think will work long-term -- most people will poll to the same party over and over. Only a small percentage of people that are willing to break with their party could be influenced this way (unless their party was doing something particularly silly near a vote). Swing voters matter, of course, but this article generalizes something that is not generally true.

Comment Re:One and the same (Score 1) 441

"Why would they seek retribution for willingly dropping all of the evidence in a shredder, letting the bad guys know how to plug the leak, and walking away?"

There's no evidence of that happening! And as many have said, IF the proper channels failed, THEN you could go public. For many of these ongoing issues, the evidence can't be shred, and in many cases doing so is in fact a viable resolution to the problem.

Do we have a single example of one of these high profile folks someone saying "I reported egregious behavior properly via the whistleblower protections, but now all the evidence is gone, but they're still doing bad things so I decided to go public"? I mean, someone had just said "hey, we shouldn't be doing this, should we?" and then everyone said "you know, you're right", and then stopped, that actually sounds like a working system. And we don't know how effective the current system is -- many (obviously not all) abuses may have been stopped via whistleblower protections done properly, but some of this will be classified so that information getting out is both unnecessary and unlikely. And as I said before, we DO know that a few thousand of these a year go on largely without incident.

But even if we grant that going public was the only way, again I think the difference between approaches are vital. Taking precautionary steps to ensure very little classified information gets out, and that the information that does leak is vital to proving the abuse case is far less destructive than taking loads of evidence and giving it to wikileaks or foreign press. Many of the documents so leaked have hurt diplomatic and intelligence concerns in areas that are disconnected from the targeted abuse. That is unnecessary and what I find punishable, and where I think Drake could be treated with leniency due to his diligence in keeping classified information safe.

Lastly, just to be clear, I'm not supporting the actions of the organizations either... I was in DC protesting the Patriot Act with many others years ago because I think the problem is more in the laws that allowed this sort of thing to happen. The problem is that the actions may have been LEGAL, if unethical and not what the voting populace wanted or intended because we let these privacy eroding laws happen in the first place. We need more voters to put pressure on politicians to write laws that clearly disallow this sort of privacy-invasion in the first place; that would make whistleblowing more effective (and hopefully less necessary) because the abuses would be more clearly illegal.

Sorry that's so long, I'll stop ranting now. :-)

Comment Re:One and the same (Score 1) 441

In the last 10 years over 20,000 cases have come through the "proper" whistleblower channels that are published (many classified cases are not, and while they could be different, there's no evidence that they are), and I'm not aware of any of these scary retribution stories being applicable to those. Of the 7 in the story, how many considered the large amount of cases that DID go through proper channels, and how many actually tried the process BEFORE violating any laws (like stealing classified information)? The scary examples that are held up are of people who violated the rules in the first place; of the people that followed the whistleblower act's provisions, I don't see examples of this.

I admit the statistics don't look great -- only 20-30% of the cases are settled while 60% are dismissed (the remainder are withdrawn or kicked out), and only a small percent are found completely in favor of the whistleblower. But there's nothing from those 20,000+ stories to indicate that this proper channel is causing retribution to anyone that uses it. It's the people who circumvent the process that are the poster children, and it's a terribly false comparison.

Comment Now how easy is it to remember? (Score 1) 136

I wonder if there is a minimal instruction set that someone can follow to guarantee the win if they go first. It's one thing to prove a game always winnable, but it's another to write an efficient algorithm to always win in a particular amount of time. Timed Chess playing computers have amazingly complex and cool algorithms, but that's at least partially because chess hasn't been solved in this way.

For example, I wonder what the best first move is. :-)

Comment Re:One and the same (Score 1) 441

Manning and Snowden did nothing to follow the rules that grant them protection -- they went straight to the international press; the whistleblower protections in place were not meant to condone that sort of behavior. The better example is Thomas Drake because he at least tried to follow a chain of command and some reasonably "safe" whistleblowing tactics rather than simply dump classified information into the wild. Still, though, Drake does not seem to have followed the proper channels, and those channels are there for a reason and make sense. There is a go-to place to file a whistleblower complaint that provides protection under the whistleblower act (currently the OIG). Telling your friends and colleagues, and spamming other intelligence agencies is not the right approach, although it's much more legal than giving classified information to a foreign government. The big no-no, though, is stealing and hoarding classified information, even if you intend to give it to the right people. The whistleblower protections are set up to protect the whistleblower AND the sensitivity of the information that they are divulging.

Breaking the protections on the underlying classified information is not protected in any whistleblower setting. Now, if each of these people had tried through the proper channels FIRST, without theft, without disclosure to third parties, I would be more sympathetic, but you don't get whistleblower protection by haphazardly divulging classified information outside the proper channels.

Comment Re:Most likely exists to prevent over-grazing.. (Score 1) 169

It's reasonable to expect evolution to select for the Big Three: sexual preference, predator avoidance, and efficient food gathering. If evolution doesn't select for efficient food gatherers, what does it select for?

The logical fallacy I'm worried about is expecting an experiment to display only a bias for "efficient food gathering". It could be that the extra energy spent in wandering farther for food may be worth it in a natural setting to avoid predators, or avoid stale food, or the exercise may aid in digestion. Maybe the birds liked to hide in the tube, maybe some thought they'd feel trapped. Other people have made plenty of other observations on this post with alternate theories, but there are many many possibilities not related to the one variable the authors controlled for. It may even be due to nothing at all... just a ghost in the machine so to speak that wasn't weeded out via evolution because the birds were efficient enough to survive, eat, and spend lots of energy on other goals.

Expecting Occam's Razor to apply to complex systems in the most trivial ways is part of the mistake. I'm glad the research is done, it IS interesting and I generally approve of expanding knowledge. My complaint is that the author seems so surprised, and that I frequently see this sort of surprise and reasoning lead to or come from an anthropomorphism of evolution (i.e. assigning "intent") where I just don't think it applies. We behave as if evolution selected for specific traits (like those Big Three) because we witness the system in reverse, but if we had evolved into immortal asexual resource-unconstrained, we may see it differently. The underlying mechanisms would have been the same, though -- evolution need not have intent, goals, or this sort of anthropic rationality driving it to be effective and fascinating, and worth studying.

Comment Re:Most likely exists to prevent over-grazing.. (Score 5, Insightful) 169

One of my pet peeves with discussions on evolution is the assumption, in general, that any given trait or behavior evolved for a particular reason, or that any one concept such as "logical rationality" can explain the whole evolution of a single such trait. In fact this sounds more like intelligent design than evolution. It's an interesting exercise to track a trait through evolution, but there's a fine line between that and presupposing that every behavior must occur due to some underlying logic.

We're talking about behavior that evolved due to an absurd amount of chaos; how was it not obvious that a "decision becomes more complicated than a simple, fixed ranking of preferences"? And who gets to decide what's "rational"... from a basic evolutionary perspective, anything that has evolved to this point and is still alive and kicking is doing well; it's almost impossible to call any such evolution "irrational", so finding ways to prove it so is just silly. I mean, there's plenty of evolution that seems odd... flightless birds, blind species with eyes, animals that eat their young and their mates... but these species all survive and procreate and carry on from one generation to the next. Why does everything have to be nice and tidy... what's the obsession with "rational"? In fact, the behavior described in the article sounds more rational than the opposite... consider Pandas, who exist almost entirely on one food (bamboo)... these animals are very nearly extinct due to this behavior (some people assert that they would be if it weren't for human efforts to save them). Is that rational from an evolutionary perspective?

I'm sure I sound annoyed, but some times we try to oversimplify things way too much. happy_place is correct; competition could matter, and individual preference clearly exists all over the place... why does there have to be a rationalization? Is it an evolutionary benefit that happy_place likes dark chocolate while their wife hates it? More likely it's just a quirk of evolution, not a grand result of evolution having evolved precisely so that our species won't starve when cocoa is the last remaining food on the planet.

Let me put it this way... given whole of evolution, I would wager that for any categorization of traits that are well defined (such as "rational"), there exists at least one example that is both in and out of that category. SOMETHING has evolved irrationally, oddly, stupidly, and without purpose, due only to quirks of evolution that didn't really get in the way of a species survival, but didn't necessarily help it along either.

Comment Re:I thought that we were supposed to be pro-activ (Score 2) 186

The downside of reactive programming, however, is exactly the same as the downside of the event/trigger logic that has been available in databases for decades, namely the difficult-to-trace side-effects caused by out-of-order execution that is basically mandated in reactive programming.

It's not so obvious when you're first writing code, but it's a headache when you're maintaining it (I disagree with the article on this point). Take the example in the original article... let's say you go back and add a requirement that people can pay for multiple invoices at once or for partial amounts. You have to check every single trigger to see if it refers back to the original payment information and adjust it accordingly. You'll have to change the data model to handle partially paid components (currently "paid" is a boolean), and any trigger that reads or modifies "paid" will have to be adjusted.

This alone isn't a problem -- you'd have to make similar changes in OOP, procedural, or functional languages... the issue is that in those languages you're more likely to be able to trace the dependant code and understand the flow. If you have access to the entire code base, you could search it I suppose, but each trigger operates like a "COME FROM" command in INTERCAL... it's as if your code is running along operating and all of a sudden an execution branch just pops in, performs some change, and lets you carry on, without telling you. I've had to debug some brutal issues caused by this sort of programming and it's difficult precisely because you're not sure where the execution path is coming from nor in what order it's being executed. It's almost entirely un-auditable once it gets complex enough to perform real-world tasks. If this was a real-world billing system, you'd have payments, refunds, discounts, credits, and a dozen other bits each making each "reaction" more complex. Each would require its own line of reactive code and each would depend on at least several of the others, and it's very easy to lose track of what's going on.

I realize people can write bad code in any paradigm, but bad code in reactive is far more difficult to debug, fix, and maintain, IMHO.

Comment Re:Multiple Monitors... (Score 2) 520

Yeah, I have a three-monitor setup that is pretty dang sufficient. Plus, I can use window-maximizing on individual screens rather than have to manually space or automatically tile all my windows (which leads to weird window sizing that I don't like in most OS'es). Three 24" monitors take up more space, but they still actually fit on a reasonable desk, and unless you're going top of the line (which you may need for photo or video work, but not for programming), they're going to be a lot cheaper than a single 39" 4k screen even with other comparable specs (brightness, refresh, gamut, etc.).

Not that I wouldn't love one, but no, this is not 4k's silver bullet.

Comment Re:Secure safe. (Score 1) 381

I concur on the lawyer approach, but I'd add to make it part of a living will (and, part of a normal will), so you can lay out how you want it handled in various situations.

If you absolutely abhor someone having direct access, leave the passwords in a safety deposit box and leave instructions with the lawyer, confirming that the bank will only give them access in the correct situations.

Lastly, only provide the fewest necessary usernames and passwords to get to everything, and keep a complete list separate. For example I can probably reset my password on 80% of my accounts with just my e-mail account. This means people will have to jump through hoops to reset passwords, but that's good if you're the paranoid sort (if you're nicer and cuddlier, you can always provide the complete list of credentials).

Now if you have any biometric or two-phase authentication tokens, you're going to have a rougher time... good luck. :-)

Slashdot Top Deals

People are always available for work in the past tense.