I'll take "Sticking it to United" for $49 - <AUTHOR> http://www.thisisgoingtobebig.com/blog/2011/3/18/ill-take-sticking-it-to-united-for-49-cc-unitedairlines.html

<comment><USER2> Airlines do not sell seats. They sell "inventory" which is not particularly correlated to seat availability.

The most likely scenario is that someone will miss the flight before this guys' and that person will now be able to get on this flight as a standby passenger. The OP is just screwing himself out of $49 because he doesn't know how airlines manage inventory.

<comment><USER3> What's more likely is that either the seat will be empty if the flight was not full, or if it was full, one more person will make it to their destination on time.

</comment></comment><comment><USER4> This is a known issue with United's pricing system, and something you should be aware with when you buy from them. It's bitten me a couple of times, both in cases where a family member had just died or was about to die, and so I'm not inclined to be charitable.

Most recently, I had an issue where I was scheduled to fly home for Thanksgiving, but my father's condition worsened suddenly a week before then (he'd been in the hospital for about a month before) and the nurses informed me he wasn't going to make it until then. I looked into moving up my flight by a week - it was significantly more expensive than just buying a new ticket. I also looked into buying a one-way ticket: it was also more expensive than buying a roundtrip with a random end date. So I just bought a completely new round-trip ticket, ate the cost of the old one, and didn't show up for it.

Fine, whatever, I had the money and didn't feel like fighting. But maybe this is why I frequently end up with an empty seat next to me on United, even when the plane is supposedly booked solid. (Hey, I'm also fine with that, but it seems like from a purely business perspective, the airline would want to sell that seat to somebody else...)

It's interesting to contrast this with Southwest, which will give you a credit for the cost of the flight if you reschedule anytime within the next year. Southwest in general does a very good job of minimizing perverse incentives on the part of passengers and flight attendants, and their bottom line seems to reflect that.

</comment><comment><USER5> In reality, since airlines love to overbook flights, they probably sold it anyway.

<comment><USER6> True, which is why he should also complete his check-in online so that it looks like he is confirmed on thhe flight, at least until the last 10 minutes when they realize he is a no show.

</comment></comment><comment><USER7> I recently wanted a Zurich -> San Francisco -> Buenos Aires -> Zurich ticket. This was either not possible or unreasonably priced so I ended up with two independent tickets, one for the Zurich -> SF round trip and another with a SF -> BA round trip. Well the BA -> SF return stopped in NYC one day and SF -> Zurich stopped there the next day and I didn't see much point flying across the country on consecutive days, so I tried to cancel those legs of my ticket (buying the ticket without these superfluous legs would have cost $2000 more than what I bought). Cancelling the first cross-country flight was going to cost around $200 so instead I just walked out of the airport in NYC after clearing customs.

I tried to cancel the second, but Continental told me that I couldn't cancel part of the trip and would have to rebook with no credit from my existing ticket (a 1-way NYC -> ZRH would be $2700, compare to a round trip at $600). Fortunately, the NYC -> ZRH leg was operated by Lufthansa which apparently doesn't talk very closely with Continental because they didn't blink an eye when I showed up at the airport after "missing" the Continental flight from SF. Had Continental been operating the last leg, they would have turned me away and I'd have been stuck buying a new ticket, but still better off than formally cancelling because of not paying the cancellation fee.

I had hoped that ubiquitous online travel indexing would bring some sanity to the airline pricing model, but this does not seem to be happening. I fail to see how having ticketed passengers that don't plan to fly, financially rewarding passengers for being deceptive about which flights they will board, and incentivising mixed-carrier tickets for the flexibility they lend is helpful to their bottom line.

</comment><comment><USER8> You bought a non-refundable ticket. Be happy they are even giving you $49.

<comment><USER9> Exactly, if you buy "a non-refundable ticket" you can't complain even if they don't refund _any_ of it.

<comment><USER10> This is not an airline user forum. It's an entrepreneurship forum. The point is not to discuss his rights and opportunities as a consumer. The point is to learn something about customer service and the business tradeoffs of different refund policies.

<comment><USER9> That's not what the author was doing though. He could have written suggesting how they ought to improve their business, but no, he wrote complaining about how they had done exactly what he knew they would do when he bought the ticket.

</comment></comment></comment></comment><comment><USER11> Isn't he dismissing the risk that the airline won't be able to sell the ticket within the next 48 hours? The potential for the airline to make $400 is there, but the expected revenue is below that.

</comment><comment><USER12> Careful, since who knows what rule of back to back/throwaway ticketing you could be breaking by buying a ticket and not flying. The airlines probably would claim that this is illegal.

<http://en.wikipedia.org/wiki/Airline_booking_ploys>

<comment><USER5> What are they gonna do, arrest you and force you to get on the flight?

<comment><USER13> Probably not, but they still have some leverage... from wikipedia: "airlines may respond by confiscating tickets, cancelling frequent flier status and billing travel agents for the fare difference."

</comment></comment></comment><comment><USER14> _I won't be showing up for my Sunday night flight, and this blog post is costing you up to $450 in revenues, while only costing me $49_

no, it cost you $199.

<comment><USER15> No. The initial cost is a sunk cost that he has paid regardless of whether or not he takes the flight. He's already certain that he's not taking the flight, so he has only the options: [ ] Get Refund [x] Attempt to make a point

The first pays out $49; the second $0. The opportunity cost of the second in relation to the first is $49, not $199.

The questionable part of that is the $450 he claims to be costing the airline.

<comment><USER16> The opportunity cost faced by the blogger is entirely irrelevant to United though. They've gained a real $199 in revenue from him which is all their records will show; he's sacrificing a potential $49 rebate to convince himself he's depriving them of a hypothetical $450 from a most-likely-nonexistant last minute customer.

</comment></comment></comment><comment><USER17> Y'all are missing another part of his value proposition - he spends, or fails to get back, $49 and in return gets something to blog about and a lot of hits.

</comment><comment><USER18> Think there is a phrase for this -- "cutting off my nose to spite my face".

Sure, airlines are evil, but they're not this dumb about optimization of Revenue per Available Seat Mile. I'd guess this seat got filled just fine.

</comment><comment><USER19> I said this on their thread, but I'll share it here too.

United treat's you like crap if you aren't a frequent flier.

United treat's you pretty reasonably if you are.

If you assume that the vast-majority of non-frequent fliers book solely on price, then you should skimp as much on customer service as possible, and throw no amenities (e.g. food, checked baggage) in at the base ticket price.

All of the sudden what the big airlines are doing seems rational.

<comment><USER20> _If you assume that the vast-majority of non-frequent fliers book solely on price_

Is that a fair assumption? I know a lot of non-frequent fliers who only fly SouthWest or Singapore, etc... These places seem to do well and have good reputations. And for people that don't travel as much, confidence in the airline often means something.

I don't actually know the data, but I wouldn't be surprised if United fared really poorly among those who don't fly often. I don't fly much, but I know enough to avoid them and Continental like the plague.

</comment></comment><comment><USER21> I don't mind the downvotes -- I have to share this tangentially relevant bit because it's so great: United Breaks Guitars <http://www.davecarrollmusic.com/ubg/>. Another example of customer hostility ending up costing the company.

Fantastic blog post, by the way.

</comment><comment><USER22> He can do what he wants to do for free.

See "same day standby" and "confirmed standby": [http://www.flyertalk.com/forum/united-mileage- plus/955496-un...](http://www.flyertalk.com/forum/united-mileage- plus/955496-united-standby-policy.html)

</comment><comment><USER23> What about adding the traveler's insurance for an extra $50-$100 and getting 80% of your trip refunded?</comment>


Intel Is Said to Be in Talks to Acquire Chipmaker Altera - <AUTHOR> http://www.bloomberg.com/news/articles/2015-03-27/intel-is-said-to-be-in-talks-to-acquire-chipmaker-altera <comment><USER2> This would be big news, only in the sense that it'd make it more likely to be able to have FPGAs on the latest silicon process node.</comment>


What If Everybody Didn't Have to Work to Get Paid? - <AUTHOR> http://www.theatlantic.com/business/archive/2015/05/what-if-everybody-didnt-have-to-work-to-get-paid/393428/?single_page=true

<comment><USER2> This cause is based on the wrong assumption: products and services are NOT getting more expensive (aside from health care and housing but I predict those too will become more affordable thanks to bots). And it is precisely b/c of automation that prices go down (the fact that you pay hundreds for an iPhone that costs tens to make has more to do with you being a victim of marketing and less to do with robots making the phone). Also, b/c many products and services that we now consume are digital (zero real cost of 'making' a copy) we need less money each month to consume them. Also, not to be surprised: good healthy home cooked meals are über cheap. And don't ignore this trend: the sharing economy. In sum: as everything commoditizes and we share products and services, we need less money to live. Maybe then what we need is to share jobs (work partime) and control personal expenses, until we reach Jacque Fresco's Resource Based Economy (google The Venus Project, b/c guess what, searching, finding and learning new information is nowadays almost always free!).

So pleeeease don't ask for a free basic income, I certainly don't want to pay more taxes ;)

<comment><USER3> I was surprised at that conclusion. The rise of robots creating goods means we will be forced into a basic income at some point. Or let jobless people starve I guess.

And its not at all assured that you will have to pay more taxes. The basic income could come from any number of places, like corporate automation tariffs (let the robots pay for it!) or even printing more money.

