skysight-inc/HackerNews huggingface dataset:
The title is misleading, but Warren Buffett is right.

The more money you manage, the harder it is to beat the market as a trader. However, if you're playing with a modest amount of money, you can play the market, since moving small amounts of money around is much easier than say, 20 billion...
This is essentially how I have been writing JavaScript and Node.js code for some time. I actually flatten the code even more, like in these examples[0].

For some people, callbacks take more cognition than other solutions, but for someone who has been using callbacks through and through, this is a natural progression and makes sense. It is more straightforward and you don't have to understand further abstractions like in a compile to JS language or with promises.

[0]: https://gist.github.com/chapel/6255720
Tools used by influential developers and designers
> Doesn't always seem clear to me.

Yes it is because grand-parent stated he wanted to go to school (that's how I read it) and that statement of mine is a follow-up to that train of thought where I pointed there are more than 2 options.
Oh interesting. I was wrong.
I switched to emacs because of org-mode.

I happened to be taking a course that required lots of LaTeX for assignments so it was really nice to use regular text and LaTeX without all the scaffolding code.

I even wired up Babel support for a new language.
>Go and build a programming language your Mom can use. Preferably by talking to her computer.

People who think this is doable with current technology usually don't have much clue in how to build a programming language.
Not only is this a message of starting before you feel ready, but appreciate the hustle as well! Renting a charter plane you can't afford and then go sell the tickets, that's ballsy!
What makes you so sure that FC is not a scam?
"Magic does exist" could fairly be described as linkbaity.
At least some Thinkpads used to let you limit the charge on the battery.

Capping the charge at something like 60% is a great way to preserve the battery if you're not going to need all that battery life.

Storing at 40%-60% elongates the life compared to 100% or 0%.

All of this is 2nd hand, and I have no particular expertise to validate this comment.
On the homepage, that there is a featured article as well as additional information to the right side a.k.a. more stuff to read reminds me a lot of the Mashable craziness.

It's very hard to focus on content, reading left to right, when there is unimportant information that I have to constantly filter out as I go line by line.

And as someone else had said, the individual blog posts pretty much follow the same layout style as medium. I actually think that this, even more minimalistic design, takes away from the aesthetic that, in my opinion, made Svbtle stand out - namely, the colours and the logos.
Speaking for Docker: it's true that we've only released packages for Ubuntu, but we've been working on a Debian package as well. Starting in 0.6 we expect to offer both in parity.

On a practical note, we are forced to maintain these 2 packages separately if only because Ubuntu uses upstart and Debian doesn't.

Re: network effects of Ubuntu dependencies. In our case that was not a factor, since Docker is a static binary built in Go, and all distros are equally hapless in their management of that. In fact, we are divorcing ourselves completely from distro-specific dependency management. As of this week, docker packages are built by us in an environment we control, not the distro build farms (hint: we build docker with docker). Then we wrap it with fpm and call it a day. Separately, we are working with downstream maintainers of each distro to help them package docker in a policy-compliant way. But those are 2 completely separate tracks.
https://ifttt.com/

"Computer, create a rule for my car."

"OK. Which car? Do you mean Red Toyota Purchased 1997?"

"Yes."

"OK."

"Computer, when car is at location House, then boil kettle."

"Do you mean Kettle in Kitchen of 48 My Road?"

"Yes."

"OK. Is that all?"

"No. Computer, this rule is only valid on weekdays."

"OK. So when car Red Toyota Purchased 1997 is at location 48 My Road on Monday, Tuesday, Wednesday, Thursday, Friday, boil Kettle in Kitchen of 48 My Road?"

"Yes, but only if my iPhone was not inside the car."

"Do you mean Jemima's Apple iPhone 4Gs?"

"Yes."

"OK."

...
With the downside that I have absolutely no clue what this code does or how.
The real problem with callbacks is error handling. Using anonymous functions doesn't address this problem. The .then notation has the same problem.

The await solution (or any equivalent) has the benefit to present the call as a synchronous call which is trivial to read and understand. It also has the benefit to support all existing and proven error handling methods. try catch, etc.

This is the best solution to asynchronous calls that I have seen so far.

I'm currently using c++ asio, and it's a nightmare.
That looks really cool. But what happens if the user bumps the printer? The entire stack of paper falls over, and the printer falls to the floor.
No. Not sure they were even the same member of the family.
exacerbate is the correct spelling
Software Engineer-To-Be, That's Me. You too?
What happens when you bump the stack of 20,000 sheets of paper in your printer's tray currently?
Web apps: the future of the internet, or an impossible dream?
Software Engineer-To-Be, That's Me. You, too?
This seems like a good plan to me, but can any crypto pros poke holes in it?
If you truly believe that we're all missing the point, how do you propose it be fixed? How far down the stack do we need to start disassembling parts and rebuilding? And who, if anyone, is doing that now?
Back calls look like array programming gone even crazier. Was live script inspired by APL?
It's a YC company, I know the founders, who are my batchmates, and they are not a scam. The model they've used to pick startups (I do not know the details) is excellent .. out of our batch they picked many of the most successful companies.

I have no financial interest in FC, btw. I have not invested in any FC co's, though I certainly would if I were in a position to.
I have no idea where any of my important paper documents are from the 1990s. All my digital documents, though, are in my "Archives" folder.

This says more about which medium you and I pay most attention to, rather than how well paper archives.
If you remember the (gnu, ossp) pth library or any of the various cooperative multitasking equivalents for C, this is all the people raised on javascript, who started writing callback APIs for C#/ObjC discovering the same idea.

await is equivalent to "yield" or "wait" in most of those systems. The idea is to pause execution and jump back to the cooperative scheduler, which will eventually execute the function call in question. Once that call ends up with a result, the scheduler will then (eventually) resume your function with the result at the point you yielded. In the midst of all that, various other threads of control will be scheduled briefly -- for instance, the ones servicing sockets and whatnot. It's all single threaded and cooperative -- typically with an event system embedded.

Part of the callback "mess" is the result of the short memory of our industry. I was working with these kinds of systems in C code years and years ago. It didn't take long for most people to realize that you wanted to abstract the callbacks to the scheduler so you were writing your code instead fucking with the state machine mechanism used to implement the cooperative framework in question. No references to abstract CSP (or CPS :-)) ideas needed, really -- it's basic practical knowledge that seems to have been ignored over time.
It should be noted that textbook B+ trees, like those described, are nowhere near state of the art performance wise. It's possible to do orders of magnitude better.
Sure. I'll get back to you in a few trillion years.
Once you get used to promises (it took me a couple of days) it's not confusing at all. It takes a bit of effort though. I remember when I first started programming none of the programs made any sense to me; as you said, I had absolutely no clue what the code did and how. But then I kept practicing and soon I understood how things work.
Paperscape - A map of scientific papers from the arXiv
I'm a PL researcher who has also worked a bit on dialogue systems. Getting those rules encoded for even a small domain would be a huge task, primarily because machine learning hasn't helped us in this area yet.

We will get there, but maybe in 5 or 10 years.
>> I was wrong about China, but apparently it is free in India.

Education is NOT free in India, has never been. This is exactly why Wikipedia should not be a citation source. Anyone can edit wrong information and it never gets corrected, perpetuating wrong information. Here are better links to newspaper articles:
* http://www.indianexpress.com/news/from-unemployment-to-innov...
* http://www.thehindu.com/opinion/open-page/who-should-be-ente...
* http://www.thehindu.com/news/national/financial-muscle-buys-...
* An earlier HN thread "Students are the victims and culprits of India’s broken higher education system", https://news.ycombinator.com/item?id=5756142 , http://qz.com/86903/students-are-the-victims-and-culprits-of...
* An Open Letter to India’s Graduating Classes, By MOHIT CHANDRA, http://india.blogs.nytimes.com/2012/05/23/an-open-letter-to-...

In India, some government education institutes are heavily subsidized (think IIT and the state REC's) but the rest of the private colleges you have to BUY seats - so your parents financial clout decides if you get to study at a good university or NOT.

Edit: Ironically, Wikipedia has a page on Capitation fees in India: https://en.wikipedia.org/wiki/Capitation_fee#Capitation_fees...
Doublepluscorrectspeak
It's straightforward to do experiments, control factors affecting experiment, collect data, process is well understood electrochemistry... only thing that might make it "not science" is that it's too well understood so you may claim it's just engineering instead :)
Spiral bound notebooks(as in the video), cardboard boxes, walls and other odd shaped surfaces don't fit into printers.
Exactly. I think OP's argument was that we should devote more resources to these sorts of problems instead of bickering about low-level stuff so much (if they aren't directly helping that goal).

I don't see how that view implies ignorance of current technological limitations.
> I was wrong about China, but apparently it is free in India.

Education has NEVER been free in India. You have to pay a lot of money at the University level. Almost all education is now privatized.

Germany, OTOH, has FREE education upto the PhD level and it does not figure on the Wikipedia page - This is exactly why Wikipedia should not be a citation source. People submit wrong information and it never gets corrected, perpetuating lies.
One of the things that really annoys me about modern JavaScript programmers is that they seem to have forgotten the basics.

Functions are good. Short methods are good. Reusability is good. Properly naming your functions is good. Separation of concerns is good.

Complaining about a couple of extra carriage returns and a few extra characters to properly name the method is insanity.
I came up with the same idea recently, only I wanted to build it around StackOverflow, but this is much, much better :D

A note: You should separate profile and favorites pages, I don't like watching my own face all the time :D It would be more useful if favorites would get more space.
Google on how neural networks improve everything.
I guess it comes down to preferences in readability.

Personally I agree that not putting too much logic in anonymous functions makes it more readable. I write my own code that way, but some might disagree.

I don't care about whether functions are above or below where they are used, as long as it is consistent - but event then it is a minor thing. And since it isn't enforced by the language (e.g. like in Clojure where you have to def the var/function above the reference) it is going to vary across code bases anyway.

I don't really think either solves callbacks, nor that callbacks is a problem to be solved. Most comes down to pros and cons seen through the filter of your personal preferences.

Sure you can use a language that compiles to javascript. Does the pros outweigh the cons for you? Great, use it/too bad move right along.

Not everything is right or wrong, good or bad - in fact most things aren't.
Chicago is definitely on our roadmap!!! Keep your eye out :)
Psh, everyone knows that it only takes the span of a commercial break to crack military-grade double-layered crypto if you use a logic bomb.
why on earth is this a link to Facebook of all things?
I am not sure what to make of that list

