mlpack / mlpack.org

Sources to www.mlpack.org.
12 stars 18 forks source link

Overhaul website to integrate with Markdown bindings #61

Closed rcurtin closed 5 months ago

rcurtin commented 6 months ago

This is a "paired PR" along with #3699.

The current mlpack.org repository sort of contains two websites at once: a Jekyll-based Markdown website, but then also a static HTML website that is the one that's actually deployed. But the build scripts were very complicated, because the Markdown bindings needed to be built separately, and so did the doxygen documentation.

Forgetting about the complexities of the old setup, the new setup:

I'm not sure it's even worth looking through the diff, since I also changed tabs to spaces just to match the other repositories. I did change around the webpages a little bit:

rcurtin commented 6 months ago

I agree about mentioning bandicoot, but let's wait until we actually have a working example first :smile:

I'm going to mark this as a draft for now, because the CI job will automatically deploy the updated website---and that won't work until the next stable release of mlpack. I have a few changes to make from the comments on the other PR too.

conradsnicta commented 6 months ago

@rcurtin Comments and suggestions based on the current state of https://www.ratml.org/misc/mlpack_new/

Main page:

  1. Under the download button on the front page, suggest to remove "Latest version: 4.3.0 • 5.7MB • released Nov. 27, 2023". The download page should be the only place for that info, in order to minimise the maintenance burden.
  2. Hovering over each the link boxes ("Get Started", "Documentation", ...) leads to a red border. The red border by itself is fine, but it causes the content underneath to move up and down each time the mouse is moved between boxes (firefox browser). This looks and feels very messy.
  3. Suggest to remove the Benchmarks section. It's a sea of numbers that requires thorough attention for parsing, making it almost useless. Most folks are just going to skip that, as it's too much effort. To demonstrate speed advantages of mlpack in an easier to digest format, suggest to use bar charts, similar to https://arma.sourceforge.net/speed.html
  4. Suggesting changing "Support" to "Sponsorship". The word "Support" can be confused with support provided by mlpack developers to users of mlpack. Alternatively, change "Support" to "Supported by", in order to clarify what the support means.

Download page:

  1. Suggest to move "Source download and build reference" section to be right at the top, instead of being buried down the bottom. The sources provided on the mlpack site are the primary "product" of the project. The pre-built packages for various operating systems can be out of date (especially Ubuntu), and are always derived from the official sources (ie. the packages are subservient to the sources).

Community page:

  1. Overall, I suggest nuking this page.
  2. Under "Getting Involved", the download link should point to download.html, not index.html
  3. Suggest to move the Support section to its own page, or remove that section altogether. Apart from NumFOCUS, all the other stuff looks outdated. Alternatively, move the content to the front page, under the "Supported by" banner.
  4. For info related to contributing, suggest to move it to the FAQ section.
  5. I'm not sure that all the remaining stuff provided by Community page is all that useful. There isn't enough active people to properly answer questions via chat (Matrix and Slack), so listing these sets up expectations that are never going to be met. Also, not sure what's the point of the "mlpack-git" mailing list. Lastly, the GSoC stuff is either outdated, or a time-suck.

CC @shrit

shrit commented 6 months ago

I agree with most of what @conradsnicta suggested in the above post. The only thing I would do differently is regarding the community page. Indeed I would nuke this page, but I would reincarnate it as a new page in the developer documentation.

rcurtin commented 6 months ago

@conradsnicta @shrit thanks for the further comments, I really appreciate it.

Under the download button on the front page, suggest to remove "Latest version: 4.3.0 • 5.7MB • released Nov. 27, 2023". The download page should be the only place for that info, in order to minimise the maintenance burden.

Actually I do want to leave this here, as it shows that the project isn't totally dormant. The release scripts will update this part automatically (as well as other parts of the website).

Hovering over each the link boxes ("Get Started", "Documentation", ...) leads to a red border. The red border by itself is fine, but it causes the content underneath to move up and down each time the mouse is moved between boxes (firefox browser). This looks and feels very messy.

I bet I could fix that with some CSS, but @shrit also pointed out elsewhere that the tutorials link should probably go away... and going down that road... I think it's fine without those cards altogether, since those are already the links at the top.

Suggest to remove the Benchmarks section.

Yeah, you're right. I hoped to leave something there until time permitted coming back and doing some more modern benchmarks. But I don't feel strongly about it. Removed.

Suggesting changing "Support" to "Sponsorship".

Agreed and done.

Suggest to move "Source download and build reference" section to be right at the top, instead of being buried down the bottom. The sources provided on the mlpack site are the primary "product" of the project.

Yeah, I can see where you're coming from here. I think there is an argument to be made to keep the packages up at the top, to encourage users to use package managers instead of trying to build from source and then open issues for that... but, fine with me either way.

Overall, I suggest nuking this page.

I didn't agree until @shrit suggested moving it into the developer documentation. That is the better place for it. The function of the page is so that we have a place to point people when they ask how to get started contributing (the most common GSoC question). The same is true for the GSoC page.

Under "Getting Involved", the download link should point to download.html, not index.html

Thanks, fixed (in the new Markdown documentation page).

Suggest to move the Support section to its own page, or remove that section altogether. Apart from NumFOCUS, all the other stuff looks outdated. Alternatively, move the content to the front page, under the "Supported by" banner.

Yes, I think I can just keep the logos and move it to the front page. I think it helps highlight that mlpack has been supported by large organizations and is not just some tiny hobby project. (It's a large hobby project! :smile:)

There isn't enough active people to properly answer questions via chat (Matrix and Slack)

I think we do a pretty decent job of providing support in the chat channels (with the exception of peak GSoC application season in March), so I would want to still point people at them. This actually deserves a callout on the homepage so I have updated it.

Also, not sure what's the point of the "mlpack-git" mailing list.

A few people use it to get emails for all mlpack-related activity (myself included). Various other open source projects have similar lists, it's not all that uncommon.

Lastly, the GSoC stuff is either outdated, or a time-suck.

This is also useful for students who are applying, so I'd like to keep it. Everything there is up to date (the text largely hasn't changed in 10 years); the only thing that's off is the year count and the number of students... which is easy enough to remove. However I think it's more appropriate in the developer documentation, so I moved gsoc.html to gsoc.md (part of mlpack/mlpack#3699).

Overall I really appreciate all the comments. This new website is far less ambitious than the previous version, but it should help keep maintenance time down. I wouldn't mind adding some things back in in the future---a screenshot of mlpack code, an example, some benchmarks, maybe a better download page---but I think this is fine for the foreseeable future.