skysight-inc/HackerNews huggingface dataset:
This is the best logic I ever heard in this thread.

Guido is working in Google, and Google doesn't support Python on Android. Python is just secondary scripting language even in Google, can't take a strategic support. Their primary product/platform language was always languages with forced type (an)notation - Java/C++.

Same thing happen on C#. Anders Hejlsberg couldn't convince any other MS product teams to use C#, so C#/.NET literally abandoned for years. MS is advertising C++11 now, and Mr. Hejlsberg is working on another C#.

As far as I remember, the only support was XNA came from DirectX team, but it actually discouraged the addition of C# by proving inferiority of C# on game development.
They want to hire me. What should I do?
Ugh. This was my problem with Google+ too. Everything you do ripples out into the rest of the internet in a creepy way.

When I was freelancing, I emailed back and forth with potential clients through the Gmail interface. One day I saw this party pic of a 20-something girl with beer in hand, identified by the full name of a receptionist I had emailed with professionally but never actually met. It was a suggestion from Google to connect with her on Google+, which I'm sure she'd have been mortified by. I deleted my account that day.
probably they hire only one hemisphere of the brain
Yeah, mobile versions of ordinary website truly are the bane of the internet.

The worst part is when the mobile version is unusable, but I can't change my phone's user agent string, to gain access to a website that has a desktop version that would very obviously work perfectly fine on my phone.
since its rails I would think it should be easy for you to create an API and then use those endpoints to retrieve data from the rails app and into the Android app.

This would mean a small amount of code on the Android side and some augmentation to how your rails app works, but its likely that your rails application already works alot like an API even if you didn't quite plan it that way by the nature of how rails lays things out for you.
He ignores a key goal of proof-of-work, which is to get consensus without burning all those cpu cycles. If it works out it could be much more energy-efficient.

Another new idea with a similar goal is proof-of-burn: https://en.bitcoin.it/wiki/Proof_of_burn

Scalability is another goal of some alt-coin ideas. The finite blockchain idea is one example that couldn't be simply layered onto Bitcoin itself. Here's a paper (pdf): http://www.bitfreak.info/files/pp2p-ccmbc-rev1.pdf
It would be naive to say the name doesn't matter at all; it's possible to imagine names that would be bad choices.

In the tech industry if you're planning to differentiate your product on its output: Come up with a few possible names, searched for them online, try them out on a few friends, check them with your team, and you've done about as much as Google did. You probably don't need to get million-dollar consultants to 'design your corporate identity', much though consultants would like you to believe you do.

On the other hand if you're entering a crowded market (energy drinks, for example) and your main product differentiator will be branding, getting the branding right is going to need a bigger investment. This may also be the case if your tech startup is entering a crowded market and differentiating with branding.
into other languages, not systems.
Make them get a part-time job. Realizing that a trinket equates to a couple hours of their life should demotivate frivolous spending.
I'll go a step further: your app/fav icon matters (a lot), too.

If an app has an ugly icon, I think two things:

* If they skimped on the icon -- the gateway to the app -- what else did they skimp on? Security? Privacy?

* Do I really want the homescreen of my $X00 smartphone marred with bad design?
might be a bit irrelevant to HN but gives you an idea of people's mentality:

In the past i was in the music industry, organizing events and concerts. During one summer I remember a lot of large scale beach parties were being promoted, all relevant radio's were buzzing with things like: 'the largest beach party of this summer', 'the best beach party' etc. So we decided not to follow the herd and went out advertising our event with the name 'The Worst Beach Party of this summer'

