Weekly Update 133: Your code reaches more people
This is a copy of our weekly newsletter for developers which you can subscribe to here.
This week I noticed that DuckDuckGo Instant Answers, as created by you, are now being incorporated in AntLang, a "programming language made for scientific computing". The project uses the DuckDuckGo API to be able to pull in data programmatically — a great way to take advantage of the Apache open source license that Instant Answers on GitHub are published under.
It's important to note that this does not mean DuckDuckGo search results are available through the API — they're not — and nor are all Instant Answers available. Because many of our Instant Answers use third-party data, if we don't have syndication rights to that data then we can't publicly redistribute it in an API. There is a growing amount of information that is available however, and here's what it means for you as a contributor:
- You might know of, or be part of, projects that could benefit from using the API. Feel free to incorporate it as you like — no registration necessary!
- Think about the data that is now available. Are there potential apps or platforms that could be built to bring these Instant Answers to a wider audience? Suggest your ideas on the DuckDuckHack forum.
- Be aware that your code is being used in exciting new ways beyond the DuckDuckGo search box — something to be proud of!
Pretty much all software we use in our daily lives is code built on somebody else's code, which is built on somebody else's code, and so on. It's great that your contributions are providing a foundation for others and hopefully we'll see more of this in future.
In the meantime, here are some Instant Answer issues that we're looking for help with...
- Create new C# Reference Fathead
This would look up information from the official C# docs to show code descriptions and examples.
- Create New Haskell Reference Fathead
The same as above but using wiki.haskell.org as the source.
- JSONValidator: Expand triggering
There are several queries that could trigger this IA, e.g.
json format check
- Swift Docs: List all topic titles and language features to help measure coverage
Such a list can be used for both unit tests and to broaden triggering for the IA.
This time I'm going to repeat a tip that came up on Hacker News recently, and it's simply to read more code. That on its own won't necessarily make you a better programmer but there are some easy benefits.
The most obvious is that if you choose code written by experienced and well-regarded programmers, there's lots to learn from them. You can find such code by looking through GitHub projects with many stars, or Stack Overflow answers with many up-votes. Although there may be room for improvement in some cases, the quality is likely to be high and good enough to learn from, both in terms of coding and commenting style as well broader concepts such as structure and approach to solving problems.
Reading other people's code also offers the benefit of being able to recognize and adapt to various programming habits. This is essential when working with others either voluntarily on a collaborative project or in a professional team. As Hacker News user tibbon commented:
"Being able to dive into someone else's code, think about it, and add something to it, is probably more important on a day-to-day basis than being able to create something from scratch."
To start with, you could even look at some of your own code from the past and think about what you would change, as well as congratulate yourself on how much you've (hopefully) improved since then!
That's all for now — enjoy your weekend!
- The DuckDuckGo Staff