skysight-inc/HackerNews huggingface dataset:
It is very easy for you and I to throw up our hands and say the online trolling problem will never be solved, because we don't generally experience it in full force. We have the ability to shrug off comments that are unconstructively critical of us, because they only come very occasionally and are drowned out by positive comments.

Meanwhile, there are new voices that want in on the conversation - maybe they're young, or female, or minorities. They are routinely getting shouted down by our community, and here we are, admitting that they wouldn't face the same ire if they obscured their experience/gender/race by writing under psuedonyms.

I will do my part. I will downvote trolls, and I'd encourage others to do the same.
nitpick: I don't think you need --no-track in `branch --merged` as no branch is being created with that command.
I wonder if it's possible to write an algorithm that detects clickbait titles. There's usually only so many variations on them after all.

I know there's at least one browser extension that attempts to do this: http://links.spince.com/demo.html
There's no definition of "ironic" that I can think of applying to that. It's like saying that "beautiful painting" is subjective and contextual, but "still life painting" isn't. It just happens that pornography is almost[1] always considered NFSW, but again, I can't see how that is ironic.

[1] Almost, because porn is SFW when your work involves porn.
here's a cool median filtering algorithm (extensible to bilateral filtering/surface blur) which exhibits O(log r) performance:
http://www.shellandslate.com/download/fastmedian_5506.pdf
http://www.shellandslate.com/download/medianslides.pdf

also related are adobe's local laplacian filters:
http://people.csail.mit.edu/hasinoff/pubs/ParisEtAl11-lapfil...

at recent SIGGRAPHs, they showed off the halide DSL which can optimize filtering/schedule of image processing kernels for CPUs/GPUs.

also pretty cool related algorithms are domain transform edge aware filters:
http://www.inf.ufrgs.br/~eslgastal/DomainTransform/
if you use open cv, they're in 3.0 called DTFilter
I'd second the recommendation, it made me reschedule my day to ensure I consistently have 'deep work' time.

I took some rough notes if you don't have time to read the whole book right now:

http://jamesstuber.com/deepwork
We need to interpret those coefficients somehow. Real coefficients can be interpreted as mixing of colors, but for complex ones I don't see a good interpretation.
Introducing Google Container-VM Image
Actually, if you watch the review of the M4, they very directly say that in case the water runs out the engine performs exactly as the same, non water-boosted engine. So this whole sentence about water-boosted engines that are worse than non-water boosted ones when without water is garbage.

And evs are still not a solution for everyone. There doesn't seem to be any good idea on how to own and charge one if you live in an apartment with a shared parking lot or if you have to park on the street. You say that water-boosting will work great for people who buy $100k cars, but at the moment, it looks like EVs are only usable for people who can afford a house with a driveway.
The Next Big Idea May Be Growing Far from Silicon Valley
`git sprout <branch-name>` looks identical to `git checkout -b <branch-name>`.
Are the stock options involved based on unicorn valuations?
None of what you've stated is true for the following reasons.

1. Markets are not value free as people compose markets. Thus their personal values and those social values which they subscribe to are part of their reasoning about the market regardless of how they try to assert rationality as their primary motivator for their actions in the market.

2. Legal norms which I mentioned are PREDICATED on SOCIAL NORMS. Jim Crow didn't happen before some mean senators wanted it. It happened because the majority of former slave owners were part of the voting population. And they were able to convince many non-slave-owning Southerners that Jim Crow was a swell idea (see the history of the drug war for details on this, it's quite interesting).

3. Social norms don't just change because legal norms change. Even though in the United States redlining is illegal in many cases it's still in effect despite best efforts of legislators, lawyers, and even private organizations. So no amount of market action will ever erase those norms unless the environmental impact of those norms make it impossible for a significant portion of the market to operate without subsidy.

In short, you're confusing the issue as much as the person I was criticizing. Both of you expect people to act like homo economicus and that markets can overturn social norms just because. Also, Adam Smith didn't believe that social norms didn't affect markets otherwise why did he write Wealth of Nations as a criticism of Mercentalism which was a system of social and legal norms of his time? I think you really need to analyze my comments and come back with a better criticism that actually can apply to my points.
Ignore Africa at your peril
That's really nice, but I didn't find any examples of TS + Vue in all three repos though. Guess I'll play around with it in the weekend.
> At first glance Vue seems to be similar in spirit to Angular 1. Is that correct?

I don't understand why no-one wants to admit this so maybe I'm wrong but yes, I would say that's 100% true. Vue.js feels like a cleaner and slimmer version of Angular 1.
> It is easy to generate a random sequence of
inte- gers in the range l..N, so long as we don’t mind dupli-cates

