Як створювати проблеми GitHub у 5 разів швидше
Проблеми GitHub чудово підходять для відстеження нових функцій або помилок, кому призначено їх, класифікувати їх, додавати до проектів тощо. У той же час вони також досить повільні для створення, і створення їх купи займає надто багато часу.
Одна з проблемних точок, які я бачу під час роботи з GitHub, полягає в тому, що вони громіздкі для створення, особливо для тих, хто не є розробниками чи дизайнерами, як-от менеджери чи тестувальники, які хочуть повідомити про помилку, не проходячи через процес їх створення на GitHub.
Деякий час тому я писав про додаток, який створював для прискорення створення проблем GitHub. Насправді я створив програму, але потім забув написати про це тут, тому ось правильна публікація в блозі. У цій публікації ми побачимо:
- Написання групи проблем GitHub із звичайним текстом
- Технологічний стек програми
- Більше ідей щодо покращення створення випусків
Чому програма для створення GitHub виходить швидше?
Інтерфейс GitHub зазвичай підходить для створення проблеми. Або два. І це добре для технічно підкованих людей, як-от розробників або дизайнерів. Однак у нашій компанії Reconnect іноді після розробки нової функції ми просимо наших нетехнічних працівників протестувати її. І це чудово працює, тому що вони зазвичай знаходять деякі проблеми. Але їм дуже важко переходити через інтерфейс користувача з проблемами GitHub. Це ще складніше, коли їм доводиться створювати більше одного випуску та, ймовірно, у різних сховищах.
Якщо ми кількісно оцінимо кількість разів, коли ми переключаємо свою увагу на створення проблем GitHub після того, як ми досягли сторінки для створення проблеми в репозиторії, де ми хочемо їх створити, це буде приблизно так:
- введіть назву
- перейдіть до текстового поля проблеми, щоб ввести опис
- перейдіть до бічної панелі, щоб комусь призначити проблему
- перейдіть до блоку «Мітки» на бічній панелі, щоб додати мітку
- перейдіть і натисніть кнопку, щоб створити проблему
Це 5 разів, коли ми переводимо нашу увагу з області на область! Забагато переміщення уваги на завдання, яке, по суті, полягає в написанні, і занадто багато часу, витраченого на перефокусування. А що, якщо вам доведеться написати випуск в іншому репозиторії? Вам потрібно перейти до цього сховища в новій вкладці або в поточній, і це втрачає більше часу.
Отже, як ви можете легше та швидше створювати проблеми GitHub? Хіба не було б легше, якби ми могли робити це, зосередившись на одному місці, не переключаючи увагу кілька разів?
Написання групи проблем GitHub із звичайним текстом
Письмо — це одна з найпростіших навичок у пристроях, вона більш базова, ніж навіть жести дотиком. Тому що, хоча вони є специфічними для сенсорних пристроїв, ви повинні використовувати мишу або трекпад на інших. Але письмо зазвичай завжди однакове. А проблеми GitHub — це текст, то чому б не використовувати текст для їх створення, не відходячи від клавіатури?
Ця програма робить саме це: https://fast-issues.herokuapp.com/
Ви авторизуєте цю програму GitHub і можете почати писати випуски в усіх ваших репозиторіях. Вам просто потрібно вибрати репозиторій, де ви хочете створити випуск, і почати писати кілька випусків, по одному в кожному рядку.
І він підтримує написання назви та опису, призначення та мітку. Потрібна лише назва випуску. Решта все за бажанням. Вам просто потрібно дотримуватися певної конвенції:
- заголовок стоїть на першому місці
- тоді символ вертикальної лінії розділяє правонаступників. Я вибрав це так, тому що як мінімум вам потрібна проблема та хтось, хто над нею працює
- другий вертикальний символ відокремлює опис проблеми. Він може мати будь-яку довжину, але не може мати жодних розривів рядків, оскільки це створить нову проблему
- третій символ вертикальної лінії розділяє мітки
Він підтримує кілька правонаступників і міток, розділяючи їх комами. Отже, в основному:
This is the title | username1, username2 | This is the issue description, as long as you want it but without line breaks. | Label 1, Label 2<br>This is another issue | username3 | And another issue description | Bug
Після того, як це буде зроблено, потрібно натиснути Go! і це створить усі проблеми. У кожній з них ви будете автором. Пізніше ви можете піти відредагувати їх, щоб додати зображення чи відео, меми тощо.
Якщо вам потрібно створити більше випусків в іншому сховищі, просто виберіть його у спадному списку та почніть писати ці випуски. Більше ніяких переходів по сторінках!
Технологічний стек програми
Репозиторій цієї програми розміщено за адресою https://github.com/eliorivero/fast-issues
Технологічний стек надзвичайно простий і повністю заснований на JavaScript :
- інтерфейс, створений за допомогою React
- бекенд, створений за допомогою Node.js
- використовує Express як сервер
- та бібліотеку Octokit REST для роботи з API GitHub
Слід пам’ятати одне: ми не хочемо перевищувати ліміт запитів, дозволений GitHub Issues API. Вони рекомендують, щоб між запитами проходила принаймні одна секунда, тому я призупинив виконання на 1,5 секунди між створенням кожної проблеми.
Від початкового прототипу, який я створив, до остаточної версії я змінив його з програми GitHub на програму OAuth. Це тому, що останній дозволяє вам створювати проблеми та відображатися як автор.
Більше ідей щодо покращення створення випусків
Я показав це другові, і він сказав мені, що в нього є ідея створити розширення Chrome, щоб зробити знімок екрана помилки, додати до нього коментарі та надіслати його як проблему GitHub. Я подумав, що це чудова ідея, тож я шукав спосіб зробити знімок екрана, але в програмі React, і швидко знайшов html2canvas, який дозволяє робити знімки екрана та зберігати їх як файли PNG.
Поєднання чогось подібного з моїм інструментом для створення проблем було б гарним рішенням, яке могло б бути доступним у програмі React під час її розробки чи циклу постановки. Будь-хто, хто тестує додаток, може запустити панель звітів про проблеми та повідомити про проблему GitHub.
Єдина проблема з цим наразі полягає в тому, що API GitHub не дозволяє завантажувати зображення, тому їх потрібно було б розмістити десь в іншому місці та мати посилання на це місце, вставлене в цей інструмент, але це, безперечно, гарне вдосконалення.
Знову ж таки, додаток доступний за адресою https://fast-issues.herokuapp.com/, і якщо ви зрештою скористаєтеся ним, дайте мені знати про це в коментарях.