diff options
| -rw-r--r-- | challenge-013/steven-wilson/perl5/ch-1.pl | 86 | ||||
| -rw-r--r-- | challenge-013/steven-wilson/perl5/ch-2.pl | 51 | ||||
| -rw-r--r-- | stats/pwc-current.json | 123 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 60 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 122 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 874 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 96 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 50 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 108 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 72 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 46 |
11 files changed, 920 insertions, 768 deletions
diff --git a/challenge-013/steven-wilson/perl5/ch-1.pl b/challenge-013/steven-wilson/perl5/ch-1.pl new file mode 100644 index 0000000000..3dbbcc96f1 --- /dev/null +++ b/challenge-013/steven-wilson/perl5/ch-1.pl @@ -0,0 +1,86 @@ +#!/usr/bin/env perl +# Author: Steven Wilson +# Date: 2019-06-17 +# Week: 013 +# Challenge: #1 +# +# Write a script to print the date of last Friday of every month of a +# given year. For example, if the given year is 2019 then it should +# print the following: +# 2019/01/25 +# 2019/02/22 +# 2019/03/29 +# 2019/04/26 +# 2019/05/31 +# 2019/06/28 +# 2019/07/26 +# 2019/08/30 +# 2019/09/27 +# 2019/10/25 +# 2019/11/29 +# 2019/12/27 + +use strict; +use warnings; +use feature qw / say /; +use DateTime; +use Test::Simple tests => 3; + +ok( get_first_day_of_year(2019) == 3, "First day of 2019 is a Tuesday" ); +ok( get_first_day_of_year(2005) == 0, "First day of 2005 is a Saturday" ); +ok( get_first_friday_of_year(2019)->strftime("%Y/%m/%d") eq "2019/01/04", + "Date of first friday in 2019 is 2019/01/04." ); + +my @all = get_last_fridays_of_month_for_year(2019); +for (@all) { + say $_->strftime("%Y/%m/%d"); +} + +sub get_last_fridays_of_month_for_year { + my $year = shift; + my @all_fridays = get_all_fridays_for_year($year); + my @last_fridays; + for (@all_fridays) { + $last_fridays[ $_->month - 1 ] = $_; + } + return @last_fridays; +} + +sub get_all_fridays_for_year { + my $year = shift; + my $friday = get_first_friday_of_year($year); + my @all_fridays; + while ( $friday->year() == $year ) { + push @all_fridays, $friday->clone(); + $friday->add( weeks => 1 ); + } + return @all_fridays; +} + +sub get_first_friday_of_year { + my $year = shift; + my $first_friday = 7 - get_first_day_of_year($year); + my $dt = DateTime->new( + year => $year, + month => 1, + day => $first_friday, + ); + return $dt; +} + +sub get_first_day_of_year { + my $year = shift; + my $y = $year - 1; + my $m = 13; + my $d = 1; + my $N + = $d + + ( 2 * $m ) + + int( 3 * ( $m + 1 ) / 5 ) + + $y + + int( $y / 4 ) + - int( $y / 100 ) + + int( $y / 400 ) + + 2; + return $N % 7; # 0 .. 6 represents Saturday .. Friday +} diff --git a/challenge-013/steven-wilson/perl5/ch-2.pl b/challenge-013/steven-wilson/perl5/ch-2.pl new file mode 100644 index 0000000000..adfdb1c0bd --- /dev/null +++ b/challenge-013/steven-wilson/perl5/ch-2.pl @@ -0,0 +1,51 @@ +#!/usr/bin/env perl +# Author: Steven Wilson +# Date: 2019-06-17 +# Week: 013 +# Challenge: #2 +# +# Write a script to demonstrate Mutually Recursive methods. Two methods +# are mutually recursive if the first method calls the second and the +# second calls first in turn. Using the mutually recursive methods, +# generate Hofstadter Female and Male sequences. +# +# F ( 0 ) = 1 ; M ( 0 ) = 0 +# F ( n ) = n − M ( F ( n − 1 ) ) , n > 0 +# M ( n ) = n − F ( M ( n − 1 ) ) , n > 0. + +use strict; +use warnings; + +my $n = 20; + +print "female sequence: "; +for ( 0 .. $n ) { + print &f($_) . ", "; +} +print "...\n"; + +print " male sequence: "; +for ( 0 .. $n ) { + print &m($_) . ", "; +} +print "...\n"; + +sub f { + my $n = shift; + if ( $n == 0 ) { + return 1; + } + elsif ( $n > 0 ) { + return ( $n - &m( &f( $n - 1 ) ) ); + } +} + +sub m { + my $n = shift; + if ( $n == 0 ) { + return 0; + } + elsif ( $n > 0 ) { + return ( $n - &f( &m( $n - 1 ) ) ); + } +}
\ No newline at end of file diff --git a/stats/pwc-current.json b/stats/pwc-current.json index d00e5394c5..5c40b026c6 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,24 +1,33 @@ { + "xAxis" : { + "type" : "category" + }, + "chart" : { + "type" : "column" + }, "subtitle" : { - "text" : "[Champions: 9] Last updated at 2019-06-19 10:55:28 GMT" + "text" : "[Champions: 10] Last updated at 2019-06-19 14:05:52 GMT" }, - "title" : { - "text" : "Perl Weekly Challenge - 013" + "tooltip" : { + "followPointer" : 1, + "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>", + "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>" }, - "legend" : { - "enabled" : 0 + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } }, - "chart" : { - "type" : "column" + "title" : { + "text" : "Perl Weekly Challenge - 013" }, "series" : [ { - "name" : "Perl Weekly Challenge - 013", "data" : [ { + "drilldown" : "Andrezgz", "name" : "Andrezgz", - "y" : 2, - "drilldown" : "Andrezgz" + "y" : 2 }, { "drilldown" : "Dave Jacoby", @@ -26,71 +35,60 @@ "name" : "Dave Jacoby" }, { - "name" : "Gustavo Chaves", + "drilldown" : "Gustavo Chaves", "y" : 2, - "drilldown" : "Gustavo Chaves" + "name" : "Gustavo Chaves" }, { "drilldown" : "Joelle Maslak", - "y" : 4, - "name" : "Joelle Maslak" + "name" : "Joelle Maslak", + "y" : 4 }, { - "drilldown" : "Kevin Colyer", "y" : 2, - "name" : "Kevin Colyer" + "name" : "Kevin Colyer", + "drilldown" : "Kevin Colyer" }, { - "drilldown" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld", "y" : 5, - "name" : "Laurent Rosenfeld" + "drilldown" : "Laurent Rosenfeld" }, { "drilldown" : "Ozzy", - "y" : 1, - "name" : "Ozzy" + "name" : "Ozzy", + "y" : 1 }, { "drilldown" : "Pete Houston", - "y" : 1, - "name" : "Pete Houston" + "name" : "Pete Houston", + "y" : 1 }, { - "name" : "Simon Proctor", "drilldown" : "Simon Proctor", - "y" : 3 + "y" : 3, + "name" : "Simon Proctor" + }, + { + "name" : "Steven Wilson", + "y" : 2, + "drilldown" : "Steven Wilson" } ], + "name" : "Perl Weekly Challenge - 013", "colorByPoint" : 1 } ], - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - } - } - }, - "xAxis" : { - "type" : "category" - }, "drilldown" : { "series" : [ { + "id" : "Andrezgz", "data" : [ [ "Perl 5", 2 ] ], - "id" : "Andrezgz", "name" : "Andrezgz" }, { @@ -114,6 +112,7 @@ "name" : "Gustavo Chaves" }, { + "name" : "Joelle Maslak", "data" : [ [ "Perl 5", @@ -124,8 +123,7 @@ 2 ] ], - "id" : "Joelle Maslak", - "name" : "Joelle Maslak" + "id" : "Joelle Maslak" }, { "data" : [ @@ -138,7 +136,7 @@ "name" : "Kevin Colyer" }, { - "id" : "Laurent Rosenfeld", + "name" : "Laurent Rosenfeld", "data" : [ [ "Perl 5", @@ -153,31 +151,30 @@ 1 ] ], - "name" : "Laurent Rosenfeld" + "id" : "Laurent Rosenfeld" }, { + "id" : "Ozzy", "data" : [ [ "Perl 6", 1 ] ], - "id" : "Ozzy", "name" : "Ozzy" }, { + "id" : "Pete Houston", "data" : [ [ "Perl 5", 1 ] ], - "id" : "Pete Houston", "name" : "Pete Houston" }, { "name" : "Simon Proctor", - "id" : "Simon Proctor", "data" : [ [ "Perl 6", @@ -187,13 +184,31 @@ "Blog", 1 ] - ] + ], + "id" : "Simon Proctor" + }, + { + "id" : "Steven Wilson", + "data" : [ + [ + "Perl 5", + 2 + ] + ], + "name" : "Steven Wilson" } ] }, - "tooltip" : { - "followPointer" : 1, - "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>", - "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>" + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 + } + }, + "legend" : { + "enabled" : 0 } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index d126099ddb..298f2eb163 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,23 +1,39 @@ { + "chart" : { + "type" : "column" + }, + "subtitle" : { + "text" : "Last updated at 2019-06-19 14:05:58 GMT" + }, + "tooltip" : { + "pointFormat" : "<b>{point.y:.0f}</b>" + }, + "yAxis" : { + "title" : { + "text" : null + }, + "min" : 0 + }, "title" : { "text" : "Perl Weekly Challenge Contributions - 2019" }, - "subtitle" : { - "text" : "Last updated at 2019-06-19 10:55:38 GMT" + "legend" : { + "enabled" : "false" }, "series" : [ { + "name" : "Contributions", "dataLabels" : { - "enabled" : "true", - "y" : 10, - "align" : "right", - "rotation" : -90, + "style" : { + "fontFamily" : "Verdana, sans-serif", + "fontSize" : "13px" + }, "color" : "#FFFFFF", "format" : "{point.y:.0f}", - "style" : { - "fontSize" : "13px", - "fontFamily" : "Verdana, sans-serif" - } + "rotation" : -90, + "align" : "right", + "y" : 10, + "enabled" : "true" }, "data" : [ [ @@ -26,38 +42,22 @@ ], [ "Perl 5", - 501 + 503 ], [ "Perl 6", 298 ] - ], - "name" : "Contributions" + ] } ], "xAxis" : { + "type" : "category", "labels" : { "style" : { "fontFamily" : "Verdana, sans-serif", "fontSize" : "13px" } - }, - "type" : "category" - }, - "chart" : { - "type" : "column" - }, - "tooltip" : { - "pointFormat" : "<b>{point.y:.0f}</b>" - }, - "legend" : { - "enabled" : "false" - }, - "yAxis" : { - "title" : { - "text" : null - }, - "min" : 0 + } } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 8f728b50ef..d25f8f5c14 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,31 +1,22 @@ { - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } - } - }, "series" : [ { "name" : "Perl Weekly Challenge Languages", "data" : [ { - "y" : 123, + "name" : "#001", "drilldown" : "001", - "name" : "#001" + "y" : 123 }, { "name" : "#002", - "y" : 104, - "drilldown" : "002" + "drilldown" : "002", + "y" : 104 }, { - "name" : "#003", "drilldown" : "003", - "y" : 66 + "y" : 66, + "name" : "#003" }, { "name" : "#004", @@ -33,14 +24,14 @@ "y" : 84 }, { - "y" : 66, "drilldown" : "005", + "y" : 66, "name" : "#005" }, { - "drilldown" : "006", + "name" : "#006", "y" : 47, - "name" : "#006" + "drilldown" : "006" }, { "drilldown" : "007", @@ -48,9 +39,9 @@ "name" : "#007" }, { - "name" : "#008", "y" : 67, - "drilldown" : "008" + "drilldown" : "008", + "name" : "#008" }, { "name" : "#009", @@ -58,38 +49,58 @@ "y" : 62 }, { - "name" : "#010", + "y" : 58, "drilldown" : "010", - "y" : 58 + "name" : "#010" }, { - "y" : 75, + "name" : "#011", "drilldown" : "011", - "name" : "#011" + "y" : 75 }, { - "drilldown" : "012", "y" : 80, + "drilldown" : "012", "name" : "#012" }, { - "name" : "#013", - "y" : 22, - "drilldown" : "013" + "y" : 24, + "drilldown" : "013", + "name" : "#013" } ], "colorByPoint" : "true" } ], - "subtitle" : { - "text" : "Click the columns to drilldown the language breakdown. Last updated at 2019-06-19 10:55:38 GMT" + "xAxis" : { + "type" : "category" + }, + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } + }, + "tooltip" : { + "headerFormat" : "<span style=\"font-size:11px\"></span>", + "followPointer" : "true", + "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>" + }, + "legend" : { + "enabled" : "false" }, "title" : { "text" : "Perl Weekly Challenge Language" }, + "chart" : { + "type" : "column" + }, + "subtitle" : { + "text" : "Click the columns to drilldown the language breakdown. Last updated at 2019-06-19 14:05:58 GMT" + }, "drilldown" : { "series" : [ { + "id" : "001", "data" : [ [ "Perl 5", @@ -104,12 +115,9 @@ 10 ] ], - "id" : "001", "name" : "001" }, { - "name" : "002", - "id" : "002", "data" : [ [ "Perl 5", @@ -123,7 +131,9 @@ "Blog", 9 ] - ] + ], + "id" : "002", + "name" : "002" }, { "name" : "003", @@ -144,6 +154,7 @@ ] }, { + "name" : "004", "data" : [ [ "Perl 5", @@ -158,8 +169,7 @@ 9 ] ], - "id" : "004", - "name" : "004" + "id" : "004" }, { "name" : "005", @@ -198,6 +208,7 @@ "id" : "006" }, { + "name" : "007", "id" : "007", "data" : [ [ @@ -212,8 +223,7 @@ "Blog", 8 ] - ], - "name" : "007" + ] }, { "id" : "008", @@ -252,7 +262,6 @@ ] }, { - "id" : "010", "data" : [ [ "Perl 5", @@ -267,10 +276,10 @@ 9 ] ], + "id" : "010", "name" : "010" }, { - "name" : "011", "id" : "011", "data" : [ [ @@ -285,10 +294,10 @@ "Blog", 8 ] - ] + ], + "name" : "011" }, { - "id" : "012", "data" : [ [ "Perl 5", @@ -303,13 +312,15 @@ 9 ] ], + "id" : "012", "name" : "012" }, { + "id" : "013", "data" : [ [ "Perl 5", - 11 + 13 ], [ "Perl 6", @@ -320,28 +331,17 @@ 2 ] ], - "id" : "013", "name" : "013" } ] }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" + "plotOptions" : { + "series" : { + "dataLabels" : { + "enabled" : 1, + "format" : "{point.y}" + }, + "borderWidth" : 0 } - }, - "tooltip" : { - "headerFormat" : "<span style=\"font-size:11px\"></span>", - "pointFormat" : "<span style=\"color:{point.color}\">Challenge {point.name}</span>: <b>{point.y:f}</b><br/>", - "followPointer" : "true" - }, - "legend" : { - "enabled" : "false" - }, - "chart" : { - "type" : "column" - }, - "xAxis" : { - "type" : "category" } } diff --git a/stats/pwc-leaders.json b/stats/pwc-leaders.json index 5b759a38be..bba9c18385 100644 --- a/stats/pwc-leaders.json +++ b/stats/pwc-leaders.json @@ -1,317 +1,26 @@ { - "chart" : { - "type" : "column" - }, - "title" : { - "text" : "Perl Weekly Challenge Leaders (TOP 50)" - }, - "legend" : { - "enabled" : "false" - }, - "yAxis" : { - "title" : { - "text" : "Total Score" - } - }, - "xAxis" : { - "type" : "category" - }, - "series" : [ - { - "colorByPoint" : "true", - "data" : [ - { - "y" : 132, - "name" : "#1: Joelle Maslak", - "drilldown" : "Joelle Maslak" - }, - { - "drilldown" : "Laurent Rosenfeld", - "name" : "#2: Laurent Rosenfeld", - "y" : 132 - }, - { - "name" : "#3: Jaldhar H. Vyas", - "y" : 96, - "drilldown" : "Jaldhar H. Vyas" - }, - { - "y" : 84, - "name" : "#4: Ruben Westerberg", - "drilldown" : "Ruben Westerberg" - }, - { - "drilldown" : "Adam Russell", - "y" : 72, - "name" : "#5: Adam Russell" - }, - { - "drilldown" : "Simon Proctor", - "y" : 66, - "name" : "#6: Simon Proctor" - }, - { - "drilldown" : "Arne Sommer", - "y" : 64, - "name" : "#7: Arne Sommer" - }, - { - "name" : "#8: Kian-Meng Ang", - "y" : 64, - "drilldown" : "Kian-Meng Ang" - }, - { - "name" : "#9: Athanasius", - "y" : 56, - "drilldown" : "Athanasius" - }, - { - "name" : "#10: Gustavo Chaves", - "y" : 54, - "drilldown" : "Gustavo Chaves" - }, - { - "drilldown" : "Andrezgz", - "name" : "#11: Andrezgz", - "y" : 50 - }, - { - "drilldown" : "Francis Whittle", - "name" : "#12: Francis Whittle", - "y" : 50 - }, - { - "drilldown" : "Dave Jacoby", - "y" : 48, - "name" : "#13: Dave Jacoby" - }, - { - "y" : 48, - "name" : "#14: E. Choroba", - "drilldown" : "E. Choroba" - }, - { - "drilldown" : "Jo Christian Oterhals", - "name" : "#15: Jo Christian Oterhals", - "y" : 48 - }, - { - "drilldown" : "Dr James A. Smith", - "name" : "#16: Dr James A. Smith", - "y" : 44 - }, - { - "name" : "#17: Daniel Mantovani", - "y" : 36, - "drilldown" : "Daniel Mantovani" - }, - { - "y" : 36, - "name" : "#18: Duncan C. White", - "drilldown" : "Duncan C. White" - }, - { - "drilldown" : "Mark Senn", - "y" : 32, - "name" : "#19: Mark Senn" - }, - { - "name" : "#20: Nick Logan", - "y" : 32, - "drilldown" : "Nick Logan" - }, - { - "drilldown" : "Lars Balker", - "name" : "#21: Lars Balker", - "y" : 28 - }, - { - "y" : 28, - "name" : "#22: Yozen Hernandez", - "drilldown" : "Yozen Hernandez" - }, - { - "drilldown" : "Steven Wilson", - "y" : 26, - "name" : "#23: Steven Wilson" - }, - { - "drilldown" : "Ozzy", - "name" : "#24: Ozzy", - "y" : 24 - }, - { - "drilldown" : "Alicia Bielsa", - "name" : "#25: Alicia Bielsa", - "y" : 22 - }, - { - "drilldown" : "Feng Chang", - "name" : "#26: Feng Chang", - "y" : 22 - }, - { - "name" : "#27: Doug Schrag", - "y" : 20, - "drilldown" : "Doug Schrag" - }, - { - "y" : 20, - "name" : "#28: Maxim Nechaev", - "drilldown" : "Maxim Nechaev" - }, - { - "y" : 18, - "name" : "#29: Guillermo Ramos", - "drilldown" : "Guillermo Ramos" - }, - { - "drilldown" : "Robert Gratza", - "name" : "#30: Robert Gratza", - "y" : 16 - }, - { - "drilldown" : "John Barrett", - "y" : 14, - "name" : "#31: John Barrett" - }, - { - "drilldown" : "Khalid", - "name" : "#32: Khalid", - "y" : 14 - }, - { - "y" : 12, - "name" : "#33: Jaime Corchado", - "drilldown" : "Jaime Corchado" - }, - { - "y" : 12, - "name" : "#34: Kevin Colyer", - "drilldown" : "Kevin Colyer" - }, - { - "name" : "#35: Kivanc Yazan", - "y" : 12, - "drilldown" : "Kivanc Yazan" - }, - { - "drilldown" : "Maxim Kolodyazhny", - "y" : 12, - "name" : "#36: Maxim Kolodyazhny" - }, - { - "y" : 12, - "name" : "#37: Philippe Bruhat", - "drilldown" : "Philippe Bruhat" - }, - { - "y" : 12, - "name" : "#38: Sergio Iglesias", - "drilldown" : "Sergio Iglesias" - }, - { - "drilldown" : "Arpad Toth", - "y" : 10, - "name" : "#39: Arpad Toth" - }, - { - "y" : 10, - "name" : "#40: Pete Houston", - "drilldown" : "Pete Houston" - }, - { - "drilldown" : "Steve Rogerson", - "name" : "#41: Steve Rogerson", - "y" : 10 - }, - { - "name" : "#42: Veesh Goldman", - "y" : 10, - "drilldown" : "Veesh Goldman" - }, - { - "name" : "#43: Aaron Sherman", - "y" : 8, - "drilldown" : "Aaron Sherman" - }, - { - "drilldown" : "Alex Daniel", - "name" : "#44: Alex Daniel", - "y" : 8 - }, - { - "drilldown" : "Bob Kleemann", - "y" : 8, - "name" : "#45: Bob Kleemann" - }, - { - "y" : 8, - "name" : "#46: Chenyf", - "drilldown" : "Chenyf" - }, - { - "drilldown" : "David Kayal", - "y" : 8, - "name" : "#47: David Kayal" - }, - { - "drilldown" : "Finley", - "name" : "#48: Finley", - "y" : 8 - }, - { - "name" : "#49: Luis F. Uceta", - "y" : 8, - "drilldown" : "Luis F. Uceta" - }, - { - "drilldown" : "Matt Latusek", - "y" : 8, - "name" : "#50: Matt Latusek" - } - ], - "name" : "Perl Weekly Challenge Leaders" - } - ], - "tooltip" : { - "pointFormat" : "<span style=\"color:{point.color}\">{point.name}</span>: <b>{point.y:f}</b><br/>", - "followPointer" : "true", - "headerFormat" : "<span style=\"font-size:11px\"></span>" - }, - "subtitle" : { - "text" : "Click the columns to drilldown the score breakdown. Last updated at 2019-06-19 10:55:35 GMT" - }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - }, - "borderWidth" : 0 - } - }, "drilldown" : { "series" : [ { - "id" : "Joelle Maslak", - "name" : "Joelle Maslak", "data" : [ [ - "Perl 6", + "Perl 5", 31 ], [ - "Perl 5", + "Perl 6", 31 ], [ "Blog", 4 ] - ] + ], + "id" : "Joelle Maslak", + "name" : "Joelle Maslak" }, { + "id" : "Laurent Rosenfeld", "data" : [ [ "Perl 5", @@ -326,11 +35,10 @@ 15 ] ], - "name" : "Laurent Rosenfeld", - "id" : "Laurent Rosenfeld" + "name" : "Laurent Rosenfeld" }, { - "id" : "Jaldhar H. Vyas", + "name" : "Jaldhar H. Vyas", "data" : [ [ "Perl 5", @@ -341,10 +49,9 @@ 24 ] ], - "name" : "Jaldhar H. Vyas" + "id" : "Jaldhar H. Vyas" }, { - "id" : "Ruben Westerberg", "data" : [ [ "Perl 5", @@ -355,10 +62,10 @@ 21 ] ], + "id" : "Ruben Westerberg", "name" : "Ruben Westerberg" }, { - "id" : "Adam Russell", "data" : [ [ "Blog", @@ -369,42 +76,43 @@ 24 ] ], + "id" : "Adam Russell", "name" : "Adam Russell" }, { - "id" : "Simon Proctor", + "name" : "Simon Proctor", "data" : [ [ - "Perl 6", - |
