26 Nov

Weekly Update 129: Are you on our contributor list?

This is a copy of our weekly newsletter for developers which you can subscribe to here.

Hello contributors,

While some of you celebrate Thanksgiving, I'm going to take this opportunity to say thank you for all your contributions, suggestions, bug reports, and general friendliness, making DuckDuckHack not just the place where where Instant Answers are born, but a happy community of developers helping to support privacy on the web.

It's difficult to say exactly how many contributors we have but one way we keep track is by having a Contributors team on GitHub. This is an opt-in list which any past, present or future DuckDuckHack contributor can join. The advantages are:

  • The DuckDuckGo badge on your GitHub profile, showing the world your support (see image below).
  • GitHub inbox alerts if someone @mentions the Contributors team.
  • The ability to be assigned to issues. Without this, we could get two people working on the same issue at the same time — not good!

Screenshot of a GitHub profile showing the DuckDuckGo badge.

If you'd like to join the list (it's not compulsory), simply leave your GitHub username in a comment on this issue and we'll send you an invitation. That's all! You can leave the list at any time from your GitHub settings.

One final thing to mention is that we've made a few changes to duckduckhack.com, simplifying the content on the front page and adding a combined list of available tasks. Hosting it there means we can combine issues from multiple repositories, have full control over the display, and can add features in future. When you're looking for something to work on, please head over to the task list and see what's available for your preferred language and difficulty level.

And speaking of tasks, here are some we're currently looking for help with...

Weekend Warriors

5-minute-ish Fixes

  • NodeJS: add coverage data

    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: add coverage data

    The same as above but for PHP.

  • Python: add coverage data

    You guessed it! Python should get the same treatment.

More open tasks here...

Quick Tip

Time for a JavaScript tip. This is one of those things that, without knowing it, could cause unexpected results with your code. When programming, we use if statements all the time, often testing for equality, but in JavaScript there are two ways of doing it: == and ===

== will compare values and convert their types if necessary.

=== will compare values but not convert their types.

What this means is that both versions may produce different results. Here's an example of how they behave:

if (42 == 42)true
if (42 === 42)true
if ('42' == 42)true
if ('42' === 42)false

In general, it's good practice to use the stricter === to avoid values being treated as identical when they might not be. There's also a slight improvement in performance. One final thing to remember is that this also applies to the opposite operator: != and !==

Remember this and it could prevent headaches next time you're debugging.

That's all for now — enjoy your weekend!

- The DuckDuckGo Staff

0 Tweet

This blog has been archived

Thank you for reading and contributing lively discussion to our blog! Read more posts about online privacy on our new blog at spreadprivacy.com.