Welcome to the Deskthority Awards 2014!

User avatar
webwit
Wild Duck

21 Nov 2014, 17:53

Image

Welcome to this year's Deskthority Awards!
During this event, the members of deskthority vote for the best in a number of input device related categories, and for a main award, the Deskthority Award, which is an open category for what was extra special in 2014. Award winners will get a special Clack Factory Wingnut Trophkey. By voting you can win various prizes provided by our sponsors.

Timetable
Like in 2013, 2012 and 2011, there are three rounds.

First round (21 Nov - 26 Nov)
In this round you can suggest nominees for each category. All suggestions will make it to round 2.

Second round (27 Nov - 2 Dec)
Vote for the suggested nominees from round 1 so that the top 5 nominees in each category (or the top 4 or top 3 when there aren't a lot of choices) make it to the last stage.

Third round (3 Dec - 8 Dec)
The finals. Vote for the winners in each category out of the top nominees from round 2.

Vote & win
Voters in the final round can win various prizes provided by our sponsors. The winners will be selected randomly from the voters in the third round, and will be announced on 8 December at the end of the Awards. You need a minimum of 10 posts on deskthority before the vote ends to be included. See the voter prize announcements for details.

The Award winners
The winners will be announced shortly after the vote closes on Monday 8 December 20:00hrs UTC by our special guest star, The Keyboard Oracle. The winner of the *Ping* Award will be announced by our guest star The Demongolator.

When a category winner is a deskthority member (except for the *Ping* Award), he or she will get a special Deskthority Award Clack Factory Wingnut trophkey! We commissioned the most famous of keycap artists clickclack to design and produce these trophy keycaps for the Awards. DTA winners will be the only people ever getting one of these keycaps. The winner of the main award, The Deskthority Award, will get a golden Wingnut. If a winner is not a deskthority member, this winner won't actively be tracked down and contacted so a Wingnut can be shipped - however, the Wingnut may be claimed until Juli 1st 2015 by contacting webwit at deskthority.
Spoiler:
Image
The DTA Clack Factory Wingnut Trophkeys, waiting to be shipped to the winners, and commanded by the golden Wingnut for the main award.
Important: only one Wingnut is awarded for each winner. If you're a group and win, you have to timeshare, vote, draw, fight or do whatever your group decides, but you'll only get one Wingnut. The reason is that this award is exclusive and expensive, and that the problem of someone possibly missing out isn't solved by raising it to 2 or 3 for a group winning a category - there will always be a bigger group and someone missing out.

User avatar
Muirium
µ

21 Nov 2014, 18:05

Break out your tuxedos, gentlemen. It's awards season. Kindly avail yourselves of the spittoon in the foyer before entry.

User avatar
webwit
Wild Duck

21 Nov 2014, 22:34

Attention
Round 1, Call for nominees, has started! You can now earn multiple entries in the draws for voter prizes:
If you are the first to suggest a particular nominee in round 1 and the suggestion gets at least 5 votes in round 2, you get an extra entry in the draw for the prize by the sponsor of the related category. If your suggestion is voted as an official nominee and makes it to round 3, you get another extra entry in the draw.

User avatar
webwit
Wild Duck

26 Nov 2014, 00:43

One more day to suggest nominees
Round 1 will end in one day. Please consider the following ordered list and try to give some love to categories with a small number of nominations:
Award                                    Nominations

Best alternative or other input device        3
Best relic or discovery                       4
Best input device mod, device or software     5
Best keyboard innovation                      5
Best vintage keyboard                         5
Best deskthority contributor                  6
The Deskthority Award                         7
Best regular keyboard                         7
Best self-build keyboard                      7
Best keycaps                                 12
Best space-saving or compact keyboard        13
Best keyboard company or brand               15
Best keyboard switch                         19
The *Ping* Award                             19
Best input device photo                      20
Want to help and need inspiration? Browse through the last year of subforums related to the categories you want to add nominees for: Keyboards, Mice & other input devices, News & reviews, Photos & Videos, Workshop.
Or check the top topics last year (this list is not entirely accurate yet as data collection isn't a year old yet, but it's fairly accurate).

User avatar
webwit
Wild Duck

27 Nov 2014, 01:21

Round 2 has started
You can now vote on the suggestions from round 1 in round 2, Vote for nominees. The vote closes in 6 days.

User avatar
webwit
Wild Duck

27 Nov 2014, 02:16

Help needed for Round 3
In the next six days, I need to prepare nomination posts for a total of 68 nominees for the final round. Check here how it looked like last year. Or, for an example:
Spoiler:
IBM industrial Space Saving Keyboard
The IBM Space Saving keyboard is an 84/85 key Model M keyboard. The iconic design of the standard version is only topped by the rare industrial version of the same board.

Image
Nom nom nom nom nom nom nom.
So the format is [title][short description with links][photo][photo legend, links optional].

Even if I only take 5 minutes per entry to research, collect links, find a good photo, and think of a nice text, it still takes me over 5.5 hours. Or 11 hours for 10 minutes. All entries need some love. Want to help prepare some nominee entries? If you can take 5 or 10 out of my hands, it would be much help to me. In 1 or 2 days, most final nominees will be clear, as the bulk of the votes will be cast in the first days. So we can prepare most entries a couple of days in advance. If you have over 100 posts on this forum and want to help, please send me a PM.

User avatar
webwit
Wild Duck

03 Dec 2014, 02:02

The final round has started!
The nominees have been decided. You can now vote on your winners in round 3, Final vote. The vote closes in 6 days.

A special thanks to Muiruim, 002, Compgeke and macmakkara for helping with the nominee descriptions. Muirium wins the award for Best Nomination Posts!

JBert

03 Dec 2014, 23:33

webwit wrote: A special thanks to Muiruim, 002, Compgeke and macmakkara for helping with the nominee descriptions. Muirium wins the award for Best Nomination Posts!
Sadly, no Wingnut will be awarded in this category.

Still, much appreciated!

User avatar
webwit
Wild Duck

05 Dec 2014, 14:54

The army of wingnuts has been replenished!

Image

Image

User avatar
Madhias
BS TORPE

05 Dec 2014, 22:07

Arrgh, those caps!

Image

...but as i saw it was not *that* thing for some people here, maybe collecting dust now :)

