skysight-inc/HackerNews huggingface dataset:
> How is, "whoever hits the queue most often" a useful deterministic resolution strategy?

It's a deterministic resolution strategy, and is thus useful.

> I guess it's functionally no worse than wall-clock time or something,

Wall-clock time is not deterministic; therefore it's far worse.

When dealing with distributed systems, deterministic processes are critical. Multiple systems all being right is awesome, but multiple systems being wrong in different ways is a nightmare. :)
I think you can do some things with chroots[1] that you otherwise couldn't although I could be wrong. My knowledge on Chrome's linux sandboxing (just for comparison) is kind of limited. I'm sure there are other protections such as seccomp which you can heavily restrict in renderer processes that you otherwise couldn't.

[1] With grsecurity they can become much more chroot-jail like. Chrome uses chroot's I believe so it's very beneficial there.
These essays are really well presented and I learned some things I didn't know before. However anyone who's written a college essay will recognize the telltale academic verbosity which obscures a lot of the content.

I especially recommend: Armed Civilians and the UT Tower Tragedy [1]

[1] http://behindthetower.org/armed-civilians-and-the-ut-tower-t...
The obvious example is a compiler.

Java, C, Python and Javascript all lack algebraic datatypes and pattern matching, which make writing a compiler much easier. There are many additional features of Haskell that make it especially good for implementing a compiler, if you know what you're doing.

I guess that's cheating because a compiler is just a function from source language to target language, so it is easily expressed in a functional language. But it does answer the question nicely.
It's really interesting this discussion, I don't go past the first initial discussion with a potential employer without understanding the salary range.

If they refuse to comment on that I assume it's low and head on elsewhere.
> According to a police report from the March stop, which the department released after the shooting, Gaines was stopped when an officer saw that in place of a license plate she had a piece of cardboard on her vehicle. The cardboard declared, “Any Government official who compromises this pursuit to happiness and right to travel, will be criminally responsible and fined, as this is a natural right and freedom.”

So she was a Sovereign Citizen (https://en.wikipedia.org/wiki/Sovereign_citizen_movement)? http://heavy.com/news/2016/08/korryn-gaines-instagram-videos... quotes her spouting more of the sovereign citizen legal gobbledegook. Apparently there's even a black version of all this stuff: http://www.rawstory.com/2014/08/sovereign-citizens-express-f...
So there are some domains where that parallelism easing can really work out well, when dealing with jobs over thousands of cpus, or gpus etc. It can however get almost comical in the case of desktop/single server applications, where you have maybe 4 or 8 cpus available. Because you can write something nice in F# or Scala, and run it on 4 to 8 threads, get a nice speed up. But the same code, written in an obvious manner in C, ends up auto-vectorized and/or auto paralellized to some degree and runs ~8x faster on just one core. Could be more, of much less, depends on many factors, but it is something to consider.

This isn't an inherent problem, but most functional languages need a lot of compiler/JIT work to make the parallel features a net performance win more of the time.
It's not just functional approaches that solve the concurrency problems, but FP combined with strong time modelling constructs. If you are just using FP, but not any kind of STM, then you are still going to have difficulties.

Imperative languages have neither strong time constructs nor side-effect free approaches. So you lose twice. But just getting rid of side effects is not going to take you all the way to pain free concurrency. You need more.
Me too! I find myself skimming when I read his books.
1) I didn't say Firefox was better for privacy. I was only pointing out that comparing the browsers based on built-in privacy mode isn't apples-to-apples.

2) On a related note, Firefox left out lots of features because there were well-supported, popular plugins that covered the same thing. Whenever a browser gets built-in ad blocking, should we say that all the other browsers are worse privacy options because they chose to leave those as third-party plugins?
No, it's the money itself which is risked. Everything else is adjacent. How much the specific individual holding the money actually values it is irrelevant. It's how much that you value the money that's relevant.

What is $1,000 worth to you? Now, that question has a wide range of answers. In some places, that's literally worth multiple lives. Or it could be beyond insignificant.

Obviously very few can or should take a personal investment risk of 100% or more of their net worth.
so why exactly do you need my email just to give me a download link?
But to be fair, in this situation they asked Facebook which is allowed to block/disable any account on their service that they want.
How many of those people are wealthy by virtue of being the citizens there? How many people who are _not_ from UAE choose to live there?
That implies running Windows, though.

