Become a fan of Slashdot on Facebook

typodupeerror
DEAL: For \$25 - Add A Second Phone Number To Your Smartphone for life! Use promo code SLASHDOT25. Also, Slashdot's Facebook page has a chat bot now. Message it for stories and more. Check out the new SourceForge HTML5 Internet speed test! ×

## Comment Re:It has its uses (Score 1)378

I'm going to argue there are no special cases that don't fit.

In a strictly mathematical sense, yes, various things are equivalent and various patterns are universal. However, that's a bit like saying you can do anything with sequencing, selection and repetition. While true in a sense, realistically it doesn't necessarily represent the clearest way to express everything. In practice, I have sometimes found that while I might build individual parts of a complicated algorithm from tools like folds, it may be clearer and easier to write the "big picture" using explicit recursion rather than trying to adapt everything to fit some standard algorithm.

As a practical example, not so long ago I was working on some code that would take some information in a certain format as input, and update a rather complicated graph-like data structure to incorporate that extra information. This algorithm involved walking the graph, and depending on the properties of each node reached and of the information to be merged in, either updating that single node "in place" or changing the structure of the graph around it. Each such step would typically transfer some of the remaining information into the graph, and then continue walking the rest of the graph to merge in the rest of the information until one or the other ran out. No doubt with enough mathematical machinations this could have been shoe-horned into some standard pattern, but in practice it was far simpler and more transparent to write a small set of mutually recursive functions that implemented the required behaviour at each step. And of course each of those functions then received information about the state of the graph walk and the state of the information being merged in through parameters.

At this point I think purity allows for laziness and laziness demonstrates a lot of the advantages of purity.

If you only care about the result of evaluating a function, sure, but if you also care about the performance characteristics of your program, I don't think it's so simple. Laziness can be both a blessing and a curse.

As for lazy with large amounts of data, Hadoop is lazy. So I'm not sure what you are saying.

In short, unrestricted laziness can cause huge increases in the amount of working memory required to run a program, until finally something triggers the postponed evaluations and restores order. As I recall, there was even a simple tutorial example in Real World Haskell that could wind up exhausting the available memory just by scanning a moderately large directory tree because of the accumulated lazy thunks.

## Comment Re:Corporate espionage (Score 1)20

You miss the point. Sure all those you are quoting will gladly spy on, maim and kill others, but they will not touch each other. While these actors are pretty bad, it would be far worse if they were at war with each other.

## Comment Re:minwage \$11.40-\$9.90 (Score 1)344

It basically has no impact on employment. Industries that claim they now want to replace people with automation have planned to do this before anyways. They just found a pretext in minimal wages. The fact of the matter is that wherever people can be replaced with automation, they were not the main cost-factor anyways, with very few exceptions. Hence the effects of minimal wage are just to make sure people have more spending money and that is universally good for the economy. After all, what point is there in producing things, if people cannot buy them? Of course, this only works were people have jobs, and that is where the UBI comes in. Because in the medium-term future, a large part of the demographic will not have a job anymore due to automation. If they do not have reasonable spending money, the economy collapses due to market collapse and social unrest with become an extremely expensive problem.

I do however think that many of the opponents to an UBI are those that define their worth by their jobs and these people are scared extremely by the idea that they are actually not that special. The whole argument about it "being too expensive" is bogus.

## Comment Good (Score 1)76

Now also explain and make available effective contraception, or each person saved will spawn a few more to die from hunger and war two decades down the road. Messing with natural population control mechanisms is dangerous and tricky. Not saying it should not be done, but it needs to be done right or catastrophes will ensue.

## Comment Re:Germany will increase (Score 1)71

Funny. There are not that many refugees. This is an artificially generated panic which serves to promote right-wing populists. Fortunately, in Germany they (AfD) are currently imploding, but other countries are not so lucky and the population anywhere always has a large faction that fall for the these people.

## Comment Re:Is "white hat hacker" a Millennial/hipster term (Score 1)53

It can also be a "system security analyst" and a "software security analyst" or a lot more fuzzily an "IT Security Expert" or "IT Security Consultant". Of course, in a time where the BS term "Cyber" gets attached to anything, "Hacker" is actually a significant improvement.

## Comment Re:Ten years too late... (Score 1)53

white box = you have all documentation, accounts, technical authorizations, and access to people
gray box = you have some of the above, often in limited form
black box = you know how to reach the target systems

Black box pen-testing makes no sense, since it wastes a lot of time. The only reason to do it is that with a limited budget, it may not find things, i.e. create a false sense of security that management can then escalate as a great achievement.

## Comment Re:Not the best, and it's more than \$300,000 / yea (Score 1)53

The problem here is that this will not keep. There is definitely luck involved, and if this person was, say, working 80h weeks, then the compensation still sucks.

## Comment Re:Not as good as it sounds (Score 1)53

Very much so. And you can make a lot more as a gray-hat, with no risk of prison time. These people are basically a bit more advanced amateurs with big egos that exploit themselves.

## Comment Re:Payouts are garbage, though (Score 1)53

Indeed. This is completely bogus. People doing it will go for the low-hanging fruit and if they find something really juicy by accident, they can easily make one order of magnitude more money on it. Nothing more complicated will ever get reported to the company. This may also explain why the cost of this is 1/10 of other methods: It has far less than 1/10 of the results and is dangerous in addition.

Now, a really competent security review will be expensive, but it will look at things like code quality, design and architecture, competence of the implementers and maintainers, processes, roadmap, etc. It will, for example, find cases where only one safeguard is effective (and hence things cannot get hacked), but the risk is hight, because you usually want two independent safeguards. It will find things were technology is not quite there yet to attack them. It will find conditions that were unknown, but must be met in order for a system to remain secure.

Of course, if done by one of the big IT consulting agencies, it will only pretend to do all these things, but as compensation it will be even more expensive. The amount and quality of fail I have seen in reports of IT evaluations from big names is staggering.

In short, this is the moronic version of IT security, which is not worth the money saved on it, even if it would cost 1/100 of a real security review. It may have some short-term benefits for the bonuses of those having made this utterly stupid decision, but that is it. Long-term, it is disastrous.

## Comment And it is still a bad idea (Score 1)89

Of course, it may sell like crazy, as many people have never come to grips with mortality (and hence are not adults by any sane definition) and will do anything to create an illusion of immortality.

## Comment Re:Wrong question (Score 1)378

Recursion is not about performance. In fact, any recursive program can be made faster by transforming it to iterative form and good compilers actually offer that as optimization. Recursion is about simplicity of the code, which in turn is about reliability, maintainability and security.

# Slashdot Top Deals

The reason computer chips are so small is computers don't eat much.

Working...