Pwning DaniWeb: the search is on for the God of Code

happygeek 2 Tallied Votes 266 Views Share

DaniWeb, the 10 year old IT discussion community with more than a million members, is always looking forward and never stops introducing new features and functions for users. When spammers managed to get the better of the (highly customised) vBulletin forum platform which had been driving DaniWeb since the get go, founder and CEO Dani Horowitz got the better of the spammers by re-coding the entire forum platform from the ground up. As a result, DaniWeb users not only got the benefit of a much slicker interface designed specifically for their needs, but the team of volunteer moderators got to go back to spending their time helping the community instead of fighting spam fires.

Being primarily a community of developers and programmers, DaniWeb was historically missing one rather obvious feature: an Application Programming Interface. That glaring gap was plugged recently when Dani announced the arrival of an official DaniWeb API that enables members to put their coding skills to good use and build the DaniWeb app that they have always wanted, access DaniWeb the way they want and manipulate DaniWeb data in new and creative ways. Creativity that quickly became apparent when, within days of the API being made public, a DaniWeb moderator known as (which means Devil in Welsh, and this guy is certainly a coding devil that's for sure) including a badge builder for example.

3b904936ecc896a9c32bb61c71e9da40

The API is very robust and capable of duplicating most read capabilities of the website itself. Additionally, there is some limited write functionality. API requests return either JSON or JSONP (for Javascript compatibility), and there is also support for OAuth 2.0 (both serverside and clientside implementations).

So what is all that stuff about 'Pwning DaniWeb' and being the 'God of Code' about then? Well, in order to help get the creative coding juices flowing, DaniWeb has launched a competition to find the best use of that newly launched API. As well as the kudos of exposing those programming skills to your peers in the DaniWeb community, the winners will also share in a $500 prize fund. The winner gets a $300 Amazon gift certificate, with a second place prize of a $125 Amazon gift certificate and third place gets a $75 Amazon gift certificate.

"There's a lot that you can do with our API. Essentially it allows your application (web, desktop, mobile, etc) to tap into DaniWeb's back end" says DaniWeb Founder and CEO, Dani Horowitz "Your own application can use DaniWeb's login mechanism, you can write a native mobile app for DaniWeb, you can create your own completely unique front-end for the site, there really are limitless possibilities". Limitless indeed. The only boundary to what can be done is your own creative flair. So whether you fancy developing an Android or iOS mobile app for DaniWeb, turning the award winning DaniWeb IT news editorial into a standalone digital newspaper, or something altogether more surprising, now is the opportunity to put your programming skills to the test.

Entry is open to all members of DaniWeb, old and new, with entries accepted until the end of August 31st, 2013 and voting taking place in September. Code submissions should be posted within the relevant code snippet library for their language whereas downloadable apps, websites, etc. should be posted within the Show Off Your Projects forum in the Business Exchange section. All submissions must be tagged with both 'daniweb-api' and 'daniweb-api-contest-submission' in order to be eligible.

More information, including usage examples, about the API is available here, and full documentation can be found here. There's also a busy thread about the competition itself in case you have any technical questions.

Remember though, the competition is only open to DaniWeb members, but as registration is free that really shouldn't be a problem for anyone who wants to get involved. So, will you pwn DaniWeb and be crowned the God of Code?

Dani AI

Generated

If you plan to build an entry or a companion app, aim for a single, polished experience that clearly solves a real user problem rather than trying to implement every feature of the site. ’s announcement set the stage and early community work by @diafol shows how compact tools can highlight what the platform enables. Below are practical, reusable tips that increase the chances a project will be useful and judged well.

Keep scope tight and show value

  • Pick one clear use case (faster reading, focused notifications, content export, moderation helper) and make that flow delightful.
  • Ship a minimal demo that anyone can try in under five minutes: runnable build, short README, screenshots or a 20–30 second demo clip.

Make it robust and pleasant

  • Handle pagination, transient network failures and HTTP errors gracefully. Retry with exponential backoff for server errors and surface clear, actionable messages for client errors.
  • Cache conservatively to reduce load and make the app feel fast; invalidate on edits.
  • Do not hardcode secrets or tokens; keep credentials out of source control and provide a development mode with stubbed credentials.

Example: minimal GET with retries (generic pattern)

// node-fetch style example (generic)
async function apiGet(url, token, retries = 3) {
  for (let i = 0; i <= retries; i++) {
    const res = await fetch(url, {
      headers: { Authorization: `Bearer ${token}`, Accept: 'application/json' }
    });
    if (res.ok) return res.json();
    if (res.status >= 500 && i < retries) {
      await new Promise(r => setTimeout(r, Math.pow(2, i) * 100)); // backoff
      continue;
    }
    throw new Error(`Request failed: ${res.status}`);
  }
}

Packaging, testing and demo

  • Include automated smoke tests and at least one end-to-end scenario. Provide a portable demo (hosted preview or Docker image) and sample/test credentials so reviewers can click through.
  • Document expected behavior, rate-limit handling, and any tradeoffs you made. Note any privacy or security considerations and how user data is protected.

Practical polish—clear README, easy install, short demo video, and reliable error handling—will make a small project stand out.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.