skysight-inc/HackerNews huggingface dataset:
That's not really true, things can become de-facto standards even if they're proprietary, especially if the actual status is in doubt. Many developers don't think about the long term consequences of licenses when they start using stuff, especially if it is useful and free of charge.

Linux is a perfect example of a proprietary API (Unix) which is in very widespread use, which was cloned by FOSS. Most of the Unix command line utilities were explicitly cloned by the FSF to be compatible with existing shell scripts on Unix.

Adobe made Flash proprietary and it became incredibly widespread, so widespread that if you turned if off, many websites would break, despite the fact that it had numerous performance and security issues. Flash made it to something like 97% penetration of all Web clients (prior to Apple iPhone) People have cloned Flash (hAXE for example), but there was really no reason to do it, because Adobe offered the player free of charge.

WINE is in widespread use. Samba is in widespread use. Lots of Website REST APIs have been cloned.

Adobe PDF was proprietary and widespread cloned until in 2008 it became an open standard.

Cloning APIs is a time honored tradition for "embrace and extend". Microsoft even cloned proprietary APIs, and DOS itself started out as an unauthorized clone of CP/M. Where would Bill Gates be today without Seattle Softworks?

I hate having to resort to the tired ole idea of rich people having gotten rich by theft, but in many cases, it's quite true, that Gates and Jobs both freely copied, cloned, and modified other people's stuff, got stupendously wealthy off of it, but somehow, it's wrong for us to want to practice their methods?
Paul Graham talks about hiring people who aren't hapless: http://www.paulgraham.com/relres.html (2009)

Which I agree with. I've worked with people who started crying at the first sign of trouble. I've worked with people who wanted to make every single encounter into a fight. Both of these are completely toxic to a start-up.

I really worry, though, about these hiring practices that are just psychological tests designed by non-psychologists, like this:

Hire people who emailed you a dozen times before you had a chance to reply

I usually stop emailing after 3 or 4 times, figuring that that 4th email already made me look desperate.

I've said it before and I'll say it again: a lot of these "how to find good employees" are as rigorous as dating advice in the latest issue of Cosmo.
Ruby -- or more precisely, MRI, though some other interpretations may do something similar -- uses the a fixed set of object_ids (which is what is stored on the stack to locate an object on the heap) for small integers, so if the object_id is within that range, the interpreter uses it directly to calculate the value, and doesn't need to go to the heap to get a value. (MRI does a similar thing with the values nil, true, and false, as well.)
A lot of the discussion in this thread is about what this sort of ruling means for people making compatible implementations of other people's APIs -- Unix, the PC BIOS, etc. But that's not what Google was intending to do here, they were using part of Oracle's Java tech to build their own, incompatible application format.
I agree. At the end of the day, it always comes back to personality types and drives. Each startup needs different things in different phases. Maybe a really smart coder is exactly what a non-technical co-founder might need, whilst a resilient hustler is what a well groomed hacker needs. In general, universal quantification over statements that are not law-like are doomed to fail. (<- yes there is an embedded pun there).
The brokenness of Java RMI in the cloud
I think the author has it a bit wrong. If the KKK decides they want to try to prevent African Americans from visiting their website, that doesn't really have anything to do with network neutrality.

