Lista de Ferramentas - 2021
Tags: productivity, tooling
Published: 2022-07-04 17:40:12

Inspirado por [este artigo do Scott Hanselman](https://www.hanselman.com/blog/scott-hanselmans-2021-ultimate-developer-and-power-users-tool-list-for-windows), decidi fazer a minha própria lista de ferramentas recomendadas e utilitários que eu utilizo no dia-a-dia. São ferramentas principalmente para desenvolvedores e "usuários avançados", mas se você não for nem um nem outro, ainda é possível que algumas dessas ferramentas sejam úteis para você.
E o melhor, tirando algumas poucas exceções, praticamente todas essas ferramentas são gratuitas para uso!

# Extensões para VisualStudio

Essas são algumas extensões que utilizo no VisualStudio 2019, principalmente para uso com C# e .NET

- [Tweaks](https://marketplace.visualstudio.com/items?itemName=MadsKristensen.Tweaks) - Uma coleção de pequenas ferramentas e utilitários para o VS, como reabrir arquivo fechado, modo de apresentação do editor, exibição de estatísticas de compilação, etc.
- [Add New File](https://marketplace.visualstudio.com/items?itemName=MadsKristensen.AddNewFile) - Uma extensão simples para auxiliar na criação de novos arquivos. Com o atalho `shift + F2` você pode criar diretórios, arquivos com ou sem extensões, e até múltiplos arquivos de uma vez.
- [ReSharper](https://www.jetbrains.com/resharper/) - O ReSharper é uma ferramenta completa, que melhora em muito a produtividade no desenvolvimento. Ele traz diversos atalhos, analise de código, facilitadores de refatoração, etc. Um ponto negativo é que ela não é gratuita, então para utilizar você deve comprar uma licença. Porém se você trabalha diariamente escrevendo bastante código, pode valer a pena o valor.
- [Output enhancer](https://marketplace.visualstudio.com/items?itemName=NikolayBalakin.Outputenhancer) - Mais uma extensão simples que adiciona algumas cores nas mensagens exibidas na janela de `output` do VisualStudio, que facilita a visualização de algumas coisas como mensagens de erro ou de alerta.
- [File Icons](https://marketplace.visualstudio.com/items?itemName=MadsKristensen.FileIcons) - No explorador de solução, adiciona alguns ícones para extensões de arquivos que o VS não possui por padrão, como arquivos `.fs`, `.py`, `.yaml`, `.gitignore`, entre outros.
- [VsVim](https://marketplace.visualstudio.com/items?itemName=JaredParMSFT.VsVim) - Pra quem gosta do mecanismo de navegação do editor Vim, essa extensão traz essa experiência para dentro do VS, com um bom suporte para as configurações de atalhos que o Vim possui.
  - [Relative Number](https://marketplace.visualstudio.com/items?itemName=BrianSchmitt.RelativeNumber) - A numeração de linha relativa ajuda bastante na navegação quando se está utilizando o Vim, e se você for utilizar o VSVim essa extensão é praticamente obrigatório se de utilizar também.
- [AceJump](https://marketplace.visualstudio.com/items?itemName=jsturtevant.AceJump) - Extensão de navegação dentro do código. Para quem gosta de utilizar pouco o mouse durante o desenvolvimento, essa extensão ajuda na movimentação do cursor dentro do código. Funciona muito bem em conjunto com o VSVim.

# Extensões para VSCode

Extensões que sempre instalo no meu ambiente do VisualStudio Code.

- [Code Spell Checker](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker) - Um corretor ortográfico para o VSCode. Uso mais quando estou utilizando o VSCode para escrever meus artigos do que quando estou programando propriamente dito.
  - [Brazilian Portuguese - Code Spell Checker](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker-portuguese-brazilian) - Dicionário de palavras em Português para utilização com o corretor ortográfico Code Spell Checker.
- [Bracket Pair Colorizer 2](https://marketplace.visualstudio.com/items?itemName=CoenraadS.bracket-pair-colorizer-2) - Extensão que deixa os pares de parêntesis, chaves e colchetes com a mesma cor, ajudando na leitura do código, principalmente em linguagens de programação como Dart e JavaScript.
- [CodeSnap](https://marketplace.visualstudio.com/items?itemName=adpyke.codesnap) - Uma extensão interessante que permite gerar uma imagem a partir de um trecho de código. Possui diversas configurações de tema do código na imagem gerada, estilo da janela, etc.
- [Color Highlight](https://marketplace.visualstudio.com/items?itemName=naumovs.color-highlight) - Sempre que você adiciona uma cor no seu código (seja no formato `rgb` ou `hex`) essa extensão mostra qual é aquela cor.
- [Error Lens](https://marketplace.visualstudio.com/items?itemName=usernamehw.errorlens) - Essa é uma extensão que eu sinto muita falta quando não instalo. Ela pega os erros do seu código que apareceriam apenas na janela de output do VSCode e mostra direto ao final da linha onde o erro se encontra, dando bastante agilidade ao desenvolvimento.
- [Vim](https://marketplace.visualstudio.com/items?itemName=vscodevim.vim) - Da mesma forma que gosto de utilizar o emulador de Vim no VisualStudio, esse é o melhor emulador de Vim que encontrei até o momento para o VSCode, e sempre tem se atualizado trazendo novas funcionalidades.

## Personalização

Estes são os temas e pacotes de ícones que mais utilizo no VSCode

### Temas

- [Bluloco Light Theme](https://marketplace.visualstudio.com/items?itemName=uloco.theme-bluloco-light)
- [Panda Theme](https://marketplace.visualstudio.com/items?itemName=tinkertrain.theme-panda)
- [Dracula Official](https://marketplace.visualstudio.com/items?itemName=dracula-theme.theme-dracula)
- [Ayu](https://marketplace.visualstudio.com/items?itemName=teabyii.ayu)

### Pacote de ícones

- [Material Icon Theme](https://marketplace.visualstudio.com/items?itemName=PKief.material-icon-theme)
- [vscode-icons](https://marketplace.visualstudio.com/items?itemName=vscode-icons-team.vscode-icons)

# Programas para Desktop

Esses são programas que sempre instalo quando pego um novo computador para trabalhar. A maioria é exclusiva para Windows, mas também existem algumas multiplataformas.

## Windows

- [PowerToys](https://github.com/microsoft/PowerToys#installing-and-running-microsoft-powertoys) - Pensa em uma ferramenta que deveria ser nativa no Windows. Essa é a PowerToys. Ela traz diversas funcionalidades para o seu desktop Windows, como descobridor de cor, ferramenta de busca global, zonas para organização de janelas e muito mais!
- [Windows Terminal](https://www.microsoft.com/store/productId/9N0DX20HK701) - Já escrevi [este artigo](/2021/01/19/Ja-experimentou-o-Windows-Terminal/) falando sobre o Windows Terminal. É uma boa ferramenta para utilizar com os terminais e shells, e tem evoluído bastante.
- [WSL](https://docs.microsoft.com/pt-br/windows/wsl/about) - O Subsistema do Windows para Linux permite que você execute um ambiente Linux dentro do seu Windows, e possibilita a execução de comandos e ferramentas nativas do Linux no Windows. É incrível o que a Microsoft está fazendo com essa ferramenta e vale a pena fazer a instalação.
- [paint.net](https://www.getpaint.net/index.html) - Esse editor de imagem é uma versão aprimorada do Pain que vem por padrão no Windows. Possui várias funcionalidades para edição de imagens com uma boa performance.
- [ScreenToGif](https://www.screentogif.com/) - Uso essa ferramenta sempre que eu preciso gravar a tela e gerar algum gif para demonstrar alguma funcionalidade que estou desenvolvendo. É simples de usar e funciona bem.
- [LINQPad](http://www.linqpad.net/) - Com o LINQPad você consegue executar pequenos pedaços de código .NET para facilmente ver seu resultado sem a necessidade de depurar sua aplicação.
- [ZoomIt](https://docs.microsoft.com/en-us/sysinternals/downloads/zoomit) - Uma pequena ferramenta para ajudar em apresentações. Você pode desenhar na tela e fazer o zoom em alguma parte apenas com alguns atalhos do teclado.
- [TaskbarX](https://github.com/ChrisAnd1998/TaskbarX#downloads) - Se você gosta de personalizar sua área de trabalho, o TaskbarX permite centralizar os ícones na barra de tarefas da sua área de trabalho, assim como deixar ela transparente e algumas outras personalizações.

## Multiplataforma

- [DBeaver](https://dbeaver.io/) - Concentre suas conexões de banco de dados em um só lugar. Você pode conectar com bancos Oracle, SQLServer, MySQL, SQLite e vários outros bancos de dados.

# Ferramentas Online

- [github1s](https://github.com/conwnet/github1s) - Está consultando algum repositório do GitHub e quer dar uma olhada melhor no código fonte dele? Em vez de baixar o repositório para sua máquina, experimento o github1s. No endereço do repositório, troque `github.com` por `github1s.com`, aperte `Enter` e pronto, o repositório será rapidamente carregado em uma instância online do VSCode, facilitando muito a consulta do código fonte.
- [Photopea](https://www.photopea.com/) - Provavelmente você já ouviu ou precisou usar o Photoshop, da Adobe. Mas você sabia que existe uma ferramenta online e gratuita com praticamente todas as funcionalidades do Photoshop?
- [Iconfinder](https://www.iconfinder.com/) - Está fazendo algum projeto e precisa de algum ícone para o seu layout? Dê uma olhada no Iconfinder. Lá você encontra milhares de ícones gratis, sobre os mais diversos temas.
- [JSON Editor Online](http://jsoneditoronline.org/) - Sempre que preciso formatar ou alterar algum JSON eu utilizo essa ferramenta.
- [RegExr](https://regexr.com/) - Uma boa ferramenta para testar e construir expressões regulares. Ela traz algumas dicas também pra ajudar na escrita das regras.
- [gitignore.io](https://www.toptal.com/developers/gitignore) - Gerador de arquivos `.gitignore`. Você pode selecionar diversas linguagens ou frameworks diferentes para criar ou incrementar seu arquivo de exclusão do GIT.
- [Fake Name Generator](https://pt.fakenamegenerator.com/) - Quando a minha criatividade acaba eu apelo para esse site para gerar informações falsas de usuários para montar massa de testes ou ambientes de homologação. Ele gera para você nome, endereço, CEP, CPF e várias outras informações que você pode precisar em um cadastro.
- [JSON Utils](https://jsonutils.com/) - Recebeu um JSON e precisa gerar uma classe para ele no C#, JavaScript ou TypeScript? Essa ferramenta te ajuda a fazer isso. Adicione o JSON que você tem e deixe que ela gere as classes para você dependendo da linguagem selecionada. Depois é só importar no seu código e fazer qualquer ajuste que seja necessário.
- [ConnectionStrings](https://www.connectionstrings.com/) - Precisa conectar em um banco de dados mas esqueceu exatamente como deve ser a linha de conexão para utilizar no seu arquivo de configuração? Esse site traz exemplos de `connection strings` para diversos bancos de dados, como OData, Oracle, DB2, MSSQL, etc.
- [draw.io](https://app.diagrams.net/) - Ótima ferramenta para criação de fluxogramas e diagramas e até para criação de rascunhos de telas