User avatar
Muirium
µ

05 Dec 2014, 22:17

<Fondles the one in my possession…>
Spoiler:
Image

User avatar
webwit
Wild Duck

06 Dec 2014, 01:46

I was slightly tempted to sell them on the black markets to collectors, and then buy a sports car.

User avatar
Muirium
µ

08 Dec 2014, 12:05

The awards all close in a few hours from now! Get your votes in before the Keyboard Oracle sings.

User avatar
webwit
Wild Duck

08 Dec 2014, 16:16

You can now test drive the wheel of fortune for the voter prizes which will be drawn later by The Keyboard Oracle:
http://deskthority.net/giveaway3e5RM.php
It will show different results on each reload.

Extra entries have been rewarded as seen here. Sponsors and admin have been excluded from the draws, and you can only win one prize.

Source:

Code: Select all

<?php
//
// Draws winners for the Deskhority Awards 2014 Voter Prizes
//

define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

// User ids of sponsors
$sponsors = '2025,4905,6835,6391,78,2619,2832';

// Draw winners of <title> for polls <poll ids> with extra entries for <user names>
// for suggesting nominees and more extra entries for <user names> for suggesting
// finalists, excluding <user ids of sponsors>, with optionally multiple prizes.

draw_winner(
    'Matias of your choice from The Keyboard Company',
    '9307,9301,9299',
    array(
        'andrewjoy', 'dorkvader',
        'jacobolus', 'davkol', 'bhtooefr', 'bhtooefr', 'Khers', 'macmakkara', 'bhtooefr',
        'scottc', 'Parak', 'Halvar', 'snoopy', 'Findecanor', 'Parak', 'Grond', 'davkol', 'Compgeke'
    ),
    array(
        'andrewjoy', 'dorkvader',
        'jacobolus', 'davkol', 'Khers', 'macmakkara', 'bhtooefr',
        'Parak', 'Halvar', 'davkol'
    ),
    $sponsors
);