The relevant network neutrality issue is: Your ISP oversubscribes its peering link to the wider internet, so people in your ISP's service area who visit the NAACP's website to watch a video of a speech by a civil rights leader won't be able to see it. Meanwhile your ISP's Fox News affiliate comes in loud and clear to inform you of the dangers of welfare queens and anchor babies. (Feel free to substitute videos on the Tea Party website and your ISP's MSNBC affiliate if it better matches your political leanings.)
Wit.AI (YC W14) is hiring full-stack engineers in San Francisco, Palo Alto
It mostly has to do with the way you squint and look at it. You're a smart guy, give it a few goes and it'll make sense.
Interesting article, but saying Munich is conservative is just plain wrong. Munich is to Bavaria what Austin is to Texas, it's as liberal as it gets.
The Supreme Court's technical cluelessness makes them better justices
"I hate open office"

Is this hate based on criteria that you can articulate or just a (no doubt strong) feeling?

LO serves my needs well, and the mathematical formula editor is less annoying than the one in MS Office 2010.
This post was upvoted by sockpuppets. We have banned those, buried the post, and banned the site.

Edit: We're also banning the site of the startup this was promoting, since it has been promoted abusively on HN in the past and asking for that to stop [1] seems only to have encouraged more.

1. https://news.ycombinator.com/item?id=7637010
No way, they're too busy checking LinkedIn.
I think the EU might have words to say about option B - procurement over quiet a low level is meant to be blind.

See the arguments about who gets to build the new trains for the UK.
I think I'm out of the loop a bit on the chain of events. Last I heard, the FCC were the ones holding back the tide by classifying ISPs in a way that prevented them from limiting bandwidth. And then recently a court stripped them of this ability, opening the gates for ISPs to manage their bandwidth how they wanted. Is there a step somewhere after this that I missed where the FCC turned into the enemy? It seems strange to be protesting the FCC like this, when afaik they were the ones who were on our side for so long.

But please, someone correct me if I am wrong. I'm not as knowledgeable as I'd like to be on this.
I agree with some of your points (and have also forced friends to do double blind tests on their shiny new toys), but the problem is the price point. I'm not an audiophile either, but for $200, it better justify itself. To me, $200 is really expensive for headphones. And from the zillions of comments and reviews I've seen, you can get the same quality from a competitor for $50. It's borderline a Monster Cable scenario.
>> Enums would demand an explicit cast
>
> enum Test
> {
> A,B,C
> }
>
> int x = Test.A; // This won't assign
>
> int x = (int)Test.A; // This will

The OP wants the first one to work (that requires an implicit cast). The second one is an explicit cast. You explicitly demand a conversion to int.

> > and they are static
>
> Not sure why that's important.
You cannot add more values to the enum without modifying the enum. If you don't own code to the Assembly that defines the enum, you're out of luck. With the OP's solution, a third-party dev could add more 'constants' to "TypeId", simply by providing more factory methods.

Sure those factory methods would not be located on the "TypeId" type, but that's acceptable.

>> Also, any logic to them, would have to be added as extension methods

> You can extend enums using extension methods, just like you can with classes or structs (you can also extend delegates FYI).

Yes, but you can't add properties, for instance. Also extension methods are a C# and VB compiler feature. Other .NET languages (especially dynamic ones) will not discover these methods. Same goes for uses of 'dynamic' and reflection.
> Boko Haram, whose name literally (yes, literally) means “Western education is sinful.”

Not the point I know, but from what I have read that translation seems pretty suspect. And even if it were accurate, I'm not sure why it's particularly relevant.
"Leaving aside that GQL is a language, and thus not copyrightable according to this decision,"

Citation needed?

"AFAICT, GQL is Apache licensed"

This page (https://developers.google.com/appengine/docs/python/datastor...) is not Apache Licensed.

It's "Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 3.0 License,"

Given they haven't complied with the license (no citation, no attribution), calling this a "licensed use" is quite a stretch. It's actually pretty clearly not a licensed use.

"This decision does not affect you if your implementing an API in accordance with the license."

Which open source projects rarely do ...

Really, do you think the TOS of most of these websites or software allow you to make your own implementations?
Are most of them who do get "licenses" being careful about actually following license requirements?
Your sarcasm is in very poor taste. What happened to those girls is horrific, and making jokes about it is despicable.
I'm not sure what you're getting at...

I can at the very least vote for the people who are writing laws and making policy. The people, via democratic government, have (theoretically) some influence on how the network is to be administered and regulated.

If rules are left to the whims of a single monopoly or a small oligopoly of network providers, the only options are "take it" or "leave it."
I ask a question, Sun changed the Java license to GPL, doesn't that means that Google can now use it to reimplement Android API's?
New guidelines outline what iPhone data Apple can give to police
Could you? It seems to me that mopidy-gmusic does not have All Access support. That's according to this issue: https://github.com/hechtus/mopidy-gmusic/issues/5
this is a stupid idea. you're not ready to publish an API - let alone be concerned with discoverability if you have no idea what you're publishing.
Probably too early to discuss, but what's the status of the VM + bytecode spec? The preface of the SE 5.0 VM spec [1] says:

We intend that this specification should sufficiently document the Java virtual machine to make possible compatible clean-room implementations.

IANAL, but isn't the "clean-room" giving permission or at least encouraging others to reimplement the VM without Sun/Oracle's involvement? Or is this a non-legally-binding statement and all bets are off with respect to the VM specification? (Or something else?)

[1] http://docs.oracle.com/javase/specs/jvms/se5.0/html/Preface....
And a permanent-twentysomething with an IQ of 117 can't make such a decision? Even though it barely affects him?
In Javascript (which is also dynamically typed) I've had a few times where adding 1 and 0, say, yielded "10" because either the 1 or the 0 originally came from a string. OK, I can live with that, but I find the fact that you can use that string in numeric comparisons potentially confusing.

The general argument is that if you write enough unit tests, you can guarantee that your code doesn't make those kinds of mistakes. The statically-typed response is "why should you have to write unit tests when the compiler can make that guarantee for you?"
MySQL dumps
Why can't I comment on the blog? Anyway, I was going to say.

>Slowly but surely the JS worlds moves toward looking like the Flex/AS3 of years before.
Here's an article on the point about the name translation:

http://www.csmonitor.com/World/Security-Watch/Backchannels/2...
I think that this is absolutely right in principle. An API is tricky to get right and good one is definitely creative (it is a work of design) and there are many copyright able things that are less worthy.

The fair use/enforceability side of things is where the interesting questions lie and that is the place for a messy compromise to allow some forms of interoperability. I would be most in favour for attempts at drop in compatibility and actually find Google's incompatible embrace and extend commercial manoeuvre quite unsympathetic.
Who not only never paid for them but are probably paid to wear them.
Yep still there: https://picasaweb.google.com/101140337460005353839/FeynmanTr...
The sweet spot between a more full featured IDE like VS, LINQPad, or SharpDevelop and a REPL environment has not been explored very much so far. Even ScriptCS is more of one-off execution kind of setup, although they do have a REPL.

Filling this gap is what I tried to achieve with CShell. When I started, the Mono REPL was quite a bit ahead of Roslyn still, but now Roslyn overtook it. I'm planning to switch to Roslyn for the execution engine and use NRefactory for the code completion still (especially now that Roslyn is open source).

Where I want CShell to go, is it being a light-weight IDE with a focus on iterative execution. I use LINQPad evey day for DB stuff for example, but when I want to write progressing code, usually exploring some kind of data space - where I test each line, plot some charts, look at the data the variables contain - then there's no real competitor so far for C#. Either you have Matlab, R one one side, or linear code execution environments on the other.
Apple may have a great relationship with the music corporations, but not necessarily with the artists themselves. The big businesses are still taking the large slice of the pie and giving the artist very little back.

A streaming service where the artists can sell directly and pick up a larger percentage of the pie will quickly gather a large catalogue of new music.
I would reframe the suggestion as two ideas. 1) "hire for your culture" and 2) conditioning on a cultural expectation of individuals putting up with lots of problems on their own, "make sure new hires can cope."

