skysight-inc/HackerNews huggingface dataset:
> What is this sense of entitlement here on HN?

HN (as a general rule) doesn't support free (as in speech) software.

It's interesting to contrast Oracle with webapp providers who haved move from free to paid models. HN (as a general rule) supports the latter and responds to the complainers with "you shouldn't have expected anything from a product you weren't paying for".
Responsive design puzzle game
Pirates des Caraïbes – Bande annonce - Vidéo Dailymotion
because the perspectives of a user and a founder are often orthogonal in the startup scene.
Since any web-framework should be mostly IO-driven, the actual speed of the code matters very little as it will in most cases always be nothing compared to the actual IO-operation itself :/ In case you need certain code to run very fast, most people will write that in C/C++ and patch it into their solution, that's what we did in the Django-workshop I used to work in.

I thought Facebook mostly used C++ for their PHP VM? Facebook itself is alot of PHP, they also use Cassandra (Java DB) for inbox messages I believe.
Logdown, the blogging system for hackers
I like to release my libraries and tools under the BSD license, and I like to use others' permissively licensed libraries and tools in my own proprietary/commercial/closed applications.
The Quipper System
> Now it's somewhere persecuted people flee from.

No it's not. That's very melodramatic. A single person who hasn't even been persecuted yet has flown from the US. Maybe he (and others) think he will be persecuted if he returns, but that's something very different from what happened in the eastern bloc during the Cold War.
Go is more dynamically typed than Haskell. That is, it leaves nullability to runtime. It leaves parameteric polymorphism to runtime.

Whenever there's a static type that Go cannot express (and there are plenty of those!) it is effectively dynamically typed about that property.
Partly because it was a conservative design, and partly because there just wasn't enough U-235 to build an extra bomb for testing. None of the U.S.'s three completely separate experimental enrichment processes were working that well, so they resorted to running them in series to get a result that was enriched enough to be used, which resulted in relatively low throughput.
> you can half-distribute the app by only distributing the client half to browsers

Calling the client portion of the code of an SaaS application "the client half" is a stretch. 1% is a better estimate, and "1%-distribution" is a better word than "half-distribution". The client portion of code has its source distributed at the same time as when it runs on the browser.

> That just brings the license up to date with the original intent

The only clue to intent users of software have is the specific wording of the license. Changing the license cripples the software. How do we know the original intent wasn't to bait users in with an wrongly used license, then change it later on?
The Patriot Act is a reactionary cowardly piece of legislation. The fact that it is law in no way makes it equally definitive of the nation as the constitution.

I'm not sure why you equate my outrage to ignorance. I can set you up as a complementary straw man by asking why long-term human rights abuses by your government cause you to automatically approve of their actions?

As to Auschwitz, well, that's why I said "stepping stones" not, "next thing you know Obama's going to grow a toothbrush mustache and send the jews off to labor camps". The point is that this kind of unbridled power of global surveillance, supposedly checked through secret courts but which are accountable to no one outside the innermost circles of power is guaranteed to corrupt in the long run. Furthermore, when the tyranny starts, you won't even know about it because it will be done in secret with explicit legal approval. Give your "it can't happen here" attitude I find it incredibly ironic that you would call me naive.
Very true. Imagine every commercial entity that delivered something to your place - would plaster some sort of advertisement poster.

Completely unacceptable. I think the answer is a permission based advertising. have a button on every website that turns on Ads. this way engagement would be higher at least IMO.
I don't need to "want that time not to have been in vain", I am already developing with Haskell and reaching extremely high productivity levels. What I want is for people to spend less time improving the eco systems of poorly designed languages that repeat past mistakes.

Go is more dynamically typed than Haskell. It isn't a 0/1 thing. Parameteric polymorphism is dynamically typed in Go. Nullability is dynamically typed in Go. These are huge parts of the languages.

Instead of engaging in a discussion, you're repeating mistakes in a condescending tone.

Your last part of the comment is only appropriately responded by "You are giving the Go community a bad image by pounding me with ignorance with every reply, I kindly request that you study the matter before replying further".
Oh that AGPL cash cow... Damn you Richard Stallman and your capitalistic ways!
Agreed. I avoid Java whenever possible for C# or Scala. This, after many college courses that required the use of Java and later on projects for clients. C# at least lets one use more modern programming practices than what Java 7 (or below) allows.
Wasn't it removed in python3, and deprecated since 2.6?
Indeed, although as the man page describes, /dev/random is too slow for most practical purposes. The entropy pool drains rather quickly and then the device will block while the pool refills.
You would have life costs either way.
Moreover, using Cookie Monster you can allow cookies for second level domain names. Meaning that if you navigate to mozilla.org, cookies for www.mozilla.org will be accepted — but cookies for adnetwork.com will not.

