Difference between revisions of "User:Aperfectring/Notification"

From Geohashing
imported>Aperfectring
(New page: == Notification program discussion == This section will be used both for my development notes on the notification program mentioned [http://wiki.xkcd.com/geohashing/User_talk:Robyn#An_Ide...)
 
imported>Aperfectring
(Notification program discussion)
Line 1: Line 1:
== Notification program discussion ==
+
= Notification Program =
  
This section will be used both for my development notes on the notification program mentioned [http://wiki.xkcd.com/geohashing/User_talk:Robyn#An_Idea_for_a_Tool here], and for suggestions people have for the programPlease be sure to sign your responses so I can contact you if I need more information --[[User:Aperfectring|aperfectring]] 21:20, 27 August 2008 (UTC)
+
This page is to describe the implementation and testing of the notification program. For discussion, please use the Talk pageCredit goes to [[User:Robyn|Robyn]] on the original idea.
  
==== Notification Criteria ====
+
== Current Implementation ==
I need to set up a standard for defining a notification request.
+
The current implementation is based off of the tenths digit of the latitude and longitude for the area(s) notification should be generated forThis is your section IDTake the tenths digit of the latitude, multiply it by ten, and add the tenths digit of the longitude.
* Should be a human readable plain text file
 
* Should be easily parsed by a program
 
* Should be conciseA brief description of an area is easier to understand and change than a complex one.
 
* Possible descriptions of notification areas:
 
** Center point, distance, and graticule for notification.
 
*** Pros: Easy to describe
 
*** Cons: Plausible to compute, but not if the list of points gets large
 
** Numbered part of a graticuleThe graticule is divided into 100 parts, boundaries are on the tenths of degrees.
 
*** Pros: Easy to compute. If a GUI is provided this can be very easy to use.
 
*** Cons: Can be a bit complex to understand and pick points without a gui.
 
** A polygon described by points, and a graticule for notification.
 
*** Pros: Can give the most accurate description of an area, say for if a hash is on land
 
*** Cons: Can be very difficult to compute.
 
  
==== How to notify ====
+
e.gIf your coordinates were 26.026599°, -80.196111° then your "notify me" number would be 01. With 26.324963°, -80.845496° it would be 38.
Please update this list with requests for how a user would be notified.
 
* Printout from the program
 
* A template on the wiki
 
* E-Mail
 
* Other suggestions here
 
 
 
=====Idea of how it would work=====
 
 
 
I envisioned that the user would create a text file with lines of the form:
 
 
 
lat long min min km
 
 
 
:59 -139 59 0 3  
 
:54 -131 4 50 10
 
:49 -123 11 7 10
 
 
 
That is asking to be notified of points falling within 3 km of N59 59' W139 00' (the bit of that graticule in BC), points falling within 10 km of N54 04' W131 50 (the bit of that graticule on land), and within 10 km of my house. I would definitely want e-mail notification. You register to be informed if your numbers come up, and then go about your daily life.
 
 
 
Thinking about that, I realize that calculating radii of coordinates takes a lot of processing power, so perhaps we just divide a graticule into some number (64?) squares, and you just specify which squares you care about. The numbering on the squares could be reversed and flipped at the equator and 0 meridian so that any one set of coordinates fell in the same numbered square all over the world. There could be an interface that overlays the numbered grid on the graticule so you can choose your squares. If you want to get fancy there could be a graphical interface where you choose your graticule, click on the squares you want, then fill in the 'description' and e-mail address.
 
 
 
You would just specify:
 
 
 
:email lat long square description
 
:user@isp.org 49 -123 53 Robyn's house
 
  
The program only need look at the 'square' number, the rest is for reporting. You send your list in and then every Dow Jones opening the program
+
You can also use this table as a reference.  The coordinates for W-30 will all notify the same section ID on the same day, and the coordinates for non-W-30 will notify another (possibly different than W-30) section IDThe table is not intended to be placed on top of a graticule and give a reference for the coordinates.  If you have any confusion on how to determine your section IDs, contact me.
:1) calculates which square the coordinates fall in (astonishingly easy)
 
:2) finds all the users who requested notification for that square
 
:3) sends them an e-mail saying "Today's coordinates for the '''49 -123''' graticule look like they are near '''Robyn's house'''.
 
 
 