* It mostly lists generic software (Google-docs?)
* It's extremely MAC centric
There is a popular TED talk on motivation, he postulates that growth is one contributing component of motivation. This may be his anecdote, but this guy has helped many people get back their motivation.
http://www.ted.com/talks/dan_pink_on_motivation.html
Contact the ccTLD compliance (!!) team at ICANN;
http://www.icann.org/en/resources/compliance/cctld
San Francisco Tells Obnoxious Startup Bro to Screw Off Back to NYC
Bwahahaha. Same as it ever was.
Indeed. The Dead Hand is recommended reading (http://thedeadhandbook.com/)
What happened to TermKit
cool idea, but no video -- don't believe it.
The OP wrote:

>Computing is in a sad state today, but not because of fucking callbacks. It's in a sad state today because we're still thinking about problems on this level at all.

He seems to imply that it's sad today is today and not 20 years from now. So what?

People have dreamed about replacing "programming" with "dialogue systems" since at least the 60s; they are like flying cars, always 10 or 20 years away. We might be closer now, but it's not like we were not dreaming about this since before I was born.

In the meantime, we have code to write, maybe it's worth doing something about this callback thingy problem just in case the singularity is delayed a bit.
Many email services block spammers / unknown senders, especially if you start sending hundreds of mails.
doesn't look like it. I'm beginning to think this is all hype and no real show.
Working lives Vietnam
It's important to note that the EMH doesn't suppose that all actors agree on the price. It just means that the price represents the summed outlook of participants.

Those who think a stock is underpriced will bid it up to get more; those who think it is overpriced will sell out at progressively lowering prices.

Because the movement in prices creates an opportunity to profit for those who have information that is not yet revealed, those people will enter the market and create pressure on the price.

In some mathematical forms, this is assumed to happen instantaneously and universally. Thus: all available information is factored into the price. Essentially, you can't arbitrage because you have instantaneously driven up the price already by arbitraging. (It's weird, yay calculus).

