Improving User 'Discovery' on OFN Map

What is the need / problem ?

It is well documented and understood that we have a ‘discovery’ problem - now that we have quite a lot of enterprises on OFN, it is very difficult for eaters (or other enterprises) to find and connect with appropriate enterprises. This problem and some potential solutions have been periodically documented in:

As discussed in the threads above, it is also clear that the map has potential to improve this situation, possibly with some small tweaks.

Currently (July 2020) there are two major considerations in doing any work on the map page:

  • We are hiring designers and it is likely that there will be some holistic attention focused on this area - we need to carefully manage scope creep
  • There has been a strong drive to replace google maps API with Open Street Map API, and this is partially done. There are concerns with OSM use in Aus (and maybe other places?) that might mean totally pulling google out is premature - TBC

However, a wonderful volunteer has popped up with skills and enthusiasm to work on this area - (@jules) - so can we agree some quick wins that move things forward . .

Who does it impact ?

Anyone (eaters or enterprises) trying to find enterprises on the system that meet their needs

What is the current impact of the problem ?

We are limited in our ability to market to Eaters as we can’t send them to OFN and be confident that they will find what they need. Producers are limited in finding Hubs they might connect with and vice versa

What is the benefit of focusing on this ?

Opportunity arising with Jules to move this forward outside the global pipe

Potential solutions that will solve the problem ?

1. Prioritise implementation approach

2. Potential ‘quick win’ changes on current map interface (google maps API? both?)

  • detect user location and have starting zoom closer
  • scroll out to see closest (as per @tschumilas comment here)
  • merge points (when there’s a dense cluster, just show a single point with a number)
  • add the ability to search by enterprise name
  • some kind of text or hover with the producer names next to the icons at close zoom level e.g. GH #1649

3. More significant changes, but perhaps could be done within current page design

  • Currently the map only enables search by location (also only suburb, not street address). This is really annoying if you’re looking for a particular farm or hub. Improve Map Search and Filter
  • Extend map based search by product, producer, filters (open, closed; farm / hub etc) (not just location) G#968
  • UX Map moves if you try to highlight text
  • Address validation so no more enterprises in the ocean- G#546 G#954 UK172
  • Explore ease of plugging into other open source third party - that we can direct people to but that then sends them back to OFN shops e.g. gogo carto

4. Kirsten playing with / introducing ideas for extension of mapping in OFN . . sensing Jules skills

  • Ability to show or search enterprise delivery area . . . (lots of design thinking required) . . e.g. Delivery Area | CERES Fair Food (note this info is not currently in the database in any useful form)
  • Farm has option to show boundaries, actual property (linking to GIS), potential to include data layers with ecological improvement data e.g. soil, revegetation, biodiversity

5. Valid ideas but likely out of scope. Just keeping here for easier future reference

Selection of a feature candidate

Suggest Jules investigate 1. and report back on her thoughts, including wisdom of implementing 2. within google or just go to OSM

T-shirt size of our selected feature candidate

Metrics to measure if need is satisfied after feature is implemented

Events on map page that tell us how many people:

  • go no further
  • search, open a profile or two and go no further
  • how could we see whether they actually make contact? maybe they found what they needed?
  • search, find what they need, click to shop
  • complete transaction

Feature owners

Epic/projet where you can follow implementation


Connected wishlist and discovery discussions*

[list precedent discussions]

1 Like

Quick note on the OSM version: it currently only searches by enterprise name, and not location, which is the opposite of the Google version. The rough roadmap for improving it includes customising the search functionality to include locations, so we can probably have both.

Customer feedback email from Aus team today:

Hi there
I’m a little confused by the website- I work on websites so I hope this helps too! I live in Wonthaggi it says there’s a shop which is closed and it’s not clear if I have to choose a location To pick up or can have delivery- Helpful is steps. Eg Step 1 choose delivery or pick up. Step 2…so I’m not clear whether my location defines what I can buy. Then I want to shop. Perhaps I’ve just not looked at the site for long enough. When I type in location it says closest place is kongwak but doesn’t confirm if that’s where I would pick up from. I’m keen to shop and am happy to drive a distance to pick up. Can I sort by product rather than scrolling through lists? I’m on a mobile.
Thank you
Jo

