coders4help / volunteer_planner

This repository hosts the code for a volunteer planning system, a platform to schedule shifts of volunteers. It is used by volunteer-planner.org.
GNU Affero General Public License v3.0
91 stars 50 forks source link

Remove dependency on ajax.googleapis.com #319

Closed klinger closed 2 years ago

klinger commented 8 years ago

VP does need javascript ajax.googleapis.com to work. This dependency should be removed.

Steps:

Why is it important?

leodabbler commented 8 years ago

I share these concerns

derhuerst commented 8 years ago

There is a certain point in CDNs like ajax.googleapis.com, which is performance. In many of the cases a visitor already visited another website with the same library, so it doesn't need to be loaded at all. In this case DNS will already be resolved.

derhuerst commented 8 years ago

We could use cdnjs for all libraries to reduce the number of round trips when loading VP.

leodabbler commented 8 years ago

I must admit that I have to relativize my own arguments a little. I think that uptime isn't really an issue as the major CDNs are surely much more reliable than our server(s) ever will be. And tracking will not take place as long as requests are satisfied from the user's browser cache. However, we should be aware of whether the URLs contain data that make it easier to track a certain user.

derhuerst commented 8 years ago

@leodabbler

However, we should be aware of whether the URLs contain data that make it easier to track a certain user.

Tracking is indeed a valid point, even if there is no idintifying piece of information in the URL. There still is fingerprinting.

The question is: Are – in this specific case – better privacy and better security worth sacrificing performance and dev comfort?

klinger commented 8 years ago

At the refugee hackathon some people said that they have to hide that they volunteer in the field of refugee help (their example were smaller villages in some parts of germany where you will suffer negative social consequences if someone thinks you take part in such "left wing" activities).

IMHO: Up to this year a larger part of the people working on topics concerning refugees were very aware of tracking issues (I think now most of the helpers dont care that much, because the helpers are often much older and not so much working on political change and more from the humanitarian communities).

Another aspect: Activities like helping people who want to cross borders can be considered illegal (depending on law and current interpretation on the law/public opinion). People may want to use VP to organize shifts for giving out food, maps, .. - every bit of privacy helps here.

This does answer @derhuerst question - but my preferred answer is: yes its worth it.

Doca commented 8 years ago

To be honest...this is a bit of a paranoia! Why should some external cdn track refugee helpers? One point for me is local dev. External libraries used to slow down local dev because of too many request from the same client. But this would be another ticket

klinger commented 8 years ago

Sorry, I am not yet convinced @Doca. I understand all the advantages of CDN (caching, maybe faster delivery, ..) but there are some valid concerns too - and "paranoia" isnt the best word for this. My mindset is quite good explained here: http://wonko.com/post/javascript-ssl-cdn

But there are also some other concerns (like "may not be used in countries under (US) export restriction laws like Syria"), for example
http://www.sitepoint.com/7-reasons-not-to-use-a-cdn/

klinger commented 8 years ago

Reopened, only low priority