The looser forms basically say that this is what happens in the long run, on the average, even without instantaneous adjustment of prices. And when you compare market time series to pure randomness, they have similar characteristics. So in a sufficiently large group of agents, some will profit and some will lose merely by chance. Then you're back to taking an average and being unable to beat it in the long run, because in a game of chance outcomes converge to the long-run probabilities of the game.
> Almost everyone uses a Mac.
Where? I, actually, don't know anybody who uses mac.
That's my favourite passage from that pamphlet - surprisingly poetic writing for a manifesto - and it describes conditions in the current information economy rather well, even if the 'bourgeois epoch' has proven rather more resilient than he imagined:

The bourgeoisie cannot exist without constantly revolutionising the instruments of production, and thereby the relations of production, and with them the whole relations of society. Conservation of the old modes of production in unaltered form, was, on the contrary, the first condition of existence for all earlier industrial classes. Constant revolutionising of production, uninterrupted disturbance of all social conditions, everlasting uncertainty and agitation distinguish the bourgeois epoch from all earlier ones. All fixed, fast-frozen relations, with their train of ancient and venerable prejudices and opinions, are swept away, all new-formed ones become antiquated before they can ossify. All that is solid melts into air, all that is holy is profaned, and man is at last compelled to face with sober senses his real conditions of life, and his relations with his kind.
That's more of an orthogonal point than a counter point though. Just because we haven't accomplished something yet doesn't mean we shouldn't invest any more effort into it.