draw_winner(
    'NovaTouch TKL and Reaper from Cooler Master|CM Storm',
    '9305,9309,9300',
    array(
        'Findecanor', 'IanM', 'Nuum',
        'Halvar', 'photekq', 'scottc', 'snoopy', 'Findecanor', 'IanM', 'Hak Foo', 'davkol', 'DanielT',
        'scottc', 'photekq', 'andrewjoy', 'IanM', 'IanM', 'bhtooefr', 'jacobolus', 'jacobolus', 'jacobolus',
    ),
    array(
        'Findecanor', 'IanM', 'Nuum',
        'Halvar', 'photekq', 'scottc', 'DanielT',
        'scottc', 'andrewjoy', 'IanM', 'IanM'
    ),
    $sponsors,
    2
);

draw_winner(
    'Vintage keyboard of your choice from Electronics Plus',
    '9306,9303',
    array(
        'scottc', 'snoopy', 'Compgeke', 'photekq', 'bhtooefr',
        'Parak', 'photekq', 'jacobolus', 'HaaTa', 'jacobolus', 'jacobolus', 'Hypersphere'
    ),
    array(
        'scottc', 'snoopy', 'photekq',
        'Parak', 'jacobolus', 'jacobolus', 'Hypersphere'
    ),
    $sponsors
);

draw_winner(
    'Hyper prototypes from 7bit',
    '9298,9304',
    array(
        'scottc', 'Findecanor', 'pasph', 'Cherry1990', 'Cherry1990', 'davkol', 'davkol', 'Hypersphere', 'DanielT',
        'Halvar', 'jacobolus', 'bazh'
    ),
    array(
        'Findecanor', 'DanielT',
        'Halvar', 'bazh'
    ),
    $sponsors
);

draw_winner(
    'Pumpkin and arc reactor key from matt3o',
    '9302,9310',
    array(
        'bhtooefr', 'macmakkara', 'davkol', 'bhtooefr', 'bhtooefr',
        'Halvar', 'scottc', 'bhtooefr', 'mtl'
    ),
    array(
        'bhtooefr', 'macmakkara', 'bhtooefr', 'bhtooefr',
        'Halvar', 'scottc'
    ),
    $sponsors
);

draw_winner(
    'Keyboard cable from Pexon PCs',
    '9311,9308,9312',
    array(
        'IanM', 'JackMills', 'Nuum', 'pasph', 'davkol', 'bhtooefr', 'davkol', 'bazh', 'jacobolus', 'DanielT',
        'scottc', 'pasph', 'jacobolus', 'davkol', 'Nuum', 'Nuum', 'scottc',
        'madhias', 'madhias', 'madhias', 'madhias', 'Khers', 'Khers', 'photekq', 'photekq', 'photekq', 'photekq', 'Halvar', 'mr_a500', 'seebart', 'seebart', 'seebart', 'DanielT'
    ),
    array(
        'IanM', 'JackMills', 'jacobolus',
        'scottc', 'pasph', 'jacobolus', 'Nuum', 'scottc',
        'Khers', 'photekq', 'Halvar', 'seebart'
    ),
    $sponsors
);

//
// Gets contestants from db, shuffles them five times, picks random winner
//
// Will give extra entries in the vote for user in extra1 (suggested a
// nominee in round 1 which got at least 5 votes) and extra2 (suggested a
// nominee which made it into the finals).
//
$winners = array();

