skysight-inc/HackerNews huggingface dataset:
There are good reasons for wanting to mine. The official currency is extremely devalued and essentially not trusted. Everyone wants us dollars, and bitcoin is better as well.

And remember it's not just a matter of having money. Everything is rationed harshly, so you can't just go into a grocery store and fill up your cart everyday, even if you happen to have money which most people do not.

The irony is that oil is effectively free. No food but plenty of oil. Most of the problems are the result of government leadership making bad decisions over a long period.

If you're traveling down there for business ask what you can bring to donate. If you fill up all extra space in your luggage from the US it can be a godsend to bring diapers, and other stuff that is hard to get but desperately needed.
For animations/any sort of render loop, you can also make use of the requestAnimationFrame API, which auto-pauses when the tab is out of focus.

https://developer.mozilla.org/en-US/docs/Web/API/window/requ...
Leaked drafts of 4 White House exec orders on Muslim ban, end to DREAMer program
Cheetah Mobile’s Spark platform spreads news from influencers
But that revenue isn't free. It has a cost in terms of time and effort in engineering the IE support, and then maintaining it. This is time and effort that could be better spent enhancing the site in other ways. For example, ~20% of the US population has a disability[1]. Investing effort in improving accessibility would be more sensible, economically speaking, than maintaining IE support, but I still see developers spending hours working around IE CSS bugs, while doing almost nothing to improve accessibility.

[1] http://www.census.gov/newsroom/releases/archives/facts_for_f...
Yes, that's C++14.

First, "class = enable_if_t<!is_reference<T>::value>" is just "class Dummy = enable_if_t<!is_reference<T>::value>" that doesn't bother to name Dummy. It's providing a default template argument for a function template (this is a C++11 feature; in C++03, only class templates could have this).

Next, "enable_if_t<!is_reference<T>::value>" is a C++14 library feature (enable_if_t is an alias template; the Core Language gained alias templates in C++11, the library gained these in C++14). It is a synonym for
"typename enable_if<!is_reference<T>::value>::type", which is more verbose (and what one had to type in C++11).

