skysight-inc/HackerNews huggingface dataset:
I whole heartedly agree and lately I've been getting worried that too many people in the web community are onboard with a node-centric view of the browser...

It may the same language, but the runtimes are completely different and have incredibly different use cases and environments. Not only that but I'd rather have a healthy ecosystem where the Unix runtime, .NET runtime, JVM runtime, and even interpretive runtimes that are built on top of those runtimes likes Ruby, Python and JavaScript are all considered equally!

That is closer in line to what the real definition of isomorphism is describing. :)
Yeah, it's a pity. There's a workaround for use in production, though I'd have to use an image instead of text.
The problem is that JavaScript does not exist in isolation, there are other languages that use this operator. If you're familiar with any other C-derived language, the way == acts in JavaScript is very unexpected.

Yes, you can learn to deal with it, but that doesn't mean it wasn't a bad design choice. If both forms of equality are required to be operators, == and === should have been swapped. Too late to do it now, woulda, coulda, shoulda, but it certainly is, IMO, a "bad design" smell in the language, and hardly the only one that still bites people.

Another example: the way 'this' scoping works is similarly busted in that while the rules for it are reasonably straightforward in isolation, it is different enough compared to other languages that share the same basic keywords and syntax that it should have been called something else.

To be fair, I don't think much of this has to do with Brendan Eich being a bad PL designer as much as it has to do with the odd history of JavaScript that is still represented in the name of the language ("Take this client language you made which has no connection to Java, and make it look kinda like Java, please!").
Or open it in Firefox.

In other words, if you're a Firefox user, open it in Chrome to see the actual effect.
"It's just funny to see people with no faith in the system."

I think it is more "alarming" than "funny." It is not a new phenomenon, of course, but it is one that should cause us a great deal of concern. We have governments, laws, and legal processes to ensure that various disputes are resolved peacefully and with respect for everyone's rights. When people start losing their faith in the system, they must also start finding "alternative" ways to resolve their conflicts.
Treat them the same way you'd treat any other later-round VC investor. If you're going to need to do substantial work with them but feel this will be difficult you can certainly bypass them, but unless the initial rejection was for something other than legitimate reasons then get over it.
related to the article's topic: anyone with a major interest in the security/robustness of Bitcoin miners, please contact me. email in my profile here.
http://quackpredict.com/accuracy.html
> Go was clearly initially targeted at replacing C++ and it's not being successful in that area at all.

This is a strong overstatement. It's true that we thought more C++ programmers would be into Go, but it's also true that there more than a few teams at Google that have moved from C++ to Go, or chosen to use Go instead of C++ for new projects. It's not a black and white thing; there is no archetypal C++ programmer that does or does not like Go.

To reiterate: Go was designed for systems programming. People are using Go for systems programming. On top of that, there are many others using Go for other purposes. We're pretty thrilled about this.
Many heavy duty production customers of Neo4j run with just a 3 node cluster, no need to scale out as with other NoSQL datastores. And actually they replaced larger clusters with a small Neo4j one.