it turns out .. people loved it and it was hit!
This digression doesn't really answer the question of the OP, whether C++ is worth learning. I don't share your opinion, but even if I did, the answer would be a strong yes. A much larger quantity of important problems are being solved today with C++ than, say, Go. For employability, it's obviously worth learning (unless you're just doing web stuff). Even if you believe it's broken, it's worth learning to understand why it may be broken and to about those "mistakes" in the future.
Well, the word "macro" doesn't appear on the Pyret home page ... :)
You need to be able to state that we observe black people to be less intelligent before you can begin to discuss possible explanations.
Once you can say the above, then you can begin asking why it is so, and you may determine that it is in-fact because of a systematic oppression.
To Persuade People, Tell Them a Story
Then you ask them what else is there to do in Vegas than the strip and there's a long pause...
As far as I know there is not very much solid evidence either way. There is one interesting study from the 1980s on how changing the name of already established large firms affected their stock performance. It seems to have had a moderately positive effect, especially for industrial firms, and especially for those that were doing poorly previously: http://www.jstor.org/discover/10.2307/183841 (paywalled, but you can read the summary of findings on the first page)

The authors tentatively conclude, however, that the actual name (old or new) doesn't seem to really matter, and instead what's happening is that a major rebranding effort is seen by stockholders as credible evidence that the company is serious about overhauling the business in other, non-name-related ways as well.
Can you say more about how multiple return is "very subtle and hard to make performant" and leads to getting burned?

As far as I can tell the main advantage of multiple-return over literal objects is that callers who only care about the primary value can call the function the normal way, whereas if it's wrapped in an object they have to "pay" for it by explicitly extracting it. That's a nice-to-have but you seem to be saying that it isn't worth the trouble because the trouble is considerable. I'd like to hear more about why. (A friend is working on a language where this is an issue.)

p.s. This thread is just awesome. Thank you for engaging so extensively here.
smnrchrds's case of fixing someone else's ASCII assumption gets easier, because the code probably would not have been written that way.

In Python 2, it's really easy to write code that confuses bytes and characters, which introduces bugs and crashes when non-ASCII characters show up.

In Python 3, they made it easier to work with Unicode, because it's the default for everything, and much harder to confuse bytes and characters, because of that separation between the data types.
Here's a simple implementation without sweet.js:

var inlineTest = function(fn, tests) {
(tests || []).forEach(function(test){
if (fn.apply(this, test[0]) !== test[1]) {
throw new Error('Failed inline unit test with args: ' + test[0]);
}
});
return fn;
};

var square = inlineTest(function(n){
return n * n;
}, [
[[2],4], // [[arrayOfArguments], expectedResult]
[[3],5] // <-- This test will throw an error
]);

EDIT: Change fn.call to fn.apply
It's not your job to come up with the compromise. Tell them exactly what you need and let them counter. If they want you to stay around in some capacity bad enough you may get everything you ask for or at least a really good counter offer for you to consider.
Good Designers, Good Clients
I think your example of your kids' interests is exactly why that demographic is seen as so valuable for advertising.

One poster has a middle-aged interest in hard sci-fi; for $x advertising allocation per individual it's going to be difficult to shift his interests. The same $x applied to teenagers year after year 'flips' them from one revenue-generating interest to another. And sets them up, the advertisers hope, for a non-niche middle-aged interest.
I see "improving comment quality" as the public excuse they use to keep you logged in to one universal account to make tracking you for advertising purposes easier. Binding this to a G+ account allows them to report that they have record-breaking activity on G+ every month, because everybody is technically forced to be logged into G+ to do any-goddamn-thing, and so it makes G+ seem like some tremendous success and makes more people "want" to use it.

The problem is that annoying the user doesn't really make them want to use it more. I thought G+ might've had potential at first, but seeing all the desperate crap that Google's pulled over the past few months has not only pushed me away from G+, but Google as a whole.

