2790
Comentário:
|
7137
|
Deleções são marcadas assim. | Adições são marcadas assim. |
Linha 1: | Linha 1: |
Se você encontrou um erro do tipo "UnicodeEncodeError: 'ascii' codec can't encode character ?? in position 2: ordinal not in range(128)" e não sabe o que fazer, então está na hora de aprender um pouquinho sobre o Unicode. | ## page was renamed from Mais Durante o PyConBrasil 2008 serão oferecidos as seguintes atividades paralelas: |
Linha 3: | Linha 4: |
Neste mundo globalizado a idéia básica é que todo dado que seja "Texto" para ser compreendido tem que ter junto sua codificação. Uma cadeia de caracteres só é um texto se tiver uma codificação junto. Se você ler um texto (como um input de usuário) e não especificar a codificação, estará usando a default, provavelmente ASCII. Esta não tem acento nenhum e só define os 128 primeiros caracteres. Se aparecer o número 128 em alguma mensagem de erro é porque o ASCII está envolvido:-) | Mini-cursos * Criando Plug-ins em python para o GIMP * Introdução ao Python Tutoriais * Plone 3: uma solução de ECM ? * Coding Dojo Python |
Linha 5: | Linha 11: |
A idéia básica de usar unicode é : | Caso você tenha interesse em participar de algum dos mini-curso ou tutorial, edite esta página e coloque o seu nome em um dos espaços marcados como '''(livre)''' abaixo. São 25 vagas disponíveis para cada mini-curso e 40 vagas para os tutoriais, onde o critério de seleção é a ordem de inscrição. |
Linha 7: | Linha 13: |
1. Você lê um dado codificado para seu programa e ao ler converte-o para unicode (decodifica ele). 2. Todo o processamento dentro do seu programa é feito com o texto em Unicode. 3. Na hora de exportar para um arquivo, tela ou transmitir, você tem que codificá-lo para o codec apropriado. |
No início dos treinamentos a lista de inscrição será conferida e caso tenhamos ausências, as vagas serão redistribuídas aos presentes no local. |
Linha 11: | Linha 15: |
O problema em 3) é que se seu codec pode ter caracteres que não existem no codec para o qual vc está querendo resolver. A solução mais usada é sempre usar o codec UTF-8, que é compatível com o ASCII (os 128 primeiros caracteres são os mesmos) e suporta todos os carateres unicode. | Cada tutorial ou mini-curso custará 10 reais, que poderá ser pago no site do PyConBrasil até o dia do evento, conforme instruções a serem divulgadas. |
Linha 13: | Linha 17: |
Independentemente de como você lê os dados para seu programa, é preciso saber o codec em que ele vem e decodificá-lo: | == Mini-curso de Introdução ao Python == '''Sábado, dia 20/09, das 09:00 às 12:00''', por LucianoRamalho |
Linha 15: | Linha 20: |
{{{ >>> inputUsuario = "João Ângelo" >>> inputUsuario.decode("iso8859-1") u'Jo\xe3o \xc2ngelo' >>> inputUnicode = inputUsuario.decode("iso-8859-1") >>> print inputUnicode.encode('iso8859-1') João Ângelo }}} |
Aprenda Python de forma rápida. A idéia é passar pelo tutorial do Python, e quem sabe algumas partes do Diving Into Python dependendo do tempo alocado. |
Linha 24: | Linha 22: |
O que vc vai usar para decodificar o input do usuário vai depender do ambiente de entrada e saída de dados. Normamente o iso8859-1 ou o UTF8 vão resolver. Lembre-se que você tem que saber o codec de todo texto. | Só pra lembrar o tutorial do Python é voltado pra quem já programa em alguma linguagem ou tem pelo menos os conceitos de programação estruturada e lógica, mas tirando isso não precisa ter conhecimento nenhum da linguagem. A parte a ser adicionada no treinamento são mais exercícios para fixação dos conteúdos. |
Linha 26: | Linha 24: |
== O codec do seu código == | || '''Num''' || '''25 Vagas para participantes do PyConBrasil''' || || 1 || MauroCavalcanti || || 2 || Maurício Neves || || 3 || (livre) || || 4 || (livre) || || 5 || (livre) || || 6 || (livre) || || 7 || (livre) || || 8 || (livre) || || 9 || (livre) || || 10 || (livre) || || 11 || (livre) || || 12 || (livre) || || 13 || (livre) || || 14 || (livre) || || 15 || (livre) || || 16 || (livre) || || 17 || (livre) || || 18 || (livre) || || 19 || (livre) || || 20 || (livre) || || 21 || (livre) || || 22 || (livre) || || 23 || (livre) || || 24 || (livre) || || 25 || (livre) || |
Linha 28: | Linha 51: |
Com esta linha no início de seus programas: {{{# -*- coding: iso-8859-1 -*-}}} você está dizendo é o codec do texto do seu próprio código fonte, não do input do usuário. Já falei que para ser corretamente interpretado todo texto tem que ter um codec associado? Este é o codec do seu código fonte. Com isto você poderá ter strings hardcoded no seu código que serão interpretadas corretamente. |
---- |
Linha 32: | Linha 53: |
Eis algumas boas referências (em inglês) sobre o assunto: | == Mini-Curso de Criando Plug-ins em Python para o GIMP == '''Sexta, dia 19/09, das 9:00 às 12:00''', por João Sebastião de Oliveira Bueno |
Linha 34: | Linha 56: |
All About Python and Unicode http://boodebr.org/main/python/all-about-python-and-unicode |
A possibilidade de criar plug-ins em Python para o GIMP existe há vários anos. Esse treinamento visa capacitar os alunos a entenderem como os scripts são organizados, do que são capazes e qual a API do GIMP disponível para plug-ins em Python. |
Linha 37: | Linha 58: |
Joel on Software - The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!) http://www.joelonsoftware.com/articles/Unicode.html |
Ao final do mesmo, os alunos devem ser capazes de criarem seus próprios plug-ins para automatizar tarefas de edição de imagens, processar imagens em lote, ou criar padrões e efeitos programáticamente usando o GIMP. Além das aplicações práticas, é uma boa oportunidade para ver como Python pode ser usado em aplicações reais com o uso de poucas linhas de código. || '''Num''' || '''25 Vagas para participantes do PyConBrasil''' || || 1 || (livre) || || 2 || (livre) || || 3 || (livre) || || 4 || (livre) || || 5 || (livre) || || 6 || (livre) || || 7 || (livre) || || 8 || (livre) || || 9 || (livre) || || 10 || (livre) || || 11 || (livre) || || 12 || (livre) || || 13 || (livre) || || 14 || (livre) || || 15 || (livre) || || 16 || (livre) || || 17 || (livre) || || 18 || (livre) || || 19 || (livre) || || 20 || (livre) || || 21 || (livre) || || 22 || (livre) || || 23 || (livre) || || 24 || (livre) || || 25 || (livre) || ---- == Tutorial de Plone 3: uma solução de ECM ? == '''Sexta, dia 19/09, das 9:00 às 12:00''', por Marcello Bax O tutorial tem como objetivo mostrar como é possível implementar com o Plone um portal corporativo utilizando-se de software livre, de forma integrada com o ambiente Windows, proprietário. Por tratar-se do ambiente presente na grande maioria das empresas e organizações da atualidade, um portal que atenda a especificidades do gerenciamento de informação neste contexto, de forma integrada, é fortemente representativo. Com efeito, a integração dos conteúdos no portal com o ambiente Windows, no cliente e não no servidor, não é trivial. Mostra-se que implantando o portal nesse contexto a empresa avança consideravelmente com relação à gestão da informação. Para tal iremos focar nos principais aspectos positivos que decorrem da implantação de um portal de intranet / extranet nesse contexto, i.e. integração com Windows e com o Office ou outras aplicações de escritório; controle de edição compartilhada (com check-in e check-out); acesso universal ao acervo pela internet; uso de metadados e automação de processos via workflow. || '''Num''' || '''40 Vagas para participantes do PyConBrasil''' || || 1 || (livre) || || 2 || (livre) || || 3 || (livre) || || 4 || (livre) || || 5 || (livre) || || 6 || (livre) || || 7 || (livre) || || 8 || (livre) || || 9 || (livre) || || 10 || (livre) || || 11 || (livre) || || 12 || (livre) || || 13 || (livre) || || 14 || (livre) || || 15 || (livre) || || 16 || (livre) || || 17 || (livre) || || 18 || (livre) || || 19 || (livre) || || 20 || (livre) || || 21 || (livre) || || 22 || (livre) || || 23 || (livre) || || 24 || (livre) || || 25 || (livre) || || 26 || (livre) || || 27 || (livre) || || 28 || (livre) || || 29 || (livre) || || 30 || (livre) || || 31 || (livre) || || 32 || (livre) || || 33 || (livre) || || 34 || (livre) || || 35 || (livre) || || 36 || (livre) || || 37 || (livre) || || 38 || (livre) || || 39 || (livre) || || 40 || (livre) || ---- == Tutorial de Coding Dojo Python == '''Sábado, dia 20/09, das 14:00 às 17:00''', por Hugo Corbucci Um coding dojo http://www.codingdojo.org é uma sessão aberta onde o público participa em pares, ao vivo, codificando um software de escopo reduzido. Os pares trabalham por alguns minutos conectados a um projetor e discutem projeto e implementação à medida que avançam. Ao fim do tempo trocam-se os pares e o desafio continua! Nesta sessão faremos um coding dojo épico cobrindo 2 problemas: um em Python puro, e um usando infraestrutura gráfica. Tanto ninjas em Python quanto iniciantes se divertirão, e são igualmente bem-vindos. || '''Num''' || '''40 Vagas para participantes do PyConBrasil''' || || 1 || BrunoGola || || 2 || FelipeFerreriTonello || || 3 || (livre) || || 4 || (livre) || || 5 || (livre) || || 6 || (livre) || || 7 || (livre) || || 8 || (livre) || || 9 || (livre) || || 10 || (livre) || || 11 || (livre) || || 12 || (livre) || || 13 || (livre) || || 14 || (livre) || || 15 || (livre) || || 16 || (livre) || || 17 || (livre) || || 18 || (livre) || || 19 || (livre) || || 20 || (livre) || || 21 || (livre) || || 22 || (livre) || || 23 || (livre) || || 24 || (livre) || || 25 || (livre) || || 26 || (livre) || || 27 || (livre) || || 28 || (livre) || || 29 || (livre) || || 30 || (livre) || || 31 || (livre) || || 32 || (livre) || || 33 || (livre) || || 34 || (livre) || || 35 || (livre) || || 36 || (livre) || || 37 || (livre) || || 38 || (livre) || || 39 || (livre) || || 40 || (livre) || |
Durante o PyConBrasil 2008 serão oferecidos as seguintes atividades paralelas:
Mini-cursos
- Criando Plug-ins em python para o GIMP
- Introdução ao Python
Tutoriais
- Plone 3: uma solução de ECM ?
- Coding Dojo Python
Caso você tenha interesse em participar de algum dos mini-curso ou tutorial, edite esta página e coloque o seu nome em um dos espaços marcados como (livre) abaixo. São 25 vagas disponíveis para cada mini-curso e 40 vagas para os tutoriais, onde o critério de seleção é a ordem de inscrição.
No início dos treinamentos a lista de inscrição será conferida e caso tenhamos ausências, as vagas serão redistribuídas aos presentes no local.
Cada tutorial ou mini-curso custará 10 reais, que poderá ser pago no site do PyConBrasil até o dia do evento, conforme instruções a serem divulgadas.
Mini-curso de Introdução ao Python
Sábado, dia 20/09, das 09:00 às 12:00, por LucianoRamalho
Aprenda Python de forma rápida. A idéia é passar pelo tutorial do Python, e quem sabe algumas partes do Diving Into Python dependendo do tempo alocado.
Só pra lembrar o tutorial do Python é voltado pra quem já programa em alguma linguagem ou tem pelo menos os conceitos de programação estruturada e lógica, mas tirando isso não precisa ter conhecimento nenhum da linguagem. A parte a ser adicionada no treinamento são mais exercícios para fixação dos conteúdos.
Num |
25 Vagas para participantes do PyConBrasil |
1 |
|
2 |
Maurício Neves |
3 |
(livre) |
4 |
(livre) |
5 |
(livre) |
6 |
(livre) |
7 |
(livre) |
8 |
(livre) |
9 |
(livre) |
10 |
(livre) |
11 |
(livre) |
12 |
(livre) |
13 |
(livre) |
14 |
(livre) |
15 |
(livre) |
16 |
(livre) |
17 |
(livre) |
18 |
(livre) |
19 |
(livre) |
20 |
(livre) |
21 |
(livre) |
22 |
(livre) |
23 |
(livre) |
24 |
(livre) |
25 |
(livre) |
Mini-Curso de Criando Plug-ins em Python para o GIMP
Sexta, dia 19/09, das 9:00 às 12:00, por João Sebastião de Oliveira Bueno
A possibilidade de criar plug-ins em Python para o GIMP existe há vários anos. Esse treinamento visa capacitar os alunos a entenderem como os scripts são organizados, do que são capazes e qual a API do GIMP disponível para plug-ins em Python.
Ao final do mesmo, os alunos devem ser capazes de criarem seus próprios plug-ins para automatizar tarefas de edição de imagens, processar imagens em lote, ou criar padrões e efeitos programáticamente usando o GIMP. Além das aplicações práticas, é uma boa oportunidade para ver como Python pode ser usado em aplicações reais com o uso de poucas linhas de código.
Num |
25 Vagas para participantes do PyConBrasil |
1 |
(livre) |
2 |
(livre) |
3 |
(livre) |
4 |
(livre) |
5 |
(livre) |
6 |
(livre) |
7 |
(livre) |
8 |
(livre) |
9 |
(livre) |
10 |
(livre) |
11 |
(livre) |
12 |
(livre) |
13 |
(livre) |
14 |
(livre) |
15 |
(livre) |
16 |
(livre) |
17 |
(livre) |
18 |
(livre) |
19 |
(livre) |
20 |
(livre) |
21 |
(livre) |
22 |
(livre) |
23 |
(livre) |
24 |
(livre) |
25 |
(livre) |
Tutorial de Plone 3: uma solução de ECM ?
Sexta, dia 19/09, das 9:00 às 12:00, por Marcello Bax
O tutorial tem como objetivo mostrar como é possível implementar com o Plone um portal corporativo utilizando-se de software livre, de forma integrada com o ambiente Windows, proprietário. Por tratar-se do ambiente presente na grande maioria das empresas e organizações da atualidade, um portal que atenda a especificidades do gerenciamento de informação neste contexto, de forma integrada, é fortemente representativo. Com efeito, a integração dos conteúdos no portal com o ambiente Windows, no cliente e não no servidor, não é trivial.
Mostra-se que implantando o portal nesse contexto a empresa avança consideravelmente com relação à gestão da informação. Para tal iremos focar nos principais aspectos positivos que decorrem da implantação de um portal de intranet / extranet nesse contexto, i.e. integração com Windows e com o Office ou outras aplicações de escritório; controle de edição compartilhada (com check-in e check-out); acesso universal ao acervo pela internet; uso de metadados e automação de processos via workflow.
Num |
40 Vagas para participantes do PyConBrasil |
1 |
(livre) |
2 |
(livre) |
3 |
(livre) |
4 |
(livre) |
5 |
(livre) |
6 |
(livre) |
7 |
(livre) |
8 |
(livre) |
9 |
(livre) |
10 |
(livre) |
11 |
(livre) |
12 |
(livre) |
13 |
(livre) |
14 |
(livre) |
15 |
(livre) |
16 |
(livre) |
17 |
(livre) |
18 |
(livre) |
19 |
(livre) |
20 |
(livre) |
21 |
(livre) |
22 |
(livre) |
23 |
(livre) |
24 |
(livre) |
25 |
(livre) |
26 |
(livre) |
27 |
(livre) |
28 |
(livre) |
29 |
(livre) |
30 |
(livre) |
31 |
(livre) |
32 |
(livre) |
33 |
(livre) |
34 |
(livre) |
35 |
(livre) |
36 |
(livre) |
37 |
(livre) |
38 |
(livre) |
39 |
(livre) |
40 |
(livre) |
Tutorial de Coding Dojo Python
Sábado, dia 20/09, das 14:00 às 17:00, por Hugo Corbucci
Um coding dojo http://www.codingdojo.org é uma sessão aberta onde o público participa em pares, ao vivo, codificando um software de escopo reduzido. Os pares trabalham por alguns minutos conectados a um projetor e discutem projeto e implementação à medida que avançam. Ao fim do tempo trocam-se os pares e o desafio continua!
Nesta sessão faremos um coding dojo épico cobrindo 2 problemas: um em Python puro, e um usando infraestrutura gráfica. Tanto ninjas em Python quanto iniciantes se divertirão, e são igualmente bem-vindos.
Num |
40 Vagas para participantes do PyConBrasil |
1 |
|
2 |
|
3 |
(livre) |
4 |
(livre) |
5 |
(livre) |
6 |
(livre) |
7 |
(livre) |
8 |
(livre) |
9 |
(livre) |
10 |
(livre) |
11 |
(livre) |
12 |
(livre) |
13 |
(livre) |
14 |
(livre) |
15 |
(livre) |
16 |
(livre) |
17 |
(livre) |
18 |
(livre) |
19 |
(livre) |
20 |
(livre) |
21 |
(livre) |
22 |
(livre) |
23 |
(livre) |
24 |
(livre) |
25 |
(livre) |
26 |
(livre) |
27 |
(livre) |
28 |
(livre) |
29 |
(livre) |
30 |
(livre) |
31 |
(livre) |
32 |
(livre) |
33 |
(livre) |
34 |
(livre) |
35 |
(livre) |
36 |
(livre) |
37 |
(livre) |
38 |
(livre) |
39 |
(livre) |
40 |
(livre) |