My biggest problem with GPU drivers is that they stick out like a sore thumb on a hardened system. All the protection and isolation in the world won't help you when you have a stock-compiled, PaX-disabled blob loaded into your binary that communicates directly with the kernel.

For this reason and this reason alone, I am forced to basically limit OpenGL access to X.org and mpv.
I think the context of this post being 6 years old is important. While I don't buy the argument that functional programming languages are more complex, I think there's certainly been a long-standing problem of good pedagogy in the functional programming community. I'll also add that I don't think the languages themselves have been where pedagogy is lacking per se as much as much as with regard to teaching functional design. Ask yourself how many tutorials you've seen about pattern matching versus the number of monad tutorials you've seen.

I think this has gotten somewhat better recently and there are better resources available for understanding some of these functional design patterns (more literature and likewise better guidance about how to write tutorials). I also think lately there's been a couple of languages I'll call "bridge languages" to purely functional programming languages (particularly scala, rust, and swift) that have been particularly good at weening object-oriented programmers into functional programming through a translation of functional concepts into OO or otherwise imperative programming. Arguably these languages are some of the most complex, but surprisingly I've found them to be pretty good for learning functional programming (I'm definitely biased as someone who came from scala to haskell, though).

There's still a pedagogy gap though, and I would say there's not a lot of accessible literature on things like lenses, monad transformers, free monads, etc. that ought to exist to make purely functional code understood by a wider audience. In fact I'd argue that design patterns in purely functional programming are still not totally settled. There's still a good amount of discussion about the best way to achieve things like composition of effects, testable code, module design, etc. Haskell in particular is still a test bed for ideas about how to achieve some of these things, though languages with a more lax view on explicit effects tend to be more settled on these things.

In any case, none of this should scare you away from functional programming. If you're concerned that the benefits seem unclear, I'd advise you to take a look at Simon Marlow's _excellent_ Parallel and Concurrent Programming in Haskell [1] for a look at what purely functional programming brings to the table WRT concurrency. Yes, you can do IPC in any language, but this only one model of concurrent programming (and one that does not eliminate the potential for deadlocks). Purely functional programming offers many tools in the concurrent programmers toolbox such as data parallelism, software transactional memory, message/channel concurrency, etc. that are all hard to achieve without sharp corners in imperative languages.

[1]: http://chimera.labs.oreilly.com/books/1230000000929
I initially thought that is what they built but, They went the snapchat route.
Again, I love that Monday morning quarterbacking.

Crazed gunman? Come back later. Crazed gunman with a kid? Come back later. Crazed fugitive gunman with a warrant out, with a kid, threatening to kill police? Let them settle down, come back later.

There was outrage in my town over a standoff with a guy (with kids) who was having attempted to be served on him by the cops for the dozenth time after a year on the lam, for driving drunk and unlicensed while out on bail for a previous serial drunk-driving arrest. He shot at the cops, screamed that he wouldn't be taken alive, and the cops secured the area, and the guy shot himself in the head. People said they should have left and come back later.

Makes a lot of sense.
Well private monopolies aren't doing any better so I doubt the government could be worse.

The government should lay fiber just like they lay water pipes and pave roads. Anyone can connect on either end of the fiber, providing a nice competitive market for ISPs... just like the original days of dialup ISPs.
Computers are distracting, and working with them as a rather easily distracted person is often not so productive. Even more so with Internet. Thus as an aspiring author and philologist I use it as a device for gathering, storing and manipulating information, and use pen and paper for creative activities. The limits are all physical and tools simplest, so all I have to, and can do is to transfer my thoughts on paper. Then I type them with a typewriter for having a product that lends itself better to editing and being read later, as my personal handwriting is, a bit too personal. Having it written on a typewriter again helps me avoid distraction. Then I edit my draft and retype if need be. I find that screen editing is mire prone to hide or produce malformed paragraphs, typoes, incontinuities and the like, as I tend to read what surrounds my edits. But the review&rewrite approach requires me to review each time I want to commit my edits writing anew the manuscript. I am more productive this way.

Furthermore, it's way more fulfilling to have created a physical form of my thoughts, that can exist as an object. It's more pleasing to handle paper, reread my work and edit it freeform with a pen. I feel more engaged, and I have a better memory of what I write on paper that what I write on computer.