Is it? I was surprised to learn of modulo bias [1]. Does the "Randint(1, J)" implementation take it into account? It's a very easy mistake to make and can have an impact on the uniformity of the shuffle.

If you haven't heard of it it has to do with the relationship between the range spanned by your system's RAND_MAX and J. If RAND_MAX is not a multiple of J, the highest range (RAND_MAX-J..RAND_MAX) will not deliver the entire span of J.

[1] https://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle#M...
For example: openSUSE, Manjaro, CentOS and Arch. If you install a DE like GNOME (evince), MATE (atril) or KDE (okular).
Why Africa is the world's untapped resource for tech talent
While most people in the industry were busy debating the usefulness and definition of "cloud", Amazon and others were busy building it. To me this is similar to that situation. There is real progress happening with practical benefit in AI, machine learning, deep learning, and Microsoft is committed to being at the forefront. Personally I'm not waiting. I'm teaching myself data modeling and other techniques that'll let me be part of the coming revolution.
I listen to DNR's latest shows as soon as I can.

https://www.DotNetRocks.com
Ask HN: How to buy stocks at IPO price?
Is there a way for an average person to buy stocks at IPO price?
I used dejavu for a college project with some classmates. We made an app called JamJar which stitches concert videos together based on audio fingerprints. It worked super well! We've neglected the app for a few months now, but you can still check it out at http://projectjamjar.com

Huge thanks to Deja-Vu! Awesome library
ok thanks. The ConvChain project is also very interesting.
I agree with your point, but just for the record:

The Lotus Elise + minor delta was the original thinking, but Tesla/Elon has repeatedly pointed out that it was a mistake; the Elise frame was dramatically reworked to the point where it would have been better to have started from scratch.
Convenience is exactly it.

Have to admit I find it pretty damn useful myself, even though I believe PDFs to be completely out of scope of a web browser.

I really wish the format would disappear. Everybody says it's useful at being a "perfect digital representation of what things look like on paper", which is certainly super useful for printing. But I cannot understand how so much information that should simply be distributed in either HTML (forms), epub (ebooks) or jpg/png (scans and digital images) is distributed over PDF, a pain-in-the-arse, overengineered format whose readers are always extremely slow and riddled with security issues and from which it's extremely hard to extract source data.
I believe the reasoning is that it is negative if it hurts the company's bottom line. It's hard, if not impossible, to causally correlate CEO compensation with company profits so there is no reason to assume for example that "golden parachutes" pay for themselves. They don't. If company profits scaled with C-level compension, why not double their bonuses already? That's silly.

And what would compensation per employee be indicative of? Nobody is criticizing that. There can be tension in public companies between the board's interests and the shareholders'. Questions of compensation is a common source.
Yeah I was thinking of the one included in Windows 8, didn't know that they dropped it.
I-phones and Android phones both exist. I don't think either is likely to die due to the existence of the other.

Just get on with building your thing. This mostly doesn't matter.
>How could you make sure it couldn't?

I just realized the answer to this is pretty obvious, you could have a network trained to classify child pornography and use it to censor the output.

Getting the training set would be an issue, you would probably have to work with law enforcement to do it.
> In DbC, you have preconditions and postconditions, but no means whatsoever to actually prove that, whenever the procedure's initial state meets the precondition, its final state will meet the postcondition.

Except many implementations of design by contract execute the postcondition check and raise an exception if it's not satisfied, so I don't think your statement is correct.
Why Private Bookmarking?
Thanks for the math help :)

That's looks like the size to cover the entire planet and completely remove all sunlight. But to counteract global warming, we'd need a much smaller area. If it's 1%, we're down to a mere $180B.

I'm sure you're right that other materials would be far more economical. My gut says Aluminum.
one thing i wish git would do would be to allow me to specify default options for certain aliases. for example, I quite like the `--short --branch` format of git status. but I can't do this:

[alias]
status = "status -sb"

because git just ignores those. i am then forced to setup non-standard commands just to bend git to my will.

in some cases, there are distinct `git-config` options I can set to get the right behavior, but that's way less flexible since stuff like `--force-with-lease` don't have their own config options.

the rationale behind this is, according to the git-config manpage, that "To avoid confusion and troubles with script usage, aliases that hide existing git commands are ignored". but then there's --porcelain for that, so i don't understand that limitation.

sigh.
People tend to talk around each other when discussing "ORM"s because the term conflates a few different things.

The most fundamental thing that is sometimes included as part of the "ORM" definitions is translating the data received from a query into objects the host programming environment understands, eg. a PostgreSQL varchar into a Ruby String. This is basically what you're talking about in (2). Everyone (I think?) agrees this is useful.