@Erioldoesdesign

Hi all, just an update (please let me know if this is the wrong place, or to correct me on anything, as I’m still getting oriented). I talked with @Erioldoesdesign about the high-priority map issue, which seems to be producer-input addresses either not appearing on the map or appearing inaccurately. In talking, we came to the thought that in the producer registration process, it would be helpful to have some sort of feedback step (in real-time, on the first producer registration page as they enter the address) about whether the address the producer is entering can be placed on the map, and if it can, whether it’s accurate. We had the idea of a small map, with the geocoded address (based on their inputs so far) appearing, and a checkbox so the user can indicate if it appears to meet their expectations. I’m wondering maybe we could start with an even smaller first step, and have just text saying something to the effect of either “Is this your address: ___?” or some kind of dropdown with a few options, and it would be the geocoder’s guess of what address they’re looking for based on the inputs they’ve entered (similar functionality to the input on the map itself but I’d stitch it together from the separate address inputs), or if the geocoder couldn’t find it, to say something to tell them that their address in its current format can’t be found on the map. Then either way, get them to check the box to say, ‘yes, the geocoded address looks right’ or no, either it couldn’t be geocoded or they didn’t like their geocoded options. And then from there, the map could be added and the checkbox would retain its same meaning.

If they confirm/deny the address looks correct, we’d want to store that boolean (true/false) in the backend and perhaps not try to show those producers with unverified addresses on the map. If they have confirmed the address, we may want to store the location in a new field in some map-friendly way, like coordinates.

Does this make sense? If so, do you want me to attempt it as an experiment? I’m not sure how far I would get with the backend portion… tbh even the front end takes a lot of translation for me since I’m used to angular 9, react, SPA, etc. but I think I can sort that out. Does anyone know of a backend dev who could collaborate with me on a branch? Sorry if these are naive questions, just processing a lot of info and trying to figure out how to tackle this. If there’s still too much uncertainty or we want to wait on design decisions, I can chip away at smaller pieces like the map display itself, or any other bugs.

2 Likes

I’d be happy for you to give this a go. I wonder if it might be worth reaching out to / pinging cillian on slack - he’s the one who’s been picking up map issues and might be willing to work with you on this?

1 Like

Thanks @Kirsten! I’ve slacked Cillian, and will start playing around with a simple proof of concept of this now. When I have something, I’ll maybe share a video so people can see if we feel like we’re on the right track.

1 Like

A feature I love when I’m searching and shopping on other sites is when the site already knows my location and shows me - by default - the stores (or whatever) closest to me, but also gives me the option of choosing a different location. Wouldn’t it really simplify things for the user if they didn’t have to type any address in the ‘shop now’ page because when they first approach OFN, it would show them the open and closed shops (and groups I’d argue) closest to them?

2 Likes

I would love to start offering logged in users the ability to ‘save a location’ or ‘Add their home address’ and have OFN remember this when the shopper searches.

Some websites do this thing you might notice in the place where you type the URL it might ask you to ‘allow’ access to your location GPS data. On mobile it looks like this:

Would love to explore this some day :smiley:

1 Like

Hey @julia.e.carney I know I promised you some design ohhhhh about 4 weeks ago.

Just saying I haven’t forgotten and if you can see this figma file:https://www.figma.com/file/YFTgvJVs2njv7644gNrtMi/Producer-registration.?node-id=0%3A1

You can view progress and if you wanted to sync up again on maps etc. we totally can.

Hi @Erioldoesdesign, thanks, this is amazing timing actually, as I just got some functionality (without ux/design) working last night, and was about to touch base with you this very day. I can’t actually see the figma, you may need to please give me permissions. My github account is here, don’t know if you can do it that way, or even if you have some kind of sharable link? https://github.com/julesemmac. You could use my email julesaccts@gmail.com too if that’s easier.

