Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate help.openstreetmap.org from OSQA to static html archive #149

Open
simonpoole opened this issue Feb 21, 2017 · 83 comments
Open

Migrate help.openstreetmap.org from OSQA to static html archive #149

simonpoole opened this issue Feb 21, 2017 · 83 comments
Labels
help-wanted Issues where help is needed to implement them

Comments

@simonpoole
Copy link

ASKBOT is an actively maintained fork of qsqa (that was last worked on something like 5 years ago), see:
https://github.com/ASKBOT/askbot-devel and https://askbot.com/

If we want to continue to run our own Q&A site migrating would make sense and would likely address many of the issues we have with QSQA (not just that it is abandonware). The alternative would be to give up running our own system and move to stackexchange, which has IMHO some downsides including loosing the content I believe.

Other issues to consider:

  • while ASKBOT still works with mysql, they support postgres better, I assume that is OK with us in any case?
  • there is, for unfathomable reasons, no off the shelf migration script/facility, this implies that some coding is likely to be involved. Potentially however the people as ASKBOT would be willing to do this for a reasonably small some of money and that would help everybody using QSQA..

Comments @woodpeck @systemed and anybody else answering questions on help?

@tomhughes
Copy link
Member

If it's a fork I'm surprised the database can't just be migrated or have their been schema changes on the OSQA side since the fork?

@simonpoole
Copy link
Author

simonpoole commented Feb 21, 2017

The later probably not, and I wouldn't rule out that we could migrate the mysql DB and then migrate to Postgres. From reading the support forums it is not quite clear what the issue is, but I'll dig a bit more.

This http://askbot.org/doc/upgrade.html may be part of the problem.

@EdLoach
Copy link

EdLoach commented Feb 21, 2017

Sounds sensible to move to something that is actively maintained if it isn't too difficult to do.

@woodpeck
Copy link
Contributor

OSQA works well enough for me, the glitches that are there don't bother me. I have never used Askbot, it doesn't exactly look like there's a huge developer community behind it apart from the company who runs it - will anything remain if their business tanks? I don't mind staying with OSQA but I don't mind switching either. If that should mean losing our content I think that wouldn't even be too bad, many the answers in OSQA are outdated. We count pull a read-only static image from OSQA for reference purposes and copy over relevant stuff when a question pops up... plus a reboot would create a fair karma playing field where you don't have this woodpeck guy with twice as many karma points as the next contender.

@tomhughes
Copy link
Member

@woodpeck problem is that I need to upgrade that machine to 16.04 at some point but I have no confidence OSQA won't break (it did when we went to 14.04 and we had to patch it).

@SomeoneElseOSM
Copy link

If it makes sense to move (and I can see why there would, given the issues we had and to some extent still have), I don't see a particular problem with doing so.

There are some "old answers" that are worth preserving, but bluntly some sort of static HTML would work for those. Many more old answers "were correct ages ago" but now no longer are.

I don't think that a "flattening" of user reputation would be a problem either.

@SomeoneElseOSM
Copy link

I've been asked to add a link to https://wiki.openstreetmap.org/wiki/Talk:Help.openstreetmap.org#Migration_QSQA_-.3E_ASKBOT here, but the content of the message is small enough to post in full:

"Sounds quite good for me. However, if we are migrating to anywhere we rather should think about how to solve the issue of outdated answers. Just deleting the whole thing every 7 years is a waste. There ARE many still good answers (yes, also much irrelevant or even wrong answers nowadays) and I try to take care of them (updating, organizing) as good as possible. I also would like to have incoming link not to be broken if possible (yes, setting it up as static html clone might work). Regarding the "outdated" problem, also see the section above. Regarding possible Karma flattening: that is likely no problem. --Aseerel4c26 (talk) 20:04, 21 February 2017 (UTC)"

@scaidermern
Copy link

Keeping good questions/answers is certainly a good idea. We should make sure people are still able to find them via search engines.

@woodpeck
Copy link
Contributor

woodpeck commented Mar 2, 2017

Assuming for a moment that copying over part but not all of existing Qs&As is possible. perhaps we could share the load of judging which questions/answers to keep and which to kill by resetting all scores to 0, and then asking everyone to look through stuff and upvote what they think should be kept...

@scaidermern
Copy link

