skysight-inc/HackerNews huggingface dataset:
As someone still using Python 2 (due to the very large number of libraries and tools I rely on for Python 2), I tend to look at these kinds of features more with the eye of "why not implement this for the language people are actually using more often, aka Python 2, rather than trying to use it to fight an ideological battle to move people to a language people aren't, aka Python 3?". The mentality just makes me unhappy with the attempts to somehow force everyone to move, rather than suddenly excited to use Python 3.

I thereby ask: is there something about Python 3 that makes this feature extremely easier to implement or extremely easier to integrate? If not, wouldn't it be more interesting to have "more impact" by improving the lives of a larger number of people? Python 3 was maybe an interesting experiment, but given how well Ruby 1.8->1.9 went and how poorly Perl 5->6 has been, it seems like people should be learning some lessons and fighting a more winnable battle.

Maybe the people who want to encourage people to migrate to Python 3 should he spending their time not providing "killer features" but instead narrowing the gap between the two versions, not by back porting features to Python 2.7, but by making it easier to use code written for Python 2 in Python 3. It should not have taken until 3.3 to see the u'' syntax return for compatibility with Python 2. :(

The current strategy of "try to convince an army of people to port a bunch of code from Python 2 to Python 3 while people are at the same time still often writing code for Python 2", which is what we are seeing being asked of people in other posts here over the last few days (there was a post about this for Debian) just seems like a waste of effort leading to tons of lost ground to alternative languages.
really, the MongoDB haters are pathological at this point. 10gen must have really pissed off the HN crowd early on (I missed that cycle) but today, in the real world, mongo is a useful tool for what it does best. It's time to move on from early impressions and angst about their hype fails, and give them a few crumbs of credit for being the defacto leader in a new space, and working through the inevitable rough patches.
Yes this is an interesting thought. Something like Aspartame, at least in a subset of the population, induces headaches. So it's interacting with something related to the brain in some people at least.

Doing some digging there are some case reports, not studies, of people suffering migraines from Sucralose (Splenda was used in the study).[0] The product safety people at McNeil Nutritionals (manufacturers of Splenda) in reply to these cases pointed out, rightfully in my opinion, that a couple of cases in millions of exposures is hardly concerning.[1]

However that's just saying it doesn't cause migraines, or on the off-chance it does nobody has proven it with a proper controlled study. But migraines are not performance on a Stroop task from the study. There could still be some interaction between Sucralose, or perhaps artificial sweeteners more generally, and Stroop task performance.

A more complex study design could nail it down I guess.

[0] http://onlinelibrary.wiley.com/doi/10.1111/j.1526-4610.2006....
[1] http://onlinelibrary.wiley.com/doi/10.1111/j.1526-4610.2007....
We really already have this though, in the form of asyncio. This is basically syntactic sugar over asyncio with the added advantage of context manager support, which while great, isn't earth-shattering.

I'm all for this change, but if people were willing to look at asyncio, they'd see this is largely a syntactic tweak to that.
Which markup format does pandoc use by default for a .txt extension?
> y <- f(x)

> z <- g(y)

> w <- h(z)

So you would basically want "<-" instead of "yield from"? Or is there something additional I'm missing? My main thing against this, is that it's very opposed with general Python principles. Think "||" vs "or", "&&" vs "and", and "test ? value : alternate" vs "value if test else alternate".
I thought Julia was still way behind both R and Python when it comes to plotting and stat packages.
Despite NY Times report, media use of video of police shooting likely fair use
Those who don't see anything unusual or wasteful about an 8KB+ executable whose only action is to exit and return a value are recommended to watch this demo generated in realtime by a 4KB executable:

http://www.youtube.com/watch?v=jB0vBmiTr6o

There's more here: http://www.pouet.net/prodlist.php?type[]=4k

The demoscene is basically the exact opposite of mainstream software culture, and although it's focused on multimedia shows, I think some of their techniques and underlying motivation could be applied more generally...

I wonder if /bin/true and /bin/false in their most simplest forms even meet the minimum "requirement for creativity" to be copyrightable, and if the reason why it has bloated significantly is so that it could be.
Let's be clear: they were both created in the same year and the same month (April 2005). Not trying to be pedantic here.
--bareback?
My friend and I are making a rust themed podcast
What do people want to learn about? Who should we interview?
Cracking Candy Crush
Thats very smooth... MS Research has always been great. And given recent track record, hope to see more of the research being commercialized soon
Me! 20 year Emacs user, switched to Vim after I realized how much I like modal editing. I miss the things I used to have in Emacs, though.

But for a less selfish reason, our team usually does pair programming and we often pair program, each with our own computer connected through a shared tmux session. Because most people on the team prefer Vim, we have standardized on that which is really hard for new people on the team who have no experience with modal editors. Having a compromise where both people can use the same editor without forcing people to one paradigm or the other would be fantastic.

Having said that, I tried out Evil mode a few years ago and it fell pretty widely from the mark for an advanced vi user (not just Vim). It had basic support, but if you did any of the complicated stuff that makes vi efficient, it didn't really work. Some people in this thread are saying that this has improved substantially so I'm really looking forward to trying it.
> very much in the vein of the way Amazon treats AWS: as a set of infrastructure services they themselves consume, but also happen to expose to the public.

Reference? I've heard (unsubstantiated but believable) rumors that the servers and system that run the amazon website are rather different from the servers and system they sell the rest of us.
Good point, maybe don't use this for steering satellites or weapon systems.
Yes (from the little I know) a major aspect in our hearing is that nature doesn't produce pure sinusoids. Mechanical vibration materials is bound to have a series of resonances multiples of some basic frequency. So if you have a single person, or single object, emitting sound, you expect to see this nice harmonic lineup. When the fundamental frequencies don't have a pair (a,b) s.t. a * f1=b * f2, their harmonic multiples don't match and you can tell something is odd.

For f2=125% f1, for example, every 4th harmonic from f2 lines up perfectly; for f2=150% f1, every 2nd harmonic lines up; for f2= 200% f1, every harmonic actually lines up. I guess it's like looking at combs with different spacings and finding ones that superpose neatly.
HN author should probably have linked this blog post instead. https://nukep.github.io/progblog/2015/04/15/developing-llama... it's a good read.
Society6 seems to be way ahead in terms of the number of product lines.
http://society6.com
Ludum Dare 32
convinced my SO to use plain text editor for academic writings with these points:

no crashes

can edit anywhere. even on a dumb phone.

revision control (i provided two scripts to the right click context menu to pull/push)

and the killer one: output to several standards. iso, abnt, eu-whatever... even automatic html formatting for the blog if a smaller article is not accepted anywhere.

though that happened before markdown et al became popular. so latex it is.
Hmm, it seems the quote I'm thinking of must have been in an extended edition of Summerhill that I've since given away. I remember Neill saying in an aside that he never had luck forming children's characters after they were about seven, and he compared it to the Jesuit assertion "give me the boy until he is seven and I will give you the man."

My daughter is nearing two so we're trying to make plans for her, but as others have said in this thread it's hard to know without knowing her personality. She might do great at a Summerhill-type school or she might need more structure.
UniPress "Evil Software Hoarder [TM]" Emacs had a vi emulation mode such that when you typed ":q", it flipped you over into an Emacs shell window with key bindings to behave just like you'd expect had you actually exited your text editor. Of course the shell mode was hacked so "vi foo.c" would flip you back into a vi-mode buffer on foo.c. Poor innocent vi users didn't even realize they hadn't left the editor! It was kind of like being in the Ematrix.
Huh, I just read this theory yesterday in Nation by Terry Pratchett. I'm going back and reading the few books of his I missed.
Sometimes I think of the work from home debate as a variation on the closed door issue... forgot who said it: the person with the door closed gets more work done in the short term, but in the long term seems to work on slightly the wrong thing (because of reduced communication).

Working from home is very similar to working with the door closed.
My understanding is that this is due to heating food after early humans learned to control fire. Cooked food is more nutritious, and easier to eat, and can last longer without spoiling. This leads to the ability to allocate resources in the body more effectively (to the larger brains, versus muscles for hunting) and removes the need for extremely powerful jaws.
None of the comments here really capture the importance of this book in my mind. Hadley-headed projects have dominated the data-science space for years - defining how open source and commercial platforms are expressing data processing + visualization.

This book gives you the tools to compose your own data tools using the building blocks Hadley uses. That is a big deal. Everybody should buy 5 copies.
$7500 is considered a full time salary? Obviously, I have the wrong job because this is a lot more than what I make.
How to fail a technical interview
might be nice with a VR headset to control something that is a more passive experience
Do you think it'll ever be developed?
>Why do you think the editing-OP decided to omit this aspect?

I didn't.
LOL. Maybe it was a can of coke???

But reports from inside the company suggested
that a spilled can of Coke in one of the server
rooms had been responsible for knocking out
systems across two continents.

http://www.dailymail.co.uk/news/article-3043927/Did-spilt-CO...
Just curious, was this a CPU bound program?
Wow, that is a sad, sad Google Maps satellite view. Also, strangely, Google has about 1500 feet of street view data only on the central stretch of road in the town.
I'd be happy if C and C++ had 2,3,and 4 element vectors as built in types, along with cross and dot product operations. There are intrinsics, and GCC has it's own intrinsics that can be used across architectures. But the languages need to have these. They are so fundamental to so many things.

There are many more things to wish for, but I'm starting with one of the simplest.
Check it out: https://github.com/seletskiy/dotfiles/blob/master/.zsh/alias...

Far more easier to press CTRL-T than type `fuck` every time.
Super interesting. I LOLed. But I will not install it.
> So what's this confuzzled stuff anyway? Confuzzlement is a glorious state of being that involves a lot of confusion, frustration, and maybe a little bit of raving lunacy. In a good way, of course. Confuzzled people celebrate their ignorance openly and strive to reach a higher level of ignorance by learning from other confuzzled people. A confuzzled person is proud to be ignorant, but the unwashed masses are often incapable of seeing the subtle difference between being brilliantly clever, pretending to be stupid because you can't be bothered to think, and being genuinely stupid. They key to being confuzzled is having fun with it.

> Those that become enlightened on the path of confuzzlement reach the orgasmic state of eternally confuzzled where people marvel at your ability to cause a stunned silence like with the mere utterance of a few simple words. The eternally confuzzled are gods in their own minds and feel compelled to share their knowledge with the lesser beings around them. This can be a good thing because confuzzled people aren't really stupid, they just seem that way to the layman.

> It's easy to become confuzzled. Just start learning and don't worry about not knowing something. Everybody doesn't know something. Too many people let it get to them and they get frustrated. Stress gives you health problems and people who get flustered easily tend not to make it as programmers. You don't want to be one of those people. You want to be eternally confuzzled!

https://web.archive.org/web/20131228101200/http://www.eterna...
Well, the world outside of Google discovered container, that's a more appropriate description. Google is a living endorsement to the paradigm. But Docker didnt make them happen, docker merely discovered it.
Yeah, it's just syntactic sugar. "<-" is chosen to match roughly-equivalent constructs in other languages, like Erlang, Go, or CSP. The reasoning behind it is that 'yield' is common enough to warrant special syntactic sugar - there are other precedents, like allowing dict['value'] instead of getitem(dict, value) or the @ matrix multiplication operator that was just added in Python 3.5.
grandalf's comment on procrastination:

https://news.ycombinator.com/item?id=9285481
The Road Not Taken...

http://pastebin.com/aJQfubrK
Not all of Uber's drivers are "full time." UberX and its similar offerings are open to anyone with a car who wants to give a ride.

The incredible value of Uber and similar is not that they are a better way to hail a traditional cab. That is not disruptive, and doesn't create huge value. At most a better way to hail traditional taxis smooths the process a little bit.

The huge value that Uber and similar create is in allowing a very low friction means to utilize the millions of private cars that otherwise carry few people and sit idle >90% of the time. This provides value to drivers (defray an expensive and largely fixed cost) and to riders (higher availability than traditional taxis). This value-add is primarily due to the low friction to providing marginal rides.

If every driver is an employee, then you destroy the marginal ride benefit and turn Uber and its ilk into just another traditional taxi service, just with a better hailing app.
Either way you have root level privileges, it's game over...
I think you're missing the point of the article.
Halide is quite domain specific though, it won't help you to create a new database system for instance, or help you on your hadoop algorithm.
Online freelancing job opportunities you've been waiting for
Bear Trap Correction Phase in China
I don't understand why the genre matters. Most of the problems with shuffle play go away if you prune the songs you don't like out of your collection. True randomness is fine if you follow a few basic principles:

1. Don't repeat songs too soon. A record of the last 100 or so songs should be enough and doesn't use much memory. If shuffling a short playlist or album, don't repeat until they've all been played.

2. Don't attempt to group similar sounding songs together. I've never seen an algorithm succeed at this and it serves no aesthetic purpose. If I want to maintain a mood, I'll create a playlist, select songs manually, or just hit skip.

3. Don't ignore new material. If I add, rename, or reorganize music I don't want to do anything special for it to be included in the shuffle.

4. Don't roll your own random algorithm. Ever since shuffle play was introduced as a feature on CD players, there have been algorithms that will play the same N out of X songs in a collection, clearly using some kind of modulo-based function instead of a good quality PRNG. If your algorithm can permanently exclude songs, it's broken.

None of this helps with songs that should remain part of a suite or have a segue that is abruptly clipped, but some of those shouldn't be separate tracks to begin with.
I was just thinking today that I have very mixed feelings about Hadley, despite not knowing him -- on the positive side, his works (in my mind) transform R from a horrific language to a tolerable one, which is an astounding feat. On the negative side, if he hadn't made such momentous contributions, maybe people would have abandoned the bloody thing by now and we'd be using Julia instead.
> Assuming f and g are not evaluated for their side-effects...

And that is the whole point. In Haskell we can know that f and g have no side effects. If they had side effects you would not be able to compose them with the dot operator.

I don't quite understand your example but I assure you that there are elegant ways to accomplish that in Haskell. There was recently a presentation [1] at the NY Haskell meetup that talked about a new Haskell sound synthesis library called vivid.

Making functions that perform side effects is also easy. Here's a simple example:

intToFile :: Int -> IO ()
intToFile anInt = do
writeFile "myfile.txt" (show anInt)

The idea that you have to be multiparadigm to function in real world settings is a fallacy. Haskell is simply more expressive, which equips it to solve just about any problem with more clean and concise code than you're likely to get in other languages. Even if the code size stayed the same the extra safety you get from purity and strong types would be worth it alone.

[1] https://www.youtube.com/watch?v=xo3zUvPsizo
It actually comes from PAM - man pam_faildelay
Wow. that looks really great. I'll check it out this weekend.

> Thanks!

no, thank you!
The "async with" is syntactically pretty similar to crosstown_traffic from hendrix (based on Twisted):

http://hendrix.readthedocs.org/en/latest/crosstown_traffic/
One of the big problems here is that the C calling convention, which a lot of other languages use as well, requires a lot of that brain damage. Calls are supposed to put just the first argument in the A register, and everything else on the stack, save any potential register that an operation the function may use, and generally be painfully slow.

One of the things optimization does is figure out what rules it can break in order to make the program go faster -- when it can put more arguments in registers, because only the code being compiled will see that function, etc. So, in order to make compilers smarter and more intuitive, we have to agree to break binary compatibility, which is something people are rather gun shy about. But, I think it's time to have that conversation.
World's first sub 100ns 10G Ethernet switch (L1.5 @ 97ns)
If you wanted their side effects, they would have to be in a context that tabulates their side effects - i.e., a monad. Operations in a monadic context (I/O, mutating state, etc.) are generally not commutable - or if they are, the circumstances under which they are can be expressed in the definition of the monad. On the other hand, part of the point of Haskell is that any side effects must be made explicit, so if all you've got is a function, you can be guaranteed that there are no side effects.
The only thing I like about word is it's actually quite a good table composition tool. Just so long as you ignore the defaults that is.
This. I still have an svn repository with a bunch of my college history papers in it. I want to think I used line-wrapping in my editor, so each paragraph would end up being a single line. Never had much trouble diffing to check what sentences/phrases I had added between edits.

Probably today I'd want to use Markdown, since I ended up doing something similar anyway to put in my footnotes as I was going. The worst part was always the hour or two of futzing around in Word to format everything for PDF export and printing, since it never came out quite the way it looked on the screen in Word 2003.
If you can identify and apply these decisions, why can't the compiler?

Everything about this seems to be saying, "We're stagnant with our current compiler/optimization paradigm...screw it."
With ES6:

r.table('users').filter(row => row('age').gt(30))
Sure. So ignore the activists, outside of publishing stuff to make your point. My point is it'll all go adversarial and that'll be more heat than light. I am still waiting on the book 'AGW for Dummies' that people who want to make the point can use as a reference. There are a handful of places on the Web that are pretty good, but it's not enough.

I don't like the appeal to consensus. Give people the tools and let them make up their own minds.

Smoking is a terrible thing to use as an example. "Whoemever" is aiming at the lobbyists and hitting people who have no dog in the fight and just can't, or won't, quit smoking. The companies were not alone in this; they had millions of customers. Still do.

There was a component of the thing that was about truth. but that passed a long time ago. Now it's just about winning or losing. Here's hoping I'm wrong and AGW doesn't go the same way.

Aren't things divided enough yet? "When elephants fight, it is the grass gets trampled".
You can also specify a specific argument number from the previous command with colon notation e.g.
sudo dpkg -l !:2
When I was there (2008, intern), they were in the process of moving server code from Bigs into separate services (BAS's, if I recall).
I often boggle at people who claim that compilers are magic and outperform humans-- perhaps thats true for unimportant code that you'd pay no attention to, or with developers who aren't familiar with the underlying micro-architecture at all.

It's pretty usual for me to see a factor of 2 performance for the same algorithm implemented in the same manner when moving from SIMD intrensics (which almost directly map the underlying platform) to hand coded ASM.

Even non-SIMD code can result in some pretty stark changes.

A non-SIMD example from a crypto library I work on which isn't (yet) very well optimized for ARM, benchmarked on my novena (with GCC 4.9.1 -O3):

ecdsa_verify: min 1927us / avg 1928us / max 1929us

And a hand conversion of two hot inner functions (which are straight line multiple and add lattices, no control flow) into arm assembly:

ecdsa_verify: min 809us / avg 810us / max 811us

Again, same algorithm.

(The parallel change for x86_64 is still significant, but somewhat less extreme; in that case converting the same functions is only a 15% speedup overall, partially because the 64bit algorithm is different).

When thats a difference which results in 2x the amount of hardware (or 15% for that matter) for a big deployment; it can justify a LOT of optimization time.

(Or in my case, the performance of this code will have a material effect on the achievable scale and decentralization of the Bitcoin network.)

From a straight development time vs performance perspective I'd use even more hand written code; ... but there is a maintenance/auditing/eview/verification overhead too. And often the same code that you cannot tolerate being slow you also cannot tolerate being wrong.
Glyph is a smart guy and has been doing async code for a very long time (at least in computing terms). It would be wise to consider his arguments.

I've done a project making heavy use of Python 3's asyncio feature. It is much nicer than doing the same job with threads or call-backs, in my experience. I'd welcome nicer syntax but the current functionality seems to work well.

I can't understand why someone would design a language in 2009 (Node.js) that uses callbacks. For simple programs it works but it doesn't take long to end up with an unmaintainable mess (in my experience).