If any of this isn't clear, ask me. Tell me what the hard part is, if there is one, and I can come up with an alternate idea. -[[User:Robyn|Robyn]] 22:01, 27 August 2008 (UTC)
 
 
 
Distance between two points on a globe doesn't really take all that much processing power, but it wouldn't scale all that wellIf we were to go about this by dividing up the graticule into parts, I would suggest 100 parts, and the boundaries would be on the tenths of degrees.  If we were to use a graphical setup, I would suggest it being an extension to the mapping tool we already have. --[[User:Aperfectring|aperfectring]] 22:17, 27 August 2008 (UTC)
 
  
 
{| style="border-top:1px solid green; border-right:1px solid green; border-bottom:2px solid green; border-left:1px solid green;" border="1" cellpadding="5" cellspacing="0"
 
{| style="border-top:1px solid green; border-right:1px solid green; border-bottom:2px solid green; border-left:1px solid green;" border="1" cellpadding="5" cellspacing="0"
Line 213: Line 169:
 
|}
 
|}
  
e.gIf your coordinates were 26.026599°, -80.196111° then your "notify me" number would be 01With 26.324963°, -80.845496° it would be 38.
+
== Testing Effort ==
 +
=== Rules for participation ===
 +
All of these rules are not hard and fast laws, but more of I would really appreciate you to follow them.
 +
* Notify me (email or IRC) if you see any notification problemsThese include:
 +
** Getting a whole lot more information in your e-mail than what is listed below.
 +
** Getting a notification when the coordinates don't match your section ID.
 +
** Not getting a notification when the coordinates do match your section ID.
 +
** The coordinates in the e-mail do not match the actual coordinates for the day.
 +
* Make suggestions on improving the systemIf there is a quirk of the system which you don't like, let me know!
 +
* Please don't blame me if the coordinates in the notification send you to a non-official location.
  
I have a prototype which does everything but send the actual mail message to its destination.  Currently it will only notify about the current day's (or the next day's for east of -30) hash being near a specific point.
+
=== How to join the effort ===
 +
Send an e-mail to the address specified later in this section with the following information:
  
That's awesome. Do you want some test data for it to watch? It could put the notifications on my user page or something. -[[User:Robyn|Robyn]] 03:09, 30 August 2008 (UTC)
+
* Latitude of the grat.
 +
* Longitude of the grat.
 +
* Section ID (described above)
 +
* E-mail address
 +
* Extra notes to include in the notification.
  
Well, right now it will only put out messages to the command line when something matches.  I have been using some basic test data to verify it works as I expect it to, and it seems to so far. I plan to try and implement the mailing part tomorrow, and after that I will ask for some people to provide test data.
+
It would be nice, though not necessary, to put it into this format:
 +
26 80 37 youraddress@someplace.com the mall
  
This project looks very interesting and I currently can think of nothing to improve the basic idea or your thoughts. What I'd like to know is, are you still working on this or has the project died? I have no programming skills, so I don't know how difficult it is. [[User:Danatar|Danatar]] 18:25, 23 September 2008 (UTC)
+
The e-mail will come back as follows:
 +
The 26, 80 graticule is near the mall 26.3791180901449 80.7210165649848
  
I am still working on this project.  However, since work has been busy recently, I haven't had much time to get to this. I should get back to it in the next couple of weeks. --[[User:Aperfectring|aperfectring]] 18:33, 23 September 2008 (UTC)
+
The geohashing notifications e-mail address is those two words with no space @gmail.com.
  
Hi [[User:Aperfectring|aperfectring]], I was wondering how this is going? It is a wonderful idea. Since I still have trouble uploading my photos I don't think I can be much use to you, but if you'd like a Guinea pig to test things on, I'm more than willing! [[User:Kate|Kate]] 01:31, 25 October 2008 (UTC)
+
I have to add all of these entries by hand, so allow for the fact that it may take me a couple days to get your entry in.
  
