AdoptOpenJDK / openjdk-website

Website source
https://adoptopenjdk.net/
Apache License 2.0
122 stars 90 forks source link

Advice on front page on choosing hotspot or openj9? #307

Closed andrew-m-leonard closed 5 years ago

andrew-m-leonard commented 6 years ago

For those who are just after an open source Java binary, they might not know the difference between hotspot and openj9, or whether it matters to them...or what it is! They may have just hit the https://adoptopenjdk.net/ page from google, should we give them some advice or pointers? Should we just default to hotspot for them? or openj9? or display both at the same time (without a dropdown)? and a summary over choosing...?

karianna commented 6 years ago

This really ties into providing a bit more of a wizard/persona approach. I'd be happy to see a PR where Hotspot and OpenJ9 options sit side by side for each version / platform combo

sxa commented 6 years ago

Using radio buttons instead of a drop down would be another way of making it more prominent

ghenriks commented 6 years ago

Talk of radio buttons, wizards, etc. are missing the point - most people are going to come to adoptopenjdk to simply download Java and don't care about the choices (in a large part because for most of them the differences won't matter).

If given the confusion of having to make a choice, and the worry of making the wrong choice, many of them will simple shrug their shoulders, decide Java isn't for them and instead go download Go, Rust, Dotnet Core, or any number of other language choices that don't require decision making to download and install.

So by all means continue to offer both builds (or even more if you want), but hide it so only those who really care / want it have to get exposted to it and make the front page a simply choose your release version and download.

Also, I would suggest going further and only offering the currently supported LTS versions on the initial page - inexperienced people shouldn't be offered versions that will only be supported for 6 months or less depending on download date.

ghenriks commented 6 years ago

Talk of radio buttons, wizards, etc. are missing the point

Of course it now appears that all really doesn't matter given that you aren't even offering Windows users an installable, but instead expect them to somehow figure out how to change their path variable to point to wherever they forgot they unzipped the zip file to.

Given that I can never remember where Microsoft has hidden the path variable, I certainly am not going to be encouraged to work with a product where I have to look that up for each new version...

karianna commented 6 years ago

@ghenriks This is a new community project that's been asked to deliver a very large amount of infrastructure and software to the ecosystem for $free and free as in use. We are working on the issues that you mention (MSI installer is being shaken out - https://github.com/AdoptOpenJDK/openjdk-installer/pull/6) etc as well as rethinking the Ux of the website.

We'd love to have your help! Come and join us on the slack adoptopenjdk.net/slack.html

SeanC1083 commented 6 years ago

I have been work on some redesign ideas for the JVM/JDK Selector...here are some new UX ideas.

SeanC1083 commented 6 years ago

Ideas for Radio Button Redesign for JDK/JVM Selector - First State Homepage

1 0 homepage

SeanC1083 commented 6 years ago

Help Me Choose link to popup info about both JVMs

1 1 homepage with jdk info bubble

SeanC1083 commented 6 years ago

JDK/JVM Selector changes for Nightly builds page

fifth state

SeanC1083 commented 6 years ago

JDK/JVM Selector changes for Archive page

fourth state

SeanC1083 commented 6 years ago

JDK/JVM Selector changes for Latest release page

third state

SeanC1083 commented 6 years ago

Wanted to begin socializing these ideas, but there are more designs coming soon. Please provide feedback, if you have any.

karianna commented 6 years ago

Hi @SeanC1083 - Thanks for jumping in! See #237 as the place to go for the overall discussion. Also, do join the #website channel on the Slack.

FYI - we've done some persona research etc and came to the conclusion that we need to cater to the 3 main personas (End users of Java, e.g. Minecraft players, Java Developers and, Java distributors).


I like the "Help me choose" idea, that should help guide those personas, especially if our default choice isn't the right one for them.

I'm probably less OK with the radio buttons as laid out because of wanting to keep the important stuff above the line.

SeanC1083 commented 6 years ago