Yes. Maybe we can go through the top 50 questions here and decide which ones to keep: https://help.openstreetmap.org/questions/?sort=mostvoted

If they can't get migrated maybe we could still copy'n'pasting the question and 1-2 good answers and then mark them as community wiki.

@pnorman
Copy link
Collaborator

pnorman commented Mar 3, 2017

I think moving off of qsqa is the only reasonable option given it's unmaintained nature and problems that have required patching, so it's only a question of if askbot the best option.

There is information on migrating, so it's just a question of how far back the migrations go.

@grischard
Copy link
Collaborator

The Wireshark project solved this by simply archiving their osmqa site.

@tomhughes
Copy link
Member

The problem is that I need to upgrade the machine and doing so will almost certainly break OSQA meaning that even running it in RO mode is likely to be hard.

@simonpoole
Copy link
Author

@tomhughes @gravitystorm @zerebubuth this would seem like a fairly self-contained activity that could be farmed out to an interested person from the wider community that wants to help. Again objections to raising this on the a suitable mailing list (I'm pushing a bit because besides the discussed issues, we should be fixing the gravatar support in some way from a data protection pov, and it doesn't make sense to do this in the old unsupported code).

@tomhughes
Copy link
Member

If you can find somebody that can figure out how to migrate the data then sure.

I actually have a chef branch where I started work on code to install and manage askbot.

@RobJN
Copy link

RobJN commented Feb 18, 2018

Is this any help?
https://gist.github.com/cholin/171898332d63afb8371c

@gravitystorm gravitystorm changed the title Migrate help.openstreetmap.org from QSQA to ASKBOT Migrate help.openstreetmap.org from OSQA to ASKBOT Feb 26, 2018
@nebulon42
Copy link

How big is the MySQL database? Can one get access to a dump?

@tomhughes
Copy link
Member

It's postgres, not mysql. Ignoring the (vast) session table it looks like there is a little over 100Mb in the tables.

If you're volunteering to attempt a conversion then we could probably come to an arrangement to make it available, subject to appropriate agreements around safeguarding any private data.

@nebulon42
Copy link

nebulon42 commented Mar 21, 2018

I know I shouldn't because I have too many projects already, but somehow this interests me. :)
So let's say I volunteer to attempt a conversion without any commitment to an ETA. But without trying it's all theory and if not successful there might be at least lessons learned for the next attempt.
I'm fine with setting up a NDA or something similar. Being part of CWG might help already though there are no written agreements of course.

@slachiewicz
Copy link

Maybe we can try with Discourse - more active development also Postgress and Ruby based.
https://github.com/discourse/discourse/blob/master/docs/INSTALL.md

@ppKrauss
Copy link

Hi, about @slachiewicz's suggestion,

Maybe we can try with Discourse ...

See meta.discourse/porting-from-askbot-to-discourse ... Seems that the major investment for us is to enhance this embrionary adaptation.

@tomhughes
Copy link
Member

Discourse is a forum (or a replacement for forums) not a Q+A site.

That is kind of evident in the fact that it comes from one of the founders of Stack Overflow and was specifically designed to address a different use case...

@slachiewicz
Copy link

As you can see @ppKrauss in the repository, you can boast a large and active number of migration scripts https://github.com/discourse/discourse/tree/master/script/import_scripts

@simonpoole
Copy link
Author

