opensafely-core / job-server

A server for mediating jobs that can be run in an OpenSAFELY secure environment. q.v. job-runner
https://jobs.opensafely.org
Other
5 stars 10 forks source link

Increase word limit for applications form #4374

Closed bloodearnest closed 17 hours ago

bloodearnest commented 2 weeks ago

Via Juliet:

It has been agreed by the NOD Team that the word count in the Study Purpose / Simple Description (lay desc) section of the Application Form needs to be amended to accommodate 500 words. In addition to this PR https://github.com/opensafely-core/job-server/pull/4373 could the free-type field also be updated to allow for 2500 characters (translates as 500 words). I am referencing to this second snippet https://github.com/opensafely-core/job-server/blob/main/snippets/study_purpose-help_text.md as I am not sure where the free-type field is. It would be good if we could have this in place before the applications open again. Many thanks for your help.

More context: https://bennettoxford.slack.com/archives/C31D62X5X/p1718371802560939

lucyb commented 2 weeks ago

The study purpose was previously updated to limit it to a max of 300 words (issue). Unfortunately, we didn't record why we were requested to change it. I'm adding a comment here to prompt us to investigate a bit further before we make the change.

tomodwyer commented 1 week ago

Speaking to Juliet, some options to consider:

  1. Do the update to 2500 characters
  2. Update the control to use words are the limit
    1. This would allow URLs to be counted as a single word
    2. Web component example of how this could look on the front-end: codepen.io
    3. This will required a custom parser on the server-side to check word length
  3. Rich-text field (such as Trix) allowing users to create hyperlinks
    1. Seems like lots of work, but could have more uses across Job Server
  4. Allow reference links below the lay summary
    1. When discussing with Juliet this seemed like more effort than it's worth (for example, how do they reference the links in the summary)
lucyb commented 4 days ago

For clarity/posterity, why do we need to record URLs in the description? Is it to link to another project on Job Server, or something else?

tomodwyer commented 4 days ago

Forgot to add that, it's quite a random selection of links, sometimes to job-server, but not frequently. Often it will be to another paper, study, or article, but these are random links, not specific sites.

iaindillingham commented 3 days ago

Could I check my understanding? Is the model field in question StudyInformationPage.study_purpose or StudyPurposePage.description? (I think the latter.) Neither model field currently has a limit, although the form field that corresponds to the latter has a 1500-character limit. (I think we want to increase it to a 2500-character limit.)

Both model fields have had 1500-character limits, but these have been removed. I think this accounts for the distributions of the lengths of these fields.

Model field min median max
StudyInformationPage.study_purpose 0 1142.5 15736
StudyPurposePage.description 0 874.0 3470

Notice that the length of the longest description is longer than the proposed 2500-character limit. Nevertheless, half of descriptions are less than 874 characters. So, our database will remain out of sync with our UI (no problem!) but half of descriptions are well within the existing character limit. Indeed, looking at the deciles, 90% of descriptions are less than 1500 characters.

iaindillingham commented 17 hours ago

I've asked @JulietUnderdown1 to confirm the correct model/form field on Slack.^1