Science in the age of selfies - <AUTHOR> http://www.pnas.org/content/113/34/9384.long <comment><USER2> The premise that scientific progress has been slower in the past 50 years than in the 50 before that, and incremental in a way that it was not in the past, seems untenable to me and consistent with the authors being nostalgic for an earlier time that perhaps does not exist. I'm pretty sure someone in 1965 would be impressed to hear that (1) we can engineer viruses that allow in vivo neurons to be controlled by light; (2) we can build robots that use reinforcement learning and ML techniques to drive around a city; or (3) we discovered that humans interbred with Neanderthal, by means of sequencing 40k-year-old bones. To me these projects seem as impressive as any of the past. They all benefited from massive collaborations and would have been impossible to do alone, even by a world-class genius with a plenitude of coffee, time, and tenure.

I also object to a few more minor points. Today we have _many_ of yesteryear's Bell Labs and new ones spring up every year. I think we might be in the most active time period ever for independent and industrial research labs — consider for example OpenAI, the Allen Institute, RAND corporation, Charles River laboratories, Woods Hole Oceanographic Institution, Facebook, 2AI labs, Draper Laboratory, YC Research, IBM Watson Group, Communications Design Group, Xerox PARC, fivethirtyeight, New York Times R&D lab, Microsoft Research* , Google* , Bose Corporation, and SRI, not to mention the hundreds of biotech startups and tech companies that do applied reseach (*s because they are acknowledged in the article). Interestingly, I think Nokia Bell Labs might itself qualify as a modern Bell Labs — it still exists, and in 2014 a scientist was awarded the Nobel Prize for work done there in the 1980s, which is after the authors' cutoff.

Furthermore, I'd be interested in seeing evidence that discoveries of the past can be at least in part attributed to a lack of communication between the scientist and others, and that today's levels of communication are greater and that it has a negative impact. I have evidence that at least one world-class scientist of the past, Francis Galton, spent a ton of time communicating with others and used what he learned from that communication as a core part of his most important works (see, in particular, his autobiography, which discusses his communication in detail). Similarly, at least some classic big discoveries of the past, such as Watson & Crick's DNA work, was possible only because there was more than one person involved — in fact, more than two.

<comment><USER3> It just depends on the field really. If aviation was your thing you would be amazed at the progress from biplanes to space travel in 1915-1965. But if you jumped forwards from 1965 to 2015 you might wonder what progress had been made, or even if we had gone backwards. Where's the lunar colony? In 1965 they were confident that fusion power was 30 years in the future. Right now, we think the same thing!

<comment><USER4> All fields seems to follow something like an S curve.

It starts off slowly as the foundation is laid (aerodynamic understanding, electric generator, etc etc) then then goes near vertical for a number of decades as the possibilities that said foundation unlocked gets plucked.

And then it flattens out again as it starts running into physical limitations etc.

Never mind that the last century or so saw two massive, highly technological, wars. Wars, to be a bit cynical, is the one thing that seems to get a free pass when it comes to the politics of money.

<comment><USER3> And nothing focuses the mind like an existential threat...

<comment><USER5> Oh, we have those.

<comment><USER4> Just not ones you can set an army on...

<comment><USER5> Actually, several of them, rather. Though in a Manhattan Project sense (or Apollo Project if you prefer), rather than a WWII sense.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> Great piece. It's a great example of the dark sides of results-orientation, accountability, transparency, and the fear of punishment from spending "Other People's Money." These things are good, but when they take over the entire process, we've got problems; things need to swing back and settle into a new equilibrium that's more tolerant.

These are exactly the kind of things that governments and universities with large endowments were good at funding. Right now, we're dependent on large corporations like Alphabet subsidizing moonshots to do this kind of basic research (and as some recent articles indicate, investors are already getting antsy about these.)

Short-termism discourages deep thinking and deep working. VCs already understand that one winner subsidizes all the losers; so too is it with basic / speculative research. Until we're will to culturally accept, openly and without reservation, that there will be waste and that fact is OK, we're not going to get anywhere.

</comment><comment><USER7> "This is not to deny that our time traveler would find the Internet, new medical imaging devices, advances in molecular biology and gene editing, the verification of gravity waves, and other inventions and discoveries remarkable, nor to deny that these developments often required leaps of imagination, deep mathematical analyses, and hard-earned technical know-how. Nevertheless..."

You have to be enormously jaded to list off a bunch of huge advances and then basically say...meh. How doesn't this line invalidate everything that follows it?

<comment><USER8> I disagree with the author but this position is consistent with his thesis: that _basic science_ hasn't advanced as dramatically in the past half century as it did in the preceding half century, even if its exploitation has.

The reason I disagree with the author is that there's an ebb and flow, and the advances of the period 1915-1965 built on a lot of other interesting work done before 1915 (the period from Maxwell to the end of WWI were amazing too; Einstein's three astonishing papers dated from 1905 and of course themselves built upon prior work).

I think we're just in a tough period where we've reached the limits of our current tools (both theoretical/mathematical and experimental) -- essentially the rowboats of physics and biology are wallowing while people understand the implications and try to catch up.

<comment><USER7> Re: "basic science", what about "advances in molecular biology and gene editing"? I don't know exactly what the authors have in mind, but CRISPR-Cas, recombinant DNA, RNA interference, identity of the hox genes, DNA sequencing...all of these were huge advances in basic science in the last 50 years (some of them are also now being used practically).

