Como começar a desenvolver
O desenvolvimento dos produtos está baseado em alguns pilares:
GitHub/Git
GitHub é uma plataforma de hospedagem de código-fonte e arquivos com controle de versão usando o Git. Permite que programadores, utilitários ou qualquer usuário cadastrado na plataforma contribua em projetos privados e/ou Open Source de qualquer lugar do mundo. Promove fácil comunicação através de recursos que relatam problemas ou mesclam repositórios remotos (issues, pull request). Wikipédia
Todos os códigos dos projetos desenvolvidos pela comunidade estão hospedados no GitHub. Para contribuir com algum produto, faça um cadastro na plataforma; instale os pacotes no seu sistema operacional e gere uma chave ssh para autenticação.
Depois destes passos realizados, acesse o repositório do produto em que deseja trabalhar e leia atentamente o README.rst que possui informações de como instalar o ambiente e boas práticas de desenvolvimento. Por exemplo:
Para orientações sobe o GitHub/Git:
Docker
"Docker é uma plataforma voltada para a criação e execução de containers. Diferente de uma VM, um container empacota somente o código, dependências e variáveis de ambiente necessárias para a execução de uma aplicação. Sendo assim, ao invés de termos uma infraestrutura onde cada VM tem seu próprio SO sendo responsável por uma aplicação diferente, temos uma infraestrutura onde, com apenas um sistema operacional e através do Docker, podemos gerenciar diversas aplicações. Cada uma dessas aplicações é executada de forma isolada, sem a necessidade de um sistema operacional próprio." Leonardo Berlatto
Alguns sites de referência:
Docker HUB
Este é um registro usado para hospedar e baixar diversas imagens. Pode ser visto como uma plataforma SAAS (Software as a Service) de compartilhamento e gerenciamento de imagens. Dockerfile – Um arquivo texto contendo uma sintax simples para criação de novas imagens.
Linguagem de programação Python
Todos os produtos desenvolvidos pela comunidade utilizam como base a linguagem de programação Python. É uma linguagem de programação de alto nível, interpretada de script, imperativa, orientada a objetos, funcional, de tipagem dinâmica e forte. Foi lançada por Guido van Rossum em 1991. Wikipedia
Sites de referência:
Framework Django
Django é um framework Python que facilita a criação de sites usando Python. Cuida das coisas difíceis para que você possa se concentrar na construção de suas aplicações web. Enfatiza a reutilização de componentes, também conhecido como DRY (Don't Repeat Yourself), e vem com recursos prontos para uso, como sistema de login, conexão de banco de dados e operações CRUD (Create Read Update Delete).
Sites de referência:
CMS Plone
O Portal Modelo é uma customização realizada em cima de um poderoso e flexível CMS (Content Management System), Plone, que preza pela acessibilidade, usabilidade e internacionalização.
Sites de referência:
- Plone.org
- Comunidade Plone.org.br
- Discussão sobre Plone
- Mão na massa
- Documentação Plone 6
- Demonstração do Plone 6
Linguagens de Front-end
- W3Schools Tutorial de HTML
- W3Schools Tutorial de CSS
- W3Schools Tutorial de Javascript
- W3Schools Tutorial de React
Design Thinking
Design Thinking é um método para estimular ideação e perspicácia ao abordar problemas, relacionados a futuras aquisições de informações, análise de conhecimento e propostas de soluções. Wikipédia