{"id":231559,"date":"2023-01-10T10:29:00","date_gmt":"2023-01-10T07:29:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=231559"},"modified":"2023-01-10T10:30:52","modified_gmt":"2023-01-10T07:30:52","slug":"jak-tworzyc-problemy-na-githubie-5-razy-szybciej","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/pl\/jak-tworzyc-problemy-na-githubie-5-razy-szybciej\/","title":{"rendered":"Jak tworzy\u0107 problemy na GitHubie 5 razy szybciej"},"content":{"rendered":"\n<p>Problemy z GitHubem s\u0105 fantastyczne do \u015bledzenia nowych funkcji lub b\u0142\u0119d\u00f3w, kto jest przypisany, kategoryzowania ich, dodawania do projekt\u00f3w i tak dalej. Jednocze\u015bnie ich tworzenie jest do\u015b\u0107 powolne, a tworzenie ich grup zajmuje zbyt du\u017co czasu.<\/p>\n<p>Jednym z problem\u00f3w, kt\u00f3re widz\u0119 w przypadku problem\u00f3w z <a href=\"https:\/\/startfunction.com\/tag\/github\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">GitHub<\/a> w pracy, jest to, \u017ce ich tworzenie jest k\u0142opotliwe, szczeg\u00f3lnie dla tych, kt\u00f3rzy nie s\u0105 programistami ani projektantami, takimi jak mened\u017cerowie lub testerzy, kt\u00f3rzy chc\u0105 zg\u0142osi\u0107 b\u0142\u0105d bez przechodzenia przez proces ich tworzenia na GitHubie.<\/p>\n<p>Jaki\u015b czas temu <a href=\"https:\/\/wordpress.mediadoma.com\/pl\/przyspiesz-tworzenie-problemow-z-github\/\" title=\"pisa\u0142em o aplikacji\">pisa\u0142em o aplikacji<\/a>, kt\u00f3r\u0105 pisa\u0142em, aby przyspieszy\u0107 tworzenie spraw na GitHubie. W\u0142a\u015bciwie zbudowa\u0142em aplikacj\u0119, ale zapomnia\u0142em o tym tutaj napisa\u0107, wi\u0119c oto odpowiedni wpis na blogu. W tym po\u015bcie zobaczymy:<\/p>\n<ol start=\"2\">\n<li><a href=\"http:\/\/writing-issues\/\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">Pisanie partii problem\u00f3w z GitHub za pomoc\u0105 zwyk\u0142ego tekstu<\/a><\/li>\n<li><a href=\"http:\/\/tech-stack\/\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">Stos technologiczny za aplikacj\u0105<\/a><\/li>\n<li><a href=\"http:\/\/more-ideas\/\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">Wi\u0119cej pomys\u0142\u00f3w na usprawnienie tworzenia problem\u00f3w<\/a><\/li>\n<\/ol>\n<h2>Dlaczego aplikacja do szybszego tworzenia problem\u00f3w na GitHubie?<\/h2>\n<p>Interfejs u\u017cytkownika GitHub jest zwykle w porz\u0105dku, aby utworzy\u0107 problem. Lub dwa. I jest w porz\u0105dku dla os\u00f3b obeznanych z technologi\u0105, takich jak programi\u015bci lub projektanci. Jednak w naszej firmie Reconnect, czasami po opracowaniu nowej funkcji, prosimy naszych pracownik\u00f3w nietechnicznych o jej przetestowanie. I to dzia\u0142a \u015bwietnie, poniewa\u017c zwykle znajduj\u0105 jakie\u015b problemy. Ale przegl\u0105danie interfejsu problem\u00f3w z GitHub jest dla nich bardzo czasoch\u0142onne. Jest to jeszcze bardziej k\u0142opotliwe, gdy musz\u0105 tworzy\u0107 wi\u0119cej ni\u017c jedno wydanie i prawdopodobnie w r\u00f3\u017cnych repozytoriach.<\/p>\n<p>Je\u015bli okre\u015blimy, ile razy kierujemy nasz\u0105 uwag\u0119 na tworzenie zg\u0142osze\u0144 na <a href=\"https:\/\/startfunction.com\/tag\/github\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">GitHubie<\/a> po dotarciu do strony tworzenia zg\u0142oszenia w repozytorium, w kt\u00f3rym chcemy je utworzy\u0107, by\u0142oby to mniej wi\u0119cej takie:<\/p>\n<ul>\n<li>wpisz tytu\u0142<\/li>\n<li>przejd\u017a do pola tekstowego problemu, aby wprowadzi\u0107 opis<\/li>\n<li>przejd\u017a do paska bocznego, aby przypisa\u0107 komu\u015b problem<\/li>\n<li>przejd\u017a do bloku Etykiety na pasku bocznym, aby doda\u0107 etykiet\u0119<\/li>\n<li>id\u017a i kliknij przycisk, aby faktycznie utworzy\u0107 problem<\/li>\n<\/ul>\n<p>To 5 razy, kiedy przenosimy nasz\u0105 uwag\u0119 z obszaru na obszar! Zbyt du\u017co uwagi po\u015bwi\u0119ca si\u0119 zadaniu, kt\u00f3re zasadniczo polega na pisaniu i zbyt wiele czasu sp\u0119dzanego na ponownym skupieniu si\u0119. A co, je\u015bli musisz napisa\u0107 spraw\u0119 w innym repozytorium? Musisz przej\u015b\u0107 do tego repozytorium w nowej karcie lub w bie\u017c\u0105cej, a to wi\u0119cej straconego czasu.<\/p>\n<p>Jak wi\u0119c \u0142atwiej i szybciej tworzy\u0107 problemy na GitHubie? Czy nie by\u0142oby \u0142atwiej, gdyby\u015bmy mogli to zrobi\u0107 skoncentrowani na jednym miejscu bez konieczno\u015bci wielokrotnego przenoszenia uwagi?<\/p>\n<h2>Pisanie partii problem\u00f3w z GitHub za pomoc\u0105 zwyk\u0142ego tekstu<\/h2>\n<p>Pisanie to jedna z najbardziej podstawowych umiej\u0119tno\u015bci na urz\u0105dzeniach, jest bardziej podstawowa ni\u017c cho\u0107by gesty dotykowe. Poniewa\u017c chocia\u017c s\u0105 one specyficzne dla urz\u0105dze\u0144 dotykowych, musisz u\u017cy\u0107 myszy lub g\u0142adzika na innych. Ale pisanie jest zwykle zawsze takie samo. A problemy z GitHub to tekst, wi\u0119c dlaczego nie u\u017cywa\u0107 tekstu do ich tworzenia bez opuszczania naszej klawiatury?<\/p>\n<p>Ta aplikacja robi dok\u0142adnie to: <a href=\"https:\/\/fast-issues.herokuapp.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/fast-issues.herokuapp.com\/<\/a><\/p>\n<p>Autoryzujesz t\u0119 aplikacj\u0119 GitHub i mo\u017cesz zacz\u0105\u0107 pisa\u0107 problemy we wszystkich swoich repozytoriach. Musisz tylko wybra\u0107 repozytorium, w kt\u00f3rym chcesz utworzy\u0107 spraw\u0119 i zacz\u0105\u0107 pisa\u0107 wiele spraw, po jednej w ka\u017cdym wierszu.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-157961-61e6c625122c6.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-157961-61e6c625122c6.jpg\" alt=\"Jak tworzy\u0107 problemy na GitHubie 5 razy szybciej\"><\/a><\/p>\n<p>I obs\u0142uguje pisanie tytu\u0142u i opisu, przypisywanie go i etykietowanie. Wymaga tylko tytu\u0142u wydania. Reszta jest opcjonalna. Musisz tylko przestrzega\u0107 okre\u015blonej konwencji:<\/p>\n<ul>\n<li>tytu\u0142 jest na pierwszym miejscu<\/li>\n<li>nast\u0119pnie znak kreski oddziela osoby przypisane. Wybra\u0142em tak, poniewa\u017c potrzebujesz minimum problemu i kogo\u015b, kto nad nim popracuje<\/li>\n<li>druga kreska kreski oddziela opis problemu. Mo\u017ce mie\u0107 dowoln\u0105 d\u0142ugo\u015b\u0107, ale nie mo\u017ce mie\u0107 \u017cadnych \u0142amania linii, poniewa\u017c rozpoczyna\u0142oby to nowy numer<\/li>\n<li>trzeci znak kreski oddziela etykiety<\/li>\n<\/ul>\n<p>Obs\u0142uguje wielu cesjonariuszy i etykiety, oddzielaj\u0105c je przecinkiem. Wi\u0119c w zasadzie:<\/p>\n<p><code>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&lt;br&gt;This is another issue | username3 | And another issue description | Bug<\/code><\/p>\n<p>Po zako\u0144czeniu wystarczy klikn\u0105\u0107 przycisk <strong>Go!<\/strong> przycisk i stworzy wszystkie problemy. Ka\u017cdy b\u0119dzie mia\u0142 Ciebie jako autora. Mo\u017cesz p\u00f3\u017aniej je edytowa\u0107, aby doda\u0107 obrazy lub filmy, memy, cokolwiek.<\/p>\n<p>Je\u015bli chcesz utworzy\u0107 wi\u0119cej zg\u0142osze\u0144 w innym repozytorium, po prostu wybierz je ponownie z listy rozwijanej i zacznij pisa\u0107 te zg\u0142oszenia. Nigdy wi\u0119cej przeskakiwania przez strony!<\/p>\n<h2>Stos technologiczny za aplikacj\u0105<\/h2>\n<p>Repozytorium tej aplikacji znajduje si\u0119 pod <a href=\"https:\/\/github.com\/eliorivero\/fast-issues\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">adresem https:\/\/github.com\/eliorivero\/fast-issues<\/a><\/p>\n<p>Stos technologiczny jest szczeg\u00f3lnie prosty i ca\u0142kowicie oparty na <a href=\"https:\/\/startfunction.com\/category\/javascript\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">JavaScript<\/a> :<\/p>\n<ul>\n<li>frontend zbudowany za pomoc\u0105 <a href=\"https:\/\/startfunction.com\/tag\/react\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">React<\/a><\/li>\n<li>backend zbudowany z <a href=\"https:\/\/startfunction.com\/tag\/node-js\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Node.js<\/a><\/li>\n<li>u\u017cywa <a href=\"https:\/\/expressjs.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Express<\/a> jako serwera<\/li>\n<li>i <a href=\"https:\/\/github.com\/octokit\/rest.js\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Octokit REST<\/a> biblioteka do pracy z GitHub API<\/li>\n<\/ul>\n<p>Nale\u017cy pami\u0119ta\u0107, \u017ce nie chcemy przekracza\u0107 limitu \u017c\u0105da\u0144 dozwolonego przez <a href=\"https:\/\/developer.github.com\/v3\/issues\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">interfejs API GitHub Issues<\/a>. Zalecaj\u0105, aby mi\u0119dzy \u017c\u0105daniami min\u0119\u0142a co najmniej jedna sekunda, wi\u0119c wstrzyma\u0142em wykonanie 1,5 sekundy mi\u0119dzy utworzeniem ka\u017cdego problemu.<\/p>\n<p>Od pocz\u0105tkowego prototypu, kt\u00f3ry wykona\u0142em, do ostatecznej wersji, zmieni\u0142em go z aplikacji GitHub na aplikacj\u0119 OAuth. To dlatego, \u017ce ta ostatnia pozwala tworzy\u0107 problemy i wyst\u0119powa\u0107 jako autor.<\/p>\n<h2>Wi\u0119cej pomys\u0142\u00f3w na usprawnienie tworzenia problem\u00f3w<\/h2>\n<p>Pokaza\u0142em to znajomemu, a on powiedzia\u0142 mi, \u017ce wpad\u0142 na pomys\u0142 stworzenia rozszerzenia Chrome, aby zrobi\u0107 zrzut ekranu b\u0142\u0119du, opisa\u0107 go i przes\u0142a\u0107 jako problem z GitHub. Pomy\u015bla\u0142em, \u017ce to \u015bwietny pomys\u0142, wi\u0119c szuka\u0142em sposobu na zrobienie zrzutu ekranu, ale w aplikacji React szybko znalaz\u0142em <a href=\"https:\/\/html2canvas.hertzen.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">html2canvas<\/a>, kt\u00f3ry pozwala robi\u0107 zrzuty ekranu i zapisywa\u0107 je jako pliki PNG.<\/p>\n<p>Po\u0142\u0105czenie czego\u015b takiego z moim narz\u0119dziem do tworzenia problem\u00f3w by\u0142oby fajnym rozwi\u0105zaniem, kt\u00f3re mog\u0142oby by\u0107 dost\u0119pne w aplikacji React podczas jej cyklu rozwoju lub postoju. Ka\u017cdy, kto testuje aplikacj\u0119, mo\u017ce uruchomi\u0107 panel zg\u0142aszania problem\u00f3w i zg\u0142osi\u0107 problem na GitHubie.<\/p>\n<p>Jedynym problemem z tym na razie jest to, \u017ce API GitHub nie pozwala na przesy\u0142anie obraz\u00f3w, wi\u0119c musia\u0142yby by\u0107 hostowane gdzie indziej i mie\u0107 link do tej lokalizacji wstawiony w tym narz\u0119dziu, ale to zdecydowanie dobre ulepszenie.<\/p>\n<p>Wi\u0119c znowu, aplikacja jest na <a href=\"https:\/\/fast-issues.herokuapp.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/fast-issues.herokuapp.com\/<\/a> i je\u015bli w ko\u0144cu jej u\u017cyjesz, daj mi zna\u0107 w komentarzach.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\u0179r\u00f3d\u0142o nagrywania:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/startfunction.com\" class=\"external external_icon\">startfunction.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Problemy z GitHubem s\u0105 fantastyczne do \u015bledzenia nowych funkcji lub b\u0142\u0119d\u00f3w, kto jest przypisany, kategoryzowania ich, dodawania do projekt\u00f3w i tak dalej. Jednocze\u015bnie ich tworzenie jest do\u015b\u0107 powolne, a tworzenie ich grup zajmuje zbyt du\u017co czasu. By\u0142em zm\u0119czony powolnym procesem r\u0119cznego tworzenia wydania GitHub, wi\u0119c zbudowa\u0142em darmow\u0105 aplikacj\u0119 open source, aby proces ten by\u0142 znacznie szybszy.<\/p>\n","protected":false},"author":1,"featured_media":157962,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[721,919,897,773,784,752,836,1020],"tags":[1169],"class_list":["post-231559","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-deweloper","category-inny","category-kod","category-kontrola-zrodla","category-oprogramowanie-open-source","category-otwarte-zrodlo","category-przewodnik-dla-poczatkujacych","category-przydatne-strony","tag-affiai-pl"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/231559","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/comments?post=231559"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/231559\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media\/157962"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media?parent=231559"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/categories?post=231559"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/tags?post=231559"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}