Besides, did anybody really care about the quality of youtube comments? Nobody ever read them with the expectation of gaining any sort of insight or knowledge. Even if this change does affect youtube comment quality, it won't change anybody's expectations of the comments. The only shift will be from "this video is totes retarded" to "this video is stupid."
OP here. yes, creating APIs is not an issue. However I have never made an android app. I was therefore looking for a tool that will help me create one quickly (even if it wasn't perfect) than write the android app from scratch.
For fastest time to market, optimize the HTML/CSS/JavaScript to display well in a mobile browser. Detect if they are coming from mobile (requests headers like the user-agent tell you, or just optimize on screen size), and send down mobile pages. Many websites are designed with this in mind from the beginning, and services like Weebly and WPEngine will provide this in their form-built websites.

Otherwise, if your back-end has a usable API, then something like PhoneGap will be faster than writing a native Android/Java app.

Our marketing website takes the first approach, for our core app we write native Java.
i think what you call home switches are hubs. they operate on different network layers, hence the different name.
Tell them what you'd like to have happen and see what they suggest in response. Since they like you already, they are unlikely to respond to hearing what you'd like by telling you to get lost. :)
Like Microsoft? The inappropriate, juvenile mental images of the company name seems to have little impact on individual products...
IM-to-AIM bridge on my dumbphone.
Steve Jobs You Are Not
This is great, thanks, enjoyed the timeline.
I want 5,000 x 5,000 images because eventually I intend to view and edit the photos on a real computer like my laptop or desktop.

Why would anyone qualify the necessity of a hiven resolution, based on the practicality of its usefulness on the phone that takes the picture?

Having larger resolutions provides leniency for poor camera work, so that you can crop, but still have good resolution in the cropped image.
Thanks! We already do serve mobile optimized content. I will checkout Phonegap for creating the app. Would it allow me to store data locally?
The reason you have to ask this question, means that it probably does.
And imho. it does.
I love what Bill Gates is doing. It seems he will be remembered more for his health care incursions than his tech-building.
You always feel that weird confusing feeling about rich people donating very little slivers of money for public reasons. It seems such an "easy" thing to do rather than actually doing an effort. I can't say that about Bill.
I completely agree with the parents about Map Reduce. However I would justify using MongoDB for totally different reasons, not scalability. It is easy to setup, easy to manage and above all easy to use, which are all important factors if you are developing something new. However it does have a few "less than perfect" solutions to some problems (removing data does not always free disk space, no support for big decimals,...) and it definitely takes some getting used to. But it is a quite acceptable solution for "small data" too.

Edit: ...and I wouldn't dream of using MongoDB's implementation of MapReduce.
Governmint: im just going through agile sprint 0 with fda. according to the project manager sprint 0 will take weeks or even months! these people really need to stop saying they are agile. The pace of anything happening is horrible. Sprints taking months.... welcome to the government way of doing things!

And what sprint 0 is all about? Onboarding. That's right they need months jystvto give laptops to developers. As a guy coming from a start up i get heart attack every time they rape vocabulary with agile, sprints, scrum master or even daily stand ups that should be renamed to hour long meeting about why we failed again...
This applies to logos as well.
I just want to go on the record and state that adverbs should be avoided when selecting a name.

Please stop using the lybian country code TLD. It sounds stupid.
Yes, names matter a lot. Being that a name is a basis for a brand, and building the right brand is a core of building a successful business, you can not underestimate it.

Two of my favorite naming examples are Dropbox and GoPro, both manage to be memorable, succinct and convey a clear purpose without being cheap, literal or generic (e.g. "ShareAnywhere"). I'm sure these names helped the brands get to where they are.
I think it's a misconception we have in the US that polio is "disease from the 50's that's been eliminated". I know personally, I was surprised just last week when I went to my travel clinic, told them of an upcoming trip to Israel, and they recommended a polio booster. There's currently polio virus found in sewage in a modern country. Though no one has been found to have the disease in Israel, it's because of their high inoculation rate. In Syria, without inoculations, they are seeing an outbreak. Health organizers worry that the virus will spread around, by healthy people, who visit the region. Just shows how hard it is to completely eradicate a disease.

