Abril archive

25
Abr

PDF's das minhas palestras e treinamentos que fiz no FISL 9



Já se passaram alguns dias que voltei do FISL e ainda não escrevi sobre o evento aqui no blog e nem postei o material das palestras que apresentei e do treinamento de Django que ministrei.


Ainda pretendo escrever sobre a minha aventura lá em Porto Alegre, mas para atender
os milhares alguns pedidos, estou disponibilizando os arquivos em PDF relacionado às minhas 3 apresentações:


Google App Engine

Django para desenvolvimento web

7 novidades que virão com o Python3k

E do treinamento:

Desenvolvimento ágil com Django

Espero que gostem e façam bom uso.
25
Abr

Lista de discussão da Django Brasil chega a 500 assinantes

Hoje, 25 de abril de 2008, é um dia histórico para todos que participam da comunidade Django Brasil. A comunidade chega a marca de 500 assinantes da lista.

Vários fatores colaboraram para chegarmos até aqui:

- O Django ser um framework bacana, ágil e divertido de usar
- A participação cada vez mais ativa dos membros da lista
- O anúncio do Summer of Code
- A participação de membros da comunidade divulgando o Django em faculdades, congressos, em seus blogs e etc

Parabéns a todos que colaboraram e rumo aos 1000!
16
Abr

7 novidades que virão com o Python 3



1 - O comando print agora necessita de parênteses
Essa mudança foi feita para que o print tenha o mesmo comportamento que os outros métodos.

>>> print
<built-in function print>
>>> dir(print)
['__call__', '__class__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__module__', '__name__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__self__', '__setattr__', '__str__', '__subclasshook__']
>>> help(print)
>>> print 'Vai dar erro'
  File "<stdin>", line 1
    print 'Vai dar erro'
                       ^
SyntaxError: invalid syntax
>>> print('Agora não vai dar erro')
Agora não vai dar erro
>>>

2 - A divisão entre inteiros agora retorna um float por padrão
Para que ter uma divisão com resultado inteiro usa-se '//'.

>>> 1/2
0.5
>>> 1.0/2
0.5
>>> 1//2
0
>>>

3 - As classes são new-style por padrão
As classes herdam a classe object por padrão. Tendo o comportamento das classes new-style.

>>> class Foo: pass
>>> Foo.__class__
<type 'type'>

4 - Unicode é padrão
E além de ser padrão é possível criar variáveis com caracteres especiais.
>>> é = 'oi'
>>> texto = 'ação'
>>> texto
'a\xe7\xe3o'
>>> print(texto)
ação

5 - raw_input agora é input()
O antigo input é jogado as traças e o raw_input é renomeado para input.
>>> input()     
f
'f'
>>> raw_input()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'raw_input' is not defined
>>>

6 - xrange agora é range
O antigo range vai para o limbo também e o xrange é renomeado para range
>>> xrange(4)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'xrange' is not defined
>>> range(4)
range(0, 4)
>>> print(range(5))
range(0, 5)
>>> for i in range(0, 5):
...     print(i)
...
0
1
2
3
4
>>>

7 - Nova maneira de formatar strings
Uma maneira muito elegante de exibir variáveis em uma string
>>> "Meu nome é {0}".format("andrews")
'Meu nome \xe9 andrews'
>>> "2x2={0}".format(2+2)
'2x2=4'
>>> "Meu nome é {nome}".format("andrews")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'nome'
>>> "Meu nome é {nome}".format(nome="andrews")
'Meu nome \xe9 andrews'
>>>

15
Abr

FISL lá vou eu!


Nos dias 17, 18 e 19 de Abril ocorrerá em Porto Alegre o maior evento de Software Livre do país: o Fórum Internacional de Software Livre.

E como é de se prever, a comunidade Python Brasil estará lá, contando comigo. Esse ano terá pela primeira vez uma trilha de Python no evento. E muitas coisas, como o lançamento do Google Engine App , o trabalho que a Associação Python está fazendo, estão levando a muitos crerem que este é o ano do Python.