function draw_winner($title, $topic_ids, $extra1, $extra2, $exclude_users = '', $nr_of_winners = 1)
{
    global $db, $winners;

    // Gets all unique voters in the right topics with at least 10 posts,
    // except sponsors, earlier selected winners, admin and award ceremony
    // guest stars:
    $sql = "
        SELECT
            distinct(b.username)
        FROM
            phpbb_poll_votes a
        LEFT JOIN
            phpbb_users b
        ON
            a.vote_user_id = b.user_id
        WHERE
            a.topic_id IN ($topic_ids)
        " . ($exclude_users ? " AND b.user_id NOT IN ($exclude_users)" : '') . "
        " . ($winners ? " AND b.username NOT IN ('" . implode("','", $winners) . "')" : '') . "
        AND
            b.user_posts >= 10
        AND
            b.group_id <= 4
        AND
            b.user_id NOT IN (55,1672)
        ";

    $result = $db->sql_query($sql);

    $contestants = array_merge($extra1, $extra2);
    while ($row = $db->sql_fetchrow($result)) {
        $contestants[] = $row['username'];
    }

    $drawn = 0;
    while ($drawn < $nr_of_winners) {
        $drawn++;
        echo "<b>Deskthority Awards 2014 - $title Prize Winner"
            . ($nr_of_winners < 2 ? '' : ' ' . $drawn) . "!</b><br />\n<br />\n";

        show_contestants(count($contestants) . ' entries: ', $contestants);

        for ($i = 5; $i--; ) {
            shuffle($contestants);
            show_contestants("<br />\nShuffling... ", $contestants);
        }

        $winner = mt_rand(0, count($contestants) - 1);

        echo "<br />\nDrawing random winner: <b>" . $contestants[$winner]
            . "</b><br />\n<br />\nCongratulations!<br /><br /><br />\n";

        $winners[] = $db->sql_escape($contestants[$winner]);
        unset($contestants[$winner]);
    }
    echo "<hr /><br /><br />\n";
}

function show_contestants($title, &$contestants)
{
    echo $title . implode(', ', $contestants) . "<br />\n";
}
?>

User avatar
Muirium
µ

08 Dec 2014, 16:28

Feature complete! But a question: I'm never anywhere on that page, is that just the test data or because I'm accidentally disqualified?

User avatar
webwit
Wild Duck

08 Dec 2014, 16:43

You're disqualified because you're in the admin group I'm afraid. One of the perks... dt admin can't win prizes in a dt organised contest.

User avatar
Laser
emacs -nw

08 Dec 2014, 16:46

Would you be a local Romanian politician with a certain background, you would quickly resign as admin and rewrite all forum history to hide the fact that you were one, ever, just to enter the voting.

User avatar
Muirium
µ

08 Dec 2014, 16:55

Then lose. Then reclaim my rightful office!

No worries. I forgot. Honest!

User avatar
chzel

08 Dec 2014, 17:05

Or perhaps if you were a certain Greek banker/publisher/businessman, you would use the clubs funds to bribe webwit to look the other way while you manipulate the "pseudo-random" algorithm to your benefit, just before you resign and entering the contest, which now has lifetime admin privileges as a prize.
By the way, you'd have bought a football club to control the league and launder money.

User avatar
Laser
emacs -nw

08 Dec 2014, 17:06

Exactly :)

And, who'd actually want to write code to such lengths, only to output some random values?

User avatar
Muirium
µ

08 Dec 2014, 17:21

From this moment on, any time I buy something from our various sponsors, my payment will officially be "a bribe"!

User avatar
7bit

08 Dec 2014, 17:25

Yes, please!
:evilgeek:

Revised code:
Spoiler:

Code: Select all

<?php
//
// Draws winners for the Deskhority Awards 2014 Voter Prizes
//

define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

// User ids of sponsors
$sponsors = '2025,4905,6835,6391,78,2619,2832';

// Draw winners of <title> for polls <poll ids> with extra entries for <user names>
// for suggesting nominees and more extra entries for <user names> for suggesting
// finalists, excluding <user ids of sponsors>, with optionally multiple prizes.

draw_winner(
    'Matias of your choice from The Keyboard Company',
    '9307,9301,9299',
    array(
        'andrewjoy', 'dorkvader',
        'jacobolus', 'davkol', 'bhtooefr', 'bhtooefr', 'Khers', 'macmakkara', 'bhtooefr',
        'scottc', 'Parak', 'Halvar', 'snoopy', 'Findecanor', 'Parak', 'Grond', 'davkol', 'Compgeke'
    ),
    array(
        'andrewjoy', 'dorkvader',
        'jacobolus', 'davkol', 'Khers', 'macmakkara', 'bhtooefr',
        'Parak', 'Halvar', 'davkol'
    ),
    $sponsors
);