@ppKrauss @slachiewicz pls no. While discourse may have its merits as a forum replacement (just that I've never found any) it is really completely at odds with what the help site is supposed to be doing (as @tomhughes has said).

@ppKrauss
Copy link

Some news about our options: meta.discourse community's positions and suggestions.

@pnorman
Copy link
Collaborator

pnorman commented Jan 14, 2019

So, I had a look at AskBot looking at testing a conversion.

I can't recommend it because we'll have the same problems as now.

All versions of AskBot rely on Django versions that were released 3-4 years ago and are EOL. The commit activity on its repository is minimal.

Keeping OSQA on a machine running 16.04 14.04! is not a long-term option. Running Django 1.8 which has stopped getting security patches is also not a long-term solution.

@slachiewicz
Copy link

As workaround maybe pack all Django OSQA stuff to Docker?

@boxydog
Copy link

boxydog commented Jan 16, 2024

The maintainer of askbot (the modern descendant of osqa) said: "Also I can help you migrate from OSQA if you were interested."

So if someone wants to reach out, that is a possible direction.

I added continuous integration tests to askbot (PR). It currently has 670 unit tests, running on python 3.11.7 on Ubuntu 22.04, so it is likely in better shape than I thought yesterday.

@matkoniecz
Copy link

Sounds like replacement by static HTML site was done instead and this got wontfixed.

From looking at https://community.openstreetmap.org/t/archiving-of-help-openstreetmap-org-1st-march-2024/108483

@grischard grischard changed the title Migrate help.openstreetmap.org from OSQA to Discourse Migrate help.openstreetmap.org from OSQA to static html archive Feb 6, 2024
@grischard
Copy link
Collaborator

@matkoniecz thanks, I've edited the title

@boxydog
Copy link

boxydog commented Feb 6, 2024

Seems too bad that there's no place to upvote good questions and good answers, but I understand the desire to just get something done for open discussions.

@SomeoneElseOSM
Copy link

Seems too bad that there's no place to upvote good questions and good answers,

Discourse does support this. It's not 100% (see e.g. https://community.openstreetmap.org/t/archiving-of-help-openstreetmap-org-1st-march-2024/108483/6 ) but it is arguably "good enough".

@boxydog
Copy link

boxydog commented Feb 6, 2024

Seems too bad that there's no place to upvote good questions and good answers,

Discourse does support this. It's not 100% (see e.g. https://community.openstreetmap.org/t/archiving-of-help-openstreetmap-org-1st-march-2024/108483/6 ) but it is arguably "good enough".

I appreciate the link, and I have no suggestions, and this looks like a done deal.

However, that thread shows that a lot of disagreement about whether that functionality is good enough, and suggests perhaps the new site won't have an effective upvoting Q&A functionality. I'd be happy to be wrong. I have no horse in this race.

@cellio
Copy link

cellio commented Feb 6, 2024

Codidact is still an option if folks want, either on our network or self-hosted. (Our self-hosting assistance has gotten much better since that comment I left three years ago.) Q&A (plus articles and you can add other post types), voting, lots of available customization, FOSS -- we're happy to discuss your needs if you're interested. One of our communities, as an example: https://software.codidact.com/ . I am trying to be a good github citizen and don't want to spam.

@grischard
Copy link
Collaborator

Seems too bad that there's no place to upvote good questions and good answers,

Discourse does support this. It's not 100% (see e.g. community.openstreetmap.org/t/archiving-of-help-openstreetmap-org-1st-march-2024/108483/6 ) but it is arguably "good enough".

I appreciate the link, and I have no suggestions, and this looks like a done deal.

However, that thread shows that a lot of disagreement about whether that functionality is good enough, and suggests perhaps the new site won't have an effective upvoting Q&A functionality. I'd be happy to be wrong. I have no horse in this race.

I think there's broad consensus on the discourse plugin being not quite as good as OSQA or its forks and alternatives. Ultimately, it's about retiring an antique piece of software, and centralising on one platform to save sysadmin energy and time.

If volunteers are willing to help, any plan would have to include setting up the alternative as a new service in chef, running a migration from osqa to it, and maintaining the new platform.

@boxydog
Copy link

boxydog commented Feb 6, 2024

I think there's broad consensus on the discourse plugin being not quite as good as OSQA or its forks and alternatives. Ultimately, it's about retiring an antique piece of software, and centralising on one platform to save sysadmin energy and time.

If volunteers are willing to help, any plan would have to include setting up the alternative as a new service in chef, running a migration from osqa to it, and maintaining the new platform.

That makes sense, thanks.

I wonder if @evgenyfadeev would be willing to comment on this. He is maintaining ASKBOT, a modern fork of OSQA, and said "I can help you migrate from OSQA if you were interested.. I maintain and support some Q&A sites and the latest code is used in production." But, I don't know him or what he's actually offering.

@simonpoole
Copy link
Author

The ASKBOT avenue was explored years ago, just as trying to find volunteers that would run it. There was never any offers forthcoming and at one point you need to draw a line.

@evgenyfadeev
Copy link

Hi @simonpoole fair enough. I did not see this message years ago;). If you wish to migrate, it can be done. Is the Q&A plugin in discourse fully satisfying your needs in a Q&A app?

