Closed nalbion closed 8 months ago
Some clarification on how this affects OBA:
The end of support for Javascript Google Maps API V2 should only affect the main OBA desktop website (e.g., http://onebusaway.forest.usf.edu/onebusaway-webapp/where/standard/ for our Tampa instance). This is the only UI that uses the main Javascript Google Maps API. The iPhone and Android apps should not be affected, since they use the Google Maps API for the iOS and Android platforms, respectively, which are completely different APIs. The smartphone and feature phone browser UIs aren’t affected because they don’t show a map. This issue will affect all unmodified clones of the main OBA repo on Github (https://github.com/OneBusAway/onebusaway-application-modules), including our Tampa instance. I don’t believe MTA will be affected, since they ditched GWT when modifying their website UI.
The main problem going forward is that there is no official production release of the GWT APIs project that includes support for using GMaps API V3 with the Google Web Toolkit. Here’s the main issue I’ve been following on the official Google GWT Google APIs project (which included support for production support for the V2 Maps API) that outlines the problem: http://code.google.com/p/gwt-google-apis/issues/detail?id=381
Our options to resolve the issue: 1) Use the pre-release of the official GWT Google APIs project that includes support for GMaps API V3 – see http://code.google.com/p/gwt-google-apis/issues/detail?id=381#c53 2) Use a third-party wrapper to access GMaps API V3 via GWT, such as https://github.com/branflake2267/GWT-Maps-V3-Api. More are listed at the Google code issue page above. 3) Remove GWT completely from the OBA website, and use simple Javascript/AJAX for the website UI to directly access the GMaps API V3. From my current understanding of the MTA OBA UI, this is similar to their implementation, so it may just make sense to migrate completely to their website UI. 4) Switch from using Google Maps to using another map provider like OpenLayers and OpenStreetMap tiles. Seems that there is support for using GWT and OpenLayers together: http://stackoverflow.com/questions/2493171/gwt-openlayers-with-openstreetmap-example.
Seems like Option#3 might be the most attractive option with the least amount of risk, especially since we would gain other features that they’ve implemented. There has been some work towards this in terms of using GTFS-realtime feed with MTA UIs, see https://groups.google.com/forum/?fromgroups=#!topic/onebusaway-developers/xm3o47M63kg
GWT is a good idea in theory, but in our experience development with it has been like trying to hit a moving target when integrated with the GMaps API and other libraries, especially with the high learning curve and turnover involved from student to student working on projects. GWT development seems to be a house of cards, and if one of the tools in the chain doesn’t work the whole thing comes crashing down.
On a related note, Google is grandfathering in all existing Google Apps domain accounts. I have two of these on my own for business purposes outside of USF, and received an email saying that existing accounts would remain free, although new accounts would be subject to fees. So, OneBusAway.org should be ok.
Obviously I like option 3. It would force us (all, collectively) to make the nice UI's (and thus the SIRI API as well) we have developed for Bus Time sufficiently general/flexible to meet all of the existing use cases. I believe this would primarily include:
Thanks, Mike
-----Original Message----- From: Sean Barbeau notifications@github.com Date: Mon, 07 Jan 2013 08:05:47 To: OneBusAway/onebusaway-application-modulesonebusaway-application-modules@noreply.github.com Reply-To: OneBusAway/onebusaway-application-modules reply@reply.github.com Subject: Re: [onebusaway-application-modules] Upgrade to GMaps v3 - V2 API dies May 20 2013 (#26)
Some clarification on how this affects OBA:
The end of support for Javascript Google Maps API V2 should only affect the main OBA desktop website (e.g., http://onebusaway.forest.usf.edu/onebusaway-webapp/where/standard/ for our Tampa instance). This is the only UI that uses the main Javascript Google Maps API. The iPhone and Android apps should not be affected, since they use the Google Maps API for the iOS and Android platforms, respectively, which are completely different APIs. The smartphone and feature phone browser UIs aren’t affected because they don’t show a map. This issue will affect all unmodified clones of the main OBA repo on Github (https://github.com/OneBusAway/onebusaway-application-modules), including our Tampa instance. I don’t believe MTA will be affected, since they ditched GWT when modifying their website UI.
The main problem going forward is that there is no official production release of the GWT APIs project that includes support for using GMaps API V3 with the Google Web Toolkit. Here’s the main issue I’ve been following on the official Google GWT Google APIs project (which included support for production support for the V2 Maps API) that outlines the problem: http://code.google.com/p/gwt-google-apis/issues/detail?id=381
Our options to resolve the issue: 1) Use the pre-release of the official GWT Google APIs project that includes support for GMaps API V3 – see http://code.google.com/p/gwt-google-apis/issues/detail?id=381#c53 2) Use a third-party wrapper to access GMaps API V3 via GWT, such as https://github.com/branflake2267/GWT-Maps-V3-Api. More are listed at the Google code issue page above. 3) Remove GWT completely from the OBA website, and use simple Javascript/AJAX for the website UI to directly access the GMaps API V3. From my current understanding of the MTA OBA UI, this is similar to their implementation, so it may just make sense to migrate completely to their website UI. 4) Switch from using Google Maps to using something like OpenLayers and OpenStreetMap tiles. Seems that there is support for using GWT and OpenLayers together: http://stackoverflow.com/questions/2493171/gwt-openlayers-with-openstreetmap-example.
Seems like #3 might be the most attractive option with the least amount of risk, especially since we would gain other features that they’ve implemented. GWT is a good idea in theory, but in our experience development with it has been like trying to hit a moving target, especially with the high learning curve and turnover involved from student to student working on projects. GWT development seems to be a house of cards, and if one of the tools in the chain doesn’t work the whole thing comes crashing down.
I believe current Terms of Service for GMaps API continues to allow free use of API as long as the website is free (i.e., you’re not charging people to access it) and its publicly available (i.e., not on internal network or behind firewall that blocks public access).
On a related note, Google is grandfathering in all existing Google Apps domain accounts. I have two of these on my own for business purposes outside of USF, and received an email saying that existing accounts would remain free, although new accounts would be subject to fees. So, OneBusAway.org should be ok.
Reply to this email directly or view it on GitHub: https://github.com/OneBusAway/onebusaway-application-modules/issues/26#issuecomment-11957337
+1 Time-based predictions work in the OBANYC UI and SIRI APIs when the TDS provides them and the right configuration flags are set. Some of the other issues are documented here: https://github.com/OneBusAway/onebusaway/wiki/UI-Roadmap
@fruminator , From looking at the code: https://github.com/camsys/onebusaway-nyc/blob/master/onebusaway-nyc-webapp/src/main/webapp/js/oba/map/GoogleMapWrapper.js#L212
...it looks like the OBANYC web UI is currently using Google Maps API V3, but with Bing Map tiles?
Is this right?
We use the Google base map for the time being, but we do pull in one set of MTA-hosted tiles that show subway lines. But actually Jeff would need to comment for further details.
-----Original Message----- From: Sean Barbeau notifications@github.com Date: Tue, 08 Jan 2013 06:31:28 To: OneBusAway/onebusaway-application-modulesonebusaway-application-modules@noreply.github.com Reply-To: OneBusAway/onebusaway-application-modules reply@reply.github.com Cc: Michael Fruminmichael@frumin.net Subject: Re: [onebusaway-application-modules] Upgrade to GMaps v3 - V2 API dies May 20 2013 (#26)
@fruminator , From looking at the code: https://github.com/camsys/onebusaway-nyc/blob/master/onebusaway-nyc-webapp/src/main/webapp/js/oba/map/GoogleMapWrapper.js#L212
...it looks like the OBANYC web UI is currently using Google Maps API V3, but with Bing Map tiles?
Is this right?
Reply to this email directly or view it on GitHub: https://github.com/OneBusAway/onebusaway-application-modules/issues/26#issuecomment-11999040
The Bing Maps tiles were in there for an experiment, but are commented out--see lines 242,243. We use the Google tiles, per the ToS.
-Jeff
On Tue, Jan 8, 2013 at 9:41 AM, Michael Frumin notifications@github.comwrote:
We use the Google base map for the time being, but we do pull in one set of MTA-hosted tiles that show subway lines. But actually Jeff would need to comment for further details.
-----Original Message----- From: Sean Barbeau notifications@github.com Date: Tue, 08 Jan 2013 06:31:28 To: OneBusAway/onebusaway-application-modules< onebusaway-application-modules@noreply.github.com> Reply-To: OneBusAway/onebusaway-application-modules < reply@reply.github.com> Cc: Michael Fruminmichael@frumin.net Subject: Re: [onebusaway-application-modules] Upgrade to GMaps v3 - V2 API dies May 20 2013 (#26)
@fruminator , From looking at the code:
...it looks like the OBANYC web UI is currently using Google Maps API V3, but with Bing Map tiles?
Is this right?
Reply to this email directly or view it on GitHub:
https://github.com/OneBusAway/onebusaway-application-modules/issues/26#issuecomment-11999040
— Reply to this email directly or view it on GitHubhttps://github.com/OneBusAway/onebusaway-application-modules/issues/26#issuecomment-11999425.
Jeff Maki http://www.jeffmaki.com @jeffmaki 248.225.4954
Ok, that makes sense.
The Google Maps API you're using is definitely V3, though, right? And there is no cost to MTA to use the Google Maps API per their ToS?
On Tue, Jan 8, 2013 at 10:25 AM, Jeff Maki notifications@github.com wrote:
The Bing Maps tiles were in there for an experiment, but are commented out--see lines 242,243. We use the Google tiles, per the ToS.
-Jeff
On Tue, Jan 8, 2013 at 9:41 AM, Michael Frumin notifications@github.comwrote:
We use the Google base map for the time being, but we do pull in one set of MTA-hosted tiles that show subway lines. But actually Jeff would need to comment for further details.
-----Original Message----- From: Sean Barbeau notifications@github.com Date: Tue, 08 Jan 2013 06:31:28 To: OneBusAway/onebusaway-application-modules< onebusaway-application-modules@noreply.github.com> Reply-To: OneBusAway/onebusaway-application-modules < reply@reply.github.com> Cc: Michael Fruminmichael@frumin.net Subject: Re: [onebusaway-application-modules] Upgrade to GMaps v3 - V2 API dies May 20 2013 (#26)
@fruminator , From looking at the code:
...it looks like the OBANYC web UI is currently using Google Maps API V3, but with Bing Map tiles?
Is this right?
Reply to this email directly or view it on GitHub:
https://github.com/OneBusAway/onebusaway-application-modules/issues/26#issuecomment-11999040
— Reply to this email directly or view it on GitHub< https://github.com/OneBusAway/onebusaway-application-modules/issues/26#issuecomment-11999425>.
Jeff Maki http://www.jeffmaki.com @jeffmaki 248.225.4954
— Reply to this email directly or view it on GitHubhttps://github.com/OneBusAway/onebusaway-application-modules/issues/26#issuecomment-12001412.
Sean J. Barbeau, Ph.D. sjbarbeau@gmail.com 813.244.2067 http://www.linkedin.com/in/seanbarbeau
Actually, looks like there is a cost.
Looks like normal Maps API V3 is free up to 25,000 map loads per day. If you exceed this for 90 consecutive days then the extra fees kick in: https://developers.google.com/maps/faq#usagelimits
Looks like for normal plan the extra fee is $0.50 for every 1,000 excess map loads: https://developers.google.com/maps/faq#usage_pricing
Hard limit for normal plan seems to be 500,000 requests/day (if you look at Google APIs console - https://code.google.com/apis/console/).
Or, you can purchase Enterprise “Maps API for Business” license, which doesn’t seem to have a fixed price (you have to contact Google).
Cost of GMaps API is something we as a community should discuss for OBA as well, and see if this would be an issue for anyone. We could also provide an OpenLayers/OSM tiles option, and let developers configure which one they want. Use of Maps API in OBA seems limited to displaying markers and polylines and geocoding, so I don’t think it would be that difficult to provide an OpenLayers option that imitates this display for elements, and perhaps uses Nominatum for geocoding.
For what it's worth, the Puget Sound instance of OBA currently gets about 1.8k pageviews on the main map page per day. The number is quite low compared to the total daily pageview (~190k) count since most people are just looking at bookmarked stop pages. I'm guessing the number might be different for the NYC BusTime deployment, where the map is the primary interface?
I just found some web traffic projections that HART has done (based on TriMet ridership and traffic on their Transit Tracker, adjusted for HART ridership) and they are currently anticipating around 500 pageviews per day. So they should be way under the Google Maps limit, barring an unexpected explosion of interest and ridership. Only known item in the foreseeable future that might significantly affect this is the launch of BRT service in Tampa later this year.
Another quick GMap ToS fact - looks like advertising (even non-AdSense) either on the map or on the same page as GMap is allowed: https://developers.google.com/maps/faq#ads_allowed
This issue affects the Trip Problem Report admin web page as well as the main landing web page of the OBA desktop web application.
Sample URL for Trip Problem Report web page (not publicly accessible as its behind admin login, but for documentation purposes): http://onebusaway.forest.usf.edu/onebusaway-webapp/admin/problems/trip-problem-report.action?tripId=Hillsborough+Area+Regional+Transit_828405&id=1
Screenshot of Trip Problem Report web page:
There is an official GWT library for Google Maps v3, but it's still in pre-release and lagging behind the latest version (3.11)
https://code.google.com/p/gwt-google-apis/downloads/detail?name=gwt-maps-3.8.0-pre1.zip
According to Google, the Google Maps v2 API will now work until November, and beyond that there will be a wrapper for older apps.
Note: The Google Maps JavaScript API Version 2 was officially deprecated on May 19, 2010. The original deprecation period has been extended from May 19, 2013 until November 19, 2013. As of this date, all applications requesting v2 will be served a special, wrapped version of the v3 API instead. We expect this wrapped version of the API will work for most simple maps, but we strongly encourage you to migrate your code to version 3 of the Maps JavaScript API before this date.
@nalbion Thanks for the info, that's good news!
For reference sake, here's the URL that the above quote is taken from, which I assume will also contain future updates on V2 status:
https://developers.google.com/maps/documentation/javascript/v2/
I recently received the below email from the Google Maps team, regarding the Maps API v2:
Dear Google Maps API Developer, We are contacting you because your email is associated with the Google Maps JavaScript API v2 key being used for the following domains: • onebusaway.forest.usf.edu As you may be aware, JavaScript Maps API v2 was scheduled for shutdown on May 19, 2013. After listening to your feedback we decided to extend the deprecation timeline by six months, to November 19, 2013 to allow more time for migration to v3 of the API. On November 19, 2013 we will deploy a JavaScript wrapper that attempts to automagically turn remaining v2 maps into v3 maps. Though we expect this wrapper to work for most simple maps, we cannot guarantee that your maps will continue to function. We therefore highly recommend that you migrate to v3 before November 19. The good news is that Google Maps JavaScript API v3 is more robust and feature rich than v2, and we’ve written a guide to assist the migration. Sincerely, Google Maps API Developer Relations
@maxgano Is Puget Sound running the new Maps API v3 site now? Do you have an idea when this will be available for the rest of the OBA community to use? We'd like to get it deployed in Tampa prior to Nov. 19th in case there are any problems.
I'm checking to see if we've gotten the same email here in Atlanta, but I am guessing it is coming if not. So @maxgano I second that request.
Hi guys, I am going to defer this answer to Jamie Harris-Whitesell, the PM for that project. I can say that we have not yet deployed the new version of the webapp as we have run into a number of issues in regards to the xwiki dependency. I noticed the thread here on that topic a couple of weeks ago and have forwarded that info to Jamie and team as well. Not sure where they are.
I am kind of flabbergasted that it is being considered to (re)develop the core OBA map-based UI when OBANYC has such a nice map-based UI. And, to be clear, activating the OBANYC map UI would in no way preclude making the original OBA API available. C'mon people. On Oct 23, 2013 12:51 PM, "Max Gano" notifications@github.com wrote:
Hi guys, I am going to defer this answer to Jamie Harris-Whitesell, the PM for that project. I can say that we have not yet deployed the new version of the webapp as we have run into a number of issues in regards to the xwiki dependency. I noticed the thread here on that topic a couple of weeks ago and have forwarded that info to Jamie and team as well. Not sure where they are.
— Reply to this email directly or view it on GitHubhttps://github.com/OneBusAway/onebusaway-application-modules/issues/26#issuecomment-26922231 .
The good news is that we're still running Maps API v2 in Tampa as part of the current Core, and nothing has imploded yet. All previous functionality seems to be intact, so Google's wrapper mapping v2 requests to v3 internally seems to be working well, at least at this point.
Long term, though, we should definitely still transition to v3, as I can't imagine that Google will continue to put a lot of work into the v2 wrapper.
Looks like Sound Transit is now live with their update of the web app to v3: https://github.com/SoundTransit/soundtransit-rds/tree/master/OBA_Webapp_Upgrade
I haven't had a chance to test this yet, but from @kariwatkins 's student Tushar from Georgia Tech's experience it looks like Maven is no longer used to build this project. I'm assuming its a normal web app you'd import into Eclipse.
We have noticed the following issues with the v2 wrapper:
Main view
Stop View
@nalbion did you see these issues on pugetsound.onebusaway.org? Or your own local deployment? If pugetsound.onebusaway.org, then these issues are with Puget Sound's new Google Maps API v3 version of the OBA web app: https://github.com/SoundTransit/soundtransit-rds/tree/master/OBA_Webapp_Upgrade
Looks like there is some work still going on there, in the last 10 minutes I got two different versions of the Puget Sound home page.
I can't replicate the "multiple popups," "link back to stop on map," or "add bookmark" issues you list above on tampa.onebusaway.org (which is still the old OBA web apps project, and using the v2 wrapper supplied by Google).
@barbeau What different versions of the Puget Sound home page did you see?
@philtapia Here's the current view:
...I don't have a screenshot of the old view, but it looked closer to this (our Tampa OBA website), with the OBA logo not cut off and a third column:
@barbeau Ok thanks, yes the screenshot you posted of the 'current view' is what is expected.
@philtapia @maxgano Does Sound Transit still plan to merge the website improvements back into the OBA Core project? If so, do you have an expected timeline?
Hello all,
Yes, Sound Transit will merge the updates back into the core project. I am confirming with the development team as to when we can accomplish this and will get back to you. Thank you for the reminder.
Thanks @jwhitesell, that's great news! I'm cc'ing @haneys from HART so they are aware of this for responses to questions about their RFP.
@jwhitesell Just wanted to touch base with you again on this issue. Any timeline on merging the Sound Transit improvements to OneBusAway website to remove Google Web Toolkit and update to Maps API v3?
I assume this must have long since been resolved with the ACTA web app UI
https://developers.google.com/maps/documentation/javascript/v2/basics "Note: The Google Maps JavaScript API Version 2 has been officially deprecated as of May 19, 2010. The V2 API will continue to work until May 19, 2013. We encourage you to migrate your code to version 3 of the Maps JavaScript API."
http://code.google.com/p/gwt-google-maps-v3/ "This project will soon be merged into gwt-google-apis and hence is depricated"
http://code.google.com/p/gwt-google-apis/wiki/MapsFAQ#How_can_I_use_GWT_with_Maps_API_3.0? "As of the gwt-maps-1.1 release, the current bindings are only compatible with the Maps v2 APIs. You can use JSNI methods to interface with the Maps v3 API"