skysight-inc/HackerNews huggingface dataset:
As for an effective A* algorithm, bidirectional A* turns out to be both rugged and efficient.

Basically, grab some graph paper. Put your left index finger on start. Right index finger on end.

Move your fingers towards each other, avoiding obstacles as you go.

Wherever they happen to meet, the path formed by the trail of both your fingers combined is the path to use.

That's the general idea. It's important to trace from both simultaneously, otherwise you run into some degeneracies.
I'm scared of my own country
A D-Link DNS-320 NAS for home backup (mostly pictures and personal videos) and tarsnap for my VPSs or any local data that I want to backup remotely.

Where I work we have a 'server' computer running windows. I went for backblaze as an online backup option (full disk backup) because it's easy to use, it has a 'sort' of encryption[1] and it's pay-once save all kind of thing, so I don't have to bother all that much. Oh, also we have great upstream speed at the office so problems there...

That said, since my upstream speed at home is limited, the things that I can backup on the cloud are limited.

[1] Backblaze's encryption key is submitted on the browser, via JS. Not the most secure scheme you can find. IMHO if you're not worried about state-level espionage that's fine.
Saying "could be written on C++" I mean a problem that's natural language of solution is C++, Java or something like it.
Then consider this a form of civil disobedience.
Use Rcpp to help scale up data frames in R to deal with out of core data (larger than RAM).
Using Protobuf with PyPy
Enack |the world's meanest search engine
You can never make good money as a programmer, if you let non-programmers pick the subject, or let non-programmers monetize the platform in your stead. Google and Facebook are worth hundreds of billions of dollars exactly because there is not one non-programmer with a say in them.
I was going to reply to you and say the same thing: it's extremely similar to the initial iPhone 3rd party developer story, and for the same reasons. Apple is pretty predictable, really.

I know how WatchKit works, I was in on some of those meetings... Trust me, everyone at Apple had the same concerns you expressed and they still do. It will get better over time.

Also note that some built-in Apple apps do use WatchKit.