The latter is an important point, but the idea that all startups have this attitude towards employees and crisis management is not accurate.

How important is it for potential candidates to know if the culture at a startup they are considering working for has these values? I'm guessing a blog like this turns off a lot of people, but to the author's point, not anyone they would hire. Effective :D

FD: back end dev at Mighty Spring, we do startup hiring. (mightyspring.com)
I am not a musician the calibre, or even near it, to Gould but I completely, utterly disagree about live music. Maybe he preferred the recording studio, but why would you want to take away live music from the tradition! It's like watching a chef make food on TV instead of being where you should be when it comes to food: in the kitchen and dining room, smelling all the smells.

Edit for those not agreeing: try sitting under or near a grand piano with your eyes closed. Your body experience is completely, utterly different than listening to the same music over even a very good stereo sound system. Being in the same room as an orchestra or even small chamber ensemble gives you a fully physical experience. It's not just your ears being involved, when listening to music.
He isn’t making a joke, he is pointing out a flaw in logic.
Instead of asking 276 people to donate $276 each, wouldn't it be easier (and likely more effective) to have a variably-priced kickstarter/indiegogo?
Static typing à la C,C++,Java,js,etc... is from my experience inferior to dynamic typing.

On the other hand, the Haskell typing is superior in many ways to dynamic typing. Because you lose very few power of expression but you gain a lot of time in your workflow (and also security).