I would love to learn about your Neo4j setup, and the issues in detail, I want to make it easier for people in your circumstances in the future to get quickly up and running with Neo4j in a reliable manner. If you're willing to help out, please drop me an email at michael at neotechnology dot com.
Joyent share's their NodeJS Production Practices
That one is somewhat reasonable (and relatively obscure code you'd probably never write).

A more realistic example: inner classes can't see class variables from their enclosing classes. (Why enclose classes? - builder pattern)
Instagram account using police documents to identify snitches
Quotes on the existential problem of freedom: Albert Camus & Jean Paul Sartre
To all:
The application merely acts as a search engine / agrigator for publicly available content hosted on sites such as youtube, dailymotion etc.

Its a search engine, as for legality, the users who upload the videos have agreed to having the required rights to upload said content.

The site / application are not affiliated with any of these users and merely scan, index and organize content that is publically available elsewhere.
Bear in mind that this will net the creator a few cents a day (if that even), and burn thousands of dollars in power for their clients. This wasn't economical in 2011 and it's sure as hell not economical now. I'd be pretty pissed off is websites started eating my CPU and battery just to make such a pitiful amount of revenue.

To put this in perspective, for $5 you can buy a USB ASIC miner that will do 335MH/s, worth tens of thousands of full time JavaScript clients.
It's more about producing a quality culture in order to produce a quality product. You can still recognize people for performance, but not by an unverifiable and arbitrary rating scale. You can still promote people, but do it in the open by agreed upon skills, merits, and experience. Your goal shouldn't be to demotivate people by negating all forms of reward, but to motivate them by rewarding in the clear based on agreeable reasoning.

The key is in the culture: enable people to take pride in their work. It turns out from 10,000 feet, what most people want isn't, in fact, simple monetary recognition, that this is a by-product of the dysfunctional reward-seeking individualistic culture, looking for any way to find self-worth and recognition in a system devoid of true value. Any port in a storm.

What people really want is autonomy, mastery, and purpose from their work, and a culture that enables them to love what they do while being fairly compensated and challenged. Deming's ideas are meant to enable this type of business, and entirely remove the type of childish game playing over simplistic rewards you're talking about.

You go from a simplistic carrot-and-stick reward-seeking and punishment-avoiding mentality (and all the complex structures of negative reinforcement and behavior avoidance built around it) to a functional culture, devoid of fear, enabling people to do work that they can feel proud of.

If you have people who really are superior, they'll want to be challenged, to work with other great people, and to be fairly compensated. If you have sub-par people, work on raising them to another level: Point 13, "Institute a vigorous program of education and self-improvement."

Furthermore, your top performers are your outliers: the tiny sliver on the end of your bell curve. You need to start by realizing that statistically, improving your entire culture is going to improve your company more than desperately keeping hold of your top 2 rockstars using methods that are demotivating everybody else. It turns out, the things you do to improve your systems and culture are the same things that top performers want. They'll leave if they're not feeling fulfilled—if bonuses and money is all they want, screw 'em, they're culture thieves anyway. But what they probably really want is work that is real.

Easier said than done, but Deming gives an excellent prescription for how to do it, and it's fully backed up.

The key is to realize that you cannot do these things in isolation. That was his last point: "Put everybody in the company to work to accomplish the transformation. The transformation is everybody's job." You can't just remove part of your existing system because of one suggestion: you need to replace it with another, better one.

PS: Here's another writeup I did on this subject recently, delving into much more detail: https://news.ycombinator.com/item?id=6704645
I'll probably get down voted further, but I seriously don't understand the difference. How does market share change the decision? If MS had only 90% share would people have not been frustrated with IE and EU never have acted?

I'm honestly not trying to troll..
That's a monthly cost. not once off :)
Yeoman is fantastic! I actually used it to scaffold out my blog, which I use jekyll for. It's amazing the things that we can automate things we used to have to manually do and focus on making cool stuff!
Your UI walkthrough is flawed
The Meyers Briggs test is well known to provide almost NO valuable predictions of human behavior. It is merely a measurement of preference and its test-retest is about 50/50 after just 5 weeks! Pretty useless, yet people continue to bring it up as some kind of data-driven insight into your true self. Bollocks!

Sources:
http://priceonomics.com/the-economic-dominance-of-entjs/
http://management.fortune.cnn.com/2013/05/15/myers-briggs-pr...
http://www.indiana.edu/~jobtalk/Articles/develop/mbti.pdf
I am not sure where you would get a house in Mumbai for $333 unless it is way out on the outskirts. You could share a flat for that though. Food is cheap if you like Indian food. Don't drink the water.

You can get 10 year tourist visa that is good 6 months at a time. All you have to do is leave the country and come back. It used to be you had to be out for two months but they scrapped that rule some countries.

Setting things up on a tourist visa will be a pain. Getting internet will be a pain. Better to split with neighbor or have Indian flat mate do it. Internet may go out sometimes.

Same thing with getting a scooter or car.

There will be a lot of tech stuff to be involved in though.
The behavior carried around by those objects is ultimately in the form of flat digital data, interpreted by other, more general programs, executed on a CPU. Behavior, when it comes down to it, is a property of silicon, not data. This might seem like a useless distinction, but I don't think it is. I like to keep track of what things are underneath the abstractions.
> assuming you could get the same hash rates

You won't. Litecoin's scrypt is (purposely) much slower.
I haven't tried bower, but I always get a little confused when it gets compared to component. Bower seems like a downloader with some 'dependency management'. But its 'dependencies' are disconnected from a module/build system. Great if you have a separate tool to do your build, but frankly most of them out there are awful, and it would be a nightmare even with the best to wire them up to all the conventions of all the libraries you pull in.

As Ian said, component's opinions encourage more modular, better code, and allow you to do what Web Components only now are promising within the DOM itself: bundle together templates, css, code, data, etc. And it does this without imposing a framework. For instance, if you have a pure javascript library, it is extremely easy to package for both component and NPM. Most of the UI components are framework-independent and that is encouraged. The component ecosystem and community is fantastic. And it's not sponsored by a corporation on the NYSE :) These were the main reasons I was attracted to component. The learning curve is a bit steep, but getting better all the time.
Crash in a hostel for a week and figure it out when you are there. Eliminates lots of risk.
> "I'm only saying that if your goal is to prevent the NSA from working against you then this isn't the way to prevent that"

We shouldn't be looking for "the way". We should be looking for "ways"

