Hacker Newsnew | past | comments | ask | show | jobs | submit | jumpingmice's commentslogin

Yes the entire purpose of Ingress was to make meat modules walk to under-documented locations, take pictures, and indicate points of interest. The meat modules seemed to think it was "fun". Hard to explain.


Was a player, but to this day I still can't figure out why "Go there, take pictures, and 'capture' a location" can be THAT beneficial when it come to map software optimization.

I know the game certainly records my location which maybe good for discovering walk route, but other data they've collected seems (I guess) useless. How can picture of sculptures improve map quality? Kind curious.


A level 40 player (deeply committed to get that high) creates a stop with a photo of a statue in his back yard fountain so he could cheat. You could wait until multiple people submit it, or just allow it and just see how many people visit it. Either way, you get validation data on it.

Conversely, a player creates a stop for a new statue that was just placed outside of a government building in the last few weeks. This stop gets visited hundreds or thousands of times a day. You've now identified a hub. This hub can be used to validate the existence of other items of interest in the near vicinity.


It makes more sense now, but I still got questions.

You see, when you created an in-game location, you're inviting players to go there, regardless whether or not the location is popular in the real life. Dedicated players may take a detour from their normal day-to-day route just to hit that location to gain in-game advantages, which will generate data noise if the map software wants to use players data to improve their product for normal non-player users.

Also, let's don't forget products like Google Maps and Bing Maps are already collecting users locations. And in addition to the location, it also knows where the user was, where the user wants to go and how the user would go there (Take bus, drive, walk etc). That, is high quality data (Better than a Niantic game could provide) that generates profit directly.

All the reasons combine, I think I still have some doubts about that business model.


A couple points here.

First, you get data about how pedestrians can reach all the truly popular locations. If you also get extra data about how pedestrians can reach various irrelevant locations, okay, that doesn't have value but that's not harmful; what matters is that all kinds of niche landmarks that would be interesting to tourists are somewhere in your data.

Second, people making a detour from their normal day-to-day route to reach some location is the whole point - these are local people with knowledge of how their city works; you don't want to measure how tourists usually get from landmark A to landmark B; you'd want to see what shortcuts an optimizing local would take when getting from landmark A to landmark B - which is different than simply looking at random people walking habits with no intent to optimize the route; the gamification provides an incentive to optimize routes and allows you to harvest the knowledge of that optimization.

If someone tells google maps that they want to go from A to B, and google maps tracks how they got there, then it doesn't harvest any information about the best route because the user doesn't know it, they wanted a recommendation and likely tried to follow it even if it's very suboptimal, so you'll just get a reprocessed version of the data you already had (and gave to that user). On the other hand the data from Niantic is useful so that Google maps can make a better recommendation.

Third issue is that the Niantic process also allows you to detect undesirable routes. If Google maps directs a tourist from A to B through a shortcut that's passable but unpleasant in some manner, then they'll take that route; and if they send another one there, they'll also go there, because they don't know better and the alternatives are (probably) not obvious. You'll only get a signal of people not going there if it's really bad e.g. impassable.

Niantic, however, can detect that most people who want to go from A to B (because of game incentives) but who know all the routes from A to B (instead of asking for directions like the google maps usecase) are intentionally taking a longer route for whatever reason - which is again useful data for improving Google Maps recommendations.


I imagine, as well as user verification (mentioned down-thread) that statues provide a known location to remove systematic errors from a users GPS data.

In my limited experience it's not been uncommon for a GPS track to run parallel to the actual track. Having known markers (that are small, and can be treated as points) means traces can be pinned.

Just a guess.


For one they created the dataset that Pokémon Go uses and that game is massively profitable.


I think it doesn't improve directly the maps, but it improves the whole experience of using Google maps. Maybe they could reuse the pics uploaded by ingress users and display them on Google maps.


Maps are usually static snapshots in time. Really good maps would constantly update to show changes in a living world as quickly as possible.


It was, in fact, fun.


Do you use a search engine? Social media? Any modern online game? A connected smart home? A smart phone without its privacy settings altered? A modern flat screen tv? A modern car? All of them do behavioral extraction in one form of another. Often under the guise of entertainment.

To single out Ingress or Pokémon Go seems to ignore the much bigger problem.

And, as an Ingress oldie, it was a lot of fun. We planned for weeks to cover the northern hemisphere, preparing with people in four different continents. I’ve met people and seen parts of the world I would never have met or seen otherwise.


Humans are so competitive that they'll often take pride in being the worst at something, because even that's a perverse way to be at the top of the list. That you can create an arbitrary game, seed it with some people to set up a ranking, and open it up to a bunch of people and they'll go crazy figuring out how to rank themselves using your criteria isn't all that surprising.


I don’t get how this is supposed to work with sports and other activities. In high school I had water polo/swimming practice mornings at 6:15. Is that now illegal?


I suspect the start time is meant only for classes, not extra-curriculars.


Nobody ever thinks about the edge cases


Yes they do. Under this law, extracurricular and voluntary "early bird" classes are still allowed before 8am.