"is_reference<T>::value" is a C++11 type trait, that is true when T is X& or X&&, and false otherwise. (It's implemented with partial specializations, and a "static const bool value = true;" data member - actually constexpr these days, but no difference there. This is type traits 101.)

enable_if is a library helper for SFINAE. (Not necessarily C++11 Expression SFINAE; here, just C++03 classic SFINAE is being used.) Basically, enable_if<true>::type is void. enable_if<false>::type doesn't exist. This works with the Core Language's SFINAE rules to make function templates vanish from the overload set (if you don't know what SFINAE is, look it up; it's a little complicated, but it exists for good reasons, and it goes back to C++98).

So, this is how one writes a function template that vanishes under certain criteria. This is often desirable compared to doing different things for different types (that can often be done with "tag dispatch") or emitting compiler errors for certain types (that's a static_assert).
>> Drivers != Linux drivers.

> Can you elaborate on this?

There are other OS choices out in the world which sometimes get support -- particularly in this quasi-embedded space.
My Mexican friend visited with my fiancé (who is Jewish) and was detained, and then subsequently released over 6 times in a two week period without any warning, being questioned "are you Palestinian? Are you Muslim? What are you doing here?"

I don't think the point is about the citizens themselves, it's about how they normalize this kind of behavior by their police / government.
True. And, if you see a news report about somebody whose positions you like deciding to run ... send them a campaign contribution. Running for office is quite costly these days, and no-strings-attached contributions are really helpful.

(Many contributions have strings attached. Yours doesn't have to.)
I like Ask HN, but I am selective about which other threads I get too deep into the comments on. Many of the discussions on here break down into quibbles over wording or minor points. Or pointless, showboating pedantry.

When I do go comment diving, I'm looking for substance. Not grammar, spelling, or minor wording or terminology back-and-forth.
US: Employment in solar rising, Greenpeace promotes Apple as greenest in IT
Foundations for the case you're trying to make are not very persuasive: 3 out of 4 people on this list seem to have moved during a much friendlier Shah's regime, before the 1979 revolution which turned Iran into a theocracy.
love15
> Did I forgot to mention the exorbitant out of state tuition fees and the loans they took for it in their home country ?

I had a lot of close Chinese(PRC) friends in college, and most of them were extremely rich. I know it's anecdotal, but I find it hard to believe a lot of Chinese exchange students are going deep into debt to afford US schools. From what they describe, the student visa interview process favors financially sound students.

That being said, what you've said about the visa system rings painfully true.
So every piece of software now needs a markdown renderer?
I think that's the stance that parents should have. As a non-parent, I respect that the line between silly-but-harmless and silly-and-harmful can be very blurry. You are trying to see the world through two different sets of eyes, and those are going to conflict. It can be a tough call on where to draw the line because while I very strongly believe in free-speech and freedom from censorship for adults, I understand that for children it's completely different. Especially when all children are not the same.

Ultimately I think it's important to know what your children are looking at and watching, especially when it comes to the internet.
I've had it happen in late 2016. Threads about this issue come and go:

https://community.spotify.com/t5/forums/searchpage/tab/messa...
generally when I'm trying this stuff I'll make a new branch to work off of and deploy from that. when I've figured out how it needs to work, I'll squash the commits and merge into master.
1) Add a code review step to your workflow.

2) Institute a weekly 1-1 meeting. This meeting is about what's going well and what's not going well in the business, in your collaboration, and in your interpersonal relationship. From both sides.

Do this every week at a set time. Frame it as a check-in. Listen to what he has to say about what's going on, and also bring up anything that's causing you problems. Frame your concerns not by stating "your work isn't good enough" or "you need to follow this process in this way".

Instead mention that a deadline slipped because you didn't realize something had been completed. Explain that the reason you ask him to use process XYZ is so that you'll know what is and isn't ready to ship. Then ask him how you can (together) avoid that problem in he future.

Basically, you're pointing out (objectively, without blame or attack) a problem that impacted the business, demonstrating how it's linked to the behavior you want him to change, and asking him for a solution within certain parameters (which makes him invested in the solution because it's his idea).

3) if he's unwilling to engage in fixing problems that impact the business, or if his work quality doesn't improve after a couple months of code review (and code review should go both ways so a) he can see how you do things and make suggestions of his own and b) it feels less hierarchical) -- well, you're the boss. Fire him and find someone you can work with better.
dfndgf ndmfg.kd.gnkjdgirjgrretydfdg jobs
C++ Double Address Operator (&&)
The perl6 problem wasn't 'backward compatibility', the perl6 problem was 'this thing doesn't exist at all but it's sucking up all the momentum.'
We discussed this approach -- one difficulty with it is that the website often doesn't know the hash of the resource. For example, imagine a server that takes urls of the from images.fbcdn.net/abc124.jpg/200x200 and dynamically resizes the image to 200x200 px. It it is impossible to know what the hash of this resource will be without calculating it beforehand.

The subresource integrity spec supports cases where the developer is able to calculate the hash beforehand
(nitpick) Are metabolic systems and neuron networks really discrete (as opposed to analog) systems?
> Oh so that's the "Trump effect" at play right?

Nope.

> In reality the democracy has been eroding for many years in the US, especially if you consider all the concessions made to individuals rights since the War on Drugs and War on Terrorism - and that's nothing new, it dates back to the 70s already, and it should have been degraded to flawed democracy rating for a while now, regardless of whoever is the President.

They essentially note this in the report, and say that the US score would have fallen below 8 regardless of who won the 2016 election.
Linux isn't really there yet. On my 3200x1800 XPS13 running Fedora, it took quite a bit of tweaking to get a usable desktop. My DE, Cinnamon, eventually looked okay once I tweaked the scaling (worked about as well as GNOME), but I still have to deal with a plethora of apps that are microscopic.