Next up the chain of usefulness is providing a version of the query interface that uses concepts native to the host environment, like chainable methods. This is what you're talking about in (1). Some people debate the usefulness of this over SQL strings, but most will agree that it is compelling because it lets you build queries out of composable parts, and to separate the parts of the final SQL string that are part of the query syntax vs. part of the query data (ie. for protection against injection).

Past this, there are a bunch of features like mapping to a domain model and validation and lifecycle management and on and on and on that are very debatable. If we would separate those first two things ("data translation" and "query composition" maybe?) from this other grab-bag of things ("ORM stuff"?) when talking about this, I think the discussions would be more enlightening.
This is true.

ORMs force the thinking "objects first" (ie. work with objects, the SQL will be handled for you). This translates into a design of "per object" architecture. Business logic is abstracted for handling single rows only - one at a time - encapsulation being the design idiom. However, this is a trap that immediately becomes apparent when you realise that you've forgone the powerful set-based capabilities of SQL. SQL doesn't "need to see" a single row of a table as anything special to warrant ring-fencing in the name of encapsulation. The whole (related) data model is a single algebraic representation of state.
So I'm suddenly very interested after hearing about this issue. The discussion always seems to be about Facebook suing me, assuming all is fine because why would I sue them?

The problem is the startup I work for relies on patents for a big part. And if we use any Facebook stuff, which I actually wanted to do as the main developer (react and react-native), they can use our stuff without caring about our patents! Because we can't sue them!

So basically, with that license Facebook on the one hand protects itself against patent trolls. Good, fine.

On the other hand though they grant themselves the right to use any patent of any company that uses their products, because you can't sue them any more! No? That's how I read it after having read a lot of discussions, none of which talk about that major issue, because for most people in this discussion defending their own patent(s) against Facebook is not an issue, so the discussion is very heavily one-sided towards people who don't have that problem.
I completely agree with SadWebDeveloper. Postgres is seriously lacking a good UI. Or maybe another way to put it is that as someone coming from MSSQL and MySql, it seems the "postgres people" are used to a completely different way of work that feels odd to me.

Having worked with MSSQL for years, MS hit the right spot with Management Studio. It's an UI focused on writing SQL, and any wizard has a "Generate SQL for this" button. It let me write huge SQL files, save them, reopen then and run them. When I found dbForge Studio for MySql, I felt at home. I wish postgres had something like that.

Last week I went through ALL the GUIs in the postgres wiki page and found nothing good. Valentina Studio and EMS are good, but not great. EMS has a lot of features, but honestly it bothers me it cannot even use the default system font in windows, the environment it's built to run on. It's like it's stuck in 2002.

If I could sum it up, the thing I miss the most is being able to work with SQL. I want the first button in the toolbar to be a "New SQL Query" that opens a huge editor that lets me write and run SQL. Not a "new database", not "new project". Amazingly, most postgresql UIs are simply terrible at writing and running sql.

It's like postgres uis are like the PHP of database UIs: people that like it have no idea how bad they are, and the very few people go elsewhere to see how much better the world is outside.
I didn't see where they said that pornographic images are not subjective and contextual. In fact it seemed like they were using "NSFW" and "pornographic" almost interchangeably, while acknowledging that the current implementation doesn't deal with violent images etc.

For instance, if you read it like this, it still makes sense (I replaced NSFW with pornographic):

Disclaimer: The definition of pornographic is subjective and contextual. This model is a general purpose reference model, which can be used for the preliminary filtering of pornographic images. We do not provide guarantees of accuracy of output, rather we make this available for developers to explore and enhance as an open source project.
End goal is to make code that is easier to maintain and understand.

The intermediate goals should be to reduce coupling, increase encapsulation, etc. These are tools to achieve the end goal.

Multiple dots is just a code smell, indicating that you're probably not meeting your intermediate goals or the end goal. If you see multiple dots, you should probably examine that code to see if it "wants" to be somewhere else, in service of the Primary goal.

But if you elevate "multiple dots" to the level of a "Law" then you're looking at the problem from the wrong end, and are in real danger of losing sight of the end goal. You can follow this law right down a hole that works AGAINST your real goal.
Locking isn't the problem. Contention is the problem.

Even "lock free" algorithms can still not scale due to contention. Read this paper for a good summary:

http://queue.acm.org/detail.cfm?id=2991130

In short, a queue is made up of a linked list, where each entry is itself a circular buffer. Insertions go into a circular buffer... unless there's contention, in which case the next circular buffer is used.