Also, the book Polio was a fascinating read about the history of the disease and vaccine.
Looks like it does: http://docs.phonegap.com/en/3.1.0/cordova_storage_storage.md...
But a top notch heat sink.
We use Elastic MapReduce at Snowplow to validate and enrich raw user events (collected in S3 from web, Lua, Arduino etc clients) into "full fat" schema'ed Snowplow events containing geo-IP information, referer attribution etc. We then load those events from S3 into Redshift and Postgres.

So we are solving the problem of processing raw user behavioural data at scale using MapReduce.

All of our MapReduce code is written in Scalding, which is a Scala DSL on top of Cascading, which is an ETL/query framework for Hadoop. You can check out our MapReduce code here:

https://github.com/snowplow/snowplow/tree/master/3-enrich/ha...
I'm not sure I get your point...are you saying there was no intent? Here's what I'm trying to say: If you buy a copy, everyone involved in making it gets paid. If you pirate it, they don't get paid. In other words, they were deprived of that payment. I'm sure the legal specifics are quite different, but in common parlance, taking something without permission is theft, even if it's not tangible property (e.g. "he stole my idea".)
While he's right, sort of, I think the value of cellular phones, smartphones and Facebook is overblown and I also think these can also have a negative effect on your social life. Make an experiment, disconnect your smartphone for one month.
I found the author's main idea valid and the connection to the threat of Native Americans interesting but a stretch. The details are what sink this piece. Perhaps a great-great grandfather of mine worried about Indians, but its likely most have zero connection to that mindset today (attacks from similar).
Nice. If you wanted to go even more inline:

Function.prototype.where = function () {
var fn = this, tests = [].slice.apply(arguments);
(tests || []).forEach(function(test){
if (fn.call(this, test[0]) !== test[1]) {
throw new Error('Failed inline unit test with args: ' + test[0]);
}
});
return fn;
};

var square = function(n){
return n * n;
}.where(
[[2], 4], // [[arrayOfArguments], expectedResult]
[[3], 5] // <-- This test will throw an error
);
My experience in academic computer science has been the complete opposite.

In industry, what I've seen is that often engineers are scrambling to please managers or customers, with work divided among multiple people, so the code is usually poorly written and undocumented.

In academics, publications are of primary importance, so everything is documented. The longer timescale means there's more time to refine code that's designed for a single, focused problem. The limited scope of the programs used means code quality isn't an issue most of the time.

Also, in theoretical computer science at least, the focus is entirely on rigorous proofs and finding optimal algorithms.
While in industry, it's more "get practical things done quickly so we can sell it".
There is nothing to reconcile. Google felt threatened by Facebook, and so quietly making the world a better place is a lower priority than what it perceives as self-defense.
Single hardware with many cores does not give the same performance as multiple machines. For example, consider disk throughput. If the data is striped across multiple nodes then the read request can be executed in parallel, resulting in linear speed up! In a single machine you have issues of cache misses, inefficient scatter-gather operations in main memory, etc.

And it is much more easier to let the MapReduce framework handle parallelism than writing error prone code with locks/threads/mpi/architecture-dependent parallelism etc.
What is this something that forces sites to use FaceBook login and not implement their own?
"27 million Indians born each year"

Now the next important thing to do in the 21st century is to educate all these people. I imagine with more automation, robotics, etc, people will need a good education to survive. Some people born today will be alive in the 22nd century.
As all we have is conviction data, we can only see the crimes people care about seeing the criminals punished for.

There are plenty of crimes that go unpunished, and therefore groups can end up under reported, as the crimes they commit are for various reason ignored.
"a plane with a low drag coefficient won't go anywhere without powerful engines."

http://en.wikipedia.org/wiki/Glider_%28aircraft%29
Is putting a battery-powered pump in a water gun a non-obvious invention worthy of patent protection? Batteries, pumps and water guns all existed before this -- what's the innovation here?

This is an excellent question. Let me offer a possible answer.

It seems to me that the very fact that batteries, pumps, and water guns had all existed for some time, and yet nobody until Johnson thought to put them together, in itself constitutes evidence that the idea was nonobvious.