I don't know if this situation has any backing research but I guess making such research would be yet another unnecessary distraction for me as a creative.

For what it's worth, when referring to a thing as outdated, one needs to ask himself, "is it, really?" Is a digital successor of an analogue or mechanical gadget able to produce a strict superset of the effects of the latter? I think, in photography, music, plastic arts and literature the answer is no. And unless the answer is yes, the gadget is not outdated. Even if ninety nine hundredths of the effects are reproduced, and many new are added, for that one hundredth of the effect, the older tool is still valid, more so if that's what the author is wanting.

Besides, today's things have less glory and object presence attached to them than their older counterparts. It's normal to want that and seek that I think.
I've read that similarly for individuals American real income tax rates are roughly flat, since richer people tend to make use of more exemptions.
You mean Two Factor yeah? Because telegram already relies on two step.
Wouldn't the change of rule you are suggesting just lead to Facebook moving HQ to Singapore?
If some of these accounts have been deleted how has a hacker got a username and password for them?
>> But they are exposed!

For their exposure, employees are compensated with salaries. Are you willing to pay your company money if the product you work on misses expectations?
diggan: Would be great if you could file issues for anything you've had trouble with on Dokku.
Labor theory of value claims that the value of X depends only on the amount of labor required to produce X. This theory doesn't explain how gold is more valuable than iron, or how $UNICORN is more valuable then this other startup. So it's a bad theory.

matthewowen's argument is not assuming the labor theory of value is true. It's just pointing out that, other things being equal, if the demand for X increases then the demand for X-makers' labor increases too; hence X-makers' wages increase.
I got Greenero which is a fantastic name for a money related app. This is really fun.
How's it going to notify you if you're not looking at the web page?
Apache Spark is one of the most popular analytics frameworks for large datasets, and would be substantially harder to implement in a non-functional language.
The negotiator is going to try to work with the suspect. If the suspect is communicating with people online that could undermine the negotiations and make the situation much more dangerous for both.
> There are real mitigations (W^X, ASLR, stack cookies)

We've had these for nearly a decade with other software. Have they completely stopped bugs/exploits in that time?

I'm not trying to take away from the usefulness of those mitigations against certain classes of exploits but the point of "lore" such as sandboxing is to promote defense in depth. If there's a buffer overflow which is exploitable then containing that in a restricted sandbox with no permissions to do anything requires more work to break out of.
This is incorrect. As of .net 4.6 it defaults to "tls12 | tls11 | tls" unless you specifically set a registry setting to do otherwise. You can see this in the reference source[0]

[0] - http://referencesource.microsoft.com/#System/net/System/Net/...
If the company is growing quickly, you might soon end up being more senior than some of the new hires, and that might give you opportunities to move into a role with greater responsibility and impact.

As someone who began my career by learning from some experienced and talented developers, I highly recommend staying. You may not have this opportunity in future jobs.
I believe you're mistaking "easy" with "convenient".
Actually, on Android Firefox works much better than Chrome exactly because they are independent.

Mobile Firefox allows extension, crucially adblockers. I don't think mobile Chrome will allow those anytime soon.
SMS is the first factor in the case of Telegram. The 2-step authentication Telegram provides is through email.
One the contract ended. The other I'm still at.
My point is you've got to overcome the attraction to "only processed by a computer or under lawful process".

For example, NSA surveillance has no direct effects on the average US citizen. It is a setup for bad things to happen, has possible political meta-effects, and is a worrying trend. But if the process is successfully constrained by law, then to your average person it represents a capability rather than a vulnerability. This has little to do with your average person not understanding technology, but instead with their feeling safe as part of a majority.
if police are about to shoot, and have good cause to, then it would seem reasonable that they be allowed to use sleep gas or tranquilizer, similar to what doctors use during operation. Seems better than killing them.

Downside could be lawsuites against the police for "damages" that the sleep gas caused.
The appeal of Haskell for me isn't necessarily that it makes everything easier. It does make a lot of things easier, but also many things become more difficult. No, the appeal of a purely functional language with an expressive type system is that it helps me write correct programs. I'm not claiming that Haskell will magically make code free of bugs, but in my personal experience when I write Haskell I make far fewer mistakes.

