Welcome to the first of many posts from EventBeat Development, where we'll discuss just how we make EventBeat tick, and how we fixed it when it stopped ticking!
This post focuses on this month's rollout of EventBeat's latest generation of searching technology, dubbed internally "Smart Search", and just how we managed to deliver a search engine that has the capability to source content from four major social networks, within multiple search terms, and then filtered down depending on the content found - all under two seconds.
The story begins with the shortcomings of the original social search, a long drawn-out process that demanded its users to click a social network they wished to search, had one dropdown for the account you wanted to use, and then you'd have to select what area to search. Slow and inefficient, especially for a age where 75% of all internet users use social media.
Fail fast, fail often
So we got to work, taking pages and pages of UX sketches, hours of conversations about social media browsing behaviour, and multiple UI revisions (one such UI design involved the old social media circles below, a design that has since been incinerated in a furnace) to distill a process that we believe to be one of the best in the digital engagement industry.
We believe that great development comes from getting your user's eyes and hands on the earliest revision of a feature you can build (a prinicple fellow developers will know as 'MVP'), and fortunately we had many people available who could guide the development with real opinions from the outset. This lead to some great feedback, that moved the "Saved Searches" from a dropdown that was barely visible within the search area to a list on the left-hand side, and gave us the suggestion to colour-code the search terms to easily identify which networks would be being searched.
It's tags, but not as we know it
One of the key issues we encountered early on was how to differentiate searching for individual tags ("#event2016", "cute kittens" etc.) against searching through an accounts specific timeline or mentions. If I searched for "@EventBeat", should I expect content from people who used that term, or should I recieve tweets that the EventBeat account has published?
We solved this issue by giving each network's search area it's own dropdown, prefilled with connected account functions - "EventBeat Mentions", and then we hijacked the "value" parameter of bootstrap-tokenfield to add a suffix to each of these dropdown items. These are then parsed by the social search engine to determine which behaviour to apply to that specific search term.
That's about enough for today's post, if you are an existing EventBeat user I hope you are now a little more informed about what happens when you see the EventBeat loading icon and the following flurry of great content from your searches.