skysight-inc/HackerNews huggingface dataset:
Fair enough; I knew do notation was sugar for bind, but I didn't realize/forgot about the time traveling monad.

Follow up questions bc I'm still a Haskell noob:

Do you know if async/wait from Control.Concurrent.Async ensure linear sequencing?

Could the sequencing problem be solved if linear types make their way into Haskell? (They seem to mainly be about memory management, but I'm not sure about other potential applications)
At least I know that in Germany before the "Allgemeines Gleichbehandlungsgesetz (AGG)" (general equality law) was passed, companies were more open about reasons. Since this law was passed, any openness can easily lead to a lawsuite against the company where the company has to prove that they did not discriminate against the candidate. Indeed when the law was passed there were lots of lawsuits of really untuitable candidates, where the company could nevertheless not prove up to "valid in court" that it did not discriminate against the candidate for reasons specified in this law and thus had to pay the unsuitable candidate some months of salary as compensation.
Virtual machine is probably the most common solution.
Bottery – A conversational agent prototyping platform
What Congress Should Ask Tech Executives About Russia
Just a keyword filter works great for reducing the noise. I wrote one for hckrnews.com:

https://gist.github.com/ivmirx/66a0015884d44297ea05a8c54d935...
Yeah. I run uBlock Origin in "medium mode", defaulting to blocking third-party resources, but I'm pretty used to enabling them to get sites working. Enabling the most likely domains on this site just didn't do anything, so I'm just not going to bother doing anything more.
> Is this really big news, or some skewed view of a study?

Observational studies about the so-called benefits of aspirin come several times a year. But hey, why don't they put it in actual clinical trial instead, if they are SO confident it works so well?
Wouldn't that same logic mean that we can't have JavaScript, CSS, image/audio/video, etc. because some people will send too much junk? We can't prevent people from using the web badly but anyone who doesn't completely disregard the user experience will be subject to the usual feedback loop.
They could use billing address or something else to establish your location instead of your ip.
I am curious who the customers for this service are and what document formats they deal with.
Credit-card is imprinted once for all time; a hotel room key may be imprinted at any time, for each time a guest needs a new key. Presumably the "Read Only" vs "Read/Write" nature of these usecases confers a particular amount of robustness on the former.
I'm a big fan of datacamp. You should definitely give this a try. It would be great to expand the reach of your lessons without the infrastructure overhead of every user hitting your server with their code. Hit up the skulpt dev listserve if you want some help. Or I'm at elliott@trinket.io.

Plug: you could easily prototype this with Trinket embeds. Add #!/bin/python3 to the top of our Python (Skulpt) trinkets to get strict Py3 mode. Add data files via the + button (no directory support, so treat them as all in the local directory). Use the Share menu to get embed code. Paste. You've got your first interactive lesson. If your users like it, you can then decide whether and how to build skulpt in to the site.
I also remember having a terrible experience with games for windows live back in the day... it wouldn't let me play my legally purchased game without creating an account first. Problem was, there were problems creating the account! When I finally got it working somehow, it decided that games for windows live needed a 3 hour update first. I was never more furious at a game/drm before or since. Man I hated games for windows live, glad that shit is dead.
I remember when I bought Assassin's Creed 2 years ago (legitimate, legal copy from Steam) and the game would never connect to the authentication servers, no matter what I tried.

I ended up having to download a cracked version of my legally owned game just to play it.
> it's arguably better to work from a framework which
guarantees that it won't be by construction... rather than attempting a game-of-operation where minor modifications to your program might seemingly randomly knock into undecidable-land.

I presume that a programming language is a compromise between expressiveness and decidability. Cost estimation feature is
definitely a good one until having that feature stops you from being able to develop your business logic in a convenient-enough manner.
Regarding the latter, I am not convinced that Simplicity is a nice fit.
Most people in that town are probably living off wellfare.

Yes, it's cheap, but there aren't many good job opportunities around a ghost town.
Post-Quantum Cryptography using Supersingular Isogenies:
https://eprint.iacr.org/2011/506.pdf
I’ve never even heard of an interviewer knocking someone for having more than one language on their resume.

I’m not saying you need 10 or all the trendiest things. You need at least 2.

Programming is a job of constant problem solving. If you’ve done the job close to 10 years and never seen a problem with the language that you are using...that actually tells me more about you than any other question I can answer. It tells me that you are married to one stack, you’re invested in it, you’re probably going to be highly resistant to solutions that don’t fit in that box. And it tells me that because languages are all about trade offs because there isn’t a perfect language out there. It tells me that you have your hammer.

People are strongly confusing my comment with “know all the cool tech trends and program in your spare time constantly”.

I did not say that. I said use ONE additional language if you’ve been working for more than 5 years. ONE. It’s a very low bar and if that is shocking, silly or offensive it is probably worth it to take a hard look at why. You could meet that criteria in a single weekend if you wanted to.

This isn’t directed at you but the comments I’ve seen so far.
Shelley: Human-AI collaborated horror stories
Pattern matching interfaces also makes finding exactly what underlying object is being used in a given context difficult as well. With explicitly declared interfaces, you can easily find all implementations. With pattern matching it's a bit more complicated.
I take aspirin protect, made by bayer. Grandad and dad had heart issues, so my dr started me a while ago on it as to curb the risks.

An aspirin a day will also make your nose bleed after a few weeks. Albeit not profusely but if you blow your nose, you will see blood.

take one every 3rd say. Unless its a very small dosage with delayed release.

Aspirin should not be messed with, make sure you eat before you take a pill, or itll tear a hole in your stomach. Ive made that mistake once a decade ago.

Please consult your doctor before grabbing off-the-counter aspirin.
Is Linux Kernel Development Good Enough to Make Your Life Depend on It?
I meant that western government (US, and Europe) enact such regulations for imported goods.
Bug in Google's Bug Tracker Lets Researcher Access List of Vulnerabilities
It's the friction. Facebook gets people to pay for stupid games, over and over again, largely because once you pay the first the time, the friction is gone.

The WebPayments API might solve this: https://developers.google.com/web/fundamentals/payments/
> The burden of proof lies with the proponents of DRM!

That seems like a just world fallacy. The decision is made based on the perceived risk/reward by the publisher before you the consumer ever have a role to play. If they have internally decided this is "worth it", then it is _to them_.

If you want to correct their internal model of a customer, the one where it is worthwhile to use DRM, then the burden lies on you. Not that I am suggesting you can but, theirs is the incumbent position, yours is the challenger.

If you really don't like the DRM policy, don't pirate the game either. Pirating solves your problem (the DRM) but it doesn't correct their model of you. Lots of active pirates are still seen as fans of the game and potentially customers. They still see an "opportunity to convert" if they can just get stronger DRM out the door for the next title.

Saying "people do pay for content if they can" is seeing it from your perspective. To change their minds you have to see it from their perspective. Even if you feel it is objectively untrue, their perspective is that piracy is lost revenue and DRM reduces that loss.
Im not a believer in the efficient market hypothesis. Remember, it's a hypothesis.

Also, The grand central station analogy is just that, an analogy.

Both of these dangerously oversimplify the phenomenon they try to describe. Modern Markets are unfathomably complex systems.

The Efficient market hypothesis is useful as a tool in reaching approximate, generalized, comprehension (ie: for lays and as a peripheral complement for practictioners), but not at all useful in application (some wonderful historical examples out there, study up!).

The fact is that price and markets are not mechanistic. Price has some seemingly objective measures, but those are actually based on projections of future value.

Price is based on collectively determined projections/belief of future value, sure, but this talk of markets becoming more efficient is moot, as we are seeing that, while reacting faster and in more iterations due to transaction efficiency, those don't help us find a 'better' indexable measure of the future value. Furthermore, transactuon costs have lowered, but it's arguable that the diversity of perspectives governing price have been reduced quite drastically.

1) unquestioning belief in efficient market hypothesis is a classic 'confuse the word-concept rose with the actual rose' fallacy. It doesn't work in making actual decisions.

