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

ER: Find all the places that GitHub should be GitHub and fix #6161

Open
6 of 8 tasks
ExperimentsInHonesty opened this issue Jan 25, 2024 · 23 comments
Open
6 of 8 tasks
Assignees
Labels
Complexity: Medium Complexity: See issue making label See the Issue Making label to understand the issue writing difficulty level ER Emergent Request good first issue Good for newcomers Issue Making: Level 3 Making a template + Create a Level 1 issue(s) + sample issue using template P-Feature: Communities of Practice https://www.hackforla.org/communities-of-practice P-Feature: Getting Started https://www.hackforla.org/getting-started P-Feature: Navigation P-Feature: Toolkit https://www.hackforla.org/toolkit/ role: back end/devOps Tasks for back-end developers role: front end Tasks for front end developers size: 0.25pt Can be done in 0.5 to 1.5 hours

Comments

@ExperimentsInHonesty
Copy link
Member

ExperimentsInHonesty commented Jan 25, 2024

Dependencies (Child Issues)

Emergent Requirement - Problem

GitHub is a company name and should only be in lowercase (github) when in a URL, variable or directory name (where the variables or directories are all lowercase).

Details

There are 180 files with some form of github in it.

Issue you discovered this emergent requirement in

Date discovered

2024-01-25

Did you have to do something temporarily

  • YES
  • NO

Who was involved

@ExperimentsInHonesty

What happens if this is not addressed

  • If it's public facing, it's unprofessional not to fix it.
  • if it's in our non-public facing code, it's best practices to use it consistently as intended

Resources

Examples of locations that could be changed

Example of locations that could be changed, but it might break some logic.

Examples of locations it must be changed

  • <h5>An effective Hack for LA Github issue includes the following components:</h5>
  • <li class="g-s-list">Receive access to the Google Drive and Github repository by sending a Slack message of your Github username and Gmail address to a CoP lead. <img class="info-icon" src="assets/images/getting-started/information.png" alt="">

Recommended Action Items

  • Make 2 issue templates in comments that will work for all the following types of changes, so that each issue is easy to make
  • Review each potential change and decide if It's something that can be changed
    • without risk, in which case it's a good first issue
      • Examples of locations that could be changed
      • Examples of locations it must be changed
    • might have risk and will need to be tested, in case it's a medium issue and will need to specify that the assignee will have to devise and document what tests they intend to do, so that when the PR is reviewed, the merge team can sign off that the change was tested adequately.
      • Example of locations that could be changed, but it might break some logic.
  • move this issue to the questions column and add the ready for merge team label with the following note in a comment
  • make issues - see Dependencies section above

Potential solutions [draft]

@ExperimentsInHonesty ExperimentsInHonesty added Feature Missing This label means that the issue needs to be linked to a precise feature label. size: 0.25pt Can be done in 0.5 to 1.5 hours role missing Complexity: Missing labels Jan 25, 2024
@ExperimentsInHonesty ExperimentsInHonesty added good first issue Good for newcomers role: front end Tasks for front end developers role: back end/devOps Tasks for back-end developers Complexity: Medium P-Feature: Toolkit https://www.hackforla.org/toolkit/ P-Feature: Getting Started https://www.hackforla.org/getting-started P-Feature: Navigation P-Feature: Communities of Practice https://www.hackforla.org/communities-of-practice Issue Making: Level 2 Make issue(s) from an ER or Epic Complexity: See issue making label See the Issue Making label to understand the issue writing difficulty level ready for dev lead Issues that tech leads or merge team members need to follow up on and removed Feature Missing This label means that the issue needs to be linked to a precise feature label. Complexity: Missing role missing labels Jan 25, 2024
@a1exanderklein

This comment was marked as outdated.

@JessicaLucindaCheng JessicaLucindaCheng added the ER Emergent Request label Jan 26, 2024
@ExperimentsInHonesty

This comment was marked as outdated.

@SteeRevo SteeRevo self-assigned this Feb 27, 2024

This comment was marked as resolved.

@SteeRevo

This comment was marked as resolved.

@SteeRevo

This comment was marked as resolved.

@SteeRevo

This comment was marked as resolved.

@daras-cu

This comment was marked as resolved.