<comment><USER2> That is a very 'utopian' view. Changes are gradual. Even if we do invent perfect bots to manufacture and provide services, the capital expenses to acquire them will be huge, tons of business will take decades to adopt them. Until then good old human labor will do. Have you seen a travel agency lately? Is milk delievered to your door step? Jobs disappear, new jobs are invented. We are ever getting more specialized. What will happen is less dramatic and it is something we have always done in the past: we will adapt, gradually.

<comment><USER3> Ever more specialized == fewer and fewer people needed to work at all. New jobs are invented at the rate of 1 for 10; 9 people are out of work. The Pollyanna view that jobs will appear by magic, in exactly the right number for the population, is a 'utopian' view.</comment></comment></comment></comment>


Show HN: SHA1 Clock - <AUTHOR> @brudgers encouraged me to do a Show HN (in https://news.ycombinator.com/item?id=12670797) Thanks also to @Artemix for the validation! It's my first time sharing something I've made on HN.
Demonstration: http://www.verticalsysadmin.com/sha1clock/
Source code: https://gitlab.com/atsaloli/sha1-clock/tree/master
It was a fun little project for me as I'm a sysadmin and haven't done much with JavaScript.
I quickly found a SHA1 implementation through Google and then after realizing there really is no sleep() in JavaScript and to use setInterval instead, I was pretty much set.  :-)
There is no practical value, it's just for amusement and for me to learn just enough JavaScript to make it work.  :) <comment><AUTHOR> Demonstration: [http://www.verticalsysadmin.com/sha1clock/](http://www.verticalsysadmin.com/sha1clock/)