And I would still argue that allowing 3rd party code to run on the watch instead of in an extension on the phone would be just another example of an internal-only feature being opened up to the public. It's the same pattern. I realize that's a significant "feature", but so was the switch from html+js to native apps on the phone. And those significant advances go through the same decision process as smaller ones: do we feel comfortable opening up this feature to 3rd parties? what are the risks? have we used it enough internally to feel confident? has it iterated enough internally that we consider it stable enough to release (because it's hard to change after release)? etc.
This is interesting, I would be more bold and call these problems instead of features, as I think programmers deserve better. (Then again I may be biased!)

Problem 1 is more systemic and harder to solve.

For Problem 2 I feel there may be a way to strategize around it. Specifically, wondering if there is a point where salaries increase, and then after a certain point, rate of salary increase drops off at which point it may be beneficial to do a masters, phd, MBA or some professional work to refresh the resume. Either that, or perhaps dedicate some time (in lieu of higher ed) to some interesting open source project. Thinking more about economy of time here than education, education is just a way to make this concrete.
> programming isn't a job

Hmm, interesting. Wonder what i'm actually doing from 10-7 every day in that case.
South east Asia is a geographic grouping and nothing more. The nations are so different from each other. Singapore is nothing like the Philippines which in turn is nothing like Myanmar.

If I had to pick a country, it would be the Philippines which has American style laws (though far more corrupt), English speakers, tech workers, and a large internal market.
I bet you don't know much about shia and sunni, essentially there is not much difference, this war is more of interest war than religious war. I would say Syria war is oil/gas pipeline war. and who can have more hegemony over the region when US becomes weaker and less interested in this region's OIL. that's why you see EU countries are much in hurry to get into this conflict, even Germany is in now.
It does not matter whether programming is marketable or not. What matter is that the results of programming, such as Google Search or Facebook, are highly marketable. Mistake number one: never sell yourself. Only sell the result of your efforts, and preferable not to middlemen, but directly to the real buyer. That is how you create hundreds of billions of dollars in value.
Yeah, piling on: While some tech companies have huge market caps, there are plenty of non-tech companies above the $100B mark. Current top ten includes Exxon Mobil, Berkshire Hathaway, Petro China, Wells Fargo, Johnson & Johnson, ICBC, and Novartis alongside Apple, Google, and Microsoft. (https://en.wikipedia.org/wiki/List_of_public_corporations_by...)
Indeed. The fact that NASA chose to patent it seems to be evidence that patents are not used to protect innovation (of sensitive technologies at least). If it was innovative, they would have probably kept it secret as a matter of national security.
Not if we genetically engineer them to like it first!
Does "On the surface" mean "actually this is false, but one needs to look deeper to see", or just "I haven't yet determined whether this surface impression is correct"? (Not snarky: I want to know how seriously to take it.)
Others claim other reasons for Google and Facebook's success: how did you determine that your reason is right and theirs are wrong?
C++ might not be necessary. It's possibly a harmful career choice. I speak from experience, but others would disagree.

It could be good to focus on one axis: personal career value, or affecting the world and helping people. They seem to rarely line up.

If you want career value, try Node or C#. Both will put you in a position to get a high salary job for a long time to come. C++ won't unless you're willing to move around the world.

If you want to do something useful for many people, one way is to find an open source project you like and start trying to contribute. If your contributions are rejected, move on and try a new one.

If you want to start something new, focus on what's fun for you and pursue that. If you go into it feeling like a bunch of people are counting on whatever you're making, you'll risk burning yourself out. That's just my experience though.

Good luck.
> out-of-college salaries for programming are often better than virtually everything else (notably, banking and consulting); but after ten years, the opposite is relationship is reversed (considerably so)

Don't forget that there is huge flight from banking and consulting, but much less so for programming. Of 10 people who start as bankers or consultants, 80% will likely leave the industry within 5 years, and 90% within 10 years. So, in a way you're comparing the salary growth of a median programmer to the salary growth of a top 5-10% banker.
This is a perfect idea to make government more transparent. I couldn't find if anywhere in this website there were the regulations put in simpler terms. Allowing more people to understand them and not only access them seems like the way forward.
That's "OSS". Many people believe that dumping stuff on the internet counts as a "contribution" (e.g. [1]). That's how it works: throw stuff out there if you feel like it, ignore feedback, and "Open."

[1] http://blogs.perl.org/users/sawyer_x/2010/09/please-provide-...
Steve Jobs knew programming, but I wouldn't really call him a "programmer" in the way you're thinking about it.
It probably means he hasn't actually RTFA.
I'm guessing probably not, but on principle it still seems like a bad idea. I'm not going to buy someone's fresh bagels if they've knowingly sold me (and millions of others) moldy, rotting baguettes to increase their own revenue.
I did not say that I believe this because it would be true. Of course, I only believe this because I want to believe this. You see, I am a programmer. So, my belief is that programmers are superior and non-programmers are inferior. So, everything I claim will always further that view. Therefore, my every political move is always aimed at confiscating any possible say or decision power from non-programmers and to eject them out of the game. Seriously, when push comes to shove, I only listen to other programmers. Isn't that obvious?
This was attempted with Midori, see here:

http://joeduffyblog.com/2015/11/19/asynchronous-everything/
Point 1 makes sense, to the degree that it's true. Programmers are typically too far removed from actual transactions to get paid in the way that sales, bankers, real estate agents, etc. are paid. Thus, measuring what they're actually responsible for is difficult.

To the extent it can be done at that level of abstraction, I'd argue that programmers are actually very over-represented in being paid based on hard outcomes. I haven't heard of any other profession with such a focus on equity grants.
A brief history of the German language
Sklearn is a python package with a built-in PCA method that is easy to use... I can recommend it.
http://scikit-learn.org/stable/modules/generated/sklearn.dec...
Were you aware that Google Earth has a "History" icon that opens a slider for historic aerial data? It's pretty fantastic.

One of my pasttimes is to compare different map sources/times for the same location.

I wrote a python2 tool that parses any URL like the one you gave, and outputs links to the geo location at many map providers:

https://github.com/jamessanford/geourl
All human embryos are destined to become adult people. (Barring any naturally occurring or artificially induced fatal flaws of course or if their development is interrupted either accidentally or intentionally.)
That's an interesting comment. Do sources for those stats and numbers on how many people leave banking? What about programming?

Just searching around doesn't show anything solid up.
This is why I found the whole "missing women of China" story so pointlessly ignorant. Practices of gender selection, cultured bananas (currently being wiped out by a fungus), GMO foods, etc are not a scourge. There's nothing morally wrong about the precursors. We control auto traffic and water and all manner of the immaterial as part of our civilization. This is just the next rung in the ladder.
Lulz I'm an expert in cyber-kinetic nuclear warfare https://www.ll.mit.edu/mission/cybersec/publications/publica...
That was before the year 2000. Ever since, you will no longer get above the $100B unless you are a programmer. Non-programmers no longer stand a chance. You need to eat, sleep, and breathe technology these days. We will soon see the very last non-technology billionaire. Of course, it is a matter of principle for programmers not to turn any non-programmer into a billionaire by doing all the hard work for him. Let him do it instead!
Lulz I think Trump and Hilary care. https://twitter.com/gmike/status/673037061629198336
OpenStack and Beyond Podcast – Episode 6 – OpenStack Predictions for 2016
Steve Jobs probably didn't "know" programming.

http://www.woz.org/letters/does-steve-jobs-know-how-code
P.S. #SPECTRE offered intelligent commentary on my hack. https://twitter.com/gmike/status/673383988963053568
It means I RTFA, but not the actual source paper. Often times with articles like this, actual qualified people show up and say "that's a nice article but it doesn't explain the actual research correctly at all."
Well, it doesn't disprove the story, it just disputes the only significant proof corroborating the story. It's reasonable to say that's "casting doubt". It may very well still be a true story, but now we'll (probably) never really know.

Not that I think it matters in the grand scheme of things.
Hello. Nice work. I noticed that your submission isn't getting much attention, so I wanted to let you know it's common for Show HNs to languish even though they're worthy. So don't give up or feel bad about it. There are just so many Show HNs that it would be hard for them all to be seen.

I would try resubmitting it closer to peak time, and perhaps put together a landing page with screenshots and tell your story there. I'd personally love to read a breakdown of your experiences and challenges you overcame.

(Also, submitting text rather than a URL causes your submission to fall off the front page faster. This is to dissuade people using HN as a blog.)

Best of luck, and welcome to HN! I look forward to seeing more of your work.
I think that nonviolent resistance is different because the nonviolent resistor is saying, essentially "give me what I want or I will put myself in a position where you have to hurt me." - which only works if the authority in question has some problem with hurting the nonviolent resistor.

Terror, on the other hand, seems to be saying something more like "no matter how powerful you are, you can't prevent us from coming in and inflicting shocking, unexpected violence on you."

Do you see the difference? one relies on fear, while the other relies on... well, I had it called guilt, but a better person than I am would call it 'empathy' or something like that.
The existing platforms on the internet are worth trillions already. The ones that truly work, are built, operated, and owned by programmers. The other ones ultimately only crash and burn. What do we need non-programmers for, in that context? We may pay them to do something menial, but besides that, what else would we need them for?
That's actually not the main purpose of the Second Amendment at all.
On that existential tangent, there are times I find it comforting that fools pay me to write code they want written. It's like ghostwriting: it pays the bills. You write a biography for any idiot the way they want it. The 'authors' buy 300,000 copies of their own book through phantom distributors to prop it up to the NYT top 100 list, then they slap their name to it and you go home to your two cats and tell them we don't have to eat garbage tonight.

Other times I yearn working on a popular open-source program or a library or a tool so that I can slap my name to it and actually know what I'm working on, and get some recognition. Or even criticism, because meaningful feedback by peers who actually understand what you do is great.
Actually the speed of light is just a constant that interconnects spatial and time coordinates.

In special relativity everything moves with c light speed in a 4-dimentional pseudo-Euclidian space. It means that the light speed constant c is just a measure unit that interconnects time and spatial coordinates. And the actual spatial velocity of a particle is just a projection on the spatial coordinates of it's 4-dimentional velocity which always has length equal to c.

So the existence of light speed constant seems more like a boundary condition that limits class of possible solutions rather than something connected with the processor's clock-speed.
I share your opinion at well, but would rather vote with my dollars than use the state's power of coercion.
Looking forward to the countries not banning this making healthier people
> Labor does not receive (or insist on) percent-of-value or percent-of-transaction compensation.

This is true of pretty much all engineering jobs, and more broadly, most non-sales jobs. Commission becomes feasible when you can directly attribute sales or billable hours to a specific person.

> Initial salaries are good, but there is wage stagnation.

This is true for all engineering jobs, and also most jobs in general. Banking and consulting are exceptions, and as others have pointed out, the attrition rate is quite high in these fields and that skews the numbers somewhat.

> In contrast, 5x or more is not unusual in other fields.

Care to name some, besides banking and consulting, and possibly corporate law? I'd suggest that in most fields, you don't make significantly more money until you're managing a significant percentage of people, or tasked with making decisions that set the direction the company.

Why should programmers be an exception?
In general I'm interested in development of high-performance network applications or something connected with intensive calculations.
In these areas C++ is a reliable choice, and I want to improve my skills with it to be able to apply for positions that requires experience.
And this is what I love to say during DevOps interviews! If my interviewer gets offended, I calmly say "I'm done here, no need to continue this interview". I have had FATCAT's look at me like I'm crazy.
> Suppose industry in your country has higher costs, because people care about say, waterways, and thus there has to be filtering and proper waste disposal.

Well then people can buy stuff cheaper from abroad, I guess? That's certainly a benefit to them, compared to paying more.

There are auxiliary benefits too, because then people have more money left to spend on other things (which contributes to jobs getting created etc).

> If you allow free trade from a country where they simply dump waste everywhere, you are punishing industry for doing the right thing, and rewarding polluters.

You know no one wants to live in a polluted environment, right? But it's the government everywhere that's supposed to protect it - not people from other countries with their purchasing choices.

If you don't buy stuff from China, will China be less polluted? How?

Suppose, for the sake of argument, 50% of all people outside of China decided to stop buying Chinese goods as a protest against "bad environmental standards"[1]. What would happen?

[1] Nevermind that the standards are circumvented with bribes anyway.

Now lots of stuff produced outside of China would become costlier to produce, or might not get produced at all. Living standards would decrease accordingly. Oh, and that might encourage foreign producers to do whatever it takes to lower their costs, including ignoring environmental standards (or bribing their way past them).

What about China then? Would the polluting factories etc shut down, or would they be used for producing something foreigners were still buying? Would they keep polluting after being repurposed for something else?

Would they pollute even more in an attempt to lower their prices to make their products more attractive to the protesting foreigners? I bet some people would start buying again if the products just were cheap enough.

But all in all, you see it's not that simple. You can't expect to force higher environmental standards on anyone by not buying from them, especially when it's the government that decides what companies are allowed to pollute and how much, and those limits are circumvented through bribes.
Hey, Jacques. I wanted to say that I'm happy you're still around HN. Thanks for sharing a lot of interesting stuff, and experiences regarding business and life in general.

I was just thinking how emptier HN would have felt without all that over the years, so...

Best of luck! Happy holidays.
What a fucking kangaroo court. You sure jumped on that "opportunity".
> This only makes sense if your metric is number of code points.

Not quite! :) I wrote a similar tool I called baseunicode[1]. (Glad I'm not the only one who's discovered this!) The author here is using it for tweets (which oddly don't count bytes, they count code points); I wrote my version for copy/pasting data between terminals[2]: copying more than a screen's worth is a hassle, so "screen area" is the metric I'm trying to optimize, which ends up being subtly different from the article's, which is code points for a tweet. (for screen area in a terminal, some characters — CJK in particular — end up taking multiple columns; and combining code points (like acute accent) are basically free!)

In my case, it ended up being easier to use base64, because it's installed by default.

[2]: SCP is just a pain sometimes. If you need to read a file only privileged by root, AFAIK, it's out of luck. I'm usually going server-to-server, so I also need to remember to -3, which I inevitably forget. You can get around the root issue w/ `ssh source 'sudo cat /foo/bar' | ssh destination 'cat >foo', (or 'sudo bash -c "cat >foo" if you need root on the write…) but more work; often I find I'm already there in both terminals and I just want these bytes from this split in this other split, so I started doing `tar -cz <stuff> | base64`, copy, `base64 -d | tar -xz`, paste. And then screen size mattered, thus baseunicode.

[1]: https://github.com/thanatos/baseunicode
In short, the "up or out" policy of banks and consultancies is notorious for having more "out" than "up": https://en.wikipedia.org/wiki/Up_or_out

To put hard numbers on it, McKinsey is one of top management consulting firms. According to an employee, its average tenure among new consultants is 2.5 years. https://www.quora.com/Why-are-employees-loyal-to-McKinsey

That's consistent with the staffing ratios within the firm (Wikipedia suggests thare are ~400 directors compared to about 9000 total consultants). Those are the ones who stuck around for more than a decade.
> Unknown to the world, Hitler's corpse was interred at a Smersh centre in Magdeburg, East Germany. There it remained long after Stalin's death in 1953. Finally, in 1970, the KGB dug up the corpse, cremated it and secretly scattered the ashes in a river.

This sounds really interesting. Anyone have additional information on this topic?
Not exactly an alternative, but http://idreambooks.com/ aggregates book critic reviews, so you can read all critic reviews at one place.

(Disclaimer: I am the developer)
Wouldn't this sort of thing be better handled by an exception? The CPU should help us more to write better secure software.
I thought this too at first, but it turned out to be just a problem with my browser's rendering (Opera). Saving it to disk and viewing with Preview on Mac produced the missing pages.

If that doesn't work, there's a different PDF available here that might produce better results (facing pages rather than single): http://web.mit.edu/zoz/Public/ebook_Ignition_An_informal_his...
I think this article is great, but something did stand out for me.

I'm a huge supporter of universal end-to-end encryption, but Feinstein's point is making me feel some cognitive dissonance:

>"I think with a court order, with good justification, all of that can be prevented."

There are cases where I would want law enforcement to be able to read encrypted communications in an emergency situation, with a valid court order. If someone is being held hostage, for example. Of course I don't want intelligence agencies having this same access; just very specific requests during exigent circumstances, with judge approval. A real judge in a real court, not a secret FISA court.

But to do that you need some kind of key escrow already set up with the government, and if you have that, there's nothing stopping law enforcement and intelligent agencies from spying on what they want when they want.

Right now this isn't a huge problem since a lot of people still communicate in plaintext, or things that are encrypted but logged/intercepted by a central location (Skype). But eventually more and more things will move to end-to-end encryption.

What is the right way to handle this?