hacker news with inline top comments    .. more ..    4 Aug 2014 News
home   ask   best   5 years ago   
Extracting audio from visual information
66 points by r0h1n  1 hour ago   17 comments top 9
petercooper 49 minutes ago 1 reply      
And now think of how much high definition video, CCTV, and other forms of recordings already exist.. and then think about running large collections of pre-existing video through such algorithms, along with the best speech-to-text in the business. You could have a whole new Wikileaks on your hands :-)
adriancooney 16 minutes ago 0 replies      
This is amazing. Imagine taking high definition video of a crowd of people. You could pick out objects nearby and hear what individuals are saying. You could nearly produce a 3D auditorium by sampling different points in a video. Couple this with a 3D camera and an Oculus Rift, you could have something incredible.
sp332 11 minutes ago 0 replies      
This is from the movie Eagle Eye, right? The evil computer watches the vibrations in a cup of coffee while someone is speaking.
FatalLogic 23 minutes ago 0 replies      
It's reminiscent of the laser microphone, which measures sound-induced vibrations in objects by bouncing a laser off them, and reconstructs the original sound waves


lucb1e 30 minutes ago 2 replies      
It doesn't seem to mention what kind of camera you'd need to do this at the mentioned distance (15 feet). I'm assuming it's at least a couple thousand bucks, or maybe even so expensive that most professional photographers won't have it, but does anyone actually know? Or did I miss it in the article?
jbaiter 47 minutes ago 1 reply      
Am I the only one who isn't getting any audio from the video at all? I tried in two different browsers, downloaded the video with youtube-dl and tried to play it with mpv, everything to no avail, it's just a video with no sound.
supahfly_remix 1 hour ago 2 replies      

  Because of a quirk in the design of most cameras sensors,  the researchers were able to infer information about  high-frequency vibrations even from video recorded at a  standard 60 frames per second.
Can anyone explain what this quirk is?

ColinDabritz 1 hour ago 0 replies      
This is a beautiful hack in best tradition of the term.
tferraz 1 hour ago 0 replies      
This algorithm is really incredible, I can only imagine the improvements to this in 20 years
The Mobile Web should just work for everyone
26 points by wfjackson  31 minutes ago   14 comments top 6
ntakasaki 3 minutes ago 0 replies      
Edit: The previous title was "Windows Phone's IE starts masquerading as mobile Safari to render pages properly"

Looks like the webkit prefix tags are creating the new IE6. As usual, it's the web developers fault for not updating their CSS prefixes.


Mozilla, Opera and Microsoft have been complaining about this and Opera had already implemented support for the webkit prefixes(before switching to webkit/Blink entirely) and Firefox-OS will probably follow.

iron_ball 12 minutes ago 2 replies      
"In general, our advice is to develop a responsive site that can adapt to the capabilities of different devices. If you choose to build a mobile-specific experience then we recommend looking for the sub-string "mobile" in the user agent string to determine when to deliver mobile optimised content:"

    function isMobile() {        return navigator.userAgent.toLowerCase().indexOf("mobile")>=0;    }
This is really the best we can do after twenty years of the WWW?

droopybuns 5 minutes ago 0 replies      
Poor Windows Phone team.

This is a symptom of the ecosystem's indifference to the windows phone platform.

Browser vendors implementing hacks to trick web apps into presenting the right content because web developers have learned that they can't rely on the browser to render content properly.

I think there's a lesson in here about treating your ecosystem right.

ChrisClark 7 minutes ago 0 replies      
Isn't this basically the state of the User Agent strings across all browsers? The strings are a messy combination of different browsers, versions and rendering engines.
nailer 11 minutes ago 4 replies      
Anyone know what the IE11 update User Agent actually is, merely out of curiosity?
higherpurpose 19 minutes ago 1 reply      
And the title will be changed by mods in 3...2..1...

even though I think it's the more appropriate/non-misleading one.

Sweden just claimed the worlds second-largest Wikipedia
54 points by lelf  2 hours ago   28 comments top 10
arketyp 2 minutes ago 0 replies      
Before Wikipedia there was a Swedish collaborative encyclopedia called susning.nu [1]. It eventually shut down due to problems with vandalism and in the meantime sv.wikipedia had grown larger. I suspect a lot of articles were migrated to wiki from susning, or in the very least the community did. Interestingly, susning roughly translates to grasp, as in a short format understanding.

[1] http://en.wikipedia.org/wiki/Susning.nu

_delirium 1 hour ago 2 replies      
I'm not sure I'd say it's the 2nd-largest. Second-most articles, yes, which is a different metric. Total size of an encyclopedia has to include not only the number of headings, but how much text is under them! For traditional paper encyclopedias, something like word-count is typically used, though that is tricky to use across languages, since languages have different notions of what constitutes a word (and different information rates, if you want to get into that). Something like "compressed size of the database" might be an approximation for encyclopedia size that normalizes for different languages' use of words & UTF-8 bytes.
a3_nm 56 minutes ago 0 replies      
The number of articles is a terrible metric of the quantity of content of a Wikipedia. A far better way to measure this is to look at the size of the data dumps of http://download.wikimedia.org compressed so as to normalize differences in information density between languages).