@karianna When you say, "wanting to keep the important stuff above the line" what do you mean?

karianna commented 6 years ago

For the 'minimum typical desktop screen size', all of the important elements should be visible without vertical scrolling.

andrew-m-leonard commented 6 years ago

Wanted to begin socializing these ideas, but there are more designs coming soon. Please provide feedback, if you have any.

@SeanC1083 I really like your screenshots. Some comments: I really like the "Choose a JDK", "Choose a JVM", with "Help me choose" layout, works really well.

I find the current layout of a heading eg."Nightly builds" with 2 buttons below it of "Latest Builds" & "Build Archive" really missleading, as the way I "read" this is the page is showing "Nightly Builds", you can then get the "Latest Nightly Build" or "Nightly Build Archives", ie. clicking on "Latest Build" will take you to the "latest" nightly build, ie.last nights build... however it actually takes you to the "Latest Release", so not a Nightly build at all!!! does that make sense? I think the buttons below the title should have meaning in the context of the "Heading". If you want to switch from "Releases" to "Nightly Builds", then they should be selectable headings at the heading level, eg.maybe "Tabs" or equivalent UI component. So the selectable sections/tabs are probably just:

SeanC1083 commented 6 years ago

@karianna I see what you mean. I wonder if there are ways that we can engage with devs to see how often their machine specs cause these kinds of display issues. Maybe we can learn more about this when we come to usability for the site.

SeanC1083 commented 6 years ago

@andrew-m-leonard Thanks for your feedback. I agree that the headers on each of the build pages isn't as clear as it could/should be. We have some ideas about how to address this issue which I'll create new Git Issues for early next week.

karianna commented 6 years ago

@SeanC1083 We can pull the details off google analytics.

DunnCoding commented 5 years ago

I've opened a PR for part of these changes. Whilst implementing the solution proposed by @SeanC1083 I ran into some issues.

Firstly, Why is the page reloaded whenever a new selection is made? To me this seemed strange though I didn't dig deep down into the code to discover all the reasons as to why it was designed this way. I feel there would be a better way to do this but again I don't know the reasons behind this choice :).

Also I received some feedback on this design particularly on the home page regarding hiding OpenJDK 9 and OpenJDK 10 as they are already obsolete. I've left them in for now as the Javascript that generates the radio buttons does so for all the pages but it's something to consider going forward.

Finally I also modified the design slightly. For example always having default radio buttons selected (needed to generate the download button). I added numbers to the Choose a Version and Choose a JVM to highlight that these lists are linked.

karianna commented 5 years ago

@ddunn2 - I suspect a new call is made to the API each time you make a new selection. It may be possible to refactor that so all of the options are retrieved into a map or maplike data structure and the UI can dynamically update from that much faster (no loading strings). Challenge here is how to update that data structure as new versions appear via the API. The API may need to push as opposed to the website pulling.

I'll comment on the PR about the 9 / 10 versions.

SeanC1083 commented 5 years ago

@ddunn2 instead of numbering the option, could we made the download button inactive until a JVM selection is made. Another option would be to keep the download button active, but if users click the download button without making a JVM selection, we can have an alert or some text appear to let them know that a selection is needed. Once a JVM is selected it could pull up the proper JDK for users to download.

SeanC1083 commented 5 years ago

Selection alert example screen shot 2018-10-17 at 11 11 34 am

gdams commented 5 years ago

closing as we now have this

markwoon commented 4 years ago

Don't know if it's a regression, but "hotspot vs openj9" is NOT on the front page.

In fact, googling "hotspot vs openj9" leads to this page.

sxa commented 4 years ago

@markwoon The front page has options for both and a "Help me choose" link. I'm not sure what you think is missing:

image

markwoon commented 4 years ago

I somehow skipped the homepage.

It's not on https://adoptopenjdk.net/releases.html?variant=openjdk11&jvmVariant=hotspot, which is where I landed on the site.