@daras-cu daras-cu moved this from ERs and epics that are ready to be turned into issues to Questions / In Review in P: HfLA Website: Project Board Sep 9, 2024
@t-will-gillis

This comment was marked as resolved.

@daras-cu
Copy link
Member

daras-cu commented Sep 9, 2024

Hi @t-will-gillis,
I did go through all the files from the Resources section (here) and made a spreadsheet of the ones that I thought needed to be changed to keep track: Google Sheet

Thank you for going through the issues I created so far. I'll go ahead and make the issues for CONTRIBUTING.md and group whichever instances make sense into Complexity: Small issues. I'll wait for feedback on the other files in question.

That makes sense re: the good first issues, I have been separating them out so will continue to do so.

Thanks again for your help!

@daras-cu

This comment was marked as resolved.

@daras-cu daras-cu added the ready for dev lead Issues that tech leads or merge team members need to follow up on label Sep 12, 2024
@ExperimentsInHonesty

This comment was marked as resolved.

@ExperimentsInHonesty

This comment was marked as resolved.

@ExperimentsInHonesty
Copy link
Member Author

@daras-cu

For the purposes of discussion, I have added all the details we are looking at for the GitHub wins page and form to this comment.

wins.js

wins.js

Lines we intended to change below

const github_url = "Github URL (optional)"

change

const github_url = "Github URL (optional)"

to

const github_url = "GitHub URL (optional)"

const github_permission = "Could we use your Github profile picture next to your story?"

change

const github_permission = "Could we use your Github profile picture next to your story?"

to

const github_permission = "Could we use your GitHub profile picture next to your story?"

https://github.com/hackforla/website/blob/a999c255a87d761e7579db1d76a6e0a0a3a05d39/assets/js/wins.js#L28C1-L28C74
change

		"I increased the number of commits on my Github profile": `github.svg`,

to

		"I increased the number of commits on my GitHub profile": `github.svg`,

cloneCardTemplate.querySelector('.github-icon').alt = `Github profile for ${card[name]}`;

change

			cloneCardTemplate.querySelector('.github-icon').alt = `Github profile for ${card[name]}`;

to

			cloneCardTemplate.querySelector('.github-icon').alt = `GitHub profile for ${card[name]}`;

makeIcon(data[i][github_url], overlayIcons, 'github-icon', '/assets/images/wins-page/icon-github-small.svg', 'Github profile for ' + data[i][name]);

change

  			makeIcon(data[i][github_url], overlayIcons, 'github-icon', '/assets/images/wins-page/icon-github-small.svg', 'Github profile for ' + data[i][name]);

to

  			makeIcon(data[i][github_url], overlayIcons, 'github-icon', '/assets/images/wins-page/icon-github-small.svg', 'GitHub profile for ' + data[i][name]);

Code.js

Any changes in this file (code.js) will have to also be made in the Google App Script attached to the spreadsheet

Lines we intended to change below

processedFormDataObject.set("GitHub", rawFormDataObject["Github URL (optional)"])

Change

  processedFormDataObject.set("GitHub", rawFormDataObject["Github URL (optional)"])

to

  processedFormDataObject.set("GitHub", rawFormDataObject["GitHub URL (optional)"])

processedFormDataObject.set("GitHub Picture Allowed ?", rawFormDataObject["Could we use your Github profile picture next to your story?"])

Change

  processedFormDataObject.set("GitHub Picture Allowed ?", rawFormDataObject["Could we use your Github profile picture next to your story?"])

to

  processedFormDataObject.set("GitHub Picture Allowed ?", rawFormDataObject["Could we use your GitHub profile picture next to your story?"])

Comparison

First correlation

processedFormDataObject.set("GitHub", rawFormDataObject["Github URL (optional)"])

seems related to line 12 in the wins.js file
const github_url = "Github URL (optional)"

Second correlation

processedFormDataObject.set("GitHub Picture Allowed ?", rawFormDataObject["Could we use your Github profile picture next to your story?"])

seems related to line 13 in the wins.js file
const github_permission = "Could we use your Github profile picture next to your story?"

Form headers (from the spreadsheet)