This feature makes many sites work which otherwise break with third party cookies disabled, while still discarding the majority of third party cookies.
Why on earth would you use C++ for a massively concurrent app? While I understand using C/C++ for low-memory devices or where deterministic/manual memory handling is important. Concurrency/Paralellism is simply not C/C++, Java's, or any language which relies primarily on locks, cup of tea.

If possible, try to make Go work. It's concurrency model is great for massive concurrency.
Personally I think this is great news. Great news for free software, great news for users, great news for the AGPL. So very few web apps are open source, despite so many of the people who develop them claiming to support free/open source software. It seems that the only way to make the web open source is to force the hand of the developers, and that means we need to start pushing copyleft licences like the AGPL. The GPL was created for a different age. So much of the software people use now runs on a different machine; we can't continue to ignore this loophole.

BDB has had a commercial licence available for a long time, this move just closes a loophole that people were exploiting to use BDB in non-free software without contributing back.

Additionally, to the people saying 'oracle are only doing this to make money', this is one of the ways you are supposed to make money/fund the development of free software. RMS talks about it here: http://www.fsf.org/blogs/rms/selling-exceptions

I consider selling exceptions an acceptable thing for a company to do, and I will suggest it where appropriate as a way to get programs freed. -- RMS
sigh, level 2 is broken
I don't understand why is that contrast interesting. Most of those webapps were already proprietary, and some of the paid ones are also Free (as in speech), like NewsBlur. They're completely different situations.
I guess to progress from here we'd need to laboriously compare actual example pieces of code. For example a URL shortener is going to be easier to write safely in Haskell, where I am guaranteed by the type system not to have 404 errors in routes I advertise, or XSS attacks.

Also, in my experience, computer software is buggy, unreliable, crashing, and generally terrible. I think people who view software differently have simply grown accustomed to the terribleness that they can't see it anymore.

Also, reliability is interchangable with development speed. That is, you can trade one for the other. So if you start with a higher point, you can trade more for speed and still be reliable. In unreliable language, typically reliability is achieved by spending more time maintaining test code, doing QA, etc. In a reliable language more resources can be spent doing quicker development, and less on testing and QA.

When you see a reliable project implemented using unreliable technology, you know it's going to scale poorly and require a lot of testing.
Yes, but it shouldn't come with a parrot just because he likes parrots.
Unless you're a genius you're not going to learn decent C skills in a couple of weekends from a Perl background. A couple of months would be more realistic.
Does this work on footfall or user needs to click on the device??
I haven't messed around with those layout tools, but I can recommend this book if you are interested in the actual engineering: http://www.amazon.com/High-Speed-Digital-System-Design-Inter...

(EDIT: fixed wrong link)
I think you missed the point there was no domain knowledge advantage in the second version.
I don't really understand what you're asking, but...

If you're worried about Google deciding to suspend service, the easiest solution is to use Google Apps for Domains, which costs you a domain registration (~$10/yr at lots of places; search HN or the web for recommendations). If Google ever decides to boot you, move your domain - you can keep the same e-mail address. Be sure to keep backups of your mail; I like offlineimap, which is also useful if you e.g. occasionally want to mail from the train.
RAII doesn't save you from buffer overflows, or memory leaks when you need an object to live beyond the current scope.

C arrays and pointers can still be used on the stack, and are sometimes simply the right tool for the job.

While RAII greatly reduces memory leaks and enhances resource-management, it doesn't save you in all cases, which means there still is an overhead and you will still have to worry about it.
Sixty hour work weeks are sustainable for most twenty somethings, not healthy but sustainable. If you pay twenty per cent more than MS for fresh grads but get fifty per cent more work out of them you'll come out ahead. This does require real standards in hiring to ensure your perpetually mildly sleep deprived workers can do glue code in their sleep because a lot of the time they will be. This model also requires a constant stream of fresh grads but at market + 20% that won't be a problem.

The turnover does suggest that Amazon's reputation as a hellish place to work is well earner but it could easily be as profitable long term as Google's much more humane one.
The iTunes password prompt is absolutely maddening. If I make multiple purchases in iTunes it refuses to accept my password after the first purchase i.e. I can buy one film, but to buy another I have to restart. Never mind that I check the remember me box whenever I get the chance (which appears to be shown at random in the login box).
Motorola faces privacy concerns
Context Aware Programming
The problem is that it is too easy to turn back off. Editing the hosts file on xp is sort of a pain, so it works for overcoming the impulsive browsing.
Original source: http://www.beneaththewaves.net/Projects/Motorola_Is_Listenin...
Firefox has the same setting, the problem is that many of us don't want to restart the browser every morning. Using suspension, my browser sessions tend to last more than a month.
Unless you are modifying the code the section 13 of the AGPL does not require you to distribute source at all so most distribution users would never notice the difference. I guess this might effect you if you had some crazy internal fork of BerkeleyDB that you were regularly merging upstream into but that doesn't seem like a huge use-case for this software somehow.
Check out Wunderlist.
Running different pseudo-random generators in parallel and then XORing their results should have the property that if at least one of the input algorithms is "good", then the output algorithm is "good".