I was responding to your insinuation that OP must not be knowledgeable about language implementation to hold the views he/she does. In this context, technological limitations are irrelevant because that was not the point; the point was an opinion about the relative effort/attention these problems receive.

I'm admittedly not really invested in this area myself so I don't really care, but it's disingenuous to try and discredit OP's views like that. At least this response is more of a direct counter-opinion.
Not much. The plastic guides do a good job of keeping the paper in place. Unless you mean the reams of paper outside the printer?
Virus targets the social network in new fraud twist
I wonder what, if anything, a similarly nightmare-inducing game for the 2010s could look like. Are we at a point where our fears aren't as easy to visualize?

Sounds like a good theme for a game-making competition, actually.
Looks fantastic, but I wonder about the tolerance wrt paper alignment. I'm picturing my office where people usually rush up to the printer, grab their printout and bump the printer.
Thanks for this OP. I use these 2 rules in my every day JS because where I work, readability wins every time. The anon function / indentation code format is something I've never really tried to "pick up" when I migrated over to javascript. Its ugly and takes longer for someone outside of my head to figure out what is going on in my code. Verbose function names help the other 4 guys on my team know exactly which function is handling the different scenarios of an async call. Its much more important that the developers are able to work efficiently than it is to save a few characters per function or a few lines per callback.

With the state of JS compilers/minifiers and gzip, I really feel that that particular argument can't even be made in most JS situations.
What I've seen in my friends is that certain men will buy an expensive car on a loan, keep it 3-4 years and then swap it for a family friendly car when they have kids. Often they will buy the car 2nd hand.

