-
-
Notifications
You must be signed in to change notification settings - Fork 9
Update survey titles and labels for clarity: reflect focus on Copilot impact and time savings #73
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
Merged
MattG57
merged 18 commits into
main
from
Nomenclature-for-Developer-Estimates-plus-Form-behavior
Dec 6, 2024
Merged
Changes from 2 commits
Commits
Show all changes
18 commits
Select commit
Hold shift + click to select a range
8dac4c6
Update survey titles and labels for clarity: reflect focus on Copilot…
MattG57 06fbc6e
added scrolling reasons from colleagues
MattG57 71497fd
Tweaks
MattG57 9fbfe6b
Merge branch 'main' into Nomenclature-for-Developer-Estimates-plus-Fo…
austenstone 2e8b1c9
Add recent surveys retrieval with good reasons and kudos feature
MattG57 3085220
Add GitHub survey update functionality and new survey route
austenstone 04408a3
Add kudos field to Survey model
austenstone 8dc6e25
Refactor backend entry point, update Docker and compose configuration…
MattG57 1611030
Merge branch 'Nomenclature-for-Developer-Estimates-plus-Form-behavior…
MattG57 3d5a946
Implement member retrieval by login, enhance recent surveys query, an…
MattG57 5cbd8cd
Refactor chart labels and settings form, implement thousand separator…
MattG57 e8a2522
Remove VSCode settings, update logging level in database configuratio…
austenstone dfdc06e
Add Value Modeling component, update & routing change
MattG57 338b2f5
Refactor survey component headers, update layout styles, and enhance …
austenstone 4b6d442
Merge branch 'Nomenclature-for-Developer-Estimates-plus-Form-behavior…
austenstone 50fc071
Remove ThousandSeparatorPipe and SharedModule; update settings compon…
austenstone 4e4b5d3
Fix type assertion in survey controller and service for improved type…
austenstone 00e92ca
Refactor type assertions in survey controller and service to use Wher…
austenstone File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6 changes: 3 additions & 3 deletions
6
frontend/src/app/main/copilot/copilot-surveys/copilot-surveys.component.html
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,10 +1,10 @@ | ||
| <div class="page-container"> | ||
| <div class="page-header"> | ||
| <h1>Surveys</h1> | ||
| <h1>Estimate Time Saved and Share Expertise</h1> | ||
| <span class="spacer"></span> | ||
| <!-- <p> | ||
| <p> | ||
| <a mat-flat-button color="primary" routerLink="/copilot/surveys/new">New Survey</a> | ||
| </p> --> | ||
| </p> | ||
| </div> | ||
| <app-table [data]="surveys!" [columns]="surveysColumns" [defaultSort]="{id: 'dateTime', start: 'desc', disableClear: false}" (rowClick)="onSurveyClick($event)"></app-table> | ||
| </div> |
152 changes: 111 additions & 41 deletions
152
...src/app/main/copilot/copilot-surveys/new-copilot-survey/new-copilot-survey.component.html
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,47 +1,117 @@ | ||
| <div class="page-container"> | ||
| <div class="page-header"> | ||
| <h1>Developer Survey</h1> | ||
| <h1>Estimate Time Saved and Share Expertise</h1> | ||
| </div> | ||
| <form [formGroup]="surveyForm" (ngSubmit)="onSubmit()"> | ||
| <label for="usedCopilot">Did you use Copilot for this PR?</label> | ||
| <mat-radio-group id="usedCopilot" formControlName="usedCopilot" aria-labelledby="example-radio-group-label" class="example-radio-group"> | ||
| <mat-radio-button class="example-radio-button" [value]="true">Yes</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" [value]="false">No</mat-radio-button> | ||
| </mat-radio-group> | ||
| <label for="percentTimeSavedSlider">How much less time did the actual coding take with Copilot?</label> | ||
| <div> | ||
| <mat-slider class="example-mat-slider" id="percentTimeSavedSlider" [max]="100" [min]="0" [step]="5" discrete="true" tickInterval="5" showTickMarks [displayWith]="formatPercent"> | ||
| <input matSliderThumb formControlName="percentTimeSaved"> | ||
| </mat-slider> | ||
| <div class="slider-labels-container"> | ||
| <div class="slider-labels"> | ||
| <span style="left: 0%">0%</span> | ||
| <span style="left: 25%">25%</span> | ||
| <span style="left: 50%">50%</span> | ||
| <span style="left: 75%">75%</span> | ||
| <span style="left: 100%">100%</span> | ||
| <div class="two-column-layout"> | ||
| <div class="column" [style.width.%]="formColumnWidth"> | ||
| <form [formGroup]="surveyForm" (ngSubmit)="onSubmit()"> | ||
| <label for="usedCopilot">Did you use Copilot for this PR?</label> | ||
| <mat-radio-group id="usedCopilot" formControlName="usedCopilot" aria-labelledby="example-radio-group-label" class="example-radio-group"> | ||
| <mat-radio-button class="example-radio-button" [value]="true">Yes</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" [value]="false">No</mat-radio-button> | ||
| </mat-radio-group> | ||
| <label for="percentTimeSavedSlider">How much less time did the PR take with Copilot?</label> | ||
| <div> | ||
| <mat-slider class="example-mat-slider" id="percentTimeSavedSlider" [max]="100" [min]="0" [step]="5" discrete="true" tickInterval="5" showTickMarks [displayWith]="formatPercent"> | ||
| <input matSliderThumb formControlName="percentTimeSaved"> | ||
| </mat-slider> | ||
| <div class="slider-labels-container"> | ||
| <div class="slider-labels"> | ||
| <span style="left: 0%">0%</span> | ||
| <span style="left: 25%">25%</span> | ||
| <span style="left: 50%">50%</span> | ||
| <span style="left: 75%">75%</span> | ||
| <span style="left: 100%">100%</span> | ||
| </div> | ||
| </div> | ||
| </div> | ||
| </div> | ||
| <mat-form-field class="example-form-field"> | ||
| <mat-label>If possible, Explain how copilot enabled that level of Time Savings </mat-label> | ||
| <textarea formControlName="reason" placeholder="Ex. Write boilerplate code more quickly, freeing up time to focus on complex logic." matInput (focus)="onReasonFocus()"></textarea> | ||
| </mat-form-field> | ||
| <br><br> | ||
| <label for="timeUsedForGroup">Given the context, where would the Copilot time savings most likely show up?</label> | ||
| <mat-radio-group id="timeUsedForGroup" formControlName="timeUsedFor" aria-labelledby="example-radio-group-label" class="example-radio-group"> | ||
| <mat-radio-button class="example-radio-button" value="fasterPRs">Faster PR's 🚀</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="fasterReleases">Faster Releases 📦</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="repoHousekeeping">Repo/Team Housekeeping 🧹</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="techDebt">Tech Debt, Reduce Defects and Vulns | ||
| 🛠️</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="experimentLearn">Experiment, Learn, or Work on Something NEW | ||
| 🧪</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="other">Other 🤔</mat-radio-button> | ||
| </mat-radio-group> | ||
| <button mat-raised-button color="primary" type="submit">Submit</button> | ||
| </form> | ||
| </div> | ||
| <!-- <label>Describe your thought process for calculating (or estimating) the {{surveyForm.get('percentTimeSaved')?.value}}% time | ||
| saved</label> --> | ||
| <mat-form-field class="example-form-field"> | ||
| <mat-label>{{surveyForm.get('percentTimeSaved')?.value ? 'I chose ' + surveyForm.get('percentTimeSaved')?.value + '% because Copilot enabled me to' : 'I didn\'t use Copilot because'}}...</mat-label> | ||
| <textarea formControlName="reason" placeholder="Ex. Write boilerplate code more quickly, freeing up time to focus on complex logic." matInput></textarea> | ||
| <mat-hint>Describe your thought process for calculating (or estimating) the {{surveyForm.get('percentTimeSaved')?.value}}% time saved</mat-hint> | ||
| </mat-form-field> | ||
| <br><br> | ||
| <label for="timeUsedForGroup">Given the context, where would the Copilot time savings most likely show up?</label> | ||
| <mat-radio-group id="timeUsedForGroup" formControlName="timeUsedFor" aria-labelledby="example-radio-group-label" class="example-radio-group"> | ||
| <mat-radio-button class="example-radio-button" value="fasterPRs">Faster PR's 🚀</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="fasterReleases">Faster Releases 📦</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="repoHousekeeping">Repo/Team Housekeeping 🧹</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="techDebt">Tech Debt, Reduce Defects and Vulns | ||
| 🛠️</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="experimentLearn">Experiment, Learn, or Work on Something NEW | ||
| 🧪</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="other">Other 🤔</mat-radio-button> | ||
| </mat-radio-group> | ||
| <button mat-raised-button color="primary" type="submit">Submit</button> | ||
| </form> | ||
| <div class="column" [style.width.%]="historyColumnWidth"> | ||
| <h2>What colleagues are saying...</h2> | ||
| <mat-card class="scrollable-card"> | ||
| <mat-card-content class="scrollable-card-content"> | ||
| <div *ngFor="let reason of historicalReasons"> | ||
| "{{ reason }}" | ||
| </div> | ||
| <div *ngFor="let reason of historicalReasons"> | ||
| "{{ reason }}" | ||
| </div> | ||
| </mat-card-content> | ||
| </mat-card> | ||
| </div> | ||
| </div> | ||
| <div class="two-column-layout"> | ||
| <div class="column" [style.width.%]="formColumnWidth"> | ||
| <form [formGroup]="surveyForm" (ngSubmit)="onSubmit()"> | ||
| <label for="usedCopilot">Did you use Copilot for this PR?</label> | ||
| <mat-radio-group id="usedCopilot" formControlName="usedCopilot" aria-labelledby="example-radio-group-label" class="example-radio-group"> | ||
| <mat-radio-button class="example-radio-button" [value]="true">Yes</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" [value]="false">No</mat-radio-button> | ||
| </mat-radio-group> | ||
| <label for="percentTimeSavedSlider">How much less time did the PR take with Copilot?</label> | ||
| <div> | ||
| <mat-slider class="example-mat-slider" id="percentTimeSavedSlider" [max]="100" [min]="0" [step]="5" discrete="true" tickInterval="5" showTickMarks [displayWith]="formatPercent"> | ||
| <input matSliderThumb formControlName="percentTimeSaved"> | ||
| </mat-slider> | ||
| <div class="slider-labels-container"> | ||
| <div class="slider-labels"> | ||
| <span style="left: 0%">0%</span> | ||
| <span style="left: 25%">25%</span> | ||
| <span style="left: 50%">50%</span> | ||
| <span style="left: 75%">75%</span> | ||
| <span style="left: 100%">100%</span> | ||
| </div> | ||
| </div> | ||
| </div> | ||
| <mat-form-field class="example-form-field"> | ||
| <mat-label>If possible, Explain how copilot enabled that level of Time Savings </mat-label> | ||
| <textarea formControlName="reason" placeholder="Ex. Write boilerplate code more quickly, freeing up time to focus on complex logic." matInput (focus)="onReasonFocus()"></textarea> | ||
| </mat-form-field> | ||
| <br><br> | ||
| <label for="timeUsedForGroup">Given the context, where would the Copilot time savings most likely show up?</label> | ||
| <mat-radio-group id="timeUsedForGroup" formControlName="timeUsedFor" aria-labelledby="example-radio-group-label" class="example-radio-group"> | ||
| <mat-radio-button class="example-radio-button" value="fasterPRs">Faster PR's 🚀</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="fasterReleases">Faster Releases 📦</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="repoHousekeeping">Repo/Team Housekeeping 🧹</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="techDebt">Tech Debt, Reduce Defects and Vulns | ||
| 🛠️</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="experimentLearn">Experiment, Learn, or Work on Something NEW | ||
| 🧪</mat-radio-button> | ||
| <mat-radio-button class="example-radio-button" value="other">Other 🤔</mat-radio-button> | ||
| </mat-radio-group> | ||
| <button mat-raised-button color="primary" type="submit">Submit</button> | ||
| </form> | ||
| </div> | ||
| <div class="column" [style.width.%]="historyColumnWidth"> | ||
| <h2>What colleagues are saying...</h2> | ||
| <mat-card class="scrollable-card"> | ||
| <mat-card-content class="scrollable-card-content"> | ||
| <div *ngFor="let reason of historicalReasons"> | ||
| "{{ reason }}" | ||
| </div> | ||
| <div *ngFor="let reason of historicalReasons"> | ||
| "{{ reason }}" | ||
| </div> | ||
| </mat-card-content> | ||
| </mat-card> | ||
| </div> | ||
| </div> | ||
| </div> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.