{"id":232215,"date":"2023-01-10T10:22:00","date_gmt":"2023-01-10T07:22:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=232215"},"modified":"2023-01-10T10:24:21","modified_gmt":"2023-01-10T07:24:21","slug":"como-criar-problemas-no-github-5-vezes-mais-rapido","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/pt-pt\/como-criar-problemas-no-github-5-vezes-mais-rapido\/","title":{"rendered":"Como criar problemas no GitHub 5 vezes mais r\u00e1pido"},"content":{"rendered":"\n<p>Os problemas do GitHub s\u00e3o fant\u00e1sticos para rastrear novos recursos ou bugs, quem \u00e9 atribu\u00eddo, categoriz\u00e1-los, adicionar a projetos e assim por diante. Ao mesmo tempo, eles tamb\u00e9m s\u00e3o muito lentos para criar e criar um monte deles consome muito tempo.<\/p>\n<p>Um dos pontos problem\u00e1ticos que vejo nos problemas do <a href=\"https:\/\/startfunction.com\/tag\/github\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">GitHub<\/a> no trabalho \u00e9 que eles s\u00e3o complicados de criar, principalmente para aqueles que n\u00e3o s\u00e3o desenvolvedores ou designers, como gerentes ou testadores, que desejam relatar um bug sem passar pelo processo de cri\u00e1-los no GitHub.<\/p>\n<p>H\u00e1 algum tempo <a href=\"https:\/\/wordpress.mediadoma.com\/pt-pt\/acelere-a-criacao-de-problemas-do-github\/\" title=\", escrevi sobre um aplicativo\">, escrevi sobre um aplicativo<\/a> que estava escrevendo para acelerar a cria\u00e7\u00e3o de problemas no GitHub. Na verdade, eu construo o aplicativo, mas esqueci de escrever sobre isso aqui, ent\u00e3o aqui est\u00e1 o post apropriado no blog. Neste post veremos:<\/p>\n<ol start=\"2\">\n<li><a href=\"http:\/\/writing-issues\/\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">Escrevendo um lote de problemas do GitHub com texto simples<\/a><\/li>\n<li><a href=\"http:\/\/tech-stack\/\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">A pilha de tecnologia por tr\u00e1s do aplicativo<\/a><\/li>\n<li><a href=\"http:\/\/more-ideas\/\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">Mais ideias para melhorar a cria\u00e7\u00e3o de quest\u00f5es<\/a><\/li>\n<\/ol>\n<h2>Por que um aplicativo para criar problemas do GitHub mais rapidamente?<\/h2>\n<p>A IU do GitHub geralmente est\u00e1 correta para criar um problema. Ou dois. E tudo bem para pessoas com experi\u00eancia em tecnologia, como desenvolvedores ou designers. No entanto, em nossa empresa Reconnect, \u00e0s vezes, ap\u00f3s desenvolvermos um novo recurso, solicitamos que nossa equipe n\u00e3o t\u00e9cnica o teste. E isso funciona muito bem, porque eles geralmente encontram alguns problemas. Mas \u00e9 muito demorado para eles irem e pularem pela interface do usu\u00e1rio de problemas do GitHub. Isso \u00e9 ainda mais complicado quando eles precisam criar mais de um problema e provavelmente em reposit\u00f3rios diferentes.<\/p>\n<p>Se quantificarmos o n\u00famero de vezes que mudamos nossa aten\u00e7\u00e3o para criar problemas no <a href=\"https:\/\/startfunction.com\/tag\/github\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">GitHub<\/a> depois de chegarmos \u00e0 p\u00e1gina para criar um problema no reposit\u00f3rio onde queremos cri\u00e1-los, seria algo mais ou menos assim:<\/p>\n<ul>\n<li>digite o t\u00edtulo<\/li>\n<li>v\u00e1 para a caixa de texto do problema para inserir a descri\u00e7\u00e3o<\/li>\n<li>v\u00e1 para a barra lateral para atribuir o problema a algu\u00e9m<\/li>\n<li>v\u00e1 para o bloco R\u00f3tulos na barra lateral para adicionar um r\u00f3tulo<\/li>\n<li>v\u00e1 e clique no bot\u00e3o para realmente criar o problema<\/li>\n<\/ul>\n<p>S\u00e3o 5 vezes quando mudamos nossa aten\u00e7\u00e3o de uma \u00e1rea para outra! Muita mudan\u00e7a de aten\u00e7\u00e3o para uma tarefa que \u00e9 essencialmente escrita e muito tempo gasto refocalizando. E se voc\u00ea tiver que escrever um problema em um reposit\u00f3rio diferente? Voc\u00ea precisa navegar para esse reposit\u00f3rio em uma nova guia ou na atual e isso \u00e9 mais tempo perdido.<\/p>\n<p>Ent\u00e3o, como voc\u00ea pode criar problemas no GitHub com mais facilidade e rapidez? N\u00e3o seria mais f\u00e1cil se pud\u00e9ssemos faz\u00ea-lo focado em um \u00fanico lugar sem ter que mudar nossa aten\u00e7\u00e3o v\u00e1rias vezes?<\/p>\n<h2>Escrevendo um lote de problemas do GitHub com texto simples<\/h2>\n<p>A escrita \u00e9 uma das habilidades mais b\u00e1sicas nos dispositivos, \u00e9 mais b\u00e1sica do que os gestos de toque. Porque, embora sejam espec\u00edficos para dispositivos de toque, voc\u00ea precisa usar um mouse ou um trackpad em outros. Mas a escrita geralmente \u00e9 sempre a mesma. E os problemas do GitHub s\u00e3o texto, ent\u00e3o por que n\u00e3o usar texto para cri\u00e1-los sem sair do teclado?<\/p>\n<p>Este aplicativo faz exatamente isso: <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>Voc\u00ea autoriza este aplicativo GitHub e pode come\u00e7ar a escrever problemas em todos os seus reposit\u00f3rios. Voc\u00ea s\u00f3 precisa selecionar um reposit\u00f3rio onde deseja criar um problema e come\u00e7ar a escrever v\u00e1rios problemas, um em cada linha.<\/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=\"Como criar problemas no GitHub 5 vezes mais r\u00e1pido\"><\/a><\/p>\n<p>E suporta escrever o t\u00edtulo e a descri\u00e7\u00e3o, atribu\u00ed-lo e rotul\u00e1-lo. Requer apenas o t\u00edtulo da edi\u00e7\u00e3o. O resto \u00e9 tudo opcional. Voc\u00ea s\u00f3 precisa seguir uma certa conven\u00e7\u00e3o:<\/p>\n<ul>\n<li>o t\u00edtulo vem primeiro<\/li>\n<li>em seguida, um caractere de barra vertical separa os respons\u00e1veis. Escolhi assim porque, no m\u00ednimo, voc\u00ea precisa de um problema e de algu\u00e9m para trabalhar nele<\/li>\n<li>um segundo caractere de barra vertical separa a descri\u00e7\u00e3o do problema. Pode ter qualquer comprimento, mas n\u00e3o pode ter quebras de linha porque isso iniciaria um novo problema<\/li>\n<li>um terceiro caractere de barra vertical separa os r\u00f3tulos<\/li>\n<\/ul>\n<p>Ele oferece suporte a v\u00e1rios destinat\u00e1rios e r\u00f3tulos, separando-os usando uma v\u00edrgula. Ent\u00e3o, basicamente:<\/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>Uma vez feito, \u00e9 uma quest\u00e3o de clicar no bot\u00e3o <strong>Go!<\/strong> bot\u00e3o e ele ir\u00e1 criar todos os problemas. Cada um ter\u00e1 voc\u00ea como autor. Mais tarde, voc\u00ea pode edit\u00e1-los para adicionar imagens ou v\u00eddeos, memes, qualquer coisa.<\/p>\n<p>Se voc\u00ea precisar criar mais problemas em um reposit\u00f3rio diferente, basta selecion\u00e1-lo novamente no menu suspenso e come\u00e7ar a escrever esses problemas. Chega de pular p\u00e1ginas!<\/p>\n<h2>A pilha de tecnologia por tr\u00e1s do aplicativo<\/h2>\n<p>O reposit\u00f3rio para este aplicativo est\u00e1 localizado em <a href=\"https:\/\/github.com\/eliorivero\/fast-issues\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/github.com\/eliorivero\/fast-issues<\/a><\/p>\n<p>A pilha de tecnologia \u00e9 particularmente simples e inteiramente baseada em <a href=\"https:\/\/startfunction.com\/category\/javascript\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">JavaScript<\/a> :<\/p>\n<ul>\n<li>frontend constru\u00eddo com <a href=\"https:\/\/startfunction.com\/tag\/react\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">React<\/a><\/li>\n<li>back-end criado com <a href=\"https:\/\/startfunction.com\/tag\/node-js\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Node.js<\/a><\/li>\n<li>usa <a href=\"https:\/\/expressjs.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Express<\/a> como o servidor<\/li>\n<li>e <a href=\"https:\/\/github.com\/octokit\/rest.js\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Octokit REST<\/a> uma biblioteca para trabalhar com a API do GitHub<\/li>\n<\/ul>\n<p>Uma coisa a ter em mente \u00e9 que n\u00e3o queremos ultrapassar o limite de solicita\u00e7\u00f5es permitidas pela <a href=\"https:\/\/developer.github.com\/v3\/issues\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">API de problemas do GitHub<\/a>. Eles recomendam deixar passar pelo menos um segundo entre as solicita\u00e7\u00f5es, ent\u00e3o pausei a execu\u00e7\u00e3o 1,5 segundos entre a cria\u00e7\u00e3o de cada problema.<\/p>\n<p>Do prot\u00f3tipo inicial que fiz at\u00e9 a vers\u00e3o final, mudei de um aplicativo GitHub para um aplicativo OAuth. \u00c9 porque este \u00faltimo permite que voc\u00ea crie problemas e apare\u00e7a como autor.<\/p>\n<h2>Mais ideias para melhorar a cria\u00e7\u00e3o de quest\u00f5es<\/h2>\n<p>Mostrei isso a um amigo e ele me disse que tinha a ideia de criar uma extens\u00e3o do Chrome para tirar uma captura de tela de um bug, anot\u00e1-lo e envi\u00e1-lo como um problema do GitHub. Achei uma \u00f3tima ideia, ent\u00e3o procurei uma maneira de fazer uma captura de tela, mas dentro de um aplicativo React e rapidamente encontrei o <a href=\"https:\/\/html2canvas.hertzen.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">html2canvas<\/a> que permite fazer capturas de tela e salv\u00e1-las como arquivos PNG.<\/p>\n<p>Combinar algo assim com minha ferramenta para criar os problemas seria uma boa solu\u00e7\u00e3o que poderia estar dispon\u00edvel em um aplicativo React durante seu ciclo de desenvolvimento ou teste. Qualquer pessoa que teste o aplicativo pode acionar o painel de relat\u00f3rios de problemas e enviar um problema do GitHub.<\/p>\n<p>O \u00fanico problema com isso por enquanto \u00e9 que a API do GitHub n\u00e3o permite o upload de imagens, ent\u00e3o elas teriam que ser hospedadas em outro lugar e ter o link para esse local inserido nesta ferramenta, mas definitivamente \u00e9 uma boa melhoria.<\/p>\n<p>Ent\u00e3o, novamente, o aplicativo est\u00e1 em <a href=\"https:\/\/fast-issues.herokuapp.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/fast-issues.herokuapp.com\/<\/a> e se voc\u00ea acabar usando, deixe-me saber sobre isso nos coment\u00e1rios.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte de grava\u00e7\u00e3o:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/startfunction.com\" class=\"external external_icon\">startfunction.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Os problemas do GitHub s\u00e3o fant\u00e1sticos para rastrear novos recursos ou bugs, quem \u00e9 atribu\u00eddo, categoriz\u00e1-los, adicionar a projetos e assim por diante. Ao mesmo tempo, eles tamb\u00e9m s\u00e3o muito lentos para criar e criar um monte deles consome muito tempo. Eu estava cansado do processo lento de criar um problema no GitHub manualmente, ent\u00e3o criei um aplicativo de c\u00f3digo aberto gratuito para tornar o processo muito mais r\u00e1pido.<\/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":[898,753,722,774,837,920,1021,785],"tags":[1170],"class_list":["post-232215","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-codigo-2","category-codigo-aberto","category-desenvolvedor","category-fonte-de-controle","category-guia-para-iniciantes","category-outro","category-sites-uteis","category-software-livre","tag-affiai-pt-pt"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts\/232215","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/comments?post=232215"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/posts\/232215\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/media\/157962"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/media?parent=232215"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/categories?post=232215"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pt-pt\/wp-json\/wp\/v2\/tags?post=232215"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}