User talk:Paddy3118
RC_vanity_search.py
Sad, but I like to see how my tasks are faring over time:
<lang python> Rosetta Code Vanity search:
How many new pages has someone created?
import urllib, re
user = 'Paddy3118'
site = 'http://www.rosettacode.org' nextpage = site + '/wiki/Special:Contributions/' + user nextpage_re = re.compile(
r'<a href="([^"]+)" title="[^"]+" rel="next">older ')
newpages = [] pagecount = 0 while nextpage:
page = urllib.urlopen(nextpage)
pagecount +=1
nextpage =
for line in page:
if not nextpage:
# Search for URL to next page of results for download
nextpage_match = re.search(nextpage_re, line)
if nextpage_match:
nextpage = (site + nextpage_match.groups()[0]).replace('&', '&')
#print nextpage
npline=line
if '' in line:
# extract N page name from title
newpages.append(line.partition(' title="')[2].partition('"')[0])
page.close()
nontalk = [p for p in newpages if not ':' in p]
print "User: %s has created %i new pages of which %i were not Talk: pages, from approx %i edits" % (
user, len(newpages), len(nontalk), pagecount*50 )
print "New pages created, in order, are:\n ", print "\n ".join(nontalk[::-1])
nextpage = site + '/w/index.php?title=Special:PopularPages'
nextpage_re = re.compile(
r'<a href="([^"]+)" class="mw-nextlink">next ')
data_re = re.compile(
r'^
Sample output on 21:28, 4 June 2009
User: Paddy3118 has created 52 new pages of which 27 were not Talk: pages, from approx 500 edits New pages created, in order, are: Spiral Monty Hall simulation Web Scraping Sequence of Non-squares Anagrams Max Licenses In Use One dimensional cellular automata Conway's Game of Life Data Munging Data Munging 2 Column Aligner Probabilistic Choice Knapsack Problem Yuletide Holiday Common number base conversions Octal Integer literals Command Line Interpreter First-class functions Y combinator Functional Composition Exceptions Through Nested Calls Look-and-say sequence Mutual Recursion Bulls and Cows Testing a Function Select Highest page Ranks for user pages: RANK VIEWS TITLE 102 2442 Monty Hall simulation 106 2294 Knapsack Problem 109 2234 Conway's Game of Life 141 1798 Anagrams 214 1131 Web Scraping 218 1087 Max Licenses In Use 230 1022 Spiral 231 997 One dimensional cellular automata 257 825 Sequence of Non-squares 258 823 Yuletide Holiday 274 762 Column Aligner 314 645 Data Munging 2 318 627 Data Munging 320 623 Probabilistic Choice 322 620 Y combinator 323 614 First-class functions 374 494 Command Line Interpreter 385 446 Functional Composition 403 412 Integer literals 412 404 Mutual Recursion 417 388 Bulls and Cows 438 336 Look-and-say sequence 439 336 Common number base conversions 450 293 Octal 468 250 Exceptions Through Nested Calls 661 75 Select 677 56 Testing a Function >>>
From which I deduce their must be a lot of students out there being set a knapsack like problem ;-)
Sample output on 21:24, 17 June 2009 (UTC)
User: Paddy3118 has created 57 new pages of which 29 were not Talk: pages, from approx 550 edits New pages created, in order, are: Spiral Monty Hall simulation Web Scraping Sequence of Non-squares Anagrams Max Licenses In Use One dimensional cellular automata Conway's Game of Life Data Munging Data Munging 2 Column Aligner Probabilistic Choice Knapsack Problem Yuletide Holiday Common number base formatting Octal Integer literals Command Line Interpreter First-class functions Y combinator Functional Composition Exceptions Through Nested Calls Look-and-say sequence Mutual Recursion Bulls and Cows Testing a Function Select Sort stability Moving Average Highest page Ranks for user pages: RANK VIEWS TITLE 101 2501 Knapsack Problem 102 2499 Monty Hall simulation 108 2309 Conway's Game of Life 137 1876 Anagrams 201 1283 One dimensional cellular automata 214 1162 Web Scraping 220 1114 Max Licenses In Use 226 1073 Spiral 258 844 Yuletide Holiday 259 842 Sequence of Non-squares 271 804 Column Aligner 297 707 Y combinator 310 685 Data Munging 2 311 683 First-class functions 315 666 Data Munging 320 649 Probabilistic Choice 364 525 Command Line Interpreter 377 487 Mutual Recursion 378 480 Functional Composition 391 456 Bulls and Cows 398 447 Integer literals 425 386 Common number base formatting 439 361 Look-and-say sequence 449 320 Octal 458 288 Exceptions Through Nested Calls 518 184 Sort stability 556 146 Testing a Function 577 122 Select 724 4 Moving Average
So in two weeks I've created two new tasks, and the Knapsack Problem has finally moved to become my top viewed task.
Sample output on 07:06, 25 June 2009 (UTC)
I have added no new pages, but I have broken into the top 100 list of page views!!:
Highest page Ranks for user pages: RANK VIEWS TITLE 98 2595 Knapsack Problem 102 2542 Monty Hall simulation 108 2361 Conway's Game of Life 133 1937 Anagrams 199 1312 One dimensional cellular automata 215 1179 Web Scraping 220 1133 Max Licenses In Use 222 1113 Spiral 257 872 Yuletide Holiday 260 870 Sequence of Non-squares 267 829 Column Aligner 296 739 Y combinator 300 720 First-class functions 311 695 Data Munging 2 316 684 Data Munging 320 664 Probabilistic Choice 355 563 Command Line Interpreter 373 519 Mutual Recursion 376 517 Functional Composition 380 496 Bulls and Cows 394 468 Integer literals 418 421 Common number base formatting 435 378 Look-and-say sequence 450 336 Octal 460 305 Exceptions Through Nested Calls 504 214 Sort stability 543 169 Testing a Function 563 146 Select 582 130 Moving Average
I did like writing the story around that Knapsack task.
Vanity Search Updated
After the 4th of July RC updates, My RC Vanity Searcher needed to be updated due to HTML changes. I decided to add a modification, that shows the movement between the order a page was created in, vs the max views order called +/-.
<lang python> Rosetta Code Vanity search:
How many new pages has someone created?
import urllib, re, pdb
user = 'Paddy3118'
site = 'http://www.rosettacode.org' nextpage = site + '/wiki/Special:Contributions/' + user nextpage_re = re.compile(
#r'<a href="([^"]+)" title="[^"]+" rel="next">older ' r'<a href="([^"]+)" title="[^"]+" rel="next"[^>]*>older ' )
newpages = [] pagecount = 0 while nextpage:
page = urllib.urlopen(nextpage)
pagecount +=1
nextpage =
for line in page:
if not nextpage:
# Search for URL to next page of results for download
nextpage_match = re.search(nextpage_re, line)
if nextpage_match:
nextpage = (site + nextpage_match.groups()[0]).replace('&', '&')
#print nextpage
npline=line
if '' in line:
# extract N page name from title
newpages.append(line.partition(' title="')[2].partition('"')[0])
page.close()
nontalk = [p for p in newpages if not ':' in p] nontalk.reverse()
print "User: %s has created %i new pages of which %i were not Talk: pages, from approx %i edits" % (
user, len(newpages), len(nontalk), pagecount*50 )
print "New pages created, in order, are:\n ", print "\n ".join(nontalk)
nextpage = site + '/w/index.php?title=Special:PopularPages'
nextpage_re = re.compile(
#r'<a href="([^"]+)" class="mw-nextlink">next ' r'<a href="([^"]+)"[^>]* class="mw-nextlink"[^>]*>next' )
data_re = re.compile(
r'^Sample output on 12 July 2009
Since the 25th of June I've added two tasks: 'Send an email' and 'Topological (dependency) sort'.
With the new +/- column showing views w.r.t. creation order, you can see that the Knapsack Problem has captured the readers imagination. The Y combinator has a strong showing too.
Is it possible to get views in the last three months rather than total views? That would allow me to discount some of the bias due to date created.
User: Paddy3118 has created 63 new pages of which 31 were not Talk: pages, from approx 600 edits New pages created, in order, are: Spiral Monty Hall simulation Web Scraping Sequence of Non-squares Anagrams Max Licenses In Use One dimensional cellular automata Conway's Game of Life Data Munging Data Munging 2 Column Aligner Probabilistic Choice Knapsack Problem Yuletide Holiday Common number base formatting Octal Integer literals Command Line Interpreter First-class functions Y combinator Functional Composition Exceptions Through Nested Calls Look-and-say sequence Mutual Recursion Bulls and Cows Testing a Function Select Sort stability Moving Average Send an email Topological (dependency) sort Highest page Ranks for user pages: RANK VIEWS +/- TITLE 84 2792 +12 Knapsack Problem 100 2629 +0 Monty Hall simulation 107 2431 +5 Conway's Game of Life 132 2013 +1 Anagrams 199 1368 +2 One dimensional cellular automata 211 1233 -3 Web Scraping 218 1189 -1 Max Licenses In Use 221 1158 -7 Spiral 256 919 -5 Sequence of Non-squares 261 900 +4 Yuletide Holiday 267 866 +0 Column Aligner 281 809 +8 Y combinator 290 780 +6 First-class functions 303 732 -4 Data Munging 2 309 718 -6 Data Munging 315 706 -4 Probabilistic Choice 332 642 +1 Command Line Interpreter 351 598 +6 Mutual Recursion 365 568 +6 Bulls and Cows 366 566 +1 Functional Composition 388 501 -4 Integer literals 407 463 -7 Common number base formatting 418 436 +0 Look-and-say sequence 446 375 -8 Octal 455 347 -3 Exceptions Through Nested Calls 493 248 +2 Sort stability 525 207 -1 Testing a Function 548 186 -1 Select 559 174 +0 Moving Average 703 69 +0 Send an email 725 43 +0 Topological (dependency) sort
Sample output on 24 July 2009
What has happened in the last twelve days?
- Ethiopian Multiplication is newly added and is off to a great start. Editors seem attracted to the challenge. I decided to add this as I was drawn by the simplicity of the algorithm. To make it a better RC task I decided on the restriction that you must create the function using a functions to half, double, and test for even-ness.
- I guess viewers are tired of yet another sort: Topological (dependency) sort still languishes at the bottom.
- I created my first #REDIRECT page: Russian Peasant Multiplication
- Knapsack Problem still continues its rise in ranking (thank you).
- At the top of my table, everything above Sequence of Non-squares has improved its rank. I tried to think of some other thing thats links them, but nothing special comes to mind.
- I am not sure if spiral is unpopular, as it has a lot of views, was my first page ever, but appears seven places down from its original top spot - I remember writing it after creating the Python solution to Zig Zag.
Here's the table:
Highest page Ranks for user pages: RANK VIEWS +/- TITLE 79 2898 +12 Knapsack Problem 97 2707 +0 Monty Hall simulation 106 2490 +5 Conway's Game of Life 131 2059 +1 Anagrams 196 1391 +2 One dimensional cellular automata 208 1257 -3 Web Scraping 216 1207 -1 Max Licenses In Use 220 1182 -7 Spiral 256 936 -5 Sequence of Non-squares 259 915 +4 Yuletide Holiday 269 878 +0 Column Aligner 270 871 +8 Y combinator 285 803 +6 First-class functions 300 744 -4 Data Munging 2 305 733 -6 Data Munging 312 717 -4 Probabilistic Choice 321 678 +1 Command Line Interpreter 331 648 +6 Mutual Recursion 348 614 +6 Bulls and Cows 360 582 +1 Functional Composition 384 525 -4 Integer literals 396 486 -7 Common number base formatting 407 466 +0 Look-and-say sequence 432 410 -8 Octal 450 367 -3 Exceptions Through Nested Calls 479 275 +6 Ethiopian Multiplication 491 255 +1 Sort stability 516 218 -2 Testing a Function 537 200 -2 Select 540 192 -1 Moving Average 669 90 -1 Send an email 676 79 -1 Topological (dependency) sort 99999 0 +0 Russian Peasant Multiplication
Sample output on 6 August 2009
So, what's been moving!
Well I am glad to see that I have to go right down to Sort stability before I see a task that is lower in the rankings than last time. Y combinator has leap-frogged even more of my tasks, from +8 to +11; and Bulls and Cows, and Ethiopian Multiplication are also doing well.
Newly created is First-class Numbers. When reviewing wp:First-class function, There were comments in the talk page about what languages really have FcF. I decided that rather than bring the discussion to RC, I would create a sister task - similar but using numbers and asking examples to compare the numbers solution with the functions solution. I guess people can still get around it, but I hope they follow the spirit of the task.
Highest page Ranks for user pages:
RANK VIEWS +/- TITLE
76 3064 +12 Knapsack Problem
93 2826 +0 Monty Hall simulation
103 2611 +5 Conway's Game of Life
127 2156 +1 Anagrams
195 1442 +2 One dimensional cellular automata
208 1285 -3 Web Scraping
213 1259 -1 Max Licenses In Use
219 1218 -7 Spiral
249 999 +11 Y combinator
259 966 -6 Sequence of Non-squares
261 956 +3 Yuletide Holiday
268 919 -1 Column Aligner
274 861 +6 First-class functions
298 785 -5 Data Munging
301 776 -3 Probabilistic Choice
302 770 -6 Data Munging 2
315 729 +1 Command Line Interpreter
317 721 +7 Bulls and Cows
321 711 +5 Mutual Recursion
350 631 +1 Functional Composition
373 562 -4 Integer literals
393 508 -7 Common number base formatting
398 501 +0 Look-and-say sequence
424 446 -8 Octal
437 427 +7 Ethiopian Multiplication
451 392 -4 Exceptions Through Nested Calls
496 276 +1 Sort stability
499 267 -2 Testing a Function
502 265 +0 Moving Average
529 226 -3 Select
576 160 -1 Send an email
590 146 -1 Topological (dependency) sort
720 25 +1 First-class Numbers
99999 0 -1 Russian Peasant Multiplication
Poly thanks
Thanks but if you needed you see the example to get it clearer... it means the pseudocode is not too much clear:D More over, implemeting Octave solution, I've discovered it's more convenient to keep the higher power first (in the "vectors"), so likely I am going to rewrite the pseudocode ;) ... --ShinTakezou 16:31, 18 June 2009 (UTC)
Ethiopian Multiplication
Chalk one up to your vanity search; Ethiopian Multiplication has been the single biggest landing page for Sunday and Monday this week. There's been a huge influx of traffic to it via StumbleUpon. --Short Circuit 02:13, 25 August 2009 (UTC)
- Yah!! (I hope the traffic is OK on your servers though)?
- Lets hope some stay for a browse around the whole site... --Paddy3118 03:48, 25 August 2009 (UTC)
- According to the analytics the bounce rate for stumbleupon referrals for the last three days is about 70%. So some did stay to look around. --Mwn3d 18:32, 25 August 2009 (UTC)
It is great that people are staying to look around, but I am puzzled? I can't find what is sending people to the Ethiopian Multiplication page on the Web. Any links? --Paddy3118 18:21, 26 August 2009 (UTC)
- http://www.stumbleupon.com/url/rosettacode.org/wiki/Ethiopian_Multiplication --Mwn3d 18:22, 26 August 2009 (UTC)
- That one mention means so many hits? Wow. I thought only /. and reddit had that kind of affect. --Paddy3118 18:48, 26 August 2009 (UTC)
- Well that link is from a while ago. Someone else must have found it and put a link to that SU link somewhere else. I'm not sure how to figure out where though. --Mwn3d 18:56, 26 August 2009 (UTC)
- That one mention means so many hits? Wow. I thought only /. and reddit had that kind of affect. --Paddy3118 18:48, 26 August 2009 (UTC)
Um... I have just seen one of the last pages I created jump to the HEAD of my vanity list, and by a huge margin! After seeing the figures (below), I'm gob-smacked!
RANK VIEWS +/- TITLE 22 7261 +31 Ethiopian Multiplication 71 3276 +11 Knapsack Problem 90 2910 -1 Monty Hall simulation 104 2698 +4 Conway's Game of Life 121 2350 +0 Anagrams 197 1486 +1 One dimensional cellular automata 206 1388 -4 Web Scraping 209 1317 -2 Max Licenses In Use 220 1263 -8 Spiral 235 1112 +10 Y combinator 260 994 +3 Yuletide Holiday 261 989 -8 Sequence of Non-squares 262 983 -2 Column Aligner 272 928 +5 First-class functions 288 836 -6 Data Munging 297 814 -6 Data Munging 2 300 803 -5 Probabilistic Choice 304 794 +7 Bulls and Cows 306 783 -1 Command Line Interpreter 310 772 +4 Mutual Recursion 338 682 +0 Functional Composition 371 605 -5 Integer literals 386 554 -8 Common number base formatting 395 533 -1 Look-and-say sequence 418 473 -9 Octal 443 428 -4 Exceptions Through Nested Calls 466 344 +2 Average/Simple moving average 490 298 -2 Testing a Function 492 297 -1 Sort stability 524 249 -3 Select 529 244 -1 Send an email 562 199 -1 Topological (dependency) sort 666 118 +3 Simple Random Distribution Checker 678 103 +0 First-class Numbers 680 101 +0 Seven-dice from Five-dice 685 87 +1 List Flattening 99999 0 -4 Russian Peasant Multiplication
--Paddy3118 04:28, 25 August 2009 (UTC)