Source code: [https://gitlab.com/atsaloli/sha1-clock/tree/master](https://gitlab.com/atsaloli/sha1-clock/tree/master)</comment>


Ask HN: Best python library for git? - <AUTHOR> Trying to search for Python libraries to handle git functions. It's a little hard to get relevant results for since there are a lot of python libraries using github/gitlab, so asking the HN Crowd.
Two I've found:
- pygit
- gitpython
Either of these considered the standard? Any others I should know about? <comment><USER2> [https://github.com/jelmer/dulwich](https://github.com/jelmer/dulwich)

<comment><AUTHOR> Thanks.</comment></comment>


Ask HN: How do I unsuspend my Twitter account? - <AUTHOR> Hey,
My project's Twitter account was suspended a week ago—probably got mistakenly flagged by an automated system. I immediately submitted an appeal as suggested but still got no reply from the support.
Maybe some of you guys know someone who works at Twitter to ask them what's up? Any other ideas how to unsuspend my account? <comment><USER2> > I immediately submitted an appeal as suggested but still got no reply from > the support.

The equivalent of throwing a stone into the abyss.

The best thing is to make a stink publicly about it, and, if your project is high-profile enough, will probably catch someone at Twitter's attention to reinstate your account.

Otherwise, you should just make a new account and be up front as to what you're doing.</comment>


Webshell.io - <AUTHOR> http://webshell.io/ <comment><USER2> Interacting and exploring APIs is either the newest fad or a gold rush for new business, but one of the biggest things stopping me from using them is integration into my existing stable tools. webshell.io is another service which is hosting your code on an external service, leaving you vulnerable to fluctuations in their uptime or stability as a company. There may be new opportunities in turning this into a desktop application.

<comment><USER3> But what would be the business model for such a desktop app?

<comment><USER4> Selling licenses, like most commercial desktop applications.

<comment><USER3> Very long sales processes but yes. It is better to be a Salesforce-like platform... How Salesforce did to enforce a cloud platform as a SPOF for CRM?

<comment><USER4> Eh, how so? Put in your credit card details, and the download starts.

<comment><USER3> sorry but no download with Salesforce, (following my request) and they are still SPOF for CRM right?

But yes for a desktop you are right. "credit card details and download"

</comment></comment></comment></comment></comment></comment><comment><USER5> I appreciate the technical rigor required to make this kind of service stable and safe, but I am worried about the usefulness of the product / who would use it. Building APIs into my own abstractions in a real web application basically means I'll never use this myself. A more casual developer may use this to build simple mashups, or maybe hack out something for a hackathon, but beyond that why would I go through the trouble of figuring out how to integrate webshell with my own codebase? NinetyNine already mentioned this, but now I'm adding a new single point of failure and another web request, so I'm not quite sure how big the benefit is exactly.

Maybe it'll turn out that there's a huge need for some intermediate between IFTTT and vanilla API use, but I'm having a hard time seeing when.

<comment><USER3> IFTTT for developers? with all I/O that API can really provide and the whole expressivity of Javascript for making more advanced scripts?

<comment><USER3> A micro-service (or micro-API)creation by scripting existing APIs, in Javascript?

</comment></comment></comment><comment><USER6> I played with it @ <http://webshell.io/prototype/Njc5Z/7>

It seems to work. This uses a REST service I recently wrote in node.js + mongodb.

Edit:

14 people click the link and hit Run, but no one changes the text? Come on. I wrote a second little app to track this at <http://webshell.io/prototype/Njc5Z/8> just keep clicking Run to see it update, as people run the original app and hopefully enter their name or something.

<comment><USER6> Wow, 249 added. And a friendly mix of script injection, iframes, css, and image tags (had to disable the inline script tags because the redirects made people unable to see the data). Someone even changed the background image of the Webshell.IO interface itself.

It might be a good idea for the webshell guys to add some basic xss protection, but otherwise, I think we've proven this is a neat idea.

</comment></comment><comment><USER7> Finally, a shell that has the past trail off below (revchron/blog-style) rather than up above (typewriter/terminal-style)!

<comment><USER8>
      printed in any other way...
      would want their shell output
      I never understood why anyone

      Yes, what a great innovation!

<comment><USER7> You may jest, but the traditional ordering, appending later material/writing to the bottom, is an artifact of the mechanics of handwriting and then typing- on-paper.

On screens, freshest/latest-on-top makes more sense, and is just as easy to effect. Inherently online forms, like blogs and newsfeeds, have already inverted their preferred mapping of time-to-vertical-position. I predict many interactive shells and chatrooms will also invert soon.

      !reverse might sentences individual within order word
      the even maybe years hundred a In ?knows Who

<comment><USER9> There's a lot of validity to what you say, but unfortunately this paradigm breaks because most languages are top-to-bottom. As much as I'd love a bottom to top shell history for the reasons you describe, I'd end up scrolling in a zig-zag elevator pattern to read the command outputs.

This is of course not a criticism, just an observation.

<comment><USER7> 'Languages are top to bottom', yes, but only _because_ of the legacy mechanics of handwriting and then typewriter-rolls. (Hands or mechanism would obscure any lower text.)

As each generation spends more time with keyboarded/gestural/voice inputs for flexible screens, the old mechnical habit – append new at-bottom – will fade, with more applications embracing new-item (and new-line-insert) at-top.

Regarding shells, do you mean your eye _tracking_ would have to zig-zag? If so, imagine a completely inverted shell/terminal, at the unit of individual lines. You'd only have to scrollbar-back in the exact same situations as in a classic terminal: when more than one screen of output resulted. And your eye tracking for smaller bursts of output will require the same reversals and vertical-magnitudes as before: just in the opposite direction. So once you habituate to the inversion, the differences that remain are:

(1) 'up' means 'newer', consistent with other screen-native scrollable information feeds

(2) your eyes' 'home row' stays near the top of your screen – closer to looking at the world above the screen, rather than the hands/keyboard/ground below

Both these seem like wins to me... far from slam-dunks, but enough to chip, chip, chip away at the traditional language practices over time.

<comment><USER8> I think what you're missing is that terminal output is nothing like the disjunct messages on twitter (and even there the inversion is terrible) but rather like the sentences of a novel.

We don't just "habituate to" reading backwards while everything else in the world still reads top-down.

And for that reason you don't break fundamental conventions like our _natural reading direction_ that have evolved over centuries unless you have a tad bit less ridiculous justification than "looking at the world above the screen".

<comment><USER7> The next few generations will spend their entire lives reading and writing material exclusively for the screen, rather than paper. After that, I wouldn't even count on novels remaining earlier-writing-on-top. Pull-down/scroll-up for next will seem more of a 'natural reading direction' than habits based on quaint ink and paper – despite paper habits' several-thousand-years' head- start.

Let's check back in 100 years, we'll see who's right.

<comment><USER8> 100 years?

We've been reading top-down for well over 2000 years, since the very beginnings of writing, in almost all languages. If you really believe twitter and touchscreen-gadgets will overthrow that in not even one generation then you should absolutely share some of the kraut that you are smoking over there.

<comment><USER7> 150 years ago, horse-drawn transport was the primary means of non-human- powered land transport... and had been for over 4,000 years. But by 50 years ago, not so much.

When a truly new technology arrives, things change a lot in just a few generations, with 'generation' meaning the 20-30 year average gap from birth to being a child-rearing adult.

<comment><USER8> Ok. So we have computers now, a truly new technology. And thus we will soon collectively decide that writing backwards is better because then we can look at the world above our screen better.

Yes, on second thought this is absolutely comparable to the invention of horseless carriage and makes perfect sense.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> Cool idea, but this desperately needs a better way to deal with history. I mistyped

      apis.tts("hello world");

as

      api.tts("hello world");

and then I hit the up arrow (as this is how to go back to the last command on any other console I have every tried) and nothing happened. In fact, the only way to correct my mistake, seemed to be to __retype the whole thing __. I couldn't have come up with a better example of "dangling by a trivial feature" (<http://prog21.dadgum.com/160.html>).

<comment><USER11> Try it with alt-up/down, works for me in Chrome.

</comment></comment><comment><USER12> I'd like to commend them for an awesome interactive tutorial.

</comment><comment><USER13> Reminds me of YQL (<http://developer.yahoo.com/yql/>) - one of the more underrated things by Yahoo for developers.

</comment><comment><USER14> you need an "up" key to repeat the last api call.

<comment><USER3> alt+up or alt+down

</comment></comment><comment><USER15> Please add autocomplete, it would make it so much easier to work with; something like the Chrome console.</comment>


US Government targeting Immigration Lawyers, Activists, and Reporters - <AUTHOR> https://bostonreview.net/global-justice/lauren-carasik-government-targeting-immigration-lawyers-activists-journalists <comment><AUTHOR> > Occasional disparaging comments from U.S. Customs and Border Protection > (CBP) personnel suggested that Ramos's advocacy had landed her on their > radar, and then, on January 10, 2019, in the midst of the government > shutdown, her pass was revoked without explanation.

> Around the same time, Al Otro Lado's other codirectors, Erika Pinheiro and > Nora Philips, were also harassed while attempting to cross the border. On > January 29, Pinheiro was detained for two hours at the Tijuana crossing and > then refused entry into Mexico; during the ordeal, she was denied access to > attorneys seeking to advocate on her behalf.

> Mexican authorities detained Phillips at the Guadalajara airport two days > later, where she had flown with her husband and their seven-year-old > daughter. Mexican officials informed Phillips that there was an alert on her > passport and held her for more than nine hours, during which she was denied > food and water. The ordeal concluded with her being put on a flight back to > the United States.

</comment><comment><USER2> It's against the law to encourage, aid, or abet aliens to illegally enter the United States: [https://www.law.cornell.edu/uscode/text/8/1324](https://www.law.cornell.edu/uscode/text/8/1324)

<comment><USER3> And "A vessel eligible to engage in the coastwise trade and later rebuilt outside the United States may not thereafter engage in the coastwise trade." [https://www.law.cornell.edu/uscode/text/46/12132](https://www.law.cornell.edu/uscode/text/46/12132)

Both citations seem equally relevant to the article.

If you think your legal citation is meaningful, then I'll point out that 1) the described (and alleged) retaliatory behavior are not listed as any of the punishments in the text you quoted, 2) punishment without being able to challenge the punishment is an abuse of power, and 3) why aren't the lawyers and activists simply arrested for breaking the law?</comment></comment>


Tracing Ebola's Breakout to an African 2-Year-Old - <AUTHOR> http://www.nytimes.com/2014/08/10/world/africa/tracing-ebolas-breakout-to-an-african-2-year-old.html <comment><USER2> The last piece of the article is painful to read. Anyone know how we can contribute to supplies, etc to fight Ebola?

"A Desperate Call for Help

By June and July, Sierra Leone was becoming the center of the outbreak. At the government hospital in Kenema, Dr. Sheik Umar Khan was leading the efforts to treat patients and control the epidemic.

But he was desperate for supplies: chlorine for disinfection, gloves, goggles, protective suits, rudimentary sugar and salt solutions to fight dehydration and give patients a chance to survive. Early in July, he emailed friends and former medical school classmates in the United States, asking for their help and sending a spreadsheet listing what he needed, and what he had. Many of the lines in the "available" column were empty. One of his requests was for body bags: 3,000 adult, 2,000 child.

Before his friends could send the supplies, Dr. Khan contracted Ebola himself. He died on July 29."

<comment><USER3> Medecins Sans Frontiers (Doctors Without Borders) is an excellent choice. They have been integral to controlling several past Ebola outbreaks, and have been fighting this one since the beginning. They are almost entirely tapped out right now. [http://www.msf.org](http://www.msf.org)

I can't vouch for them, but the Liberian Ministry of Health also has donation instructions: [http://www.mohsw.gov.lr](http://www.mohsw.gov.lr)

<comment><USER4> Not sure why you say MSF is "almost entirely tapped out"—from MSF's website "Please note that Doctors Without Borders' response to the Ebola outbreak in West Africa is fully funded." Nevertheless, they're a pretty excellent charity to donate to (c.f. [http://www.givewell.org/international/charities/doctors- with...](http://www.givewell.org/international/charities/doctors-without- borders) and note they spend over 85% of funds on programs [~12% on fundraising, and ~1% on management]).

<comment><USER3> You're right, I revisited the article that gave me that impression [0], and it's very clear that staffing is the resource that is exhausted. Nonetheless, it's an excellent organization and a worthy cause in my opinion.

[0] [http://www.msf.org.uk/article/ebola-official-msf-response- wh...](http://www.msf.org.uk/article/ebola-official-msf-response-who- declaring-epidemic-extraordinary-event)

<comment><USER5> They're also one of the few charities to whom I donate that _doesn 't_ spam me to death after the donation. Give money to the MSF, and you get a few letters a year about what they're doing.

More charities should be like that.

<comment><USER6> Not to mention they don't push any religious agenda while they're out there. They do good work for its own sake.

</comment></comment></comment></comment></comment></comment><comment><USER7> "Unlike most previous outbreaks, which occurred in remote, localized spots, this one began in a border region where roads have been improved and people travel a lot. In this case, the disease was on the move before health officials even knew it had struck."

What if someone in a major US city got infected? How bad could it get? Could they even contain it at that point?

<comment><USER8> It's likely easier to control in the U.S. where there are a lot of resources and people are less likely to engage in a lot of physical contact with the infected, and where trust of doctors is a lot higher.

There is also a much more extensive public health system that is alert to the risk of an infected person entering the country.

<comment><USER5> People keep repeating this as if it were a definitive rebuttal of all fears, but this story gives a few great examples of why the confidence might be misplaced: when your primary diagnostic criterion is a fever (common; easily suppressed with OTC medication) and affirmative answer to the question _" have you been to West Africa?"_, it doesn't really matter how good your public health system is -- it's a going to be a leaky early warning system.

If someone makes it through the airport screens and carries the virus into a city, the epidemiology could become overwhelming before we know an outbreak has begun. So yes, we have the advantage that we have real hospitals and good infection control, but we have the _disadvantage_ that we have huge cities, high population density and lots of personal mobility.

<comment><USER9> The point of comfort for the U.S. is that ebola transmission currently requires direct contact with bodily fluids--not that it's easy to diagnose.

If you had a fever and went to work, and it turned out you had ebola, it's _still_ unlikely you would infect your coworkers, because it is rare for American workers to directly contact each others' bodily fluids.

Think of ebola like AIDS that kills faster. That's the right mental model for how it is transmitted. And, it's a good reminder that we have decades of practice managing diseases transmitted that way.

<comment><USER10> "The point of comfort for the U.S. is that ebola transmission currently requires direct contact with bodily fluids"

Doctors who _knew_ they were working with Ebola still managed to get infected. So it can't be that hard to get it.

We don't need to panic, but it would be unwise to be too complacent.

<comment><USER11> > Doctors who knew they were working with Ebola still managed to get infected.

Yes, but these doctors often don't even have the equipment to provide proper antiseptic medical care let alone containment-type biosuits.

In addition, quarantines can be rolled out quickly and effectively in modern countries with well-developed communication infrastructure.

This is not to say that we should be complacent. However, a bad flu epidemic poses more direct hazard to the modern world.

</comment></comment></comment></comment></comment></comment><comment><USER12> Does the usage of African instead of Guinean bother anyone else? Africa is widely not recognized as a continent of distinct countries and this isn't helping. It's like referring to people from the U.S., Canada, and Mexico as North Americans.

<comment><USER13> Yeah, the mistake of referring to Africa as a single nation is unfortunately common in the U.S., made by everyone from from leading Republican politicians to, more sadly, Clayton Kershaw.

[1] [http://www.africaisacontinent.com/common- mistake](http://www.africaisacontinent.com/common-mistake)

[2] [http://mlb.mlb.com/news/article.jsp?ymd=20101220&content_id=...](http://mlb.mlb.com/news/article.jsp?ymd=20101220&content_id=16350030&vkey=news_la&c_id=la)

</comment></comment><comment><USER14> How did the 2-year-old contract the virus in the first place?

<comment><USER15> The article makes it clear that this is the big question. Suspects are fruit bat poop and bush meat.

<comment><USER16> Wouldn't fruit bat poop be more likely? I mean, if it were bush meat I'd suspect it was prepared for the child in which case there would have been a second patient-zero. Whereas fruit bat poop can easily get into a 2 year-olds mouth without anyone noticing.

<comment><USER17> > I mean, if it were bush meat I'd suspect it was prepared for the child in > which case there would have been a second patient-zero.

Just speculating, but maybe cooking the meat attenuated the virus, and it was only able to take hold in a person with an underdeveloped immune system. Or, maybe, the disease merely progressed faster in the child and so s/he only looks like patient zero, despite the rest of the people eating having gotten infected at the same time.

<comment><USER15> I'm sure the epidemiologists considered that possibility. If it was likely, they would have mentioned it.

</comment></comment></comment></comment></comment><comment><USER18> Nobody can be serious about containing this outbreak unless they stop the planes flying and close all borders.

<comment><USER19> ...or just move to Madagascar.</comment></comment>


"Uber for" fashion models? $20B industry is still very "old-fashioned" - <AUTHOR> https://www.techinasia.com/talk/uber-fashion-models-20b-industry-oldfashioned <comment><USER2> cool title but the article wasn't good.</comment>


Ask HN: Python, php or ruby for personal project? - <AUTHOR>

Hi,
I've mostly been a perl and java guy to date, and am looking to expand my horizons with one of php, ruby or python. To that end I've settled on a simple personal week(end) web app project which should give me a little intro. My requirements are:
- Don't really need a web app framework. This is (more-or-less) a single page app. A script that can be called by apache/httpd is enough.
- Need decent url parsing & encoding/decoding
- Networking, specifically http
- DOM rendering, a la dom4j, so i can traverse and alter/add/delete nodes and node attributes.
Whether intrinsically or via libs, is there anything to recommend one language above the other?
Thanks for suggestions. <comment><USER2> PHP is very easy.</comment>


The simple cult camera that inspired Instagram - <AUTHOR> http://www.bbc.com/future/story/20171113-the-toy-camera-that-inspired-instagram <comment><USER2> All of the articles talking about the genius of instagram's filters seem to forget one the earliest popular iOS camera apps — Hipstamatic. It was released a year before Instagram and apple named it App of the Year even.

<comment><USER3> it was wildly successful, had better filters, but really never got the social aspect. Today, its notable to point out that people like Teru [1,2], who shot with hipstimatic in Afghanistan on assignment now work for instagram.

[1] [https://www.npr.org/2011/07/27/138746071/foreign-policy- heav...](https://www.npr.org/2011/07/27/138746071/foreign-policy-heavy-metal- in-hipstamatic)

[2] [http://www.thejakartapost.com/news/2015/04/27/teru- kuwayama-...](http://www.thejakartapost.com/news/2015/04/27/teru-kuwayama- from-battleground-instagram.html)

</comment></comment><comment><USER4> Link to Lomography, where you can buy a Holga and many other vintage inspired cameras: [https://shop.lomography.com/en/cameras/holga- cameras/holga-j...](https://shop.lomography.com/en/cameras/holga- cameras/holga-jack-edition-package)

</comment><comment><USER5> I shot with the Holga quite extensively over 10 years ago. I must say it's strange to say that the "Holga look" inspired the creators of Instagram—because the result looks nothing like it.

Instagram did not attempt to create faux light leaks or to emulate the imperfections of the plastic lens (which is what I associate with the Holga look). If anything, some of the Instagram filters come closer to a well exposed instant film.

<comment><USER6> I think this has more to do with the fact that cell-phone cameras got much better.

2010-era phone cameras were pretty crappy.

My own Holga never had light leaks, and most of the effects I got out of it were done via double-exposure or cross-processing the film (a very common Instagram look).

</comment></comment><comment><USER7> "120 or medium format film, which is around six times the surface area of a frame of 35mm film."

Well, that's not right. I haven't used a Holga, but I have used a Diana, and the Diana couldn't even cover the whole width of the roll. You didn't get 6x6 even, more like 4x4.

Burnett is also responsible for popularizing the Kodak Aero Ektar lens, to the point where a good one now goes for crazy money on ebay.

<comment><USER8> Any of these sizes larger than 35mm but smaller than 6x9 is "medium format". [https://i.imgur.com/02NaeU6.png](https://i.imgur.com/02NaeU6.png) It could describe film 3x or 5x as large.

<comment><USER7> But not six times. I mean, I have a 6x9 Fuji, and the images it makes are about 4 times as large as 35mm. And in any case, Holga/Diana cameras don't come anywhere close to that.

<comment><USER9> Well, going exactly from the quote, using surface area:

6x9 fuji: 54cm^2

35mm frame: 8.4cm^2

That fits roughly 6x

<comment><USER10> Holgas shoot 6x4.5 though, half that, and Dianas are 4x4, even less. And 35mm is really 24x36, closer to 8.6cm^2.

<comment><USER11> Holgas shoot 6x6 or 6x4.5.

</comment></comment></comment></comment></comment></comment><comment><USER12> So how hard is it to DIY development? It seems like every couple of years I read an article like this one that gets me curious, because if I'm going to use physical rolls of film, I'd might as well develop it myself without waiting/paying a lab and to get that sense of pride when you do finally get a good photo.

I'm not someone that takes pictures much on my phone or anything, but reading this makes me want a cheap film camera like this where pictures aren't just throw away, you have to go through a process to even find that the picture turned out crappy.

<comment><USER13> Black and white is fairly simple and straightforward but still requires a totally dark room (or bag) and a bunch of sort of expensive chemicals that go bad (and some of which are fairly toxic for the environment).

Color is similar but more complicated with more expensive chemicals and more room for mistakes. You're almost always better off paying someone else to develop (in money and quality) though it's not nearly as satisfying.

Of course after you develop you need more stuff to make prints or a film scanner to get something useful from your negatives. More investment here - labs usually do this for you for a very small fee if you get it developed there.

I can't recommend developing your own color film, but black and white is fun to play with if you want to get a better understanding of the process. If you're just doing a few rolls occasionally though then development is probably the best option.

<comment><USER12> > I can't recommend developing your own color film, but black and white is fun > to play with if you want to get a better understanding of the process. If > you're just doing a few rolls occasionally though then development is > probably the best option.

Yea B&W only, from my research that was what I gathered too. I wasn't aware the chemicals expired though, I assumed you bought some and just processed whenever and you were good to go

<comment><USER14> If kept consistently refrigerated in low light chemicals can last a long time (years). However because you only get one shot at developing a roll it's more comforting to follow the manufacturer's recommendation. I stopped shooting B&W for a long time and then used some chemicals that were in the fridge more than 5 years and the results were fine– any effect it may have had on the sharpness or contrast weren't noticeable. Photography stores may even sell you expired film and chemicals at a discount because they are riskier but often usable.

</comment></comment></comment></comment><comment><USER15> Whenever I post something to Instagram, I try a lot of filters. But I always come back to the original. All of them make the picture worse!

</comment><comment><USER16> I don't know. This makes me think of a piano that at random times plays a random note - and sometimes it sounds good. I guess the difference is that photography isn't real time, so the photographer can throw out all the ones that don't look good. OTOH, I think I'd rather put my efforts into adding weird effects to better images than hoping for the best.

<comment><USER17> A better analogy might be "A piano that's hard or impossible to control with complete accuracy, but often produces beautiful accidents"

</comment></comment><comment><USER18> You can buy them from Amazon, including film for around £40.

I think I might buy one, they look pretty cool.

<comment><USER19> They are fun - but it's the film/developing costs that get you.

<comment><USER7> DIY is cheap. And compared to a lot of other things we spend money on, splurging on a few rolls of film is not a big deal. Paper is what will really kill you in the darkroom.

<comment><USER20> That or the highly toxic chemicals, which are probably carcinogenic in some way.

<comment><USER7> Just stay away from the pyrocat. But after 40–something years since I first went into a darkroom, i'm Not really worried.</comment></comment></comment></comment></comment>


Homeland Security monitors journalists - <AUTHOR> http://rt.com/usa/news/homeland-security-journalists-monitoring-321/

<comment><USER2> Anyone here who still believes US isn't turning into a police state? This whole trend needs to be reversed: the Patriot Act, TSA, the militarization of the police, the torture and indefinite detention stuff - everything needs to be reversed before it's too late.</comment>


Ask HN: Is there a product like spotify but for learning with curated content? - <AUTHOR> <comment><USER2> check out audvice.com/en. We're a startup based in Austria and about to launch a crowd-based spotify for university students. the app will be available for download in a few weeks, only in german for the moment but in english in 1-2 months.

would be very curious what content it is that you're looking for?

<comment><AUTHOR> Content across the web should be fine for now.

</comment></comment><comment><USER3> The Great Courses Plus perhaps

<comment><AUTHOR> I am looking more on quick micro content than doing courses.

</comment></comment><comment><USER4> maybe degreed.com (haven't tried it, not sure what they actually do)

<comment><AUTHOR> that was helpful. thanks</comment></comment>


Better Random Number Generation for OpenSSL, Libc, and Linux Mainline - <AUTHOR> https://aws.amazon.com/blogs/opensource/better-random-number-generation-for-openssl-libc-and-linux-mainline/ <comment><USER2> If you work on crypto, or any application where sensitive data is handled, then this short post on the WIPEONFORK option may be interesting:

[http://www.metzdowd.com/pipermail/cryptography/2017-November...](http://www.metzdowd.com/pipermail/cryptography/2017-November/033133.html)

<comment><USER3> How does this work with heap allocation? When you free memory and then allocate it again and get back the same address range, wouldn't the flag still apply to the new block?

<comment><USER2> madvise() works at the page level and if you're using madvise(), then you're expected to be using mmap() to allocate pages explicitly. It would be unusual and a bad idea to start madvise()ing memory that's being handled by an allocator (like malloc).

Of course you could also write a security focused heap allocator that uses these madvise() options under the hood.

</comment></comment></comment><comment><USER4> Before I clicked I was expecting this to be a "random numbers as a service" announcement, based on lava lamps or something.

And yes I know CloudFlare did the lava lamps thing, like a bunch of other people did it before them. But it would be totally inline with Amazon to have a random numbers as a service service to compete with random.org.

<comment><USER2> [http://docs.aws.amazon.com/cli/latest/reference/kms/generate...](http://docs.aws.amazon.com/cli/latest/reference/kms/generate- random.html)

:)

<comment><USER4> Right, but that doesn't use _lava lamps_ or _background atmospheric disturbances_. :)

It said "better random numbers" so I was hoping for something better than KMS random numbers.

<comment><USER5> I think the real value of this software is the fact that it has been proven to perform as designed, both theoretically and in implementation.

</comment></comment></comment></comment><comment><USER6> I had a question about this passage:

>" Firstly, as mentioned, s2n uses the so-called "Prediction resistant" mode, which means that s2n feeds the random number generator with more entropy (from hardware) on every call, as long as the right hardware is available"

Would this be the RDRAND instruction or something else?

<comment><USER2> We use RDRAND if it's available, and we also have our own hardware entropy generators in some systems. In either case, we use this entropy as additional input that provides prediction resistance, and it's fed into the AES_CTR generator. Here's a picture from the blog post:

[https://d2908q01vomqb2.cloudfront.net/ca3512f4dfa95a03169c5a...](https://d2908q01vomqb2.cloudfront.net/ca3512f4dfa95a03169c5a670a4c91a19b3077b4/2017/11/22/s2ndrbg-1024x507.png)

Basically when the DRBG is initialized we start with /dev/urandom and the personalization string. That sets up the initial state, and then hardware entropy is "mixed in" every time the generator is used. Because the mixing in happens before AES is applied, that means that even if either stream of entropy is biased, AES will randomize it anyway (or else AES is a broken cipher!). That means that even if you controlled both inputs, it would still require at least as much computational work as it takes to compute AES to be able to generate a predictable output. That's a nice property of the DRBG construction.

<comment><USER6> Thanks for the clarification and detailed response. Cheers!

</comment></comment></comment><comment><USER7> Glad to see some open source work benefiting everyone, especially coming from the likes of Amazon.

</comment><comment><USER8> This bit is an aside but it's interesting to me: "Earlier this year, with Galois, we completed a proof of our implementation of AES_CTR_DRBG, and formally verified that our code in s2n is equivalent to the written specification." That's amazing! I think it may be the first bit of provably correct code that I'm likely to actually use in practice.

</comment><comment><USER9> > Recently, both the OpenSSL and glibc projects have been looking to replace > their random number generators. They, too, are going with AES_CTR_DRBG, > based in some part on the work in s2n and the availability of formal > verifications that can be applied to code. That's pretty sweet.

I tried to search for this csprng in glibc, but I wasn't able to find anything. Can anyone provide more info?

</comment><comment><USER10> So we mark our super secret entropy memory area WIPEONFORK. Now we fork and our super secret entropy memory area feeding all RNG is all zeroes. We've implemented a Sony RNG!

So we still need to detect forks. Not sure this is entirely the silver bullet this makes it out to be. Maybe fork() is just a bad idea, for any number of reasons.

<comment><USER2> bmm6o's reply captures the approach; you WIPEONFORK a guard variable, and use the state of that variable to re-initialize.

When we're writing a crypto library, like s2n, or OpenSSL, we don't get a choice to avoid fork() ... the application can fork() any time it wants and we just have to be able to deal with it. There have been a few approaches:

* Always feed new entropy on every call (but this isn't always available)

* Use getpid() to detect a fork() ... but this can break because some versions of libc cache the value of getpid(). Another problem is the grand-child problem, where an application can fork(), have have the child start a new process group, then the parent exits, then the child fork()s again ... in that situation there's some chance that the grandchild ends up with the same PID as the original process that started everything (and may have used the RNG).

* To fix that, one clever approach that BoringSSL used for a while was to check both getpid() and getppid(), which signaficantly reduced the likelihood of occurrence but was still probabilistic.

* All sorts of weird clone() flags, that things like language runtimes and virtual machines use, can bypass pthread_atfork and PID changes.

<comment><USER10> What's wrong with setting it DONTFORK and handling the page fault in the process? Someone can still prevent you from correctly handling the fault in the new process, but at least that keeps the RNG in an obvious broken state.

Right now, the <4.14 fallback seems strictly worse.

(Disregarding that this is mostly academic, and that whoever is calling fork() while using your library is unlikely to have spent the same attention to detail when it comes to stuff like ephemeral keys..)

<comment><USER2> I couldn't make this work reliably ... the kinds of applications that call clone() directly and bypass the pthreads stuff are language runtimes and VMs that want to emulate their own lightweight processes. They also have their own page fault handling, and documentation says that behavior is undefined when these things start interacting recursively. It's very difficult for a library to exert control.

At a same time these environments often use native crypto that's implemented in C, for performance, and so it all comes together. Of course the other mitigations present still work, and we're talking about a very very obscure and unlikely set of circumstances, but why leave even a tiny door open.</comment></comment></comment></comment>


Scientists use big data to sway elections and predict riots in the 1960s - <AUTHOR> https://www.nature.com/articles/d41586-020-02607-8 <comment><USER2> I'm curious about this code the way hardware peeps are curious about the Apollo guidance computer. haha.

</comment><comment><USER3> They seem to take the exact wrong message from the history. The complaints about Simulmatics are sheer anti-intellectualism, saying that doing it by hand is aokay but using math and suddenly you are the next Hitler. They take a scolding "You should have learned from this!" tone yet their precedent suggests the opposite conclusion and really implies the objectors are hysterical idiots.

<comment><USER4> It's not anti-intellectual to say that arguments based in moral philosophy and ground-level polling hold their weight against a simulated outcome.

The whole premise of predicting through data is one based in rendering legible that which is not, creating order from chaos. This means that it does equally at well at reinforcing biases as it does at revealing truths, because if you really want a certain kind of answer, you will find a way to make the data reflect it. Just look at automated stock trading, for one. It's easy to make it work in back-testing, and then it goes live and the market does something totally different. Grip sand too tightly and it will simply slip through your fingers.

<comment><USER3> What moral philosophy? I saw only rationalization in the article that failed to articulate the difference.

"Burdick warned, their very lack of interest in contemplating the possible consequences of their work stood as a terrible danger. Indeed, they might "radically reconstruct the American political system, build a new politics, and even modify revered and venerable American institutions — facts of which they are blissfully innocent".

That description could apply equally to any activist advocating for change. It is vacuous in that sense as it applies to civil rights activists, monarchists, utopian reformers seeking technocracy, communism, or some other bizzare system.

Plus calling people war criminals just for doing math? What is anti- intellectualism if not damning people for trying to understand complex systems because they might use it for evil?</comment></comment></comment>


You Can Encrypt Your Face - <AUTHOR> https://thenewinquiry.com/you-can-encrypt-your-face/ <comment><USER2> not sure how much i feel this is encryption as it is obfuscation</comment>


Ask HN: In terms of employability python or ruby? - <AUTHOR>

Hi,
I'm currently a studying computer science and hoping to enter the workforce very soon, at the moment I've only coded with java and php.
But in terms of employability php looks very crowded and I much like the idea of startups utilizing the latest web technologies.
Anyway if I were to have the best chance of being employed when I finish uni should I learn python or rails?
Thanks a lot. <comment><USER2> In my neck of the woods (north eastern america), more startups are using ruby than python for their core products.

That being said, I havent seen many ableminded hackers turned away from a startup. Fast learning is usually more of an asset than early/mid-level knowledge in a field.

In the end, the best way to find out would be to check out a local meetup in your area, and talk to some startups there.

<comment><AUTHOR> Sweet as, thanks for the advice.

<comment><USER3> Kiwi?

[edit: read your profile. Actually Aus]

was going to comment that neither python nor ruby are that great if you are looking for jobs in NZ. There are more options with php, and if you are good at what you do it won't be that hard to destroy the other candidates. Java and .net will give you a lot more, better paying options.</comment></comment></comment>


Ask HN: How likely is it quantum computers will become "real" consumer devices? - <AUTHOR> And if yes, in what time frame?<p>Or are they more of a fusion energy type thing - always 50 years away. <comment><USER2> They are probably too dangerous to be out in the public as consumer devices if certain cryptographic realms are not updated to using post-quantum techniques. I am sure that will be up for debate soon.

</comment><comment><USER3> According to D-Wave you can already buy one.

</comment><comment><USER4> there is much work to be done before quantum computers hit the market</comment>


Ask HN: Do you have a public metrics screen and how did you build it? - <AUTHOR> Our nascent sales team have responded pretty well to having their numbers up on a big public https://github.com/evolvedlight/pydashie overview next to their main huddle area.
Having hacked it together out of the first thing I found in a lazy evening I can't help but think there must be more exciting options.
Does anyone here use similar 'big boards' and more importantly are there any other solutions you like? (back-end agnostic preferred) <comment><USER2> We use Grafana on top of Graphite for everything. It's great as it has plenty for tech types but is easy enough for management to use effectively.

</comment><comment><USER3> We had unpaid interns manually running SQL queries during their lunch break against our transactions table and then lighting one of two beacons based on the data we get back: the purple flame (if we have a revenue increase) or the red (meaning our dark lord Zy'kul has finally awoken)

</comment><comment><USER4> We've put one together very quickly using the data visualization widgets from Keen ([https://keen.io](https://keen.io)).

Another option is the awesome Static Board app made by Panic ([http://panic.com/statusboard/](http://panic.com/statusboard/)). Note that you'll need an iPad to project it.

</comment><comment><USER5> My last company used [https://www.geckoboard.com/learn/dashboard- examples/](https://www.geckoboard.com/learn/dashboard-examples/) on a large screen TV</comment>


Crowdbooster (YC S10) Launches Twitter Analytics with a Twist - <AUTHOR> http://mashable.com/2010/11/17/crowdbooster/

<comment><USER2> I started using this app myself at about the time I started using Twitter, and it has helped me to understand Twitter a lot better. It's quite interesting how different types of tweets spread. E.g. this tweet

<http://twitter.com/paulg/status/27959363780>

got a large number of retweets but had a comparatively small total reach because it was retweeted mostly by hackers, who didn't have many followers. Whereas the retweets of this one

<http://twitter.com/paulg/status/25998745559>

generated a much larger total reach, presumably because it was about Twitter itself, and thus was retweeted by some community insiders who had lots of followers.

Maybe my experience is unusual because I happened to start using both at the same time, but I couldn't imagine using Twitter without Crowdbooster.

<comment><USER3> What's interesting about "reach" though is that it seems not correlated with influence, as in the test done by Christakis and Fowler [http://edition.cnn.com/2010/OPINION/11/16/fowler.christakis....](http://edition.cnn.com/2010/OPINION/11/16/fowler.christakis.tweeting/) So maybe your 1st tweet had much more "impact" (>number of retweets could already indicate that btw) even if much lower reach.

A 2cts idea on impact ('did it resonate with your crowd or cross the board'), staying on twitter (vs. if people did sthg you recommended to do like in their study 'buying a book') could be to see the n degrees of cascade retweets. Ie. if your direct follower retweet that's "level 1 retweets" if some of their own follower retweet "level 2 retweets" etc. to see if there is a cascade effect or not.

</comment></comment><comment><USER4> Sounds good. I've signed up for the Beta. I'm a stats whore, as are, probably, many Twitter power users.

I guess the monetisation is pretty obvious - charge businesses for analytics - though I wonder how they'll tier the pricing. After all, many tiny, broke businesses are very active on social media, so activity won't be a good way to split it...

<comment><AUTHOR> Thanks for the interest!

We're starting with just a free version for consumers and one price all for paid users. Our first paid feature is reporting, which at $200/mo makes sense for any business which currently has an employee spend hours compiling Twitter reports by hand. In our many conversations with businesses, we found this to be surprisingly common, and just as painful as you might imagine.

When we add additional paid features, we might add additional tiers of pricing depending on what makes sense for those features, grandfathering in old customers as appropriate. For now and the foreseeable future, there is just one price.

</comment></comment><comment><USER5> Awesome! I have been using this for a while now and it really lets you look deep at your tweets and understand their individual impact as well as notice patterns in your tweets.

</comment><comment><USER6> Congratulations Crowdbooster team!

These guys are awesome, they helped a lot of companies out already with their social media optimization.

</comment><comment><USER7> Wow, another twitter analytics product... Their customers (companies) should not be solely focused on their twitter reach. I think an interesting feature would be to see the influence that twitter has on Facebook sharing and vice- versa. Besides, how many small businesses's are able to make $200 ROI each month by taking a look at a few graphs which tell them what they already know?

<comment><AUTHOR> Our initial paid offering is priced based on back-of-the-envelope estimates of how long it takes a full-time employee to manually create the reports we generate, and what these employees are typically paid. For these brands, the benefit they see from social media is quite large, as evidenced by their willingness to spend on dedicated headcount or equally expensive consultants.

It's true that not every business is investing this much in social media now; we think this will change dramatically over the next few years, in part because products like ours will make it more apparent what the ROI from effective social media campaigns can be.

</comment></comment><comment><USER8> Been using this ever since I met the guys at Startup School. Awesome dudes, awesome product. I use it daily. :)

</comment><comment><USER9> Congratulation on the launch. I can't help but make this comment as the first impression I got on the design is that it is similar to a site I know. ( Let me mention that I am no designer). Here is the site <http://www.sheamediaco.com/>

</comment><comment><USER10> This looks nice, but why do so many online services have a delay between signing up for a beta and actually getting access? It is incredibly annoying.

The situation would be improved if you could tell me when to expect the invite instead of a vague 'soon'.

<comment><AUTHOR> Thanks for your interest! And our apologies for the delay in sending out invites.

For us, it's actually really important to let people in slowly. A new user signup is the most expensive event for our infrastructure by a huge margin, since we do lots of queries to Twitter and lots of additional number-crunching behind the scenes. A big, sudden burst of signups, especially if it included several big Twitter celebrities, would result in a bad experience for everyone. We've been getting a very healthy number of signups so far, but we will try to invite everyone in within the next couple weeks.

<comment><USER10> Thanks for the reply. I understand the need to index and pre-process the data, but 'within the next couple weeks' is good to know, vs a vague 'soon'. I look forward to it.

</comment></comment></comment><comment><USER11> "signup" is not signup. this is just collecting your email. not giving you access to the apps.

</comment><comment><USER12> Sweet, congrats to Ricky and the team!

</comment><comment><USER13> The graphs look great (and actually useful). Does anyone know what they're using to make them?

</comment><comment><USER14> Congrats guys! Looks great.

</comment><comment><USER15> Crowdbooster.com SEO is all wonky. First result for crowdbooster: blog.crowdbooster.com. Second result: a URL with GA cruft. Third result: specific blog post. Then nothing.

edit: Oh, on their homepage it says they changed names from Conversely to crowdbooster on three days ago. Maybe things haven't had time to adjust.

      domain:                          crowdbooster.com
      created:                         11-Nov-2010

<comment><AUTHOR> We just moved to the crowdbooster.com domain (formerly converse.ly) and re-did our landing and about pages in the past few days; SEO is definitely something we need to look at soon. We're loyal GinzaMetrics (YCS10) users so that should help us fix everything pretty well!</comment></comment>


A typical Node.js app is orders of magnitude faster than python3 app - <AUTHOR> https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/node-python3.html <comment><USER2> I guess I'd like to see results using Pypy as well as CPython, since comparing an interpreter with the node.js runtime seems it only proves an obvious point: a JIT will usually outperform an interpreter.

(Except where it doesn't, as in some of these cases)

<comment><USER3> > I'd like to see

Here's the source code for all the programs, go measure :-)

[https://salsa.debian.org/benchmarksgame- team/benchmarksgame](https://salsa.debian.org/benchmarksgame- team/benchmarksgame)

> an obvious point

No:

a) you're just assuming that everyone has seen what you personally have seen

b) as you noticed - except where it doesn't - so what's the "obvious" explanation?

<comment><USER2> Well, sure I could go do that measurement myself, but it'd make more sense to have the results in one place?

A) my assumption is more that people understand the difference between a pure interpreter and a JIT. Clearly there's value in showing the results regardless, but there'd be more value in comparing with a JITed Python runtime as well?

B) The obvious bit is that a JIT such as V8 will generate, compile, and use native code segments vs CPython's interpreter.

There's plenty of use in the current results, but it just seemed to me they could be fairly easily made more useful re-running with Pypy in the same environment.

<comment><USER3> > …it'd make more sense …

[https://benchmarksgame- team.pages.debian.net/benchmarksgame/...](https://benchmarksgame- team.pages.debian.net/benchmarksgame/sometimes-people-just-make-up- stuff.html#maintenance-burden)

Not if you're the person who would have to do the work ;-)

> …my assumption is more that people understand…

Bad assumption :-)

> The obvious bit is that…

The question was — what's the "obvious" explanation for those cases where Node is not faster?

<comment><USER2> > Not if you're the person who would have to do the work ;-)

I think it'd still make sense, but I understand it might not be something that you'd consider worth doing :-)

> Bad assumption :-)

I'm kinda prepared to live with that.

> The question was — what's the "obvious" explanation for those cases where > Node is not faster?

I don't think there is an obvious explanation for those cases. They're the surprising, and interesting, results. The cases where a JIT beats an interpreter are to be expected.

But ok ... I can bite. In general, I'd expect Node to thrash Python on anything that doesn't fall through to a C implementation.

The regex results suggest that the bulk of the performance comes from the underlying regex implementation, so the relatively small difference there is probably just Python's string handling, maybe some startup time, etc.

The binary trees result is curious, but without looking at the code, hard to guess.

k-nucleotide shows a lot of memory usage in Node (vs Python), which might contribute to the closeness of the results? JIT not winning much again. is Python using some C module here?

reverse complement has similar time, memory usage, and CPU loading. not sure what the content is, but the JIT's clearly not doing much here. similar to the last one.

pidigits shows a clear win for Python. Pretty odd. I'd likely look into the implementations of this one before going much deeper.

I'm not sure I've intrigued myself enough to actually attempt to duplicate your setup, but it is winter here ...

<comment><USER3> > I'm kinda prepared to live with that [bad assumption].

Seems like _el_programmador_ 's follow-up question shows how bad.

> …a clear win for Python…

> …fall through to a C implementation…

The obvious explanation.

> …without looking at the code … likely look into the implementations…

The source code is one-click from the page _el_programmador_ linked.</comment></comment></comment></comment></comment></comment>


Security blogs - <AUTHOR> https://github.com/kaizensoze/security-blogs <comment><USER2> That's a great list. Thx for posting this.

<comment><AUTHOR> Sure thing! Pull requests welcome!

<comment><USER3> The usual suspects, I see.</comment></comment></comment>


Awesome graphical demo written in 8.5k of Atmel assembly (vid) - <AUTHOR> http://www.demoscene.tv/prod.php?id_prod=13233 <comment><USER2> Awesome indeed, for 8.5K of assembly, but I prefer the Advanced Beauty stuff: <http://news.ycombinator.com/item?id=253027></comment>


Why is it so hard to find a file in Ubuntu? (2011) - <AUTHOR> https://superuser.com/questions/340615/why-is-it-so-hard-to-find-a-file-in-ubuntu <comment><USER2> The only criticism I could have of Linux filesystems is that user mounted devices show up in /run?/media/<user>/<device> rather than ~/media/<device>. Otherwise everything a user does or makes is showing up under ~ somewhere, and the superuser's stuff resides in a mix of /etc, /root, and /usr.

Well, I'll take that back, the fact the config folder is hidden by default is also kind of sucky, and the habit of some software putting configuration data in ~/.local/share and some applications putting non-config data in ~/.config is extremely annoying but should be solved on a per-application basis.

Just a few offenders on my desktop in config:

* Chrome/ium stores extensions in .config rather than share. Those take up 600MB each in my config folder on my system.

* Qupzilla has a profile network cache of 32MB in config.

* Brackets has 14MB of cache data in config.

* Clementine puts its indexing databases in config.

* Spideroak puts everything in config - its index database and snapshots.

I'm not as familiar with offenders putting configurations into share, but I know at least KDE's kscreen puts monitor layouts in share/kscreen when they belong in config/kscreen.

I'd like to see Ubuntu, Arch, or Fedora (the big distros with the market share to push for best practices) enforce disk quotas on config directories - ie, a program cannot use more than 5MB of space there, akin to localstorage's limit and the intent to use it as a config store rather than persistent data store which is what indexdb / share are.

Also, .config should just be config. No dot. Users need to configure their stuff, they should be able to see it.

<comment><USER3> I have never had to edit anything in .config in decades of using Linux. Dotfiles are hidden for a reason, you shouldn't have to edit them by hand very often, and most heavy applications (e.g. Chrome) have their own configuration interface that will edit them for you. I think the . is a fine convention for easily separating configuration space from work/project data space.

<comment><USER4> Hidden from whom? Regular users? Very few regular people are using Linux or any variant of Unix other than OS X on a desktop. Those of us who install Linux are the kinds of people who are most likely to mess with deep system settings anyway.

Even my kids go into their .minecraft directory to install mods.

<comment><USER2> In defense of your kids, Minecraft hides the mod folder on every OS behind a hidden directory. Its actually easier to get to (albeit violating file system standards) to have it in ~/.minecraft vs on Windows you needing to figure out where your AppData folder even is (it varies on release) and then unhide it or browse directly to it.

<comment><USER5> _> on Windows you needing to figure out where your AppData folder even is (it varies on release)_

I believe "%appdata%" is symlinked to the AppData folder on every version of Windows Minecraft runs on.

<comment><USER2> Which is the point - you are now starting to try to make kids understand what symbolic links are or even how to input those in Windows Explorer. Just saying "open file manager, hit f8, go to .minecraft" is actually a usability improvement for kids.

<comment><USER5> Every minecraft guide explicitly says to open file manager and navigate to "%appdata%" often with pictures of where to even input "%appdata%".

I knew what symlinks were but never knew Windows had them. I only learned about %appdata% from a youtube video made by a 11-13 year old kid about how to install a mod for Minecraft. They don't need to know what a symlink is or where their .appdata folder is to know how to navigate to "%appdata%".

The young ones are a bit more tech savvy than adults are giving them credit for. Are they pandered a bit without having to know as much about the internals and how things work? Sure. But they're able to navigate and follow instructions because _they 've literally been doing it their entire lives_.

Many laptops don't have a dedicated function row ("F\d" not FN) keys. So "F8" might serve to confuse some people who have had the privilege of only ever owning a laptop (I know a few of these teens myself!)

<comment><USER6> It's not just laptops. Many new keyboards ship with a laptop-like function- lock key that re-enables the functions you're actually seeking when you hit what you think are the Fn keys.

<comment><USER5> Or if you're like most people I've met... you have no idea what FN, Alt-Gr, or the menu key even are.

My point was more about not knowing what those are rather than the keyboards that lack them or have alternative inputs.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> Coming from a Windows background, I can understand the initial learning curve in getting used to the Linux filesystem. I still don't quite grasp it all myself.

With that said, who the hell goes looking for stuff in C:\Program Files? The exe's live there, but most Windows programs create shortcuts on the Desktop/Start Menu, so you're rarely going to go into the program's directory itself unless you need to modify a .INI file.

<comment><USER8> I suspect that the question is just poorly worded - I think he meant to ask "why are programs in linux so hard to find" (if you look at his other questions they are not mega technical but they are also not questions that a novice would be posting)

<comment><USER9> I suspect this too. Still, who goes to Program Files to find _programs_ in Windows? I've seldom seen this. Most Windows users I know start programs either from desktop shortcuts or from the start menu, and wouldn't know their way around Program Files (note: I'm talking about Windows XP, 7, etc. No idea how the newer Windowses work).

<comment><USER10> I don't think he is looking to execute the programs. He is looking to inspect the program files. This could be anything from looking for assets, to manually editing config files or adding a cracked DLL to make photoshop run.

When I was a teenager I would lurk around there a lot to "hack" stuff.

<comment><USER11> Indeed. Also, assuming you're installing programs to their default locations, Program Files used to be[0] the single location where you could get an accurate overview of installed applications. Both the Start Menu and Add/Remove Programs lists are _way_ too cluttered by various Windows additions and/or third-party bullshit.

[0] - I don't know how's the situation with Windows 10, but on Windows 8 I've noticed some stuff tends to install to %APPDATA% instad.

</comment></comment></comment></comment></comment><comment><USER12> Ubuntu actually does make it hard to find files. Is it in /usr/bin? /usr/local/bin? /bin? /sbin? /etc/bin? /opt? /god-knows-what-directory?

Honestly, on linux, there should be /usr/local/bin, which is never touched by system management, for source installations, /sbin for emergency recovery tools, and /usr/bin for EVERYTHING ELSE. This is pretty much the only thing that fdo got right.

<comment><USER13> for executables, use which <name>

for everything else, use mlocate

sudo updatedb

locate <name>

I don't see how that's hard at all.

<comment><USER14> Why should anyone need to have admin privileges to find a file?

<comment><USER15> From the updatedb manpage:

 _updatedb is usually run daily by cron(8) to update the default database._

Also:

 _To create a private mlocate database as an user other than root, run_

        updatedb -l 0 -o db_file -U source_directory

_Note that all users that can read db_file can get the complete list of files in the subtree of source_directory._

</comment></comment></comment></comment><comment><USER16> Interesting. I think the posts contains a lot of useful information, however I believe this kind of response is detrimental toward user acquisition.

It's very much akin to the tech guy walking into a sale's person's office, to fix their immediate need. The tech guy is thinking all he has to do is teach the person to think for themselves, problem solved. All the sales guy is thinking is is "oh god, please don't teach me anything".

Personally I find locate and slocate very useful in linux to find the files I am after. Going over these might be more useful. That or whatever third party tools are available, with a UI and good UX, to achieve a similar goal.

<comment><USER17> The response is also abrasive bordering on condescending. The tone is very much along the lines of "what are you, stupid?" Even though they answer the question in quite some detail, that's really not the kind of thing that makes others be willing to open up about what they don't know and get better.

The Filesystem Hierarchy Standard is a very different approach to storing applications on the filesystem than to how MS-DOS/Windows does it. There's a learning curve for Windows users and they do get confused. They conceive of all files for an application residing in a single directory dedicated to that application, whereas the FHS thinks of distributing files for an application according to purpose.

I agree - I find locate to be very useful, and failing that grep/find.

</comment></comment><comment><USER18> I would pose a more general question, why is it so hard to find a file in Linux? Across all distributions I've found in difficult to predict where a particular binary or configuration file will be, and this is one of the reasons I prefer BSD (NetBSD in my case) -- the file system feels much more organized and the locations are predictable.

</comment><comment><USER19> Dunno, I personally think Linux has a much more organized and common-sense file structure than Windows. The home folder keeps most user data in a nice, organized place, and generally programs installed from the repos are in a consistent place. Sometimes 'installers' put programs in strange places, but that's the price of freedom I guess...

<comment><USER20> That programs and libraries get installed in a consistent place is nice in some ways I guess, but for me it's always been terrible, since it's more often than not really hard to install multiple versions of the same program or library (and therefore two programs using different versions of the same library. The hairier programs can't even be built from sources on "the wrong OS version" by most mortals, not to mention installing binaries; try building KDevelop 3 on an OS where only KDevelop 4 is made available by default.)

Another maddening thing is how Linux distributions can't agree on where any bloody thing is - even env, which in large part serves a workaround for the inability to count on absolute paths, is at /usr/bin/env on some distros and /bin/env on other distros. So is something as basic as tcsh. How to write a portable tcsh script in these conditions I don't know. (And "you should use bash" misses the point, and also brings fond memories of #!/bin/sh script breakage when it turned out that sh is bash on some systems but dash on others.)

Bill Gates said in the 80s that there are many different Unixes and this will remain a problem for a long while. Damn, did that man make a good prediction! As to Linux - Richard Stallman said that it's a kernel, not an operating system. Damn, did the various distributions go out of their way to prove him right, creating many different, not Unixes, but Linuxes!

</comment></comment><comment><USER21> I think the underlying problem here is the expectation that you, the user, should be able to find stuff by looking "in" particular places. This is perfectly reasonable if you're dealing with a fairly limited set of files or executables, but that era has been slipping away for the last 5 years or more.

It is no surprise that the question comes from 2011. I believe that was near when Unity came out and Ubuntu did away with mouse menus to find "Programs" in favor of just searching for what you have. A lot of folks did not like it at first but I think its no longer an issue.

<comment><USER22> >A lot of folks did not like it at first but I think its no longer an issue.

The sudden popularity of Mint and ElementaryOS at the time of Unity tells me its still an issue. Those who care just left. Personally, I couldn't use Unity on a daily basis for this and other reasons.

<comment><USER21> OK, but even now Windows folks have largely given up on pressing <windows>/<All Programs> and looking for what they want.

There's simply too much stuff on a typical computer these days for a user to pick out what they want from a dropdown, yes, even if nested.

It is the same problem that Yahoo once had back in the day when it tried to "Categorize" the internet. At some point such attempts at categorization break down and you gotta look at more sophisticated strategies for search.

<comment><USER23> Well, I think this is sort of where Spotlight on OS X came from. Spotlight was pushed pretty hard when it came out as the new way to interact with your files, and for the most part it has lived up to its claims, allowing you to search concepts or text within a file and get nigh instant results, and it has only gotten better with SSDs now being default in so many Macs.

Of the users I've worked with over the last 10 years, many older users still hang on to rigid folder hierarchies, but I have noticed some users who are used to Spotlight and the faster Windows searches doing away with these strict hierarchies in favor of just a really well indexed search.

</comment></comment></comment></comment><comment><USER24> The major difference between Program Files and, say, /usr, is that the former is split up according to "which program it belongs to" and the latter according to "what kind of file it is". Each scheme has its merits, and both are quite fuzzy ("is this helper a part of my program, or standalone?" "should this asset go in 'share' or 'lib'?").

Interestingly, the /nix/store directory on NixOS is split according to package, so acts rather like Program Files. However, I try to keep my browsing of /nix/store to a minimum, since it currently contains ~25000 top-level directories. Search (eg. wildcard paths) is still necessary, even with this level of categorisation!

</comment><comment><USER25> Usually I install packages wherever they go by default but if installing by hand I put it in the home folder and run it from there. Most programs are under /usr though, but it's true you never know.

I had to give up on Linux as a daily driver due to my fairly complex (multimouse, multimonitor) desktop setup. I suspect that some of the X11 code hasn't been touched in 20 years. This is why OSX and Windows make sense. For the user in the OP, the $100 or so dollars may be money well spent if that works for him. After much hacking I figured it's not equipped to handle my setup but I use it as my development platform and server both servers via SSH.

</comment><comment><USER26> Is just that you are not using your OS correctly. Learn a few commands of bash and you'll never look back.

... Or just create a link in your desktop pointing to the desired file or dir. Is ironic to say that files are hard to find in the first SO that allowed you to have as many soft and hard links to a file in your desktop as you want.

... Or browse the files in your file manager. In many cases you can even have thumbnails to help you finding the photos or videos that you want.

... Or just open firefox, write "file:///home/my-user-name" and browse your files. when "my-user-name" is the real name of your user

... Or use the main menu in your desktop

... Or use emacs dired and tumme

</comment><comment><USER27> The "problem" is much more prevalent than people think. Switchers come from Windows to Mac and expect it to function exactly like Windows. When it turns out Mac has its own ways of doing things, they're disappointed. It doesn't matter that quite often the "Mac" way of doing things is actually better or at least more consistent, they just expect it to be exactly like Windows. Well, guess what, folks, you can "drill with a saw and saw with a drill", but you shouldn't expect a good user experience unless you use the tools the way they are meant to be used.

</comment><comment><USER28> Read the first chapter based on linux in 'Counter Hack reloaded' by Ed Skoudis. yes the book is focused on security however after reading it I found the file system in linux makes far more logical sense to me than windows.

from a big picture perspective. [http://www.ubuntugeek.com/linux-or-ubuntu- directory-structur...](http://www.ubuntugeek.com/linux-or-ubuntu-directory- structure.html) (taken from the article)

on a side note I added links from that page that are useful

my own .02 cents is: >updatedb

>locate xyz.xyz

</comment><comment><USER29>
        which <executable>

        dpkg -L <package>

will find anything that's in program files.

i think this is a really good post, though, b/c it demonstrates something that happens when we use engineered things on all levels: "different" is (perhaps falsely) equated with "difficult."

i suppose it would be possible to make a package that uses FUSE or something to provide a /prog_files with a similar directory structure to what a windows user would expect, but... nah : )

</comment><comment><USER30> It wasn't easier under Windows. Either the badly configured indexed search or the hard to find, slow tree walk. It's gotten usable by win10 I think.

</comment><comment><USER31> I wish I'd seen something like this when I first started using ubuntu. As with most things linux, it's very sensible if you know what to look for (which is the hard part).

</comment><comment><USER32> I don't agree that it is so much easier to find a file on Windows, but yeah searching for files on Linux could be a lot more user (or new user) friendly.

</comment><comment><USER33> The answers to this are condescending and terrible.

<comment><USER34> Is the question any better?

<comment><USER33> I'm not interested in that, personally. But this strikes me as the Linux version of "You're holding it wrong." ( [http://www.engadget.com/2010/06/24/apple-responds-over- iphon...](http://www.engadget.com/2010/06/24/apple-responds-over- iphone-4-reception-issues-youre-holding-th/) )</comment></comment></comment>


A Much Needed Etiquette for Sharing Hacker News Links - <AUTHOR> https://firstname.lastname@example.com/a-much-needed-etiquette-for-sharing-hacker-news-links-39bc06f29bff <comment><USER2> It'd also be nice to explain what the project you're announcing is in the the link title.

For example, "Foobar v2 released!"\- except, I have no clue what foobar is and I'm probably not the only one.

"Foobar- The Magnificent Music Player for Linux, v2 just released!" Would be way better.</comment>


Eyewash': How the CIA deceives its own workforce about operations - <AUTHOR> https://www.washingtonpost.com/world/national-security/eyewash-how-the-cia-deceives-its-own-workforce-about-operations/2016/01/31/c00f5a78-c53d-11e5-9693-933a4d31bcc8_story.html <comment><USER2> > during a five-year probe of the CIA's use of harsh interrogation methods

"Harsh interrogation methods", the latest euphemism for "torture except it doesn't count as torture when a Western nation does it".

<comment><USER3> That's very cynical. In reality, that probe was examining things that might be too harsh to be legal, but not necessarily extreme enough to fall under the category of torture.

One example is verbal threats. Those aren't really "torture" (using the most common definition), but they shouldn't necessarily be legal.

They were also investigating waterboarding, even though it wasn't considered torture in the US at the time. The Obama Administration now officially classifies it as torture, but it's good that waterboarding was examined _before_ that reclassification was officially made.

There is a terrible injustice here, though, and it doesn't have to do with definitions. It's that the aforementioned probe supposedly found no wrongdoing and led to zero criminal trials.

<comment><USER4> No. The resulting report of that probe details many instances of torture.

> At least one prisoner was "diagnosed with chronic hemorrhoids, an anal > fissure and symptomatic rectal prolapse," symptoms normally associated with > a violent rape.

> One prisoner was placed in a box the size of a coffin for over 11 days and > was also placed for 29 hours in a box 21 inches (53 cm) wide, 2.5 feet (76 > cm) deep and 2.5 feet (76 cm) high.

> One detainee was subjected to "ice water baths" and 66 hours of standing > sleep deprivation. He was later released as the CIA had mistaken his > identity.

[https://en.wikipedia.org/wiki/Senate_Intelligence_Committee_...](https://en.wikipedia.org/wiki/Senate_Intelligence_Committee_report_on_CIA_torture#Examples_of_torture_and_abuse_of_prisoners)

<comment><USER3> That has nothing to do with what I said. I never denied that the probe found torture. In fact, at the end of my comment, I lamented that no one was held accountable for all the torture the report found. That's why I used the word "supposedly" \-- because no one was accused of a crime. You misunderstood what I said (or you didn't read it).

My comment was that the probe investigated a spectrum of crimes, including things that were less than torture. That's a good thing. There are many acts that are unacceptable (threatening someone's family was my example) even though they aren't defined as torture by anyone.

<comment><USER4> I thought you were taking issue with the parent's comment that "enhanced interrogation techniques" is a euphemism for torture. We're on the same page then.

</comment></comment></comment></comment></comment><comment><USER5> I can understand the need for compartmentalization, but why send the false information at all? Why not just send the real cable to the select few who need it, and not send anything on the regular channel?

<comment><USER6> If the recipients of fake information are properly logged then it becomes much easier to track down leakers. If only one group of people received a piece information and then a leak includes fake information that was only given to a particular group then it gives a pretty strong indication that the leak originated from that department.

<comment><USER7> Perhaps, but there's an important difference between changing minor details to trace leaks versus "We are not at war with Eurasia."

</comment></comment></comment><comment><USER8> Breaking news: spooks lie to and distrust everyone.

<comment><USER9> The actual spooks were terrified by that program. People who do espionage take things like reputation and honor very seriously. They understand the implications of that program for people in the field. The problem is that 99% of the people at cia/nsa/state are not anywhere near the field, nor do they every talk to field people. That program was a decision make by armchair spies with no appreciation of history, no respect for the profession.

<comment><USER10> Source?

<comment><USER11> Start with "see no evil" by Bob Baer

<comment><USER10> Thanks!

</comment></comment></comment></comment></comment><comment><USER10> I always assumed that this is how sensitive compartmented information worked?

And that old yarn about lying to Congress — well... [http://www.hasjamesclapperbeenindictedyet.com/](http://www.hasjamesclapperbeenindictedyet.com/)</comment>