Eu participarei do evento ministrando um treinamento de Django. Mas, esse treinamento será diferente do que eu ministrei na PyConBrasil 3. Ele será focado em iniciantes, mas mostrarei um pouco de várias ferramentas do Django (admin, generic views, newforms) na prática, criando uma aplicação. Ainda há vagas para o treinamento, para se inscrever basta adicionar o nome na página do wiki do Python Brasil referente aos treinamentos do FISL. E além do evento participarei de uma palestra sobre Django, falando tudo sobre o Framework.

Como não moro muito perto do evento (Rondonópolis - MT), a minha aventura começará nesta madrugada das 4 ás 6 da manhã quando pegarei uma van que me levará até ao aeroporto na Capital. Provavelmente passarei lá a manhã, e uma parte da tarde, quando pegarei o avião (16h) que irá até Brasília e depois o avião partirá de Brasíla até Porto Alegre (22h). Se tudo correr bem até aí, é só pegar um táxi até o Collins hotel python caverna.

Para os que não vão, eu tentarei postar aqui e no twitter tudo o que estiver acontecendo lá no FISL. E para os que vão: nos vemos lá.

12
Abr

Como o Google Engine App afetará a comunidade Python


Foi lançado nessa pelo Google, um novo serviço chamado Google App Engine. Ele consiste em um serviço de host para aplicações. Atualmente, fazer o deploy de aplicações "ágeis" não é algo muito simples. E o Google Engine App consiste em facilitar esse deploy deixando o programador livre para focar seus esforços na programação.

Como o Python está envolvido nisso?

O que surpreendeu muitos nesse lançamento ( além do lançamento em si ), é que o Google Engine App foi feito em Python, em algumas coisas ele é baseado no Django e suporta apenas aplicações em Python.

Todas as pessoas que programam em Python sabem que o Google usa o Python. Mas, até então não tinhámos como provar isso. Com o Google Engine App, o Google não apenas mostrou que usa Python, mas que também aposta no uso de Python para Web e ainda incentiva a outros usarem.

E a comunidade?

As dez mil contas iniciais do serviço foram preenchidas e garanto que teve milhares de programadores que tentaram ter uma conta e ainda não conseguiram ( eu sou um deles ). E muitos desses que estão interessados no Engine App ( com ou sem conta ) devem ter olhado ao menos um tutorial, um exemplo ou um screencast mostrando como o SDK funciona. E se essa pessoa não conhecia Python, verá como a linguagem é simples e poderosa.

Com todas esse marketing focado no Python começaremos a ver mais e mais programadores tentando aprender Python.

Seria legal se a comunidade ( centro de treinamentos, escritores, blogueiros, etc ) começarem a preparar-se com materiais para iniciantes.

A APyB desde a última PyConBrasil tem trabalhado para atender aos iniciantes e interessados, até parece que já prevíamos que uma onda dessas iria aparecer.
11
Abr

Curso de Python na UFMT - Terceira aula


Primeiramente gostaria de pedir desculpas pela demora desse post e por não ter escrito nada essa semana. Mas foi semana de provas e quem é professor sabe como em uma semana assim o tempo é curto.

Mas, vamos falar da terceira aula do Curso de Python com ênfase em PyGame que ministrei na UFMT no dia 05/04.

Programação Orientada a Objetos

Eu comecei essa aula falando de Programação Orientada a Objetos em Python. Explicando a diferença entre classe e objeto, métodos, herança, polimorfismo, sobrecarga de métodos e etc.

Uma particularidade muito interessante é que aqui na região do sul de Mato Grosso, poucos programadores realmente programam utilizando a Orientação a Objetos. Então expliquei detalhadamente a utilidade de se utilizar a programação Orientada a Objetos.

PyGame

Depois de falar sobre orientação no final da aula eu falei sobre PyGame, e sobre desenvolvimento de jogos, lembrando que o PyGame é apenas uma ferramenta. Ou seja, aprender PyGame não fará você um 'mestre dos jogos' mas com ela poderá tornar-se um 'mestre'.

Mostrei como instalar o PyGame no ambiente Windows e começamos a ver como criar fundos para o jogo.

Na próxima aula, que ocorre amanhã veremos com mais detalhes a biblioteca.