@simonpoole
Copy link
Author

Hi @simonpoole fair enough. I did not see this message years ago;). If you wish to migrate, it can be done. Is the Q&A plugin in discourse fully satisfying your needs in a Q&A app?

See #149 (comment)

#149 (comment)

and a number of other posts for more context. In any case, doubts about continuing maintenance were just half of the issues, as I already pointed out despite repeated attempts we were not able to find any volunteers to actually support running the site.

@evgenyfadeev
Copy link

@simonpoole If there were funding for ongoing support and interest from your organization, I will take on this and the migration would be free.

@Firefishy
Copy link
Member

Is the Q&A plugin in discourse fully satisfying your needs in a Q&A app?

Ref

Some of these are due to the Q&A plugin been disabled due to an upstream change. It was re-enabled. Q&A plugin improvements / fixes / issues should be reported upstream https://meta.discourse.org/t/discourse-post-voting/227808

@matkoniecz
Copy link

matkoniecz commented Feb 25, 2024

Solved: appears to be done by this specific user

Are reposts of questions like https://community.openstreetmap.org/t/why-is-uploading-gps-traces-considered-harmful/109718 done as part of that migration? Or is it done by users themselves?

Note how answers solving questions were not copied

@pnorman
Copy link
Collaborator

pnorman commented Feb 25, 2024

There is no migration of questions and answers planned. If we were to consider it someone would have to volunteer to do the coding and testing work.

@Firefishy
Copy link
Member

help.openstreetmap.org login is now disabled. The login session table has also been cleared.

@pabs3
Copy link

pabs3 commented Mar 7, 2024 via email

@Firefishy
Copy link
Member

@pabs3 Any chance you could suggest a method for turning the help.openstreetmap.org site static? The site currently runs OSQA which is powered by an ancient version of Django + Python. I'd ideally like to host static content using just apache or nginx. Container is an option.

@mnalis
Copy link

mnalis commented Mar 11, 2024

Something as low-tech as wget --mirror --convert-links might work, but is probably not a speed champ (has to crawl the whole site using HTTP, link by link; but on nearby machine that estimated order of magnitude of 100k pages shouldn't be so bad, even if throttled (i.e. --wait, --limit-rate etc). E.g.:

wget --mirror --convert-links --wait=0.5 -X /vote,/tags,/questions https://help.openstreetmap.org/questions/88266/osm-carto-multilingual-tags

seems to produce quite reasonable reproduction of that one question for quick test.

(note that -X is there to prevent fetching whole site via recursion. I've used it in the past to convert some old Joomla/Worpress sites to static sites, and while admittedly all were smaller than help.osm.org, I think it should work here too).

You'll note that external links (like e.g. https://secure.gravatar.com/xxxx) in that example will still remain pointing to external sites; if you wish to copy/freeze them in static site too, you'd use -H option to wget to enable that (and use other exclude/include options when to stop the recursion).

Obviously inherently dynamic functions (like voting, search, etc.) won't work on static site in any case... 😃

@mnalis
Copy link

mnalis commented Mar 11, 2024

One should probably set the date on help.osm.org to 2030 or something first; to force OSQA to show full date on questions/answers - otherwise things like answered 06 Mar, 13:01 for things posted in current year would get cached on static site, and would not change (to include year) even when year increases from 2024.

We'll still hit the y2k bug as OSQA uses two-digit years even in those cases, so even with that precaution we'll get things like 11 Mar '24, 02:08 which would become ambiguous in year 2124+...
But hopefully we'd get rid of even that static site by then 😃

@pabs3
Copy link

pabs3 commented Mar 11, 2024 via email

@pabs3
Copy link

pabs3 commented Mar 11, 2024 via email

@pabs3
Copy link

pabs3 commented Mar 11, 2024 via email

@pabs3
Copy link

pabs3 commented Mar 20, 2024 via email

@Firefishy
Copy link
Member

Anyone want to have a go at adapting this to work with help.openstreetmap.org?
https://gitlab.com/wireshark/ws-osqa-ask-static

@Firefishy
Copy link
Member

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help-wanted Issues where help is needed to implement them
Projects
None yet
Development

No branches or pull requests