I guess it's tough to really put myself in the shoes of someone living 75 years ago, but from where I'm sitting (I'm a biologist) the basic science is moving so unbelievably fast it's exhilarating.

</comment></comment></comment><comment><USER9> The main reason imho is that academia is overcrowded. When a field becomes crowded, popularity starts weighing more than inventiveness, perseverence, creativity and risk-taking. It may sound counterintuitive, but maybe they should _reduce_ public spending for research.

<comment><USER10> I think this is a very good point. Population density seems to play a crucial role in the dynamics of group behavior, not just in phenomenon of the article, but in many other aspects of society as well.

</comment></comment><comment><USER11> 1\. Hand someone from 1965 an Iphone. 2\. Let her be discharged from the hospital the next day, after robotic surgery for stage 1 ovarian cancer. (A lot of tissue was left in the hospital.) 3\. His slower (535mph vs 600 mph) cross country round trip only cost him $60 in 1965 dollars. 4\. Oh, we've detected 2 gravitational wave events. 5\. Oh, we've detected an elementary particle with the mass of a Barium atom. 6\. We've detected superconductivity at temperatures higher than dry ice. 7\. Lasers are ubiquitous and some are more than 50% efficient, energy in to laser energy out. The developed world runs on 1.5 um laser light. 8\. Two groups figured out how to control-x control-v DNA.

But yes, the share of innovation due to professors has gone down, as complex work is now done by millions, and driven by consumers, not philosophical questions.

</comment><comment><USER12> The article mentions how many discoveries come from individuals. I think it's worth considering that human knowledge and technology may be so advanced that a single individual, however great their creativity and intelligence, simply can't make a large contribution like they used to be able to.

</comment><comment><USER13> In principle I like the article, because it points out the problems with doing research today. But I don't like that the proposed solution is given so quickly, without more discussion about the ups and downs of it. Basically the article falls into the same trap that it describes.

</comment><comment><AUTHOR> Lots pf people have moaned about this problem, but this is a clean description of the situation, the forces that might be creating it, and a clear, simple possible solution.

No doubt the proposed solution has problems of its own, but it is certainly an interesting idea.

<comment><USER9> Wrt basic science, that would imply that two people can reason and understand deeper than one person, which afaik is not true.

</comment></comment><comment><USER14> _In academia, the two most important sources of feedback scientists receive about their performance are the written evaluations following the submission of papers for publication and proposals for research funding. Unfortunately, in both cases, the peer review process rarely supports pursuing paths that sharply diverge from the mainstream direction, or even from researchers' own previously published work._

Hmmm. All referee reports I receive or write usually revolve around novelty of the idea. Incremental work gets published too, but not if it's only a small delta w.r.t. previous work.

</comment><comment><USER15> The article fails to mention patents, which have come to cover more and more.

<comment><USER16> That doesn't really affect university research that much. It's a much bigger deal in private companies, obviously.

</comment></comment><comment><USER17> As someone who has been in grad school way too long this article provides a succinct description of the reason I hesitate to consider an academic career.

However, I'm not sure the suggested solution at the end of the article is viable. Many successful researchers have learned that funding and reputation are based on creating and managing a brand, with scientific substance being a secondary consideration. I feel like it will be difficult to prevent that from factoring into hiring decisions regardless of the metrics used.</comment>


Google Acquires Meebo - <AUTHOR> http://www.theverge.com/2012/6/4/3063548/google-to-acquire-meebo

<comment><USER2> I really hope that when Google finally merges chat functionality between its various platforms (gtalk, g+, and so on) that they stick with XMPP and keep the jabber compatibility going.</comment>


Why node.js disappoints me - <AUTHOR> http://eflorenzano.com/blog/post/why-node-disappoints-me/

<comment><USER2> title should read something like "why the open source libraries written for node.js disappoint me"

fyi, check out a new realtime framework for node: <http://github.com/LearnBoost/nodestream></comment>


Vote Now: Who Should Be Time's Person of the Year? Edward Snowden - <AUTHOR> http://poy.time.com/2013/11/25/vote-now-who-should-be-times-person-of-the-year/slide/edward-snowden/ <comment><USER2> Poll 2010:

[http://content.time.com/time/specials/packages/article/0,288...](http://content.time.com/time/specials/packages/article/0,28804,2028734_2029036_2029037,00.html)

And then it became:

[http://content.time.com/time/person-of-the- year/2010/](http://content.time.com/time/person-of-the-year/2010/)

So probably this year it will be Miley Cyrus...

<comment><USER3> Turkish Prime Minister Recep Tayyip Erdoğan got a lot of positive votes. I imagine he doesn't have same support after Gezi.

<comment><USER4> How does Erdogan deserve to be the times person of the year. With everything that is happening in Turkey and all the countries that it defies and steps over. He shouldn't event be on the list !

<comment><USER3> I guess they're trying to be objective, "Boston Bombers" Dzhokhar and Tamerlan Tsarnaev are on the list.

<comment><USER5> Person (previously "Man") of the year has never been a moral judgment. Hitler was "man of the year" in 1936. It's a question of who had the most impact -- for good or ill.

<comment><USER6> > Person (previously "Man") of the year has never been a moral judgment. > Hitler was "man of the year" in 1936.

Well, originally. But now? No, absolutely not. See recent persons of the year (of the past few decades): [http://en.wikipedia.org/wiki/Time_Person_of_the_Year#Persons...](http://en.wikipedia.org/wiki/Time_Person_of_the_Year#Persons_of_the_Year)

There's a connotation of greatness in the phrase 'person of the year', that's there whether you like it or not, and Time magazine is certainly not going to get itself in rough waters by nominating a controversial figure and then substantiating a pick by the reason you cite -- that it's a person who had the most impact. If that really were true, Guiliani wouldn't have been picked as the POY, Osama would have, Zuck wouldn't have been picked, Assange would have.

But all of this aside, what I want to say most is that Time magazine is just a _terrible_ tabloid at this point that's only been getting more terrible with each passing year. It's designed to appeal to the LCD audience, it's filled with FUD full up their necks. See this recent cover for example: [http://img.timeinc.net/time/daily/2013/1310/360_cover_1111.j...](http://img.timeinc.net/time/daily/2013/1310/360_cover_1111.jpg)

I really hope we all start ignoring Time soon.

</comment></comment></comment></comment></comment></comment><comment><USER7> I'm wondering why some people are on the list, like Miley Cyrus or the guy behind Netflix. If those are, why not others? I'd personally vote for the head of Naughty Dog and The Last of Us over Netflix.

PS: thinking about it, I'd vote for Satoshi. We should do a HN POY.

PS2 : done! [https://news.ycombinator.com/item?id=6800515](https://news.ycombinator.com/item?id=6800515)

<comment><USER8> "Person of the Year" is really "Newsmaker of the Year." It's not an endorsement, just a recognition that they made the most news. Hitler was TIME's "Man of the Year" in 1938.

<comment><USER9> > Hitler was TIME's "Man of the Year" in 1938.

\- after the Munich Agreement wherein Hitler agreed peace with Chamberlain. Ok he reneged, but that's not the point.

<comment><USER8> > Ok he reneged, but that's not the point.

The article isn't celebrating peace, it's very negative about Hitler. The cover for that issue shows people being tortured.

Edit: you can read it here.

[http://content.time.com/time/magazine/article/0,9171,760539,...](http://content.time.com/time/magazine/article/0,9171,760539,00.html)

<comment><USER10> Yeah, old times when the press had balls. Good luck hoping Time will pick Snowden these days.

</comment></comment></comment></comment></comment><comment><USER11> This is one of the more disheartening polls I've seen. It speaks to a new, disturbing dynamic in our social order where people do not defend their beliefs with any sort of force or passion.

I had no clue so many people shared in my belief that Snowden has done something great. I figured the media had corrupted most of the people into thinking he'd done something deplorable, because no one has been taking to the streets or to the polls or to the anything to demand changes based on his revelations.

Past generations would have, but that's not the case today. We think he's great. We just don't care to actually support him.

Historically, I feel like there was a notion that someone was "too popular to execute." But, even though the vast majority appear to support Snowden so much that they declare him POY, I don't think we'd do a thing if the US raided his home in Russia and put a bullet in him. We'd be mad, and we'd write blog posts about it, and maybe some people would DDoS attack a website or send a bunch of pizzas to John Kerry, but there would be no political turnover. There would be no justice on Snowden's behalf. At best, it would be like Guantanamo, where some new POTUS candidate promises change so we elect him, then does absolutely nothing. And we'd happily just not care.

<comment><USER12> If you rely on Internet polls to deduce what the sentiment of the country is then Snowden is an American hero, Ron Paul should be president, and there would be no more software patents.

That is to say that Internet polls grossly over represent certain minority beliefs.

<comment><USER13> Actual polls show a slight majority in favor of Snowden, despite the barrage of whining and accusations from politicians and cable news.

</comment></comment></comment><comment><USER14> Ugh, do people still waste their time with TIME magazine and their "storied" polls? Sorry, but it is the equivalent of a tabloid because for the last 10 years the quality of articles have been continuously dropping. To see it linked here on HN is unfortunate. Lets spend our time on more interesting topics.

<comment><USER15> The masses read the tabloids, if they are not on your side then you're the minority.

Which leaves you with the only other options put up with the status quo or leave.

Until we get our seasteading going the tabloids are very important.

<comment><USER16> Correction: The mass of baby boomers who still have subscription ;)

Although in TIME's defense, their POY is still better than the Nobel _Peace_ Prize.

</comment></comment></comment><comment><USER17> Poll results: [http://poy.time.com/2013/11/25/vote-now-who-should-be- times-...](http://poy.time.com/2013/11/25/vote-now-who-should-be-times-person- of-the-year/slide/poll-results/)

<comment><USER18> Strange looking list. On my browser Rand Paul's name is truncated to "RAND PAU.." (ironically all such truncated names are cut off at the last letter, making them all _longer_ ). Many longer names are not truncated, though: "RECEP TAYYIP ERDOĞAN", "DZHOKHAR AND TAMERLAN TSARNAEV". Several names end with full-stops, too: "MALALA YOUSAFZA." is one.

I wonder if it is a secret message.

</comment></comment><comment><USER19> Poll requires Facebook

0/10 would not vote again

<comment><USER18> Probably because of /b/'s vote manipulation in previous years. Another reason we "can't have nice things" on the internet -- systems that rely on implicit codes of civility still seem to break down when people can remain anonymous.

<comment><USER20> /b/'s vote manipulation lead to the selection of moot as most influential person, which is clearly correct, as moot's users influenced the voting process to ensure it.

<comment><USER21> except the award isn't "who is the most influential person on the internet", it's supposed to be "the most influential person of the year on the planet".

It's like when you cite raw polling results from the Daily Kos, and say its representative of American opinion. There's a lot of bias that needs to be taken into account.

</comment></comment></comment></comment><comment><USER22> "Authorize Poptip to use your account?

"This application will be able to: * Read Tweets from your timeline. * See who you follow, and follow new people. * Update your profile. * Post Tweets for you."

The hell.

<comment><USER23> I stopped trying to vote after enabling the 20th third-party script on that page and the poll still didn't work.

</comment></comment><comment><USER9> Are these polls typically good indicators of TIME's official choice? Or is this going to be a way of making Snowden "the people's POY" without TIME officially making it so?

</comment><comment><USER24> Can't vote as I have to login with Twitter or Facebook to vote.

Why?

<comment><USER25> It throws that up after you vote, presumably to make you broadcast this very important poll to the universe of rapt followers we all have. I didn't get the impression you actually have to do that to vote, though, since it pops up afterward. It at least gave me the impression that I voted even though I dismissed it.

<comment><USER26> The popup says "Please log in to ensure your vote is counted."

The Twitter auth also includes the ability to post tweets for you, although the popup says "We won't post anything without your permission." Didn't I just give them permission if I authorize them to use my account? No thanks.

<comment><USER27> Twitter > Settings > Apps > Revoke Access

You can just do that right after you vote.

<comment><USER26> Yeah, fuck that. Voting in a meaningless online poll isn't important enough for me to grant unlimited access to anyone, for however short a time.

</comment></comment></comment></comment></comment><comment><USER3> Government: Snowden is a terrorist.

People: Snowden is a hero.

What a great way to bring this difference of opinion to the fore.

<comment><USER28> Person of the year is the person considered to have had the most significant influence on the world, but not necessarily for the better. It's an acknowledgment of their significance, not an endorsement of their actions. Previous winners include Hitler, Stalin and Ayatullah Khomeini.

No matter where someone falls on the Snoweden-is-a-terrorist/Snowden-is-a-hero scale, they can all agree that his actions greatly influenced the current poltical narrative, and stands a good chance of changing the world (for better or worse depending on which side of the debate you stand on) as we move forward.

<comment><USER29> > Person of the year is the person considered to have had the most significant > influence on the world, but not necessarily for the better. It's an > acknowledgment of their significance, not an endorsement of their actions. > Previous winners include Hitler, Stalin and Ayatullah Khomeini.

IIRC those were all Man of the Year. TIME's choices in more recent years have been far more wimpy (e.g. Osama Bin Laden was snubbed in 2001); while their stated aim is to pick the most significant (for good or ill) person, I no longer have any faith that they will do so.

</comment></comment></comment><comment><USER30> Putin is a good one but I feel like he wasn't a top newsmaker this year, and further that he will most likely be a newsmaker next year (look at current happenings in Ukraine, continued things like that, and then the mother of all craziness that's going to be Sochi Olympics)

Snowden seems like the best bet for sheer impact/newsmaker. Tho I'm not sure how 'international' TIME is these days, and perhaps Snowden is only really know in the West.

</comment><comment><USER31> I'd nominate Bill Gates, he's done more in the past year to support and make actual change and improve the world than anyone on the list. Then again, not exactly newsworthy.

</comment><comment><USER3> 2012: Anonymous got peoples vote, but Obama was chosen.

</comment><comment><USER32> [http://i.imgur.com/jv9t4X0.png](http://i.imgur.com/jv9t4X0.png)

I'd say those numbers sound about right...

</comment><comment><USER33> I may not be correct, but Edward said specifically at the beginning of all of this: Please don't make this about me! Correct?

<comment><USER34> Didn't he also say somewhere that we'll be reading about him in history books?

</comment></comment><comment><USER35> I don't think Edward Snowden should be person of the year. Not because I don't think he did something important because he did. I truly think what he did was the right thing. But he needs to stand trial in the US so the we the people can see how extreme our government has become.

He needs to be like batman, sacrifice his mind, body and freedom for a cause that people will remember him for.

But he's in Russia and he's never coming back to the US so this will be a on going thing for years even decades where no one but few people will remember him and our blight.

<comment><USER36> Why do you think that excludes him from being the person of the year? I don't think those two things are mutually exclusive.

</comment></comment><comment><USER37> I don't see how this is even a question capable of admitting debate (although maybe Poitras and Greenwald could get in.)

</comment><comment><USER38> As much as I appreciate Edward Snowden and what he did, Malala Yousafzai deserves even more attention for her deeds.

<comment><USER39> It is not about deserves or don't, it's about influence. Yousafzai influence to the World is negligible in comparison to Snowden.

</comment></comment><comment><USER40> The numbers are completely different from this afternoon, seems like some people are hacking the votes for fun: [http://www.dailydot.com/news/time- person-of-the-year-miley-c...](http://www.dailydot.com/news/time-person-of- the-year-miley-cyrus-rigged/)

</comment><comment><USER41> The irony is to vote for Snowden,I need to login using Facebook or twitter :), so that time.com can track me.

</comment><comment><USER42> Thanks for the helpful error message, Time.

       Error (api.go:209) forerunner/api.getPollById: exception: can't connect to new replica set master [ec2-54-225-59-0.compute-1.amazonaws.com:27017], err: couldn't connect to server ec2-54-225-59-0.compute-1.amazonaws.com:27017

</comment><comment><USER43> Miley Cyrus has more votes than Edward Snowden. How can that be?

<comment><USER44> Is that an honest question?

You realise that almost no-one gives a fuck about Snowden, right? Most people really just don't care.

The Guardian newspaper has (if we're generous) a circulation of 250,000 people.

The (untrustworthy) numbers of the MileyCyrusVEVO "Wrecking Ball" video are 352,117,848 views.

<comment><USER45> > 352,117,848 views.

Now I'm depressed.

</comment></comment></comment><comment><USER46> Wonder how Zimmerman and Travon Martin did not get on this list.

</comment><comment><USER47> I voted Lebron James.

</comment><comment><USER48> ...and provide Time marketing info by giving them access to your Facebook data. Not happening, thank-you very much.

</comment><comment><USER49> Voted (with my "fake" FB account cause I don't have a real one).

</comment><comment><USER50> Chrome won't let me vote..throwing shitloads of errors in the console.

GPT LOADED EVENT LISTENER EXECUTED load listener, textContent GPT LOADED Blocked a frame with origin "[http://poy.time.com"](http://poy.time.com") from accessing a frame with origin "[http://tags.bluekai.com"](http://tags.bluekai.com"). Protocols, domains, and ports must match. GPT LOADED EVENT LISTENER EXECUTED load listener, textContent Blocked a frame with origin "[http://googleads.g.doubleclick.net"](http://googleads.g.doubleclick.net") from accessing a frame with origin "[http://poy.time.com"](http://poy.time.com"). Protocols, domains, and ports must match. EVENT LISTENER EXECUTED old height: old width: scroll height: 55 scroll width: 275 new height: new width: Blocked a frame with origin "[http://poy.time.com"](http://poy.time.com") from accessing a frame with origin "[http://tags.bluekai.com"](http://tags.bluekai.com"). Protocols, domains, and ports must match. Uncaught SecurityError: An attempt was made to break through the security policy of the user agent. 93c0d7430d30e77dc6a5f0275dfcb679.js:48 Uncaught TypeError: Object #<Page> has no method 'init' 528c2242c903451bee0013d3:81 2 Blocked a frame with origin "[http://poy.time.com"](http://poy.time.com") from accessing a frame with origin "[http://tags.bluekai.com"](http://tags.bluekai.com"). Protocols, domains, and ports must match. Invalid App Id: Must be a number or numeric string representing the application id. all.js:56 The "fb-root" div has not been created, auto-creating all.js:56 FB.getLoginStatus() called before calling FB.init(). all.js:56 2 Blocked a frame with origin "[http://poy.time.com"](http://poy.time.com") from accessing a frame with origin "[http://tags.bluekai.com"](http://tags.bluekai.com"). Protocols, domains, and ports must match. Posted 2 errors to errorception.com 50eb3228903069e001000036.js:1 2 Blocked a frame with origin "[http://poy.time.com"](http://poy.time.com") from accessing a frame with origin "[http://tags.bluekai.com"](http://tags.bluekai.com"). Protocols, domains, and ports must match.

<comment><USER51> You have access to another browser.

I don't have a facebook account.

</comment></comment><comment><USER52> Their voting system provider keeps failing.

</comment><comment><USER53> The future PM CANDIDATE OF INDIA SHREE NARENDRA MODI JI!deserved to the time person of the year! Cos he thoroughly deserves it!

<comment><USER14> I think Modi seems like a no-nonsense forward thinking anti-corruption development oriented person. Completely unlike any of the rest of India's nepotistic political caste. I hope for India's sake that this guy gets a shot at trying to solve some of those problems.

</comment></comment><comment><USER54> No way, I don't vote for traitors. All his US supporters are a bunch of Benedict Arnolds.

BTW, just voted for Miley. She definitely made my year.

<comment><USER55> I can completely understand your position if you are an American. And I'm sure you can understand us foreigners trying to show our appreciation for a man who uncovered this extensive evil intrusion into our lives.

<comment><USER54> Bottom line, he's a traitor. Beyond that, most of the laws that helped start this were set into effect years ago. Where were the people crying then?

Most people complain about having their privacy taken away when using _free_ online services. All I see are a bunch of ignorant loud mouths who got angry too late.

<comment><USER56> Yeah because how dare any citizen question it's government, right?

/s

<comment><USER54> Are you serious? You can question everything you want as an ordinary citizen. The moment you sign a contract, specially for the military, you agree to keep your word.

So, right, how dare the government hold someone to their word? You're basically advocating lying and not honoring your promises.

BTW - I basically make a living honoring promises and contracts, otherwise we wouldn't have customers ;)

<comment><USER57> > You're basically advocating lying and not honoring your promises.

Yes, obviously. There are situations where you ought to lie. The typical example: "Are there any Jews in your basement?"

Decency is more than keeping to the words, sometimes it even requires you break them to keep the spirit of promise. We generally give promises contingent on implied good behaviour from the other parties. When others break their promises the stack built on that mutual honour collapses.

And I'm fine living in the world where that's the way people treat promises, I massively prefer it to the world where people can be tricked into promising something and then have to keep to it when it turns out to be abhorrent.</comment></comment></comment></comment></comment></comment>


10 Indicators that you are in the wrong startup. http://betterit.chetankjain.net - <AUTHOR> http://fwd4.me/117Y

<comment><USER2> "4. You are not offered health insurance or many other standard benefits usually given to full time employees. "

Wrong. Lot of early stage startups don't offer them unless they are generating revenues or raised good venture money.

"2. The entire product requirements are just given to you as a brief list of items. A single email. There is no clear product spec. You are expected to figure out what is needed. And you are expected to then build it. Ask yourself if your compensation justifies this."

What is product spec that you are referring to? And the person you are referring is engineer/designer? In early stage startups you have to take initiative all the time. Do problem solving and come up with ideas/product specs. Its not big co where world moves along waterfall model and you get product specs from your manager.

"8. The management team expects you to contribute your personal devices for the firm's use."

Heard about BYOD? Even larger co's are implementing them.

<comment><AUTHOR> 2\. And the product visionary (or maybe one of the founders) rests in peace surfing the web)?

8\. BYOD should be rolled out as a policy or an option. It should be communicated upfront and not taken as granted, while funds are diverted for personal gratification as in this case.

<comment><USER2> 2\. "Product visionary" is the term thrown around nowadays. Much like "ninja" and "rockstars" in dev jobs listings. CEO is the product guy. And in an early stage startup (< 10 employees) he should actively code if he is technical. Or design (in case designer) or make sales pitches (if he is sales guy/gal).

Its everyone's responsibility to contribute to product specs . Of course CEO/Founder should be leading that effort.

BYOD - I'm part of founding team and so are bunch of my friends. In none of the case I see founders are diverting funds for personal gratification. And most of the founders I know take lesser salary than their employees. Liquid cash is like ocean in desert. Unless startups have venture funding or huge revenues, its pointless to buy every device for every member of company.

<comment><AUTHOR> I agree dm8, if you visit the blog again, I have updated point 7 and 8 there and now it better conveys what I wanted to highlight

</comment></comment></comment></comment><comment><USER3> Why shorten the URL?

Here is the expansion: [http://betterit.chetankjain.net/2012/05/10-indicators- that-y...](http://betterit.chetankjain.net/2012/05/10-indicators-that-you-are- in-wrong.html)

<comment><AUTHOR> Ya shouldn't have shortened it. Looks like I can't edit it now!</comment></comment>


DNA Data Storage Gets Random Access - <AUTHOR> https://spectrum.ieee.org/the-human-os/biomedical/devices/dna-data-storage-gets-random-access?utm_source=twitter&utm_campaign=ieeeorg&utm_medium=social <comment><USER2> I believe in this encoding scheme, the primer targets would perform roughly the same function as hashtable lookup keys would in a file system. Along the lines of a VFS inode cache [http://www.science.unitn.it/~fiorella/guidelinux/tlk/node110...](http://www.science.unitn.it/~fiorella/guidelinux/tlk/node110.html)

<comment><USER3> or more generally a Content Addressable Memory (CAM). seems like the memory fetch latency is pretty steep though</comment></comment>


Ark (YC W12) raises big seed round - <AUTHOR> http://allthingsd.com/20120425/people-search-engine-ark-raises-biggest-y-combinator-seed-round-ever/

<comment><USER2> Anyone know why they pivoted? As of last summer, they were doing Cause related stuff (like we do at Causes.com). It was a little weird -- I saw a few cartoons on their site of a cute penguin (their logo) standing triumphantly over a dead polar bear (with the Causes logo). They also became the Mayor of our office on 4sq. So.. seeing that they're doing people search right now is a bit of a departure.

<comment><USER3> Seems they still have this Cause related stuff, accessible via link in footer.

<http://ark.com/fund/>

<comment><AUTHOR> We were just messing with you guys (Causes). ;) You can have your 4sq mayorship back. We initially were trying to enable people to connect based on similar charity interests. It's still available and people still use it. We just broadened the focus.

</comment></comment></comment><comment><USER4> _Part of what's hard about social search is that Facebook prohibits outside crawlers. But Riley said he's confident that he can get Facebook data, because he has gotten advice from Facebook CTO Bret Taylor, and has worked with Facebook's legal team to make sure everything's kosher._

This would seem to be a key point. Can anyone provide further details? Facebook hasn't historically shown much inclination to let others into the walled garden: [http://petewarden.typepad.com/searchbrowser/2010/04/how-i- go...](http://petewarden.typepad.com/searchbrowser/2010/04/how-i-got-sued-by- facebook.html)

Why would Facebook allow this?

<comment><USER5> Because they're not using a crawler, that's why. Or, at least, that's my sense of things.

<comment><USER4> Wait, so now anyone who wants to index Facebook can, as long as they don't crawl? Obviously, that's not true. So what's the deal? Does Facebook now have warrants in ark.com or something? There must be some quid pro quo.

<comment><USER6> they are probably using the graph api. Which doesn't give you access to much data for most people (As we're all trained to limit what other people's apps can see of us)

<comment><AUTHOR> Absolutely correct. We are using the Graph API. The magic comes with you do link analysis and cluster it with other public data.

</comment></comment></comment></comment></comment><comment><USER7> Congratulations to them! It's impressive, and the product seems really interesting.

But having 9 VC invested in your Company is really not an idea situation. (cf: [http://blog.eladgil.com/2012/04/vc-signaling-coming-home- to-...](http://blog.eladgil.com/2012/04/vc-signaling-coming-home-to- roost.html))

I am wondering why they did not want to/could not raise money from one VC only who would have lead the round (with say $3M) with super angels and individuals completing the round. That would have made their Company so much more manageable at the board level...

<comment><USER5> The other negative signal is all their talk of doing "massive" things. Did fb ever talk this way? Not to my knowledge ... they just DID things. Lot's of hype / cockiness on this one.

<comment><USER7> Totally agree. Everybody forgets that neither Facebook, nor Google, eBay, LinkedIn, Youtube, were saying they were doing massive things. And yet...

<comment><AUTHOR> Why do you guys think that? I received this email in 2004 from TheFacebook.com founders encouraging me to join their team.

" \- Thefacebook.com is one of the hottest new websites.

\- Our numbers are some of the best on the Internet: 1.5-2 billion page views per month, 2.3 million registered users, and 60%+ of the user base comes back _every day_

"

If you are starting your own company, you should be 120% sure you are building something huge that people want. It's also much harder now to attract engineers then it was back then, which is essentially the main reason you even talk about a round.

<comment><USER7> Thanks for participating in the discussion. I completely understand what you are talking about regarding attracting engineers. It's so crazy currently in Silicon Valley!

I am not saying that you should not be ambitious. It's just that I see so many people boasting huge vision with no traction at all. As you can see in the email above, TheFacebook was indeed a hot website with amazing traction. Their ambition (social graph, platform, etc...) came later, and so many times entrepreneurs think that they need to have the big vision first when their MVP is not used at all.

In the case of Ark, I believe that you have a very interesting product, and that being where you are right now is a very interesting position. I wish you all the success in the world to bring that to fruition and be able to get the traction you need to go to the next level. Good luck! I would love to have coffee with you and hear more about it if you are in the city!

</comment></comment></comment></comment></comment><comment><USER8> Ark is "already" doing massive things for sure. It already has indexed 1 billion+ profiles and more coming in the pipeline. I do not know of any other search engine that has accomplished that yet

<comment><AUTHOR> Thanks! But we feel like we are only 1% done. Our team has confidence in what we can accomplish... now it's just a matter of execution and having smart hackers on the team.

</comment></comment><comment><USER9> Does anyone has invites to check out Ark?</comment>


Ask HN: Sierra macOS 4gb download without confirmation, is this acceptable? - <AUTHOR> I tethered my mac for a skype call a week or so ago, and when I was done my cell data usage had jumped 4.7gb or more...
This blew my cell data quota for the month. I wasn't possible that a skype call could have taken so much data, even a long one.
I didn't have time to investigate the cause I was just irritated, and assumed maybe OSX had installed a patch to El Capitan, which is annoying enough.  While I'd prefer to be notified for each of these downloads, I know I'd opted in for this and I'd be warned this time to make sure I had it switched off.
Today, I figured I'd try Sierra, and of course, it was the full OS installer that had been downloaded on my cell, the date and time and size all matched.
I am sure the definition of "Update" could be twisted here, but holy expletives, this is a royal pain.
I wonder what HN thinks about this? Do we accept that a full OS update should be part of the standard opt in for "app store updates"?
Obviously for my case, it was a problem. <comment><USER2> Yes, that's the expected behaviour if you activate automatic downloads. That said, what I find annoying is that every minor Apple OS update, iOS and macOS alike, from the download size at least seems to include the entire OS again. Minor updates should be incremental.

I suppose Windows isn't any different. Linux on the other hand is much more frugal in terms of individual upgrade download sizes because the actual OS is just the kernel while the rest of the software can be updated independently.

<comment><USER3> Same with iOS Apps. Apple doesn't seems to care about their bandwidth transfer.

May be there is a reason behind this. I would love to know why.

<comment><USER4> Is that true? Read the last paragraph here:

[https://developer.apple.com/library/content/qa/qa1779/_index...](https://developer.apple.com/library/content/qa/qa1779/_index.html)

"For devices running iOS 7.1 and later, the update package may include only the differences between the old and new versions of a changed file instead of the full file. This may significantly reduce the size of the update package in the case where only a small part of a large file changes"

(Not sure why it says "may")

<comment><USER3> That is the iOS itself. Not Apps. You have to download 150MB everytime there is an Facebook update.

</comment></comment></comment></comment><comment><USER5> W10 lets you flag a wifi network as metered so that it knows not to transfer as much over it. Seems OS X could do with the same- or is there perhaps some non-obvious setting already perhaps?

</comment><comment><USER6> I think this is absolutely acceptable. Automatic updates are generally useful. I guess the only aspect to improve from a usability perspective would be making users aware of the fact that something is being downloaded in the background – think of app updates in iOS with the pie chart animation on the app icon. There could be a similar notification in macOS's menu bar.

The real problem, obviously, is that the OS itself does not know if it is tethered to a data-capped mobile connection or an unlimited fixed line. If operating systems (both on mobile and desktop computers) were built to handle the first case, the user would have an option to stop any background activity or app updates. Like a "data-capped mode" for the entire OS.

I frequently use my mobile (with limited data) to give Internet access to friends who come from abroad and therefore have no data roaming enabled. Of course, once these mobiles see they're on WiFi, they assume they can download app updates. With LTE, it's easy enough to burn through a lot of data in no time.

<comment><AUTHOR> Had I been answering the post myself, I'd say something similar.

I think it's simply the fact I got directly impacted that I feel differently.

That said, it's still 50/50 for me, but full OS upgrade downloads are not a simple update, and I think they should be a different opt in class.

The main reason is because these are not auto applied like a regular update, and the payload is in a different realm altogether.

</comment></comment><comment><USER7> If you are tethering it is on you to monitor your usage

<comment><USER8> I disagree, but playing along with that, how would you recommend users doing this? How do you monitor your usage while tethering? Have you ever caught something?

Users shouldn't have to worry about unattended OS downloads like this one happening without their permission or awareness.

<comment><USER9> Install iStat menus, watch the download bandwidth gauge, look at per process bandwidth in the drop down when it is unexpectedly high.

A computer without a network bandwidth display is like a car without a speedometer. I wish all OSes had this, would cut down on people's mystery wifi complaints.

<comment><USER8> A bunch of (ostensibly "meaningless" to non-techie) gauges would be too confusing for most people.

</comment></comment></comment></comment><comment><USER10> So go into Settings, then App Store pref panel and uncheck Download newly available updates in the background.

As far as opt-in or opt-out; we seem to be in the always on era... where computers and devices always assume it's up

<comment><USER11> Well, on Windows 10 it's disabled by default to download updates over metered connections. I'm not sure about how accurately can it detect tethering, but theres a manual check box.

</comment></comment><comment><USER12> I think its bad, but its up for consideration. Fact. It will be. The way the market is moving, Apple/Microsoft - benefit best if they can move all users in a tide of upgrades - We are being conditioned - to accept software as a service - and even Operating Systems as a service. To do it, you have to be able to control the update/install cycle on the machine. We're close. When we are completely tethered, then on the heels of a Whiz Bang introduction, we will be told that all machines 'can only' (a nice way of saying must) - run an os issued today. Once we've gotten accustomed to that. Then we will be given the option to subscribe (pay) to the operating system, or have our devices no longer work.

The 'all' update - has to be a part of this process - similar events are happening with Win10 - its not mandatory, but it's very passive aggressive forceful. Why? the next business milestone depends on being able to move the customers to the next OS. (and then the next).

</comment><comment><USER13> Mine doesn't auto download OS updates. It only sends a push notification which can be dismissed with remind me tomorrow.

<comment><AUTHOR> To clarify this was an OS Upgrade. If it was an update, I wouldn't be surprised at all.

<comment><USER13> OS update vs upgrade — not sure if there's a difference but I'm also referring to the ~4 GB macOS Sierra installer.</comment></comment></comment>


Ask HN: Drunk programming? - <AUTHOR>

Who can do it? Any tips? Back at University I could all the damn time. Now that I'm writing "production code" (lol) I can't for whatever reason...I think I just can't concentrate enough, perhaps? Not really sure what's blocking it.
So, can/do you? Any hints or tips?
Note: Posted while drunk. <comment><USER2> Booze, nope - checking my code in the morning makes me want to cry because it's so bad.

Weed, yep - checking my code in the morning makes me want to weep with joy, because there's so much of it and it's so cleverly done compared to my usual fare. The only problem with it is that I never comment or use descriptive variable names... so it can be a bit tricky to get my head around at first. It's basically done by a much better programmer than me, but one who doesn't realise the importance of clarity of intent.

</comment><comment><USER3> I drink socially. When I'm drinking I want to be hanging out with friends, not coding. Personally, I fall asleep if I get drunk and sit down at the computer.

</comment><comment><USER4> I think the key to programming drunk is keeping it to one or two beers. Sometimes when programming sober I become distracted thinking too much about ideas for other features or even other projects. A beer or two can help ease your anxiety and help focus. Also the amount of work left to be done to complete an application can sometimes feel overwhelming and kill my motivation to continue. Sometimes a couple beers can help with the hardest step which is just start. So next time your dreading starting a new feature just pop a cold one, relax and watch the code flow.

</comment><comment><USER5> Mhmm.. well I can tell that at work we like to take a few beers on Friday afternoon and it has become a running gag that Friday afternoon code always has to be double-checked on Monday morning.. For what I can say, we tend to be really less focused when we're having a beer and we get distracted by talking to co-workers. In the end, we're not coding as much as we could have done if we were sober and our code is crappier.

<comment><AUTHOR> Hmm indeed I think that's to be expected in certain environments...but I've also heard about people (heard stories, really, so who knows how valid they are) about people who get drunk and spew out some awesome bit of inspired functionality. Perhaps it's just that -- a story?

<comment><USER6> Perhaps, it just _looks_ awesome and inspired when you are still drunk/stoned. Then, if you dare looking again during the hang over, you will see the full monstrosity that you have spawned.

In my opinion, this is an urban legend.

</comment></comment></comment><comment><USER7> I have to agree with the majority point here. A stiff cocktail or just some hard alcohol on ice and I can program (very slowly) pretty well. One beer and I want to curl up under my desk and go to sleep. As a possible counter-point I knew an ex-M$ employee that could drink 6 beers during lunch then go back to work and be productive. :) I have much to learn before I shall become a jedi- knight.

</comment><comment><USER8> I have no problem doing casual programming tasks while drunk.

Also, I can code as hell all night long drinking whiskey+coke, while with beer my motivation vaporizes the moment I open the can.

About student life vs real life, now you're simply tired of working so you're less motivated to do code when you drink at home to relax. That's just it, I have the same experience.

</comment><comment><USER9> Some of my finest code used to be written whilst drunk. I wrote scanners, exploits, all kinds of stuff at company kick-offs and in hotel rooms after nights out.

When you write code for other people to use though, it's best not to get drunk. I think drunk coding is great for hacking, not so good for production code. I'm with hcarmichel, keep it to one or two beers tops.

</comment><comment><USER10> Buzzed to drunk off wine or liquor actually helps me focus, especially after a long day. Turn on the classical music too and I'm golden for a few hours.

Past drunk (eg wasted), I can't do it, and beer usually just saps my motivation completely.

</comment><comment><USER11> Alcohol is a central nervous system depressant, so it slows higher brain function. It doesn't seem like a good match for programming, which is the essence of higher brain function.

<comment><USER12> This post reminds of the Ballmer peak comic at xkcd. <http://xkcd.com/323/></comment></comment>


7,000 Starbucks Locations Added to the Square Wallet - <AUTHOR> http://allthingsd.com/20121107/7000-starbucks-locations-added-to-the-square-wallet/?refcat=news

<comment><USER2> Where is the 'order with your name' feature?! I don't want to pull my phone out of my pocket.

<comment><USER3> I guess it's not (yet) integrated with the Starbucks POS backend. ;)</comment></comment>


Release of IPython 5.0 - <AUTHOR> http://blog.jupyter.org/2016/07/08/ipython-5-0-released/ <comment><USER2> Glad to hear improvements to the shell ipython interface, especially up/down arrows on pasted code.

The most interesting part of this for me is that IPython 6 will not support Python 2.

>Projects such as Matplotlib and SymPy plan to drop support in the next few years, while a few projects like Scikit-Bio are already ahead of us, and should be Python 3 only soon.

This was also very surprising for the standard reasons, especially for a library like matplotlib. Glad to find Python moving forward. But what will companies stuck on Python2 do? Will libraries like numpy, matplotlib, and scipy all maintain a Python2 LTS?

<comment><USER3> Companies stuck on python 2, have known for several years that life-time support was disappearing and will do 1 of 3 things:

1) Get caught by surprise because they aren't planning. 2) Plan and pay the price of upgrading their legacy code. 3) Join an active developed (currently hypothetical) fork of python 2

I think in 2020 we'll see all 3 routes done by several companies. Better get the popcorn ready!

<comment><USER4> [https://github.com/dropbox/pyston](https://github.com/dropbox/pyston) seems to be option 3

<comment><USER5> Or PyPy. It's development is still heavily focused on Python 2 because that's where the corporate sponsorship is.

</comment></comment></comment></comment><comment><USER3> > It is important to note that users will always be able to use a Python 2 > kernel with the Jupyter Notebook, even when all of our projects have > transitioned to Python 3

The way I understand this is that you will need python 3 to open ipython 6, but once running, you can interact with python2 and run and inspect python 2 code. I think that is fine. I can't imagine a modern scientific setup that can't readily create python 2 and 3 virtual environments.

<comment><USER6> No, not really, When you start a notebook, you could have an IPython 6 - Python 3 kernel, OR an IPython 5 - Python 2 kernel. But Notebook & Jupyter != IPython

<comment><USER3> I thought that just like the notebook, IPython was a "view" into a python kernel. Is that wrongly understood?

<comment><USER7> It's a bit confusing because parts of IPython became Jupyter. But since they split, IPython is two things: the Python kernel for Jupyter, and a terminal interface that uses the same core execution machinery within the process.

So it will only be possible to run Python 3 code in IPython 6, but it will still be possible to use IPython 5 as a kernel for future versions of Jupyter.

</comment></comment></comment></comment><comment><USER8> This is going to take some getting used-to. The visuals (specifically the syntax highlighting and code completion) are very reminiscent of bpython.

On the other hand, I'm really happy to say farewell to readline. I've been stuck with readline v220.127.116.11 for ages just so I can have proper linewrap [0]. Of course this breaks virtualenv creation so you end up having to override the system readline [1]. Needless to say, this is well overdue.

[0]: [https://github.com/ipython/ipython/issues/3329/](https://github.com/ipython/ipython/issues/3329/)

[1]: [https://github.com/pypa/virtualenv/issues/4#issuecomment-966...](https://github.com/pypa/virtualenv/issues/4#issuecomment-966276)

</comment><comment><USER9> As someone who's never used ipython before, but used the standard python interactive terminal a lot, I'm very impressed!

The best feature I've discovered so far, is that when I want to change a function, I can simply 'up arrow', and I get the whole thing! Not a single line of the function, as in the normal python terminal. And if I write a syntax error while typing the function, it tells me immediately!

Does anybody have other examples of great features in ipython over the standard python terminal?

<comment><USER8> For one, you can just paste in a bunch of code. Try doing that in the standard terminal!

Another feature I end up using constantly is the documentation support. Say you want to read the docstring for an object, just prefix or append a '?' to the object, e.g. 'subprocess?'.

If you want to examine the source code for the object, just prefix or append '??', e.g. 'subprocess.call??'.

<comment><USER9> > For one, you can just paste in a bunch of code. Try doing that in the > standard terminal!

Usually I can paste code just fine, I think? As long as the indentation is correct and I have double blank lines between functions, etc.

> Say you want to read the docstring for an object, just prefix or append a > '?' to the object, e.g. 'subprocess?'

Isn't that the same as typing `help(subprocess)` in the standard terminal?

> If you want to examine the source code for the object, just prefix or append > '??', e.g. 'subprocess.call??'.

That's pretty cool :-)

<comment><USER8> Just try pasting the following into the default interpreter, exactly as-is:

        class Sample:

            def __init__(self):
                print('hehe')

        s = Sample()

IPython wouldn't flinch.

<comment><USER10> Note that if you're doing this in a terminal, you MIGHT need to first do `%cpaste`:

[https://gist.github.com/gknoy/97de793db43ff7ea4d4bfd1bab96b4...](https://gist.github.com/gknoy/97de793db43ff7ea4d4bfd1bab96b408)

It seemed to work fine when I didn't use `%cpaste`, though, so that might be a vestigial thing? (I remember having to do it on my linux workstation, so maybe it's just my mac terminal behaving differently.)

The cool thing about directly pasting is, if you fumble the indentation like I did when I initially pasted, it auto-indents for you. ;)

<comment><USER7> In previous releases, you had to use %cpaste. With IPython 5, so long as your terminal supports 'bracketed paste', it should just work. We'll probably deprecate %cpaste eventually.

We got this feature with no effort on our part - it's built into prompt_toolkit.

</comment></comment></comment></comment></comment></comment><comment><USER11> There is a particular behaviour in RStudio that I would really love to be able to do in python, but haven't found the combination of IDE/or notebook that will do it yet:

I want to execute through lines with cmd-return, or by highlighting and pressing cmd-return, and then see the change in the variables in a separate pane, like RStudio's environment pane. Bonus points if I can click on table variables in the environment pane and examine them in a separate tab with sorting and searching. Spyder comes closest but the execution part doesn't work as fluidly.

<comment><USER12> Sounds like you're looking for something like: [https://github.com/yhat/rodeo](https://github.com/yhat/rodeo)

<comment><USER13> Also spyder: [https://github.com/spyder-ide/spyder](https://github.com/spyder- ide/spyder)

</comment></comment></comment><comment><USER14> Thanks to ipython, radare2 (reverse engineering framework) now has a very useful python shell with autocompletion: [https://asciinema.org/a/16ko4jd1e6kdrqkqjxeu248hm](https://asciinema.org/a/16ko4jd1e6kdrqkqjxeu248hm)

<comment><USER15> Thanks to prompt_toolkit, IPython now supports:

        Syntax highlighting as you type
        Real multi-line editing (up and down arrow keys move between lines)
        Multi-line paste without breaking indentation or immediately executing code
        Better code completion interface (we plan to improve that more)
        Optional mouse support

</comment></comment><comment><USER16> "The awkward dependencies on pyreadline for Windows and gnureadline for Mac prompted Thomas Kluyver to replace the old machinery with a brand new pure- python readline replacement: prompt_toolkit."

I was waiting for something like this for years!

</comment><comment><USER17> Multiline support - my prayers have been answered! Copying/pasting code and modifying multiline commands from your history was easily the most annoying thing about ipython.

<comment><USER16> Agreed, though %edit is still a better (and already existing) way to deal with multi line in my opinion ;)

<comment><USER18> For me it would be, if only the result of %edit would make it into the history...

</comment></comment></comment><comment><USER19> Syntax highlighting and line navigation look awesome. The big news is this is the last release to support Python 2.x. Oh, and no more readline. Thank the gods.

</comment><comment><USER20> Kudos to the iPython / Jupyter team for spearheading such an important dev- productivity tool. I use your software all the time. I also appreciate the effort to migrate everybody to Python3.

</comment><comment><USER21> Is there a way to enable vi mode in iPython 5? Since it no longer depends on readline library, putting `set editing-mode vi` in ~/.inputrc file no longer seems to work.

<comment><USER6> Yes, please read the release notes.

<comment><USER21> for reference: [http://ipython.readthedocs.io/en/stable/whatsnew/version5.ht...](http://ipython.readthedocs.io/en/stable/whatsnew/version5.html)

tldr; add `c.TerminalInteractiveShell.editing_mode = 'vi'` to ipython_config.py

</comment></comment></comment><comment><USER22> Twitching on the floor... blinky blinky cursor, is there no way to make it go away..? looks in the feature list. Went back to 4. _

<comment><USER6> That's a terminal preference. E.G: iterm> Preference > Text > Blink Cursor -> uncheck it. Tada !

</comment></comment><comment><USER23> Damn, the storm already hit python 2.x. Have to move on.</comment>


Android is now the world's largest earthquake detection network - <AUTHOR> https://arstechnica.com/gadgets/2020/08/android-is-now-the-worlds-largest-earthquake-detection-network/ <comment><USER2> While I like the idea in theory, and I think it's pretty cool, I'm a little concerned about non-stop motion sensor analytics of my phone.

Especially since things like keylogging using motion sensors have been demonstrated.

[https://www.schneier.com/blog/archives/2011/08/smartphone_ke...](https://www.schneier.com/blog/archives/2011/08/smartphone_keys.html)

I hope the feature also has an 'opt out' option available.

<comment><USER3> I fee there's a trend in the software world to implement a feature for the sole purpose of providing plausible deniability for a nefarious data collection policy.

For example, cell phone numbers and "account security"</comment></comment>


Want to be a top developer? You should build things - <AUTHOR> https://medium.freecodecamp.org/the-secret-to-being-a-top-developer-is-building-things-d3d058e4e472 <comment><USER3> I encourage people to build projects - but taking a checkbox approach to technology can be more busywork than educational.

Some people might view building an Instagram clone as a fun and exciting challenge, or a great way to prove your worth. I view it as a waste of time. At the end of it all, all the time I invest into creating a clone will be basically a waste. I won't use it and other people won't use it or even see it. Maybe you do learn about Grid layouts from the work, for example. For me, that's not enough.

Instead, my advice to be a top developer: have problems, and solve them - <USER2> at least try to.

I am currently tinkering with machine learning via tensorflow, because I need to classify a bunch of playing card images for a sorting machine. I would not normally give two hoots about anything Machine Learning, but with a real problem to solve I am keenly interested.</comment>


Ffsend – Share Files from the CLI: A Firefox Send Client Written in Rust - <AUTHOR> https://gitlab.com/timvisee/ffsend <comment><USER2> Another really neat solution to sending data between two machines that don't have a pre-existing channel is magic-wormhole[1]. It's much simpler because it's just a number and some easy-to-distinquish code words like 1-stethoscope- zulu.

[1]: [https://github.com/warner/magic- wormhole](https://github.com/warner/magic-wormhole)

<comment><USER3> Very cool!

I dove in to see how they solve the routing / firewall problem. Turns out you're relying on the kindness of strangers and a public WebSocket relay. Hard to see how they could do any better, alas.

IMO one of the big holes in the architecture of the web is the lack of a standard peer-to-peer "content-addressable routing" protocol, perhaps based on any of a number of distributed hash table schemes. It'd be perfect for something like this.

<comment> noman-land Far from a standard but have you checked out libp2p? It's pretty far along as a modular p2p networking util.

[https://libp2p.io/](https://libp2p.io/)

<comment><USER3> Excellent! Yeah, I often daydream about a web where something very much like that had become foundational.

Unfortunately, the academic work on DHTs emerged at around the same time as both the stultifying dominance of Internet Explorer and the panic over Napster _et al_.

</comment></comment></comment></comment><comment><USER4> Developer here. Thanks for posting! Feel free to ask my any questions.

<comment><USER5> Upload is very slow for me, about 40 kB/s compared to the about 400 kB/s I get with scp. Is that normal?

Edit: It seems equally slow to me when using the website, so I suspect the issue is with Mozilla's sever, not the client.

<comment><USER4> If might be because of slow cryptography, that isn't hardware accelerated. What system are you running on? I can easily reach 20MB/s.

<comment><USER5> Feels too slow even for slow cyrpto. I suspect either that I am rate limited by the server or there is some bug somewhere.

CPU: Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz

Kernel: Linux 4.19.0-6-amd64

Distro: Debian 10.2

Rust: rustc 1.40.0 (73528e339 2019-12-16)

Program: ffsend 0.2.57

<comment><USER4> That should definitely work fine, yeah! I'm assuming it has to do with the network or their server as well. Sorry I can't be of much help.

</comment></comment></comment></comment></comment><comment><USER6> I mostly use Firefox Send to transmit data between my own devices and devices I do not trust. I wish the web client could generate QR codes to make that easier.

Probably I could combine Fsend and another CLI tool to enable that use case. Right now I'm manually typing links into different devices.

EDIT: Fsend can do this by itself!

<comment><USER4> Just want to note that QR code generation is a feature in `ffsend`. Simply use the `-Q` flag while uploading.

<comment><USER6> Wow, that's great! Thanks.

</comment></comment></comment><comment><USER7> That's pretty neat. Currently I use dat, resync or ipfs to move big files around on CLI. Maybe I will try this next time I wanna share big files.

Obligatory web alternatives that are peer to peer -

[1]: [https://github.com/kern/file.pizza](https://github.com/kern/file.pizza)

[https://file.pizza](https://file.pizza)

[2]: [https://github.com/cowbell/sharedrop](https://github.com/cowbell/sharedrop)

[https://sharedrop.io](https://sharedrop.io)

[3]: [https://github.com/webtorrent/instant.io](https://github.com/webtorrent/instant.io)

[https://instant.io](https://instant.io)

[4]: [https://github.com/RobinLinus/snapdrop](https://github.com/RobinLinus/snapdrop)

[https://snapdrop.net](https://snapdrop.net)

</comment><comment><USER8> I like that this removes some of the need to trust the service. When you open a link in a browser it's tedious to verify that the webpage doesn't send the secret to anyone, but this way you only have to trust the command line tool, which can't be replaced unpredictably.

</comment><comment><USER9> Somebody that knows zilch about Rust with a question: I like to write CLI tools with Go, the built-in libs and the simpleness of the language make it really easy for writing good tools quickly. What advantages does Rust have over Go that one would use it for this purpose?

<comment><USER10> I don't know the current state of go package management but I do know the equivalent Go project cited Rust's package manager Cargo as a good reference for developing their own. You forget Rust's standard library is quite minimalist and you get to sample competing libraries which often use interchangeable interfaces. In particular there are several crates (libraries) which make handling CLI arguments convenient.

If your code is stateful the typestate pattern is particularly easy to write in Rust - [http://cliffle.com/blog/rust- typestate/](http://cliffle.com/blog/rust-typestate/)

<comment><USER9> I've never heard of the TypeState Pattern, thanks for the link and it even got me interested in getting to know more about Rust. Thanks a bunch!

</comment></comment></comment><comment><USER11> It's 2020. Is it finally possible to send a file over the Internet directly from one machine to another?

Only if you are not behind symmetric NAT I suppose.

Tangent: why does symmetric NAT exist? It seems like the kind of thing firewall fetishists do "for security" without considering the problems it causes and without any clue of what sort of attack it thwarts that mere stateful firewalling does not thwart.

Realize that without symmetric NAT, TURN would be largely unnecessary.

<comment><USER12> I am pretty sure there are many people on here who have not forgotten (it is not even that old! :P) and still use any variations of netcat, or even rsync. Nmap's Ncat is cross-platform (I use MSYS2 on Windows so it does not matter much to me), supports SSL, proxies, connection brokering, and a lot of other stuff[1][2].

[1] [https://nmap.org/ncat/guide/](https://nmap.org/ncat/guide/)

[2] [https://en.wikipedia.org/wiki/Netcat#ncat](https://en.wikipedia.org/wiki/Netcat#ncat)

<comment><USER11> All that stuff doesn't work between systems behind firewalls or NATs.

<comment><USER12> > A basic file transfer is very simple: Start Ncat in listen mode on one end, > start Ncat in connect mode on the other end, and pipe the file over the > connection. There are two ways to do this that differ only in which end > listens, the sender or the receiver. Sometimes you can't create a listening > socket on one end of the transfer because of a lack or permissions, NAT, or > filtering. As long as you can listen on at least one end, though, you can > use this technique.[1]

This works with most if not all netcat implementations.

> The basic file transmission technique described at the beginning of this > section fails if neither participating host is capable of listening, or the > two hosts can't communicate directly. This situation has become common with > the prevalence of network address translation. A way to work around it is to > use a third host as an intermediary. The intermediate host listens in > connection brokering mode and the other two hosts connect to it. Recall from > the section called "Connection Brokering" that in connection brokering mode > any input received on one socket is copied and sent out to all other > sockets. With just two hosts connected this is especially simple: anything > coming from one host gets forwarded to the other. This example shows host1 > sending inputfile to outputfile on host2, using host3 as an intermediary.[1]

This works nicely with Nmap's Ncat.

[1] [https://nmap.org/ncat/guide/ncat-file- transfer.html](https://nmap.org/ncat/guide/ncat-file-transfer.html)

<comment><USER11> The second is not direct.

</comment></comment></comment></comment></comment><comment><USER13> I'll go ahead and plug [https://patchbay.pub](https://patchbay.pub) here. If you're somewhat less concerned about having encryption, you can do CLI transfers of files of arbitrary size without installing anything (assuming you have an HTTP client like curl already), and without needing an account:

Sender:

curl [https://patchbay.pub/random-channel-chosen-by- you](https://patchbay.pub/random-channel-chosen-by-you) \--data-binary @file.mp4

Receiver:

curl [https://patchbay.pub/random-channel-chosen-by- you](https://patchbay.pub/random-channel-chosen-by-you)

As mentioned by others, [https://file.pizza](https://file.pizza) is great if both devices have browsers, and the WebRTC connection between them succeeds.

<comment><USER14> Your service sends everything through the instance so we rely on the bandwidth you're willing to share. It already is amazing, but the same thing through WebRTC would be really great. I know it means work would mostly be on the client side though, and curl wouldn't be enough anymore

</comment></comment><comment><USER15> These are all very interesting, I am currently facing an issue getting BitTorrent file transfer to pierce an "unfriendly" firewall that I can't change permissions on. I've tried a VPN out with no luck. I wish I knew if one of these would allow me to get out.

<comment><USER16> Firefox Send is a web page, so if you can access the web you can use it. Also, a firewall that you can access the web from will have ports 80 (http) and 443 (https) open, so configure your tools to use one of those (preferably 443). If both machines are standard internet-facing Unix-likes that you have accounts on, you'll already have scp preinstalled for easy file transfer.

<comment><USER17> Many modern firewalls do Deep Packet Inspection, so obfuscation might be needed too.

<comment><USER16> As long as your traffic is encrypted (which ssh/scp is) and as long as your machine isn't compromised then a firewall can tell so little about your traffic that it would have to be pretty paranoid to attempt to block any of it. It'll work at a Starbucks, but perhaps not in China.

<comment><USER17> Deep packet inspection will almost invariably be able to recognize ssh/scp from the packet sizes, the patterns, the ports and so on. You really do need some kind of obfuscation. Starbucks won't catch it, but I know for a fact my former high school does, for example.

</comment></comment></comment></comment></comment><comment><USER18> few more similar (python based) command line options for Firefox Send - [https://github.com/nneonneo/ffsend](https://github.com/nneonneo/ffsend) & [https://github.com/ehuggett/send-cli](https://github.com/ehuggett/send-cli)

Would be great to have something like curl -X POST @myFilePath "[https://api.send.firefox.com"](https://api.send.firefox.com")

</comment><comment><USER19> Looks cool! Personally, however, I've been using croc ([https://github.com/schollz/croc](https://github.com/schollz/croc)) and can't recommend it enough. I use it almost on a daily basis and is a super easy file transfer tool.

<comment><USER2> It's crazy how incredibly similar to magic-wormhole[1] this looks.

EDIT: Ah, they mention magic-wormhole in the acknowledgements as being an inspiration.

[1]: [https://github.com/warner/magic- wormhole](https://github.com/warner/magic-wormhole)

<comment><USER20> Yeah, I made croc because wormhole wasn't easy to install on Windows and wormhole also doesn't support resuming transfers.

</comment></comment></comment><comment><USER21> termux + woof

woof -i <ip_address> -p <port> <filename>

termux: [https://play.google.com/store/apps/details?id=com.termux](https://play.google.com/store/apps/details?id=com.termux)

woof: [http://www.home.unix-ag.org/simon/woof.html](http://www.home.unix- ag.org/simon/woof.html)

1\. Allows directory upload/download (tar/gzip/bzip2 compressed)

2\. Local file server (doesn't need to go over the internet)

3\. Allows upload form (-U option)

4\. Allows file to be served <count> number of times (-c option)

</comment><comment><USER22> What does the fact that it's written in Rust do? Do we get more storage space? Can files being downloaded faster?

<comment><USER23> Nothing. You can get the same secure sharing service with zero hassle with a simple shell script:

        sum=$(sha1sum "$1" | cut -f 1 -d ' ')
        ssh your-vps mkdir /srv/http/files/$sum
        scp "$1" your-vps:/srv/http/files/$sum/
        echo https://your-vps/files/$sum/$1

\+ nginx or whatever

<comment><USER24> Well I can't use this on Windows nor can I guarantee that this cryptic shell script will run on my friends computer who still uses Windows. Even so, he wouldn't know how to run it.

Also it can't be a "secure sharing service" if you're still using 'sha1sum' and it not being end-to-end encrypted...

<comment><USER23> So use sha256sum, if you don't trust SHA1.

Also it's quite secure since file content is clearly mapped to the URL you're sharing with the other party via independent channel and the receiving party can verify the content of the file.

It may not be completely private if VPS does not run on your own HW, but nothing prevents you from running it on your own HW in your secured location.

You can use this on windows the same way you'd use it on Linux. You just install a bunch of programs and run commands from command line. (basically just like you'd need to do with fsend) It's less hassle on Linux, since the commands are pre-installed. Fsend is more hassle on Linux since it's not preinstalled and requires rust, compilation, etc.

The other people just open a https links and download files in any browser or via curl, no tools required at all, not even JS.

</comment></comment></comment></comment><comment><USER25> Or with python just going to dir you want to share:

python 2.7 >python -m SimpleHTTPServer 8080

python 3 > python -m http.server 8080

<comment><USER26> You can also recreate Dropbox just by combining an FTP Server with curlftpfs and SVN :)

Python's built-in HTTP server is pretty useful. It doesn't really overlap with the functionality of use-cases of a Send client much at all.</comment></comment>


Railscasts is down - <AUTHOR> http://railscasts.com/

<comment><USER2> You mean people have to learn what is current in 2014 without paying for a railscast update to call themselves a web developer?

This just in! You can get all the updates for free if you switch to node.js

disclaimer: I drank a 6 pack before posting this message.

</comment><comment><USER3> I suppose this is as good a time as any to plug [http://asciicasts.com/](http://asciicasts.com/). Text versions of each video

<comment><AUTHOR> Looks like it's a DNS issue. [http://22.214.171.124](http://188.8.131.52) still works. H/t @lgarvey on Twitter.</comment></comment>


Why to Make Your App Free for Education - <AUTHOR> https://www.lucidchart.com/blog/2012/12/12/5-reasons-to-make-your-app-free-for-education/

<comment><USER2> Not sure this is such a good idea. I operate a similar business and most of our profit comes from educational customers. Universities have massive budgets and a few thousand dollars is peanuts to them. School boards also tend to have large budgets, although it tends to be cyclical.

I think the best option is to have a free, limited version and then offer more features for a price. I notice that lucidchart doesn't have any free version for teams.

<comment><USER3> There is a free team account for educators they just have to apply for it.

<comment><USER2> Yes, I know - that is the whole point of the article. What I meant is that they don't generally have a free team version. It would be better perhaps to have a limited free version for everyone, and then charge educators if they want a more advanced version rather than giving them the crown jewels for free. Just my opinion based on selling a similar offering to this market for over 15 years.

</comment></comment></comment><comment><USER4> While I have no argument with the "free for education" approach, I think that the statement _In many states, K-12 budgets are the first to be cut_ could use some backup. I have often seen school systems complaining they don't have enough, but can't recall it ever being due to an actual cut. In fact nationwide[1] we spend more per student on public education than we ever have.

[1] [http://www2.ed.gov/about/overview/fed/10facts/edlite- chart.h...](http://www2.ed.gov/about/overview/fed/10facts/edlite-chart.html)

<comment><AUTHOR> It looks like all of the charts on that page end in about 2006. The last few years have been quite different. This report includes a comparison of percent change in per student spending in fiscal year 2012 to fiscal year 2008 in each state:

[http://www.cbpp.org/cms/?fa=view&id=3569](http://www.cbpp.org/cms/?fa=view&id=3569)

The majority of states have seen declines -- some quite significant.

</comment></comment><comment><USER5> Speaking as a teacher, while your 5-points are very good, there's a happy medium here you can hit between free and paid.

Individual teachers have minuscule discretionary budgets (either $0 flat or up to a few hundred for everything). Departments in a school have a bit more (usually hundreds to thousands once textbooks are paid for). Schools and school districts have more money to talk about.

The pace of adoption is the exact opposite. Teachers are willing to try something new, and will show it to their friends/coworkers if it's awesome. School districts are slow to adopt new technology, and rarely turnkey it to other district (schools have their own NIH syndrome).

You want to find a way to make the individual teachers happy and seek out your tool, but also give them a reason for their supervisors to want to pay you. Think about what an org chart for a school would look like. Each teacher has 15-150 students who report to them. They'll collaborate with the other teachers, and all report to a supervisor, who has their own boss(es).

In a school, you'll probably either want to hit the collaboration between teachers or easy metrics on student performance for the big bosses as your pain points. It won't stop us from using your program for free, but it'll give the people with money a reason to want to implement it in the entire school.

</comment><comment><USER6> "An entire generation of teachers and administrators is embracing the belief that technology will allow teachers and students to work together more effectively, to research more broadly, to share more generously, and to learn more passionately."

As a teacher and member of that generation, thankyou.

Are there any other awesome product like lucidchart available free of charge to K-12 schools?</comment>