I don't use KDE, but I've been told Qt apps are supposed to scale better on HiDPI.
CocoaPods isn't an official tool so it's not really the Swift team's fault that it's bad. SPM should certainly have been "done" by now though, Carthage was put together quicker by a team of volunteers without access to Apple's resources and generally works perfectly (yes, deferring most of the work to xcodebuild).
They should finish the free Foundation implementation[1] already which is the true standard library. Swift is not very useful without it, and they're talking about 4.0. It seems like Apple's giving their minimum to the community

https://github.com/apple/swift-corelibs-foundation/blob/mast...
I keep it simple: a feelgood.txt file with dated entries whenever some event, project, feedback, etc. makes me feel alive.

Over time, you notice patterns about what really energizes you. For me, this is the high-order bit, more important than any specific time or life hack.

(Examples and analysis here: https://betterexplained.com/articles/life-lessons-10-years/ )
Is your name Richard Daley? :-)
CS really botched variable scope IMO, and the whitespace rules made it a bit of an error-prone word-soup language.

The rest was pretty great.
HN has an awesome community so I generally read more. I start of with the top ones (and their branches) and agressively use the (-), and then follow down.

If it's something I'm really interested about, I check back in ~12 hours to see if something new has shown up - at which point it's a scan to see the new comments.
You are influenced in ways you don't realize
Thanks! I'm using pandas as well, though haven't got too far into the quantitative analysis just yet.

I hadn't heard of InfluxDB before, looks interesting.
Except it's not.
Hopefully this will be addressed in FIDO 2.0. That is the goal at least.
Imagine if you were a spy agency...why wouldn't you sell networked devices on Amazon?

I would setup a number of companies to sell networked devices of all kinds at cost just to get my backdoors inside as many networks as possible.

Which is why we should all have our "IoT" devices behind an IoT device we trust. Haha.
few minutes earlier and already quite a few upvotes: https://news.ycombinator.com/item?id=13493396
That's not a charitable interpretation ("twisting history to support their world view"), and your comment seems to be conflating the language-logic view itself with the history presented here. The relationship between programs and logic is compelling for many reasons and can stand independent of how the two happened to be developed; my take is that the historical story here—which is definitely too pat—is presented more as an illustration of the idea than anything else.

This is no different than how math textbooks present the history of any particular mathematical abstraction or theorem: they don't go in depth on all the false starts and dead ends people explored before making real progress. That's certainly something interesting but it has no place—and no room—in textbooks dedicated to explaining abstractions. The simplified story of how something could have been developed is, I believe, more relevant to understanding the importance of an idea than the way it was actually developed. The real history is full of noise, a function of the person who first happened upon the idea. It's not hard to image thousands of alternate worlds where the exact development of an idea was slightly different, but reflecting the same fundamentals—those differences end up as irrelevant details due to chance.
How does adding an operator help? There are two main advantage of having move semantics in the language and at least one of them relies on the fact that moves are implicit; you can write code that will move objects if supported and copy/destroy if not (for example, when returning an object or using an intermediate value in an expression). Adding an operator erases that advantage.

The other advantage is that you can force only move semantics which allows enforcing things like ownership. Adding an operator doesn't destroy this advantage, but it is a bit silly since you're just adding line noise for something that really should be implicit anyway.

Unless you just literally don't like the spelling of "std::move" which seems pretty lame since it should be relatively rare anyway.
Send money from Paytm wallet to Bank account in free of cost
Paytm is very popular now. We can send money from one Paytm account to other, we can even send money to bank in free of cost. Everyone is using Paytm because it is available everywhere and we can even earn money from lots of apps which pay directly in Paytm.
STEPS =
Download Paytm app.
Open it and Sign in.
Press Passbook.
Now press Send Money to Bank.
Select Transfer.
Now fill Amount,Account holder Name, Acc. no., IFSC Code.
Press Send and your money will be transferred to your Bank Account.

