ExpressionEngine add-on developers (species: Codeignitus Developus) are a unique breed. Should you encounter one in the wild and need support, here are some tips to get your question answered as quickly as possible.
Leave a Review
This point should probably be last, but I’m going to bump it to the top of the list because I think it is the best piece of advice I can give you: if your add-on developer goes out of their way to help you by either building in new functionality or taking a significant amount of time to assist with an edge-case scenario, leave them a review on devot:ee.
This is truly the highest compliment you can pay your add-on developer and it will ensure that they remember you in the future if and when you need additional support for this or any of their other add-ons. By taking just a few moments to write a two sentence review and rate their product, you’ll ensure your place at the top of the queue in the future.
Document Your Issue Thoroughly
The more information you can provide your add-on developer about your problem, the less likely it is that they’ll have to follow up with you to get more information before coming to a resolution. When you consider the fact that you and the add-on developer might be on opposite sides of the world, with entirely different working schedules, reducing unnecessary back-and-forth becomes critical.
Include the following information in every support request:
- Version of ExpressionEngine you are running
- Version of the add-on you are using
- License number of the add-on you are using
- Browser(s) on which you are experiencing the issue (where applicable)
- Server specifics (particularly if not using a LAMP stack)
- Local operating system you are using (where applicable)
- Any PHP errors, warnings, or notices being generated
- Description of any troubleshooting you have completed already
- Details of any configurations within your add-on
- Code sample if the issue exists in your templates
- Screenshot if the issue exists in the control panel
Screenshots and Code Samples
The last two items in the list above bear repeating.
As a general rule:
- If your issue exists in the the control panel, provide a screenshot.
- If your issue exists in your templates, provide a code sample.
There are countless services out there which make this process painless for both you and your add-on developer. Personally, I find Skitch indispensable for grabbing screenshots of what I am seeing, marking them up, and passing them along.
Know Your Developer’s Locale
If you create a support ticket in Boston at 5pm and your add-on developer is in London, don’t follow that ticket up with a tweet two hours later to the effect of:
I’ve been waiting two hours for a response from [insert developer name here], and NOTHING!
Your add-on developer is probably sleeping, which is imperative to their ability to support you better during their regular business hours.
Best Practices: Inviting a Developer Into Your Environment
I have been lucky enough to meet many of the add-on developers working in the ExpressionEngine community, all of whom I believe to be great people working to better a community they love, with their client’s best interests at heart.
With that said, the fact remains that inviting a third-party add-on developer into your environment and granting them Control Panel access is a security issue.
I believe that by providing thorough support requests including the information I have outlined above, most issues shouldn’t require a developer to gain access to your system. However, there are always exceptions and edge-case scenarios where an add-on developer cannot recreate the problem and in order to find a resolution, will require additional access.
If possible, I think a better option to granting a third-party developer access to your system is to use a screen-sharing solution like GoToMeeting to schedule a quick support call.
If screen-sharing is not an option and you do invite your add-on developer into your Control Panel, take the extra time to ensure that you grant them the least amount of access necessary to resolve your issue and follow these easy rules:
- Never register the add-on developer as a Super Admin.
- Never give out your own credentials.
- Create a custom member group with access only to the portions of your Control Panel required to address the issue (affected templates, modules, and channels).
- Take the time to understand the implications of every option in your member group.
- Ask the developer to let you know as soon as they are finished requiring access and remove that member group and temporary member.
These are obviously just some high-level rules. See my followup article Inviting ExpressionEngine Add-on Developers Into Your Environment for more details on the different settings and how they should be configured when granting a third-party access to your control panel.