skysight-inc/HackerNews huggingface dataset:
Pascal also has this, but i remember some Ada-related post from a few months ago here that had code along the lines of (imaginary syntax, i don't remember the exact code):

type Int is range 0 .. 100 check(v)
if (v = 10) or (v = 50) then error;
end;

That would allow all values of v between 0 and 100, except 10 and 50. Note that everything after (and including) "check" is something i came up (and is more Pascal-ish), not what i am talking about. I also remember that this could be used with objects so that you could have something like (this one is Object Pascal-ish, i do not know Ada):

type Foo = object
Enabled : Boolean; Magnitude : 0..1000;
check
if (Enabled and (Magnitude=0)) or
(not Enabled and (Magnitude > 0)) then error;
end;
procedure Bar;
end;

The code in check would be called whenever the object changes externally, so "Bar" can change Enabled and Magnitude with the check being invoked only at the exit of Bar to ensure object consistency and not whenever Bar does the assignment (so it can do a Enabled:=False; Magnitude:=0; and not fail at the first assignment), but assigning those values directly from outside the object would trigger it (so having a var f: Foo; and then writing f.Enabled:=True; would trigger the error).

Or at least that is what i remember understanding.

Maybe i remember some other Pascal-styled language, but the only other such language i know of is Oberon and that goes against the "put everything imaginable, plus extra more" mentality of Ada seems to have :-P.
It's $1 for removing the watermark from the video. The free version still has the watermark.
China, Russia Put Millions in This Startup to Recognize Your Face
Penny stocks are respectable investments by comparison.
This is a plug for my stuff, but a relevant plug nonetheless:

If you think you need a VPN, you probably need a good VPN protocol to go with it. Rather than using outdated legacy cruft like OpenVPN or IPsec, you might like WireGuard:

https://www.wireguard.com/

It's still in the early days, but the protocol is formally verified, the overall design has received academic review, the Linux implementation is maturing quite rapidly, and we'll soon have Mac and Windows clients available. Part of the WireGuard Protocol uses the Noise Protocol Framework from Trevor Perrin, of Signal Protocol fame.
What the hell does top 10 school mean anyway? Top 10 most expensive?
You seem to be not exactly disagreeing with the article, but maybe tightening the slack on what we would call a “trendy company.” The author did not specify any successes of the “trendy companies” being discussed(I’m not including fundraising as a success of the company), but they did speecify some failures, and left the options open for more. The author, like you, praised Google for not hiring on basis of “trendiness.” I think you’re in more agreement than disagreement.

The article’s title/headline could be adjusted to more accurately represent the claims made in it.
Hi there! One of the Skulpt maintainers here. (Also founder of Anvil - https://anvil.works. Never thought I'd have two projects on the front page at once!)

Feel free to ask any questions about the gory internals and how it works. You might also enjoy my talk from PyCon US this summer, about how Skulpt compiles blocking Python code into non-blocking Javascript: https://anvil.works/blog/pycon-talk
Suits often all look very similar for one.
Some companies hire by buzzword.
Some by looks / first impression / "culture fit" / age.
Some care about real skills and behavior.

That's pretty much it. Go hunt for the latter and you'll be fine.
What if you're operating on the assumption that every employer gives you some form of laptop to work on then you're good to go. This assumes you don't do too much customisation. For me this works since I mainly use vim, so keeping my dotfiles in a repo is enough to transfer to another computer.
I think you have the option of taking the test in Java, C++ or Python. I hadn't heard of the C# option. Thank you for mentioning the same.
Psychedelics (LSD and mushrooms) are VERY different in their effects than weed. Have tried both categories.
UnderConstruction Page Plugin Review
I pirated the Witcher 3 originally, but it was so good I ended up buying it just to support the company. Step one in stopping piracy is to make something actually worth paying for.
Even for templating it doesn't have to be a bad choice. I use it for templating and while it's certainly not the most powerful tool out there, it allows to quickly create site engines that perform very well (in case existing tools don't fit the use case).

Not a fan of the built-in template syntax but there are luckily good (and faster) alternatives.
There is supposed to be... evidence?
> Each of these 11 configurations should be equally likely to be the actual position.

This is not true. For calculating the odds of a configuration you need to take into account the non-border squares and the number of the remaining mines too.

Example (3 remaining mines):

1111
*22*
xxxx
xxxx

The * represents the marked mines, 'x' represents the unmarked squares.

There are three border configurations:

1. mine, empty, empty, mine
2. empty, mine, empty, empty
3. empty, empty, mine, empty

But actually the first one is actually is 4 global configurations, as the remaining one mine can be anywhere on the remaining squares. The second and third are 6 and 6 global configurations respectively as the remaining two mines can be anywhere on the remaining 4 squares (4 choose 2).

The probabilities of a border squares to be empty are 3/4, 5/8, 5/8 and 3/4 respectively as opposed to 2/3, 2/3, 2/3 and 2/3 that your rule gives. The probability for a non-border square to be empty is 9/16, slightly more than 1/2.

One can argue that when the number of the remaining unmarked squares is large compared to the border squares this gives little difference. But it's not true, this gives significant differences even when this is the case.

[1] http://nothings.org/games/minesweeper/ "Counting unencountered mines"
What would this mean for planned obsolescence policies of phone manufacturers? If users don't keep buying new ones because the old ones never break?
Isn't it inconvenient to only use your phones for chats? During the day, I have quite a bit of chatter with my girlfriends, random friends, family. I'd hate to have to grab my phone to be able to quickly reply.

EDIT: Are you in the US? I've been in the industry (in Europe) for a while and I've never seen an employment contract that said anything like that.
Sadly, yes.

http://nypost.com/2013/01/27/city-says-cops-had-no-duty-to-p...

> [C]ity lawyers are arguing that the police had no legal duty to protect Joseph Lozito[.]

As mentioned in the video, the NYPD won that case.

According to the NYPD at the time, the cop was a hero who tackled an armed madman: https://twitter.com/NYPDnews/status/36601438545125376

The worst part is, some states legally require civilians to step in and assist police officers. So, if the situation had been reversed in one of those states, and a cop were the victim, the train passengers may have been liable for inaction. As it actually happened, the inaction of the cops who hid in the engineer's compartment is considered lawful.

Community-police relations in the USA are pretty bad by many accounts. There is a large amount of civil outcry over this among Americans, including many prominent black athletes and celebrities (not sure if you've heard of Black Lives Matter, but systemic police brutality is the central topic of the movement). There are videos of police officers murdering compliant and unarmed civilians, often without consequences if there is a trial at all. Aside from that, there have been situations (search "Baltimore officer planting drugs" for one such video) where police have planted incriminating evidence only to later be implicated by their surveillance cameras.

My take is that the average American (especially those who are not of European descent) appreciates the service that police officers perform, but recognizes that a slight irritation of a police officer can lead to a very aggressive, potentially violent encounter. Bravery and congeniality are not universal virtues among American cops.

I personally believe that it's safe to say that police departments in the USA protect their own kind, even to the detriment of their ability to protect civilians. Our cops get a lot of stuff right, they have great equipment, they usually come quickly when called on, many of them truly are great public servants and protectors, but they generally go unpunished when they do wrong.

American police are accustomed to use lethal force because the self-preservation argument is very strongly accepted in American courts. "I feared for my life" is enough justification for a cop to attack an unarmed civilian. Betty Jo Shelby was acquitted in Tulsa for fearfully killing a man who had put his hands on his vehicle in submission to police. A sheriff's deputy in Tennessee tased an 81-year-old woman with garden tools in her hands because he was concerned for his own safety.

I see this case as a logical extension of the permissibility of "I feared for my life," an abdication of bravery that erodes public confidence in the police. And ultimately, the loser in this specific case is the NYPD, for lionizing a coward cop who hid while a mass murderer attacked yet another person.
Yes it exists, but has been bought by Eyeo. That's the company behind AdBlock Plus, whos' business practices are one of the reasons why so many people have switched to uBlock Origin.

Edit: And it has already started: Eyeo has made major changes to how Flattr works (now they decide who gets your money, and how much of it, not you) and hiked the prices.
I think what the author meant is: It's a guess where the best position is for the first click.

You can't fail with the first move but you can have different outcomes and it's advisable to choose a position where the expected information gain is optimal.
Thanks for the feedback :) Our initial "core" has been surrounding the live chat, but our approach has been to build it into many separate pieces. This allows us to focus on what we think are the major integration points next. As well as ensure that the things that need to scale well, do, like our socket server.
Yeah hiring seems to be something hard. I mean it is not as simeple as writing a value to every candiate, sort them and choose the best, but instead you have to individually rate each candidate while considering the effect it will have on your existing company.
i once thought of implanting a magnets to keep my glasses on.
Like others have said, try to solve problems instead of looking for ideas.

If you want a list of over 30 ideas (one of which I've been working on and recently got accepted to interview at YC for), feel free to email me and I'll send you my list. I write them down as they come to me, as crazy as some might sound. lxc5296 [at] gmail.

Here's one:

Why don't you come up with a startup that helps people find ideas? Clearly it's a problem you yourself have, as well as many others. It seems impractical, but most great things are until someone comes along and does it right.

How it could work: people can call into a center and talk with people that specialize in certain topics and have conversations that lead to ideas. The expert can get a feel for the callers interests and find an intersection between them and problems that need to be solved.

Or, it can be strictly software based.

Eventually it can turn into a platform for people that don't know what direction to go in in their life to seek help and get guidance. Trust me, there's a lot of those people in the world (basically all millenials). Huge market.
I'm surprised that Caddy (https://caddyserver.com/) hasn't been mentioned yet. While I'm not entirely happy with the business direction it's been moving in, it's arguably much easier to use than nginx, doesn't require a container, and also automatically sets up TLS ("SSL") out of the box.

It doesn't provide a panel, but arguably once you reach a scale where you want to run >1 instances, you're probably going to want to go beyond a default configuration anyway, and use some configuration that's more tailored towards your usecase.

As a point of criticism towards this project in particular: the README makes it sound like it'll magically scale up your application, but it makes absolutely no mention of how to handle state (eg. your database) in that scenario. Spawning new instances (which this project does) is the easy part of scaling, the difficult part is state management and it doesn't address that at all.

As a completely unrelated piece of advice, just because this is mentioned in the README: do not under any circumstances make use of domain registration deals that drop the price for a common TLD like .com below $7 or so. There's a certain fee that the registrar has to pay to the TLD registry per domain, and if the registrar is charging you less than that, that means they're getting the money from somewhere else - often through hidden upsells, exorbitant renewal fees, convoluted transfer systems that try to lock you in, or other customer-hostile schemes.
In the original game, yes. Not every clone.

I went out of my way to lookup the way that the original minesweeper handled this case, as you can see from that link it does have a perceptible effect on the game.
Exactly, being overdressed can be as bad as underdressed. If everyone expects you to wear jeans and t-shirt, a suit can be as damaging as not wearing one when you're expected to.
Overview: Email services for business and private
Thanks for the feedback! Its so easy to get tunnel vision on ease of setup since we've been doing it for so long, so we'll definitely improve the setup docs!
How is your exchange indicative of a behavioral trend? I find no fault with his words or tone in that thread...
It is truly funny how first people want 4k monitors but when an application actually uses the given size at full, they cry about "oh, it is too wide", and we end up with disgusting design of web pages with ultra-narrow column of content and wide empty (or ads-filled) columns by both sides.
not only is it often waste but it can tremendously add to code bloat and 'dept'. I saw a dev spending 80% of his time 'fixing test setup' instead of fixing code.
Have you ever been forced to use a company internal product and it sucked. And you told them soo- and they ignored it. Because stroking there egos is more important then your minor sales job.
And then you get your hands on the loudest of all amplifiers, and you get the chance for the biggest i told you so in history.

Sometimes opening the wound and drain the pus, is the cure.
> I won't pay 10 dollars a month (each) to the NYT (LAT, WaPo, et al) for a subscription

What about a Spotify model for articles where you pay a monthly subscription to access all articles from the NYT, WaPo, LAT, Guardian, Independent, Telegraph, Le Monde, Der Spiegel, The Economist, Nature, National Geographic, Scientific American, London Review of Books ... ?

EDIT: I guess this is what Blendle is, as mentioned in a sibling comment, except Blendle seems to be pay-per-view and I'm suggesting monthly subscription. Presumably Blendle could also offer monthly subscription.
Only if it's a co-branded card. If you use your Visa issued by some bank to go shopping at Walmart, they won't get your personal details together with all items you bought. They can get the items but without the personal details (including age, wealth, etc), they're not that useful.
Even outside of the USA, the police are often useless. Then again, I'm biased, since I've already got a low opinion of the local police (and I say that as somebody who has never been in trouble with the law, or even had any issues with them myself). They're just hired thugs who believe they are (and often actually are) above the law.
This. A thousand times this. The debate about testing should stop being about what type of testing os the best and start being about what type of test to use where.
- Can you blacklist specific providers?
The high profile banker knows that computer security can be a money sinkhole. Unfortunately there's no clear and measurable relation between how much you spend on security and the benefits you get.
> It makes me think of how webpack won the builder/packer battle against gulp and grunt by assuming you're building a web app, and want typical web stuff.

But... it didn't. Webpack and Gulp/Grunt aren't even the same category of tool; on a real-world project, you're exceedingly likely to use a build runner like Gulp/Grunt with Webpack (or Browserify).

Webpack is fundamentally a module bundler for non-CommonJS environments; it's not a general-purpose build tool, and isn't really suitable for glueing together any tools that don't directly relate to your browser-targeted bundle. In some projects that's all you need, but that doesn't mean it has somehow "won" from generic build tools - it just tries to solve a different problem.
Legacy code = code without tests. You might write HQ code today, but without tests it'll become technical debt within a month or even a week down the line. Programmers come and go, unit tests are omnipresent.
I used Wireguard to connect multi datacenter nodes in a Kubernetes cluster recently and I recommend it. It works very well and is very simple compared to other VPN technologies. Thanks for your work. :)
The gitlab-for-intercom has genuine value there, so if I were you, I would just use a third party transport and build a killer product there.

Build something I ^H^H people want ;)

IMHO the rest can come later. Just my $0.02 . Excited to see what you come up with.
You can get very good lossless compression with floating point numbers, Facebook's Gorilla paper comes to mind. I usually use it for delta-of-delta encoding which provides very high compression for time series. While that won't really help in your case, their floating point encoding could help compressing matrices quite efficiently.

http://www.vldb.org/pvldb/vol8/p1816-teller.pdf [page 5]
Video Ad Measurement and Video Technology Terms
I will need to take a more careful look, mostly because it was too complex for my understanding, but some of the code indeed look a little like Lisp.

EDIT: Why do you say that?
I pretty much agree with all of this.

Unit tests are great when you have a large code base with dozens of apps and need to modify a core library to remove side effects. How do you know you didn't break one of the apps?

But if we go deeper, why does the core library have side effects? Because it was a crummy, poorly designed piece of crap to begin with. If it was originally written with high quality it wouldn't need the refactor now. The author noticed this. He wrote good code to begin with so it didn't need a lot of testing.

When you have a large team of mediocre engineers you need unit tests to guard against more bad code from getting in. They might even be brilliant engineers, stuck in a horrible process of churning out features to unrealistic deadlines.

If you have a great team, a great process, and a great budget with realistic goals, you can crank out amazingly good software without the need for a lot of unit tests. But that's not the real world. In the real world we have lots of unit tests. They are a band-aid over the other problems without addressing them specifically.
Can't see the regular version no more
The problem with cannabis is its extreme variance of effects. Some people like yourself seem to have very positive effects. Myself, I've consumed a whole wack of different drugs including the usual psychedelics plus various dissociatives over the years and cannabis is easily the most unpleasant in its effects on me.

Paranoia, very unpleasant thoughts and paranoia, sad feeling, accentuated body pain (I have chronic back/hip pain), headaches, anxiety. It's basically the opposite of what THC advocates seem to describe. And I've consumed quite a bit of it.

Hopefully along with legalization we can see a lot less proselytizing and some more realistic and scientific analysis.
Thank you for the explanation and the link!
Ask HN: Service to convert between different document formats
Hey HN guys and girls,

We are working on SaaS API to convert between different document formats (e.g. Excel/CAD/Email/whatever to PDF/TXT). I am wondering: which conversions pairs (source format / destination format) are of interest to you and why?

Thank you!
I agree with you, but there arr cultural differences in perception of bluntness. Some people see it as honest. Other people see it as rude.

Knowing that, some people are going to appreciate eg If you can't set an environment variable then power user tools probably are not for you while other people are going to be needled about it.
This seems great, will definitely give it a shot. One question: what about databases ? Can it handle that part too or do I have to manually set them up ?
No it won't be inferred as float->float->float if there is an int literal or whatever base type you pass to the function. Check typeclasses for how this works.
This is clearly an opinion-piece and as such I guess it's not terrible, but it certainly has enough points to disagree with.

From quickly reading through it, for instance I found the following things directly objectionable:

> "Unit testing was a staple of the FORTRAN days".

Such an attempt at discrediting something can be applied to anything, and it comes off as disingenuous, dishonest.

> "Unit tests are unlikely to test more than one
trillionth of the functionality of any given method in a
reasonable testing cycle. Get over it." ... Trillion is not used rhetorically here, but is based on the
different possible states given that the average object size

Who says you have to test the method? Who says you're not allowed to test functions which operate on a known, closed subset of data?

False dichotomy and plain bad math.

> If you find your testers splitting up functions to support
the testing process, you’re destroying your system architecture and code comprehension along with it.

That may be right. Or it may be possibly completely backwards. It's quite impossible to tell really, without asking why they are splitting up those functions.

If people do this for gaming some sort of system about "at least 80% coverage" or whatever, then clearly you should ask why people feel the need to game the system. Gaming the system, no matter what aspect, leads to bad choices.

Me however, I'm not splitting up my functions to game the system. I'm splitting up my system to separate data-retrieval from data-processing (so I can directly test processing without depending on whatever retrieval depends on).

I'm splitting up my functions to give them name and intents, this makes the code speak much clearer about what it is doing and why. The function name should be "what". The contents should be "how".

Basically I'm splitting up my function for good reasons.

If a function is long enough to contain enough actions, intermediate variables, loops and conditionals so that you need to stop thinking about and wonder what they do, and what their role is inside that function... That functions should be split up, because you do not have a clear "what" and "how" delimiter.

And guess what? That also assists testability. You can test that the "how" correctly assesses the "what".

This is not destroying your system.

Some of the functions you end up with may even turn out to be reusable across the class/system, meaning you increases consistency and correctness as a result too.

Again: This is not destroying your system. Quite the opposite.

I could go on, but I'm just at the 4th page of 21, and my comment is already the biggest in the thread, and I'm not planning on making a blog-post length response.

Just saying this document is severely biased, contains factual errors and is not a good thing to rely on to present an argument.
Show HN: Colourising video with machine learning and serverless functions
Take something like arcsin sin pi/2/x(x-1), where "arcsin sin pi*x/2" is "pointy" like a triangle wave. There you have it.