Weekly Update 130: Good news from behind-the-scenes
This is a copy of our weekly newsletter for developers which you can subscribe to here.
News from the DuckDuckHack team this week is that we've made behind-the-scenes improvements to make working on Fathead Instant Answers (IAs) much easier, focusing on two problems.
Problem 1: User search queries often don't exactly match documentation articles. For example, a user may search for "css transparency" and no Instant Answer is shown, whereas there's an article for CSS opacity which is perfectly relevant. We can add redirects (aliases) within Fatheads but it requires knowledge of Fathead code.
Solution: Maria has created the ability to simply supply a comma-separated text file of existing article titles and their aliases, and then the relevant redirects will automatically be added. No coding required! This is suitable for people looking to make their first pull request and we currently have an experimental task open, looking for a developer:
Can I Use: Broaden search results by adding more aliases
Problem 2: When creating a Fathead, it's not easy to test it on the beta server. Fatheads have a different process to Goodies and Spices which complicates deployment and beta installation.
Solution: Jason and John have worked quickly to make easy beta deployment a reality for Fathead Instant Answers! With documentation lookups being so essential for programmers, Fatheads are a key part of the Programming Mission. This improvement should reduce frustration when developing them and lead to faster releases.
And as if that wasn't enough, we also have a design proposal we want to share with you and get feedback on, so look out for that in your inbox very soon :-)
In the meantime, here are some issues we're currently looking for help with...
- Python: Create New PEP Fathead
We get queries for Python PEPs by number, e.g. "pep 249", so this task is to create an Instant Answer to cover those.
- MDN JS: Include uncategorized articles in the Instant Answer result
There are many more articles with no category that we should include in this Instant Answer to widen its coverage.
- Python: Improve Django Fathead (or Create new Fathead) to cover more documentation
The existing Django Builtins Fathead only covers a small portion of the Django docs. There is much more to the documentation which should be covered by an Instant Answer.
- NodeJS: List all topic titles and language features to help measure coverage
For every Fathead, we need to gather the set of articles we wish to provide coverage for. Create a cover/ directory containing text files that list all the topic titles and language features to cover. These lists will then be used as Unit tests to help you measure the Fathead's coverage.
- PHP: List all topic titles and language features to help measure coverage
The same as above but for PHP. User @uda has kindly suggested two comprehensive links for reference.
- Python: List all topic titles and language features to help measure coverage
You guessed it! Python should get the same treatment.
Here's a code searching tip. Obviously for quick documentation lookups we recommend using the only search engine with duck power! However sometimes we want to see how other developers are using certain functions within their code in live projects. In these cases, GitHub can be a very effective learning tool.
GitHub has a highly configurable advanced search allowing you to look through thousands of repositories. Admittedly some of these may be proof-of-concept snippets or spaghetti code, so a helpful feature is being able to filter by number of stars. For example, if I want to see how other developers are using
And speaking of stars, please take a moment to star our GitHub repositories if you contribute to them or find them useful. It helps them to attract attention and maintain interest.
That's all for now — enjoy your weekend!
- The DuckDuckGo Staff