This is something that mathematicians can do (and I would say CS people as well). This action is not meant to exclude other action. Programmers can also work on systems that are more difficult to subvert, companies can find new ways to not collect personal information in the first place, the general population can call for reform and ultimately trials for the guilty parties, individuals in trusted positions can leak details and/or engage in sabotage...

Every potential avenue for change should be explored. In parallel. Deeply.
No, the issue is force pushing. While it's nice that git changed the default behavior to be far less dangerous, people with push access can still force push – be it one branch at a time in newer gits or all branches in older ones. It's all fine and well to tell them to change their settings and/or ask them please don't force push, but people make mistakes. Hell, I want to prevent myself from accidentally doing this.

Git let's you prevent this easily using the receive.denyNonFastForwards option, but GitHub won't let you control this option. So we're left just telling people not to do it and hoping that they listen and don't do it by accident. That seems like a shitty, precarious situation that could easily be fixed. One checkbox on the GitHub repo settings page and this story would never have happened.

[1] http://stackoverflow.com/questions/13016119/how-to-set-the-r...
Should you bank on Twitter? Yes, if your product is free
this is exactly what i do too.

Another great person to follow is Ilya Grigorik ... https://github.com/igrigorik

He spents a lot of time following repos, and literally built the github archive just to keep up with this.
Raising the social cost of working for the NSA means raising the difficulty the NSA faces in attracting talented employees. Already the NSA has to convince mathematicians and computer scientists to give up certain career paths when they begin work for the NSA. That alone makes it difficult for the NSA to attract talent.

So adding a social cost to working for the NSA would make it that much harder. A grad student considering a career with the NSA should be forced to consider the possibility that their adviser and their friends might not be willing to even talk to them as a result. It may not seem like much, but every time a talented researcher chooses to work for the public instead for the NSA, the public wins a small victory.
This has been said before on different threads, but the primary issues plaguing healthcare.gov are not comparing premiums or comparing plans, but instead determining eligibility for subsidies, verifying income through state and federal database, and interoperability with the insurers' databases to actually enroll for a plan.

Health Sherpa seems to provide a quick and easy way to compare premiums by region, but lacks detailed information such as deductibles, and specific provider information. Certainly helpful, but by no means a functional replacement for the requirements of healthcare.gov.

(notice clicking "Apply" sends you to the home page of the insurer, and gives a phone number).
My story learning to code as a useless former VC and current MBA
I've used it well in the past as well.

MongoDB was 5-10x faster than PostgreSQL, Cassandra etc.

If your domain model is structured like a document then MongoDB is a pretty great fit.
Wharton students tell you who your best friends are
GitHub represents a new ideal in customer service. I hope other companies will begin to follow their example.
This is just a short list. Aren't many games already in the "store" (i.e. sold through HB widget for fixed price)?
http://pcgamingwiki.com/wiki/Humble_Store

Or they plan to add them gradually to the new site?

On the UI side - they should add a DRM free search filter. Otherwise it will be annoying to sift through various DRMed stuff which HB adds lately.
Sorry but PostgreSQL's JSON query syntax is insanely complicated compared to MongoDB.

And that is a big deal for a lot of developers.
Difference Engine: The nuke that might have been
IIUC they pulled out clojure's clojurescript projected core structures so you can use it ~pojo ?

Recenlty I saw https://github.com/harukizaemon/hamster , similarly immutable, structure sharing, persistent data structures

It's becoming mainstream ...
Without an account I can only see the first 5 of the ~300 hits. But Yasser Mufti looks like an OPEC employee to me, he's listed as the chairman of the board of governors. Maybe he's technically on Aramco's payroll, but I think that would be nitpicking since OPEC is funded by member companies.

http://www.bloomberg.com/news/2013-09-25/saudi-arabia-opec-g...
This is very true. I think it's also probably true that it gets harder to trust code as you get closer to the coalface, much the same way as when collaboratively working on a document, one may become frustrated by another person's grammar or style - yet a third party reading the document would not be able to tell the difference. This I suspect also applies to chefs, plumbers, architects, and many other professions.
Go's "defer" is not equivalent to RAII. It is function-scoped rather than block-scoped and has semantics based on mutating hidden per-function mutable state at runtime. For example:

func Foo() {
for i := 0; i < 5; i++ {
if Something() {
defer Whatever()
}
}

// ... the compiler can't tell how many
// Whatever()s run here ...
}

Compared to RAII as implemented in for example D with its "scope" statement, "defer" has much more complex semantics, inhibits refactoring since moving things to function bodies or inlining function bodies silently changes semantics, and cannot be optimized as easily, because of the dynamic aspects. IMHO, it has essentially no advantages over RAII and many disadvantages.
In addition, Glacier should be thought of as "offline" storage , like a tape rotation scheme. When thought of that way, the cost for restoration is non-existent.

