7 ms·
Well, that's more clever than a company I did due diligence for. Their strategy was to have a pool of API keys attached to new accounts that would take advanta
by disillusioned 7y ago
Well, that's more clever than a company I did due diligence for.
Their strategy was to have a pool of API keys attached to new accounts that would take advantage of the Google Maps API free tier, and monitor its usage. As the free tier usage would run out, the system would roll over to a new API key automatically.
Wrote that one up in big red marker in my report...
- popotamonga 7y agoEasier to use a random key, normal distribution.
- DeathArrow 7y agoIt's not clever, it's just much more simpler. Using linear interpolation for the time between 2 stops will have low accuracy because for the particular situation time might not be linear with position and distance. Also traffic incidents might happen. Going with a pool of free keys will be much more dependable, even if somehow more complicated to manage and easier to break.
- bad_user 7y agoIt's probably against their ToS and Google could detect it and ban all of those accounts, or the servers' IPs. You can then keep fooling them by creating new accounts or changing IPs (assuming your usage doesn't have clear patterns they could look at). But such events would be clearly disruptive for the business. Works for a POC, but if your business has actual customers, it's a terrible solution.
- disillusioned 7y agoThis company was shockingly deep into their lifecycle to still be using this approach. And yeah, they'd cycle IPs as needed too. I think the thought was that Google isn't doing a ton of fraud analysis for this particular modality of fraud. Still though...
- DeathArrow 7y agoYou don't have many options if you need high accuracy: you have to pay a lot or try to trick Google which might be both immoral and against the law and for sure is tricky, hard to maintain and you can't count on it in the long run. Let's hope there will be alternatives to Google provided traffic data. For now they seemed to monopolized it by offering it for free while losing money to discourage competition.
- raverbashing 7y ago> You don't have many options if you need high accuracy: you have to pay a lot What happened to actually trying to solve problems with programming? Interpolation is one solution. Caching is another. Temporal analysis. Put everything together. You don't need to query the magic Google box for every small update you make (and they might get that info from the transit providers, which given my experience are not that great sometimes).
- deleted 7y ago[deleted]
- sdenton4 7y agoLinear interpolation gets you 9X% of the way there for cheap, though. You can then come up with strategies for attacking the last 10% at somewhat higher cost instead of committing the entire stack to the high-cost strategy. For example, if you ascertain that a bus is more than 2 minutes late, switch to polling that bus more often until it makes it to its next stop. And then switch back to linear interpolation once it gets to that stop. But you'll pay a little bit more for the added accuracy. Morale of the story: if you want to get high-resolution real-time data, you (and your customers) have to pay for it, as that shit ain't easy.
- mjburgess 7y ago> So, we ensure a maximum of 20 meters between two location coordinates to improve accuracy of information. Hardly "low accuracy". The key change is modelling the problem as one of routes rather than journeys. Since a route can be "polled" at a certain resolution & used regardless of the number of journeys on it. > This approach made the API calls independent of the number of vehicles and dependent only on our stops, which helped us in scaling up our fleet with no additional cost.
- nebulous1 7y ago> Since a route can be "polled" at a certain resolution Unless I'm misunderstanding, they aren't polling these inter-stop coordinates
- joking 7y agonobody will notice the difference between 4:00 minutes and 4:30 minutes, is the difference of stopping on a red light or finding it in green.
- pas 7y agoIs that okay in terms of the ToS? How frequently did someone have to create new accounts? Won't Google just ban the server's IP?
- 9nGQluzmnq3M 7y agoNeedless to say, that's very much against the TOS and it's a matter of time until they get blocked. Surely at some point it'd be easier and cheaper just to pony up for a license?
- PudgePacket 7y ago... obviously not? :)
- the_gipsy 7y agoI worked at a company where they did the same thing, for a different Google API. It didn't work out, and it still baffles me how anyone thought it could.
- toomuchtodo 7y agoIt usually works until it doesn’t.
- masonhensley 7y agoThe wrong kind of “do things that don’t scale”
- tantalor 7y agoFraud.
- smnrchrds 7y agoGenuine question: wouldn't this be considered write fraud? Last time I asked this question [0] on a different story [1], the responses I got were that it definitely is wire fraud, but this is so mind-blowing that I would like to ask again to confirm. [0] https://news.ycombinator.com/item?id=22362682 https://news.ycombinator.com/item?id=22362682 [1] https://news.ycombinator.com/item?id=22354357 https://news.ycombinator.com/item?id=22354357
- dsr_ 7y agoIt's violation of terms of service, and possibly a violation of contract, but it's clearly a civil matter, not a criminal one.
- jsjddbbwj 7y agoWhat contract? You don't sign a contract when you create a Google account (which is basically what you need to create an API key with access to the free tier)
- judge2020 7y agoThese terms[0] are, in general, legally binding (especially as you're a business signing them and not just a person), and it's obvious bad-faith to do this, making any sort of lawsuit hard to fight. While they most likely won't actually take you to court over this, you risk suspension of your main GCP account. > 3.3 Restrictions. > Customer will not, and will not allow third parties under its control to: ... (d) create multiple Applications, Accounts, or Projects to simulate or act as a single Application, Account, or Project (respectively) or otherwise access the Services in a manner intended to avoid incurring Fees or exceed usage limits or quotas; 0: https://cloud.google.com/terms https://cloud.google.com/terms
- dmoy 7y agoElaborating on above, not all contracts are signed. Not all contracts are even written - some are verbal or implied.
- 7y ago
- idontusegoogle 7y agoYou have a moral right to misuse their services, because Googlo betrayed people and increased their prices by 1000% for Map API. Google is a fraud company and deserved this.
- idontusegoogle 7y agohaha google employee already downvoted this. I don't use anything from your dirty company. Downvote this as much as you want.
- idontusegoogle 7y agoI will buy my next smartphone from Huawei as well to avoid using any garbage from google
- filoleg 7y agoThe whole chain of replies by this user in this thread sounds like the obnoxious vegan stereotype of the tech world. How do you know someone is not using google products out of some moral grandstanding principle? Dont worry, they will let you know, even if it is just some thread that is only tangentially related to the topic (and their username will likely tell you as well).
- mattlondon 7y agoFrom what I understand (I have no insider info/hints or anything related), this sort of thing was precisely why Google radically changed the pricing structure to make the free tier much smaller for Maps API recently. I.e. Google knew there was rampant abuse by people like this (this example is not the only thing like this I have heard of...) so Google fixed the glitch and in the process ruined it for all the people genuinely using the service's free tier. This is why we can't have nice things :) I guess we are lucky that Google didn't decide to just cut their losses and close the whole shebang down - that would be a shame as Google maps is really useful IMO.
- mv4 7y agoPooling free-tier accounts is usually against ToS.
- hinkley 7y agoI discovered that our preproduction servers use the free tier while trying to work on some CI/CD issues. Normally we never get anywhere near the limit, unless someone (say, me) is trying to work on the test suite during a time of day when a lot of pushes are happening. Had a few enforced breaks there for a little while.