1 Like

hey @julia.e.carney - just on a call about OFN in Latin America and looking at the map in Brazil and they have one of these cases of an enterprise randomly in the middle of nowhere - I think - it might be that there is a producer on this little island. Perhaps worth checking with @thomaz and @rafael . . it does seem that they are having address issues . .

Hi @Kirsten! Sure, I’ll check in with them, thanks!

Finally done some vol work on this and opened up the Figma link for you to view: https://www.figma.com/file/YFTgvJVs2njv7644gNrtMi/Producer-registration.?node-id=0%3A1

Sorry for the delay!

1 Like

Thanks @Erioldoesdesign, this looks great!

1 Like

Just sharing this user experience here. So of course in CAnada some buyers are in the middle of nowhere - nothing on OFN within 200 kms. A buyer from the Northwest Territories just told me - that when they search by their town - they see nothing. I guess there must be a geographical limit on the area around the search address that is searched. So - is it possible - that if an eater puts in their address to search, and there are no hits, that the distance of the search automatically zooms out to find the closest OFN shop? (just putting it here so its not lost - I know we aren’t really moving this issue into our pipe.)

1 Like

Hi @Kirsten, @Erioldoesdesign, me and Cillian have a PR for this finally: https://github.com/openfoodfoundation/openfoodnetwork/pull/6584 . @Erioldoesdesign I don’t know if you do any design qa, but if you’re running locally would love if you could have a look - I tried to follow your invision exactly. If not, we could also look at it on my machine if you want to do a call at some point.

1 Like

Great, looking forward to this improvement! :smiley:

First: Happy new year to everyone! :tada:

From a user’s perspective I have one question and two remarks:

Q1: Why do I have to click “Locate address on map” manually? Could this be automated as soon as I enter the address?

R1: I think the text when selecting “not accurate” is much too long. People won’t read this. My proposal: Drag and drop the pin to the accurate position and click “continue”.

R2: There seem to be two spaces in the headline between “First” and “need”. Maybe in this mockup only, but should be checked. Is there “we” or “OFN” missing between the spaces?

Sorry for being so pedantic here - somebody has to be. :wink:

So cool, seeing things moving forward. :smiley:

1 Like

Hi again,

after thinking about this a little bit more I would like to refine my thoughts on this. If you think it is too late and you are ready to merge and give it a go - that’s fine. Maybe we can add a version 2 of this function to the wishlist then.

My main concern is that in my opinion the proposed workflow in the above mentioned Github post (section “What should we test?”) is not intuitive and I think the process could and should be simplified.

Quote from Github instruction for testing:

  • click “No - not accurate” to enable marker dragging
  • click “Yes - it’s accurate” when complete

Whitout the instruction for testing at least I did not understand, that I first have to click “No”, then drag the pin and then click “Yes”. Maybe it’s just me, but I don’t think so. :wink:

My proposal:
Instead of the two radio buttons “yes - accurate” and “no - not accurate”, what about just one mandatory checkbox, labeled: I confirm that the indicated position of the enterprise on the map is correct. (or similar). Above the map we could add: Drag and drop the pin to the correct location if not accurate. (or similar). The marker dragging would always be enabled - I think this is what users would expect anyway.

What do you think? Does this make sense?

BTW: What happens if I select “No - not accurate” and click “Continue”? Has the function of not displaying the enterprise on the map then already been inplemented?

I am happy to discuss this further, if desired.

Hi @konrad! Thanks for writing back, I’m open to any of these changes… maybe we could have a call with you, me and @Erioldoesdesign? I was working from @Erioldoesdesign’s invision originally. I don’t know the design flow or who does what in terms of design at ofn very well, but honestly my background is more in the code side than the ux/ui side, so if we can all have a quick talk and get whatever consensus we need, I can make the updates. :+1:

Cool, let’s see what Eriol thinks. I also don’t want to interfere with any processes here - just sharing my thoughts.

If desired I am available for a call Monday, Tuesday and Wednesday almost all day (European Time).