Construindo Habilidades para Programação

Olá! Este post é o inicio de uma série onde irei compartilhar dicas, referencias e informações sobre como desenvolver habilidades necessárias para programação, independente da linguagem, ferramentas ou IDE que venha utilizar. Estes conhecimentos eram pré requisito para qualquer programador antes da popularização de interfaces gráficas nos sistemas operacionais, mas foram ficando de lado, na medida que as próprias ferramentas e IDEs foram se tornando mais amigáveis. No entanto, conhecer detalhes mais profundos do funcionamento interno do sistema operacional e suas ferramentas, utilitários, protocolo de rede e das plataformas utilizadas certamente auxiliam não apenas numa compreensão mais ampla de determinados problemas, mas também na economia de tempo ao conseguir executar tarefas de forma mais direta e eficiente, especialmente em situações onde a interface gráfica ou IDEs pesadas mais atrapalham que ajudam.

Também irei te ensinar estratégias para aprender novas linguagens de programação usando alguns princípios simples mas eficientes, correlacionando conhecimentos novos com os que já possui e ampliando seu leque de opções quando precisar solucionar um problema com código.

Caso ainda não saiba nenhuma linguagem de programação, lhe ajudarei a desenvolver sua lógica e mostrarei no que focar para aprender.

Te darei um panorama geral sobre algumas das linguagens que aprendi ao longo de três décadas que venho trabalhando com programação e como conhecer um pouco de algumas delas e seus paradigmas pode te dar uma visão mais abrangente sobre o desenvolvimento de software. Vamos codificar, debugar e comparar código entre elas.

Iremos entender como funciona o gerenciamento de versão (Git e GitHub), algo muito solicitado para qualquer vaga que se candidate atualmente, e como o seu uso também pode auxiliá-lo a criar o novo modelo de currículo que as empresas buscam (o famoso “Falar é fácil, me mostre o código”).

Veremos os conceitos básicos e fundamentais de Bancos de Dados Relacionais, comandos SQL, SGDBs mais utilizados e como os mesmos se interligam com linguagens de programação.

Também irei abordar virtualização, protocolos de rede, segurança, DevOps, Cloud e alguns outros tópicos que embora não sejam diretamente ligados a programação rodeiam o nosso universo de atuação e ter conhecimentos sobre eles pode ser um ótimo diferencial para você e sua carreira.

Para conectar tudo, desenvolveremos um projeto prático, um pequeno sistema web, em uma das linguagens analisadas, conectando todos os conhecimentos adquiridos, produzindo um software de verdade, com acesso a banco de dados, código versionado com Git e hospedado no GitHub e sua publicação no Heroku (plataforma de nuvem), passando por todas as etapas de desenvolvimento, desde a analise até a entrega (publicação).

Iniciaremos nossa jornada analisando o Gerenciamento de Arquivos e Pastas e uso de Prompt de Comando. Utilizaremos como sistema base o Windows 10 mas ao longo da caminhada trabalharemos também com Linux e OS X (o sistema operacional dos computadores da Apple, criadora do iPhone).

Vem comigo, e juntos iremos construir e empurrar suas habilidades e seu conhecimento para um novo nível.

Leave a comment