My intuition is based on the fact that this statement is correct for true random sources: If you take a bunch of random sources that generate streams of bits, then XORing those streams together will result in a stream of uniform and independent random bits if at least one of the source streams is a stream of uniform and independent random bits (this is an elementary argument in probability).

I'm not certain at the moment whether this generalizes to pseudo-random generators, but it seems plausible enough to expect that the XORed bit stream is at least as "good" in terms of pseudo-randomness as the best of the input streams.

Edit: Okay, I just realized that this is obviously false when the input streams themselves are correlated. For example, suppose that one of the input streams is PRNG A, and the other input stream is simply the negation of the output of PRNG A with the same seed. Then the output stream will consist of all 0s, which is not good. Perhaps some result can be salvaged when the seeds of the different PRNGs come from independent, truly random sources, but this means things get very tricky very quickly.
RAII doesn't save you from buffer overflows, or memory leaks when you need an object to live beyond the current scope.

C arrays and pointers can still be used on the stack, and are sometimes simply the right tool for the job.

While RAII greatly reduces memory leaks and enhances resource-management, it doesn't save you in all cases, which means there still is an overhead and you will still have to worry about it.

Java doesn't have Undefined Behaviour, buffer overflows, or memory leaks (not completely true, I'm not counting space leaks here but I hear it's possible to introduce a memory leak by writing a faulty class loader).

While C++ does provide idioms for writing safe code, C++ can't remove them, which means you will always have to worry about it. Sometimes the problem isn't actually your code, but the library you're using, which is the case at my job, which again made me miss a safer language :(
> Because it's half-life is so long, it's only mildly radioactive. It's an alpha emitter, so plutonium not in your body is not a risk to you

"if inhaled or digested, however, plutonium's effects due to radioactivity overwhelm the effects of plutonium's chemical interactions with the body, and the LD50 dose drops to the order of 5ug/kg"

That basically makes it one of the most toxic substances that we know of.
REAL ESTATE COMPANY
Do you really think things would be any different under Bill? I am not sure what you think would change.
Those people who think this is some sort of enormously evil event that will kill BerkeleyDB because the AGPL is the evilest most restrictive free software license ever should probably read Section 13 here http://www.gnu.org/licenses/agpl.html

This pretty much only affects you if you are running some weird internal forked version that has upstream merged into it regularly. I don't get the impression that this is a common situation for BDB users.

(Although since Oracle did it it's probably inherently evil anyway of course.)
That's nonsense.

Using SVN has nothing to do with SVN being under GPL2, GPL3, AGPL, Apache or any other license that allows for free use, as long as you don't modify SVN and distribute (or provision over the network, in case of AGPL) the modified version. Using SVN to hosting your code repository is in no way modifying and distributing it.
>People are generally okay

This really resonates with me and I've come to the same conclusion from my own, similar experiences.

Its a shame mass media has cultivated an irrational fear of outsiders into everyone.

Ironically, even the people I've met who have been so kind and generous often try to be helpful by warning me about such and such race, or part of town, or different religious people to avoid because they're dangerous for one reason or another.
Didn't the early stages occur in Africa?
> most encryption schemes that you might use to secure the transmission require secure random number generation.

If I understand this correctly, most channel securing schemes require RNG for key exchange (e.g "no prior knowledge" DH key exchange) or pair generation (RSA), then you can move on to a symmetric cipher (whose key is derived from the resulting DH shared secret, or exchanged encrypted via RSA), which requires no RNG (until you want to change the key for PFS).

So one can assume scenario where only a quantum of entropy is needed to establish a secure connection, then refuel the entropy bucket with random data transmitted over the now secure yet "non entropy consuming" channel.
Yes, quite:

http://hps.org/publicinformation/ate/q1543.html

And:

http://en.wikipedia.org/wiki/Environmental_impact_of_concret...

I haven't been seriously thinking about it, like I said it was just a fancy, not a seriously considered notion, and anyway it nevertheless resulted in a healthier response: I void driving, and thus parking, and thus parking in concrete structures.
if they are doing so ,
well we have to lookup for another adblock option
You mean schematic capture and PCB layout software?

- KiCAD: http://www.kicad-pcb.org/

- Eagle: http://www.cadsoftusa.com

Are the most popular entry level ones. You can make an ARM or i7 board with either. I think Bunnie is using Altium which is much more pricey.
"I'm in the early stages of a different project which will probably face a similar situation, except on this massive concurrency will be key..."

I'm a fan of native code, and I use C++ at work and C and C++ on my personal projects. In my last job I was doing web work, writing PHP for Drupal sites. My reaction to CppCMS is just to note that it wouldn't necessarily be easy to create a faster CMS using C++ versus PHP. Drupal sites can be slow as dogs, but the reason has nothing to do with PHP per se. The Drupal codebase is extremely bloated and fairly inefficient in its design, but even worse are the modules that get piled on, and there can easily be well over 100 modules on a site. I've watched the database queries that come out from a real site and it was stunning and appalling to see the volume and the redundancy that occurs on a single page. I was also amazed by the sheer quantity of PHP that gets loaded and parsed (if you're not caching) on a single page. So that tells me that PHP is pretty fast to be able to support that enormous edifice of code. It's not a guarantee that C++ would make you faster than an interpreted language, because the work that goes into generating a webpage plays to the strengths of interpreted languages and away from C++: you'd have to be careful and think through how to handle lots of strings and memory management. A good garbage collector is said to be faster than malloc/new when churning through lots of memory, because it can amortize the work and run on a background thread. I think lots of little strings could especially become a problem unless you planned out a strategy for handling them efficiently. Also, as others have pointed out, a lot of the issues with making a website fast aren't about executing code on the cpu. It wouldn't necessarily be easy to beat something like node.js at handling requests asynchronously, for instance. That stuff can be hard to write. So, I think it would be a good idea to do even a very high performance site in an interpreted web language first, then decide cautiously if there's a way to make it faster by replacing some or all of it with hand-written C++.
You'd also have to include flyovers and opportunities for refuelling. The route would end up looking like a piece of cooked spaghetti was dropped on the map.
You're right. AFAIK I keep ownership of my data when using Google's resources, now that I think of it.
Ask HN: how to build a good RESTful JSON API (best practices, etc.)?
Hi everyone, I am completely new to making RESTful JSON APIs, and I would like to know more about the best practices before starting. Do you have any piece of advice / good tutorials to look at?