The car retains the majority of its value, they enjoy the car, they're not actually spending massive amounts of money like you seem to think they are. It's essentially a hobby item that they enjoy driving.

And it's only a proportion of my friends, some just get other cars that are a lot cheaper to run.
It is the reality that I'm working within.

Most of my work over the past few years has been either servers exposing their functionality via REST or WebApps that render their own GUI and interact with said servers.

I've avoided the browser incompatibilities issues by exclusively using Chrome. Could have done the same with FireFox - but I somehow like WebKit browsers and the CONSOLE.

I'm still learning and finding the optimal architecture is hard. For example, I programmatically construct the browser based GUIs. It's very much like using WxWidgets or any other GUI toolkit once you get the hang of it.
That's an argument for ship captains and airplane pilots to have Mercator projection maps.

It is not an argument for Mercator projection maps to appear as the canonical Earth map in textbooks, on classroom walls, or anywhere else where education is concerned.
What about all the 'dumb money' that's already there, i.e. the existing amateur angels? Oh, they'll be the ones vetting the 'smart money' applicants. Good luck with that!
Hacker sends this through the mail to record a video of the process
When you're up against the US government with all of their cracking hardware, your passphrase won't be simple.
Apple plans developer center downtime on Saturday at 6PM PT
Top 7 Must Have Software For Your Windows 8
The B-tree implementations used in a lot of databases have tweaks, but they are surprisingly similar to the textbook descriptions. In general, B-trees are actually a very useful data structure when:
a) Your data is much larger than main memory (e.g. terabytes/petabytes of data and gigabytes of RAM).
b) You want to support random insert/update/delete, seek, and next/previous key.
c) There has to be a reasonable constraint on storage space (i.e. data density/compaction).
In those cases the log(n) performance of a b-tree is extremely hard to improve on.

Alternate data structures a useful if:
1. The ratio of ram/disk is more favourable, in which case using an improved in-memory data structure can be more efficient.
2. Not all operations have to be supported. In particular eliminating the next/previous key operations allows something like a hashtable to be used.
No, the only way to stop hoarding is to cultivate non-attachment...
Why We Need Nomads
But you do use XML?
Invite-only always feels a bit strange to me, in a community where we celebrate the guy who made it alone against the crowd, it seem to foster self-replication. You might end-up with car parks filled with Tesla cars owned by people who all do kite-surf together on the week-end. You've lost the crazy outsider who will shuffle the industry (or make it harder for him).
That's a faulty assertion. A generators working principle is that it can resume into the closure if the "caller" is looping over the generator.

Let's assume a simple call stack, A -> B -> C. Now C would be a generator, so B has to loop over C instead of just calling C.

But what about A? Well if B is now looping, and if yielding out of a loop is how you cooperatively multitask, then A now has to loop over B. So you have to convert the entire call stack from A -> B -> C to A(for ... in B(for ... in C)).

You can argue that a compiler can make this invisible, however there are some serious drawbacks with that in that:

1) One solution would be to convert any call into a loop. How do you know which ones are actual calls (stuff like Math.pow etc?)
2) You only convert things that have generators in their call stack to loops, but how do you know that?

Both the above scenarios would depend on being able to infer the "generatoricity" of the called symbol. Something which is very, very hard to do for dynamic languages like Javascript.

Co-routines work differently. Co-routines save the entire call stack and restore another one on switching to somewhere different. Hence if you have A -> B -> C and C is some I/O that would have to go to some scheduler, then the A -> B -> C call stack is saved, the co-routine would switch to say, Main -> Scheduler, the scheduler would do its work, and when it's ready, it switches back to A -> B -> C where that co-routine left of.
Hang on a second, does this mean its ok to break the law "by accident" now? Because it sure looks that way to me. It looks like its now ok to go to great pains to make something really sophisticated that will undoubtedly break the law if used as is intended, and then "accidentally" use it as intended.

I hope everyone involved in this around the world realise they will go down in the history as the bad guys.
Little Brother inspired Google to encrypt its users’ traffic