Concrete example (I'll use js):

function showField(data) {
console.log(data.field1.filed2);
}

you relaunch your application, you click on three to four elements, then you enter your name and a password. You click on the button, and "BAM, filed2 doesn't exists".
Correct the typo or add a test and replay the game of executing your new code.

Static typing:

showField : ConcreteData -> IO ()
showField data = putStrLn $ filed2 (field1 data)

Try to compile, get the error:
showField : filed2 doesn't exists, may be you mean "field2".

correct your code. Now you're done.

Here is another example:

Dynamic typing:

function showField(data) {
if (data.field) { console.log("OK"); }
else { console.log("Not OK")}
}

...

showField(myData);

Try it using all manipulations to reach the test case, then:
ERROR, couldn't find field for null. :-|
replace by if (data && data.field).

In static typing:

showField data = if (field data)
then putStrLn "OK"
else putStrLn "Not OK"

compile: could not match String with (Maybe String) at ...
now:

showField data
| field data == Nothing = putStrLn "Not OK"
| otherwise = putStrLn "OK"

You fixed it, but you didn't had to lose your time searching
the error.

The BIG bonus is that you detect the error before you discover it at runtime. Imagine you didn't detected the error during your test (even with unit tests). This is why it is so easy to push this kind of error in production in a dynamic typed language.

And I only scratched the surface.

I program mostly in JS now, and I love even more when I am doing Haskell.
I have used Anki a lot to learn Japanese. I think that the principle is not that great for languages. It helped me to remember the vocabulary and the kanji, but it only help me to acquire visual memory. When I hear Japanese, I am way too slow to make the relationship between the Japanese word and the associated concept. What comes to my mind first is the French word (my native language) and now I feel like I am learning the same vocabulary again (and the fact that Japanese has a lot of homophones does not help).
Having sentences cards and audio cards helped, but that is barely enough.

My advice would be not to rely too much on Anki. I considered it as a silver bullet because it was so much better that using a notebook (like I did in my childhood), that was a mistake.
Find other way to practice. Take lessons (maybe one day I'll try these Skype conversion offers), read articles, watch tv show with subtitles, find people you cant talk to…
Explaining the illusory nature of the self isn't important. seeing, in real time, the illusory nature of the self is what brings liberation.
Some measures of quality are objective. In headphones, for example, one can measure the degree of distortion of the headphones in reproducing sounds. In smartphones one can measure the quality of the camera, the screen, the durability of the device, and so on.

Many of Apple's products do represent quality construction, but they extract a premium beyond even that and they often put out products which are objectively no better than the competition but which the public nevertheless swoons over and eagerly buys at a premium.

Indeed, the excess perception of quality in Apple products is such a well known phenomenon that it has a name: the Apple Reality Distortion Field. I've seen many comments in this thread alone demonstrating the truthfulness of that phenomenon.
This is really great for open source. When I write some code and license it as open source, I want to be given attribution, including by closed source companies that 'copy' the open source.
While I appreciate your frustration, people are constantly trying to help (to be optimistic about their intent) by "changing the word order". The result is often a changed and inaccurate meaning.

For all our sake, I hope you choose to make appropriate edits where you see they are needed. Don't be deterred by that one experience.
Now registered, but used NameCheap as the comments below suggested. But thanks for this.
Excellent summary. Regarding number 2, how do you think the context problem could be solved? The application can save the tab history of how you got to the page, but then you would need to install a plugin and possibly send navigation info to an online service. Or you could add a note to the saved bookmark, but now it requires some of your time.
Ah, you mean "server side". Gotcha. Yes, building for the server is easier because you have a single runtime to target. In the case of Node, it's V8. In the case of Dart, it's Dart VM on the server.
But deadlocked on Google's fair use.
To whoever downmodded the parent: I'm pretty sure it was sarcasm. That is, I'm pretty sure when he says "it has to do with the way you squint and look at it", he's saying that there really is not much difference.
I like it, will consider it. The naming is a bit unhappy, I agree.
Well you can always argue what is right and what wrong. Very true, it is a violation of the Twitter terms of services but I still appreciate it for sharing with the HN community.

There has also been a post about Darkmarket (https://github.com/darkwallet/darkmarket) on HN. Again, I do not encourage trading illegal goods at all but as a proof of concept it is still impressive.
This is very cool. A similar project, called J. S. Bach-Stiftung, has been recording all of Bach's choral works. Check them out on Youtube: https://www.youtube.com/user/Bachstiftung
Awesome! It would be great to see this on the AUR.
> Lots of people would have a problem with that.

Lots of people don't.

If he was the type of person to object to that sort of thing, he would say so. They can do that to my brain, I don't care, I don't need to 'think about it for a while'.

And it's easy to verify if he was tricked. Ask him again later. But someone trusted should have been doing the asking in the first place, making this a non-issue. Not that I agree with your patronizing assertion of how easy it would be.
How is it shady?
Locksmith looks awesome. Is there a way for services to cause their node to retain its lock for some time after a reboot, for example to allow replication to catch up or similar?
+1 for the expiration date and context ideas. Those are great ideas.
Having set up something similar yesterday for webhook.com here's what I ended up going with.

1. Using zendesk for incoming emails and a knowledge base.
2. Installing tissueapp plugin for it to allow you to convert a zendesk email into a github issue. Even better, wherever you respond from (email, zendesk, or github), the other instances get updated and alert the user.
3. Pipe out hipchat notices (zendesk has an option for this) into our chat room whenever issues/tickets are updated.

Ended up working really well and doesn't get our engineering team out of the tools they already use.
Scooch.js
Thank you everyone who participated. I have chosen to send a copy to ayers, anishkothari, boringkyle, and ritchiea. I have emailed 3 of you already. Anishkothari, I couldn't find your email address through your profile info. If you would be kind enough to email me at the address in my profile with the mailing address where you'd like the book sent, then I would be very grateful.
Can I donate less than $276, say the amount that my pocket allows?
The reason you didn't address what phea said is that you promoted this story through abusive techniques. So abusive, in fact, that we've banned your main account too, as well as this site.

Edit: We're also banning the site that you've abusively promoted here in the past [1].

1. https://news.ycombinator.com/item?id=7637010
The kidnapping happened in Nigeria, not Uganda where the kidnapping took place. Presumably this is why it is save without security guards.

The author cannot think of a way to help the children of Nigeria, so he is just trying to make something good come out of this situation.
This is the twitter account of Charlie (the person behind this) : https://twitter.com/charliepark
Also - free paper to doodle on!
PyGeckoZabbix – display Zabbix data on Geckoboard
Anki's deb package is 3MB, Windows installer is 24MB and OSX installer is 30MB. The package in the debian repos is 854K and the installed size is 5.4MB, with 2.7MB in locale files. I imagine the "huge" 20MB+ installer file you are put off by includes a ton of third-party libraries/tools to ease installation for novices.
Charlie Park is front-end dev at IFTTT:

https://twitter.com/charliepark/status/464784408630013952