Typically they don't until they are forced to by an adversarial process. Compare AB5 in its original form versus what was eventually passed. The number of professional groups that stepped in and pushed for exceptions for their trade is a testament to how poorly the original authors of AB5 did thinking about the edge cases. By the time it passed, it was largely exceptions.


So the legislative process worked, cool.


Usually very late for many people by that point.


It should be. There's a lot of research showing that kids need 8+ hours of sleep even more than adults.


Why can't you get 8+ hours of sleep if you have practice at 6:15?


Let’s say you can sleep until 5, which is somewhat optimistic for many families with multiple responsibilities in the morning.

That means you have to be asleep no later than 9, which means depending on the time of year it may still be light out, and certainly the community is still fairly active. Plus I recall a recent study that essentially said teenagers are naturally night owls.

Expecting teenagers to be asleep by 9 is a losing battle.


Because it is tough for high school students to fall asleep early enough.

"In the teenage years, the hormonal response to the 24-hour daily light/dark exposure that influences circadian rhythm is altered, making adolescents physiologically yearn to stay awake later at night and to remain asleep later in the day."

https://www.neurologytimes.com/blog/teenage-circadian-rhythm


How many people did you know in school that went to bed at 10pm? I don't think I knew any.


I just slept through third period every day.


Since it doesn't apply to "zero-period" classes, it probably doesn't apply to sports practices either.


As noted, it's not illegal.

But, you could also move practice to the afternoon like most school sports. None of my high school's athletic programs were before class.


More people should try high performance services with non-traditional protobuf implementations. The fact that every language has a generated parser in no way preclude you from parsing them yourself. Hand-rolled serialization of your outbound messages can also be really fast, and the C++ gRPC stack will just accept preformatted messages and put them on the wire. Finally the existence of gRPC itself should not make you feel constrained against implementing the entire protocol yourself. It’s just HTTP/2 with conventional headers.


To be clear for anyone reading, we're parsing and generating the data-related protobufs ourselves, and retaining ownership of the memory returned by gRPC to obtain zero copy.

The C++ details are found in

https://github.com/apache/arrow/blob/master/cpp/src/arrow/fl...


Have you considered/tried using the new ParseContext instead of CodedInputStream? It is performance-oriented.

Edit: Apparently it's also the default in protobuf 3.10


I wasn't aware of it but will take a look. Thanks!


I'm not seeing the 1-year gap? I'm pretty sure where it says "January 2018" is a typo, was actually 2019.


Hm, you're right, that does seem to be a typo. I'll downgrade to "six month gap".


Which part do you doubt: the assistant or the wifi? I never use the assistant stuff but the wifi is great.

Gsuite accounts never work right with every product google launches, often get features late or never. Many google products have _never_ become available for gsuite accounts.


Yeah, it’s the assistant aspect not working with GSuite. Such a shame. It’s been like this for years, and I doubt it will ever get supported.


Meetup doesn’t “run” these. You’re just picking boring ones. The only meetup I attend is a bunch of random motorcyclists who go up the coast highway every week. Never felt bored.


They don't run them, but it's sort of intrinsic to their platform that low-budget meetups can't access it, and those can be some of the best because they don't have to answer to sponsors.

I run a "meetup" that is not on Meetup, in part because of the cost (I'm fortunate that in a technical niche community in NYC, word of mouth spreads fast).


The cost is like 50 euro a year - which is only really significant if you have less than a few meetups every year.

I would say that fee keeps things a little more professional than otherwise.


The result is pretty impressive. Go's scheduler is not this good. When my Go GRPC servers get up near 100,000 RPS their profiles are totally dominated by `runqsteal` and `findrunnable`.


Probably worth filing an issue, if you haven’t already?

Some chance you might be hitting some pathological behavior that could be fixed or tweaked.


Weird. In one of my Go explorations I wrote a naive trade algo backtracker which ingested 100,000 datapoints per second from SQLite on commodity hardware.

I'd expect something highly specialized such as GRPC server to perform better.


Reading 100k rows per second from sqlite sounds WAY easier than serving 100k HTTP/2 queries in the same time.


True. But in my case the code also distributes these datapoints to multiple threads, computes technical indicators and simulates tradings while gathering statistics to finetunne parameters.

The only optimization I've done was to ditch maps wherever I could. They were dominating flamegraphs.

This is why I expected GRPC to perform better. But I agree it depends heavily on what's being done.


How did Go perform compared to a language like python? I thought the db would be the bottleneck?


Python is awesome. It's fast as long you're mosty calling libraries. Not so fast if Python itself is doing most of the work.


Inside Google's main repo there are different build targets for libraries with incompatible API changes that are too difficult to fix all at once, e.g. there might be numpy_1_8 and numpy_1_10 separately.

Python at Google muddled along for years without numpy at all so it's not like anyone would be seriously harmed by having an old release in the repo.


All of the supposed flaws of a monorepo in this article are actually flaws of git. This is a very common phenomenon. I often joke there are two kinds of developers: those who prefer monorepos and those who have never used perforce.


The Mojave installer just up and trashed my whole file system. No reason to believe it can’t happen again. Always backup.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: