Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proposta de nova infraestrutura para projetos brasileiros. #208

Open
wants to merge 8 commits into
base: pelican
Choose a base branch
from
Binary file added content/images/projetos-brasileiros/default.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
41 changes: 23 additions & 18 deletions content/pages/introducao.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,42 +4,47 @@ Template: page

Python é uma linguagem poderosa e divertida. Com ela você pode fazer diversas coisas como:

* Construção de sistemas Web com Django, Flask, Pyramid, etc.
* Análise de dados, Inteligência Artificial, Machine Learning e etc com Numpy, Pandas, Matplotlib, etc
* Construção de aplicativos com Kivy e Pybee
* Construção de sistemas Web com Django, Flask, Pyramid, etc;
* Análise de dados, Inteligência Artificial, Machine Learning e etc com Numpy, Pandas, Matplotlib, etc;
* Construção de aplicativos com Kivy e Pybee;
* Construção de sistemas desktop com Tkinter, WxPython, etc.

Existem diversos cursos onlines onde você pode encontrar material. São cursos que você consegue aprender o básico da programação com Python como
tipos de variáveis, como escrever funções, etc.
Existem diversos cursos onlines onde você pode encontrar material. São cursos
que você consegue aprender o básico da programação com Python, como tipos de
variáveis, como escrever funções, etc.

