JED Super Sprint - January 2017
The JED team attended the January Super Sprint in London and worked to improve further a number of areas related to the JED. A list of goals were defined in advance of the sprint.
Attendees: Jaz Parkyn, Anibal Sanchez, Paul Franklin, Mark Smeed and Hugh Douglas-Smith.
The weekend started off by discussing goals and objectives that we would like to achieve throughout 2017. The format of the sprint allowed the JED team to collaborate with other teams closely.
Developer Collaboration Process
The code of com_jed is currently housed on BitBucket, and the issues are on JIRA. Over the next few months, we will start the process of migrating the code into a private Github repo, and migrate the issues into a public repo. The workflow will remain similar to that of the current BitBucket and JIRA setup - to gain access to the private repo; users will need to sign the JEDCA.
The main factor behind this decision is that developers are more familiar with Github when compared to BitBucket/JIRA. Also, as the Joomla Project itself and its properties are already on Github, it makes sense to be ‘inline’ with the rest of the community.
Stage 1 of this process will be start migrating the issues over to Github. This is a task that will need to be done manually because the current issues on JIRA contain a number of duplicates and some have been fixed but have not been marked as closed. The second stage will be to migrate com_jed itself and adjust the Jenkins build process.
Yves Hoppe is very kindly providing assistance in setting up a Vagrant box to simplify the workflow for developing on com_jed. We hope to release further details about this shortly.
com_jed Proposed Developments & Discussion
The search is an area of JED that a lot of users rely on and we need to make the process of finding an extension as easy and intuitive as possible. It’s because of this that we have been researching into services that can help us to improve the search functionality. Over the next few months, we will be researching options including ElasticSearch implementation and Algolia integration.
Continuing on the development of the JED Checker, it has been decided that a new listing requirement will soon be implemented. The use of mysql_* functions and direct access of $_REQUEST, $_POST, $_GET, $_SESSION, $_COOKIE, $_FILES global variables will be flagged as errors. As developers we understand that use of these variables and similar functions have valid uses, in these cases, an editor will review your code and will determine if your usage is acceptable. This new requirement will be enforced for extensions uploaded to JED after a given date. We will announce this date shortly.
Other points of discussion on the development included:
Complete functionality of and turn on the Update by XML feature
Add an option to the review scoring to mark as Not Applicable - for example where support has not been used. This should help to reduce the number of incorrect 0 scores.
Proposal of new menu items: Browse Extensions -> Paid Extensions / Free Extensions.
Implement noCaptchas on the registration form and improve the user authentication.
Improving feedback displayed on the front-end throughout the listing approval process. Newly uploaded extensions are shown as Pending until they have been published. However, corrections often need to made to listings before they can be published, and the Waiting for Response status is assigned along with error codes that represent the detected issues. Displaying this status to developers could reduce the number of tickets as it will provide a visual indication that the process is waiting for an action.
Improve the functionality of the template reply system on tickets and extensions.
The Review Checking Process
As part of our ongoing improvement process on the reviews and scoring, we have fixed a number of bugs over the weekend and have also published an update to the Review Detector script to further fine-tune the accuracy of returned results.
After analysing trends, we have developed some further additions to the script that we will continue to test over the next 10 days and will aim to put into production as soon as our tests have been concluded.
It has been decided that reviews submitted via IP masking services will not be published.
Revenue generated from JED
The Google Ads present on JED are not providing the same levels of revenue to the Joomla! Project as they once were. We suspect that this is due to the increased use of AdBlockers. A number of ideas to improve the revenue were discussed at the sprint, including:
New Google Ad placements
An open donation form for the Joomla Project
A banner system with subscriptions for a given number of impressions
An ‘I Support JED’ badge
At this stage, the ideas need further research and development. We will post any news on this subject in our monthly meeting minutes.
Improvements to the JED homepage
The JED homepage would benefit from a design refresh, with the main aims being as follows:
Simplifying the appearance of the search by hiding all advanced search options behind a toggle switch.
Removal of the category select boxes to eliminate cross-browser display issues and improve the usability and accessibility by clearly listing all subcategories beneath clearly defined category headers.
An un-obtrusive module position for Google Ad placement.
In the category view, display subcategories in right sidebar
Good progress on the new design has taken place this weekend, and we will soon hopefully have a first draft to present to the community for feedback.
In collaboration with the SEO team, we have made some improvements to the URL structure and canonical links of the extension and category pages on JED. We will soon be working on improvements to the com_jed router and will implement 301 redirects so that an extension only has one URL in order to improve their ranking within search engine results. The JED team would like to thank Christopher Wagner, Rowan Hoskyns-Abrahall, Soren Beck Jensen and Simon Kloostra for their very in depth analysis of the JED website. The report contains invaluable information and we look forward to working with them in the future to continually introduce improvements.
Listing Training with Anibal
Anibal has now completed his training on processing extensions and using the JED Checker.