All columns that correspond to the questions
  • Email Address
  • Full name
  • Linkedin URL (optional)
  • Could we use your Linkedin profile picture next to your story?
  • Github URL (optional)
  • Could we use your Github profile picture next to your story?
  • Select the team(s) you're on
  • Select your role(s) on the team
  • What is/was your specific role? (optional)
  • When did you join Hack for LA? (optional)
  • What do you want to celebrate (select all that apply)?
  • Give us a brief overview
Additional form headers in addition to the form questions

Timestamp
Display?
Homepage?

Form Question Changes Change form question from ``` Could we use your Github profile picture next to your story? ``` to ``` Could we use your GitHub profile picture next to your story? ```

Does the above seem to cover it all (excluding pages/wins/wins-share-form.html for now)? And if it does cover everything, what is your question.

@ExperimentsInHonesty ExperimentsInHonesty moved this from Questions / In Review to In progress (actively working) in P: HfLA Website: Project Board Sep 14, 2024
@ExperimentsInHonesty ExperimentsInHonesty removed the ready for dev lead Issues that tech leads or merge team members need to follow up on label Sep 14, 2024
@daras-cu
Copy link
Member

@ExperimentsInHonesty
Thank you for the clarification on issue size/role labels, that all makes sense.

Re: wins.js and Code.js I believe that does cover all the instances that need to be corrected in those files. My main question is for the lines with correlations to the Google form, how should I handle changing the questions on the form when updating the JS files so the question names remain in sync? (I do not have permission to view the spreadsheet you linked and assume other volunteers do not either)

If I create an issue for each form question that needs to be changed, the action items could be to edit the corresponding lines in both Code.js and wins.js, and update the question in the Google form. The assignee would have to be someone who has permissions for the form already, or would have to request permissions as part of working on the issue.

Alternatively, the issue could cover editing just Code.js and wins.js and then require a note to be left on the PR that the issue should only be merged by someone who can update the question on the Google form at the same time.

I'm also not sure about how testing would work for these issues. It appears that _data/external/_wins-data.json would have to be updated to reflect the new question names in order for wins.js to populate the Wins webpage correctly. It looks like _wins-data.json is updated by a bot account rewriting the file in its own branch then opening a PR (the code for this is in the main function in Code.js), which I'm not sure can be replicated in someone's forked repository. The issues I create could just call for the edits to the files without testing. Regardless, once the edited files are merged I think the _wins-data.json file will have to be updated immediately for the Wins webpage to display correctly, as otherwise the JSON data will still have the old question names as keys. Can we manually trigger an update after the changes are merged? If so how should I document that this needs to be done in the issues?

I hope all that is clear and that I'm understanding how the files work together correctly.

@daras-cu daras-cu moved this from In progress (actively working) to Questions / In Review in P: HfLA Website: Project Board Sep 14, 2024
@daras-cu daras-cu moved this from Questions / In Review to In progress (actively working) in P: HfLA Website: Project Board Sep 15, 2024
@daras-cu
Copy link
Member

Update:
I created issues #7494 and #7495 to fix two 'Github' instances in wins.js that are independent from the Wins form.

I have been familiarizing myself with the Google Apps Script development process and am working on getting access to the necessary Google docs to see how and where to make changes to the Wins form questions that include 'Github' and are referenced in Code.js and wins.js.

@daras-cu
Copy link
Member

daras-cu commented Oct 7, 2024

Update:
The remaining issues to create for this ER involve making changes to the Wins form. As discussed with @roslynwythe, we should improve the documentation on Wins form development and testing before asking developers to work on these issues. I'll be going through the setup process for Wins issues locally and will note any areas where documentation can be improved. This will also help me better understand how to write the issues for this ER when we are ready for them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Complexity: Medium Complexity: See issue making label See the Issue Making label to understand the issue writing difficulty level ER Emergent Request good first issue Good for newcomers Issue Making: Level 3 Making a template + Create a Level 1 issue(s) + sample issue using template P-Feature: Communities of Practice https://www.hackforla.org/communities-of-practice P-Feature: Getting Started https://www.hackforla.org/getting-started P-Feature: Navigation P-Feature: Toolkit https://www.hackforla.org/toolkit/ role: back end/devOps Tasks for back-end developers role: front end Tasks for front end developers size: 0.25pt Can be done in 0.5 to 1.5 hours
Projects
Status: In progress (actively working)
Development

Successfully merging a pull request may close this issue.

8 participants