(Shameless plug: I tried to do that three years ago http://a3nm.net/blog/wikimedia_projects_by_size.html -- it could probably be done again today, though the code would probably need to be refreshed a bit.)

igravious 57 minutes ago 1 reply      
> And it certainly doesnt know that there are only 9 million people around to read its output, versus the 75 million who speak French, or the 78 million who speak German.

Minor nitpick: https://en.wikipedia.org/wiki/List_of_languages_by_number_of...

FR: 74m

DE: 89m

That's assuming Wiki P is correct-ish and that page is not some Teuto[+]-bot generated nonsense

[+] https://en.wiktionary.org/wiki/Appendix:English_nationality_...

lucb1e 36 minutes ago 1 reply      
Why actually spend all this effort on localized Wikipedia articles? Like someone commented, many people read the English Wikipedia because it contains more info. At least I do, I know most peers do, and a Swedish commenter (fiskpinne) just mentioned it. Sure, local articles are good to have for many basic subjects, but when you really want to get into something you probably know English.

People shouldn't want to read articles like the one about cryptography (just picking something technical at random) in a non-English language beyond what the word means and a general overview. There are so many English resources and so many people able to read English if you'd contribute resources, learning it should be encouraged rather than translating everything just because we can.

asgard1024 1 hour ago 1 reply      
This article poses a real question whether computer generated articles are suitable for encyclopedia consumed by humans.

Speaking of this, I would love to see Wikipedia in machine-readable language. Something like CYC project.

Edit: I know of WikiData, but there should be an unstructured analog to that.

topbanana 56 minutes ago 1 reply      
What a dreadful chart
dschiptsov 1 hour ago 0 replies      
Isn't it about quality, not quantity?
SEJeff 1 hour ago 1 reply      
Likely exclusively due to this guy:


Who runs a bot that makes millions of shitty stub articles.

edpichler 1 hour ago 1 reply      
And the main page of Wikipedia is not updated, but:https://meta.wikimedia.org/wiki/List_of_Wikipedias
Design culture is a frozen shithole
24 points by jonphillips06  40 minutes ago   2 comments top 2
sp332 0 minutes ago 0 replies      
Mods: why can't I make a comment linking to the ourinrediblejourney tumblr? It's relevant to the "make companies just to flip them" point in the article.
tesq 3 minutes ago 0 replies      
So is Winnipeg.
Show HN: Free Survey Creator
36 points by wallawe  2 hours ago   4 comments top 2
Bartweiss 31 minutes ago 2 replies      
This looks fantastic - I like the design and obviously I like the free. The interface is much more attractive than the standard SurveyMonkey and Google Forms options.

Two big questions come to mind. First, do you have or plan on an option for people who don't want to embed a survey but link to one outright? Second, do you expect to leave this up, and if it were to become heavily used do you have a plan for monetizing or are you willing to eat the hosting costs?

I ask because with a bit of reassurance that it will stick around, this looks like a nice, clean tool I have regular use for.

cheepin 27 minutes ago 0 replies      
Wow. This is really easy to use. I can definitely see myself using something like this. Thanks for sharing.
Getting rid of burnout permanently
160 points by kentnguyen  3 hours ago   61 comments top 22
normloman 1 hour ago 8 replies      
Um... Not work so hard?

I'm not a programmer, so I'm viewing the stuff on hacker news from outside the bubble, so to speak. And from here, y'all look crazy. To the average person, spending extra hours at work with no overtime pay is absurd, but you all discuss it like it's no big deal.

Your industry needs a huge cultural overhaul. People must be trained not to accept burnout as normal.

onion2k 2 hours ago 2 replies      
I agree with the majority of the article, but one thing leapt out - the first question that the author suggests might 'help you to pinpoint your resentment';

Why do you want to take a break, go on holiday? What are you really running away from?

Taking a break and going on holiday is not running away from things. Even if you're working on something that you absolutely love, with an amazing team of people, doing something that will change the world - it's still a good idea to take a break. Experiencing different cultures, seeing new things, getting out of your comfort zone, and looking at things from a different perspective is fantastically useful. It makes you see things differently. Going on holiday is a good thing in itself; it isn't merely a cure for the bad things.

noir_lord 50 minutes ago 0 replies      
Fantastic Article.

Three weeks ago I hit absolute rock bottom with exhaustion from working hard for the last 2 years (I worked out I've been working 70-80 hour weeks since Dev 2010 with 8 days off in 4 years).

I resolved to get my life sorted out, I cut back work hours drastically, started riding my bike more and went to the Doctors to get help with sleeping tablets and pain management (the last 3 months I've been waiting for a double wisdom extraction) and stopped trying to carry the world and it's problems on my shoulders.

Later that week I found in a fairly horrible way that my partner of 7 years had cheated on me and I threw her out.

I stuck with the resolution I'd made to keep changing my life.

Now I'm sat at work taking a break after writing some really nice code to handle a problem that had stumped me for a month, I'll pack up for the day in a couple of hours then I'm going home to have a shower and going out on my bike for a 45 mile ride then home, netflix documentary and sleep.

In the last month I nearly destroyed my business, my health and my wellbeing as well as losing a long term relationship and I'm happier today than I have been in 4 years.

I have off moments but I just remember how bad I felt when I was sat at 2am watching the moon wishing everything would end and that they will pass in time.

The anxiety attacks have just about gone completely and meditation seems to control the ones that I do get.

I've also realised that none of this stuff business, relationship or whatever is worth sacrificing my own long term happiness over, I was miserable for 4 years, no more.

danielweber 2 hours ago 1 reply      
Some companies see their employees as orange trees that they need to keep healthy year after year.

Some companies see their employees as oranges they need to squeeze as much as possible.

reitanqild 17 minutes ago 3 replies      
Isn't burnout originally something way worse than exhausted and demotivated? Examples:

I burnt out once, it left me crying everytime I where alone and took me months to get through the first phase. Anything that reminded me about the old job, e.g. a faulty drive-train, could trigger stomach pain etc. It took 5 full years before I was really myself again even though I studied and had normal jobs during those years.

I have seen a couple of friends and colleagues go through the same. One of them was a promising technician who had to leave it.

Whenever I read articles like this I wonder if we are talking about the same kind of burnout? (And yes, English is not my first language.)

funkaster 2 hours ago 1 reply      
Here's a crazy idea: work less. Try first with a 40 hour week. Then 35. Just the 40 hour week could probably give you enough time to do other things you want. And make this mental note: if your business needs you constantly for more than 40 hours a week, you're doing something wrong.Your work should be your passion, but it shouldn't consume your life.
jimbokun 1 hour ago 0 replies      
"As a software developer, Im passionate about writing codes and creating new things. However, as I also need to perform managerial duties, I had less and less time to do so. Repeatedly, I had to work for days without writing any useful code for the team, I became highly agitated."

It's surprising how hard it can be to find time to just write code, even with a full time job in software development.

Meetings. Email. Technical feasibility. Gathering requirements. Testing. Investigating bugs. Various forms of technical support. Architecture and design. Documentation. Time sheets. Reports. Fixing builds and managing dependencies.

All of these are good and important and necessary for any software product to succeed. But they call also really suck the passion and productivity out of a person.

stygiansonic 2 hours ago 0 replies      
The human body is generally well-adapted to maintaining homeostasis, in the absence of extreme illness and disease, i.e. feeling thirsty when you need fluids, hunger when you need calories and needing sleep when you're tired.

However, sometimes external and internal factors can cause us to ignore these basic needs/warning signs. The need to meet a deadline, the need to not let down your coworkers or the need to demonstrate "passions" for your line of work. The first two apply pretty much to any job nowadays, while the latter applies groups that are often expected to show a "portfolio" of their work, such as artists, musicians, graphic designers and increasingly, software developers.

All of these demands can easily lead to burnout and a lack of passion, not just tiredness. Feeling tired is one thing, as one usually ascribe that physical causes. But having a feeling of lacking passion can be soul-crushing, as it leads one to question whether one is in the right field of work. This is perhaps the one of the worst effects of burnout and must be avoided. Burnout is the cause and a lack of passion is merely a symptom.

Realizing there is much more to life than work-related goals, as the article suggests, is a good solution.

gboudrias 2 hours ago 0 replies      
I'm pretty sure burnout is endemic to this industry, if not most of society. It's a good idea to be on the lookout. Don't underestimate the dangers of burning out (they may include losing your passion entirely).

Thanks for taking the time to write this article.

valevk 1 hour ago 0 replies      
In my opinion and unfortunately experience, burnout is tightly coupled with procrastination. Neither burnout, nor procrastination is classified as disease, though. It is known, that a burnout is a life-management difficulty. [1]

To get to my point, the whole burnout process starts with procrastinating. However, the sources for procrastination can be very different. This is where you should fight the problem. If you have depression, get help. If you are lazy, well that sucks. (Sounds easy, I know. It is not easy in real life, I know). But in the end, your own inaction is digging your grave.

It's not the break you need. You need a new approach to handling life. Handling life differently. If you keep "only" taking breaks, the burnout becomes a cycle, instead of a one-time exhaustion. And you will go throught this cycle often.

The fact that I'm writing this, instead of studing/working, shows that my procrastination problem continues to grow, and eventually enlarging the burnout on the horizon.

[1] http://apps.who.int/classifications/icd10/browse/2010/en#/Z7...

amwelles 1 hour ago 1 reply      
The only way I've been able to avoid burnout is to be deeply involved in things outside of work. I work a 9-6 front-end development job, but I also teach people how to train their dogs once a week, I write creatively for my own purposes, and I teach coding classes a few times a year. By adding variety and focusing on a few things that are important to me, I don't get burnt out on any of them. It does mean that I'm busy, but I've never felt more stable than I do now. I think having those competing priorities helps me keep the balance that I need to avoid burnout.
ulisesrmzroche 18 minutes ago 0 replies      
Real burnout has you feeling like your brain is empty, and creative work makes your head hurt. Last thing you want to do is look at more code.

I actually think this guide is much more accurate: http://c2.com/cgi/wiki?BurnOut

dsirijus 1 hour ago 2 replies      
> there were times when I got completely burnt out as often as once every few days

Hm, maybe we call two different things a burnout. I had it twice, one ending in a visit to ER, the other one blasting a single song at max volume for 20h then crying and trying to quit my job.

I don't think the author actually had one, at least not by my definition of it.

That aside, my main cause of burnouts was working extremely hard on something and not finishing it, for a long time. Or always going after a moving target. Management and goal setting issue, really, and easy one to solve - break huge goals into subgoals, or even - don't have big goals at all.

cenhyperion 1 hour ago 1 reply      
I firmly believe that the reason most major religions standardized a sabbath day was for mental health reasons. There's a lot of value to taking a day for yourself in which you do no work.

Even if you love what you do, you can't do it for 10 hours every single day for years.

brador 1 hour ago 0 replies      
The simple truth is if you're pushing to excel in any competitive field you're gonna have to push yourself to the limit. That's why the startup game is push, make FU money and walk, not build a lifestyle business out of it, because by the time you're done there's nothing left. You've given it your all.
AVTizzle 2 hours ago 0 replies      
"The solution is actually quite simple: do what you love and is important to you regularly."

Of course I agree - this is near impossible to argue. It's what pushed me into entrepreneurship after realizing I wanted to shape my own work reality if it was something I was going to be spending 40+ hours a week doing.

That said, a reality I feel like I'm coming to grips with is that most of my friends working traditional/conventional career paths really don't give a damn about their work.

I'm a little skeptical about the idea that this is practical information most people working normal jobs will follow through with (that basically means, quit).

127001brewer 1 hour ago 1 reply      
Why do we work?

Let's say that for most people following Hacker News, it's because their work matters to them; and, for others, it's just a paycheck.

Because of these differing work attitudes, you will see some expression of "burnout" (or some other work-related unhappiness). Keeping in mind these differences can help, but it won't solve this fundamental difference within a team.

pskittle 34 minutes ago 0 replies      
This article did strike a nerve esp Meyers quote about burnout stemming from the desire to not be able to do what u love regularly.
moron4hire 14 minutes ago 0 replies      
>> there were times when I got completely burnt out as often as once every few days.

That's not multiple burnouts. That's one burnout.

That's what burnout is like. It's not a complete inability to work. It's a lack of consistency. I think that's why so many people don't think to do anything about it. They think, "if I just quit being so lazy..." they could get everything done. Clearly, they're capable. And it is clearly not permanent. So the problem must be them, right?

Wrong. The problem with lack of consistency and reliability is a feedback loop. If you don't keep to regular, sustainable hours, your body will take up the deficit later. Your mean productivity is basically set, it's your standard deviation that you can control.

So, you either work really hard now and have everyone freak out that you're not being as productive as they've come to expect out of you. Or you just not establish an expectation of being hyperproductive in short bursts.

To overuse a metaphor: you don't win a marathon in the first 100 meters.

danatkinson 1 hour ago 2 replies      
It's odd but sex is not mentioned even once as a legitimate release.
enraged_camel 22 minutes ago 0 replies      
The author's theory is that burnout is caused by not doing the things one loves.

I have a different, albeit perhaps related theory: burnout is caused by not being able to get in the "flow" for extended periods of time.

I can relate to the author's example of having split duties involving coding and not coding, as I'm in the same boat. About half of my week involves developing my company's learning management system, and the other half involves going to meetings about various training activities that are hosted on the system. The latter part is what causes burnout, because the meetings are spread out through the day and totally disrupt my flow. No matter how hard I have tried, I haven't been able to block out large, uninterrupted chunks. As a result, I find myself in these situations where just as I'm about to get in the zone, I get a reminder that says "meeting in 15 minutes!"

It has reached a point where I started looking for other jobs. Anyone need a Rails developer? :(

cookiecaper 1 hour ago 0 replies      
I don't think this article really says anything that isn't obvious. We all know that serious cases of burnout happen because you don't like what you're doing. We all only have so much patience and tolerance for things we dislike. The answer is to stop doing things you don't like doing so much, and do things you do like doing more, and make this a permanent change, not just a two week break before you jump back into the things you hate; that may prolong your tolerance, but you'll eventually run out again. We have to find an equilibrium between the enjoyable and the necessary that allows us to be productive but doesn't make us hate our lives. That's no secret.

The problem is that most people don't have many options to change their situation in a significant way -- all they can do, if they're lucky, is take a short vacation and hope that re-energizes them enough to go into another grueling year without having a breakdown. Some of us have to try to manage a constantly ongoing breakdown without disrupting the work that brings in the bacon.

If your version of "burnout" is completely resolved by taking a vacation, you weren't burning out, you just needed a short break. In my mind, burnout refers to a larger state of mental exhaustion.

I'm getting screwed with my stock options HELP
57 points by concernedmitch  1 hour ago   33 comments top 20
patio11 1 hour ago 0 replies      
How about "I appreciate your desire to have more stock available to give new hires. You've proposed that I give up 4%, which is 40% of my allocation. I'm amenable to giving up 1%, which is 10% of my allocation and equal to the portion which you're willing to give up, and lets us bring in a whole new engineer."

If they counter offered, I might give up another 0.5% in return for "OK, you guys can have 1.5%, but in return the company rescinds your repurchase right with regards to 3%." (i.e. We accelerate vesting.)

This is a negotiation. Nothing you say results in you owning less than 6% of this newly valuable company, right? No need to agree to the proposal in front of you just because it is in front of you.

webwright 27 minutes ago 2 replies      
The instant your partners know you're involving a lawyer is when the relationship becomes adversarial (possibly permanently). This is not the lawyer moment. The lawyer moment is "after a lot of discussion, these guys refuse to do what me and the rest of the world thinks is fair". Has there been a lot of discussion?

Get on a call with them ASAP. Tell them you think that pro-rata is both what's FAIR and WHAT IS DONE 99.999% of the time in these circumstances-- and mention that you've done a lot of research. Say, "Guys, obviously any two of us can impose a decision on the third, but I trust you guys, so I'm assuming you're doing this because you think it's normal/fair. How about this: I pay for a few hours of a high-end startup lawyer's time and we can get a sense of what's standard-operation-procedure here is? It seems like we might have different opinions about what's fair. I'd propose we appeal to a knowledgeable 3rd party. Is that cool?" If they agree, add: "If this experienced startup lawyer says that pro-rata is what's done virtually all the time in these circumstances, can we agree to go that route?" And see what they say. Just keep saying you trust them and ask questions along these lines. Eventually they'll either agree or it'll come out that they feel that you haven't earned your 10%.

Understand: If things get ugly, they can fire you (wait-- are you vesting? If they fire you after 1.5 years, you lose most of your options). Once they fire you, they can dilute you and other people who are not with the company somewhat easily. Your job here is to be friends and to maintain/earn trust (and to not get taken advantage of!). NEVER THREATEN until there's nothing left to salvage. If you're a fabulous negotiator, you can HINT that you're willing (and financially able) to lawyer up.

vessenes 1 hour ago 1 reply      
You definitely want a lawyer, but on the face of it, this is an aggressive move by your partners. The start of a fair negotiation would be equal pro-rata dilution. So if it was 45/45/10, and you want to make 12% in the options pool, you should get diluted 12%, just like them.

That would mean they'd go down to 39.6% and you would go down to 8.8%.

Since you're remote and the company is growing, I would personally expect real problems on the horizon.

Finally, exercising your options is most likely a good plan; options often expire after someone leaves.

tptacek 6 minutes ago 0 replies      
Be careful executing your options if you don't trust the company. Execution might not substantially improve your rights as a shareholder. It will, on the other hand, involve you surrendering your own cash. There are startup horror stories of early employees executing and getting zeroed out at acquisition.

(I say this as someone who listened to those horror stories, refused to execute options, and lost a low six figure return as a result. I don't regret the decision though; on the other hand, if I had ponied up thousands of dollars and gotten zeroed out, I probably wouldn't be able to live with it.)

georgespencer 46 minutes ago 2 replies      
Assume positive intent. They might not be out to fuck you -- they might just not have thought about it from your perspective.

Let them know that you think it's unfair because you're diluting much more than them proportionately.

Help them understand that you're in this for the long run (even if you're not sure, founders want to hear that: stability in senior team is something they value) and you want to be incentivised. Many founders tend towards underestimation of problems and overestimation of their own abilities, and they may interpret seed money as an opportunity to replace you. You were a guy who joined when they didn't have access to the hiring market. Now they have money they will have a bit more access.

yumraj 57 minutes ago 2 replies      
Definitely talk to a lawyer, one who knows about startups. NOTE: the lawyers for your startups represent the company, so don't talk to them - find your own lawyer.

Other than that, AFAIK what you mention is not typical. Option pool should not be created by "taking" options from employees, but rather by issuing new shares which dilutes everyone equally. You should bring it up and ask that they create the option pool by issuing new shares which will at least indicate to them that you know what you're talking about and perhaps reduce their inclination to screw you.

Also, what was your vesting schedule? If it was four years, you should have already vested 3.75%, which you can exercise anytime. If they take 4% of the remaining, you're left with just 2.25% to vest over next 2.5 years, which is just wrong.

Also: before you begin negotiation, do understand your BATNA - Best alternate to a negotiated agreement. In other words, what will you do/can do if there is no mutual agreement. This will tell you if you're overall in a strong position or weak. This will include any advice you get from the lawyers, your employee agreement, etc.

MCRed 1 hour ago 2 replies      
What you're looking for is an anti-dilution clause. There may be one in the stock option agreement that prevents this. If not, whether they can do it is going to depend on the stock option agreement and the laws of the state where they are incorporated.

I believe the best advice for you is to find a lawyer in the state where the company is incorporated and hire them.

It sounds to me like you've already gotten a raw deal on your ownership, and they think they can just walk all over you. Dilution at the time of funding should affect everyone the same, and if they want 12 percent for an option pool, then everyone should get diluted fairly (every share should lose %12 of its ownership). I believe anything else might be considered fraud, depending on the terms of the agreement.

You can exercise your vested shares whenever you like (under most agreements) and the only legalities I can think of are the tax implications.

vandyswa 23 minutes ago 0 replies      
I'm seeing a lot of comments focusing you on your percentage of the share pool. One area where you can really take a hit is share priority. At each funding round the company can issue a new, higher priority of shares, and even let previous participants who buy into the new round get their existing shares upgraded to the new priority. You can be sitting on your X% shares (whatever X ends up being) and find out when your company is sold that you're getting $0 because there was no money left after servicing the priority shares. This effect can be greatly magnified if some of the money was paid in with an interest clause, with that value also taking priority over your own share of the company.You're remote, and you're a code monkey. You don't have to assume your company is out to screw you, but don't assume they'll work hard to try and take care of you. You most certainly need a lawyer in the corporation's state, and one who specializes in this area of the law.Good luck! It can be rough out there.
kordless 13 minutes ago 0 replies      
Quitting and leaving is an OPTION. Realize that doing the right thing in a difficult situation will cause you immediate discomfort and probably scare you more than you like. Realize options that you fear the most are probably the best for you.

You must have some sort of contract between yourself and the company or the founders. If there isn't a contract, or it's a bad one, then it becomes interesting from the standpoint of IP ownership. How your shares are tied to the IP ownership is what you want to concentrate on as it is your lever to get what you want. If you find the founders are being unreasonable, use any and all means to defend your dilution up to the point it equals an equitable dilution of all shares by all stake holders.

Don't make blaming statements to the founders, clearly state what you want for yourself in terms of ownership, then go get an attorney and have them look at the documentation. After they give you an opinion on it, prepare yourself for the worst outcome and then restate what you want for yourself again to the founders. If they don't agree, be prepared to make the hard decision.

Best of luck to you!

ottoflux 41 minutes ago 0 replies      
Shit happens. Refactoring options and shifting things around may suck, but it may have been a requirement of them getting the seed funding. 100% of your options at Zero worth are worse than N% (not a terrible N%) at an actual positive valuation.

I'm not familiar with EU tax rates on short term capital gains in a US market, and would highly recommend spending some of the money you might have spent on a lawyer talking to a reputable financial accountant from your country with experience in this area. In the US you have to set aside a chunk of the proceeds if you do a same day sale when you exercise your options, and are frequently penalized by your state if you don't give them their share at the end of that financial quarter.

There's a lot going on there and I don't think HN is going to give you complete enough advice to rest your mind.

jonathanjaeger 1 hour ago 0 replies      
Definitely talk to a lawyer in the U.S. who works with startups. If they incorporated in the same way most startups with investors do, it's a Delaware C-Corp, and lawyers who work with startups will know the nuances of the vesting and options legalities.

I worked with Scott Walker to incorporate my startup. He's very helpful and takes calls without charging (if you listen to This Week in Startups or Mark Suster's Both Sides podcast you'll hear them talk about him in the ads):


jbverschoor 1 hour ago 0 replies      
If they want to issue out new shares for employees, then they can simply issue new shares. This will dilute the existing shares but not by 40%. More like 11%

They cannot simply take away from you that's your.. Unless they have stated otherwise somewhere.

So just talk with them and maybe you misunderstood something.

incanus77 56 minutes ago 0 replies      
Are your options on paper? Lawyer is a good idea, and even if you have any informal documentation like emails you should be in decent shape, but having this hard on paper is the only way to be sure. In the absence of an anti-dilution clause, the wording of however you acquired your 10% will help to define the intent and whether you can actually resist the dilution.

If you feel there is a lot of potential in the stock, don't skimp on legal fees. I was involved in a bit of a complicated shares (not option) situation and $1500+USD was certainly worth it in the end.

sylvinus 55 minutes ago 0 replies      
As others have said, the rational thing to do would be pro-rata dilution.

Your real problem though is why didn't they ask for that in the first place. It looks like they want to squeeze you out and you should have a transparent discussion about that first.

arethuza 1 hour ago 1 reply      
Having handled things like that badly in the past - the first thing I would recommend is to calm down and think about it rationally as a business transaction open to negotiation.

Also, aren't share option pools handled by (potentially) issuing new shares (in UK terms the difference between issued and authorized share capital) rather than shuffling around existing shareholdings/options?

pskittle 1 hour ago 0 replies      
Talk to a lawyer, to know your best options
gnurag 50 minutes ago 0 replies      
I agree with others here, talk to a lawyer. You've worked hard with shit money and 10% equity in the hopes of cashing in your hard work later.
notastartup 45 minutes ago 0 replies      
> 2 non technical founders, a half baked product with no revenue at all, built with a freelancer.

> Fast forward to today, we got seed funding


hyperliner 54 minutes ago 1 reply      
Have you, you know, TALKED TO THE REST of the founders? I don't think they are out to get you and in the process distract the startup or get terrible press.

Seems people here are talking about lawyering up too fast, without knowing whether a proportional dilution has even been discussed.

4qbomb 40 minutes ago 0 replies      
Find someone in that state with the license place LWYRUP and hire them.


YC Hacks on Product Hunt
10 points by awaxman11  34 minutes ago   2 comments top
minimaxir 21 minutes ago 1 reply      
Show HN: Call to Speakers Find and track conference speaking opportunities
14 points by conroy  1 hour ago   6 comments top 3
bdcravens 6 minutes ago 1 reply      
You really need to add ability to filter by categories.
taprun 40 minutes ago 1 reply      
Great idea! I like how you'll email me about upcoming opportunities.

I just wish I could add my zip code and get opportunities within a fixed range of my address.

tehwebguy 40 minutes ago 1 reply      
Super cool, are you open to non-tech, non-business speakers?
Maven central repository now secured with HTTPS
40 points by karlmdavis  1 hour ago   10 comments top 4
karlmdavis 1 hour ago 1 reply      
This is Sonatype's response to the earlier "How to take over the computer of any Java (or Clojure or Scala) developer" concerns and discussion [1]. I'm very relieved they've fixed the big problem there, as having so much infrastructure reliant on plain HTTP was a giant hack waiting to happen.

[1] https://news.ycombinator.com/item?id=8099713

needusername 43 minutes ago 0 replies      
> extremely short turnaround time

Come on, please. Sonatype had HTTPS intentionally only for Nexus/Artifactory/ users since at least 2007.

kul_ 1 hour ago 0 replies      
Thanks guys for the great work!
Hotel fines brides $500 for every bad Yelp review her wedding guests post
313 points by mcenedella  4 hours ago   174 comments top 38
dm2 4 hours ago 6 replies      
What a horrible policy, it won't end well for them.

http://www.yelp.com/biz/union-street-guest-house-hudson?sort... 10 negative Yelp reviews have been posted today (so far), ouch...


Their website navigation is a very discrete image map in the middle of the page, http://www.unionstreetguesthouse.com/ obviously this was someone's first website.

It's probably not legal, if it is then it is unenforceable in court, even if it was in their terms contract.

Here is the page with their $500 review fee policy: http://www.unionstreetguesthouse.com/events_weddings.shtml

I don't condone leaving negative reviews if you haven't stayed there, but if you do be sure to note that you have not stayed at the hotel and are just commenting on their policies to warn people, unless that is against the review sites policy, then don't do that.

jpbutler 6 minutes ago 0 replies      
They appear to be backpedaling. From their Facebook page:

"The policy regarding wedding fines was put on our site as a tongue-in-cheek response to a wedding many years ago. It was meant to be taken down long ago and certainly was never enforced."


ctdonath 2 hours ago 4 replies      
Maybe it's the "star rating" system that's broken.

When reviewing rated product/service offerings, I go straight to the 1-star reviews. Skimming those, I differentiate the "valid complaints" from flukes (a small failure rate is understandable), unrealistic expectations (it's a vintage hotel, not a new Hilton), tangential problems (Amazon didn't smash the box, the shipper did), hysteria (political opposition isn't a reason), humor (Family Circus isn't peer-reviewed), etc.

We need a way to express these, especially a "for what it is, it's good (whether it met my needs/interests or not)".

robinsta 10 minutes ago 0 replies      
They posted this to their facebook:

The policy regarding wedding fines was put on our site as a tongue-in-cheek response to a wedding many years ago. It was meant to be taken down long ago and certainly was never enforced.

The commenters on the post do not believe this not surprisingly.

egoebelbecker 4 minutes ago 0 replies      
On Yelp's review page:

"Your trust is our top concern, so businesses can't pay to alter or remove their reviews."

And yet see we stories like this about Yelp all the time. Yelp reviews aren't worth the paper they are not printed on.

Spooky23 4 hours ago 2 replies      
Makes sense. Asking for a functional ice machine in the middle of the summer at a wedding is a pretty unreasonable expectation.

We're talking about Hudson, NY here. It's practically a wilderness... having an appliance repairman come would be impossible!

wubbfindel 2 hours ago 1 reply      
Imagine if this ridiculous policy on their website is actually the result of a malicious hacking.

Then the hacker sends pagesix.com an anonymous tip about the policy.

Then the hacker posts the pagesix.com article on HN.

Now, that would actually make a good story...

[EDIT: Typo & Grammar]

chasing 2 hours ago 5 replies      
Yes. And because of this you should definitely go to Yelp and give them a one-star review. And destroy their Facebook page. And maybe go take a shit on their doorstep. That's definitely the answer when a small business makes an error like this. They're frustrated by something they don't feel is fair and made a ham-fisted attempt to fix the problem. Ruin them.

(The ice machine thing, though -- that actually seems like it's much more indicative that it might be worth staying somewhere else...)

smackfu 2 hours ago 1 reply      
This seems like it would violate Yelp's rules. If you fine people for bad reviews, is that any different than paying people for good reviews?
ryoshu 4 hours ago 0 replies      
Another business introduced to the http://en.wikipedia.org/wiki/Streisand_effect
joeblau 3 hours ago 0 replies      
Wow the Internet has already taken them down to 2 stars. I can't image this is going to end well once this news spreads to other internet communities.
reshambabble 3 hours ago 0 replies      
Wow. Pretty bold of them to think they could fight social media and the consumer powered era with such an outrageous policy. While I am amazed at their lack of embarrassment, (especially since the policy is still up on their website), it's great to see how people can win > businesses today. Power to the people!
Kiro 3 hours ago 0 replies      
I'm enjoying watching their Facebook page going down the drain: https://www.facebook.com/pages/Union-Street-Guest-House/1175...
keehun 4 hours ago 1 reply      
Feels like a place Reddit or 4chan would tar and feather and then let it hang out and dry until it's dead.
k-mcgrady 3 hours ago 2 replies      
Is there any proof this is happening other than this post? I hope so otherwise internet vigilante justice is destroying a business and people's livelihoods.


I took a look at their site and apparently they only enforce this policy for weddings:

"Also, please note that we only request this of wedding parties and for the reasons explained above."

The reasons seem to be that as guests are not booking the hotel themselves (presumably the bride/groom has done that for them) it may not be to their tastes and they feel it's unfair to leave a negative review of something you never would have booked in the first place because it's not to your taste.

I can kind of understand this reasoning, although it's not great.

imgabe 2 hours ago 2 replies      
I'm not sure I understand how this is supposed to work. They say they'll take it out of your deposit. But a review would happen after the wedding has taken place, yes?

So by then wouldn't you have paid in full and settled everything? In that case, they shouldn't have any money you would be expecting to get back from them. So what are they taking it out of? Are they just going to send you a bill for $500 per bad review? Is there anyone who will not just laugh and throw it away?

TallGuyShort 2 hours ago 4 replies      
So I agree with what appears to be the overwhelming majority that this policy is probably legally unenforceable and was destined to backfire as soon as it was posted on the interwebs, but...

I think they have a legitimate problem and I'm wandering what alternate solutions we can come up with. The person planning the wedding (may or may not be the people actually getting married) thinks this is a good place for the wedding, but many of the guests do not enjoy it. The reviews exist to help that person make that decision. Whether or not guests usually hate it, is part of that decision, but I agree with the venue that what the people getting married want is the bigger part of that decision. How can the company manage expectations better?

owksley 4 hours ago 0 replies      
Basil Fawlty would be proud!
moioci 2 hours ago 0 replies      
Looks like a really malicious way to punish Bridezilla: "When I stayed here for the Smith-Jones wedding on July 26..."
baddox 4 hours ago 6 replies      
If the hotel is clear about these terms, then I don't see much of a problem with this. It makes it really easy to know to pick a different hotel.
valarauca1 4 hours ago 1 reply      
What I wonder is how this is traced.

If I leave a review ~6months after would my sisters bridal party be charged or the party that is currently renting the hall?

I assume the later since they assume reviews are placed within a short span of time. Which then if there are several books one-day-after-the-next how do you migrate reviews? Or do you split the difference between all parties?

Even if the policy is clear, and the market is free. There is no way this policy can be enforced fairly.

smegmalife 3 hours ago 0 replies      
I really do feel for businesses negatively affected by Yelp. Yelp is far from perfect, and I know plenty of small business owners who got a couple bad reviews when they were first figuring things out, and weren't ever able to recover from it.

But, I'm not sure if this is even legal. As imperfect as Yelp is, at least it's democratic. Fining somebody for their guests' opinion of their place is not okay.

Thriptic 3 hours ago 0 replies      
In a sense this strategy could be somewhat ingenious on their part, as after some exploration some people might assume that all negative reviews (even ones from customers who legitimately received poor service) are spurious ones associated with the fact that the internet doesn't like their review policy. With that being said, most people won't even bother to explore a hotel with a terrible review, so they're probably screwed.
easytiger 4 hours ago 1 reply      
Viral business suicide surely.
reshambabble 3 hours ago 0 replies      
The irony of getting one huge bad news article that does more than enough to account for every bad review they evaded.

Pretty bold of them to think they could fight social media and the consumer-powered era with such an outrageous policy. Power to the people!

chatman 1 hour ago 0 replies      
This is just a gimmick story to promote Yelp.
chris_wot 2 hours ago 0 replies      
Great idea, right up till the point they announced it and later tried to enforce it.
circa 2 hours ago 0 replies      
I used to work in Hudson. A lot of places like this down there. I'm sure this will be featured on Hotel Hell in no time.
notastartup 41 minutes ago 0 replies      
"If you exercise your rights to freedom of speech and post anything other than a stellar review, we are going to penalize you, to improve our business reputation online instead of finding out why there are negative reviews in the first place."
sekasi 3 hours ago 3 replies      
Can someone living in the US tell me how this could be legal? Surely it's not?
frade33 2 hours ago 0 replies      
This is beyond stupid and this is not even untrue.
sidcool 3 hours ago 0 replies      
This is ridiculous. Someone needs to sue them.
taybin 2 hours ago 0 replies      
Yelp is useless anyways.
judk 2 hours ago 2 replies      
A bride is a business partner, forcing guests to stay at the hotel. How is this different from docking an employees salary for unsatisfied customers?
IgorPartola 3 hours ago 1 reply      
Before mob justice drives this place out of business, perhaps those posting 1 star reviews should promise to take them down if the policy changes. Not that I agree with the policy, but a mistake like this might not be worth ruining some's life.
hawkharris 3 hours ago 2 replies      
After reading this article, I'm surprised to see that the guest house still has a high rating on Yelp and Google+. Our immediate response should be to post negative reviews based on the revelation that none of the other reviews are trustworthy.

EDIT: Yelp rating is no longer high, but there's still TripAdvisor and Google+.

ck2 2 hours ago 1 reply      
Why don't people understand that free-speech protections only means the government cannot throw you in jail for what you say (but they do anyway under the "try to stop us" method http://www.npr.org/blogs/thetwo-way/2013/07/12/201422486 ).

It has no meaning against other individuals.

Doctor_Fegg 3 hours ago 0 replies      
I think this is a sort of wacko reverse psychology gambit.[1]

The Yelp page is now attracting comments like "This place should be relocated to china. They have a policy about reviews that is unamerican."

So, if you're looking for a hotel that actively dissuades the sort of redneck who likes to throw around words like "unamerican", congratulations - you've found it!

[1] ok, ok, I don't.

Show HN: A beautiful, elegant and simple task manager
5 points by kkalra  29 minutes ago   discuss
Show HN: A small virtual machine written in C
155 points by tekknolagi  10 hours ago   67 comments top 12
axman6 9 hours ago 2 replies      
Seems like [1] could benefit from use of the X macro [2], should make adding new instructions much easier and you can avoid the hassle of having to keep two separate tables in sync. There's probably quite a few places where the code could be made clearer by using it. Also in the implementation of your functions, there's a hell of a lot of repetition in all the binary operations, another macro which you pass in the operation and the function name would make life earier:

    #define binop(NAME, OP) definstr (NAME) { \        long long b, a; \        if (carp_stack_pop(&m->stack, &b) == -1)\            carp_vm_err(m, CARP_STACK_EMPTY);\        if (carp_stack_pop(&m->stack, &a) == -1)\            carp_vm_err(m, CARP_STACK_EMPTY);\        carp_stack_push(&m->stack, a OP b);}        binop(ADD,+)    binop(MUL,*)    ...
The repetition of

    if (carp_stack_pop(&m->stack, &a) == -1)        carp_vm_err(m, CARP_STACK_EMPTY);
seems like a good place to just use a function to encapsulate all the error checking and handling.

[1] https://github.com/tekknolagi/carp/blob/master/src/carp_inst...

[2] http://www.embedded.com/design/programming-languages-and-too... and the following parts

panic 9 hours ago 2 replies      
The implementation is really clean! The mixing of general-purpose registers, special-purpose registers and the stack makes the instruction set a bit weird, though.

For example, instead of using registers, why not have OR pick values off the stack like ADD, or vice versa? Why use EAX for the conditional jump instructions when you could look at the top of the stack? Why have REM when you can just MOV from ERX?

papaf 10 hours ago 1 reply      
The code looks really clean to me.

If you feel the urge to convert the VM to a JIT, rather than calling function pointers for each instruction, you might find this blog post useful: http://blog.reverberate.org/2012/12/hello-jit-world-joy-of-s...

tekknolagi 10 hours ago 3 replies      
I have been working on this project on and off for about 6 months. I would love feedback on the code, design - whatever!
lindig 5 hours ago 0 replies      
As inspiration, I would suggest to look at the virtual machine (byte code interpreter) of the Lua language. You can find several papers describing the design at http://www.lua.org/docs.html. The code base is also very small and clean.
akkartik 9 hours ago 3 replies      
Can you give some directions for how to run it?

  $ git clone https://github.com/tekknolagi/carp  $ make  $ ./carp  $ ./carp --help  # after peeking in carp.c  help msg
There's a tantalizing target called 'tests' in the Makefile, but it doesn't work.

There's some examples, but no makefile to build them. How do you run them?

I see you used to have some .carp files but you just deleted them: https://github.com/tekknolagi/carp/commit/fa16eeb443

I tried restoring one, but it doesn't work:

  $ git checkout fa16eeb443~1 examples/reg.carp  $ ./carp -f examples/reg.carp  Unknown label <add>
So at this point I'm ready to give up..

jheriko 4 hours ago 0 replies      
good stuff.

the power of function pointers for stuff like this is quite enormous. making a vm like this is great practice for a real compiler too... :)

i'm curious though, why it isn't a direct copy of x86? other than the obvious 'thats really complicated' it would save a lot of wheel reinventing...

zencoder 5 hours ago 1 reply      
>The goal is to try and build a small (and decently reliable) VM from the ground up, learning more and more C as I go.

The author explicitly mentions, he is in the process of learning C while he's building something using it.

This is interesting because the folks at [osdev.org](http://wiki.osdev.org) keep stressing that you must be a god-level expert in C, before you even think of getting into systems programming.

cobookman 8 hours ago 1 reply      
Very cool!

Georgia Tech offers a class where you code a VM for the LC3b instruction set (http://users.ece.gatech.edu/~moin/s13a/hw.html).

It was a great learning experience, and pretty fun too.

manish_gill 7 hours ago 2 replies      
Can anyone link me to some literature on VMs? Sure, I can analyse the code, but from a design perspective, I would love to learn more about how VMs work, where they can be used, etc etc.
n1ghtmare_ 7 hours ago 1 reply      
"NOP (): Does nothing. Seriously." - I love this :)
tekknolagi 9 hours ago 0 replies      
Nemex, a self hosted app that helps you to track and curate ideas and projects
16 points by rootinier  1 hour ago   9 comments top 4
stasm 16 minutes ago 0 replies      
There's some negativity in the early comments here, but I'd like to applaud the effort of making this a dead-simple self-hosted, FTP-friendly solution. We need more experiments around federated self-owned networks which are appealing to end users.

Is the code hosted somewhere on a VCS?

sgerhard 7 minutes ago 0 replies      
http://neonelephant.de/webprinter.html <- Use this tool to send feedback :)
adestefan 40 minutes ago 1 reply      
> nemex doesnt need a database. This means that you can easily download the zipped package, fire up your ftp-client of choice and copy the files to any directory on your web server. As soon as you successfully uploaded them, navigate to the /projects folder and set the permissions to 777. Open config.php in your nemex-folder and change USERNAME and PASSWORD to anything you want.


Scottymeuk 28 minutes ago 1 reply      
Oh god, the code is awful
GNU datamash
177 points by jonbaer  12 hours ago   14 comments top 8
jph 11 hours ago 3 replies      
This is great work, and runs fast. The documentation is well done and has plenty of examples.

Here's an example of datamash and R with timing.

    time datamash sstdev 1 < data.txt    288891.28552648    0.76s user 0.01s system 99% cpu 0.775 total    time R --vanilla --slave -e \    "x <- read.table('data.txt', header=F); sd(x\$V1);"    288891.3    2.68s user 0.06s system 99% cpu 2.761 total
(The data.txt file is 1 million lines, each line a random number 1 to 1 million. The timing is on a MacBook Pro Retina 13" 2014)

theophrastus 1 hour ago 1 reply      
Apologies for the tangential question, but how does one find the public key for (something like) datamash?

Downloaded: datamash-1.0.6.tar.gz and datamash-1.0.6.tar.gz.sig

Then did:

  gpg --verify datamash-1.0.6.tar.gz.sig datamash-1.0.6.tar.gz
Which results:

  gpg: Signature made Tue 29 Jul 2014 03:30:23 PM PDT using   RSA key ID 3657B901  gpg: Can't check signature: public key not found
Where can one import that public key, and is it the public key for datamash or gnu?

dufferzafar 21 minutes ago 0 replies      
The page mentions Windows, but there aren't any binaries available for it. Am I missing something?
bagrow 5 hours ago 0 replies      
Welp, I'm outta business... https://github.com/bagrow/datatools
thristian 4 hours ago 0 replies      
Don't forget the FreeBSD 'ministat' tool, which supports fewer operations but will draw ASCII-art histograms:


pavanred 1 hour ago 0 replies      
I used to choose awk/gawk, python, R for different file, numeric, textual and statistical operations. This is great, I would definitely use it.
dredmorbius 10 hours ago 0 replies      

I've had a little awk routine that I wrote some years back that does much of this -- it computes (or tabulates) n, sum, min, max, mean, median, standard deviation, and percentiles of the input data series. For generating quick stats, it's quite useful.

I'm looking forward to datamash turning up in my Debian repos.

voltagex_ 11 hours ago 0 replies      

This looks pretty cool. Anyone used it in "real life"?

Look at the humongous type that Hindley-Milner infers for this tiny program
141 points by luu  11 hours ago   43 comments top 13
tomp 7 hours ago 2 replies      
> Why cant we just allow polymorphic lambda-bound variables?

Two reasons. The first is that in general, type inference for higher-rank polymorphism is undecidable. The second is that even if it were decidable, it would be impractical - I think that if we have a program like this one:

  let test(f) = (f(1), f(true))
the assumption that the programmer made an error is statistically much more likely than the assumption that `f` should have a polymorphic type. Another reason is that it's not entirely clear what kind of polymorphic type to infer for `f` - should it be `forall a. a -> a` or e.g. `forall a. a -> int`?

> What does this have to do with different ranks of polymorphism?

Higher-rank polymorphism means that polymorphic types can appear within other types; in a system with support for higher-rank polymorphic types, the parameter `f` in the function `test` above could be declared with type `forall a. a -> a`, the function `test` would have a type `(forall a. a -> a) -> int * bool`. Higher-rank polymorphism is formalized using System F, and there are a few implementations of (incomplete, but decidable) type inference for it - see e.g. Daan Leijen's research page [1] about it, or my experimental implementation [2] of one of his papers. Higher-rank types also have some limited support in OCaml and Haskell.

> How is let-polymorphism implemented? How do you implement it without just copying code around?

The "standard" implementation consists of two operations, generalization and instantiation. At let bindings, types are generalized by replacing all unbound type variables with polymorphic type variables (care must be taken not to generalize type variables that can be bound later, but that's a secondary issue here). Every time a variable with a polymorphic type is used, its type is instantiated, which means that all polymorphic type variables are replaced with fresh unbound type variables.

  let f = fun x -> (x, x)  print f(1), f("boo")
In the example above, the type inferred for `fun x -> (x, x)` is `_a -> _a * _a`, where `_a` is an unbound (but not polymorphic) type variable. At let binding, this type is transformed into `forall a. a -> a * a` by replacing `_a` with a polymorphic type variable `a` (in most ML languages, the `forall` is implicit). Then, when `f` is used in `f(1)`, its type is instantiated into `_b -> _b * _b` and `_b` is unified with the type of `1`, `int`. When `f` is used in `f("boo")`, its type is instantiated into `_c -> _c * _c`, and `_c` is unified with type of `"boo"`, `string`. Since `_b` and `_c` are different variables, there is no error here (if `f` had a monomorphic type, `_b` and `_c` would in fact be the same, and this example would result in an error "cannot unify type int with type string").

> Whats the relationship between let enabling exponential function composition and the exponential time result?

So there is quite a bit of copying happening every time a variable with polymorphic type is used. I've never studied the worst-case scenarios of Hindley-Milner, but I imagine that it has to do with instantiation copying large polymorphic types around.

> Do implementations of Hindley-Milner actually represent types as dags and utilize structural sharing?

Yes; an unbound type variable is typically represented as a reference cell, which is assigned to the type the type variable is unified with. So, if we have

  double : forall a. a -> a * a  double (1, 1, 1) : (int * int * int) * (int * int * int)
then the type of double is first instantiated, yielding `_b -> _b * _b`, and then the type of the parameter is unified with the type of the argument, `int * int * int`. At this point, the reference cell in the internal representation of `_b` is updated to point to `int * int * int`, which means that both `_b` in the result type actually point to the same representation of `int * int * int`.

[1] http://research.microsoft.com/en-us/projects/fcp/

[2] https://github.com/tomprimozic/type-systems/tree/master/firs...

flebron 10 hours ago 2 replies      
Perhaps an easier example is to do this in GHCi:

    let x = id id id id id id id id id id id id id id id id id id id id id id id id
See how long that takes (add ids if your machine can take it). To deduce a type for x, ghci will use 2^k type variables, if you have k ids. This is easily seen by induction:

If k = 1, then the type of x is a -> a. This takes 2 = 2^1 = 2^k variables.If k > 1, it is of the form id f. Let t be the type of f. t has 2^{k - 1} variables, by induction. Thus the outermost id must take something of type t (this is 2^{k - 1} variables) and produce something of that same type t (this is another 2^{k - 1} variables), that is, it's of type t -> t. 2^{k - 1} + 2^{k - 1} = 2^k.

Note that this information is purely at compile time. Haskell isn't typed at runtime, this is all just to check types. At runtime, x is a no-op, as expected.

seliopou 10 hours ago 1 reply      
The title's a little misleading, as it suggests that there's something strange or even wrong about the type that OCaml or Haskell infer for the program. Of course the type that these systems infer for the program is correct, and the author does demonstrate an understanding of that. But that a small input to a system can produce a large output should be little surprise to any person that works with complex systems, especially computer systems.

The underlying mechanism that leads to the computational complexity in HM(x) systems--the process of generalizing types to schemas and instantiating schemas to types in order to support let-polymorphism--would make for an interesting discussion, but the author hasn't hit on that yet. Unfortunately, the only people that really understand that part of the algorithm are the people that have implemented the algorithm, and there aren't many of those people around. Strange but true. The algorithm that's taught and implemented in most undergraduate PL courses (PL:AI-based courses included) does not support let-polymorphism. If the author's reading, upgrade to ATTAPL[0] and start implementing.

Also, to answer the question "How to compile Turing machines to ML types", have a look at typo[1] for one way to do it in Haskell (by reducing it to lambda calculus (shameless plug)).

[0]: http://www.cis.upenn.edu/~bcpierce/attapl/

[1]: https://github.com/seliopou/typo

throwaway_yy2Di 9 hours ago 2 replies      
What about this example?

    f0 x = (x,x)    f1 x = f0 (f0 x)    f2 x = f1 (f1 x)    f3 x = f2 (f2 x)    f4 x = f3 (f3 x)
This is worse than O(c^n): the size of the last function's type is O(2^2^n).

(In spacemanaki's blog example, each new expression doubles the size of the previous one. Here, each new expression squares the size. f4 builds 2^2^4 = 65,536 copies of 'x', and f5 will crash your compiler if you define it).

munificent 10 hours ago 1 reply      
This is a fantastic post. I'm passingly familiar with ML and have heard the term "let polymorphism" a number of times, but this is the first time I've seen it clearly explained.
Camillo 8 hours ago 0 replies      
If you're busy, just read the original Stack Overflow Q&A: http://stackoverflow.com/questions/22060592/. It's 1/20th the size of the blog post and I got all I needed out of it.
Patient0 5 hours ago 0 replies      
I've found the following: http://okmij.org/ftp/Haskell/AlgorithmsH.html#teval

to be very useful for understanding how the HM type algorithm works.

They rephrase the problem as "writing an expression interpreter" for your program that recursively evaluates the abstract types of each expression instead of the concrete value.

I found this to be a very intuitive way to understand it.

It also then makes it easier to see why some "type inference" algorithms might guarantee to terminate while others might run forever: the more complicated your type system, the less abstract the "type values" are. They become like actual "values", and the behaviour becomes closer to the actual running of the program, which may not terminate.

toolslive 9 hours ago 1 reply      
Actually, there's some use case for these things:you can simulate varargs, and yes the compilation time can be made arbitrary large:https://gist.github.com/toolslive/5957292

  $> time ocamlc vararg.ml  real    1m9.372s   user    1m9.264s  sys     0m0.044s
Try adding a few a's and see what that gives.

bmh100 10 hours ago 4 replies      
Fascinating behavior. Since this is an edge, would it ever occur in human-written code? Could there be a situation where a computer would end up generating such code?
quink 9 hours ago 0 replies      
troels 2 hours ago 0 replies      
That sub title is hilarious.
mehwoot 4 hours ago 1 reply      
Compilers hate him! Find out this one simple program....
htk 10 hours ago 1 reply      
English called, they are running out of exclamation points.
Command Line Faxing
27 points by zrail  1 hour ago   11 comments top 5
sunsu 8 minutes ago 1 reply      
I highly doubt that actually have "a whole bunch of fax machines" or even "banks of modems" anywhere. They are probably just using FreeSWITCH.
joosters 21 minutes ago 1 reply      
In general, it's a terrible idea to run a command that contains secret information in the command line. The 'API secret' will be viewable by any user on the machine. (For instance, they could run 'ps waux' and grab the key)

Of course, the script could be running on a machine with only one user, so there might be no problem for this specific case. But it's just good practice to avoid creating potential security holes.

cpr 1 hour ago 1 reply      
Nice work, thanks for documenting!

We've been very happy with the HelloFax (YC W11) service for some time now.

We pay $5/month for the once-every-few-months fax we get or send, but it still seems like a good deal for an official fax interface to the world. It's painless to use and has a pleasant web interface.

ef4 35 minutes ago 1 reply      
Thanks. I have integrated with both Pamfax and Interfax, and neither really makes me happy. I will check this out in detail.

HelloFax is also a great service, but not comparable. It's for end users, not a programmable API.

zrail 1 hour ago 1 reply      
Note: Phaxio hasn't compensated me for this post. I'm just a happy small-time customer :)
Ask HN: Is there an over supply of tech products and services?
18 points by masslessness  1 hour ago   8 comments top 6
patio11 30 minutes ago 1 reply      
There's only so many consumer eyeballs and wallets in the world, it almost seems the supply of products and services is unimaginably over supplied to a fixed demand?

Are you of the impression that the demand for, I don't know, B2C cell phone apps is fixed in 2014 to the same value it was in 2007? If you (sensibly) do not agree that the iPhone failed to change the underlying demand for cell phone applications, consider the possibility that we are, in fact, crushingly undersupplied for B2C software. This would counsel people buying positive expected value lottery tickets as soon as the startup founders can print them.

What's in it for a founder when you could go get a job at Amagoobooksoft instead? That's a fair question. One: you will not have to work at Amagoobooksoft for a little while. Two: you may improve your eventual position at Amagoobooksoft by doing a startup versus simply applying to them today. Three: you may invent the next WhatsApp, and end up with several billion dollars in your pocket. Four: for a certain psychograph of developer, there are non-pecuniary advantages to running a startup in a manner similar to their being non-pecuniary advantages to doing the Peace Corps for some people. ("Change the world!") Five: You may, accurately or not, perceive that you are presently not likely to receive an offer at Amagoobooksoft, but accurately perceive that "Nobody can tell me I'm not ready to do a startup" and rationally calculate that this is a better way to build skills and reputational capital than e.g. getting a job at Burger King even if the money is roughly similar.

P.S. The Mobifotosocialgames For White And Asian Geeks space is a small fraction of the total market for software, though you wouldn't know it from "the tech scene."

projectramo 6 minutes ago 0 replies      
Technology improves existing products and services; its like a multiplier. Technology reduces cognitive load in interacting with a service, improves immediacy and responsiveness and so on. There is an over supply of "tech" products and services if there is an over supply of quality in products and services.

For example, do you think of Uber and AirBnB as two tech products? Or do you think of Uber as brokering (and therefore improving) transportation availability using tech and AirBnB improving housing availability using tech?After Uber was created, AirBnB wasn't an additive "tech" company.

So its not the "tech" part that is key to a company's redundancy but the "goods and services" part.

caio1982 43 minutes ago 1 reply      
The people you talk about, those who will eventually fail more than succeed because of hardcore vast competition, should instead look for the rest of the world first and only then to Silicon Valley. Silicon Valley might seem over supplied as you say, but the rest of the world is just waiting for great ideas, nice solutions etc with its wallet full of foreign money. So no, I don't think there's an over supply of tech products and services. What we currently have, in my opinion, is an over supply of few-years-old-companies-trying-to-hit-a-homerun in a crowded business place (the US).
atroyn 1 hour ago 0 replies      
You're right, not all of them will succeed. Most will fail, in a proportion greater than 80% of all funded projects. In the consumer space, this is an even higher number.

The thing is, it's impossible to know in advance with certainty which will fail and which will succeed. But the ones that do succeed create an enormous return on all that sweat and money. Investors try to pick winners, but even then it's acknowledged that the majority of even the best portfolio will not make a large return.

From the founder's point of view, building something on your own that people genuinely want is an amazing education - even a small amount of success makes a founder far more valuable and goes a long way to expanding their possibilities to try again.

api 2 minutes ago 0 replies      
It's an innovative market, which means people are trying a lot of things. Given that, there's always going to be an "oversupply" of things that don't work or don't solve a problem anyone really cares about. The only time you don't see such an oversupply is in a market where nobody is trying anything new... such as automobiles from about 1960-1970 until the 2000s (hybrids).

No errors means no trial is happening.

PaulHoule 1 hour ago 0 replies      
I think a general theory of it is that once in a while somebody comes up with something people really value and it expands the market and then me too competitors pile in and soon it looks like what you say.

The way to make it BIG is to find an untapped market and be the first to really serve it.

One example I would look at is that health and fitness trackers are crowded but a lot of suffering and lost productivity is caused by chronic pain of various sorts, there is no safe and effective drugs, no end of scams, but perhaps it is the kind of problem, like cystic fibrosis, that can be defeated with intensivity. For instance if you see a physiotherapist he or she might do the right things but only 1/10 as much as you need.

Feel secure with SSL? Think again
5 points by javinpaul  22 minutes ago   discuss
Israeli Iron Dome firms infiltrated by Chinese hackers
79 points by antimora  8 hours ago   8 comments top 6
fredgrott 2 hours ago 0 replies      
Curious question, has the NSA thought of doing root jails as honeypots in front of these important military contractor networks to not only catch intrusions before damage occurs but also catch on to new zero day attacks?
jdmitch 6 hours ago 1 reply      
oiduts 6 hours ago 1 reply      
CyberESI are using a conflict to push to media outlets their old 'news' from 2011, which even then weren't that interesting...
igravious 1 hour ago 0 replies      
ali00 4 hours ago 0 replies      
pew pew, owned.
YC Hacks Winner: Athelas Blood imaging and analysis from your smartphone
145 points by joshmlewis  13 hours ago   71 comments top 17
lbotos 13 hours ago 3 replies      
2nd place: http://ychacks.challengepost.com/submissions/25794-nunchuck-...

3rd place: http://ychacks.challengepost.com/submissions/25746-vrniture

My favorites:

http://ychacks.challengepost.com/submissions/25722-savant - basically text searchable system playback. Think Timemachine meets quicktime recorder.

http://ychacks.challengepost.com/submissions/25720-gezi-web-... - Tabless browser. It was an interesting concept using the history as the search/navigation display. He struggled to sell during the pitch.

http://ychacks.challengepost.com/submissions/25770-listening... - This was an audio parser that realtime searched what you were saying in a conversation. So if you said "Apple stock versus microsoft stock" it would search and result would be displayed.

ajiang 13 hours ago 0 replies      
Not only is this an impressive application of data science in solving a real problem, I'm even more impressed that Tanay is still in high school and already building great hacks leveraging computer vision and machine learning. Truly awesome work that deserves the recognition.
tdaltonc 12 hours ago 1 reply      
I love the idea and the scrappy implementation, but how does anyone know that this works? What was it validated against? Should the title maybe be "Idea for cheap disease analysis via blood sample and iOS"
joncalhoun 13 hours ago 3 replies      
Was the lens ready prior to YC Hacks?

I am not trying to take away from what they built, but I am genuinely curious what all was done prior to YC Hacks, since building the lens there seems like a challenge in itself.

gotrecruit 12 hours ago 6 replies      
one question: why is every single person in the YC Hacks photos using a variant of the macbook? i'm someone who is about to pursue a CS degree, and also embarking on an autodidactic journey in software development and i'm entirely used to windows machines and do not personally like the mac interface that much (possibly simply out of habit). why is it so prevalent for developers and programmers to use macs? are windows machines inferior for such purposes?
ihnorton 7 hours ago 0 replies      
Nicely done! Manu Prakash's lab at Stanford has explored this bead-lens approach quite a bit with the Foldscope project:



It has come up a few times on HN, e.g.: https://news.ycombinator.com/item?id=7591573

woah 11 hours ago 2 replies      
Where did they get malarial blood during the hackathon?
carbocation 11 hours ago 0 replies      
This sounds like something that is done in every American hospital - the "automated diff." In a blood count, the cells are examined and determined to be red cells, white cells, or platelets. Within each category of cell there are sub-types (neutrophils, lymphocytes, monocytes, eosinophils, basophils) and sub-sub-types (bands, metamyelocytes, etc). Basically, you can automatically identify members of various cellular lineages.

Cool that they got this to work through an iPhone camera.

deepGem 12 hours ago 0 replies      
Two words. Hats off !!. My initial pessimistic instinct told me that this was not completely built at the hackathon. Glad I read through the comments.
seesomesense 6 hours ago 0 replies      
Try getting FDA approval for this and see what happens.
thecritic1729 10 hours ago 1 reply      
There have been a lot of these recently, actually something launched about a week ago. Still its great for a 30 hr hackathon.



earino 10 hours ago 0 replies      
In the article's slideshow there are a bunch of interesting pictures. The very last picture looks to be a box full of Lego blocks? What did that component of the solution do? :)
r00k 11 hours ago 1 reply      
For those that attended, was it tough to concentrate in that large warehouse-y room? Looked loud and busy.
WordBiLLY_maker 11 hours ago 0 replies      
Athelas is pretty awesome, and potentially life-saving. Fantastic job Tanay.
JoshTriplett 11 hours ago 0 replies      
Very impressive work, and great name as well.
tmrtn 13 hours ago 2 replies      
How is this different than lifelens?
greggman 10 hours ago 2 replies      
Interesting that nothing in the original post says iOS. Only HN's title. In fact the page linked to says

"BUILT FORAndroidiOSMobile HTMLWebDesktop MacDesktop OtherHardware / Wearable"

Remy Computer-generated TCP congestion algorithm
240 points by JoachimS  19 hours ago   34 comments top 8
donavanm 15 hours ago 2 replies      
A key point that's glossed over is computational complexity on the senders side. The existing congestion & flow control mechanisms are quite simple. In contrast these "algorithms have more than 150 rules." Additional state and computation time on the sender side is non trivial when managing tens or hundreds of thousands of concurrent flows.

These algorithms vary based on link/endpoint characteristics. This would require a priori knowledge of the path & quality to each TCP receiver in order to select an appropriate congestion control algorithm. This problem is probably tractable for large scale implementations. The number of unique networks an endpoint is exposed to is in the few million range, and roughly stable over time. Collapsing adjacent and similar networks would get down in to the tens of thousands of variant prefixes.

The characteristics of each prefix are roughly stable over time; a subnet of consumer cable endpoints does not flip to become a CDMA mobile subnet. At a guess the rate of change is 1-5% per day. If you can track the performance of millions of subnets a 1% delta per day is certainly feasible. In practice any single sender would need dozens, or hundreds, of different congestion control variants.

And lastly they appear to simulate receivers with similar network characteristics on a single contended link. In practice receivers will have wildly different characteristics. Traffic to mobile, consumer fixed line isp, and datacenter networks will all travel on common transit carriers. Additionally even a single IP endpoint can have variable hidden receivers; think 802.11, gbe, embedded clients, and a desktop OS behind a consumer NAT device. Now the sender must track, and adapt, congestion control per flow.

In summary synthetic testing of a simplistic use case has out performed generalized solutions. This should surprise no one. The details of practical implementation are ignored, and significant.

keithwinstein 15 hours ago 0 replies      
Grateful to see everybody's interest in our 2013 paper! You may be interested in our follow-on work, led by my colleague Anirudh Sivaraman. This will be presented at the ACM SIGCOMM 2014 conference in a few weeks: http://web.mit.edu/keithw/www/Learnability-SIGCOMM2014.pdf
riobard 13 hours ago 0 replies      
It's from the same author who made Mosh, a mobile shell/SSH replacement that will keep you sane with high latency/lossy connections to your servers.
dtaht 14 hours ago 0 replies      
I do look forward to the day where such complex congestion control protocols can be implemented in hardware...

Until then... fq codel is the best thing going.

contingencies 17 hours ago 2 replies      
Wow, this looks pretty impressive.

My general understanding is that congestion control algorithms seek to provide performance and efficiency in end to end TCP (transport-layer) connections that are well-matched to the underlying network path characteristics (latency, throughput, lossiness). Unfortunately, obtaining reliable information about these characteristics can be difficult, and this is particularly the case with dynamic paths (IP mobility, mobile while moving between congested/non-congested cells, shared near-capacity networks, etc.).

Previously, the areas in which customizing these sorts of algorithms has yielded particularly high returns have been satellite communications and other extremely long distance/high latency/known characteristic deployments with outlying or extreme properties.

My main two questions would then be: (1) To what range of network layer path or individual link-layer characteristics do the claimed benefits of this algorithm apply? (2) How much difference will this make to mobile access or IPv6 IP mobility under a range of different realistic network link issue scenarios?

If the claims in this paper are true (broadly applicable increase in throughput and fairness) then I suppose we'll see a switch to this algorithm en-masse, thus providing another handy covert operating system detection mechanism to delimit the new generation of kernels.

redxblood 15 hours ago 1 reply      
Awesome, just awesome.Is it possible to use this algorithm in my machine and replace the existing one? Would that be too hard?
GhotiFish 18 hours ago 0 replies      
Oh man, this is a heady subject, and I feel I might not be getting the full effect for how much of it is going over my head.

As I'm coming to terms with this topic now, what kinds of applications could this get applied to? A program to produce routing rules automatically based on assumed and then derived network infrastructure, would that make more organic networks more feasible in organizations? Or is this more a tool for telecoms?

Is there much history of machine learning when it comes to packet routing technologies? I would of thought yes.

required reading I think:





luu 17 hours ago 3 replies      
I love that this has a big fat "reproduce the results" button with detailed build instructions.

Why isn't reproducibility required to publish in CS? Unlike in fields like psychology or chemistry, reproducing results should be trivial if the authors provide instructions on how to do it.

Comcast Confessions: why the cable guy is always late
48 points by smacktoward  2 hours ago   9 comments top 6
preinheimer 2 minutes ago 0 replies      
I worked as a contract cable installer back when cable internet was new. New enough that they used one guy to do the computer set up, and a second to do the cable wiring. As I was finishing my tenure they were switching over to "super techs" who would do both. I was the computer half. This was like 2000.

We had no interaction with the guys doing the cabling, they were a different company. I'd get a sheet of installs in the morning, as well as the time frames. 8-12, 12-5, and 8-5. If someone had managed to convince a rep we might see a shorter timeframe like 3-5, but they were pretty rare. I'd show up, slot a network card, plug in the cable modem if the cable guy had been there already, and leave.

Then I moved to the big city, where the company gave people specific times. 10, 11, 12, 1. etc. They tended to give the clustered appointments to the super techs, so I was driving all over the city, searching for parking, and waiting to get buzzed in. My first two weeks were rough, then I discovered the manager had been going light on my appointments while I learned the city. Then my appointment book started looking more like: 10, 10, 11, 12, 12, 12, 2, 3, 4, 4, 4, 4. On good days I'd hit the closest double/triple/quadruple booked slot early, hit the second one one time, and try to race to the rest. Skipping lunch as required, or snacking on a nutrigran bar while wishing my car had A/C. On harder days I'd get to the first appointment barely on time, discover they had Windows NT and try to pawn off appointments while juggling IRQ settings.

Some days were an absolute mess, 8,8,8,12,12,12,12,5,5,5,5,5 or the like. You couldn't show up early for a 5, those folks were racing home to meet you as is. So I'd end up sitting in a park trying not to kill myself on a razor scooter for a few hours waiting for the next rush.

padobson 25 minutes ago 0 replies      
I'm generally a Laissez-faire kind of guy, but the treatment I get from my cable company is a strong argument to drastically increase regulation, or even nationalize entire chunks of the industry.

If you're providing a service so poorly that nationalization seems like a good alternative, then your business probably deserves to be nationalized.

coldcode 1 hour ago 0 replies      
This is what happens when you have a monopoly (in this case a regional monopoly). Customer service is an expense item, so minimize it and you make more profit, after all what can the customers do, move? I worked on a project for a company where the call center did reservations and customer service. They only paid the workers if they took a reservation; thus any customer service call resulted in a hangup. These customers never used their company again. The difference is a monopoly doesn't have to care as no one will leave.
raldi 1 hour ago 1 reply      
Saved you a click: they overbook
jmt7les 23 minutes ago 0 replies      
As a former techician for Comcast, the reason is that the management there is far removed from what actually goes on in the field, they have no idea how hectic the scheduling can be. When an appointment can reasonably take anywhere from 2min to 3+ hours, it takes much more flexibility on the management end to allow the work to be done properly instead of being forced to rush through it.
classicsnoot 36 minutes ago 2 replies      
It would appear that 'customer service' is an area in desperate need of a revolution. A relative of mine worked in the BAE call center for 6+ years, and they were constantly reviewed and retrained. This service was exclusively for BAE employees and contractors.

The trend of fucking over customers is a vestige of the near monopoly the distributed cable consortium has in the US. There is no real motivation to do better as most people don't give a shit until it affects them directly (@raldi).

This is probably a silly idea, but what about an all volunteer charity tech support? Are cable boxes really so mysterious and complicated as to be serviced only by 'specially' trained employees and 'vetted' contractors?

EtherCalc: Open-source web spreadsheet
208 points by sheetjs  18 hours ago   20 comments top 6
kentonv 15 hours ago 1 reply      
EtherCalc is really impressive! We actually have this running on Sandstorm.io and were planning to release our port later this week. You can try it now as follows:

1) Click "start the demo" at: https://demo.sandstorm.io

2) Open this link to install EtherCalc: https://demo.sandstorm.io/install/100cdd4f5eb0ad2110b98a81c5...

(You can also install on your own Sandstorm server, if you have one, by substituting it for demo.sandstorm.io. Instructions for setting up your own server are at https://github.com/sandstorm-io/sandstorm .)

Thanks to Jake Weisz for this port, and of course the EtherCalc people for developing this and making it open source in the first place.

tekacs 17 hours ago 2 replies      
Looking at the GitHub[1] or LinkedIn[2] pages for the repository author on this project is a good reminder-to-self (for me, at least) both that:

- time and dedication/enthusiasm can enable some pretty great things in a whole range of different circumstances [+]

- there are a lot of interesting opportunities for work (and people doing interesting things) out there in the world than that which is readily talked about

[1]: https://github.com/audreyt

[2]: http://www.linkedin.com/in/tangaudrey

[+]: some would at this point say 'and so we should not pre-judge' - pre-judging can be a helpful general-purpose heuristic, though - more useful advice might be to avoid 'final judgement' of anyone

comeonnow 2 hours ago 1 reply      
I'm really impressed, by far the best open source web based implementation of spreadsheets that I've come across.

An area which I'm struggling with is the formatting; and this was because I didn't see the 'Save to: A1:A20' at the top, I expected the button to be below or expected it to save when I changed the values.

Other than that, it's really good!

sidcool 10 hours ago 0 replies      
This is impressive, very smooth and responsive. Most importantly, it is open source. I am going to dig through the code like a gold digger. Thanks!
gboudrias 15 hours ago 2 replies      
While the "Ether" functionality is awesome, I don't like personally like SocialCalc. I was hoping for something better to be honest, as ergonomy-wise it's just years behind.

The main problem for our use case is that you can't have multiple sheets for one "document" (as far as I can tell). There are other small but important problems such as the weird formatting interface. All things combined make SocialCalc about twice as slow as LibreOffice for me so far. I still have to use it since there's nothing better at the moment, but I'm not really happy about it.

theophrastus 14 hours ago 1 reply      
stupid naive user (on linux xmonad firefox) question:

  "Drop a CSV or an Excel XML (.xlsx) file here to import it"
what sort of left-mouse/middle-mouse or ctrl-C/ctrl-V does "Drop" refer to in the above?

White Label Money Laundering Services
70 points by panarky  10 hours ago   26 comments top 4
patio11 9 hours ago 5 replies      
There's a Bitcoin company which I will elide naming that is, perhaps unintentionally, a carder cash out bonanza. It will continue being so until Amazon cracks down.

The gist: the site lets you buy BTC with credit cards, at a substantial markup to the market price for Bitcoin (10 to 20%). The actual mechanism is by buying wish listed items on Amazon picked by the BTC "sellers." This lets the sellers use BTC on Amazon and also get a discount. The site keeps a spread.

Why is this a carder paradise? Because the only reason to ship a random address a $300 camera for $240 of consideration is the $300 you paid is not your $300. When the chargeback/fraud investigation comes in, the carder doesn't have the stolen goods and has no IRL nexus to the crime. They just have their illicit profits laundered to BTC.

robrenaud 1 hour ago 1 reply      
> Traditionally, fraudsters get around this restriction by turning to reshipping services that rely on mules, people in the United States who get recruited to reship packages after responding to work-at-home job scams. These reshipping mules are sent multiple packages containing electronics that have been purchased with stolen credit and debit cards.

Is it possible to fraud the fraudster here? You sign up for the work at home job, get a bunch of high end electronics sent to you, and then just keep it (or resell it locally).

chatmasta 10 hours ago 3 replies      
A lot of these Brian Krebs articles seem to be little more than exposs of popular services from carding forums. Of course, I don't mean to knock his investigative reporting -- he is performing a valuable public service, and some of his stories require far more complex investigative journalism than simply reading forum posts.

But I am wondering, where are all these forums that Krebs is signed up for and reading? Also, is he fluent in Russian? I know revealing the URL's might tempt would-be cyberthieves, but personally I have my own curiosity that I would like to satisfy by reading them. I suspect there is a lot to be learned just by reading those forums (which I assume are member-only and require some kind of vetting process, anyway).

alister 9 hours ago 2 replies      
> Buying luxury goods that can be resold overseas at a significant markup amplifies the fraudsters profit.> where electronics and other luxury items typically sell for a much higher price than in the United States (think new iPads and iPhones, e.g.)

iPhones and iPads are indeed much more expensive in (for example) Brazil than in the U.S.:


because the government of Brazil imposes a 50-100% luxury tax.

So I think there is validity in the article's claim that this difference amplifies the thieves' profits. However, this claim is always getting exaggerated in news reports; it's as if every stolen item gets shipped overseas because there's much more money to be made.

A variation I heard purports to explain what happens to all those stolen bicycles: the crooks ship containers full of stolen bicycles overseas where they can be sold for triple the price. If it were so much profit to be made, a legitimate business could simply buy the merchandise and export to these countries legally.

Also, in some cases, it would be very difficult to exploit the price difference whether the goods were exported legally or illegally. For example, in Singapore cars are massively more expensive than in the U.S. The government auctions off the right to put cars on the road each year. If thieves managed to get cars into Singapore, they'd still have to somehow get past a strict registration system.

$1,000 Hepatitis Pill Shows Why Fixing Health Costs Is So Hard
128 points by wallflower  17 hours ago   226 comments top 25
georgewfraser 14 hours ago 12 replies      
Hepatitis C is a nasty disease that primarily affects people on the fringe of society. Many of these people don't have money, they don't have insurance, they often aren't good at sticking to complex drug regimens. And yet a bunch of pharma companies put in big money to develop a cure - not a treatment that makes it manageable, a cure. These drugs are a bargain and we should all be amazed and thrilled that this has happened.
InfiniteRand 3 hours ago 2 replies      
Just to throw something out there, maybe for important cures to diseases, the government should just pay a one time purchase of the patent and make it public domain (or something like that). I imagine the price of the patent would be extremely high, but it might be a simpler way of dealing with things than regulating the price. And given the direct and indirect costs of regulation (such as lobbying, counter-lobbying, etc.), it might be worthwhile.
jzwinck 14 hours ago 2 replies      
This sentence worries me:

> The United States health insurance system works better for costs that are spread out and predictable.

So the insurance companies want to reduce their tail-event risk. It's almost like they should buy some insurance. And they can do exactly that--it's called reinsurance.

The entire point of insurance from an individual's perspective should be to cover unexpected costs. Big costs, not small ones we can pay out of pocket. But it seems that over time, people have come to rely on their employer-sponsored plans to protect them from routine expenses like dental cleanings, eyeglasses, etc. That's not insurance--that's paying a premium to a middleman to manage your bills for you.

Insurance ought to be designed specifically for this sort of treatment: expensive, unexpected, and important.

shiven 14 hours ago 3 replies      
To all those pulling out pitchforks and torches, how do they think these drugs get discovered and more importantly, proved safe and efficacious for a given human disease?

Do they have any idea how much it actually costs? Sure, the Shylocks in "management" are greedy for their pound of flesh (and which industry does not have those?), but there is a genuine cost to finding these chemical/biologic agents. The days of Alexander Fleming and Jonas Salk are long gone. Just as the days of one-off genius chemists/physicists/mathematicians/explorers now exist only in history books.

Original research & discovery, that is not of mere academic interest, that yields actual usable products, that people can put inside their bodies, is a non-trivial investment of manpower and resources that carries excruciating risk. This ain't some app you can write in your jammies, that can be MVPd by Tuesday and pitched to VCs over next Sunday's brunch.

As to the public funding of such endeavors, that is a subject for another post(s), requiring a larger keyboard than the one on my smartphone :P

msandford 15 hours ago 6 replies      
Classic case of value-based pricing rather than cost-based pricing. From that perspective they've priced it quite competitively.

But when their costs to manufacture are small and the process by which they develop drugs is so byzantine and opaque it's easy to see how people could get outraged.

I wonder how long before someone gets the bright idea to claim eminent domain on drug (or other) patents for the sake of medicare. Pay the drug company back R&D, maybe 2x R&D and then let people start making generics.

I'm not sure it's a good idea because it might well reduce investment in new drugs (developing drugs is like VC, you fail a lot and occasionally hit it out of the park) and that would be a bummer. But I could see it happening.

sytelus 6 hours ago 0 replies      
This article seems to single out an odd outlier. Sure there are super expensive drugs like these but on average major components of health care is not drugs but hospital and doctor's fees. My 1 hour visit to emergency room costs $2500 in which single injection was administered that was under $100. Rest of the charges were simply for "services" provided by hospital. I once calculated average hourly charge for doctors using other examples I was aware of and it came out to around $1000 for every hour per doctor spends with you plus $100 for each nurse for each hour they have to attend you. Price component for drugs on average is negligible in most ordinary treatments.

The problem with US health care is invisible for-profit conglomerates that controls and owns major health care facilities across the country. There ridiculous charges works because consumers don't care because they don't pay out of pocket majority of expense in lot of cases. So all these conglomerates have to do is to make sure laws allow them to charge 3X-4X fees like above to have amazing margins.

One way to solve this issue in US is to promote non-profits to operate health care facilities. This can be done by government subsidies and grants in the same way they are provided to universities and research community. There are 200 major cities in US. If we want to build 2 great non-profit hospitals in each cities, it would cost 2 X 200 X 0.5 = $200 billion even at the higher end. If we spread this out to 5 years, it's less than $50 billion per year - drop in the bucket for current health care bugets. These hospitals can then charge 2X-3X lower amounts to drive the price down. Without introducing non-profit competition to for-profit organization we are in same situation where operating systems are controlled by one commercial company and there are no open source alternatives resulting in redicluously high prices and stagnated innovation.

2bthrowaway 14 hours ago 2 replies      
Just fired up a throwaway to comment here. I've been taking this medication over the past 3 months and finished about a week ago. A test a month ago showed I was already cured. This drug is good. Really really good. Side effects were minimal in my case and absolutely worth it.

I only skimmed the article but knew what it was about right away just from the headline. With healthcare, my copay per month was originally 200. My employer gutted my health insurance midway through treatment and my 2nd and 3rd months were quoted to me at a 2000 a month. I spoke with the specialized pharmacy and told them I couldn't afford that. They got me approved for a program that brought my cost of the Sovaldi down to 5 a month. The secondary medication (Ribasphere) to go with it was a little more expensive, but I forget how much.

Either way, I would have gladly paid the 2000 a month for this cure. Cost wasn't even a factor to me. If it came down to having to take out an 80K loan for it, I would have. My health is more important and the peace of mind knowing I've been cured is indescribable.

I'm open to questions since I've been dealing with this over the past 6 months.

bakhy 56 minutes ago 1 reply      
Something smells here... The drug is taken in a short period of time, and cures the disease, thus killing the existing business model of selling treatment for a very prolonged period of time. Since this means lost revenue from the old treatment, the new drug, the cure, gets priced high enough to somewhat compensate? or, (economics - as exact as spitting into the wind) priced just high enough to still be cheaper than the old, long term option, regardless of costs of development (which are presumably lower)?
bkohlmann 14 hours ago 1 reply      
Did anyone else notice the last two paragraphs which basically said "oh by the way, competition is already here, so this is not a long term issue, and costs will rapidly decrease.". Which basically defeated the entire hand wringing nature of the article!
steve-howard 1 hour ago 0 replies      
Apologies in advance for the off topic, but what the hell is with that web site? I double-click a term on the page to highlight it for a search and it changes the font size. I move my mouse to the left because that's where I put my tabs and a menu pops out. They're trying to be clever but it's just incredibly frustrating.
tdonia 10 hours ago 0 replies      
If this debate interests you and you want to learn more about it, you should get in touch with me. Check my profile for my email address; http://contextmatters.com is the company I work for and here was a post our analysts wrote about Sovaldi: http://www.contextmatters.com/sticker-shock-in-drug-pricing-...

We're systematically collecting data on this exact conundrum - how much is a treatment that was, until recently, infinitely expensive worth? there's a whole lot of room for smart people to make a difference.

bluthru 15 hours ago 2 replies      
Socializing research for major diseases seams like a no-brainer to me since the end goal is so well-defined. It's not a question of "do you want the budget hepatitis vaccine or the deluxe hepatitis vaccine?", it's simply one vaccine. The demand is also well-defined: people will spend virtually anything to live a healthy life.

The polio vaccine was funded by federal money, which it allowed it to be reproduced freely.

xenadu02 11 hours ago 2 replies      
I believe around 1/3 to 1/2 of all medical R&D in the US is paid for by the government; if we had an actual program in place to ensure the government kept a financial interest in these things (instead of just giving it away), we could choose to either lower prices or recoup funds, or some mixture of both.

This is nothing new; the railroads were built with massive federal subsidies and guarantees (making Ayn Rand's hard-on for railroads hilariously misguided). Especially the trans-contitental railroad which was seen as a massive risk and almost entirely funded by US federal government loan guarantees. The US Interstate highway system and the internet were funded initially by the government as well.

mhb 15 hours ago 0 replies      
Drug Costs and High Prices - Here We Go Again:


waingake 15 hours ago 1 reply      
It seems to me that in certain industries profit motive doesn't mesh with the public good. Isn't there a need for a publicly funded pharmaceutical agency that develops drugs for the public good in an open source manner?
jasonwocky 12 hours ago 1 reply      
> But in Americas health care financing system, people tend to change commercial insurance whenever they change jobs, lose Medicaid coverage when financial circumstances change, or leave the commercial market altogether when they become eligible for Medicare at age 65. That means one company will be stuck footing the big bill, and another will probably reap the benefits of a healthy liver 20 years later.

>If it is cost-effective from a societal standpoint, it is not necessarily going to be cost-effective from a health plan standpoint,

/sigh. Can we have a public option for health insurance already, please?

We have a pharma company not playing by the normal, "gentlemen's rules of the game" that backload costs. Instead, they've got a great cure and are going with the "fuck you, pay me" model. Which, fine, more power to them. I really have no trouble with it. However, unfortunately, it doesn't play well with our current racket of employer-based health insurance.

thefreeman 9 hours ago 0 replies      
Disregarding the price issue, one of my main takeaways from this is that it is another issue that completely wouldn't exist if we had a single payer system.

They said that the cost of treatment isn't really that out of line with other treatments insurance covers. The issue is that the payment is completely front loaded. Because of this, combined with the frequent changes of insurance in the U.S., you end up with one insurance company footing a giant bill for a customer who may end up switching providers in a year.

guard-of-terra 7 hours ago 0 replies      
3.1 million ill?

I guess that US should just buy a billion pills with huge discount and then distribute those as they please.

tzs 14 hours ago 2 replies      
I think it is things like this that get some people wondering about the prices.

US: 3.2 million people with Hepatitis C. Price $1000/pill.

Egypt: 12 million people with Hepatitis C. Price $10/pill.

zanny 15 hours ago 4 replies      
It is almost like using artificial IP rights to prop up supermassive R&D and then letting the company charge whatever they want for "their idea" is not the most sane business model.
conover 14 hours ago 0 replies      
I often wonder if people even read the articles. Yes this drug expensive upfront. Why is it expensive? Unknown. Does its development process justify its expense? Unknown. Is this drug a potential cure versus a lifetime of (more expensive) maintenance treatment? Likely. Are there competitors coming to market soon (as someone else mentioned)? Most likely

Edit: Larger costs spread over the long term are more palatable than lesser costs compressed into a shorter term. Humans are bad at estimating scale.

RexRollman 15 hours ago 2 replies      
The cycle of greed keeps healthcare prices high.
arunc 10 hours ago 1 reply      
Drug companies don't want us well, they want us as a life-long customer.
ck2 15 hours ago 3 replies      
No, it's not hard at all. You imprison the people making it cost that much for corruption.

They are entitled to profit if you want to argue for that, they are not entitled to destroying society.

$80,000 for hepatits cure is only the start if you let them get away with this.

Show HN: Workfrom The best coffee shops and cafes to work from
99 points by darrenbuckner  19 hours ago   67 comments top 25
Udo 7 hours ago 1 reply      
Adding new sites should be easier. I get that this is a tradeoff between rapid engagement and trust, but since the project is so new it's vastly more likely that a visitor will want to add something as opposed to successfully looking it up.

Maybe the focus on cities, while great for the lookup scenario, should not play such a big role when adding data points. My suggestion: just open it up, have a form where any member can add a coffee shop, at any location (Google Maps-powered). As site admins you could review the submissions later and sort it out.

For example, I was initially motivated to add some places near me. That's in Germany, so no cities there yet. This means I've got to jump through the hoop of adding a city, at which point any user who was previously excited about adding stuff to the database becomes stranded and loses interest. I would like to add sites in different cities, so technically I would have to open up requests for 3 cities - in a sparsely populated area like Germany that's not feasible. I'm more interested in how far away a location is than what city it is in.

Also, you should make use of the browser Geo API.

greggman 49 minutes ago 0 replies      
A few things come to mind:

Price: For example at some places I might recommend there's a "per hour" charge. Examples: The Workshop Cafe in SF is $2 a hour. The Epicenter Cafe in SF gives you passwords that are only valid for 1-2 hours depending on what you buy. The Terminal in Tokyo is $3 per half/hour or $22 max for the whole day but if you buy a $20 yearly membership it's $12 max for the day. They include unlimited soft drinks (soda, coffee, tea).

I didn't see how I would list that stuff on your site.

Another is I'd like to be able to vote or rate, comment. Maybe like Yelp? I just got to LA, one place that was recommended was "Paper or Plastik Cafe" but I didn't find it very friendly to working. At least half the cafe is marked as "No notebooks allowed" and the area where they are allowed is very dark and uninviting. Maybe it used to be more friendly to workers which is why it was recommended a couple of years ago but I wouldn't recommend it now.

tedchs 4 hours ago 1 reply      
Nice job guys. I appreciate the optionality of having a password. I was also able to successfully use your site with only my phone, which some sites have issues with.

One suggestion, although it's helpful to have Wi-Fi passwords listed, I think your team should confirm with the business before posting it. They might want to be picky about who they give it to. I feel like me asking a coffee shop person for the password is an implicit question of whether it's OK for me to hang out with the laptop for a couple hours, and also gives them the chance to tell me if it's down right now.

drivingmenuts 4 hours ago 2 replies      
I don't think I could do work from a coffee shop. They make their money on churn and my camping out in a chair for hours kind of prevents that.

I really have to wonder how the owners feel about all the other people doing exactly the same thing.

groundhog 12 hours ago 2 replies      
This looks really useful! This isn't meant to be a criticism, but I was wondering how your website will overcome the issue of people not wanting to publicize their favorite work spot to prevent overcrowding? Also, from your experiences so far, are cafes happy to have people sit in their shop for extended periods? My impressions are that while some places (cough, nice people in Portland) encourage such behavior, others may not take to campers so nicely.
darrenbuckner 16 hours ago 0 replies      
Hello HN! Workfrom was developed to help people find the best places to get work done. We look at WiFi, access to power, background noise, food options and more. We're expanding to new cities (US and international) and we rely on our community to help hunt down and source places we list. Anyone can add a location via our site. We'd love help finding places and please provide feedback about how we can make this better!
jmhobbs 48 minutes ago 1 reply      
I can not sign up for the life of me. I get my login link, follow it, and I'm not logged in.
srom 1 hour ago 0 replies      
That's great! However, I would like to be able to add places without the need to be on site at the time of writing (e.g using a geocoding service like Google Maps API)

I suppose it is a way to avoid spam though.

collyw 7 hours ago 5 replies      
I find my workplace distracting enough when trying to concentrate (thank god for August, most people go away for a month where I am).

Do people actually find it productive to work in a coffee shop? There will be even more distractions and noise than my office.

maknz 6 hours ago 0 replies      
It's a great idea. Only suggestion would be to make it easier to add cities and places and let the community report bad places, instead of what seems to be a review-first approach. I'd rather more content (and the ability to add content for my locals right away) than have to go through a "beta" phase to get the city up and running.
canterburry 12 hours ago 1 reply      
I would suggest you don't force people to sign up to add a location. I just didn't add Coffee Bar in the mission district because I simply can't be bothered to sign up.
Phogo 2 hours ago 0 replies      
Nice looking site, not really for me but looks useful to others. You should look at disabling directory indexing, https://workfrom.co/siteadmin/wp-content/uploads/
_pmf_ 10 hours ago 1 reply      
"Coffee shop owners hate him."
peteretep 4 hours ago 0 replies      
You've got to find a more representative photo of London
dustintran 7 hours ago 1 reply      
I'm not sure how useful this would be. Do people willfully drive from work to a coffee shop in order to get work done, and not simply walk to their favorite coffee shop within walking distance? It seems like distance is more the contributing feature than anything else.
icedog 10 hours ago 2 replies      
Am I the only one who prefers to work in public libraries? The San Mateo library has plenty of seating/power outlets, a respectable cafe, and free underground parking.
hadoukenio 13 hours ago 1 reply      
Error establishing a database connection.

This was always an idea in the back of mind to do. I'm glad someone else did it for me :)

Best of luck.

mayneack 13 hours ago 1 reply      
It's down right now, but is this like the hotel wifi rating (http://www.hotelwifitest.com/) that was posted recently? I hope so, I've wasted quite a lot of time in coffee shops with terrible wifi.
matthewwiese 10 hours ago 1 reply      
Registered and sent in a suggestion for a city. Just visited a local coffee shop that would fit perfectly on a site like this.
codecondo 7 hours ago 1 reply      
What about Bristol, UK? Anyone has got any recommendations?
nXqd 13 hours ago 1 reply      
Error establishing a database connection.

I find that an easy setup can handle this kind of traffic, plz fix it :D Nice idea !

manirelli 9 hours ago 0 replies      
As someone who works from home this looks like it will become an invaluable tool.
daniel_sim 12 hours ago 0 replies      
Some interesting panorama effects on that Heart Coffee photo.
simzen85 9 hours ago 1 reply      
similar project http://coworfing.com/
danvayn 12 hours ago 1 reply      
When's Chicago coming?
Localizing Papers, Please
179 points by baxter  23 hours ago   50 comments top 6
brianmcconnell 19 hours ago 4 replies      
Localization professional and developer here. I'd recommend taking a look at Transifex. This is a well thought out tool for managing localization projects and assets (prompt catalogs, resx files, etc), and for managing the translation process (it supports machine, crowd and professional translation, so you can optimize for cost and quality).

They also just released a really neat Javascript tool which makes translating web content super easy. You just embed some JS in your template, and it re-writes the pages in translation when needed. Way way easier than, for example, setting up a multilingual Drupal site, and in most cases, will get the job done nicely.

My $0.02

Cyph0n 20 hours ago 0 replies      
Very interesting article. I can't how imagine how difficult it must have been to support localization after the game was released.
danso 19 hours ago 3 replies      
In case you don't see the link, Pope created a web interface, hosted on Github Pages, that allows users to easily do the localization, collaborate via Github forks, and import/export their work via CSV:


Pretty brilliant...reading Pope's devlog for the game makes it clear that he's an excellent game developer and designer..but it's unexpected that he'd also know how to whip up a useful, well-designed web-app for the purposes of supporting his game like this.

DrTung 18 hours ago 5 replies      
Very minor complaint but first of January 1984 is always depicted as '1984.01.01' in the game, regardless of I18N selected. While this is good in Germany, it many countries like US you instead prefer something like '1/1/84'.
aeontech 17 hours ago 0 replies      
Very interesting writeup, thank you!
ekianjo 12 hours ago 4 replies      
In his second part of his article, he says...

> Theres a system for making people sound generally non-Japanese (using lots of katakana and dropping prepositions), but its tiring to read and has an air of childishness, since this is one of the first scripts kids learn to read/write in Japan

This is utterly wrong. Katakana usage in Japanese has nothing childish attached to it. If at all, Hiragana would be the one which is considered the more "childish" way of writing, but there are numerous imported words (and more and more, I'd say) using Katakana even in business context - and certainly taken very seriously.

If you don't know a language, don't make assumptions on it. By the way the french translation of "Your son is dead" as "Votre fils est mort" is very dry and tasteless, the proper way or saying it in french is "votre fils est decede". I hate it when people do a literate translation from English to French, many words are similar but they are not used at all in the same situations.

Show HN: Gutenberg A simple interface to the Project Gutenberg corpus
83 points by c-w  16 hours ago   11 comments top 5
brickcap 4 minutes ago 0 replies      
Wow this is just what I have been looking for. A few questions:-

1. Is it possible to download files in html format? I really prefer ebooks in html cause I can attach my preferred "readSettings.css" to it that way. *

2. Is it possible to run a custom script after the book has completed downloading?

3. I don't understand what you mean by "Making meta-data about the texts easily accessible through a database" in the description. Can you expand a bit on this?

4. Is it possible to specify other donwload contexts like "genre"

Oh Thanks a lot for this :) I always wanted a command line uitlity for project gutenberg.

* I also think that html files are lot easier to read on the phone as you can style them where as withthe txt files you have got no choice but to use horizontal scrolling unless you are in a landscape mode.

c-w 4 hours ago 0 replies      
Hey all, OP here.

I built this because I think that Project Gutenberg is a great resource for NLP (e.g. stylometry, tracking writing styles over time, authorship detection, ...) - I wanted to use the data on Project Gutenberg a number of times in the past but always ended up using another corpus because there wasn't an easy way to access the Project Gutenberg data. Hopefully this library fixes that.

The project currently is "works on my machine" quality, so please do report any bugs you stumble across.

Also, if you can think of any use-cases for the Project Gutenberg data that aren't easily doable using the functionality that is currently available in the library, please let me know (e.g. by filing a ticket on the Bitbucket repo).

sethish 11 hours ago 2 replies      
This is fantastic!

I just made a github repo for each Gutenber book: https://github.com/GITenberg

This will be very helpful, the XML/RDF files are a hassle.

tokai 3 hours ago 0 replies      
+1 for bitbucket
sroerick 13 hours ago 0 replies      
This is really awesome.
       cached 4 August 2014 16:02:01 GMT