Its not for "I may need this file next week" (thats what your local NAS / Time Machine is for...Glacier is for "what happens if this place burns down". At that point a week and £120 is not high on the list of your concerns...
I think the idea is that the same bit of code would be running both on the server and/or the client, depending on what you need. So it wouldn't require any more work on the end developer's part.
There is a confusion between isomorphism and monomorphism when it is related to JavaScript as it runs in the web browser runtime compared to the node runtime.

I feel this tension is at the root of the CommonJS vs AMD discussions that have been taking place recently as well as issues related to npm, bower, and browserify.

Monomorphic code, while being very easily shared amongst different runtimes, still needs to aware of the mechanisms, strengths, and weaknesses of those runtimes!

Projects like browserify-cdn and sites built with on top of it like requirebin.org do a lot to bridge the gap but raise some interesting questions about wrappers like UMD.

I feel there is room for a better protocol for sharing code between the different environments.

I'm currently doing some research on the subject and plan on writing a spec and implementing some example interfaces.

BTW, projects like Bower head in the opposite direction and seem painfully unaware of their actual context...

I mean, installing a package manager to then install a package manager should raise some eyebrows, right?
What rubbish. NoSQL is only good for queues and caches ? Who on earth uses a database for this ?

NoSQL works well when you are modelling your data in ways that fit their particular use cases. Cassandra is great with CQRS, Riak is for key/value, MongoDB document.
It freaked once for me, but after I confirmed it was OK, they don't do it anymore. May be GOG should start accepting bitcoins. Feel free to vote:
https://secure.gog.com/wishlist/site/the_ability_to_purchase...

Humble Bundle accepts them already.
Multi-Modal Vehicle Concept [video]
Sometimes I have had to do a git push --force, usually when I want to amend a commit I pushed just a few minutes before and I know that no one else has used it.

However, I always do a --dry-run first on a force push just to verify that it's only going to update the one branch I expect it to.
YouTube is a Completely Functional Site Programmed by Competent People (Video)
Don't forget to vote for Linux support on GOG if you didn't yet: https://secure.gog.com/wishlist/site/add_linux_versions_of_g...
Hazards of Being a Manager
Many large startups who've gone on to raise multiple large rounds have taken money from VCs who've rejected them previously, it's not uncommon as VCs reject companies for a whole host of reasons many of which have nothing to do with how much the VC likes you/your vision/etc.

In practice what really matters is your relationship with the VC and the the partner who's leading the round.

If you feel resentment or that they don't understand your business then politely decline and move on, it'll be in no-ones interest if you take their money while feeling angry at them. If you're feeling ambivalent then consider them like any other VC you're evaluating taking money from.
In response to: " Is it okay to kill cyclists"
I never really understood why publishers are supposed to be brain dead to use DRM, while independent studios are supposed to be smart not to use it.
There's no official support for DNSSEC in Golang, but then, there's very very little support for DNSSEC in the real world. Which is just as well.
I've been subscribing to GithubArchive for awhile now, they send me top new & watched repos right in my inbox daily. I think we should check it out:

http://www.githubarchive.org/
If you're not familiar with server side javascript, looking up node.js is a good place to start.
The server code is still Java, but our template language (https://developers.google.com/closure/templates/) compiles to both JS and Java.
If you were to try now, it seems that things are behaving much more reliably...
How Corporate America fights hackers
You'd think that, but in fact, statistically and scientifically speaking, the opposite is true.

This is the disconnect.

"the idea of rewarding high achievers (carrot) and punishing under-achievers (stick) is a good one."

No, it isn't. This creates a company in which people are constantly afraid of the stick and fighting for the carrot. This generates in-fighting, corporate politics, ladder-climbing, game-playing, and a demotivated base (people not being motivated by either end of the bell curve). Your measurements become focus targets (as with standardized testing in schools) instead of your actual product. You lose cohesion, destroy culture, create a network of jealousy, secrecy, and fear. You lose employee loyalty, cause resentment, and lose productivity and effectiveness. Quality is adversely affected.

You're not going to get it right 100% of the time because you're not going to get it right ever. You're generating a dysfunctional culture, only held in place despite itself.

The answer is to remove it all; enable true pride in work, fair compensation, leadership, continual improvement, education and self-improvement. This works better. Not just in theory, but in practice. When you remove all the unpredictable negative consequences of the carrot-and-stick system, you enable an order of magnitude better company.

Read it again, try to understand it better. There's a disconnect, and you're the perfect example of what's fighting this exponential improvement.
Minor point...

I'd say Christianity goes along with the original poster's idea of everyone getting the same reward - ie grace - nothing you do can merit it - it's a gift.

The parable of the vineyard workers explains it - it doesn't matter how late in the day the workers start working - they all get the same reward.
It's a wavey background masked by the text, that loops scrolling horizontally, and increases in height to show loading progress.
It uses the background-clip:text property that is not very widely supported, though.