Difference between revisions of "User:AperfectBot"

From Geohashing
imported>Aperfectring
(Task scheduling: Move the change history to its own page to reduce clutter.)
imported>Aperfectring
(Tasks Remaining)
Line 21: Line 21:
 
==Tasks Remaining==
 
==Tasks Remaining==
 
These are in rough order of importance
 
These are in rough order of importance
* Update the bot to use the common library for finding users who participated.
+
* Review and possibly improve the fuzzy logic to the library user list function. (ongoing, for continuous improvement)
* Review and possibly improve the fuzzy logic to the library user list function.
+
* Improve transport detection.
* Change the update request page so that it constantly updates old pages.
 
* Add a per-user list of expeditions.  This would be opt-in, and require a format string of some sort.
 
 
* Look into either signing up for access to a server, or convince one of our friendly neighborhood geohashers with a server to let me have access to update and run this, as well as the Notification program, from it.
 
* Look into either signing up for access to a server, or convince one of our friendly neighborhood geohashers with a server to let me have access to update and run this, as well as the Notification program, from it.
 
* Sort the results for each day using an undetermined key to sort on
 
* Sort the results for each day using an undetermined key to sort on

Revision as of 19:13, 15 January 2010

The AI does not hate you, nor does it love you, but you are made out of atoms which it can use for something else.
Eliezer Yudkowsky

This bot is owned by aperfectring. It is an implementation of pywikipediabot, and its job is to maintain the future and recent past planning pages lists. There are future plans for new functionality, such as maintaining per-user lists and creating stub planning pages upon request.

Much Thanks

  • The uses some code stolen from graciously donated by relet, and he also provides source control. We have started to merge some code which we were sharing, to create a common library of useful geohashing wiki functions. We hope these functions will help facilitate easier development of new bots, and also improve the overall quality of all bots which use it.
  • Robyn came up with the original idea, and provided some great input early in its development.
  • Jiml hosted and ran the bot while I moved across the country and scrambled for internet access.
  • All others who helped with the planning and suggestions for improvement.

The bot wouldn't have been completed nearly so quickly, or gotten to be the dumb ape it is without all of you. Thanks.

How it works at the moment I edited this

It looks at Category:Meetup on YYYY-MM-DD for the most recent days, and all days where coords are available, and finds all pages in it which have a title that matches: YYYY-MM-DD lat lon

It also looks at Category:Expedition_planning for all pages matching YYYY-MM-DD lat lon where the date is further in the future than the latest available coordinates.

Go here for information about how it constructs the summary.

The bot takes about 10 minutes to complete one iteration. Most of this time is actually fetching and writing the pages, the actual processing time is rather minimal.

Tasks Remaining

These are in rough order of importance

  • Review and possibly improve the fuzzy logic to the library user list function. (ongoing, for continuous improvement)
  • Improve transport detection.
  • Look into either signing up for access to a server, or convince one of our friendly neighborhood geohashers with a server to let me have access to update and run this, as well as the Notification program, from it.
  • Sort the results for each day using an undetermined key to sort on
  • Let AperfectBot eat bananas

Task scheduling

I will use this section to plan out my time in the evening on tasks. I will probably put in an hour or two of work on most weekdays. Anything from before 2009-06-17 is included for historical purposes. The bot is live! Anything I will be doing from now on is new features, bug fixes, or improvements to output.

2010-01-14

User:Aperfectring/Expeditions is updating with a new format:

|-
|DATE||GRATADD||GRATNAME||PEOPLE||REACHED:[[EXPED|Succeeded]]:[[EXPED|Failed]]:REACHED||LOCATION

With the text before and after the update area, this results in a sortable table of expeditions!

Added some new options: PEOPLE:x - where x is any number - Will display at most x people in the list. Otherwise operates exactly like PEOPLE TRANSICON - Will display icons for all transport options detected. REACHICON - Will display either a green (SUCCESS) or red (FAILURE) arrow icon

USERTEXT is now preserved across runs.

Added ability for multiple users/formats to be specified. See User:Relet/Expeditions for proof. Users, expedition list pages, and formats need to be specified here: User:AperfectBot/User_expedition_lists

2009-12-02

  • I have started work on creating per-user expedition lists. Currently it is making a list for Aperfectring here. The entries of this list are currently generated using the following format, but it is likely to change in the future:
date DATE - gratadd GRATADD - gratname GRATNAME - people PEOPLE - location LOCATION - transport TRANSPORT - reached REACHED:Succeeded:Failed:REACHED - reason REASON - link LINK - exped EXPED - usertext USERTEXT
  • Features:
    • The reached section is replaced first, so it is able to contain other substitutions seamlessly. It is used as follows: REACHED:1:2:REACHED The text in '1' is used on reached coordinates, '2' otherwise.
    • USERTEXT will be preserved across updates of the bot, allowing people to make their own comments about their expeditions.
    • PEOPLE will contain all of the rest of the people who attended the expedition.
    • The use of a format string allows for great flexibility in how the final output is displayed.
    • Expeditions are sorted lexicographically by the expedition page name (YYYY-MM-DD LAT LON). This has the affect of being chronological by date, then pseudo geographical in the following order: Southern hemisphere first, Northern second. Then roughly equator to poles, though there will be some mixing. After that, it will do Western hemisphere first, Eastern second. Then roughly prime meridian to "date line".
  • Caveats and current implementation holes:
    • Hardcoded to only update for Aperfectring.
    • Hardcoded to one specific page to update.
    • Hardcoded to the format noted above.
    • USERTEXT is currently not preserved across updates.
    • The page is completely rewritten each time, which prevents people from having non user list text before or after the user list.

2009-11-03

  • Put the bot into source control
  • Added a getSectionRegex function
  • Updated the getSection* functions to be able to operate on just the top level sections or all subsections with an option
  • Updated the ape to use the common GraticuleDatabase library
  • Updated the ape to use the getSection* functions from the library

Older stuff

Go here to see older change history.

EMERGENCY STOP SECTION

Putting any text beneath the following header will cause the bot to stop running. Please only do so if the bot is REALLY misbehaving.

Distraction Banana