2) price is a subjective gauge of expected future value. As we arent in the future it's impossible to have a more efficient price, since there is no objectivity with which to match.

3) price finding efficiency ≠ transaction efficiency

4) transaction efficiency has improved concurrently with the hyperstandardization of perspective, method and hypercentralization of participation, which has made price-finding of 'financial markets' much less effective as a universal gauge with any bearing on physical markets composed of commercial transactions with merit to anyone other than speculators in abstract 'markets.'

5. Considering all of the above, your argument that improved transaction efficiency is the same as improved price efficiency, and that faster and cheaper transactions will reduce brain-drain seems about as silly as the 'we don't need to worry about babyloniancivilization-induced mass-extinction because singularity.'
The origin of my confusion is the definition of GET as idempotent. My understanding of this verb is it (should) cause no mutations. So the correct classification of GET is "safe".
Love how you just summed up (in my mind) the reasons for Netflix's success.

Really glad that the market really played its role by providing customers with a near-perfect (Netflix's library is inconsistent to say the least) viewing experience.
I can see this being true. Also Xarelto and other drugs that can be used to prevent strokes are good for some things but the cons outweighs the pros for sure.
It was in fact possible to go straight to a Master’s in Software Engineering.

Oxford’s distance Master’s will take experience in place of a degree.

https://www.cs.ox.ac.uk/softeng/
It's become common to prescribe daily aspirin for older people afaik
What strikes me about this is how little weight recruiters put on referrals from current employees. I would have thought that being recommended by an internal employee would get you an initial interview at the very least. Surely a trusted employee’s recommendation is more reliable than whatever random sift the recruiters have.

Does anyone with experience of recruitment have any stats on how successful referred applicants tend to be?
If you expect to save $200k on it, it would make sense to quit your job and dedicate a year fully towards construction.
AVRs are great for small embedded applications (I think only 8-bit architecture with good compiler support), but I don't get why Arduino is so popular. Poor "IDE" with some horrible C++ preprocessor, heavy libraries abstracting important hardware details, and no onboard debugger.
Related, the "Verdingkinder" in Switzerland
http://www.bbc.com/news/world-europe-16620597
> side effects can be encapsulated, abstracted, and injected to create testable code in "side-effect" heavy situations.

Absolutely, but at that point you're moving the side effect out to the boundary and separating it from the logic. Then you can unit-test the logic away from the side effect (but the test of the side effect itself still has to be an integration test).
Why do you say that? I have several friends who found it a great thing, though as people they are definitely outliers, and I haven't asked them again in a couple of years.
You can get tiny dosage pills, I use 75mg ones -- easily available at the supermarket in the uk. No node bleeding with that, even if you do risk bleeding a bit more than usual if you cut yourself....
Small price to pay for the 'feature' of thinning the blood, I suppose?
That is not the kind of side effect that Haskellers would acknowledge as necessary (and I'd see it as a bad idea). We can call it a "side effect" but I think there's a qualitative difference between that and something like file I/O or async.
You don't use AWS in the first place. Most projects are better off going with bare metal and use spot instances for spikes. Will cut your costs dramatically.
Amazon Lightsail instances can provide cheaper bandwidth. The $5/month subscription includes 1TB, while 1TB of outgoing data on EC2 would cost $90 ($0.09 per GB).

(This is such a big difference that I don't really understand it.)
Yes, I'm in the US.

I try to avoid chatter during the day. It distracts too much from deep work. I do most of my chatting on the way to and from the kitchen or restroom. And my phone is never out of arm's reach.
JacaScript is another frequently used language. It along with Python are typically what I see new grads using. More experienced interviewees tend to use Java/C#/C++. I interviewed in C# despite most of ,y interviewers not knowing it (though any dev can figure C# out well enough to evaluate algorithm correctness). I've also interviewed one person in Go ... despite me not really knowing Go. That's when it's really helpful to have written down every character during the interview for writing up the evaluation afterwards.
That's what I would usually do.

I have almost 2 decades of interesting experience as a software dev. I am now learning hardware design so that I can create niche hardware products and use my dev experience as an advantage.

I decided to fix it only because I am of the opinion that if I want to act professional in any area I can't shy away from projects like that.

If I calculated the time I spent on this I could have easily bought few of these, new, for the time I was not spending on billable hours.
> Namely, if bad programmers write bad code that needs unit tests, they're also going to write bad unit tests that don't test the code correctly. So what's the point?

Let's assume you hire good programmers, because otherwise you're doomed. But oftentimes, the "good" programmer and the "bad" programmer are the same person, six months apart:

1. John writes some good code, with good integration tests and good unit tests. He understands the code base. When he deploys his code, he finds a couple of bugs and adds regression tests.

2. Six months later, John needs to work on his code again to replace a low-level module. He's forgotten a lot of details. He makes some changes, but he's forgotten some corner cases. The tests fail, showing him what needs to be fixed.

3. A year later, John is busy on another project, and Jane needs to take over John's code and make significant changes. Jane's an awesome developer, but she just got dropped into 20,000 lines of unfamiliar code. The tests will help ensure she doesn't break too much.

Also, unit tests (and specifically TDD) can offer two additional advantages:

1. They encourage you to design your APIs before implementing them, making APIs a bit more pleasant and easier to use in isolation.

2. The "red-green-refactor-repeat" loop is almost like the "reward loop" in a video game. By offering small goals and frequent victories, it makes it easier to keep productivity high for hours at a time.

Sometimes you can get away without tests: smaller projects, smaller teams, statically-typed languages, and minimal maintenance can all help. But when things involve multiple good developers working for years, tests can really help.
Nobody knows about a large order being filled cross multiple exchanges, at most they see a price level get filled at one exchange and take from that what they want. The majority of large cross-exchange orders are done via ISO orders which bypass routing mechanisms and exist for the sole purpose of executing large cross-exchange orders. Even if one doesn't want to lift the price, people trying to fill a large order generally route multiple orders to different exchanges.

An HFT might see one price level go away before another even with the ISO mechanism, but it's far too late to act on that information by the time it's visible on the lit markets.
> The most robust, relevant and profitable companies out there basically say, 'F* trends, show us your worth in salt'.

It took me few tries to understand this, after reading about F*: https://news.ycombinator.com/item?id=15582969

I think you're mostly right, though. I think the article is probably right that companies who _say_ "we only hire the best" don't necessarily even hire good programmers. I don't think the companies you mentioned really care if they have the best, especially since that's pretty hard to measure anyway. They want people that are going to do great job in the area they were hired to work in.
I take aspirin on a regular cadence and have tinnitus as a fun side effect. This is actually quite common [1] but you won't hear a doctor giving that warning. No pun intended.

[1] http://www.arthritis.org/living-with-arthritis/treatments/me...
Eight Alternatives to the Raspberry Pi
Automation and Post-Scarcity
As a conspiracy theorist, I actually believe it is much larger. Hillary colluded with Manafort and Muller to try to prove Trump colluded with Russia.
I wonder to what extent "modern humans" evolved as a result of earlier species controlling fire.
Don't underestimate the power of plug-and-play ease of use and the inclusion of dozens of ready-to-go example programs. And good documentation. And a welcoming, friendly, active user community. And marketing to people who want to make something light up or move, and don't (yet) have a need for an onboard debugger.
> xmysql a lot more annoying to write

That's pretty subjective. Personally, I'd much rather write "api/foo/:id/bar?_sort=field1" than "select * from foo inner join bar on foo.id = bar.foo_id order by field1".

Not to mention that this enables people who are not as familiar with writing raw SQL to move a lot faster, which is the point when you're prototyping/hacking.
What’s New in Python 3.7 – 10 Biggest Features and Changes
Clinical trials for cancer prevention would mean 20-50 years no? That's a pretty big undertaking.

I mean you would need a control group and a real one, and then just wait ... for a long time
(Also, if I'm being pedantic, Sundevil had nothing to do with the the raid either. Sundevil was run by an idiot in Arizona. All of the Legion of Doom-related raids were run by an idiot in Chicago.)
Tech Companies Set to Tell Congress About Russian Election Meddling
>The average developer can't even CSS,

What do you mean by that? How sophisticated is it to "do CSS"? When I've dealt with it, you basically look at the inspector and at your CSS libraries of preexisting classes, and basically do a combination of attaching classes and writing new ones with custom styles until you get it all to look right.

What should I be looking to learn?
The dollhouses of death that changed forensic science
What Wall Street Wants to Know About Tesla’s Model 3
Most of my SWE coworkers at Google did not graduate from a "top college". Not sure where you're getting this impression from. There simply aren't enough annual graduates of the top programs to fully populate all tech companies, and there are plenty of people from other schools (like me) who also do well.
The early hominid who invented the baby sling was the first transhumanist; after that we co-evolved with our technology (we wouldn't have been able to develop our large and especially plastic brains at birth, with our corresponding especially long maturation periods, if we couldn't carry our children in slings).
do you think "modern humans" could have been possible without it?
> When I write ruby code, I keep wondering "where does this method come from?" and have to grep my codebase.

Sounds like a shortcoming of your tools. I spend a lot of time in Visual Studio working on native C++ and even there I can ctrl-click on something and jump to the declaration or definition. I bet there's something even better for Ruby.
This submission appears to be a reaction to the following submission:

"Why Most Unit Testing Is Waste"

https://news.ycombinator.com/item?id=15591190

(just for the record, i.e. for future readers)
Facebook has become sort of the de facto internet for Myanmar
The abstract of the study is here:

http://www.gastrojournal.org/article/S0016-5085(17)30803-X/a...
Well, it is refreshing to see that both presidential candidates were equally lacking in morals and ethics and wanted to win at any cost.
React and TypeScript: The Basics – Getting Started
Apple Is Designing iPhones, iPads Without Qualcomm Parts, Source Says
Microsoft Presenter Gives Up on Edge, Installs Chrome
> The logical conclusion of this line of argument, which is dependent on the proposition that even bad unit tests have value, is that we could just automatically generate copious numbers of unit test cases for a given code base, and we would have something of value.

Actually, this is a surprisingly useful strategy! There are two common versions of this idea:

1. Invariant testing with random data. This usually goes by the name of "QuickCheck", and it allows writing tests that say things like, "If we reverse a random list twice, then it should equal the original list." In practice, this catches tons of corner case bugs.

2. Fuzz testing. In this case, the invariant is, "No matter how broken the input, my program should never crash (or corrupt the heap, or access uninitialized memory, or whatever)." Then you generate a billion random test cases and see what happens. This usually finds tons of bugs, and it's a staple of modern security testing.

So yeah, even random test cases are very valuable. :-)
Samsung Electronics unveils new leadership line-up
Why Google and Amazon Aren’t in the Dow
I've always known referrals to do exactly that; guarantee an interview.
He means do it well. There's a lot to doing CSS well, and frankly I just don't have any interest in learning all the ins and outs. It's not a fun platform to work in, it's very fiddly, and it's not exactly programming either.

There's an art-form to doing amazing pixel perfect web designs, and I really respect the people who are good at it. That's not me though, and it's never going to be me.