From b9b4cdcddba3c0414e96407d360a4ce8aeda2b48 Mon Sep 17 00:00:00 2001 From: Bob Lied Date: Sun, 11 Aug 2024 20:29:54 -0500 Subject: Week 282 initial solutions --- challenge-282/bob-lied/README | 6 +-- challenge-282/bob-lied/perl/ch-1.pl | 66 +++++++++++++++++++++++++++ challenge-282/bob-lied/perl/ch-2.pl | 89 +++++++++++++++++++++++++++++++++++++ 3 files changed, 158 insertions(+), 3 deletions(-) create mode 100644 challenge-282/bob-lied/perl/ch-1.pl create mode 100644 challenge-282/bob-lied/perl/ch-2.pl diff --git a/challenge-282/bob-lied/README b/challenge-282/bob-lied/README index 5d935bad60..808e99c97f 100644 --- a/challenge-282/bob-lied/README +++ b/challenge-282/bob-lied/README @@ -1,4 +1,4 @@ -Solutions to weekly challenge 281 by Bob Lied +Solutions to weekly challenge 282 by Bob Lied -https://perlweeklychallenge.org/blog/perl-weekly-challenge-281/ -https://github.com/boblied/perlweeklychallenge-club/tree/master/challenge-281/bob-lied +https://perlweeklychallenge.org/blog/perl-weekly-challenge-282/ +https://github.com/boblied/perlweeklychallenge-club/tree/master/challenge-282/bob-lied diff --git a/challenge-282/bob-lied/perl/ch-1.pl b/challenge-282/bob-lied/perl/ch-1.pl new file mode 100644 index 0000000000..5f3fb2cea0 --- /dev/null +++ b/challenge-282/bob-lied/perl/ch-1.pl @@ -0,0 +1,66 @@ +#!/usr/bin/env perl +# vim:set ts=4 sw=4 sts=4 et ai wm=0 nu: +#============================================================================= +# Copyright (c) 2024, Bob Lied +#============================================================================= +# ch-1.pl Perl Weekly Challenge 282 Task 1 Good Integer +#============================================================================= +# You are given a positive integer, $int, having 3 or more digits. +# Write a script to return the Good Integer in the given integer or -1 +# if none found. A good integer is exactly three consecutive matching digits. +# Example 1 Input: $int = 12344456 Output: "444" +# Example 2 Input: $int = 1233334 Output: -1 +# Example 3 Input: $int = 10020003 Output: "000" +#============================================================================= + +use v5.40; + + +use Getopt::Long; +my $Verbose = false; +my $DoTest = false; +my $Benchmark = 0; + +GetOptions("test" => \$DoTest, "verbose" => \$Verbose, "benchmark:i" => \$Benchmark); +exit(!runTest()) if $DoTest; +exit( runBenchmark($Benchmark) ) if $Benchmark; + +say goodIint($_) for @ARGV; + +sub goodInt($int) +{ + my @digit = split(//, "$int"); + my $d = shift @digit; + while ( defined $d ) + { + my $consecutive = 1; + my $n; + ++$consecutive while defined($n = shift @digit) && $n == $d; + return ($d x 3) if $consecutive == 3; + $d = $n; + } + return -1; +} + +sub runTest +{ + use Test2::V0; + + is( goodInt(12344456), "444", "Example 1"); + is( goodInt(1233334), -1, "Example 2"); + is( goodInt(10020003), "000", "Example 3"); + is( goodInt(66612345), "666", "At front"); + is( goodInt(12345666), "666", "At end"); + is( goodInt(17775666), "777", "Two possibilities"); + + done_testing; +} + +sub runBenchmark($repeat) +{ + use Benchmark qw/cmpthese/; + + cmpthese($repeat, { + label => sub { }, + }); +} diff --git a/challenge-282/bob-lied/perl/ch-2.pl b/challenge-282/bob-lied/perl/ch-2.pl new file mode 100644 index 0000000000..dafda113a2 --- /dev/null +++ b/challenge-282/bob-lied/perl/ch-2.pl @@ -0,0 +1,89 @@ +#!/usr/bin/env perl +# vim:set ts=4 sw=4 sts=4 et ai wm=0 nu: +#============================================================================= +# Copyright (c) 2024, Bob Lied +#============================================================================= +# ch-2.pl Perl Weekly Challenge 282 Task 2 Changing Keys +#============================================================================= +# You are given an alphabetic string, $str, as typed by user. +# Write a script to find the number of times user had to change the key to +# type the given string. Changing key is defined as using a key different +# from the last used key. The shift and caps lock keys won’t be counted. +# Example 1 Input: $str = 'pPeERrLl' +# Output: 3 +# p -> P : 0 key change +# P -> e : 1 key change +# e -> E : 0 key change +# E -> R : 1 key change +# R -> r : 0 key change +# r -> L : 1 key change +# L -> l : 0 key change +# Example 2 Input: $str = 'rRr' +# Output: 0 +# Example 3 Input: $str = 'GoO' +# Output: 1 +#============================================================================= + +use v5.40; + +use Getopt::Long; +my $Verbose = false; +my $DoTest = false; +my $Benchmark = 0; + +# My keyboard on a MacBook +my %Keyboard = ( + US => { LC => q(1234567890-=qwertyuiop[]\asdfghjkl;'zxcvbnm,./ ), + UC => q(!@#$%^&*()_+QWERTYUIOP{}|ASDFGHJKL:"ZXCVBNM<>? ), + }, + ES => { LC => q(1234567890'¿qwertyuiop´+}asdfghjklñ{zxcvbnm,.- ), + UC => q(!"#$%&/()=?¡QWERTYUIOP¨*]ASDFGHJKLÑ[ZXCVBNM;:_ ), + } +); +my %KEY; +foreach ( 0 .. length($Keyboard{US}{LC})-1 ) +{ + $KEY{ substr($Keyboard{US}{LC}, $_, 1) } = $KEY{substr($Keyboard{US}{UC}, $_, 1)} = $_; +} + +GetOptions("test" => \$DoTest, "verbose" => \$Verbose, "benchmark:i" => \$Benchmark); +exit(!runTest()) if $DoTest; +exit( runBenchmark($Benchmark) ) if $Benchmark; + +say change($_) for @ARGV; + +sub change($str) +{ + my $count = 0; + my @char = split(//, lc $str); + my $first = shift @char; + while ( defined(my $second = shift @char) ) + { + $count++ if $KEY{$first} != $KEY{$second}; + $first = $second; + } + return $count; +} + +sub runTest +{ + use Test2::V0; + + is( change('pPeErLl'), 3, "Example 1"); + is( change('rRr'), 0, "Example 2"); + is( change('GoO'), 1, "Example 3"); + is( change('(90)>.3'), 3, "Punctuation and numbers"); + is( change($Keyboard{US}{LC}), 46, "All the things"); + is( change($Keyboard{US}{UC}), 46, "All the things, but shifted"); + + done_testing; +} + +sub runBenchmark($repeat) +{ + use Benchmark qw/cmpthese/; + + cmpthese($repeat, { + label => sub { }, + }); +} -- cgit From b4edfa8a44b3ea8d5ab0423afa5613a344af2297 Mon Sep 17 00:00:00 2001 From: Paulo Custodio Date: Sat, 17 Aug 2024 17:15:39 +0100 Subject: Add Perl solution to challenge 221 task 2 --- challenge-221/paulo-custodio/perl/ch-2.pl | 69 ++++++++++++++++++++++++++++++ challenge-221/paulo-custodio/t/test-2.yaml | 15 +++++++ 2 files changed, 84 insertions(+) create mode 100644 challenge-221/paulo-custodio/perl/ch-2.pl create mode 100644 challenge-221/paulo-custodio/t/test-2.yaml diff --git a/challenge-221/paulo-custodio/perl/ch-2.pl b/challenge-221/paulo-custodio/perl/ch-2.pl new file mode 100644 index 0000000000..c2f51c86a1 --- /dev/null +++ b/challenge-221/paulo-custodio/perl/ch-2.pl @@ -0,0 +1,69 @@ +#!/usr/bin/env perl + +# Challenge 221 +# +# Task 2: Arithmetic Subsequence +# Submitted by: Mohammad S Anwar +# You are given an array of integers, @ints. +# +# Write a script to find the length of the longest Arithmetic Subsequence in +# the given array. +# +# +# A subsequence is an array that can be derived from another array by deleting +# some or none elements without changing the order of the remaining elements. +# +# A subsquence is arithmetic if ints[i + 1] - ints[i] are all the same value +# (for 0 <= i < ints.length - 1). +# +# +# Example 1: +# Input: @ints = (9, 4, 7, 2, 10) +# Output: 3 +# +# The longest Arithmetic Subsequence (4, 7, 10) can be derived by deleting +# 9 and 2. +# Example 2: +# Input: @ints = (3, 6, 9, 12) +# Output: 4 +# +# No need to remove any elements, it is already an Arithmetic Subsequence. +# Example 3: +# Input: @ints = (20, 1, 15, 3, 10, 5, 8) +# Output: 4 +# +# The longest Arithmetic Subsequence (20, 15, 10, 5) can be derived by deleting +# 1, 3 and 8. + +use Modern::Perl; +use List::Util 'max'; + +my @ints = @ARGV; +my $max_sequence = 0; +for my $i (0 .. $#ints-1) { + for my $j ($i+1 .. $#ints) { + my $sequence = find_sequence($ints[$i], @ints[$j .. $#ints]); + $max_sequence = max($max_sequence, $sequence); + } +} +say $max_sequence; + +sub find_sequence { + my(@ints) = @_; + @ints >= 2 or die; + my $cur = shift @ints; + my $delta = $ints[0] - $cur; + my $sequence = 1; + while (@ints) { + my $next = $cur+$delta; + while (@ints && $ints[0] != $next) { + shift @ints; + } + if (@ints) { + $cur += $delta; + shift @ints; + $sequence++; + } + } + return $sequence; +} diff --git a/challenge-221/paulo-custodio/t/test-2.yaml b/challenge-221/paulo-custodio/t/test-2.yaml new file mode 100644 index 0000000000..acff6becac --- /dev/null +++ b/challenge-221/paulo-custodio/t/test-2.yaml @@ -0,0 +1,15 @@ +- setup: + cleanup: + args: 9 4 7 2 10 + input: + output: 3 +- setup: + cleanup: + args: 3 6 9 12 + input: + output: 4 +- setup: + cleanup: + args: 20 1 15 3 10 5 8 + input: + output: 4 -- cgit From 966629071dec418cad0c0cc5652d5e82559bae00 Mon Sep 17 00:00:00 2001 From: ntovar Date: Sat, 17 Aug 2024 12:23:54 -0500 Subject: Challenge 282. Add Perl and Bash solutions. By Nelo Tovar --- challenge-282/nelo-tovar/bash/ch-1.sh | 28 ++++++++++++++++++++++++++++ challenge-282/nelo-tovar/bash/ch-2.sh | 30 ++++++++++++++++++++++++++++++ challenge-282/nelo-tovar/perl/ch-1.pl | 28 ++++++++++++++++++++++++++++ challenge-282/nelo-tovar/perl/ch-2.pl | 29 +++++++++++++++++++++++++++++ 4 files changed, 115 insertions(+) create mode 100755 challenge-282/nelo-tovar/bash/ch-1.sh create mode 100755 challenge-282/nelo-tovar/bash/ch-2.sh create mode 100644 challenge-282/nelo-tovar/perl/ch-1.pl create mode 100644 challenge-282/nelo-tovar/perl/ch-2.pl diff --git a/challenge-282/nelo-tovar/bash/ch-1.sh b/challenge-282/nelo-tovar/bash/ch-1.sh new file mode 100755 index 0000000000..5b2b4a0e0a --- /dev/null +++ b/challenge-282/nelo-tovar/bash/ch-1.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash +# +# The Weekly Challenge 282 - By Nelo Tovar +# +# https://theweeklychallenge.org/blog/perl-weekly-challenge-282/ +# +# Task 1 : Good Integer + +function good_integer() { + local nums=$1 + local match=$(grep -oP '([0-9])\1{2,}' <<< "$nums") + + if [[ ${#match} == 3 ]]; then + echo $match + else + echo -1 + fi +} + +examples=(12344456 1233334 10020003) + +for e in ${examples[@]}; do + gi=($(good_integer "$e")) + echo "Input : nums = $e" + echo "Output : $gi" + echo "" +done + diff --git a/challenge-282/nelo-tovar/bash/ch-2.sh b/challenge-282/nelo-tovar/bash/ch-2.sh new file mode 100755 index 0000000000..848d2b5bd8 --- /dev/null +++ b/challenge-282/nelo-tovar/bash/ch-2.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env bash +# +# The Weekly Challenge 282 - By Nelo Tovar +# +# https://theweeklychallenge.org/blog/perl-weekly-challenge-282/ +# +# Task 2 : Changing Keys + +function changing_keys() { + local nums=$1 + local temp=${nums,,} + local length=${#temp} + declare -A local keys + + for (( i = 0; i < $length; i++ )); do + local digit=${temp:$i:1} + keys[$digit]=1 + done + + echo $((${#keys[@]} - 1)) +} + +examples=('pPeERrLl' 'rRr' 'GoO') + +for e in ${examples[@]}; do + ck=$(changing_keys "$e") + echo "Input : str = $e" + echo -e "Output : $ck\n" +done + diff --git a/challenge-282/nelo-tovar/perl/ch-1.pl b/challenge-282/nelo-tovar/perl/ch-1.pl new file mode 100644 index 0000000000..aa4c0dc128 --- /dev/null +++ b/challenge-282/nelo-tovar/perl/ch-1.pl @@ -0,0 +1,28 @@ +#!/usr/bin/env perl + +# The Weekly Challenge 282 - By Nelo Tovar +# +# https://theweeklychallenge.org/blog/perl-weekly-challenge-282/ +# +# Task 1 - Good Integer +# + +use strict; +use warnings; +use v5.28; + +my @examples = (12344456, 1233334, 10020003); + +sub good_integer { + my $nums = shift; + + return ($nums =~ /((\d) \2{2,})/gx and length $1 == 3) ? $1 : -1; +} + +for my $elements (@examples) { + my $gi = good_integer $elements; + + say 'Input : @nums = ', $elements; + say 'Output : ', $gi; + say ' '; +} diff --git a/challenge-282/nelo-tovar/perl/ch-2.pl b/challenge-282/nelo-tovar/perl/ch-2.pl new file mode 100644 index 0000000000..f2d336e071 --- /dev/null +++ b/challenge-282/nelo-tovar/perl/ch-2.pl @@ -0,0 +1,29 @@ +#!/usr/bin/env perl + +# The Weekly Challenge 282 - By Nelo Tovar +# +# https://theweeklychallenge.org/blog/perl-weekly-challenge-282/ +# +# Task 2 - Changing Keys +# + +use strict; +use warnings; +use v5.28; +use List::MoreUtils qw (uniq); + +my @examples = ('pPeERrLl', 'rRr', 'GoO'); + +sub changing_keys { + my @str = uniq(split(//, lc(shift))); + + return scalar @str - 1; +} + +for my $elements (@examples) { + my $ck = changing_keys $elements; + + say 'Input : str = ', $ck; + say 'Output : ', $ck; + say ' '; +} -- cgit From 549d8831078856255afcc0b1e0c90647d7cda6ff Mon Sep 17 00:00:00 2001 From: Mohammad Sajid Anwar Date: Sat, 17 Aug 2024 18:34:13 +0100 Subject: - Added solutions by Nelo Tovar. --- stats/pwc-current.json | 461 ++++++++--------- stats/pwc-language-breakdown-2019.json | 332 ++++++------- stats/pwc-language-breakdown-2020.json | 424 ++++++++-------- stats/pwc-language-breakdown-2021.json | 398 +++++++-------- stats/pwc-language-breakdown-2022.json | 726 +++++++++++++-------------- stats/pwc-language-breakdown-2023.json | 790 +++++++++++++++--------------- stats/pwc-language-breakdown-2024.json | 498 +++++++++---------- stats/pwc-language-breakdown-summary.json | 76 +-- stats/pwc-leaders.json | 754 ++++++++++++++-------------- stats/pwc-summary-1-30.json | 102 ++-- stats/pwc-summary-121-150.json | 108 ++-- stats/pwc-summary-151-180.json | 60 +-- stats/pwc-summary-181-210.json | 108 ++-- stats/pwc-summary-211-240.json | 50 +- stats/pwc-summary-241-270.json | 38 +- stats/pwc-summary-271-300.json | 32 +- stats/pwc-summary-301-330.json | 20 +- stats/pwc-summary-31-60.json | 102 ++-- stats/pwc-summary-61-90.json | 24 +- stats/pwc-summary-91-120.json | 28 +- stats/pwc-summary.json | 48 +- stats/pwc-yearly-language-summary.json | 138 +++--- 22 files changed, 2666 insertions(+), 2651 deletions(-) diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 2b2ef19636..be03609bf0 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,24 +1,180 @@ { - "yAxis" : { - "title" : { - "text" : "Total Solutions" + "series" : [ + { + "data" : [ + { + "name" : "Adam Russell", + "drilldown" : "Adam Russell", + "y" : 3 + }, + { + "drilldown" : "Ali Moradi", + "name" : "Ali Moradi", + "y" : 3 + }, + { + "y" : 3, + "drilldown" : "Arne Sommer", + "name" : "Arne Sommer" + }, + { + "drilldown" : "Athanasius", + "name" : "Athanasius", + "y" : 4 + }, + { + "y" : 2, + "drilldown" : "Dave Jacoby", + "name" : "Dave Jacoby" + }, + { + "y" : 2, + "drilldown" : "David Ferrone", + "name" : "David Ferrone" + }, + { + "y" : 2, + "drilldown" : "E. Choroba", + "name" : "E. Choroba" + }, + { + "drilldown" : "Feng Chang", + "name" : "Feng Chang", + "y" : 2 + }, + { + "y" : 5, + "name" : "Jaldhar H. Vyas", + "drilldown" : "Jaldhar H. Vyas" + }, + { + "name" : "Jan Krnavek", + "drilldown" : "Jan Krnavek", + "y" : 2 + }, + { + "name" : "Jorg Sommrey", + "drilldown" : "Jorg Sommrey", + "y" : 3 + }, + { + "drilldown" : "Kjetil Skotheim", + "name" : "Kjetil Skotheim", + "y" : 2 + }, + { + "drilldown" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld", + "y" : 6 + }, + { + "y" : 2, + "name" : "Mariano Ortega", + "drilldown" : "Mariano Ortega" + }, + { + "name" : "Mark Anderson", + "drilldown" : "Mark Anderson", + "y" : 2 + }, + { + "y" : 2, + "drilldown" : "Nelo Tovar", + "name" : "Nelo Tovar" + }, + { + "y" : 2, + "drilldown" : "Niels van Dijke", + "name" : "Niels van Dijke" + }, + { + "name" : "Packy Anderson", + "drilldown" : "Packy Anderson", + "y" : 5 + }, + { + "y" : 2, + "drilldown" : "Paulo Custodio", + "name" : "Paulo Custodio" + }, + { + "drilldown" : "Peter Campbell Smith", + "name" : "Peter Campbell Smith", + "y" : 3 + }, + { + "drilldown" : "Peter Meszaros", + "name" : "Peter Meszaros", + "y" : 2 + }, + { + "y" : 3, + "name" : "Reinier Maliepaard", + "drilldown" : "Reinier Maliepaard" + }, + { + "name" : "Robbie Hatley", + "drilldown" : "Robbie Hatley", + "y" : 3 + }, + { + "y" : 2, + "name" : "Robert Ransbottom", + "drilldown" : "Robert Ransbottom" + }, + { + "name" : "Roger Bell_West", + "drilldown" : "Roger Bell_West", + "y" : 4 + }, + { + "drilldown" : "Thomas Kohler", + "name" : "Thomas Kohler", + "y" : 4 + }, + { + "y" : 4, + "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke" + }, + { + "y" : 3, + "drilldown" : "W. Luis Mochan", + "name" : "W. Luis Mochan" + }, + { + "name" : "Wanderdoc", + "drilldown" : "Wanderdoc", + "y" : 2 + } + ], + "colorByPoint" : 1, + "name" : "The Weekly Challenge - 282" } - }, + ], "plotOptions" : { "series" : { - "borderWidth" : 0, "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 } }, + "xAxis" : { + "type" : "category" + }, + "chart" : { + "type" : "column" + }, "subtitle" : { - "text" : "[Champions: 28] Last updated at 2024-08-16 20:54:53 GMT" + "text" : "[Champions: 29] Last updated at 2024-08-17 17:33:57 GMT" }, "drilldown" : { "series" : [ { + "name" : "Adam Russell", + "id" : "Adam Russell", "data" : [ [ "Perl", @@ -28,11 +184,11 @@ "Blog", 1 ] - ], - "id" : "Adam Russell", - "name" : "Adam Russell" + ] }, { + "name" : "Ali Moradi", + "id" : "Ali Moradi", "data" : [ [ "Perl", @@ -42,9 +198,7 @@ "Blog", 1 ] - ], - "id" : "Ali Moradi", - "name" : "Ali Moradi" + ] }, { "data" : [ @@ -57,12 +211,10 @@ 1 ] ], - "id" : "Arne Sommer", - "name" : "Arne Sommer" + "name" : "Arne Sommer", + "id" : "Arne Sommer" }, { - "id" : "Athanasius", - "name" : "Athanasius", "data" : [ [ "Perl", @@ -72,7 +224,9 @@ "Raku", 2 ] - ] + ], + "name" : "Athanasius", + "id" : "Athanasius" }, { "data" : [ @@ -91,12 +245,12 @@ 2 ] ], - "name" : "David Ferrone", - "id" : "David Ferrone" + "id" : "David Ferrone", + "name" : "David Ferrone" }, { - "name" : "E. Choroba", "id" : "E. Choroba", + "name" : "E. Choroba", "data" : [ [ "Perl", @@ -105,16 +259,18 @@ ] }, { - "name" : "Feng Chang", - "id" : "Feng Chang", "data" : [ [ "Raku", 2 ] - ] + ], + "id" : "Feng Chang", + "name" : "Feng Chang" }, { + "name" : "Jaldhar H. Vyas", + "id" : "Jaldhar H. Vyas", "data" : [ [ "Perl", @@ -128,21 +284,21 @@ "Blog", 1 ] - ], - "name" : "Jaldhar H. Vyas", - "id" : "Jaldhar H. Vyas" + ] }, { - "name" : "Jan Krnavek", - "id" : "Jan Krnavek", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Jan Krnavek", + "id" : "Jan Krnavek" }, { + "id" : "Jorg Sommrey", + "name" : "Jorg Sommrey", "data" : [ [ "Perl", @@ -152,13 +308,11 @@ "Blog", 1 ] - ], - "name" : "Jorg Sommrey", - "id" : "Jorg Sommrey" + ] }, { - "name" : "Kjetil Skotheim", "id" : "Kjetil Skotheim", + "name" : "Kjetil Skotheim", "data" : [ [ "Perl", @@ -167,8 +321,6 @@ ] }, { - "id" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld", "data" : [ [ "Perl", @@ -182,31 +334,43 @@ "Blog", 2 ] - ] + ], + "name" : "Laurent Rosenfeld", + "id" : "Laurent Rosenfeld" }, { + "name" : "Mariano Ortega", + "id" : "Mariano Ortega", "data" : [ [ "Perl", 2 ] - ], - "id" : "Mariano Ortega", - "name" : "Mariano Ortega" + ] }, { + "name" : "Mark Anderson", + "id" : "Mark Anderson", "data" : [ [ "Raku", 2 ] - ], - "id" : "Mark Anderson", - "name" : "Mark Anderson" + ] + }, + { + "id" : "Nelo Tovar", + "name" : "Nelo Tovar", + "data" : [ + [ + "Perl", + 2 + ] + ] }, { - "name" : "Niels van Dijke", "id" : "Niels van Dijke", + "name" : "Niels van Dijke", "data" : [ [ "Perl", @@ -215,8 +379,6 @@ ] }, { - "name" : "Packy Anderson", - "id" : "Packy Anderson", "data" : [ [ "Perl", @@ -230,7 +392,9 @@ "Blog", 1 ] - ] + ], + "id" : "Packy Anderson", + "name" : "Packy Anderson" }, { "data" : [ @@ -239,10 +403,12 @@ 2 ] ], - "id" : "Paulo Custodio", - "name" : "Paulo Custodio" + "name" : "Paulo Custodio", + "id" : "Paulo Custodio" }, { + "id" : "Peter Campbell Smith", + "name" : "Peter Campbell Smith", "data" : [ [ "Perl", @@ -252,9 +418,7 @@ "Blog", 1 ] - ], - "name" : "Peter Campbell Smith", - "id" : "Peter Campbell Smith" + ] }, { "data" : [ @@ -267,8 +431,8 @@ "name" : "Peter Meszaros" }, { - "name" : "Reinier Maliepaard", "id" : "Reinier Maliepaard", + "name" : "Reinier Maliepaard", "data" : [ [ "Perl", @@ -281,8 +445,8 @@ ] }, { - "name" : "Robbie Hatley", "id" : "Robbie Hatley", + "name" : "Robbie Hatley", "data" : [ [ "Perl", @@ -295,14 +459,14 @@ ] }, { - "name" : "Robert Ransbottom", - "id" : "Robert Ransbottom", "data" : [ [ "Raku", 2 ] - ] + ], + "name" : "Robert Ransbottom", + "id" : "Robert Ransbottom" }, { "id" : "Roger Bell_West", @@ -319,6 +483,8 @@ ] }, { + "name" : "Thomas Kohler", + "id" : "Thomas Kohler", "data" : [ [ "Perl", @@ -328,11 +494,11 @@ "Blog", 2 ] - ], - "id" : "Thomas Kohler", - "name" : "Thomas Kohler" + ] }, { + "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke", "data" : [ [ "Perl", @@ -342,9 +508,7 @@ "Raku", 2 ] - ], - "id" : "Ulrich Rieke", - "name" : "Ulrich Rieke" + ] }, { "data" : [ @@ -357,8 +521,8 @@ 1 ] ], - "name" : "W. Luis Mochan", - "id" : "W. Luis Mochan" + "id" : "W. Luis Mochan", + "name" : "W. Luis Mochan" }, { "name" : "Wanderdoc", @@ -372,169 +536,20 @@ } ] }, - "title" : { - "text" : "The Weekly Challenge - 282" - }, "tooltip" : { + "followPointer" : 1, "pointFormat" : "{point.name}: {point.y:f}
", - "headerFormat" : "{series.name}
", - "followPointer" : 1 + "headerFormat" : "{series.name}
" }, - "xAxis" : { - "type" : "category" + "title" : { + "text" : "The Weekly Challenge - 282" }, "legend" : { "enabled" : 0 }, - "series" : [ - { - "data" : [ - { - "y" : 3, - "drilldown" : "Adam Russell", - "name" : "Adam Russell" - }, - { - "name" : "Ali Moradi", - "y" : 3, - "drilldown" : "Ali Moradi" - }, - { - "y" : 3, - "drilldown" : "Arne Sommer", - "name" : "Arne Sommer" - }, - { - "y" : 4, - "drilldown" : "Athanasius", - "name" : "Athanasius" - }, - { - "name" : "Dave Jacoby", - "y" : 2, - "drilldown" : "Dave Jacoby" - }, - { - "name" : "David Ferrone", - "y" : 2, - "drilldown" : "David Ferrone" - }, - { - "name" : "E. Choroba", - "drilldown" : "E. Choroba", - "y" : 2 - }, - { - "name" : "Feng Chang", - "y" : 2, - "drilldown" : "Feng Chang" - }, - { - "y" : 5, - "drilldown" : "Jaldhar H. Vyas", - "name" : "Jaldhar H. Vyas" - }, - { - "name" : "Jan Krnavek", - "y" : 2, - "drilldown" : "Jan Krnavek" - }, - { - "drilldown" : "Jorg Sommrey", - "y" : 3, - "name" : "Jorg Sommrey" - }, - { - "name" : "Kjetil Skotheim", - "drilldown" : "Kjetil Skotheim", - "y" : 2 - }, - { - "y" : 6, - "drilldown" : "Laurent Rosenfeld", - "name" : "Laurent Rosenfeld" - }, - { - "name" : "Mariano Ortega", - "y" : 2, - "drilldown" : "Mariano Ortega" - }, - { - "name" : "Mark Anderson", - "drilldown" : "Mark Anderson", - "y" : 2 - }, - { - "name" : "Niels van Dijke", - "y" : 2, - "drilldown" : "Niels van Dijke" - }, - { - "name" : "Packy Anderson", - "y" : 5, - "drilldown" : "Packy Anderson" - }, - { - "name" : "Paulo Custodio", - "y" : 2, - "drilldown" : "Paulo Custodio" - }, - { - "name" : "Peter Campbell Smith", - "drilldown" : "Peter Campbell Smith", - "y" : 3 - }, - { - "y" : 2, - "drilldown" : "Peter Meszaros", - "name" : "Peter Meszaros" - }, - { - "drilldown" : "Reinier Maliepaard", - "y" : 3, - "name" : "Reinier Maliepaard" - }, - { - "name" : "Robbie Hatley", - "drilldown" : "Robbie Hatley", - "y" : 3 - }, - { - "y" : 2, - "drilldown" : "Robert Ransbottom", - "name" : "Robert Ransbottom" - }, - { - "name" : "Roger Bell_West", - "drilldown" : "Roger Bell_West", - "y" : 4 - }, - { - "y" : 4, - "drilldown" : "Thomas Kohler", - "name" : "Thomas Kohler" - }, - { - "y" : 4, - "drilldown" : "Ulrich Rieke", - "name" : "Ulrich Rieke" - }, - { - "drilldown" : "W. Luis Mochan", - "y" : 3, - "name" : "W. Luis Mochan" - }, - { - "name" : "Wanderdoc", - "drilldown" : "Wanderdoc", - "y" : 2 - } - ], - "name" : "The Weekly Challenge - 282", - "colorByPoint" : 1 + "yAxis" : { + "title" : { + "text" : "Total Solutions" } - ], - "chart" : { - "type" : "column" } } diff --git a/stats/pwc-language-breakdown-2019.json b/stats/pwc-language-breakdown-2019.json index 0c83bcb116..ca0c96f923 100644 --- a/stats/pwc-language-breakdown-2019.json +++ b/stats/pwc-language-breakdown-2019.json @@ -16,8 +16,8 @@ 9 ] ], - "id" : "041", - "name" : "041" + "name" : "041", + "id" : "041" }, { "data" : [ @@ -56,8 +56,8 @@ "id" : "039" }, { - "id" : "038", "name" : "038", + "id" : "038", "data" : [ [ "Perl", @@ -74,6 +74,8 @@ ] }, { + "name" : "037", + "id" : "037", "data" : [ [ "Perl", @@ -87,13 +89,9 @@ "Blog", 9 ] - ], - "name" : "037", - "id" : "037" + ] }, { - "id" : "036", - "name" : "036", "data" : [ [ "Perl", @@ -107,11 +105,11 @@ "Blog", 11 ] - ] + ], + "name" : "036", + "id" : "036" }, { - "name" : "035", - "id" : "035", "data" : [ [ "Perl", @@ -125,7 +123,9 @@ "Blog", 9 ] - ] + ], + "id" : "035", + "name" : "035" }, { "data" : [ @@ -146,8 +146,6 @@ "id" : "034" }, { - "name" : "033", - "id" : "033", "data" : [ [ "Perl", @@ -161,11 +159,11 @@ "Blog", 10 ] - ] + ], + "name" : "033", + "id" : "033" }, { - "id" : "032", - "name" : "032", "data" : [ [ "Perl", @@ -179,7 +177,9 @@ "Blog", 10 ] - ] + ], + "name" : "032", + "id" : "032" }, { "data" : [ @@ -196,10 +196,12 @@ 9 ] ], - "name" : "031", - "id" : "031" + "id" : "031", + "name" : "031" }, { + "id" : "030", + "name" : "030", "data" : [ [ "Perl", @@ -213,11 +215,11 @@ "Blog", 10 ] - ], - "name" : "030", - "id" : "030" + ] }, { + "name" : "029", + "id" : "029", "data" : [ [ "Perl", @@ -231,9 +233,7 @@ "Blog", 12 ] - ], - "id" : "029", - "name" : "029" + ] }, { "id" : "028", @@ -272,8 +272,6 @@ "id" : "027" }, { - "name" : "026", - "id" : "026", "data" : [ [ "Perl", @@ -287,11 +285,13 @@ "Blog", 10 ] - ] + ], + "name" : "026", + "id" : "026" }, { - "name" : "025", "id" : "025", + "name" : "025", "data" : [ [ "Perl", @@ -308,8 +308,8 @@ ] }, { - "id" : "024", "name" : "024", + "id" : "024", "data" : [ [ "Perl", @@ -326,6 +326,8 @@ ] }, { + "name" : "023", + "id" : "023", "data" : [ [ "Perl", @@ -339,9 +341,7 @@ "Blog", 12 ] - ], - "name" : "023", - "id" : "023" + ] }, { "data" : [ @@ -358,12 +358,12 @@ 10 ] ], - "id" : "022", - "name" : "022" + "name" : "022", + "id" : "022" }, { - "id" : "021", "name" : "021", + "id" : "021", "data" : [ [ "Perl", @@ -380,8 +380,6 @@ ] }, { - "name" : "020", - "id" : "020", "data" : [ [ "Perl", @@ -395,7 +393,9 @@ "Blog", 13 ] - ] + ], + "id" : "020", + "name" : "020" }, { "data" : [ @@ -416,6 +416,8 @@ "id" : "019" }, { + "name" : "018", + "id" : "018", "data" : [ [ "Perl", @@ -429,9 +431,7 @@ "Blog", 14 ] - ], - "name" : "018", - "id" : "018" + ] }, { "data" : [ @@ -448,12 +448,10 @@ 12 ] ], - "id" : "017", - "name" : "017" + "name" : "017", + "id" : "017" }, { - "name" : "016", - "id" : "016", "data" : [ [ "Perl", @@ -467,11 +465,13 @@ "Blog", 13 ] - ] + ], + "name" : "016", + "id" : "016" }, { - "name" : "015", "id" : "015", + "name" : "015", "data" : [ [ "Perl", @@ -488,8 +488,8 @@ ] }, { - "id" : "014", "name" : "014", + "id" : "014", "data" : [ [ "Perl", @@ -542,8 +542,6 @@ "name" : "012" }, { - "id" : "011", - "name" : "011", "data" : [ [ "Perl", @@ -557,7 +555,9 @@ "Blog", 10 ] - ] + ], + "id" : "011", + "name" : "011" }, { "data" : [ @@ -574,12 +574,10 @@ 11 ] ], - "id" : "010", - "name" : "010" + "name" : "010", + "id" : "010" }, { - "name" : "009", - "id" : "009", "data" : [ [ "Perl", @@ -593,7 +591,9 @@ "Blog", 13 ] - ] + ], + "name" : "009", + "id" : "009" }, { "name" : "008", @@ -614,8 +614,6 @@ ] }, { - "name" : "007", - "id" : "007", "data" : [ [ "Perl", @@ -629,7 +627,9 @@ "Blog", 10 ] - ] + ], + "name" : "007", + "id" : "007" }, { "data" : [ @@ -646,12 +646,12 @@ 7 ] ], - "id" : "006", - "name" : "006" + "name" : "006", + "id" : "006" }, { - "id" : "005", "name" : "005", + "id" : "005", "data" : [ [ "Perl", @@ -668,8 +668,6 @@ ] }, { - "name" : "004", - "id" : "004", "data" : [ [ "Perl", @@ -683,7 +681,9 @@ "Blog", 10 ] - ] + ], + "name" : "004", + "id" : "004" }, { "data" : [ @@ -700,12 +700,10 @@ 9 ] ], - "name" : "003", - "id" : "003" + "id" : "003", + "name" : "003" }, { - "id" : "002", - "name" : "002", "data" : [ [ "Perl", @@ -719,11 +717,11 @@ "Blog", 10 ] - ] + ], + "name" : "002", + "id" : "002" }, { - "id" : "001", - "name" : "001", "data" : [ [ "Perl", @@ -737,12 +735,22 @@ "Blog", 12 ] - ] + ], + "id" : "001", + "name" : "001" } ] }, "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-08-16 20:54:53 GMT" + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2024-08-17 17:33:57 GMT" + }, + "chart" : { + "type" : "column" + }, + "tooltip" : { + "followPointer" : "true", + "headerFormat" : "", + "pointFormat" : "Challenge {point.name}: {point.y:f}
" }, "title" : { "text" : "The Weekly Challenge Language" @@ -752,69 +760,61 @@ "text" : "Total Solutions" } }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - }, - "borderWidth" : 0 - } + "legend" : { + "enabled" : "false" }, "series" : [ { - "colorByPoint" : "true", - "name" : "The Weekly Challenge Languages", "data" : [ { - "drilldown" : "041", "y" : 80, - "name" : "041" + "name" : "041", + "drilldown" : "041" }, { + "y" : 77, "name" : "040", - "drilldown" : "040", - "y" : 77 + "drilldown" : "040" }, { - "y" : 68, "drilldown" : "039", - "name" : "039" + "name" : "039", + "y" : 68 }, { - "drilldown" : "038", "y" : 74, - "name" : "038" + "name" : "038", + "drilldown" : "038" }, { + "name" : "037", "drilldown" : "037", - "y" : 70, - "name" : "037" + "y" : 70 }, { - "drilldown" : "036", "y" : 70, - "name" : "036" + "name" : "036", + "drilldown" : "036" }, { "y" : 68, - "drilldown" : "035", - "name" : "035" + "name" : "035", + "drilldown" : "035" }, { "drilldown" : "034", - "y" : 70, - "name" : "034" + "name" : "034", + "y" : 70 }, { + "name" : "033", "drilldown" : "033", - "y" : 113, - "name" : "033" + "y" : 113 }, { - "name" : "032", "y" : 97, - "drilldown" : "032" + "drilldown" : "032", + "name" : "032" }, { "y" : 93, @@ -822,24 +822,24 @@ "name" : "031" }, { + "name" : "030", "drilldown" : "030", - "y" : 120, - "name" : "030" + "y" : 120 }, { + "drilldown" : "029", "name" : "029", - "y" : 83, - "drilldown" : "029" + "y" : 83 }, { - "name" : "028", "y" : 82, - "drilldown" : "028" + "drilldown" : "028", + "name" : "028" }, { - "y" : 64, + "name" : "027", "drilldown" : "027", - "name" : "027" + "y" : 64 }, { "name" : "026", @@ -853,43 +853,43 @@ }, { "drilldown" : "024", - "y" : 77, - "name" : "024" + "name" : "024", + "y" : 77 }, { + "drilldown" : "023", "name" : "023", - "y" : 88, - "drilldown" : "023" + "y" : 88 }, { "name" : "022", - "y" : 72, - "drilldown" : "022" + "drilldown" : "022", + "y" : 72 }, { "drilldown" : "021", - "y" : 72, - "name" : "021" + "name" : "021", + "y" : 72 }, { - "y" : 100, "drilldown" : "020", - "name" : "020" + "name" : "020", + "y" : 100 }, { - "y" : 101, "drilldown" : "019", - "name" : "019" + "name" : "019", + "y" : 101 }, { - "name" : "018", + "y" : 82, "drilldown" : "018", - "y" : 82 + "name" : "018" }, { "name" : "017", - "y" : 83, - "drilldown" : "017" + "drilldown" : "017", + "y" : 83 }, { "name" : "016", @@ -898,43 +898,43 @@ }, { "name" : "015", - "y" : 95, - "drilldown" : "015" + "drilldown" : "015", + "y" : 95 }, { - "name" : "014", "y" : 98, - "drilldown" : "014" + "drilldown" : "014", + "name" : "014" }, { + "name" : "013", "drilldown" : "013", - "y" : 85, - "name" : "013" + "y" : 85 }, { "y" : 90, - "drilldown" : "012", - "name" : "012" + "name" : "012", + "drilldown" : "012" }, { "y" : 86, - "drilldown" : "011", - "name" : "011" + "name" : "011", + "drilldown" : "011" }, { - "name" : "010", + "y" : 69, "drilldown" : "010", - "y" : 69 + "name" : "010" }, { - "drilldown" : "009", "y" : 79, + "drilldown" : "009", "name" : "009" }, { - "y" : 82, "drilldown" : "008", - "name" : "008" + "name" : "008", + "y" : 82 }, { "name" : "007", @@ -942,50 +942,50 @@ "y" : 71 }, { + "drilldown" : "006", "name" : "006", - "y" : 63, - "drilldown" : "006" + "y" : 63 }, { - "name" : "005", "y" : 82, + "name" : "005", "drilldown" : "005" }, { - "name" : "004", + "y" : 106, "drilldown" : "004", - "y" : 106 + "name" : "004" }, { "y" : 91, - "drilldown" : "003", - "name" : "003" + "name" : "003", + "drilldown" : "003" }, { + "y" : 133, "name" : "002", - "drilldown" : "002", - "y" : 133 + "drilldown" : "002" }, { - "drilldown" : "001", "y" : 165, + "drilldown" : "001", "name" : "001" } - ] + ], + "colorByPoint" : "true", + "name" : "The Weekly Challenge Languages" } ], - "chart" : { - "type" : "column" + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 + } }, "xAxis" : { "type" : "category" - }, - "tooltip" : { - "pointFormat" : "Challenge {point.name}: {point.y:f}
", - "followPointer" : "true", - "headerFormat" : "" - }, - "legend" : { - "enabled" : "false" } } diff --git a/stats/pwc-language-breakdown-2020.json b/stats/pwc-language-breakdown-2020.json index 74a82ba95c..1aec0bc022 100644 --- a/stats/pwc-language-breakdown-2020.json +++ b/stats/pwc-language-breakdown-2020.json @@ -1,10 +1,9 @@ { - "title" : { - "text" : "The Weekly Challenge Language" - }, "drilldown" : { "series" : [ { + "name" : "093", + "id" : "093", "data" : [ [ "Perl", @@ -18,11 +17,11 @@ "Blog", 16 ] - ], - "id" : "093", - "name" : "093" + ] }, { + "name" : "092", + "id" : "092", "data" : [ [ "Perl", @@ -36,13 +35,9 @@ "Blog", 16 ] - ], - "id" : "092", - "name" : "092" + ] }, { - "name" : "091", - "id" : "091", "data" : [ [ "Perl", @@ -56,11 +51,11 @@ "Blog", 16 ] - ] + ], + "id" : "091", + "name" : "091" }, { - "id" : "090", - "name" : "090", "data" : [ [ "Perl", @@ -74,9 +69,13 @@ "Blog", 17 ] - ] + ], + "id" : "090", + "name" : "090" }, { + "id" : "089", + "name" : "089", "data" : [ [ "Perl", @@ -90,11 +89,11 @@ "Blog", 20 ] - ], - "id" : "089", - "name" : "089" + ] }, { + "name" : "088", + "id" : "088", "data" : [ [ "Perl", @@ -108,11 +107,11 @@ "Blog", 20 ] - ], - "id" : "088", - "name" : "088" + ] }, { + "id" : "087", + "name" : "087", "data" : [ [ "Perl", @@ -126,9 +125,7 @@ "Blog", 14 ] - ], - "name" : "087", - "id" : "087" + ] }, { "id" : "086", @@ -149,6 +146,8 @@ ] }, { + "name" : "085", + "id" : "085", "data" : [ [ "Perl", @@ -162,11 +161,11 @@ "Blog", 18 ] - ], - "name" : "085", - "id" : "085" + ] }, { + "name" : "084", + "id" : "084", "data" : [ [ "Perl", @@ -180,9 +179,7 @@ "Blog", 12 ] - ], - "id" : "084", - "name" : "084" + ] }, { "data" : [ @@ -203,8 +200,6 @@ "id" : "083" }, { - "id" : "082", - "name" : "082", "data" : [ [ "Perl", @@ -218,11 +213,11 @@ "Blog", 17 ] - ] + ], + "id" : "082", + "name" : "082" }, { - "name" : "081", - "id" : "081", "data" : [ [ "Perl", @@ -236,11 +231,11 @@ "Blog", 15 ] - ] + ], + "name" : "081", + "id" : "081" }, { - "name" : "080", - "id" : "080", "data" : [ [ "Perl", @@ -254,11 +249,13 @@ "Blog", 16 ] - ] + ], + "name" : "080", + "id" : "080" }, { - "id" : "079", "name" : "079", + "id" : "079", "data" : [ [ "Perl", @@ -289,12 +286,12 @@ 18 ] ], - "name" : "078", - "id" : "078" + "id" : "078", + "name" : "078" }, { - "id" : "077", "name" : "077", + "id" : "077", "data" : [ [ "Perl", @@ -311,6 +308,8 @@ ] }, { + "id" : "076", + "name" : "076", "data" : [ [ "Perl", @@ -324,9 +323,7 @@ "Blog", 16 ] - ], - "name" : "076", - "id" : "076" + ] }, { "name" : "075", @@ -347,6 +344,8 @@ ] }, { + "id" : "074", + "name" : "074", "data" : [ [ "Perl", @@ -360,9 +359,7 @@ "Blog", 20 ] - ], - "id" : "074", - "name" : "074" + ] }, { "data" : [ @@ -379,12 +376,10 @@ 17 ] ], - "id" : "073", - "name" : "073" + "name" : "073", + "id" : "073" }, { - "id" : "072", - "name" : "072", "data" : [ [ "Perl", @@ -398,7 +393,9 @@ "Blog", 19 ] - ] + ], + "name" : "072", + "id" : "072" }, { "name" : "071", @@ -419,8 +416,8 @@ ] }, { - "name" : "070", "id" : "070", + "name" : "070", "data" : [ [ "Perl", @@ -437,8 +434,6 @@ ] }, { - "id" : "069", - "name" : "069", "data" : [ [ "Perl", @@ -452,11 +447,11 @@ "Blog", 16 ] - ] + ], + "name" : "069", + "id" : "069" }, { - "id" : "068", - "name" : "068", "data" : [ [ "Perl", @@ -470,11 +465,13 @@ "Blog", 13 ] - ] + ], + "id" : "068", + "name" : "068" }, { - "name" : "067", "id" : "067", + "name" : "067", "data" : [ [ "Perl", @@ -491,8 +488,6 @@ ] }, { - "id" : "066", - "name" : "066", "data" : [ [ "Perl", @@ -506,9 +501,13 @@ "Blog", 14 ] - ] + ], + "name" : "066", + "id" : "066" }, { + "id" : "065", + "name" : "065", "data" : [ [ "Perl", @@ -522,13 +521,9 @@ "Blog", 15 ] - ], - "name" : "065", - "id" : "065" + ] }, { - "id" : "064", - "name" : "064", "data" : [ [ "Perl", @@ -542,11 +537,13 @@ "Blog", 16 ] - ] + ], + "name" : "064", + "id" : "064" }, { - "id" : "063", "name" : "063", + "id" : "063", "data" : [ [ "Perl", @@ -563,8 +560,6 @@ ] }, { - "id" : "062", - "name" : "062", "data" : [ [ "Perl", @@ -578,7 +573,9 @@ "Blog", 11 ] - ] + ], + "name" : "062", + "id" : "062" }, { "data" : [ @@ -599,8 +596,6 @@ "id" : "061" }, { - "id" : "060", - "name" : "060", "data" : [ [ "Perl", @@ -614,7 +609,9 @@ "Blog", 16 ] - ] + ], + "id" : "060", + "name" : "060" }, { "name" : "059", @@ -635,8 +632,6 @@ ] }, { - "name" : "058", - "id" : "058", "data" : [ [ "Perl", @@ -650,9 +645,13 @@ "Blog", 13 ] - ] + ], + "id" : "058", + "name" : "058" }, { + "id" : "057", + "name" : "057", "data" : [ [ "Perl", @@ -666,13 +665,9 @@ "Blog", 15 ] - ], - "id" : "057", - "name" : "057" + ] }, { - "id" : "056", - "name" : "056", "data" : [ [ "Perl", @@ -686,9 +681,13 @@ "Blog", 17 ] - ] + ], + "id" : "056", + "name" : "056" }, { + "name" : "055", + "id" : "055", "data" : [ [ "Perl", @@ -702,9 +701,7 @@ "Blog", 14 ] - ], - "id" : "055", - "name" : "055" + ] }, { "data" : [ @@ -721,10 +718,12 @@ 18 ] ], - "id" : "054", - "name" : "054" + "name" : "054", + "id" : "054" }, { + "name" : "053", + "id" : "053", "data" : [ [ "Perl", @@ -738,9 +737,7 @@ "Blog", 15 ] - ], - "id" : "053", - "name" : "053" + ] }, { "name" : "052", @@ -761,8 +758,8 @@ ] }, { - "id" : "051", "name" : "051", + "id" : "051", "data" : [ [ "Perl", @@ -779,8 +776,6 @@ ] }, { - "id" : "050", - "name" : "050", "data" : [ [ "Perl", @@ -794,7 +789,9 @@ "Blog", 12 ] - ] + ], + "name" : "050", + "id" : "050" }, { "data" : [ @@ -815,8 +812,6 @@ "name" : "049" }, { - "name" : "048", - "id" : "048", "data" : [ [ "Perl", @@ -830,11 +825,11 @@ "Blog", 12 ] - ] + ], + "id" : "048", + "name" : "048" }, { - "id" : "047", - "name" : "047", "data" : [ [ "Perl", @@ -848,9 +843,13 @@ "Blog", 10 ] - ] + ], + "id" : "047", + "name" : "047" }, { + "name" : "046", + "id" : "046", "data" : [ [ "Perl", @@ -864,13 +863,11 @@ "Blog", 10 ] - ], - "id" : "046", - "name" : "046" + ] }, { - "name" : "045", "id" : "045", + "name" : "045", "data" : [ [ "Perl", @@ -901,8 +898,8 @@ 11 ] ], - "id" : "044", - "name" : "044" + "name" : "044", + "id" : "044" }, { "name" : "043", @@ -923,8 +920,6 @@ ] }, { - "id" : "042", - "name" : "042", "data" : [ [ "Perl", @@ -938,40 +933,47 @@ "Blog", 11 ] - ] + ], + "name" : "042", + "id" : "042" } ] }, + "chart" : { + "type" : "column" +