Google Maps is a critical dependency for nutrition facts on mcdonalds.com
mastodon.social
mastodon.social
This platform is used by a lot of different QSRs. Or Quick Service Restaurants. Dunkin, Starbucks, Taco Bell, Checkers, etc.
I know this because I built the platform.
The biggest hurdle to the platform was delivering your order to the store “just-in-time” for it to be hot and ready when you get there.
Checkout CardFREE. It’s been a decade but they are still delivering value. The VP of Engineering was a new hire junior engineer when I was there.
Eg, I always block location API access, and sites often have poor fallback UI for entry.
If it'd let me, I'd be setting my browser to always report "Toronto, Ontario" and auto-deny location requests.
I wish it wasn’t like this but until the open web becomes the “transparent” web, the snooping, spying, logging, graph-identity-building, MarTech driven, web will continue to go towards walled gardens and deanonymizing the internet.
On the other hand, postal codes can sometimes apply to a handful of buildings, and sometimes can apply to entire cities, depending on the country and local area, so they can either be very unhelpful or almost as invasive as sharing your precise location.
That's a much smaller number.
But yeah, what I meant to express was that Canada doesn't have a lower-precision version in regular use.
Pickup from McDonald’s is not, at most there will be two or four in a zip code.
Another in TX, 8 McDonald’s. Another in FL, 10 McDonald’s.
Is this an example of "I knew not what I was doing", or what? I eval projects I'll assist by thinking of applications 2 or three times removed from the project prospectus exactly to not unknowingly further the ends of a surveillance state.
You don't need to know which room in my house I'm sitting in to tell me how many calories are in a McChicken.
I specifically order starbucks long before I get there because I prefer their hot food to cool down before I eat. Mcdonalds takes that agency away.
"Yeah but", do you need Google Maps do do the geolocation?
- Have websites in different countries: like if I go to macdonalds.co.jp, I get the nutritional facts in Japanese about the Japanese Big Mac.
Geolocation is rude, lame and broken.
At the time, it was only National in the USA. You could lookup different stores to get menus after the app determined your closest store.
>Have websites in different countries: like if I go to macdonalds.co.jp, I get the nutritional facts in Japanese about the Japanese Big Mac.
I believe they do this now.
At the time it was implemented, there wasn’t a bias like there is today against location API’s. They hadn’t been used (yet) for tracking purposes outside of maps and what we were doing. No ad based geo fencing and location sharing.
The big issue is QSR’s are fast food. Fast food must be fast. Under 10 minutes. Any select, drop down, input box to enter in your address, added extra complexity to the checkout ordering process during our focus groups. Having an image of the item, add to order, checkout to nearest store, results in a 10x reduction in ordering time. It makes the user experience of the ordering process streamlined and smooth and operational from your vehicle with one hand.
I would build the same system today.
https://www.allrecipes.com/gallery/regional-mcdonalds-items/
It’s harder to see these days, but where I live in Albany, NY, McDonalds was in the New England region, and we would get the lobster roll “a New England favorite!”
Head a few miles away and you’d be in an area supplied out of New Jersey, Pennsylvania or Western NY. This sort of thing is noticeable if you live in a place that’s sort of a Venn diagram from a distribution standpoint.
Oil sounds like the likely culprit to me. About a decade ago a bunch of cities, including Chicago, started regulating the types of oil that could be used for frying in restaurants.
People don't actually believe these are anything more than averages with huge error bars right?
I'm sure there are better essays with similar value, but the one that comes to mind is Heidegger's The Question Concerning Technology: https://www2.hawaii.edu/~freeman/courses/phil394/The%20Quest...
They refuse to believe that government thus politics is the problem, not the solution
Instead, it's probably being used for an autocomplete widget to help users type in an address.
edit: I asked Bard about this, and it told me that websites can get the approx. location of their visitors via the Google Geolocation API:
> To use the Google Geolocation API, a website must first obtain a Google Maps API key. Once they have a key, they can add the following code to their website:
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY"></script>
<script>
function getGeolocation() {
var location = navigator.geolocation.getCurrentPosition();
if (location) {
var lat = location.latitude;
var lng = location.longitude;
// Do something with the location information.
}
}
</script>We used IP to determine regions before there even was Google Maps.
Right now, Google maps tells me I'm in suburban Atlanta. It's off by more than a thousand miles.
Occasionally, I will get French language automatically picked because of the assumption that I am “in” Montreal.
1. you don't need google maps script to request location
2. the site needs to ask the user before it can get their location. the average user doesn't even know whether google maps is involved or not, so it's totally irrelevant.
I have Firefox loaded with all the ad and privacy blockers installed for this reason when I do tests and code reviews. It reveals a lot of inadvertent dependencies and bugs that devs are unaware of.
I couldn't arrange for gas service before I moved into my home because the gas company's web site would only accept Google-blessed addresses.
I had to actually move in, and then go down to the gas company office with a copy of my lease to prove the address exists.
Strange, since at some time in the past the gas company payed many thousands of dollars to run gas service down my street. But, like in most big organizations, I suspect the web people and the company data people don't talk to one another.
Sounds like you're trying to assume good intentions, but you sound extremely naive as a result.
The issue is privatized utilities. They are an ordained monopoly. Their failure to "talk to one another" is not a failure at all. They have no reason to even consider the problem in the first place. You're still paying them, are you not?
My city uses Google to fill addresses on their tax portal, so for new construction this exact issue arises. My power company (a public utility) uses recaptcha for logins and I frequently struggle with it.
https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...
Even if blockers do count as non-standard, random scripts not loading should not be capable of bringing down your site, and this should've been clear even before the npm left-pad debacle.
In this specific case the behavior is caused by more than a run of the mill adblocker with standard blocking lists. The OP seems to be using a very aggressive blocking list (eg. blocking all google services), or blocking all third party scripts altogether.
>Even if blockers do count as non-standard, random scripts not loading should not be capable of bringing down your site, and this should've been clear even before the npm left-pad debacle.
"shouldn't" is debatable here, especially when the cost to mitigate those issues are non-trivial (engineering effort) and the chance of it occurring (eg. google maps randomly failing) is low. A failed hard drive shouldn't bring down a computer either, but how many of us are using laptops with RAID1 drives?
The website has every right to server you the content as they seem fit.
You are not entitled to an experience other than the one they are willing to provide.
The only reason the site has so much control is that the browser makers gave it away. The browser makers should have retained much more control over the user experience. The site of course should have complete control over the words that appear on the site (and the ordering of the words of course) and some other things.
That was the fundamental mistake of the web. If people wanted to create a new internet protocol for serving user experiences over the net such that the user need not explicitly install any app, that would've been OK with me. The mistake was achieving that goal by extending the internet protocol that was quickly become society's most important way of distributing words (writings).
I've completely gotten off the subject of ad blockers.
And they aren't entitled to have me as a user or customer.
As ad blocking is a matter of basic digital sanitation, this is roughly analogous to me refusing to do business with a doctor whose office has a sign outside saying "no facemasks may be worn" — they might be allowed by law to make a bad demand, but it's still bad and they still shouldn't even if they don't care about losing my custom.
A better analogy is you go into a doctors office, there have pamphlets for other services offered that you are no interested in, so rip the pamphlet displays off the wall and complain you're the victim for not being allowed to see the doctor.
If you engineer your application correctly with non-critical things outside the critical path you can have the best of both worlds.
Imagine going into the CTO’s office to explain why some vital tool or feature hasn’t been working for 35% of users because of some silly issue with Google Maps. “Why did Google Maps issues break our site?” … “well ackshually our entire app waits for maps.init()…” this is like the worst response imaginable.
I'd say it's not unreasonable. You're giving your third parties the ability to break your business. Third party scripts are blocked or just fail to load all the time, APIs change suddenly, etc.
This case specifically just seems to hit (mandated?) nutritional information that's also printed on the packaging.
What's your strategy for dealing with jquery not getting loaded?
>APIs change suddenly, etc.
That's going to be an issue regardless of you check whether the script is loaded or not.
Host it on your own infrastructure so that it's the same reliability as your site itself?
That hasn't been true for years due to timing attacks. See: https://news.ycombinator.com/item?id=24745748
You can save your site by self-hosting jQuery, but if your business depends on Google Maps you should at least handle failure more gracefully than a blank screen.
They are using Google Maps to get your local nutrition facts. They change with location.
https://www.mcdonalds.com/us/en-us/about-our-food/nutrition-...
Requires a map? On my phone, there’s no map widget nor distance to a restaurant nor anything else distance related.
There’s zero reason for the current functionality to require giving google my location.
Sure, you can argue that one day they might add something that uses the map, but that day ain’t today nor does it seem a reasonable requirement to get the calorie content of some chicken nugs.
Calories Calories 24grams Total Fat (31 % Daily Value) 24g 24grams Total Fat (31 % DV ) Total Fat (31 % Daily Value) 26grams Total Carbs (9 % Daily Value) 26g 26grams Total Carbs (9 % DV ) Total Carbs (9 % Daily Value) 23grams Protein 23g 23grams Protein Protein Saturated Fat: 4g (20 % DV) 4grams (20 Percent Daily Values ) Dietary Fiber: 1g (4 % DV) 1grams (4 Percent Daily Values ) Calcium: 15mg (2 % DV) 15milligrams (2 Percent Daily Values ) Trans Fat: 0g 0grams Total Sugars: 0g 0grams Added Sugars: 0g (0 % DV) 0grams (0 Percent Daily Values ) Iron: 1mg (6 % DV) 1milligrams (6 Percent Daily Values ) Cholesterol: 65mg (21 % DV) 65milligrams (21 Percent Daily Values ) Vitamin D: 0mcg (0 % DV) 0microgram (0 Percent Daily Values ) Potassium: 360mg (8 % DV) 360milligrams (8 Percent Daily Values ) Sodium: 850mg (37 % DV) 850milligrams (37 Percent Daily Values )
https://www.mcdonalds.com/se/sv-se/naringskalkylatorn.html
For england there are 6 and 9 chicken nuggets listed https://www.mcdonalds.com/gb/en-gb/good-to-know/nutrition-ca...
The page seemingly doesn't use your location data for anything, you need to go to the specific site for your country to see the nutrition for your country.
Switching to "/se/sv-se/" and navigating over to the McNuggets does give different values, however, given the nation is pre-encoded in the url, adding a google map lookup seems entirely pointless.
Given the location isn't used to customize the results, nor provide any information on where restaurants are or availability, what do you believe the end user's benefit is?
Looking at the law (in Oregon) “Total calories must be posted in a conspicuous place in a font size no smaller than the price, or the least prominent font size of the description of the item. A statement listing the daily nutrient intake amounts of calories, saturated fat, and sodium.”
Seems like any legal requirements imply signage in the physical venue ?