TERMS & CONDITIONS =
The money you have added in your wallet, can only be taken back to the bank/card that was used to add money.
Refunds where you paid from bank/card, can be taken back to bank/card.
Payments/Money received from other Paytm customers, can be sent to a Bank.
That is not what programs as proofs means. It is not that the program finds or performs the proof; the program is the proof, in a certain formal sense. The thing it proves is its type. The validation step is type-checking. For most programming languages, type-checking is decidable, so testing whether the proof is valid is fine. However, most programming languages correspond to trivial proof systems (every type is inhabitable, so every proposition is provable).

This is part of the problem with proofs-as-programs: it's a beautiful theory, and inspires a lot of useful work, but if taken too literally it's wrong and useless.
This would be much more useful if they displayed some election statistics and information on incumbents and political parties. The stated purpose of the tool is:

> Today, 40% of state legislature races go uncontested and the problem is worse at the local level. There is a crisis of leadership occurring in our democracy. We need more people to lead. We need more people to run for office.

> Run for Office is a free service that provides all the tools you need to launch a successful campaign whether you are a seasoned veteran or first—time campaigner.

You won't "launch a successful campaign" if you are a nobody running against an incumbent who is supported by the dominant political party in a bright red or deep blue state. You'd need to be a seasoned veteran with wide name recognition who is very well connected, well liked, and also wealthy, but then you're not likely to be using this tool.