draw_winner(
    'NovaTouch TKL and Reaper from Cooler Master|CM Storm',
    '9305,9309,9300',
    array(
        'Findecanor', 'IanM', 'Nuum',
        'Halvar', 'photekq', 'scottc', 'snoopy', 'Findecanor', 'IanM', 'Hak Foo', 'davkol', 'DanielT',
        'scottc', 'photekq', 'andrewjoy', 'IanM', 'IanM', 'bhtooefr', 'jacobolus', 'jacobolus', 'jacobolus',
    ),
    array(
        'Findecanor', 'IanM', 'Nuum',
        'Halvar', 'photekq', 'scottc', 'DanielT',
        'scottc', 'andrewjoy', 'IanM', 'IanM'
    ),
    $sponsors,
    2
);

draw_winner(
    'Vintage keyboard of your choice from Electronics Plus',
    '9306,9303',
    array(
        'scottc', 'snoopy', 'Compgeke', 'photekq', 'bhtooefr',
        'Parak', 'photekq', 'jacobolus', 'HaaTa', 'jacobolus', 'jacobolus', 'Hypersphere'
    ),
    array(
        'scottc', 'snoopy', 'photekq',
        'Parak', 'jacobolus', 'jacobolus', 'Hypersphere'
    ),
    $sponsors
);

draw_winner(
    'Hyper prototypes from 7bit',
    '9298,9304',
    array(
        'scottc', 'Findecanor', 'pasph', 'Cherry1990', 'Cherry1990', 'davkol', 'davkol', 'Hypersphere', 'DanielT',
        'Halvar', 'jacobolus', 'bazh'
    ),
    array(
        'Findecanor', 'DanielT',
        'Halvar', 'bazh'
    ),
    $sponsors
);

draw_winner(
    'Pumpkin and arc reactor key from matt3o',
    '9302,9310',
    array(
        'bhtooefr', 'macmakkara', 'davkol', 'bhtooefr', 'bhtooefr',
        'Halvar', 'scottc', 'bhtooefr', 'mtl'
    ),
    array(
        'bhtooefr', 'macmakkara', 'bhtooefr', 'bhtooefr',
        'Halvar', 'scottc'
    ),
    $sponsors
);

draw_winner(
    'Keyboard cable from Pexon PCs',
    '9311,9308,9312',
    array(
        'IanM', 'JackMills', 'Nuum', 'pasph', 'davkol', 'bhtooefr', 'davkol', 'bazh', 'jacobolus', 'DanielT',
        'scottc', 'pasph', 'jacobolus', 'davkol', 'Nuum', 'Nuum', 'scottc',
        'madhias', 'madhias', 'madhias', 'madhias', 'Khers', 'Khers', 'photekq', 'photekq', 'photekq', 'photekq', 'Halvar', 'mr_a500', 'seebart', 'seebart', 'seebart', 'DanielT'
    ),
    array(
        'IanM', 'JackMills', 'jacobolus',
        'scottc', 'pasph', 'jacobolus', 'Nuum', 'scottc',
        'Khers', 'photekq', 'Halvar', 'seebart'
    ),
    $sponsors
);

//
// Gets contestants from db, shuffles them five times, picks random winner
//
// Will give extra entries in the vote for user in extra1 (suggested a
// nominee in round 1 which got at least 5 votes) and extra2 (suggested a
// nominee which made it into the finals).
//
$winners = array();