**Devo usar o Interpretador do Python puro?**
Depende da sua preferência. Ele é uma ferramenta poderosa. Mas boa parte de profissionais usa o interpretador
[*ipython*](http://ipython.org/) pois este contém mais recursos visuais e de auxílio (como colorir as mensagens de erro).
Depende da sua preferência. Ele é uma ferramenta poderosa, mas boa parte de
profissionais usa o interpretador [*ipython*](http://ipython.org/). Pois, este
contém mais recursos visuais e de auxílio (como colorir as mensagens de erro).

**Que IDE usar?**
Depende muito da sua preferência. Você pode usar qualquer editor de texto padrão, como o [Notepad++](https://notepad-plus-plus.org/), Gedit ou [Sublime](http://sublimetext.com/) até o VI puro. Não existe padrão.
Para quem vem do MATLAB ou R, o [Spyder](https://github.com/spyder-ide/spyder) pode ser muito útil. O [Pycharm](https://www.jetbrains.com/pycharm/) é outro IDE muito utilizado na comunidade.
Para quem vem do MATLAB ou R, o [Spyder](https://github.com/spyder-ide/spyder) pode ser muito útil. O [Pycharm](https://www.jetbrains.com/pycharm/) é outro IDE muito utilizado na comunidade e traz consigo muitas funções úteis para iniciantes e profissionais.

**Aonde eu encontro os módulos para utilizar no meu projeto?**
Alguns módulos já vem por padrão no Python puro, por exemplo o módulo matemático. Outros, devem ser baixados de um repositório, como é o caso do Django ou Numpy.
Hoje, mais de 107 mil projetos estão cadastros no [repositório oficial](https://pypi.org/). Caso você não ache o que procura, há muito incentivo para que você construa um módulo novo e inclua no repositório!
Alguns módulos já vem por padrão no Python puro, por exemplo o módulo matemático
(math). Outros, devem ser baixados de um repositório, como é o caso do Django ou
Numpy. Hoje, mais de 107 mil projetos estão cadastrados no
[repositório oficial](https://pypi.org/). Caso você não ache o que procura, há
muito incentivo para que você construa um novo módulo e inclua no repositório!

Se você não tem a menor ideia mesmo de que módulo você precise, dê uma procurada no Google e StackOverflow. De certo alguém já fez algo parecido com o que você precisa!
Se você não tem a menor ideia de que módulo você precise, dê uma procurada no
Google e StackOverflow. De certo, alguém já fez algo parecido com o que você
precisa!

**O que são VirtualEnvs?**
O ideal para projetos Python é que você isole as bibliotecas que você usa, para evitar conflitos entre projetos.
Isso é uma boa prática e pode evitar dores de cabeça futuras. [Dê uma lida](https://virtualenv.pypa.io/en/stable/) sobre antes de iniciar um projeto grande, ok?

**Indicação de cursos**
**Indicação de material de estudo**

Não sabe por onde começar? Veja nossa listagem de conteúdo para quem está começando na linguagem:

Ano | Título | Autor | Tipo | Nível | Grátis? | Link
-----|--------|-------|------|-------|---------|------
2003 | Python para Zumbis | Fernando Massanori | Curso | Iniciante | Sim | [link](http://pycursos.com/python-para-zumbis/)
2014 | Introdução à Programação com Python | Nilo Ney Coutinho Menezes | Livro | Iniciante | Não | [link](http://python.nilo.pro.br/)
2015 | Curso de Programação em Python para Iniciantes | PyLadies BH | Curso | Iniciante | Sim | [link](https://www.youtube.com/watch?v=O2xKiMl-d7Y&list=PL70CUfm2J_8SXFHovpVUbq8lB2JSuUXgk)
2016 | Python Básico | Solyd/Guilherme Junqueira | Curso | Iniciante | Sim | [link](https://solyd.com.br/treinamentos/python-basico)
2017 | Introdução à Ciência da Computação com Python | CCSL do IME/USP | Curso | Iniciante | Sim | [link](https://www.youtube.com/playlist?list=PLcoJJSvnDgcKpOi_UeneTNTIVOigRQwcn)
2013 | Python para Zumbis | Fernando Massanori | Videoaulas | Iniciante | Sim | [link](http://pycursos.com/python-para-zumbis/)
2016 | Python Básico | Solyd/Guilherme Junqueira | Videoaulas | Iniciante | Sim | [link](https://solyd.com.br/treinamentos/python-basico)
2017 | Introdução à Ciência da Computação com Python | CCSL do IME/USP | Videoaulas | Iniciante | Sim | [link](https://www.youtube.com/playlist?list=PLcoJJSvnDgcKpOi_UeneTNTIVOigRQwcn)
2017 | Pycubator (Tradução PT-BR) | Noam Elfanbaum, Udi Oron e Gilson Filho (Tradução) | Material online | Iniciante | Sim | [link](http://df.python.org.br/pycubator/)

2019 | Introdução à Programação com Python (3° edição) | Nilo Ney Coutinho Menezes | Livro | Iniciante | Não | [link](http://python.nilo.pro.br/)
17 changes: 1 addition & 16 deletions content/pages/projetos.md
Original file line number Diff line number Diff line change
@@ -1,23 +1,8 @@
Title: Projetos brasileiros com Python
Slug: projetos
Template: page
Template: projetos-brasileiros

Diversos projetos de Python e outras linguagens estão disponíveis [neste post](https://medium.com/nossa-coletividad/projetos-brasileiros-para-fazer-pull-requests-nesse-hacktoberfest-4dc9b9b576c0)!

Alguns projetos brasileiros que usam python:

- [Site Pyladies Brasil](https://github.com/pyladies-brazil/br-pyladies-pelican)
- [Import caipyra](https://github.com/jtemporal/caipyra)
- [Algpedia](https://github.com/thaisviana/algpedia)
- [Bottery](https://github.com/rougeth/bottery)
- [Speakerfight](https://github.com/luanfonceca/speakerfight)
- [Tapioca-Jarbas](https://github.com/daneoshiga/tapioca-jarbas)
- [python-simple-rest-client](https://github.com/allisson/python-simple-rest-client)
- [jinja-assets-compressor](https://github.com/jaysonsantos/jinja-assets-compressor)
- [python-binary-memcached](https://github.com/jaysonsantos/python-binary-memcached)
- [correios](https://github.com/olist/correios)
- [simple-model](https://github.com/lamenezes/simple-model)
- [python-ami](https://github.com/ettoreleandrotognoli/python-ami/)
- [python-cdi](https://github.com/ettoreleandrotognoli/python-cdi)
- [django-pycdi](https://github.com/ettoreleandrotognoli/django-pycdi)
- [revelation](https://github.com/humrochagf/revelation)
15 changes: 15 additions & 0 deletions content/projetos-brasileiros/speakerfight.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"links": [
[
"Site",
"https://speakerfight.com/"
],
[
"Github",
"https://github.com/luanfonceca/speakerfight"
]
],
"nome": "Speakerfight is an arena where the speakers can fight each other and the people choose who wins.",
"imagem": "images/projetos-brasileiros/speakerfight.png",
"sigla": ""
}
10 changes: 10 additions & 0 deletions pelicanconf.py
Original file line number Diff line number Diff line change
Expand Up @@ -280,6 +280,16 @@ def import_empresas(path):
]
DEFAULT_COMMUNITY_IMAGE = "images/comunidades-locais/default.png"


# Configurações da página de projetos brasileiros
PROJETOS_BRASILEIROS = [
json.load(open(fname, 'r'))
for fname in glob.glob('content/projetos-brasileiros/*.json')
]
DEFAULT_PROJETOSBR_IMAGE = "images/projetos-brasileiros/default.png"



# Configurações da página de empresas
EMPRESAS = import_empresas('content/empresas/*.json')
DEFAULT_EMPRESA_IMAGE = "images/empresas/default.png"
Expand Down
25 changes: 25 additions & 0 deletions themes/pybr/templates/projetos-brasileiros.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{% extends 'page.html' %}

{% block post_content %}
<div class="row thumbnail-container">
{% for comunidade in PROJETOS_BRASILEIROS %}
<div class="col-12 col-sm-6 col-md-4 col-lg-3">
<div class="thumbnail">
<img src="{{ SITEURL }}/{% if comunidade.imagem %}{{ comunidade.imagem }}{% else %}{{ DEFAULT_PROJETOSBR_IMAGE }}{% endif %}" alt="{{ comunidade.sigla }}">

<div class="caption">
<h3 class="text-center">{{ comunidade.sigla }}</h3>

<p>{{ comunidade.nome }}</p>

<div class="badge-group">
{% for link in comunidade.links %}
<a class="badge badge-default" href="{{ link.1 }}">{{ link.0 }}</a>
{% endfor %}
</div>
</div>
</div>
</div>
{% endfor %}
</div>
{% endblock %}