I can't really make the same claim of other functional languages that I've used, especially those with dynamic type checking.

There's really not much point in arguing about programming languages, though. People like what they like. I knew a guy that thought Fortran was still the greatest programming language because it's the fastest. Then you have the embedded device guys that will be using C until they die despite a mountain of valid criticism. Then there are the Lisp folks who are smart enough to not need help from a compiler to write programs. Etc. The thing is, these people are usually really productive with the tool that they've mastered, so of course they're all going to have anecdotal evidence of their language's superiority, just like me.
The allure of easy concurrency is a trap. My functional programming experience comes from Scala, and the building of systems usually ends up like this:

1. Take an approachable problem and break it into composable functional units - mostly monads and abstract syntax trees

2. Try to write something useful to actually compose and execute these pieces

3. Give up and use scalaz

4. Forsake static typing

5. Coup de grace - sprinkle in implicits for an extra "fuck you" to future maintainers

6. System is shitcanned - subsequent attempt uses Spark

The lesson learned is that most languages can be used to build a concurrent system, but you're often better served by choosing the language with a community that produces the most useful tools, frameworks and APIs for the problem you're solving.
How so?

Pattern matching makes for more readable code. And more readable code makes writing projects easier.

It is also more convenient to write code using pattern matching, but that isn't the primary benefit.
SEEKING FREELANCER | Sweden | Remote only | $10-$20 / hour, less than part time

Do you want to work one or two hours, one or some days each week?

The job tasks: Reading IT security vulnerabilities lists, and tag the
vulnerabilities with tags like `nginx` `nginx-1.11` `nginx-1.11.13`.

Requirements: Being able to tag the vulnerabilities correctly. And being
meticulous. And fairly fluent in (written) English.

How the work you produce will be used: Slightly save the world from IT
security vulnerabilities.

I'm looking for more than one person for this job.

I would probably want you to start working for me via Upwork or Freelancer.com,
because I think that's an easy way to ensure we have a client-freelancer
relationship, not an employer-employee. And later, if Upwork or Freelancer
does something weird (Upwork recently raised their fees 100% for example), we
can leave them, because we found each other via Hacker News (so Upwork's
or Freelancer's non-circumvention rules shouldn't apply).

You would work only a few hours this month (August 2016). Then, in September
and onwards, a few hours each week.

Please send me an email, see my profile.

Kind regards,
KajMagnus
Approaching Graphite 1.0
> Flash and Media Plugins (video decoders, EME/DRM) have already been sandboxed for several releases.

Firefox provides its own sandboxing now? Flash used to use a subset of the Chrome sandbox for Flash but that was restricted to the 32-bit version of the browser. As far as I was aware Firefox just ran it in the plugin-container processes for crash protection and nothing else (if protected mode wasn't being used or if you were on 64-bit Firefox). Does Firefox now make use of OS mitigations and integrity levels for sandboxing the plugin process?
Yes, but their contract and fiduciary duty rests with the employer, not the candidate. They are paid by the company to find an employee, not the other way around.
I have read about that. And while it would explain the repetitiveness it's independent of how his writing appears to me. Needless to say, a lot of people disagree with my view of his writing.
Not to mention that there are much better libraries for data-parallel programming available for C/C++, plus there are languages designed for data-parallelism (OpenCL, ISPC) and they're not functional either.

Untold amounts of energy (and dollars) must have been wasted on the "convenience" of writing some program in Python that scales over cluster of MapReduce nodes, without investigating how an in-core solution in a straightforward native implementation would have performed.
> perhaps there is a public good in not showing an ongoing live police operation?

Fair enough, but maybe just delay any posts of an active operation, instead of censoring them?
I can't wait for the tools side of things to pick up on the MAX_PATH fixes. msbuild path limits have been a thorn in my side at a few jobs now and it will be nice to finally kiss them goodbye.

Nice to see that stuff on UserVoice does get acted on for sure!
Risk aversion: exactly. Couldn't have stated it better.
Are you sure it's being "determined", in a SIGINT sense? Perhaps ISIS have made public mention somewhere of their usage of the service. Or perhaps others (e.g. opposing forces) have just shoulder-surfed some ISIS members using it, or looked through their phones.