Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Search: redux

edited October 2012 in News
Search is one of those parts of onCourse that is never finished. Way back 10 years ago, search was not much more sophisticated than finding a keyword in a text field or two. These days users are spoilt by the power of engines like Google and their thousands of engineers who tweak the results daily. In onCourse Web we currently have these options:

* Plain keyword searching which looks through tutor names, course names, site names and course descriptions
* Searching on distance from postcode or suburb name with a bit of cleverness to decide whether you wanted Glebe NSW or Glebe WA.
* Less than a certain price
* Searching on tags, not just subject tags but also other tags (eg, level: beginners, advanced)
* Time of day (evening, day)
* Day of week (weekend, weekday or even just Tuesdays)

We give the user type-ahead options in the search box for course names, subject names and suburbs. This makes it easier to type search options and not mispell them. And we take all the above options, perform fuzzy matching on keywords. dogs = dog = canine = cat (Yes, I know they aren't all the same, but for the purpose of searching, they are close enough to be helpful.)

Finally, we weight the results to ensure "better" results are near the top. That isn't always easy, since one person's idea of better is different to another person's idea. But we do our best with the results to show users what they are hopefully looking for.

So what next?


Sponsored by work done for the Tasmanian Department of Education, this work is to make it simpler to show users what classes are coming soon. Take a look at our early mockups here. Focus on the top part of the page where you see the timeline. It shows classes from across the college according to starting date. In some cases there are more than 5 classes, on other days none.

I tried to balance the need for information with keeping the clutter out of the page. That's why it is fairly light and grey, and a secondary navigation elements on the page so that it adds information without trying to attract too much attention.

New timeline showing classes starting on a given date

Refine search

Although there are options in the advanced search, we want to make choices more accessible to users. A 'faceted' search is one in which the user can narrow in on one aspect of their search results. You see it in Google results down the left under "More search tools". Here we are putting it in a menu at the top. That way it stays out of your way and doesn't clutter the view.

The drop down list of options will be automatically filtered to only show options which give you more than 1 result (if our search engine performance can handle it), and show you roughly how many results will be expected.

* Show Locations: the same feature you have on your current site to show a Google Map of sites
* Near me: uses the browser geo-location to determine where the user is and find classes near them. Obviously very useful for mobile devices, but still works well even on desktops.
* Coming soon: only show classes starting the next 28 days
* Weekend: anything on Saturday or Sunday
* Weekday: Monday to Friday during the day
* Evening: Any evening
* Subjects: further filtering by subjects, only seen if the user hasn't already filtered by subject. They may have performed a keyword search originally, so this is useful in the same way the filtering down the left is useful for this Ebay search

Refine search through a variety of options

I hope the above thoughts were useful to you. Any feedback or ideas on what works for your environment would be really useful to my ability to finalise the new design and begin the implementation.

Ari Maniatis


  • While I whole-heartedly support the desire to keep the display clean I initially I thought it needed some sort of indication of which days had something on -- particularly when using touch devices which don't have the mouse-over option.

    I see that it does in fact do so with a light/dark differentiation, but it's hard to see in the demo due to well-populated dates. See July 23 for an example.

    I'd hesitantly suggest an underline might be another option, the average user being fairly well programmed these days to respond to underlined text as being an active link. For user sites with classes few and far between, this would make finding days with classes much easier.

    What's the faint highlighting on some classes (in the mouse-over pop-up) mean? See July 14-17 for examples.

    From a marketing point of view, it might be nice to have an option for displaying classes with active discounts. Probably a fairly crude approach, but far less problematic than trying to manage it with tags I'd say.

    It's a most welcome development, and I do like the minimalist approach.
  • Perhaps we need to try some alternative styling once we get a test version running against real data. Maybe even a very light box around 'active' dates.

    The faint highlighting was an attempt at tying in the calendar with the search results below. That is, showing the classes which are in the list of search results. Subtle I know, but it is hard to convey the whole thought "these are the courses which you can see below and are also shown with a yellow background". We might try and do something that flashes the class in the list below when you hover the item in the list at the top, or even vice versa. Needs more thinking...
  • (A) A fine grey box is good too -- perhaps it should only be 0.5px in width. : )

    Is it intended that if someone clicks on a given date that onCourse will then change the displayed courses to those (starting) for that day? Or would you only be able to select the one course (or is it class?) from those that are displayed?

    Given the length of the average onCourse website window (even if set at 10 displayed) I'm not sure how much utility you'd get out of 'calendar line mouse-over highlights courses on page' or 'course mouse-over highlights date in calendar line'.

    I suspect this is all running off start date of class, but arguably you'd get more useful functionality out of highlighting what days the class sessions are on in the calendar line when doing a mouse-over on the course displayed on the page.

    Again, a bit of an issue with a heap of results displayed, but very useful if a direct or refined search only results in a couple of courses. Or you've followed an external link to a specific course or class.

    And probably when someone clicks the 'More' link on a course to display that class. Yes, I know the 'View this class...' and schedule links from the class date/time are there, but not everyone looks at that when browsing courses and not all multi-session courses are at regular intervals.

    (B) Refine search: is this a one-shot thing? The current 'More options' advanced search allows multiple choices to be made at one time. I'm unclear on whether the proposed 'Refine search' is a one-time secondary filtering or not.

    PS: I take it the 'Costing up to:' option only ever works off the base fee, never a discounted one? I can see where this might get messy if it were otherwise e.g. where a discount only applies for a given contact type.
  • A1. Clicking on the dates causes the drop down menu to appear. This is needed for tablets which have no "hover"

    A2. As for showing the dates of every session... I did consider that, but I wonder what purpose that serves? Is this widget to show that lots of things are happening at the college? Or is this widget about driving enrolments toward things starting soon?

    B1. Refine search will allow you to stack up multiple filters. But each click will refresh the page and you have to go back and select something else. This is because when you go back the result counts will change after the first filter is added. Anything with a result count of 0 will not be shown as an option.

    B2. Yes, only the base fee. It is meant to be a crude filter, not a finely tuned one for accurate searching. Perhaps it should just say "Rolls Royce" and "I've got no money" :-)
  • (A1) Yes, I had thought of the differences of a touch interface. I'm wondering if the idea is still useful though; it could still be achieved by a 'Show these classes' option in the drop-down.

    In some ways it comes down to the content of each onCourse site. There's a difference between 'It's Saturday night, I want to watch a movie to distract me from the meaningless drivel that is my miserable existence; show me what's on for this date' and 'I want to learn something about creative hairstyles for alpacas; show me on which dates this course is running'. I suspect the vast majority of onCourse-based content would be aligned with the latter.

    (A2) Given that the purpose of this is to show what you have starting when, it may be undesirable to fuzzify that single purpose with additional features. There is also the possibility of confusion over whether it means a class would be starting on each of the highlighted days -- no, I don't hold a high opinion of the average punter.

    (B1) If I've understood this correctly (difficult to be sure without a live data example) would it be possible for a browser to dig themselves into a hole, become dismayed and confused and just lie there until the leaves cover hem over? At what point or what action(s) would be the equivalent of a 'clear filters' command?

    Example: Someone types "art" into the main search box. They then use the Refine option to successively choose 'Near me' then 'Coming soon' and 'Weekend'. However, they don't see anything they like, so can they simply choose 'Evening' to redisplay those classes? What happens if they want to go back to the initial search, and don't use the browser client's back button? Do they have to start over? Would adding a 'clear search filters' option be molly-coddling the poor dears overmuch?

    (C1) What's the future of the existing _locations_ option (which I assume is retained here as 'Show locations') with regard to the 'Near Me' filter?
  • Wow I think you have just about covered everything! I specifically like your comments Danny on "Creative hairstyles for alpacas". I too believe this is how most people search for things but I love the idea of representing things in a different way to grab those other people who do want something to do on a certain date or to even get a fell for our full scope of training. Serial learners are still out there thankfully for us :)

    We do like the idea of having the dates with courses on them actually underlined as we feel our brains have that branded in for all hyper-links.

    The only other comment a colleague made about this is the use of a calendar style display as seen here Maybe this is out of reach or requires lots of work on our end too with pics and such but is a nice representation of what is happening at that place.
  • ariari
    edited October 2012

    B1: the ability to remove filter items is to be added to the 'breadcrumb' style list of search items across the top. Yes, I need to do some more work to make that process clearer. So much to fit in so few pixels!


    The main reason I don't like underlines is that they make the text hard to read. But I'll give your suggestion a go and see how that works in the design. I think once we have this in staging against real data, it will be clearer how this will work.

    The EdenGardens page is interesting, but for reasons nothing to do with search. You can actually achieve an image panel style design right now in onCourse without much work... well, apart from finding all those images. It is quite pretty, but not terribly informative for users.
  • Within the confines of onCourse, I reckon there's much more mileage to be gained with what you're proposing, Ari.

    When I first started dreaming about a 'What's On' page, I had something more like the Eden Gardens page in my mind. However, you rapidly come up against a few hurdles. For one, finding and formatting the images is a pain -- I've been there. Even if you already have them for the courses, you'll still need to frame and crop them for the smaller usage.

    More importantly though, how do you select what is displayed? Looking at the Eden Gardens example, that would be at the Class level, which produces some repetition (see Morning Tea and Halloween). Or you could take it at the Course level, but then how would you display multiple classes at different locations, likely on different dates? And if you're a large site with a lot of classes, it very rapidly becomes crowded, or you have to start culling display results.

    (C2) What I would like to see though is a brief and simple chronological display option for any given set of search results in an onCourse website, something like this:

    NB: One additional feature that doesn't show here at the moment is 'Selling Fast' and 'Sold Out' status in addition to 'Available'. Naturally you'd have location instead of a closing date too. (And no, don't ask why we use this as well as onCourse -- it's too painful and you really don't want to know anyway. Just be happy you're not me.)

    A default alpha sort is all well and good (when it works), but it would be nice to offer earliest-to-latest results sorting of some description, even if it were only from the 'Coming soon' filtering. Initially I thought to have this for everything that's current, but might be a little unwieldy for some user sites. So having it as an option after doing some preliminary filtering probably makes more sense from a user's perspective -- and 'Coming soon' is an obvious trigger.

    A couple of issues I can think of with this though; presumably it would have to exclude Courses with no current Class (otherwise non-Class things like our online courses would show up, and what would you base the list on if there's no Class anyway?). And assuming you're using the existing format to display Course/Class I'm not sure what you'd do if a Course had two or more Classes on different dates; list once for the first one or repeat it each time it is scheduled? Alternatively, you'd have to come up with an entirely new way to present a Class in the list, probably with just the Course title and no description.

    I hope some of that made sense. What's proposed is great for always-there-always-on but I still think there is some scope for a more conscious listing of what a customer is looking for within a chronological listing.
Sign In or Register to comment.