It's in the races where the incumbent is not running for reelection, the position is nonpartisan, or there's a lot of turnover that someone could say "Hey, I have a chance at that spot."
There's a "single player 3d webgl" button on top of home page, you can use it to play against AIs.
The current price tag is a little surprising. I picked it up years ago on iOS for like $3. The version I have has been rebranded to Day One Classic.
Good question! So first I build the docker container with a Dockerfile I keep at the root of my project. I also have an aws private docker repo. (Read more about it here: https://aws.amazon.com/ecr/). So in my gitlab-ci I have a statement like the following:

- docker build -t container-name:$CI_BUILD_REF_NAME .
- docker tag container-name:$CI_BUILD_REF_NAME $AWS_ACCOUNT_ID.$AWS_ACCOUNT_REGION.amazonaws.com/container-name:$CI_BUILD_REF_NAME
- docker push $AWS_ACCOUNT_ID.$AWS_ACCOUNT_REGION.amazonaws.com/container-name:$CI_BUILD_REF_NAME

This builds my container, tags it, and pushes it to my ec2 container registry. I do most of my deployments using AWS ECS (EC2 Container Service, you can read more about it here: https://aws.amazon.com/ecs/)

My secret sauce is in the deployment stage of my ci. I basically run a command which deploys to a ECS environment. This is a custom script which is part of my overall AWS process. I have scripted out the creation of everything on AWS (from building the environment, spinning up EC2's, security and security groups, auto scaling groups, container registry, deploying jobs into an ECS). In the current project I am in we are using Ruby so the command is just a rake task and looks like:

stages:
- test
- build
- deploy

docker_deploy:
stage: deploy
script:
- do some stuff
- rake awsenv:redeploy[$CI_BUILD_REF_NAME]
tags:
- general
only:
- development
- staging
- master

The rake task logs into the awsapi securely, runs some commands, verifies the work, and calls the task complete in gitlab-ci. If you have any further questions, feel free to email me. It's my username at gmail.
It varies from topic to topic so I usually check the threads. Sometimes you find great stuff. Other times you just find the prevailing groupthink. I think it's at least useful to look.
Why would it being transcribed and searchable mean it's not private? Everything is automated and encrypted along the way, so I won't be able to look at it even if I wanted to.

I realize that privacy is an important concern which is why I've taken it extremely seriously. So rest assured, this journal is private.
If the search results aren't relevant, you can always add !g to the search and force it to go to Google. They may still not be as relevant, of course, because Google can't use their data about you to filter the results to what they think you wanted. Which I'm perfectly fine with. I'm happy with the allegedly sub-par results that are displayed because of my anonymity. Others may not be.
Why is it stealing?

Didn't they earn their riches by taking advantage of a system that was put in place by everyone? When someone makes a fortune in a society they are benefiting from the society's trade laws, justice systems, military protection, financial systems, education systems, workforce laws, available workforce, etc.

If the society helps you earn a fortune, shouldn't you proportionally pay back the society for all the help they've given you? Even if you only get to directly enjoy 50% of the value you produce, you still have an incentive for more marginal gains and you will indirectly benefit from the other 50% because you will reinvest it in the society that helped you produce it in the first place.
It's an appointed (by the city council) position, so no voting.

Thanks for the kind words!

I'm not sure what the discourse/mailing list/whatever group would promote? Tech people getting involved in politics? We'd probably all be so busy arguing on the list that we wouldn't have time to get anything done!
They all already have bug reports that have either been open for multiple years or were closed without actually fixing the issue which is why I suspect this may be a problem with internal politics or misguided design philosophy.
auto-fill mode doesn't reflow paragraphs at will, it just inserts a line break when you go over the limit.

For instance, if you're editing a document and write a long sentence, that spreads over 3-4 lines. You then take a scalpel to it to make it more concise, so that it fits on a line or 2. Emacs won't reflow it automatically, you can manually get it to reflow (M-q by default), but its not the behaviors you expect from say a word processing program. Same exists if you insert new text.

TLDR: all auto-fill mode does is insert new lines when you reach the line length limit.
It seems like the thrust of your comments in this thread is that some people are better than others. That is to say they are more moral, more intelligent, harder working, or whatever else.

Fair enough. What conclusion -- be it a policy decision, social structure, general attitude toward the world or whatever else -- does this line of thinking lead you to?
Why does it have to be expensive? This is the fundamental question we should be asking and should be trying to find solutions to.
Ask HN: Advice for a new Tech Lead?
Good evening everyone,

I am a senior software engineer working at a company that develops SaaS B2B products for hotels and the hospitality industry in general.

I got promoted this month to the position of a Tech Lead on a team other than than the team I was in last year.

A bit of background, my work last year was involved in Full Stack software development for the product lines. My new team, now, develops data intensive APIs that our partners use to setup their hotels in the mass markets on our products.

The team size is 5 engineers, we report to the VP of Engineering directly. The scope of my work is to lead the team technically and be involved in the software development responsibilities as well.

What advice can you give me? What are the characteristics of the best Tech Leads that you have ever worked with? What do you wish your current/previous Tech Lead did for the team to make things better? How do you enable your team for better productivity and efficiency?

Thanks a lot!
> are you trying to link "interesting" -> arbitrary "good/bad" utility designation

No, just that VR isn't bad or mainstream yet so you have more opportunity to shape and steer it. Tough to do if you are chained to a goliath and it's needs.
It's less than the expected change of 1 minute. That's... better, right?
I don't think just accepting an address is enough. Many of these positions have age and residency requirements. Or other requirements. I know they want to make it quick, but I am not eligible (yet) for most of the positions they listed, and would rather focus on a position I can actually run for.
I have always considered this a weird effort. Foundation is not Swifty (delegate protocols with optional methods, etc.). Why do we need a Swift implementation of NSMutableArray or NSNumber? Just use Array or Int/Double!

Of course, a core Swift library for URL handling is important! And on macOS/iOS it can be implemented on top of Foundation. But I don't think that library should come with a bunch of geometry, collections, or number formatting types as well. µframeworks are Swifty. The SPM documentation says something like "in general more modules is better than fewer modules", so it's weird to have a giant framework as an official core library.
That is pretty good explantion. It seems like it's possible to kill two birds (avoiding unneeded 304s and correcting corruption) with one stone and solve this problem via something like pushing subresource integrity [1] ahead, as well as a magnet uri / IPFS notion of linking to content by it's hash.

1: https://developer.mozilla.org/en-US/docs/Web/Security/Subres...
That was exactly my point. I'm glad at least you have some reading compression skills :).