It seems to me that a lot of the problem patents we have seen in recent years involve relatively new technologies. For example, once we had low-cost scanners, and once file transmission by email became common, scan-to-email was an obvious idea. But it wasn't so obvious that one of the first people to think of it (almost certainly not the very first) wasn't able to obtain a patent on it. Therein, I think, lies the problem: when a new technology shows up, the PTO simply has no way to know what applications of it count as obvious -- it hasn't been around long enough for the obvious ones to have been thought of already.

Under such circumstances the PTO should be very careful about granting patents. I think a reasonable guideline would be that once a new technology begins to be widely used, the PTO should assume that any idea that simply combines the new technology with existing techniques, or applies it to well-known problems in a straightforward way, is obvious. This would have ruled out all the "X, but on the Internet" patents we have seen go by.

As I have written previously, a deeper problem with our system is this. A patent is a trade: we give the inventor a time-limited monopoly in exchange for disclosure of the invention. But there's no one unambiguously charged with making sure we got a good deal: that the value of the disclosure outweighs the cost of the monopoly. While this is technically the PTO's responsibility, its management and incentive structures aren't set up with this goal paramount. This pushes the problem to the courts; but the courts tend to defer to the PTO's judgment. So really, there's nobody minding the store.
I don't think hubs (ie. the sort of switch that indiscriminately transmits every packet to every port) have been in widespread use for ages anymore.
The goal is reasonable, but Google+ doesn't solve the problem.
I don't know a lot of Quantum Physics, but I do know more than most people (not hard) and I'm having a hard time reconciling what you say with what I know. To help me get some context, can you tell me your own background in QM?

How much of the math do you really know, and how much are you relying on "common sense" and popular descriptions?

The reason I ask is that these passages you quote are pretty much exactly in accord with QM as I know it, and QM as I know it is used to predict lots of stuff very accurately. As a result, QM as I know it seems to be useful. Your condemnation of it seems misplaced, so I'd be interested to know more about where it (your condemnation) comes from.
> Moving Big Data around is hard.

I never had any issues with Hadoop. Took about 2 days for me to familiarize myself with it and adhoc a script to do the staging and setup the local functions processing the data.

I really would like to understand what you consider "hard" about Hadoop or managing a cluster. It's pretty straight forward idea, architecture is dead simple, requiring no specialized hardware at any level. Anyone who is familiar with linux CLI and running a dyanamic website should be able to grok it easily, imho.

Then again, I come from the /. crowd, so YC isn't really my kind of people, generally.
> Intelligence is not magic, and in some way almost definitely scales with computing power.

The speed of intelligence scales. But not the quality of it.

The quality of intelligence is something very hard to quantify. But as simply as I can state it, it's the quality of coming up with an idea that is not just an extension of an existing one, but an idea that came seemingly from nowhere. To someone else the idea appears magic, and no amount of thinking by that other person can lead him in a path that will end up there.

> but they are an indication that such a thing could be possible.

Real genius is not just "more" intelligence, it's intelligence of a different type that a non-genius simply can not do, no matter how they try. Analogously, just because a computer can do something fast does not give it that hard to define quality of true intelligence.

To make (rather than randomly search for) a computer with real intelligence we need to understand what it is, and where it comes from, and we don't know either one of those things. Our best (smartest) computers are all variations of "search randomly" (for example chess engines). Those can do some amazing things, but their limitations will not be overcome by doing more of the same.

> infinite computing power .. every possible

Talking about infinity is a total red herring and you know that - especially because if your method of increasing intelligence is "search randomly" then an AI will not be able to make a better AI - all it can do is continue the random search humans already started.
It sounds like it was a failure of design.
You need to decide if you want to be a PIG or a CHICKEN.

First decide that. Then decide what you need to be what you prefer. Then ask for it.

Nice thing about being a PIG here is that you can be reincarnated.