The result is that insertions are mostly not contented. Removals are mostly not contented. And it scales very well.
It's great that you will downvote comments and encourage other to do the same. This is what non-trolls have been doing forever and that will not solve the problem on its own. The best solution is to either accept reality and ignore the haters, or even better, think up some novel, innovative solution to crack the nut of online trolls. But that is very, very hard and no one has yet succeeded. Facebook does well because no one is anonymous. Reddit is a cesspool for the opposite reason, where each subreddit is only as strong as the moderation team and the users regularly flagging content.
Lock free structures typically have worse average or even uniformly worse performance. The issue is what happens under contention or predictability. Lock freedom guarantees that at least one process makes progress whereas with locks a process can acquire a lock and get switched between cores or get GC paused or whatever.
magit being the most prominent and most widely used. Within the emacs GUI. Makes most of those tasks much easier.

Hub is a prominent GitHub remote porcelain tool.

I also want to point out shell prompt tools to display the current git status, which would have helped in many of those misfits.
Well, there's a great aside in this thread as to whether or no DbC applies here in a discussion of formal verification and that's good stuff.

But I figured it was relevant to mention that there are both an RFC [1] on adding DbC as a language feature and a library [2].

[1] https://github.com/rust-lang/rfcs/issues/1077

[2] https://github.com/nrc/libhoare
This is exactly what I thought looking for a ML course: too many maths and no code or just code without maths.
Math Learning Tip: Find an Idea’s True Name
I literally just started working on this problem 2 hours ago >_<
The only time I ever start a native PDF viewer is when I need to actually print it. Apart from those rare cases, to me a PDF is a web page, just worse, and I want it to live where all the web pages live on my computer, in a browser tab, with all the facilities the browser provides (history, tree style tabs, frictionless access to Google, etc etc).

I'm sure ymmv depending on what kind of PDFs you use and how often; I'm on the lower end.
Why does nobody mention the remarkable similarities between vue and knockout?
My hypothesis: git was implemented assuming that—at least for large projects—you would have a local on-disk bare clone of the repo, and then multiple workdir checkouts of that bare clone sitting on different branches. The setup with a single clone containing a workdir with a .git dir inside it is a hack that's nice for "on-the-go" use-cases, but wasn't intended for serious developers contributing many changes to the same codebase.

git-stash, then, is only for the use-cases that are not better solved by just leaving your WIP workdir as it is and checking out another, concurrent workdir for your new feature. Such as, for example, taking code you were accidentally writing on one branch, and "shifting it over" onto some other branch; or "moving your changes out of the way" to run some tool that is broken by them, then putting them back in place, because you really still are working on them.
I'm _really_ intrigued by this, but the skeptic in me worries that insurance companies would peg rates at ridiculously high prices due to the high risk and low accountability inherent in open-source projects.

I'm not suggesting that the "high risk" view is accurate, but more positing the _impression_ of said risk for insurance companies.
I am not satisfied classifying the extremely broad category of "processed foods" as "bad". Technically olive oil is a processed food, so is milk and frozen meat. What about Soylent? It's very much a processed food but is probably much healthier than the typical processed foods out there.
My first thought as well, but it turns out that finding porn on the Internet is just not that much of a problem.
That totally untrue. You needed to ask for permission for those things at install time. It wasn't a great system, sure, but what you said is objectively false.

And apps do not have to voluntarily opt in to the permission system. Any app that targets Android 6 or later is required to use it.

Android has enough security problems without having to make them up.
Risk of big earthquake on Andreas fault rises after quake swarm at Salton Sea
Surely you would just filter on the input?
Popular YouTuber Experiments with WebTorrent to Beat Censorship
Really? This seems like (potentially poorly worded) feedback that might be useful to the author.
Hell, even I managed to get a vuln bounty out of PDFium despite never actually looking for vulnerabilities in it.
Lots of desktop environments come with either Evince or Okular.
I took "on launch day in America" to mean the US (since no other part of the Americas was launched on that day).
On my job we just picked Vue for a new project, and it's a great experience so far. We disliked the standard starter project with Webpack and its idioms, with un-inspectionable compiled javascript source code, but it was very simple and flexible to create our custom build. It's really a awesome framework, with excelent docs (we were even using the release candidate of version 2.0).

(edit: typo)
I don't think they'll kill Servo. They need to modernize Gecko, and there's so much potential in Servo to do so that it would be a waste throw the code out.
One more +1 to that. It's easily the most impactful book I've read in years.
Alright! (Whew) you're rockin it. :-D
My Awesome Experience Starting a Family While Running a VC-Backed Startup
Hopefully, never. Because if they do that, then there won't be more important thing to focus on.
The definition of "prime-age labour force" is under 55, which also excludes the author of this piece (and is about a decade under the age at which most people can claim retirement benefits). It also excludes under-25s who have a much lower labour force participation and higher unemployment rate.
It's in "More Programming Pearls" from the same author (who, by the way, is called Jon Bentley, not John Bentley)
AFAIK Edge is the default PDF viewer in Windows 10.