Thanks
I'm not sure what you mean here... you want test equipment to be "standard" in the sense that they all agree what 1.0 volt is, but different people can need radically different feature sets from test equipment, as evidenced by the fact that Agilent makes one hundred and fifty three different kinds of oscilloscope, not counting the spectrum analyzers, logic analyzers, signal analyzers, frequency counters...
Marketing Specialist - Remote Work From Home for Site5.com

http://www.jobscore.com/job_seeker/jobs/job_posting?job_id=d...
Designing a better home for refugee children
Functors, Applicatives and Monads in Pictures - in Clojure
I liked the point about offering an "undo" instead of "confirm action". The rest was just basics on sales pitch UI design.

And that anoying footer that covers 1/3 of my netbook screen?
Jay takes a 50% price cut for user information. If users are happy to pass that along for free music 5 days before anyone else then that is the cost.

Most people aren't concerned by this, theyre used to it now. Not saying it's right but its what is so.
Right, Go doesn't have sum types for example. (Or at least, it didn't. Does it now?)
> RAII doesn't save you from buffer overflows

How do other languages solve this problem?

> or memory leaks when you need an object to live beyond the current scope.

Have you ever heard about smart pointers? They take most pain from dealing with pointers. Managing circular references remains a bit complex though.
In conversation with Google’s ideas man on the future and the Internet
Nice! Also if anyone wants to learn the world capitals, I'm working on user-friendly spaced repetition software to do just that:

http://cardflashapp.com

It's still very alpha, but I was able to learn all the world and US state capitals in just a few sessions.
Why Snowden Should Be Using Bitcoins
Lots of personal preferences in this thread. As an A/B testing company - they should have A/B tested a scrolling site against video and then been transparent about their results.
Meta comment since the SO thread covers the discussion on the actual question:

Does the tone of the asker bother anyone else? The "I don't want you to teach me, I want you to do it for me" attitude feels to me the antithesis of the spirit of this corner of the tech community.

His first and only SO question, he's putting up a bounty, and it just feels like a finance/hedge fund guy saying "Damn, this is tough. Let's see if I can bribe the nerds to do it for me instead."

I know there are places for that - elance, oDesk, etc. Just feels like SO is the wrong forum for that kind of attitude, as interesting as the question might be.
MIT study: Even loyal customers write deceptive reviews
Lets see who is going to pay those developers when they cannot sell their skills any longer.

Not all type of software is amendable to consulting/trainings as means of getting money out of it.
Clojure, core.async and the Lisp advantage
Firefox has this feature now build in. Goto privacy -> custom settings -> cookies from thierdparty and change to sites i have visited.
It's ok if a whistleblower is a drama queen.
My startup works on free alternative (apache licensed) db engine. When I saw title I was really woried they would change license to more liberal. That would affect our future sales seriously. But this is great new for us! :-)
Kinda reminds me of neuromancer privacy suites.

Far out.
No, they are not considered enemies. Simply not friends, but that is obvious, just listen to their leaders.