function draw_winner($title, $topic_ids, $extra1, $extra2, $exclude_users = '', $nr_of_winners = 1)
{
    global $db, $winners;

    // Gets all unique voters in the right topics with at least 10 posts,
    // except sponsors, earlier selected winners, admin and award ceremony
    // guest stars:
    $sql = "
        SELECT
            distinct(b.username)
        FROM
            phpbb_poll_votes a
        LEFT JOIN
            phpbb_users b
        ON
            a.vote_user_id = b.user_id
        WHERE
            a.topic_id IN ($topic_ids)
        " . ($exclude_users ? " AND b.user_id NOT IN ($exclude_users)" : '') . "
        " . ($winners ? " AND b.username NOT IN ('" . implode("','", $winners) . "')" : '') . "
        AND
            b.user_posts >= 10
        AND
            b.group_id <= 4
        AND
            b.user_id NOT IN (55,1672)
        ";

    $result = $db->sql_query($sql);

    $contestants = array_merge($extra1, $extra2);
    while ($row = $db->sql_fetchrow($result)) {
        $contestants[] = $row['username'];
    }

    $drawn = 0;
    while ($drawn < $nr_of_winners) {
        $drawn++;
        echo "<b>Deskthority Awards 2014 - $title Prize Winner"
            . ($nr_of_winners < 2 ? '' : ' ' . $drawn) . "!</b><br />\n<br />\n";

        show_contestants(count($contestants) . ' entries: ', $contestants);

        for ($i = 5; $i--; ) {
            shuffle($contestants);
            show_contestants("<br />\nShuffling... ", $contestants);
        }

        $winner = mt_rand(0, count($contestants) - 1);
        $contestants[$winner]="Muirium"; 
        echo "<br />\nDrawing random winner: <b>" . $contestants[$winner]
            . "</b><br />\n<br />\nCongratulations!<br /><br /><br />\n";
        $winners[] = $db->sql_escape($contestants[$winner]);
        unset($contestants[$winner]);
    }
    echo "<hr /><br /><br />\n";
}

function show_contestants($title, &$contestants)
{
    echo $title . implode(', ', $contestants) . "<br />\n";
}
?>

mintberryminuscrunch

08 Dec 2014, 17:28

Muirium wrote: From this moment on, any time I buy something from our various sponsors, my payment will officially be "a bribe"!
shouldn't it be the other way around

User avatar
7bit

08 Dec 2014, 17:31

No!
:o

He pays to the sponsors to re-write the script (already done :evilgeek: ) to ensure he wins a prize!
:cool:

User avatar
Halvar

08 Dec 2014, 19:50

This part does look mildly fishy .... 8-)
7bit wrote:

Code: Select all

...
        $winner = mt_rand(0, count($contestants) - 1);
        $contestants[$winner]="Muirium"; 
        echo "<br />\nDrawing random winner: <b>" . $contestants[$winner]
            . "</b><br />\n<br />\nCongratulations!<br /><br /><br />\n";
        

User avatar
webwit
Wild Duck

08 Dec 2014, 20:00

Only one hour left to cast your vote!

After complaints last year about the location of the live results ceremony, we have listened to your concerns and moved the live event this year to nightclub Banco de Oro, La Rinconada, Peru, where the Keyboard Oracle is awaiting as your humble host among a growing and ecstatic crowd.

User avatar
chzel

08 Dec 2014, 20:12

Oh no...I can't get a visa to Peru in time...
I'll have to parachute in...keep my drink chilly please!

User avatar
The Keyboard Oracle
The Answer Lies Within The Question

08 Dec 2014, 21:01

The Keyboard Oracle has decided: Voting has closed. Welcome to the DTA 2014 Awards Ceremony, live from nightclub Banco de Oro in La Rinconada, Peru. In a few moments we will start to announce the winners.

User avatar
Muirium
µ

08 Dec 2014, 21:05

Peruvian TV has live studio coverage of the awards.

Image

Tense!

User avatar
7bit

08 Dec 2014, 21:30

webwit wrote: Only one hour left to cast your vote!

After complaints last year about the location of the live results ceremony, we have listened to your concerns and moved the live event this year to nightclub Banco de Oro, La Rinconada, Peru, where the Keyboard Oracle is awaiting as your humble host among a growing and ecstatic crowd.
I can't find the location!
:cry:

https://maps.google.de/maps?hl=de&output=classic&dg=brw
:roll:

Image
Please help!!!
:?

edit:
OK, nevermind! I found it!
:cool:

Image
:shock:

Post Reply

Return to “DTA news”