Um guia extenso de informações com um vasto conteúdo de várias áreas para ajudar, agregar conhecimento e retirar dúvidas, nesse guia você encontrará tudo que necessário para qualquer carreira relacionada a tecnologia.
Abaixo você encontrará conteúdos para te guiar e ajudar a se tornar um desenvolvedor ou se especializar em qualquer área de TI. Caso você já atue como desenvolvedor ou em outra área, confira o repositório para descobrir novas ferramentas para o seu dia-a-dia, caminhos possíveis e as tecnologias para incorporar na sua stack com foco em se tornar um profissional atualizado e diferenciado em front-end, back-end, dentre outras.
Siga nas redes sociais para acompanhar mais conteúdos:
💌 Doações
Olá! Se você está lendo isso, é porque provavelmente já conhece o meu repositório no GitHub, que oferece conteúdo gratuito para ajudar desenvolvedores a aprimorarem suas habilidades. E se você está aqui, talvez esteja considerando contribuir com uma doação para apoiar a continuação do projeto.
Se você quiser contribuir, existem várias opções disponíveis, incluindo PayPal, PagSeguro, Mercado Pago, Buy Me A Coffe, Pic Pay e Pix. Qualquer doação, por menor que seja, é extremamente bem-vinda e será usada com responsabilidade e transparência. Obrigado por considerar apoiar meu projeto! Juntos, podemos continuar a compartilhar conhecimento e ajudar a criar uma comunidade de desenvolvedores mais forte e colaborativa.
:closed_book: E-Book
Este repositório é um projeto gratuito para a comunidade de desenvolvedores. Você pode me ajudar comprando o e-book "e-Front" se estiver interessado em aprender ou melhorar suas habilidades de desenvolvimento front-end. O e-book é completo e cobre tecnologias essenciais como HTML, CSS, JavaScript, React, TypeScript e mais. O valor é simbólico e sua compra me ajuda a produzir e fornecer mais conteúdo gratuito para a comunidade. Adquira agora e comece sua jornada no desenvolvimento front-end.
Antes de tudo você pode me ajudar e colaborar, deu bastante trabalho fazer esse repositório e organizar para fazer seu estudo ou trabalho melhor, portanto você pode me ajudar das seguintes maneiras:
A proposta deste guia é dar uma ideia sobre o atual panorama e guiá-lo se você estiver confuso sobre qual será o seu próximo aprendizado, sem influenciar você a seguir os 'hypes' e 'trends' do momento. Acreditamos que com um maior conhecimento das diferentes estruturas e soluções disponíveis poderá escolher a ferramenta que melhor se aplica às suas demandas. E lembre-se, 'hypes' e 'trends' nem sempre são as melhores opções.
:beginner: Para quem está começando agora
Não se assuste com a quantidade de conteúdo apresentado neste guia. Acredito que quem está começando pode usá-lo não como um objetivo, mas como um apoio para os estudos. Neste momento, dê enfoque no que te dá produtividade e o restante marque como Ver depois. Ao passo que seu conhecimento se torna mais amplo, a tendência é este guia fazer mais sentido e ficar fácil de ser assimilado. Bons estudos e entre em contato sempre que quiser! :punch:
🚨 Colabore
Abra Pull Requests com atualizações
Discuta ideias em Issues
Compartilhe o repositório com a sua comunidade
🌍 Tradução
Se você deseja acompanhar esse repositório em outro idioma que não seja o Português Brasileiro, você pode optar pelas escolhas de idiomas abaixo, você também pode colaborar com a tradução para outros idiomas e a correções de possíveis erros ortográficos, a comunidade agradece.
Muito do conteúdo desse repositório pode se encontrar em um idioma diferente do seu, desta maneira, fornecemos algumas ferramentas para que você consiga realizar a tradução do conteúdo, lembrando que o intuito desse guia é fornecer todo o conteúdo possível para que você possa se capacitar na área de tecnologia independente do idioma a qual o material é fornecido, visto que se você possuí interesse em consumir esse material isso não será um empecilho para você continue seus estudos.
HackerRank - Desafios de Programação Back-end. Com IDE integrada
Hackereath - Site para desenvolver suas habilidades de código.
CoderByte - Desafios de Programação Back-end. Com IDE integrada
Coderchef - Site para Estuda sobre programação, código e afins.
W3Resources - Exercícios online para praticar de inúmeras linguagens
Coursera - Cursos gratuitos com conteúdos conceituados
Scrimba - Cursos gratuitos e pagos para aprender as tecnologias mais demandadas do Front-end
CodePen - Rede social de desenvolvedores front-end
Codementor - Site para praticar e aprender a desenvolver suas skills como desenvolvedor
FreeCodeCamp - Aprenda como codificar gratuitamente e ganhe portfólio ajudando organizações sem fins lucrativos
GeeksForGeeks - Plataforma para desenvolver suas habilidade em diversas áreas da programação
W3Schools - Inúmeras documentações explicadas de forma intuitiva
Khan Academy - Plataforma de estudos conceituada sobre aprendizado gamificado
Udacity - Aprendizado tecnológico com ps conteúdos mais quentes do mercado (IA, data science, cloud computing, etc)
SoloLearn - Aprenda a programar gratuitamente pelo celular ou web
edX - Aprenda com os melhores, cursos de ciência da computação e ciência de dados ministradas por docentes das maiores e melhores universidades de todo o mundo
Treehouse - Cursos para desenvolvedores e aprimomaromento de portfólio
Coding Ground - Várias plat - ormas de codificação online
TheOdinProject - Site para aprender programação e desenvolvimento por meio de cursos
FrontEndMaster - Site para aprender programação e desenvolvimento por meio de cursos
Balta.io - Site para aprender programação e desenvolvimento por meio de cursos
FrontEndMaster - Site para aprender programação e desenvolvimento por meio de cursos
DataScienceAcademy - Site com diversos cursos gratuitos para inciar no mundo de Python & DataScience
FIAPx - Site com diversos cursos gratuitos na área da tecnologia
FGV - Site com diversos cursos gratuitos na área da tecnologia
CodeAcademy - Site com diversos cursos gratuitos de programação (EN)
Kaggle - Site com diversos cursos gratuitos de Python & DataScience (EN)
Complete Intro to Web Development - Site com os principais conteúdos referentes a desenvolvimento web criado e mantido por um dos professores do site Frontend Masters (EN)
4noobs - Repositório desenvolvido para mostrar os conhecimentos básicos em diversas linguagens e ferramentas para desenvolvedores iniciantes.
Shape Dividers - Gera divisores de formas verticais, responsivos, e animados facilmente com este gerador de divisores de formas SVG
Couleur - Uma ferramenta de cores simples para ajudá-lo a encontrar uma boa paleta de cores para seu projeto da web)
Baseline CSS Filters - 36 Belos filtros de fotos, com edição simples e CSS para copiar)
UI Deck - Modelo de página de destino HTML gratuitos e premium, temas de bootstrap, modelos de React, modelos de Tailwind, modelos de site HTML, e kits de interface de usúario)
Naevner - Descrição de cores em linguagem natural, gerador de códigos em cores hexadecimais)
Meta Tags - Elementos de metadados HTML gerados automaticamente para melhor o SEO
🎮 Sites para aprender a programar jogando
Code Combat - Site para aprender conceitos e linguagens de programação enquanto joga
CheckiO - CheckiO é um site que tem como objetivo ensinar programação, mas todos os desafios de codificação devem ser concluídos em Python.
CodeWars - Desafios de Programação Back-end. IDE integrada
Schemaverse - O Schemaverse é um jogo de estratégia baseado no espaço implementado inteiramente em um banco de dados PostgreSQL.
Code Monkey - CodeMonkey é um ambiente de codificação de computador educacional que permite que iniciantes aprendam conceitos e linguagens de programação de computador.
Coding Games - Desafios Programação Back-end com foco em temática de jogos. IDE integrada
Edabit - Desafios de Programação Back-end. IDE integrada
Flexbox Zombie - Desafios com CSS Flexbox para se defender de zumbis
Flexbox Defense - Desafios com CSS Flexbox para impedir que inimigos ultrapassem suas defesas
CSS Grid Attack - Ataque inimigos enquanto treina práticas de CSS, com uma narrativa mais profunda
Code - Site para estudos de algoritmos com a temática do jogo Minecraft
Insomnia - é um API Client, uma ferramenta para fazer testes de API's.
Rive - ferramenta colaborativa de animação para apps, jogos e sites.
CloudCraft - plataforma com foco em criar desenhos de arquiteturas AWS.
BundlePhobia - site para descobrir o custo de adicionar um npm package no seu pacote.
Font Flipper - Tinder das fontes, basta apertar X caso não goste e ❤ se você gostar, adicione aos favoritos já com o nome da fonte e faça o download pelo Google fonts.
VisBug - é uma extensão de Chrome, criada pelo google, ferramenta de design que te permite mudar o layout das páginas da web desde o estilo de fontes até a posição dos elementos.
ThunderClient - é um Rest API Client totalmente leve e compatível com Visual Studio Code. Idêntico ao Postman, ele serve para realizar testes com nossas requisções HTTP.
SmallDevTools - Ferramentas GRATUITAS para desenvolvedores, como codificador/decodificador, formatadores HTML/CSS/Javascript, minificadores, geradores de dados falsos ou de teste & muito mais
Universo Programado - Canal sobre lógica por trás do desenvolvimento de inteligências artificiais
Vinícius Thiengo - Canal com aulas de desenvolvimento android e técnicas de código limpo
Zero Bugs - Canal sobre desenvolvimento web com PHP e JavaScript
Balta.io - Canal explicando uma ferramenta completa para auxiliar você em seu caminho para se tornar um desenvolvedor de respeito, - om mais de 80 cursos direcionados
CodAffection - Este canal tem como objetivo ensinar e inspirar desenvolvedores a criar aplicativos
Codedamn - Canal sobre programação e tecnologia no geral
EspecializaTi - Canal de cursos Online de Desenvolvimento Web
Jose Carlos Macoratti - Vídeo Aulas sobre a plataforma .NET e tecnologias web: C# , VB .NET , ASP .NET , ASP .NET MVC, ASP .NET Core, Entity Framework, Xamarin Forms, Xamarin Android, Angular, ADO .NET , SQL, Node, etc
Michelli Brito - Canal sobre conteúdos de programação, arquitetura de software e carreira em TI
The Net Ninja - Habilidades de desenvolvimento web. Mais de 1000 tutoriais de programação gratuitos sobre
Vinícius Thiengo - Vídeos tutoriais sobre desenvolvimento Android e técnicas de código limpo
Traversy Media - Traversy Media apresenta os melhores tutoriais de desenvolvimento e programação da web on-line para todas as tecnologias da web mais recentes
Professor José de Assis - Arduino com foco em robótica educacional, Programação Linguagem C, Java e desenvolvimento WEB, Linux com foco em servidores de rede
CFBCursos - Canal de cursos/aulas de informática que disponibiliza conteúdo de qualidade e gratuito
Coding Snow - Coding Snow é um canal para design e desenvolvimento criativo da Web, designs de front-end, designs de interface do usuário, Web design responsivo e designs de back-end usando HTML, CSS, Javascript / JQuery, PHP, MYSQL
Pessonizando - Canal fala sobre Programação, Teste de Software, Carreira em Computação e como é viver e trabalhar com TI na EUROPA.
Lama Dev - Tutoriais de desenvolvimento da Web para todos. Aprenda JavaScript, React.js, Node.js e encontre inspiração para HTML, CSS e web design com Lama e torne-se um desenvolvedor web.
Pisani da Arch - É um canal com conteúdos voltados para Arquitetura de Solução, onde o objetivo é ajudar a comunidade de Devs e Archs a projetarem soluções com os melhores padrões do mercado.
Nick Chapsas - Canal de um engenheiro de software de Londres com tutoriais e dicas de ferramentas Microsoft (ASPNET Core, C#, etc)
Tiago Aguiar - Canal de um desenvolvedor mobile com experiência em Android & IOS.
PodProgramar - Focado em programação, notícias e histórias da área
Podcast OsProgramadores - Tudo que você sempre quis saber sobre Programação vida de programador, e também como chegar lá. Entrevistas com profissionais reconhecidos Nacional e Internacionalmente.
Hipsters.tech - Desenvolvimento de aplicações, design digital, startups e tecnologias em geral
📝 Necessário para sobrevivencia
- [Site para instalar o Git](https://git-scm.com/downloads)
- Configurações iniciais do Git
```bash
git config --global user.name # => Configura nome de usuário que marcará os commits
git config --global user.email # => Configura o email que marcará os commits
```
- Inicializando um repositório
```bash
git init
```
- Clonar projeto remoto
```bash
git pull
```
- Adicionando um repositório remoto
```bash
git remote add origin https://github.com/User/Repository.git
```
- Verifica o status do repositório
```bash
git status
```
- Trackear o que não foi trackeado, inserir tudo
```bash
git add . #=> Ou -A
```
- Realizar Commit
```bash
git commit -m "inserir um comentário significativo" # => Ou -am
```
[Diferença entre as flags -m e -am](https://pt.stackoverflow.com/questions/344986/diferen%C3%A7a-do-git-commit-am-e-m)
- lista de commits
```bash
git log
#=> ou
git log --oneline #=> exibe log com hash e título do commit
```
- Desfazer alterações
```bash
git reset # => --soft / --mixed / --hard
```
- Mudar a branch atual
```bash
git checkout
# ou
git checkout -b # => Cria e muda para a branch passada
```
- Checar o que houve nas alterações
```bash
git diff
# ou
git diff --name-only # Mostra apenas a alteração entre commits especificados por identificador
git diff --name-only HEAD~ HEAD~ # ou por contagem
# ou
git diff # => Mostra apenas a alteração feita naquele arquivo
```
- Retroceder até certa posição
```bash
git checkout HEAD -- "diff"
```
- Envia todos os commits do branch local
```bash
git push
```
- Baixa o histórico e incorpora as mudanças
```bash
git pull
```
- Combina o marcador do branch no branch local
```bash
git merge [marcador]/[branch]
```
- Visualizando todas as branches existentes no repositório
```bash
git branch #=> local
# => ou
git branch --all #=> local e remoto
```
- Deletando Branchs
```bash
# Local
git branch -D
git branch -d
# Remoto
git push origin <:nome-branch>
# Todas branch que não se encontram no repositório remoto
git branch --merged ##
git branch -r | egrep -v -f /dev/fd/0 <(git branch -vv | grep origin | grep -v "master") | xargs git branch -d
# Todas as branches no repositório local (exceto a master)
git branch | grep -v "master" | xargs git branch -D
```
📝 Alguns comandos úteis (Linux, MacOs e Powershell/Windows)
- lista os arquivos presentes no diretório
```bash
ls # => lista do diretorio atual
# ou
dir / tree /f
# ou
ls # => lista do diretorio passado
```
- Altera diretório atual
```bash
cd #=> volta para a home
# ou
cd #=> leva para o caminho passado
```
- Remove arquivo
```bash
rm
```
- Remove diretório cujo caminho é dado como operando
```bash
rmdir
# => o diretório deve estar vazio, ou seja, antes você tem que remover todos os arquivos do diretório
```
- Escreve na tela o conteúdo do arquivo do caminho dado como operando
```bash
cat
```
- Escreve na tela o caminho do diretório de trabalho atual
```bash
pwd
```
- Lista os comandos já executados
```bash
history
```
- Limpa a tela do terminal
```bash
clear # => (clc no Powershell)
```