- Passo 3: Inicie um projeto para praticar o que você aprendeu
- alguns projetos amigáveis para iniciantes você pode tentar
- Projetos de Nível 1
- Nível 2 Projectos
- Nível 3 Projectos
- Não desista facilmente, você tem que superar as lutas iniciais
- É importante construir uma base forte
- Aprenda fazendo. Sempre brinque com o código enquanto aprende.
- Parte 2: Roadmap para se tornar um programador avançado
- Data Analytics
- Como você pode aprender Análise de Dados gratuitamente?
- O contorno dos Módulos de Análise de Dados
- Coisas a evitar enquanto aprende Análise de Dados
- Engenharia de Software
- Como você pode aprender Engenharia de Software gratuitamente?
- Continuação dos Módulos de Engenharia de Software
- Cursos práticos
- Cursos Avançados
- Opcional
- Conclusão
Passo 3: Inicie um projeto para praticar o que você aprendeu
Visitar cursos sozinha não o ajudaria a internalizar o conceito. Você teria que colocar o conceito em prática. A melhor maneira de fazer isso seria criar projetos.
Se você tem uma idéia para um projeto ou tem um problema que você quer resolver com a codificação, isso é ótimo!
Se eu não tiver preparado uma lista de projetos amigáveis para iniciantes dos quais você pode se inspirar ou tentar.
alguns projetos amigáveis para iniciantes você pode tentar
Aqui estão algumas terminologias que podem ser confusas
Bibliotecas: Uma biblioteca é uma coleção de peças de código relacionadas que foram compiladas e armazenadas juntas em um único arquivo. Esse ficheiro pode ser ligado ao seu código para lhe dar acesso ao código na biblioteca.
API: API significa Application Programming Interface. Uma API é um software intermediário que permite que duas aplicações falem uma com a outra. Em outras palavras, a API permite que você solicite funções de um provedor de software para fazer uso do seu código. Por exemplo, a API Spotify permite solicitar dados como músicas e artistas de Spotify e você pode fazer uso dos dados em seu código ou aplicação.
Projetos de Nível 1
Calculador
- Idioma: Python
- Biblioteca: Nenhuma
- Guia: https://www.programiz.com/python-programming/examples/calculator
>
>
Sudoku Solver
- Linguagem: Python
- Biblioteca: Nenhuma
- Guia: https://techwithtim.net/tutorials/python-programming/sudoku-solver-backtracking/
>
>
Hangman
- Linguagem: Python
- Biblioteca: Nenhuma
- Guia: https://www.pythonforbeginners.com/code-snippets-source-code/game-hangman
>
>
Nível 2 Projectos
Tradução
- Idioma: Python ou Java
- Biblioteca: Nenhuma
- Guia: https://www.youtube.com/watch?v=ejZqLsQDjuo
>
>
Descobrir semanalmente a lista de reprodução
- Construir o seu próprio sistema para fazer algo semelhante à lista de reproduçãoDescobrir semanalmente
- Idioma: Python
- Biblioteca: Spotify API
- Guia: https://towardsdatascience.com/making-your-own-discover-weekly-f1ac7546fedb
>
Ferramenta automática de controle de tempo
- Improve o foco rastreando o tempo gasto em aplicações desktop ou web sites em tempo real.
- Idioma: Python
- Biblioteca: Selénio
- Guia: https://www.youtube.com/watch?v=ZBLYcvPl1MA
>
>
Nível 3 Projectos
Instagram Automation
- Automate o processo de publicação no Instagram
- Idioma: Python
- Biblioteca: Frasco,Instapy
- Guia: https://www.youtube.com/watch?v=vnfhv1E1dU4
>
Twitter Bot
- Um bot que automaticamente tweets para o seu feed.
- Linguagem: Python
- Biblioteca: API do Twitter
- Guia: https://medium.com/science-friday-footnotes/how-to-make-a-twitter-bot-in-under-an-hour-259597558acf, https://learn.g2.com/how-to-make-a-twitter-bot, http://socialmedia-class.org/twittertutorial.html
>
>
Telegrama chatbot
- Um chatbot que lhe permite automatizar mensagens de telegrama de chat
- Idioma: Python
- Biblioteca: Python-Telegram-API
- Guia: https://www.freecodecamp.org/news/learn-to-build-your-first-bot-in-telegram-with-python-4c99526765e4/
>
Esta não é uma lista exaustiva. Se você tem um problema que precisa resolver, pense em como você pode resolvê-lo com programação. Isso também pode ser um projeto.
Não desista facilmente, você tem que superar as lutas iniciais
O maior erro que você pode cometer como um aspirante a programador é desistir porque você não acha que é inteligente o suficiente para aprender a programar. Aprender a codificar não tem nada a ver com sua inteligência.
Aprender a programar é difícil e a maioria das pessoas enfrentaria dificuldades em algum momento porque há muitos tópicos para aprender. Como você está programando, vai haver muitos tópicos que não vão fazer sentido na primeira vez. Portanto, abstenha-se dos auto-pensamentos negativos.
Eu também fico preso. Muitas vezes tenho que remontar a mesma palestra ou vídeo tutorial várias vezes para que eu possa entender o conceito. Não desanime se você se encontrar no meu lugar.
É importante construir uma base forte
Por mais elementares que apareçam no início, os fundamentos da programação sempre precisam vir primeiro: quanto melhor você os entender, mais fácil é aprender conceitos mais avançados. Se o tópico atual que você está aprendendo não faz sentido para você, fique onde você está. Não prossiga para o próximo tópico. Pular adiante é semelhante a construir uma casa sem uma base, negligenciando a base.
Se o tutorial (ou livro) que você está usando não explicou suficientemente o tópico, você pode ter que encontrar outros recursos que se adaptem a você. Você pode encontrar praticamente tudo o que você está procurando aprender gratuitamente no Google. Descubra o que procurar (por exemplo, em + quaisquer outras palavras-chave úteis).
Tire pelo menos 20 minutos para descobrir algo por si mesmo antes de procurar por ajuda. Há uma boa chance de que a resposta já esteja na sua frente. A luta faz com que você aprenda melhor e um melhor programador em geral.
Stackoverflow e aprender programação são minas de ouro para assistência à programação.
Aprenda fazendo. Sempre brinque com o código enquanto aprende.
O objectivo é estar consciente da sua própria aprendizagem à medida que avança no caminho da aprendizagem. Portanto, não siga cegamente os cursos e copie cegamente o código sem entendê-lo primeiro. Entenda os conceitos que foram ensinados na lição e tente recriá-lo.
Conforme você progride, torne um hábito a prática da sua programação. Você pode fazer isso em leetcode, hackerrank, ou fazendo um projeto. Tente fazer um projeto após cada módulo com os conceitos que você aprendeu. Quando eu estava fazendo cursos online tentei fazer um projeto a cada semana, aplicando todos os conceitos que aprendi.
Parte 2: Roadmap para se tornar um programador avançado
Agora que você aprendeu o básico da programação, o próximo passo seria pensar sobre qual caminho da programação você quer aprender mais sobre. Há muitos caminhos em que você pode se aventurar depois de ter compreendido o básico da programação, com os caminhos principais e mais populares sendo Engenharia de Software & Data Analytics.
Data Analytics
O que é Data Analytics?
Data Analytics é a ciência de examinar dados brutos para concluir novas informações. Envolve a aplicação de um processo algorítmico ou mecânico para obter insights. Por exemplo, correr por vários conjuntos de dados para procurar correlações significativas entre si.
Então, por que você deve aprender análise de dados? Grandes Dados é o futuro. Ele está sendo gerado a uma taxa exponencial, e muitas empresas estão fazendo uso desses dados para tomar melhores decisões, bem como verificar e refutar teorias ou modelos existentes. Espera-se que a demanda por análise de dados cresça no futuro, pois os dados serão o núcleo do processo de tomada de decisão em muitas empresas.
Como você pode aprender Análise de Dados gratuitamente?
>
Passei pelo currículo das universidades e encontrei um caminho para tentar combinar cursos online gratuitos com cursos universitários. No entanto, todos esses cursos são em Python, se você quiser aprender em uma língua diferente, sinta-se livre para conferir outros cursos.
O contorno dos Módulos de Análise de Dados
O contorno é geralmente baseado em módulos universitários. No entanto, estou excluindo alguns dos módulos importantes como Estrutura de Dados e Algoritmo que as universidades ensinam, pois estes são mais conceituais e de nível superior.
Nota: Coloquei a aprendizagem mecânica mais acima na prioridade, pois ela permite que você faça uso das habilidades aprendidas em cursos fundamentais.
Cursos Fundamentais
Módulo 1: Aprendendo o básico de Python (1 Mês)
- Aprendendo a sintaxe de Python
- Aprendendo Loops de Aprendizagem
- Aprendendo Programação Orientada a Objetos
Módulo 2: Pré-processamento de Dados, Visualização de Dados, Análise Exploratória de Dados (1 Mês)
- Aprendizagem de como fazer uso de bibliotecas python (matplotlib, numpy e pandas)
- Estas bibliotecas permitem manipular os dados
Cursos Avançados
Módulo 3: Aprendizagem na Máquina (2 Meses)
- Prerequisito: Álgebra Linear
- Aprendizagem de Máquinas é um curso bastante técnico de matemática
- Python tem uma biblioteca bastante abrangente para Aprendizagem de Máquinas chamada Scikit-Learn.
- Se você quiser uma abordagem mais prática para a aprendizagem de máquinas, você pode conferir o Kaggle Learn.
Cursos de Ferramentas do Mundo Real
Módulo 4: Bases de Dados (SQL) (1 Mês)
- O curso de base de dados ensina basicamente como os dados são armazenados e como você pode recuperar esses dados para executar funções de programação.
- O conhecimento prático de bases de dados e SQL é uma necessidade se você quiser se tornar um cientista de dados.
Módulo 5: Cursos de Ferramentas do Mundo Real
- Hadoop & Map-Reduce + Spark(escolha um) (1.5 meses)
- Estas são ferramentas de Grandes Dados que a indústria comumente usa para processar grandes quantidades de dados.
- Aprendizagem das tecnologias Hadoop lhe dará muito conhecimento fundamental, teoria e habilidades práticas. Também, você pode encontrar algo novo usando-o.
- Spark é a implementação moderna do Hadoop e está vendo um caso de uso crescente.
Módulo 6: Data Storytelling (1 Semana)
- Apresentação da História com dados é o elo que falta aos profissionais de análise para fornecer a essência dos sinais de data e insights para executivos, gerentes e outras partes interessadas.
Cursos Opcionais
- Estrutura de Dados
- Algoritmo
- Deep Learning
- Em cinco cursos, você aprenderá os fundamentos do Deep Learning, entenderá como construir redes neurais e aprenderá como liderar projetos de aprendizagem de máquinas de sucesso. Você vai praticar todas essas idéias em Python e em TensorFlow, que eles vão ensinar.
- É um dos melhores cursos de Aprendizagem Profunda lá fora. Atualmente, eu estou no meio de fazer este curso e concordo com as revisões como é apresentado de uma forma simples e clara, apesar do Aprendizado Profundo ser um tópico técnico.
- Um outro grande recurso gratuito é rápido.ai
Coisas a evitar enquanto aprende Análise de Dados
A armadilha é que você está apenas aprendendo mas não aplicando o conhecimento. Uma maneira que eu tento aplicar meu conhecimento é iniciar um projeto após cada módulo que eu tenha completado. Para Data Analytics você pode tentar o seu melhor em uma competição de sua escolha da Kaggle. Use Kaggle Learn como um guia útil
Engenharia de Software
O que é Engenharia de Software?
Em resumo, Engenharia de Software está basicamente usando conceitos de programação para construir aplicações