I have gotten a prototype which will e-mail out a notification.  However, the only way I have gotten it to work prevents me from being able to distribute working source code (it has my gMail u/p in plain text).  When I get home from work today, I will see what I can do about getting a new gMail account which I will send this notifications from.  This will solve multiple problems:
+
== Future Enhancements ==
 
+
=== How to notify people ===
1. People will get an e-mail from a person whose name is "Geohashing Notification" (weird, I know).
+
* E-Mail - Implemented
 
+
* Printout from the program - Implemented
2. I would be willing to publish (in an obscure fashion to prevent spam) the e-mail address here for people to subscribe to the service.
+
* A template on the wiki
 
 
3. If I forget to scrub the source of password information before sending a version out, my own personal e-mail address/pass will not be compromised.
 
 
 
I will put another post up here with how to subscribe when I am ready.  Hopefully it won't be too long now! --[[User:Aperfectring|aperfectring]] 17:50, 25 October 2008 (UTC)
 

Revision as of 21:17, 25 October 2008

Notification Program

This page is to describe the implementation and testing of the notification program. For discussion, please use the Talk page. Credit goes to Robyn on the original idea.

Current Implementation

The current implementation is based off of the tenths digit of the latitude and longitude for the area(s) notification should be generated for. This is your section ID. Take the tenths digit of the latitude, multiply it by ten, and add the tenths digit of the longitude.

e.g. If your coordinates were 26.026599°, -80.196111° then your "notify me" number would be 01. With 26.324963°, -80.845496° it would be 38.

You can also use this table as a reference. The coordinates for W-30 will all notify the same section ID on the same day, and the coordinates for non-W-30 will notify another (possibly different than W-30) section ID. The table is not intended to be placed on top of a graticule and give a reference for the coordinates. If you have any confusion on how to determine your section IDs, contact me.

Long *.9* *.8* *.7* *.6* *.5* *.4* *.3* *.2* *.1* *.0*
Lat
*.9* 99 98 97 96 95 94 93 92 91 90
*.8* 89 88 87 86 85 84 83 82 81 80
*.7* 79 78 77 76 75 74 73 72 71 70
*.6* 69 68 67 66 65 64 63 62 61 60
*.5* 59 58 57 56 55 54 53 52 51 50
*.4* 49 48 47 46 45 44 43 42 41 40
*.3* 39 38 37 36 35 34 33 32 31 30
*.2* 29 28 27 26 25 24 23 22 21 20
*.1* 19 18 17 16 15 14 13 12 11 10
*.0* 09 08 07 06 05 04 03 02 01 00

Testing Effort

Rules for participation

All of these rules are not hard and fast laws, but more of I would really appreciate you to follow them.

  • Notify me (email or IRC) if you see any notification problems. These include:
    • Getting a whole lot more information in your e-mail than what is listed below.
    • Getting a notification when the coordinates don't match your section ID.
    • Not getting a notification when the coordinates do match your section ID.
    • The coordinates in the e-mail do not match the actual coordinates for the day.
  • Make suggestions on improving the system. If there is a quirk of the system which you don't like, let me know!
  • Please don't blame me if the coordinates in the notification send you to a non-official location.

How to join the effort

Send an e-mail to the address specified later in this section with the following information:

  • Latitude of the grat.
  • Longitude of the grat.
  • Section ID (described above)
  • E-mail address
  • Extra notes to include in the notification.

It would be nice, though not necessary, to put it into this format: 26 80 37 youraddress@someplace.com the mall

The e-mail will come back as follows: The 26, 80 graticule is near the mall 26.3791180901449 80.7210165649848

The geohashing notifications e-mail address is those two words with no space @gmail.com.

I have to add all of these entries by hand, so allow for the fact that it may take me a couple days to get your entry in.

Future Enhancements

How to notify people

  • E-Mail - Implemented
  • Printout from the program - Implemented
  • A template on the wiki