FCC closes telemarketing loophole used by scammers - <AUTHOR> https://www.consumeraffairs.com/news/fcc-closes-telemarketing-loophole-used-by-scammers-080519.html <comment><USER2> This is nice and perhaps actually useful for going after international organized criminals...but still doesn't prevent anything. We need actual authentication for Caller ID. Urgently.

Fake voices are already being used to steal millions ([https://www.bbc.com/news/technology-48908736](https://www.bbc.com/news/technology-48908736)). I co-authored the paper linked here, which goes into some detail about why this all matters, particularly for voice cloning... [https://medium.com/@aviv/reducing-malicious-use-of- synthetic...](https://medium.com/@aviv/reducing-malicious-use-of-synthetic- media-research-9def6ab81aaf)

<comment><USER3> Hm, I almost feel like it's the spam problem all over again where the appropriate fixes involve tradeoffs that many (not me though) find unacceptable, and we need to adapt the famous spam solution forum letter:

[https://craphound.com/spamsolutions.txt](https://craphound.com/spamsolutions.txt)

(I just came up with a version for robocalls but I don't want to post it here because it's a giant wall of text that I don't think pays for itself in terms of contribution to the discussion.)

<comment><USER4> Pastebin it.

<comment><USER3> [https://pastebin.com/0htfZWQD](https://pastebin.com/0htfZWQD)

</comment></comment></comment></comment><comment><USER5> I would argue that the legality of this doesn't matter; there's a huge technical problem in that there's no authenticity guarantees at all when it comes to caller ID and the entire feature is badly designed and has always been open to abuse.

SHAKEN/STIR is the (technical) answer to this, though I'll be interested to see to what extent it's adopted.

<comment><USER6> The solution doesn't _have_ to be at the phone network level either.

It would be easy enough for a regulator to simply fine any company whose products are advertised or sold through telemarketing.

Make it the companies problem that some of their marketing contractors or affiliate schemes lead to illegal calling.

<comment><USER7> Forget fines. Everyone in the company needs to be charged with felonies under Rico

Spoofing numbers could be considered a criminal organization

Take down every single person

<comment><USER8> >Take down every single person

Management/c-suite? Sure. Your typical telemarketer working at minimum wage? No.

<comment><USER9> > Your typical telemarketer working at minimum wage?

If they're claiming to be the IRS so they can scam you out of iTunes gift cards, why not? They know what they're a part of.

</comment></comment></comment></comment></comment><comment><USER10> This is akin to the BCP 38[1] problem with ISPs. I suspect few SIP-based telcos do validation of originating numbers today.

STIR/SHAKEN has the potential to help here, but there are still shortcomings, e.g. when originating calls with source numbers obtained from other carriers[2].

1\. [https://tools.ietf.org/html/bcp38](https://tools.ietf.org/html/bcp38)

2\. [https://support.bandwidth.com/hc/en- us/articles/360025664313...](https://support.bandwidth.com/hc/en- us/articles/360025664313-What-Is-STIR-SHAKEN-and-How-Does-It-Impact- Robocalling-)

</comment><comment><USER11> They haven't fixed it. They just made what scammers do illegal for one more reason. Unless they make telecommunication operators liable, this will remain a problem.

<comment><USER12> Yep. Solution is recursive fines. Spam calls from network provider? Issue a warning. Keep it up? The fines start and don't stop coming in until the calls stop. They ignore the fines and are outside your jurisdiction? Warn every company they transit through. They don't block them? The fines start. Rinse, repeat, until you find someone who you can effectively fine or who cares about the warnings (because you can effectively fine them) and they either bring down the banhammer (which those other entities _will_ care about, even if they don't care about the fines) or they find a technical solution.

These calls are largely preying on the elderly. They're despicable and it's disgusting it's taken us so long to stop them—there's no excuse, it's not like human beings don't control every part of what's happening, this isn't some force of nature. Nuke them from orbit.

<comment><USER13> My mother-in-law has alzheimers and is in a care facility, but she really values the independence of having a phone, say to call family.

In the past she'd been scammed by the "your grandson is in jail" scam and the bank stopped her.

One day she was really worked up because she was sure someone was going to come to her facility at 4pm and demand their money from her, and it was all tangled into my family needing money or something. Luckily she has no direct access to funds anymore.

Enough was enough. I found a product that I could put on her phone line that lets me white list her calls. It also suppresses the first ring because with Alzheimers, the last thing you need is the phone ringing once constantly.

It isn't perfect -- it has to be configured over bluetooth and only from a cell phone. I'd prefer a device that lets me do this remotely over the web, but this is what we're using for now:

[https://www.amazon.com/Call-Control-Home-Automatically- Telem...](https://www.amazon.com/Call-Control-Home-Automatically- Telemarketers/dp/B071S6NB5N)

For ourselves, I have a linux box running ncid. I just wish I could find a first ring suppressor that works on POTS. The FRS22100 I tried resulted in a fast busy for any caller -- didn't conform to whatever the central office required.

</comment></comment></comment><comment><USER14> I get a ton of calls offering to lower my interest rate. Im surprised that the card issuing companies mentioned by name in the call- visa, MasterCard, etc. don't take the same tactic that Microsoft used to take down botnets. Microsoft used trademark law to sue the botnet operators and have their domain names seized. Why can't the same happen here with any US based voip operator they may be using?

<comment><USER15> Here's a minor technical correction about payments lingo. Visa and Mastercard aren't issuers.

Payments are kind of a world of their own, but basically there are 5 parties involved in a credit card purchase:

1\. The party that receives the payment. For example, a retailer like Amazon or Target. In payments lingo: "merchant".

2\. The merchant's bank. This is where funds are going to end up. In payments lingo: "acquiring bank" or "acquirer" (because they're acquiring funds I guess).

3\. The customer's bank. This is where funds are going to come from. Usually on credit. For example, Citi, Capital One, Chase, HSBC, Bank of America. In payments lingo: "issuing bank" or "issuer" (because the customer has an account with them and they issue the actual card).

4\. The customer, the person who makes the purchase. This person's name is printed on the credit card. In payments lingo: "cardholder".

5\. A payments network. These arrange payments (including operating computer networks as well as defining rules and policies) and facilitate the purchase. For example, Visa, Mastercard, American Express. In payments lingo: "credit card association".

Back to something vaguely relevant, one way you can instantly detect these scams is that they always seem to claim they're from Visa or Mastercard, then try to talk about lowering your interest rate. Your interest rate is between you (the customer) and your issuing bank (Citi, Capital One, etc.), not between you and the card association. _Visa or Mastercard doesn 't care about your interest rate. The scammers are not even claiming to be from the right type of organization!_

I assume they do this because they get a higher hit rate. If they claimed to be from, say, Chase, then lots of people would think "I don't have an account with them" and hang up. If they say Visa or Mastercard, odds are good that you'll think "yes, I have one of those".

<comment><USER16> There is another entity involved also, the card processor:

[https://www.vantiv.com/credit-card-processing/what- is](https://www.vantiv.com/credit-card-processing/what-is)

</comment></comment></comment><comment><USER17> Is it currently feasible for carriers to block these calls? Like, it should be easy enough to check if the call originated internationally but the area code is domestic. This regulation would appear to compell carriers to act on that.

<comment><USER18> Apparently, this will break a lot of (cough) features (cough) that no one uses, like call forwarding. I also wonder if this will break VOIP systems that small businesses use?

The reality is that no one should care. The telephone system is broken when most of the calls we get are fraudulent. I want my phone to be useful; I don't care if fixing it breaks some phone system set up by a sketchy IT wannabe.

<comment><USER19> I am glad that you "don't care" about breaking a few million phone systems across the world. Every single IT manager, however, does care. If you start having carriers wholesale-blocking calls based on their lack of STIR/SHAKEN's verifications, then you will completely disable the vast majority of IP- and POTS-based phone systems in the country, many of which were purchased/installed in the early-2000's.

You can have the "I don't care" attitude when you have one telephone number in your life. You have to care when you have a couple hundred thousand telephone numbers in your life, like I do, working for a Class 3 ITSP.

<comment><USER20> I have to side with the GP here. The options are completely losing the telephone system because nobody trusts anything coming from it anymore, or having those pre-2000 systems upgraded. It's a no-brainier.

Yet, we seem to be committed into destroying the entire system.

<comment><USER21> It's really amazing how little trust people have in the telephone system now.

At least on personal devices/lines, everyone I've talked about it with now refuses to pick up any call from a number they don't recognize, which is really the only option when 2/3 of the calls you get daily are spam. Most just assume that if it's important, the caller will leave a message.

<comment><USER22> > everyone I've talked about it with now refuses to pick up any call from a > number they don't recognize

This is true, and also burned me last weekend. My dog set off my alarm system and the phone identified ADT as "potential spam" so I didn't answer it. The police showed up at my house. Fixed by adding ADT to my contacts, but the distrust is real.

</comment></comment></comment></comment></comment></comment><comment><USER23> I'm all for it, but one gripe I have about Consumer Affairs' reporting is that they interchange the words "regulations" and "law" to mean the same thing. As we witnessed during the Net Neutrality see-saw, regulations enacted by the FCC are not "law", and can change at the whim of a new administration.

</comment><comment><USER24> Great! I'll tell all the scammers calling my phone that what they're doing is illegal. That should stop them.

<comment><USER25> In that case, why bother making anything at all illegal? Criminals are just going to be criminals anyway.

<comment><USER26> It's a matter of severity and demonstrable willingness to ignore consequences. Scamming and fraud can earn you a spot in prison for a serious length of time, whereas phone spoofing is probably just a fine or probation, IANAL. In general it defies reason that the people who purposely violate existing major laws are going to be dissuaded by tacking regulations onto their methods.

<comment><USER25> As I recall, certainty of punishment is generally a far more effective deterrent than severity. In any case, what I think the law would really get is leverage against the US-based phone companies who gateway the traffic onto our phone network.

</comment></comment></comment></comment><comment><USER27> I wish (and I bet there's something on Android for this) that there was some kind of social app just for sharing scam numbers among trusted friends†. E.g., as your phone receives a call, it'd hash the number and compare it with you and your friends' reported "spam caller network". If you or your friends have marked something as a spam-originating number (number spoofing not withstanding, yesyes), it would either drop the call outright, or highlight it as potential spam call ("5 of your friends have marked this as spam!") before you need to pick up.

† Why just among your friends? Cos we all know that the minute you make it open to everyone, the marketing and MBA folks will get their fangs in it and monetize and data-mine.

<comment><USER28> The numbers are random so why would sharing the numbers help reduce anything??

I never get calls from the same number. I've had the same scammer call me 3 times in one day from 3 different numbers.

This is the scammer that has called me 100s of times in the last 2 years: [http://www.caribbeandiscountsinternational.com/about/](http://www.caribbeandiscountsinternational.com/about/)

I tried to contact Tucows to complain, no way to do that. Then, I filed a report with ICANN that Tucows was violating their contract (because I can't report abuse), and that case was closed after two weeks.

The entire system is supporting the scammers.

<comment><USER29> You'd be surprised. Maybe YOU don't get calls from the same number (though I do at times) but it seems like scammers will use one number to call 100,000 people then switch to a second number and call again. So as long as someone reports it lots of people will benefit. It's not a random number per call, which would make this approach unfeasible.

This shared block list is basically how Nomorobo works and it's quite effective for me.

<comment><USER30> And when some scammer uses your number (since any number can be used by a scammer, it's just a number not a phone line), then under your scheme, you get cut off from all of your friends.

<comment><USER28> This. Given the quantity andlocality of the numbers to mine, if I block them, it's only a matter of time before I block a number that matters to me.

</comment></comment></comment></comment></comment><comment><USER31> Seriously, if you have a good data plan, why have a phone number? The phone system is so laughably insecure and limited compared to the voip alternatives. And so riddled with SPAM. There are SIP bridges to it, for the legacy calls.

<comment><USER12> Everyone expects you to have a phone number for some things. Certainly many online services expect you to be reachable via SMS for 2-factor auth. VOIP service plus a semi-decent data plan is at least as expensive as just adding on voice, and then you have two bills instead of one. You can simply ignore calls when you're not expecting one—if it actually matters they'll leave a voicemail. Those get transcribed so I don't even need to listen to see whether it was a scam or something important.

It has made phone calls probably the worst way to reach me, though. Not sure why I don't receive more text spam, which is nearly nonexistent—must be some technical reason.

<comment><USER32> Maybe technical or maybe just that the person who is going to send off money so that their social security number isn't taken away or so that the police don't come to their house and arrest them on felony charges are more likely to respond to a call--even a robo one--than a text message.

On my cell phone, the biggest annoyance is that I have to turn on Do Not Disturb when traveling internationally which means only the specific numbers in my contacts list can reach me in an emergency at all hours.

<comment><USER12> > Maybe technical or maybe just that the person who is going to send off money > so that their social security number isn't taken away or so that the police > don't come to their house and arrest them on felony charges are more likely > to respond to a call--even a robo one--than a text message.

That occurred to me, but you can direct someone straight to a website that can then do god-knows-what with a text message, and they're even easier to automate and do in quick, huge batches than phone calls, so even at a much lower % success rate I'd think they'd be viable for scammers, and maybe even preferable to calls. Maybe they're more expensive to send? That'd be dumb, but then phone billing's never made any sense.

<comment><USER31> You guys are still thinking in terms of the phone system with publicly accessible numbers!

In future networks you'll have to have an invitation path from the user, and if it gets abused you just mute a subpath so those people's invites don't result in auto-accepting messages. Simple!

A -> B -> C -> D

D attempts to send a message to A's mailbox

A's mailbox automatically accepts the message

If too many messages were sent from the subtree of invitations of B or C, just mute that branch.

Then the others have to jump through hoops like proof of work or pay crypto to be whitelisted and start a conversation to you.

Fixes all SPAM. You can make this compatible with an email gateway where the invitation is added as an email alias such as "firstname.lastname@example.com" and then emails to and from "foobar@" would be proxied as messages to the actual non- email system I described, where foobar was the gateway corresponding to the "path A -> B". It was compromised? Don't accept emails from any new unknown email addresses sending to that endpoint without jumping through hoops.

</comment></comment></comment></comment></comment><comment><USER33> This is better than nothing. It won't stop criminals who pretend to be from IRS or Microsoft support. But maybe it might help against some US based businesses which use phone spamming like expiring car warranties and such.

</comment><comment><USER34> Do we even need spoofing at all anymore, are there legitimate uses which can't reasonably be resolved other ways?

</comment><comment><USER27> While I love that the FCC has fixed this (especially the "scammers spoof a U.S. number, usually one in the victim's area code" part), something tells me the scammers won't just roll over and go "whelp, there's nothing we can do!". They'll just find a new "loophole".

<comment><USER35> Nothing is fixed. The spoofed calls will continue. This just makes it illegal but they've already been breaking the law scamming people.

</comment></comment><comment><USER36> Best feature coming in iOS 13 is an option to silence all calls from non- contacts.

I installed the public beta for that alone because I get so many of these types of calls, and it's saved me 19 interruptions so far this week.

Obviously blocking all unknown numbers isn't an option for everyone, but it's been great for me.

</comment><comment><USER37> That's it people! They've cured spam. We can all go home... right?

</comment><comment><USER38> Legal solutions don't tend to work great for technical problems.

I will just continue to block and report spam for calls from all numbers which I did not myself enter into my contacts.

</comment><comment><USER39> If they want, the local phone companies can easily block international calls that have local caller ID.

</comment><comment><USER40> Ooo they passed a law making it "illegal", that will stop the international scammers. Just like the war on drugs. Pai knows this stops nothing. Fuck that piece of shit, even when it looks like he's doing good he's actually doing nothing.</comment>


Show HN: Cheaper flights when flying multiple destinations by route optimisation - <AUTHOR> https://skysave.co/ <comment><USER2> Really good idea!

But maybe think about replacing the 4MB background video with a static image or something. It felt a bit overpowering for me (moves too fast) and it also doesn't scale right with the viewport leaving white text on a white background.

<comment><USER3> Agreed about the video. To much going on and moving to fast. Slow it down.

<comment><USER4> just fully remove the background video. I have a powerfull desktop and a good internet connection, it feels really sluggish.

I just disabled autoplay (disable autoplay extension for chrome, media.autoplay in about:config for firefox). What a pain.

<comment><USER5> My work laptop with an i5, 8GB memory, and typed characters lagged 5-10 seconds behind. I did an "asdf" check and though the browser had completely frozen it took so long to appear. The video is killing this site for me.

</comment></comment></comment></comment><comment><USER6> Hi,

I tried : Lyon, France as Home (2017/05/02 as start date) Tokyo Narita, Japan (7 days) Osaka Kansai International, Japan (14 days) Noumea Tontouta, New Caledonia (14 days)

This told me that "Something went wrong! No valid route could be found for these destinations, please try another destination"

I added Paris, France with "0 days" as it's a typical stop when flying international from Lyon.

This gave me a result, but the first stop is Noumea and it says "$false - BOOK". The other destinations have a real price.

My route is weird though, does not seem very optimized (I fly around the world once, from France to New Caledonia and back, before going to Japan, which is on the way), but I guess that's another problem!

<comment><USER7> Also received a $false - BOOK.

Screenshot: [http://imgur.com/a/SGSQu](http://imgur.com/a/SGSQu)

<comment><AUTHOR> Thank you for that! I'll debug it now to see what's gone wrong, very strange.

<comment><USER8> I had this as well. The home airport was London Gatwick, and the other entries were Bangkok, Khon Kaen, and Singapore.

It seemed to me that it couldn't find a route from London to Khon Kaen (Khon Kaen isn't an international airport), but interpreted that as a zero cost flight. The route it gave me was Gatwick -> Khon Kaen -> Bangkok -> Singapore and the cost for the whole thing was a fraction of what it should have been.

The way to make that route work, by the way, is to go Gatwick -> Bangkok -> Khon Kaen -> Bangkok -> Singapore (or throw Chiang Mai or Hat Yai into the mix). You can only reach Khon Kaen by air through internal flights in Thailand.

</comment></comment></comment></comment><comment><USER9> I also built this! I'm using a crawler that searches prices on Google flights. They provide a month overview for all flights prices.

Link: [https://github.com/Whazor/Roundtrip](https://github.com/Whazor/Roundtrip)

<comment><USER10> Oh wow! I was trying to write this myself last week, and got about halfway done before I realized that my credit card rewards booking system gave me different prices than Google :(

Major kudos on implementing the AirBNB search as well!

</comment></comment><comment><USER11> I had this other idea that if you want to get somewhere(B) and you don't mind visiting other places if the flights are really cheap, you can get from A to B spending couple of days in C and maybe even in D so that A -> C -> D -> B. It is easy to pair these flights in Europe, so that every flight will be <2hours and will cost 10-25$. I think I even started coding this, but ended up having not enough time, and brute-forcing this problem is sort of hard. Maybe there already is a ready app for that.

</comment><comment><USER12> I don't understand why all this types of applications assume that a have a destination and dates. I'm very flexible and I can work remotely. Surprise me with the cheapest flight anywhere. Does this kind of app exist?

<comment><USER13> [https://www.wherefor.com/](https://www.wherefor.com/)

<comment><USER14> When asking that site for suggestions I say that I'm travelling from Birming... and it suggests:

      Birmingham, Alabama, GB (BHX)

That doesn't fill me with confidence.

</comment></comment></comment><comment><USER15> This system needs to take in more scheduling constraints like if I need to be somewhere for specific dates, but am free to travel before and after.

I just booked a multi-city international trip like this a couple days ago and did quite a bit of searching to get a conveniently timed, low cost, direct flights. I was somewhat flexible about which cities I visited also.

</comment><comment><USER16> >Something went wrong! Please pick destinations from the auto-suggest by clicking on the suggestion as you type.

I've entered London Heathrow, United Kingdom as my Home, and Wroclaw, Poland as a destination, Number of days: 1, Start Date: 2017/05/02.

What am I doing wrong here?

<comment><AUTHOR> Make sure you remove the third field if you're not using it, fixing that now :)

</comment></comment><comment><USER9> Couple of hints:

\- consider the flight times (you don't want to arrive at your next location on 23:00)

\- only search continental destinations, this does not work that well for many destinations.

\- consider the distance from airport to city (airport of paris is 2 hours traveling)

\- have a backup plan (rental car)

</comment><comment><USER17> "Flying short" or "Hidden City" is another tactic. Airlines don't like it, but it's not illegal. Can't check bags, and you may not want to associate your frequent flyer account.

That is, sometimes it's cheaper to book a flight with a connection, say LAX->ATL->MIA, and get off in ATL, than it is to pay for LAX->ATL.

I think skiplagged.com does this. Are you trying these as well?

<comment><USER18> That works until your flight is overbooked or cancelled and you fly instead LAX -> DEN -> MIA.

<comment><USER17> That's a good point. Skiplagged has an FAQ with other potential issues: [https://skiplagged.com/faq](https://skiplagged.com/faq)

</comment></comment></comment><comment><USER19> my dad has been working out, and using the cheapest flight from A to B for over 50 years. And he's still very good at it. If you gave him an option to say "I want to get from A to B for the best price, I don't care much about the route, and I want it to take X days, suggest something to me" I'm sure he would be interested.

</comment><comment><USER20> I thought of an airline that just flies you past the city you want to go to and you just jump when it's your stop.

<comment><USER21> How do you get back home?

<comment> et-al Skyhook / Fulton extract: [https://en.wikipedia.org/wiki/Fulton_surface-to- air_recovery...](https://en.wikipedia.org/wiki/Fulton_surface-to- air_recovery_system)

Needless to say, there are extra fees for carry-on bags.

</comment></comment></comment><comment><USER22> Great idea, but that background video is just really annoying, a simple background color would have made the site feel so much more cleaner.

<comment><AUTHOR> We're making some changes on this, thank you for the feedback!

</comment></comment><comment><USER23> Is this using skyscanner API? I got a $false result when putting Miami origin and Osaka, tokyo, lax (no direct flights).

<comment><AUTHOR> It is using Skyscanner. As for $false, that's some strange bug. I'll debug it now and push out a fix soon.

</comment></comment><comment><USER24> I was curious how does it compare with results from kiwi.com. I tried to fill in a few destinations (London -> Bangkok -> Seoul) and... it gave me no result. So I guess the need to fill in a precise date/number of days is a bit killer here. Having an interval ranges (or a tolerance +-one day) would make a difference.

<comment><AUTHOR> SkySave finds you the cheapest route when visiting multiple destinations. So if you want to visit LA, New York and Miami and you're in London it'll tell you the cheapest route (ie. go from London to LA then NY then Miami and then back to London) and if you tried going first to NY and then LA etc. it could be a lot more expensive. You need to pick a result from the auto-suggestion dropdown and you just need to say how many days you want to stay at each place. We will be adding in tolerance though! Nice suggestion

</comment></comment><comment><USER25> Just made a quick try, and booy what such a good idea ! Question : I am french, and so filled Home with Paris, and destination with Los Angeles. I am getting fantastic prices, but only in the sense US -> FR. The service is only available for the US then ?

<comment><AUTHOR> Thanks for trying it out and the feedback! It's available for any destination in the world. 'Home' is just the airport that you're starting out from and returning to. So for example, if you're in Paris and want to visit LA, New York and Miami it'll find the best way to go from Paris -> LA -> NY -> Miami -> Paris. Where LA, NY, Miami will be in the cheapest order. Or you could enter for destinations like, Beijing, Bangkok and Singapore.

</comment></comment><comment><USER26> You should let me specify only airport codes and you do the translation in the background... I went in and did SFO, IAD, LHR, DBX and assumed any travel site would understand where I wanted to go without clicking the dropdown entries

<comment><AUTHOR> Used to handle that, not sure why not anymore. I'll definitely fix it up. I'm planning on making it so that it tries to guess what you mean (essentially first auto-suggestion) if you don't click on it.

<comment><USER27> It also makes it hard to disambiguate cities/airports. Entering "Portland" brings up two entries named "Portland, United States" (presumably Oregon and Maine) along with "Portland, Australia", but no way of telling which Portland in the U.S. is which.

</comment></comment></comment><comment><USER28> site is unusable on mobile (Brave browser)

i see white text with shadows on white background and there are three identical fields for Days, no idea what is their meaning, i guess duration of trip, but not sure why there are three of them

<comment><AUTHOR> Try it now! We put out an update that makes it A LOT better.

<comment><USER28> it's displayed properly now, though still don't understand purpose of that horrible quality top background image

also does my home take into consideration nearby airports, because i was not offered options about it, being too strict about it it's not good choice if i can just take train 2-3 hours away and have much more or cheaper options and i can enter multiple home airports it should be filled in home filed before entering any text there in background as example

</comment></comment></comment><comment><USER14> No idea what I'm doing wrong, but I consistently get:

        Something went wrong!

        No valid route could be found
        for these destinations, please
        try another destination.

<comment><AUTHOR> You need to make sure you pick a destination from the suggestion box (click on it), enter the number of days for each destination and click the '-' button if you're not using one of the destination fields. Sorry if that's a bit confusing, currently improving that so it's a little bit more lenient :)

EDIT: We're pushing out a fix now that should resolve this, you can now have empty fields for destinations and it'll just include the filled out ones.

<comment><USER14> I did pick destination boxes from the drop down each time, and I entered the number of days each time.

As a side question, what happens if I want to start in one place, and finish somewhere else? Suppose, for example, I want Paris -> Atlanta -> Sydney -> London : is that possible?

If this works properly and well I can see that I would not only use it, but would pay money for it, but at the moment, for me, it doesn't seem to be working.

FWIW, I'm well-known in my companies for breaking anything that people think is ready to go and suitable for deployment to muggles, so these teething problems are to be expected.

<comment><AUTHOR> That's very bizarre that you got an error then! Could you try it again please, oh and make sure to set a date a bit into the future as otherwise might not have as many flights available.

Wonderful suggestion :) I'll make it so you can input a different final stop to you're starting point. We want to keep it free and potentially monetise via affiliate sales and show people how much we've saved them, perhaps some would be generous to donate 1% of the amount they saved? Who knows!

We'll definitely be fixing it up though, still a bit rough around the edges haha.

<comment><AUTHOR> Thanks Colin, we have a chat support on there too so we can see what's going on but definitely working now :)

<comment><USER14> The other question is:

What does this do that Google Flights doesn't do?

I haven't yet seen what it is that makes this different - I feel like I'm missing something.

<comment><AUTHOR> If you're flying to multiple destinations it matters which destination you visit first, which one second and so forth. SkySave tells you which route is the cheapest. For example, it can be a lot cheaper to fly London -> New York -> Miami -> Los Angeles -> London than if you were to go to LA first and then Miami. Does that make more sense?

<comment><USER14> OK, that really wasn't clear, so here are some specific suggestions:

The video under the white text often makes it difficult to read the catchphrase. I'd suggest editing the video to reduce the brightness by 60% (No doubt others will disagree);

The text at the top does not, to me, communicate this idea that you are choosing multiple destinations, and that the site will try all the orderings to find the optimal itinerary;

It says:

 _Discover the cheapest route to fly for your next holiday_

You are using the word "route" in a way that doesn't communicate to me the idea you've mentioned above;

It says:

 _If you 're visiting multiple destinations it can be on average 30% cheaper to fly a specific route as opposed to others_

Again, you're using the word "route" in a very odd way.

So, concrete suggestion to highlight the problem, I'd say something like:

 _You choose the places to visit - we 'll arrange your itinerary to minimise the costs._

<comment><AUTHOR> I found it hard to put it succinctly but I quite like your description. Might use that instead!

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER29> looks like a nice project. If I can have one suggestion: offer the option to enter a fixed date for one of the destinations (instead of the start date ).

Use case: If I am flying for a business trip to a given destination, the dates are pretty much set there. There is another place close by that I would like to visit and I don't care too much if it will be before or after the business trip, but the business trip needs to happen on selected dates.

<comment><AUTHOR> Thanks, I'll put it on the feature list.

</comment></comment><comment><USER30> Is it safe to have that apiKey parameter in your 'book' links? That just jumped out at me. It looks like a cool project; good luck!

<comment><AUTHOR> That's a 'short' API key, it's not the full one. It's their public variant. Thank you though!

</comment></comment><comment><USER31> Anyone want the over over/under on how long it takes for United Airlines to sue this guy?

</comment><comment><USER32> The "something went wrong" if you don't delete the empty fields is confusing...

<comment><AUTHOR> I've fixed it now, shouldn't happen anymore!

</comment></comment><comment><USER33> How is this different than selecting multiple destinations on Expedia?

</comment><comment><USER34> I wonder if this is using Dijkstra's Algorithm [1] as it seems a great application for it.

[1] [https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm](https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm)

</comment><comment><USER35> the video background is making me nervous, I'd increase the frame rate to 20fps at least

</comment><comment><USER36> skiplagged.com is really cool too.</comment>


Programming Music with Overtone - <AUTHOR> http://blip.tv/clojure/sam-aaron-programming-music-with-overtone-5970273 <comment><USER2> better video, 4 minutes, no crappy foreplay, just some guy live-coding with overtone

<http://vimeo.com/22798433>

<comment><USER3> That's the same guy - me :-)

<comment><USER4> Awesome talk! I see you are located in Cambridge, are you going to give a talk/demo there anytime soon?

</comment></comment></comment><comment><USER5> I feel like I miss out on a lot of interesting talk videos because I simply cannot stand this kind of phone-camera-in-the-audience execution. I can barely hear these people's muffled voices over the sound of the background hiss.

I mean, someone took the time to put beginning music and titles on this, so why not actually, you know, mic the speaker?

<comment><USER3> I did have a microphone attached to me - but for some reason they didn't go with that audio-stream. I agree, it's a little difficult to follow for the first couple of minutes - but it does get better.

<comment><USER6> _but for some reason they didn't go with that audio-stream_

Wait, what? I really looked forward to this one since I read the slides when they appeared. Then i watched a portion of the talk and skipped to your exciting demos, because I couldn't understand anything you said.

Is there any possibility to get a new video with the other stream?

<comment><USER7> I listened to this right through over laptop speakers and heard every word without problems. Perhaps you're just not used to Sam's English accent?

<comment><USER6> Yes, that's a problem too.

</comment></comment></comment></comment></comment><comment><USER8> What bothers me is that Java does not have good, free, well documented, well maintained libraries for low-latency (5 ms or less) audio and MIDI.

Still have to resort to C++ if I'm going to build audio software for music production and innovation.

<comment><USER2> ...... if you can link it in clojure, you can link it in java.

</comment></comment><comment><USER9> I love music programming, my first open source projects, Melopy [1] tried to accomplish this in a really approachable way. Unfortunately I'm still new to the open-source world and I don't know nearly enough about music ;)

[1] <http://github.com/prezjordan/Melopy>

</comment><comment><USER10> This was a great presentation. I'm not really that into programming music, but I really enjoyed the speaker's presentation style and the content was very interesting and enjoyable.

</comment><comment><USER11> I've been learning SuperCollider for a month or so. It's a weird but very interesting and powerful language. Got some of the nice elements of Ruby : lambda functions, live coding, etc. with realtime goodness.

Overtone is a Clojure port of SC, but since I don't know Clojure, I chose to learn SC language directly (and the community is very good).

Would love to have a Ruby port of SC though!

<comment><USER12> I feel like it's worth pointing out the distinction between SuperCollider the programming language and SuperCollider the audio synthesis server. The audio server is stand-alone and can be controlled via Open Sound Control. The language is a music DSL that abstracts over the OSC messages and acts as a client to the synth server. Overtone is another client to the synth server, but I'm not sure how much it's following the SuperCollider language. Also, there's an scruby project <https://github.com/maca/scruby> .

<comment><USER13> You're right, and in Overtone we haven't really tried to mirror SCLang at all. The DSP core of scsynth is a great piece of software with many years of testing, debugging, and extension, so it's wonderful that we can leverage this externally by just sending OSC. Of course we want to pull in any good ideas we find from the sc class library or any other music system, but generally we have been working on creating an expressive synthesis language that clearly communicates what is being produced. In SCLang there are many syntactic tricks and shortcuts which allow you to create very terse definitions, but they are often to the detriment of readability. With Clojure's lazy sequences we can easily model many interesting types of generative musical structures, and with easy access to the JVM ecosystem of libraries we can now control our musical processes with external tools or devices, visualize them with nice graphics, auralize external phenomena (e.g. people have hooked into automated build/test systems), etc., far easier than in SClang.

<comment><USER14> Is it possible to use overtone to send midi to an external hardware device?

<comment><USER3> Absolutely. We have a built in midi library for communicating with hardware midi devices.

</comment></comment></comment></comment></comment><comment><USER15> <http://vimeo.com/2503257>

</comment><comment><USER16> Unwatchable because of the terrible audio. That echo is deafening.</comment>


How to optimize React applications that use Redux - <AUTHOR> https://reactrocket.com/post/react-redux-optimization/ <comment><USER2> I never understood why Redux became so popular.

It basically tries to enforces a few old ideas, pure functions, message passing and immutability, with no help from the language, which results in verbose and ugly code.

`a.b = c` becomes `Object.assign({}, a, { b = c })`

and

`object.method(data)` becomes `store.dispatch({type: METHOD, data})` with the implementation code of the "object" being a huge "switch" statement.

If you want immutability, pure functions and message passing, then why not use a language that is build around them and make your life easier? Clojurescript maybe?

Also having a single store for all your data, definitely doesn't help with speed as a single event suddenly becomes an O(LogN) operation in the best case.

<comment><USER3> Several reasons why it's popular:

\- It has helped many developers organize their "write logic" and state management, and made it easier to test that code

\- Time travel debugging is a fantastic tool for understanding what happens in your application

\- One of my favorite quotes: "Redux is a generic framework that provides a balance of just enough structure and just enough flexibility. As such, it provides a platform for developers to build customized state management for their use-cases, while being able to reuse things like the graphical debugger or middleware."

\- And it doesn't hurt that Dan Abramov is a well-known figure in the React community, and an incredibly helpful and friendly person too.

No, Javascript doesn't have immutability built-in (sadly), but that doesn't mean you should totally give up on applying those principles in Javascript code. There's WAY more developers writing JS than Clojurescript, and those devs can still make use of tools like Redux in their applications. Besides, there's a variety of approaches for handling data immutably, whether it be `Object.assign`, the Stage 3 object spread operator, Immutable.js, or the many immutable update utility libraries out there.

Your comment about speed doesn't make sense. A few function calls and switch statements will execute quickly overall, and perf benchmarks will show that your reducer logic is almost never going to be the bottleneck in a Redux application.

Some links for further related reading:

\- [https://medium.com/@dan_abramov/you-might-not-need-redux- be4...](https://medium.com/@dan_abramov/you-might-not-need-redux-be46360cf367)

\- [http://redux.js.org/docs/faq/Reducers.html#reducers-use- swit...](http://redux.js.org/docs/faq/Reducers.html#reducers-use-switch)

\- [http://redux.js.org/docs/faq/Performance.html#performance- al...](http://redux.js.org/docs/faq/Performance.html#performance-all-reducers)

\- [https://github.com/markerikson/react-redux- links/blob/master...](https://github.com/markerikson/react-redux- links/blob/master/immutable-data.md)

\- [https://github.com/markerikson/redux-ecosystem- links/blob/ma...](https://github.com/markerikson/redux-ecosystem- links/blob/master/immutable-data.md)

<comment><USER4> When do you get to write `a.b = c` in react? Not with `setState`

<comment><USER3> `setState` doesn't actually care whether you've mutated your data or updated it immutably. In fact, I just ran a quick test, and you can even directly mutate your state object and then call `this.setState({})`, and it will update. `setState` is basically a combination of "queue an update to `this.state`, and queue a re-render along with that". So, if you mutate `this.state` and then re-render, your render output would be "correct" because the state object was updated.

Where immutability really comes into play with React itself is optimizations via `shouldComponentUpdate`. The fastest way to determine if a component needs to update is shallow equality comparisons of current and next props/state, which requires that you do immutable data updates to produce new object references. Two good articles on the topic are [0] and [1].

[0] [http://reactkungfu.com/2015/08/pros-and-cons-of-using- immuta...](http://reactkungfu.com/2015/08/pros-and-cons-of-using-immutability- with-react-js/)

[1] [https://www.bennadel.com/blog/2903-why-should-i-care- about-i...](https://www.bennadel.com/blog/2903-why-should-i-care-about- immutable-data-in-reactjs.htm)

<comment><USER5> > setState doesn't actually care whether you've mutated your data or updated > it immutably.

Not necessarily - if something downstream is looking at the values (such as a shouldComponentUpdate check), the first mutation may cause the current value to === the next value and prevent a render. I know you called this out as an "optimization" but you don't always know what's happening inside your components, especially if 3rd party libraries are involved.

<comment><USER3> That's what I was saying. The actual `setState()` function can be called with new references from immutable data, the same references that already existed but were mutated, or even no references at all if you mutated. So, literally, `setState()` does not care what process you used to potentially update data before calling it - it just applies a shallow merge of whatever object you passed in to the existing `this.state` object, and then queues a re-render. It's the _rest_ of your code that might care.

The primary reasons to actually update data immutably before calling `setState` are for easy and consistent implementation of `shouldComponentUpdate` / use of `PureComponent`, and general FP principles that immutability should be preferred over mutation.

</comment></comment></comment></comment></comment></comment><comment><USER3> Pretty good summary of the main points for good React-Redux performance. I will say that I'm not a fan of writing `mapState` functions inline in `connect`, as it makes it harder to read them (especially with that parameter destructuring in those examples). But, good post. I frequently see people ask what's wrong with just connecting the top-most component, and you've captured the main reasons why that's bad for perf. And yes, you absolutely should use memoized selectors in your `mapState` functions.

If anyone's interested, I discussed related aspects of good Redux performance in my blog post "Practical Redux, Part 6: Connected Lists, Forms, and Performance" [0], and have a lot of other articles on both React and Redux performance topics in my links list at [1]. Also, my post "Practical Redux, Part 7: Form Change Handling" [2] specifically shows off a React component I built to buffer change events from text inputs to help improve UI performance.

[0] [http://blog.isquaredsoftware.com/2017/01/practical-redux- par...](http://blog.isquaredsoftware.com/2017/01/practical-redux- part-6-connected-lists-forms-and-performance/)

[1] [https://github.com/markerikson/react-redux- links/blob/master...](https://github.com/markerikson/react-redux- links/blob/master/react-performance.md)

[2] [http://blog.isquaredsoftware.com/2017/01/practical-redux- par...](http://blog.isquaredsoftware.com/2017/01/practical-redux-part-7-forms- editing-reducers/)

<comment><USER6> Note that the title is confusing since the article is more related to react- redux than Redux itself.

Redux is too simple to suffer from performance problems.

</comment></comment><comment><USER7> I switched to MobX and can't be happier. Performance is never a problem and everything is just simpler and easier to understand. I think you should give MobX a shot.

<comment><USER8> In my experience, Redux seems to fit better with those coming from a FP background, and MobX seems to sit well with those with OOP backgrounds.

<comment><USER9> Yep. Redux does a great job of pushing mutation out of your application logic and into the library machinery, much like React does. Together, you get logic that's remarkably pure. It makes for an application that's dead simple to debug.

I've never tried MobX, but it looks pretty impressive too. I can imagine it working really well if you have the discipline to not leak your mutations all over the place.

<comment><USER10> MobX (in strict mode) forces you to annotate your mutations (via the @action decorator).

MobX is useful mostly as the data model / selector part of redux. It does an awesome job of it. Once you've defined your core data model, you can create layers of computed properties and transformations out to your view. The view then rerenders in a really optimal way.

Where redux shines is the prescriptive nature. The layout of a redux app is fairly well defined at this stage and there are "right" and "wrong" places to put (and look for) different types of code.

With MobX there's still no clear way to layout your application, so, as you say, you need to be more disciplined with your approach.

<comment><USER11> Redux isn't really that prescriptive (and it's a problem). Since middlewares let you do pretty much anything, people will do the silliest things.

Vanilla Redux that somewhat closely mimics the Elm architecture is fantastic at it, but average Redux apps in the wild are...mediocre at best.

</comment></comment></comment></comment></comment><comment><USER12> A few months ago I read the the article from the redux-creator who sais that you should only use redux if you really need it. I found out that most of my trubbles came from the fact that I should not have used redux. I lately removed it and am now using rxdb for things that have to be state-like and persistent. For everything else I just use reacts setState on the plain components.

<comment><USER13> The (excellent) article is "You Might Not Need Redux" and is a great read whether you're considering Redux, already using it, or never will.

[https://medium.com/@dan_abramov/you-might-not-need-redux- be4...](https://medium.com/@dan_abramov/you-might-not-need-redux-be46360cf367)

</comment></comment><comment><USER13> I've not heard anyone complain about Redux's performance. Do folks consider it slow?

If so, what about it is slow? And slower than what?

<comment><USER3> The most common complaints are about UI refresh performance in a React-Redux app, particularly if you're dispatching an action for every keystroke in a text input. The original post we're commenting on covers several aspects of good performance, and my other comment in this thread at [https://news.ycombinator.com/item?id=14706509](https://news.ycombinator.com/item?id=14706509) has links to benchmarks and more info on various performance scenarios and optimizations.</comment></comment>


Inside Amazon's clickworker platform - <AUTHOR> http://www.techrepublic.com/article/inside-amazons-clickworker-platform-how-half-a-million-people-are-training-ai-for-pennies-per-task/ <comment><USER2> Amazon is setting a wrong precedence which others are following[1]. When Bezos says "Your Margin is my opportunity.", he fails to mention who will be the loser. They have started a race to bottom which means employees/workers will be squeezed until their bones are dry.

I think this can be fixed simply by measuring companies on employment they generate and median tax payed per employee apart from the corporate tax. If they fall behind on these metrics, their products should be taxed heavily. If companies don't agree, they lose access to the market which will allow for local responsible companies to emerge and compete.

I am just wondering if my thinking is simplistic or this is a problem our leadership does not want to solve this issue?

[1] [http://www.livemint.com/Sundayapp/bAgZIMlCQu8weSTF7j750L/Sig...](http://www.livemint.com/Sundayapp/bAgZIMlCQu8weSTF7j750L/Sign- here-please-the-life-of-a-delivery-boy.html)

edit: grammer

<comment><USER3> It's an interesting idea. In practice I bet it would push business for more automation and to for splitting into a highly profitable R&D entity with highly payed workers and 'independent' contracting firms that are barely profitable under which low wage employees would work under.

<comment><USER2> I really want to put more thoughts into this so your input is appreciated.

Not to nitpick but what you described is happening today. If companies are measured on all of the metric then I how do they escape. If they move their work to contracting firms, won't they also be evaluated on the same metrics.

</comment></comment></comment><comment><USER4> My mother had a job like this 30 years ago. She worked data entry as a keypunch operator. However, it was a full time job, above minimum wage, provided insurance and vacation time. Mechanical Turk relies on the race to the bottom, the fact that some people need any job to keep from being on the street. Of course companies love the gig economy, it keeps them from having to think of their workers as people.

<comment><USER5> Alternative interpretation: 30 years ago this kind of job could't easily be done by someone in a third world country for a fraction of the price. Now that it can, the price has adjusted.

<comment><USER6> Out of sight, out of mind. It's not like those people have the same standard of living but just with lower living costs.

You know a WHOLE LOT of people would rather make 500k a year than 300k even if it means their employees are damn near homeless and malnourished. See: any biz with min wage employees in the US.

Plus you're not bound by the same labor laws if you hire from overseas, only public outrage if the public ever finds out.

edit: that is to say, instead of thinking of it as "the price has adjusted", we can think of it as "greed is no longer constrained by the difficulty of overseas communication". Our laws can't contain greed, if we can just export it to where we have no jurisdiction.

<comment><USER7> > You know a WHOLE LOT of people would rather make 500k a year than 300k even > if it means their employees are damn near homeless and malnourished. See: > any biz with min wage employees in the US.

Nah, sorry. That's just over the top and not true. I worked two separate minimum wage jobs before I was 20, and both had owner / operators who made no where near that kind of money. One was an entrepreneur who was losing money every year, but believed he had a good product that could grow with franchises (and it did). The other ended up having his collection of businesses go under due to Netflix (they were video stores).

Minimum wage does not imply improperly priced labor. While it is not a living wage in much of the United States, to assume it is purely exploitive is also an overdramatized statement.

I'm not exceptionally well versed in minimum wage theory, so my opinions are based on listening to numerous Econtalk podcasts on the subject ([https://goo.gl/IbKS1F](https://goo.gl/IbKS1F)). Some argue for an elimination of the minimum wage, others for a vast expansion at the federal level, others for a broader expansion at the state level.

My personal observation is that the minimum wage discussion is interesting, but mostly just the tip of the ice berg and serves as more of a distraction around more meaningful conversations. 1\. Minimum wage accounts for less than 2% of the hourly workforce in the United States ([https://goo.gl/Q9S2Mf](https://goo.gl/Q9S2Mf)). Looking at it on a state by state basis, that number increases; however, let's focus on the federal wage for now. 2\. There are more than seven times more people in the United States (14M+) who are either unemployed (seeking but can't find work) or underemployed (have work, but are seeking more) :: [https://data.bls.gov/timeseries/LNS13327709](https://data.bls.gov/timeseries/LNS13327709) 3\. There are over 60M Americans who work hourly jobs in the United States, and 4.6M will have to find new work each year due to regular turnover in the market (I don't have my citations handy for this one, have it in a document that is missing the citation, but I'm confident on the figure).

For a worker working 32 hours at the 8.25 minimum wage, they can expect to make $264 / week. Give them a 10% raise, and they're at $9.075, or $290.40 / week. Or, alternatively, let's give that worker better access to full employment, and they reach 40 hours, but only make $8.25 / hour, or $330 / week.

Given an average number of weeks of 52.1429 per year our example workers can expect to make:

Fully Employed Minimum Wage: $17,207.15 Under Employed Higher Wage: $15,142.29

In this very simple example (with some assumptions that are admittedly contrived), the fully employed minimum wage worker is in fact, better off. They are still impoverished, they still have a tough life and will not be able to have many luxuries; however, full employment, in this example, is more optimal when purely looking at salary.

Full employment, mixed with increasing wages, and decreasing prices of goods and services, is the combination we should all be striving for.

<comment><USER6> "Minimum wage does not imply improperly priced labor" even if it's not a living wage? If it's not a living wage, it's not proper, is it? What are you saying?

Have you read anything about the McDonalds and other franchises paying their employees in cards which carry transaction and withdrawal fees ON TOP OF the fact they're already making min wage?

Even if you make $10/hr which isn't min wage, and you're fully employed, you're still probably not breaking even with rent/food/car/insurance/medical, you'll be sharing a duplex with some other miserable bastard or living at home, or getting a subsidy from the government because apparently it's someone other than your employers job to see that you can afford to pay your rent!

Do you know that 40% of workers in America earn under $20K/yr? If your rent is $900/mo, then over half your income (haha we didn't even consider taxes yet) goes to rent, and you still haven't payed for power or food or anything.

You keep telling yourself it's fine not to pay people a fair wage, or that we should be struggling to lower prices or to employ people for more hours -- whatever you have to do to dance around the fact that we should be paying people a fair wage.

Every job I ever had before I started serious software as a freelancer paid fuck all ($10/hr or less, after 2000) regardless of how much the owner made. Many jobs, many different industries, same story -- and that's not anecdotal, this is happening to the entire country, see again the stat of how many Americans earn under 20K.

It's not like it's impossible to pay a living wage. I could go on and on with statistics about profit margins and wealth concentrating and everything -- we as a society are choosing to damn ourselves and our neighbors JUST IN CASE we ever happen to get rich ourselves, or we are already rich. We're greedy.

<comment><USER8> Do people on min. wage have to pay taxes? And how much?

Also, what is the total income of those who work min. wage? (So what are the other sources of income, or the monetary equivalent of regular support they receive?)

It's also fine to pay just a security guard and rent a machine that can make burgers and pay the franchise mothership delivery service a tiny bit more to not just unload the cargo but to load it into the burgermachine.

Yes, we ought to pay people a fair wage. People should look after people a lot better than we do today.

And please do, show us that the majority of those making under 20K/year work somewhere where the company is making huge profits _and_ that the work they do is AI-hard.

And of course we're greedy, just look how many people are still clinging to concepts such as nation, fate, hard work and so on.

<comment><USER9> I believe someone making minimum wage will get all of their Federal taxes back, so they could probably just claim 99 exemptions and never pay that money in the first place. I'm not sure about state taxes as that may well vary from place to place.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> 75% of Turkers are Americans. And I didn't see it in the OP but I would guess that similarly 75% of companies issuing HITs are American.

Now I don't know the exact wording of minimum wage law, but I'm pretty sure if you hire an independent contractor through a 3rd party staffing company, let's say to clean houses. And then you set a fixed price on the service, say you will pay $20 for each house cleaned, knowing it takes 4 hours on average to clean a house. And then you let anyone who wants it take the job. This would be illegal.

So, I honestly don't know how mTurk is allowed to operate the way they do. American companies should not be able to hire American workers to perform labor at below minimum wage, just because they use an API to do it.

I'm willing to bet if someone was willing to spell it all out in front of the right AG or the right class action legal team that there would be significant settlements to be had.

<comment><USER11> From what I understand, most of the american turkers are stay-at-home moms. They have a family to cater to and various obligations that prevent them to pursue a full-time job. Mechanical Turk gives them the possibility to work anytime, at their own rhytm. 10mn there, 2 hours, early am, middle of the night. I'm not sure if there are jobs that can offer this flexibility.

<comment><USER10> I don't believe that working in fits and spurts is a written exception to the minimum wage law.

To be covered by the Federal minimum wage, one must be a "covered nonexempt" employee. There are two ways in which an employee can be covered by the law: "enterprise coverage" and "individual coverage." [1]

      Enterprise Coverage

      Employees who work for certain businesses or organizations (or "enterprises") are
      covered by the FLSA. These enterprises, which must have at least two employees, are:

        (1) those that have an annual dollar volume of sales or business done of at least
            $500,000
        (2) hospitals, businesses providing medical or nursing care for residents, schools and
            preschools, and government agencies

      Individual Coverage

      Even when there is no enterprise coverage, employees are protected by the FLSA if their
      work regularly involves them in commerce between States ("interstate commerce"). The FLSA
      covers individual workers who are "engaged in commerce or in the production of goods for
      commerce."

      Examples of employees who are involved in interstate commerce include those who: produce
      goods (such as a worker assembling components in a factory or a secretary typing letters
      in an office) that will be sent out of state, regularly make telephone calls to persons
      located in other States, handle records of interstate transactions, travel to other States
      on their jobs, and do janitorial work in buildings where goods are produced for shipment
      outside the State.

What I think that means is either Turkers are covered by FLSA if the HIT comes from a business which has more than $500k of annual sales volume.

Or Turkers are covered under FLSA because their work involves commerce between states. Because their work itself is literally commerce between states on its face -- the writen work product is sent over the Internet -- I don't see how you weasel out of that one.

I don't see how Turkers could be exempt from FLSA, but IANAL.

[1] - [https://www.dol.gov/whd/regs/compliance/whdfs14.htm](https://www.dol.gov/whd/regs/compliance/whdfs14.htm)

</comment></comment></comment><comment><USER12> Amazon could bundle Turk with it's other AI efforts to automatically train AIs alongside Turk problems to eventually take over the task or only farm it out when the model's confidence is outside a particular threshold.

<comment><USER13> A lot of companies do that already, for machine learning dataset training.

</comment></comment><comment><USER14> It's a global platform for cheap human labor. I find it completely unsurprising that living off cheap labor alone would not result in a particularly good living standard, especially not in some of the most expensive locations in the world, and especially not when competing with cheap labor from across the globe.

<comment><USER15> I'm always torn when I see stories like this. On one hand I feel for someone making less than minimum wage doing a job, but on the other I realize that these people are competing with people who come from places without a minimum wage at all.

The same thing happens on freelancer sites. Jobs for pennies on the dollar of their worth are fought over by people barely making it in the US, and people who are enjoying a rather livable stream of income in other countries.

To me the answer is to tell yourself that it's not work but a hobby that happens to pay, and at least seek out work that pays minimum wage in your area, if that applies.

But easier said than done I'm sure.

<comment><USER16> > but on the other I realize that these people are competing with people who > come from places without a minimum wage at all.

"Places", or "countries" might have low minimum wage compared to US or even below the average of world. But no minimum wage at all seems unlikely.

See [https://en.wikipedia.org/wiki/List_of_minimum_wages_by_count...](https://en.wikipedia.org/wiki/List_of_minimum_wages_by_country)

I wonder if there is a 18+ check involved.

> To me the answer is to tell yourself that it's not work but a hobby that > happens to pay, and at least seek out work that pays minimum wage in your > area, if that applies.

But it isn't a hobby; it is paid; hence work.

From Wikipedia: "A Hobby is a regular activity that is done for enjoyment, typically during one's leisure time."

The type of labour on Amazon Turk is extremely repetitive just like (physical) hard labour. The goal also isn't pleasure, and the income isn't a gift; it is part of one's income (I wonder if it is being tracked though).

I also find the name Amazon Turk offensive. I am aware that the word Turk has multiple meanings, but in a good part of the 90s in Europe cheap labour and Turkish people went hand in hand. It was the kind of labour the native Europeans didn't want to do (e.g. garbagemen), it paid very badly.

Now we are at the next step of globalisation and because the competition goes via the Internet the lowest common denominator becomes standard. Which is very bad for those who are unemployed, underskilled, homeless etc in higher civilized countries where the standard of living is higher, but so is things like rent. Heck, I wouldn't even be able to pay my rent with Amazon Turk.

> The same thing happens on freelancer sites. Jobs for pennies on the dollar > of their worth are fought over by people barely making it in the US, and > people who are enjoying a rather livable stream of income in other > countries.

Yes, and fake freelance like Uber and MLM.

<comment><USER15> I'm (oddly) glad someone else finds the name offensive. I know the history from the chess playing machine, but I found it felt more strongly tied to the meaning behind that in Turkish people. I just worried I was being overly sensitive and no one else would see it that way.

But I'd also say having a stated minimum wage, and having a relevant minimum wage are two different things. I come from a country on that list with a stated minimum wage of 1.70$ _a day_ or about 22 cents an hour.

Not only is that incredibly low, I assure you no one is touring villages looking for hawkers with young helpers that aren't getting paid 1.79 a day, when the hawkers themselves can't ensure they're getting 1.79 every single day.

Ironically, it looks like mechanical Turk would actually meet the minimum wage in the country. And I'm sure the country is not alone there. So for someone who has no better source of income, I'm sure even after paying for an Internet cafe they'd come out making income that's livable.

I don't think that it's a bad thing that those wages aren't livable in a country where our _hourly_ minimum wage exceeds the _daily_ minimum wage.

That's why I'd say _treat_ it like a hobby if you're in a country that's like the US.

I'm definitely not calling the work described as fun, but treat it as a hobby in the sense of treating it as something you do because you want to make a few dollars from the comfort of your computer (and for some reason don't want to try something that pays better in the long run like learning a skill, say... programming), not because you have to pay rent next month (again, situation permitting).

You have to remember, even in the US at minimum wage people still struggle with rent, so even if mechanical Turk did pay minimum wage per country, it'd still wouldn't guarantee financial security in many parts of the US

<comment><USER16> Thank you for your post and clarifications. They make a lot of sense to me.

I made a mistake in my post:

> in a good part of the 90s in Europe cheap labour and Turkish people went > hand in hand

I meant to say the 20th century, not the 90s. It occurred from about '60s till '80s. I'm also glad I'm not the only one who finds the name offensive, and FWIW I'm not Turkish in any way. Nor do I resent being associated with Turkish people. However for it to change, two people wouldn't be enough. I also wonder if the name is a coincidence, or deliberate. If Amazon were a European company I'd expect the latter, but America doesn't have the same history with Turkey as Europe does.

As for hobby. I'd just call it what it is: "a badly paid job". One you'd replace ASAP if you could. You need to also take into account that one requires a computer which requires maintenance and is going to (partly) die at some point. Sure, internet bill is likely flat fee and paid already, but electricity is going to be higher.

</comment></comment></comment></comment></comment><comment><USER17> In my company I have my own image labeling team in Poland and I pay $4 per hour. I can go down to $2.5. Median hourly rate of amazon mechanical turk is supposedly $1.38[1]. My dataset is harder to label than ordinary images, so it takes a few hours to ramp up the labeller. I have been contemplating migrating to mechanical turk for a while. Anyone have some experience to share?

1\. [http://journals.sagepub.com/doi/full/10.1177/216770261246901...](http://journals.sagepub.com/doi/full/10.1177/2167702612469015)

<comment><USER18> Is it a major cost to your business? Would it be a large risk if things went badly?

Also, does your current setup have any problems (perhaps scaling)?

If the answers are no, yes, no then I'd not change a thing.

Otherwise perhaps look at using Turk for labeling and your working crew as reviewers. It may only take a small number of badly labeled images to cost more than you save.

</comment></comment><comment><USER19> It'll be interesting to watch AI start edging out these jobs. What an interesting general AI project. Instead of a Turk, there will be a machine inside..

<comment><USER20> Don't know if this would really happen much, unless we are saturated with labelled datasets. They are used for labelling and not directly responsible for the actual end classficiation which is what AI is aiming to solve. In fact, AI needs labelling to work on these classficiations

<comment><USER21> classfic[i]ations

/Just a human doing a spellbot's job.

<comment><USER22> class[i]fic[i]ations

/Just another human doing a human's job doing a spellbot's job

Makes you wonder about the quality of the job done on MechanicalTurk.

Redoing supposedly done work is my worst nightmare.

<comment><USER21> Haha this is priceless. :-) Thanks

</comment></comment></comment></comment></comment><comment><USER23> A bit of anecdotal insight: I have a relative who is psychologically incapable of finding a job due to fear of rejection, and will justify not applying for any job by considering how hard it would be to get a job. Quite literally he finds it more attractive to get a guaranteed minimum wage job than to apply and face possible rejection for a high paid job which he is qualified for.

I believe this same kind of pathological behavior is what's causing people (like described in the article) to stick with AMT jobs.

I wish I knew a way to break this vicious cycle :(

</comment><comment><USER24> What a dystopian vibe. They were debating how long this type of work would be available, but didn't emphasize that ultimately it's a zero sum game.

Is anyone predicting when various jobs will fall to AI? I here about the 3 million truck drivers a lot. However I think some groups like radiologists are still underestimating the speed at which reading x-rays will become mostly a job of double checking computer interpretations.

</comment><comment><USER25> If I close my eyes and imagine a world where Mechanical Turk doesn't exist, it's not clear to me how the people in the article are better off.

<comment><USER26> Just look away from the US. Turk is not available in Europe (although other systems are).

</comment></comment><comment><USER27> Shit job or no job. That is a question. And probably one should not ask Amazon for answer.

</comment><comment><USER28> I would not call it "being paid".

</comment><comment><USER29> I am confused, i checked most of the HITs and most of them are paying less than 1$ , is that true? will i work for 1 hour for 0.04$?</comment>


HSBC slashes Zomato's valuation by half - <AUTHOR> http://www.officechai.com/news/unicorn-no-more-hsbc-slashes-zomatos-valuation-by-half/ <comment><USER2> Zomato has become crap. I used it for discovering restaurants but they changed their entire searching and browsing experience to push restaurants which have online delivery, so much so that it is just not usable anymore.

<comment><USER3> It was better back when it was urban spoon. Much better, sadly.

<comment><USER4> Worked at U.S as an engineer in Seattle. can confirm. everyone left within 2 months.

</comment></comment></comment><comment><USER5> There will be some kind correcting mechanism for private companies and their valuation

</comment><comment><USER6> Renaming UrbanSpoon to Zomato in Australia - bad move.</comment>


My photos of food - <AUTHOR> https://plus.google.com/photos/search/my%20photos%20of%20food

<comment><USER2> clicked as i was curious why that was on hacker news, but asked me for a gplus login. meh.

</comment><comment><USER3> Warning: this only works if you upload a significant amount of photos to Google+

<comment><USER4> Or if you have auto-backup from an Android device.</comment></comment>


Guy who made his own iPhone brings 3.5mm jack back - <AUTHOR> https://www.youtube.com/watch?v=utfbE3_uAMA <comment><USER2> this is just amazing.</comment>


The McDonald's Fallacy - <AUTHOR>

Today we had an interesting discussion on the Brazillian Python mail list (if you can understand Portuguese language, check http://groups.google.com/group/python-brasil/msg/1cafd6cda3fcabb7).
The insteresting point said is: you can see programming langugae as gastronomy. What has more financial successfull nowaday: An sofisticated restaurant or an fast food company? But how about the consummer experience? It is not even possible to compare the experience and the pleasure of tasting a french food with some hambugers from a fast food company.
In software development the scenario is the same. We have each day more and more options to quick development, everething already done, jusp drag and drop components... but what about the taste? Is you software just another Mcdonald's franchising or do you prefere to have you own Sushi-bar, and live doing something that really gives you pleasure? <comment><USER2> What do you mean by taste in a programming/business context? Software scales and works in a way that restaurants don't. Gastronomy != running a food business != programming != business.

Metaphoric thinking is dangerous.

</comment><comment><USER3> I happen to like fast food.</comment>


The Microsoft Provocateur (1997) - <AUTHOR> http://www.newyorker.com/magazine/1997/05/12/the-microsoft-provocateur

<comment><USER2> > _Myhrvold then turned to what he called "the truly personal > computer—something which has the size and weight appropriate to be carried > with you at all times." This wireless "digital wallet," as he called it, > would allow anyone to communicate, untethered to a wire, by voice, video, > fax, E-mail, or pager. The device would be a clock, an alarm, a schedule > manager, a notepad, an archive of phone numbers and records, and a library > of music and books. The digital signature produced by this wallet would have > a personal I.D. for security, and could replace cash, credit cards, checks, > and keys. He believed that the obstacles were economic and human, not > technological. "The cost will not be very high—it is pretty easy to imagine > a total cost of manufacture in the range of $100 to $250 on introduction, > which means $400 to $1000 retail price," he wrote._

Well, it probably took a bit longer than expected, but that pretty much describes the smartphone and where it's headed.

</comment><comment><USER3> i find it a bit laughable / disappointing that they don't even refer to Alan Kay by name-- "a former Apple programmer"\-- as though somehow Myhrvold is more important to ... anything ... than Alan Kay has been to computing. The only reason Microsoft even exists is because they ripped off Alan Kay and his colleagues at Xerox PARC (well, arguably Apple too, but bill gates himself thought of it more as "stealing the rich neighbor's tv set [before Apple did]").

does anyone else get a weird sense of cognitive dissonance when reading stuff about Nathan Mhyrvold? by all accounts he seems like an extremely capable and insightful person, but at the same time i find his mercenary tactics (see: Microsoft, Intellectual Ventures) extremely discomfiting-- like he is some sort of sith lord not to be trusted or something.

</comment><comment><USER4> of [http://en.wikipedia.org/wiki/Intellectual_Ventures](http://en.wikipedia.org/wiki/Intellectual_Ventures) fame.

A person of disreputable morality indeed.

<comment><USER5> Let's not forget his $500 cookbook! [1]

[1]: [http://www.amazon.com/Modernist-Cuisine-The-Science- Cooking/...](http://www.amazon.com/Modernist-Cuisine-The-Science- Cooking/dp/0982761007)

<comment><USER6> And the mosquito laser

[http://en.wikipedia.org/wiki/Mosquito_laser](http://en.wikipedia.org/wiki/Mosquito_laser)

<comment><USER7> Why did I hear the tune from "Skullcrusher Mountain" when I read that? SDI, really? You know that Myhrvold [0] has henchmen, who do in fact think he's crazy.

[0] OMG: spellchecker suggests "Voldemort"! We're not worthy!</comment></comment></comment></comment>