-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathencontro-novembro-15.html
110 lines (97 loc) · 7.37 KB
/
encontro-novembro-15.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>GruPy-SP</title>
<meta name="description" content="">
<meta name="author" content="grupy-sp">
<!-- HTML5 shim, for IE6-8 support of HTML elements -->
<!--[if lt IE 9]>
<script src="/theme/html5.js"></script>
<![endif]-->
<!-- Styles -->
<link href="/theme/bootstrap.min.css" rel="stylesheet">
<link href="/theme/local.css" rel="stylesheet">
<link href="/theme/pygments.css" rel="stylesheet">
<!-- Feeds -->
</head>
<body>
<div class="topbar">
<div class="topbar-inner">
<div class="container-fluid">
<a class="brand" href="/">GruPy-SP</a>
<ul class="nav">
<li><a href="/pages/about.html">Sobre o GruPy-SP</a></li>
<li class="active"><a href="/category/python.html">Python</a></li>
</ul>
<p class="pull-right"><a href="/archives.html">[archives]</a> <a href="/tags.html">[tags]</a></p>
</div>
</div>
</div>
<div class="container-fluid">
<div class="sidebar">
<div class="well">
<h3>Blogroll</h3>
<ul>
<li><a href="http://grupy-sp.github.io/pages/about.html">Sobre nós</a></li>
</ul>
<div class="social">
<h3>Social</h3>
<ul>
<li><a href="https://github.com/grupy-sp/encontros">Github</a></li>
<li><a href="https://www.facebook.com/grupysp">Facebook</a></li>
<li><a href="https://twitter.com/grupysp/">Twitter</a></li>
<li><a href="https://grupysp.herokuapp.com/">Slack</a></li>
<li><a href="https://groups.google.com/forum/#!forum/grupy-sp">Google Groups</a></li>
<li><a href="http://www.meetup.com/pt/Grupy-SP/">Meetup</a></li>
</ul>
</div>
</div>
</div>
<div class="content">
<div class='article'>
<div class="page-header"><h1>Palestras e slides do encontro Grupy-SP em Novembro/2015 - Vivareal</h1></div>
<div class="well small">Permalink: <a class="more" href="/encontro-novembro-15.html">2015-12-06 14:10:00-02:00</a>
by <a class="url fn" href="/author/eric-hideki.html">Eric Hideki </a>
in <a href="/category/python.html">Python</a>
tags: <a href="/tag/encontros.html">encontros</a> </div>
<div><h3><a href="http://www.meetup.com/pt/Grupy-SP/events/226536272/">Palestras e slides do encontro do Grupy-SP em Novembro/2015</a></h3>
<h3>Agradecimento especial ao Arian, Camila, Brian e Robson, todos da <a href="http://www.vivareal.com.br/">Vivareal</a> pelo espaço cedido e o coffee break.</h3>
<h4>[20min] "MapEngine": Introspecção, Orientação a objetos radical e desenvolvimento rápido de jogos de alta jogabilidade com "meias dúzias" de linhas de código - João Bueno [JS]</h4>
<p>Aqui em Campinas estamos desenvolvendo o projeto JovemHacker, dição 2015 - http://jovemhacker.org/ - fiquei como instrutor do módulo de programação e orientador dos projetos finais. E de repetne, estava com 5 grupos de alunos, cada um querendo criar um jogo diferente como projeto final Há outros orientadores/monitores mas não são muito proeficientes em Python ou jogos. A solução? Criar um framework to handle then all!</p>
<p>Em desenvolvimento ativo neste momento, o "MapEngine" é um framework para desenvolvimento de jogos 2D complexos (tela com scroll, várias fazesm orientado a blocos) - cuja idéia é permitir a edição dos mapas das fases em editores de imagem normais, e um mínimo de codificação (de 1 a poucas dezenas de linhas) para cada tipode objeto com que há interação: o framework permite naturalmente jogos no estilo platformer (Mario, Alex Kid), side scrollers, mapas vistos de cima, tanto de ação quanto de RPG (adventure). </p>
<p>A idéia da palestra é mostrar o mesmo em funcionamento, o código minimo para jogos diferentes, e como as características de introspecção e O.O. do Python foram usadas para permitir isso,ter espaço para discutir algumas das idéias na mesa <em>e</em> angariar novos colaboradores para o projeto :-)</p>
<p>Principal ponto fraco: o número de linhas para criar uma grande variedade de interação entre objetos é mínimo, mas exige um nível de programação e conhecimento de Python além do que pôde ser desenvolvido em 6 encontros do projeto - na verdade, exigem algum Python razoavlemente avançado. O que por outro lado, faz comq ue seja uma ferramenta bem legal para Pythonistas com algum jogo de cintura criarem seus próprios jogos. (ex.: </p>
<p>(A propósito, eu mencionei que ele "está em desenvolvimento"? Já é possível fazer bastante coisa, e espero que seja possível fazer ainda mais até o dia do encontro -</p>
<p>mas quem quiser olhar: http://github.com/jsbueno/mapengine</p>
<h4>[30min] <a href="https://github.com/gianrubio/grupy-CI">Palestra convidada Vivareal | Continuous Delivery - Giancarlo Rubio</a></h4>
<h4>[20min] <a href="http://pt.slideshare.net/rudaporto/python-eve-apis-restful-profissionais-em-poucas-linhas">Python-EVE - APIs REST profissionais em poucas linhas - Rudá Porto</a></h4>
<p>Desenvolvimento de APIs REST com framework EVE (http://python-eve.org/).</p>
<p>Esse framework utiliza o conceito de declaração de modelos de domínio que podem inclusive ser um Model SQLAlchemy (usando a extensão Eve-SQLAlchemy), para entregar automaticamente uma API REST CRUD completa e repleta de funcionalidades prontas com as melhores práticas.</p>
<p>Além disso é possível customizar a API globalmente ou por recursos a ser exposto, como por exemplo não ter autorização para as consultas GET ou ter uma classe de autorização por recursos, hooks de request, hooks de acesso a dados, etc.</p>
<p>A minha intenção é apresentar os recursos mais relevantes desse framework muito maduro para REST que possui uma abordagem muito interessante, incluindo integração nativa com MongoDB.</p>
<h4>[20min] Python para iniciantes focados para Web - Anderson Borges</h4>
<p>Nesta mini palestra mostrarei para os iniciantes como podem utilizar a linguagem python com foco na Web, a partir </p>
<p>da abordagem de uso com Django, Wagtail , Debug de código utilizando PyCharm e Deployment.</p>
<p>Se você está iniciando em python e gostaria de entender mais o funcionamento , você está convidado a participar desta palestra.</p>
<h4>[20min] <a href="http://nbviewer.ipython.org/github/scardine/palestra-grupy-2015-11/blob/master/Sobrecarga-de-operadores-em-Python.ipynb">Sobrecarga de Operadores em Python: um grande poder implica em grande responsabilidade. - Paulo Scardine</a></h4>
<p>Um usuário do <a href="http://stackoverflow.com/questions/33658355/piping-output-from-one-function-to-another-using-python-infix-syntax">stackoverflow perguntou se era possível implementar a sintaxe "infix" da linguagem R em Python</a>:</p>
<div class="highlight"><pre>df = df | select('one') | rename(one = 'new_one')
</pre></div>
<p>Em vez de:</p>
<div class="highlight"><pre>df = rename(select(df, 'one), one='new one')
</pre></div>
<p>Essa mini-palestra exibe uma possível solução, discute os métodos mágicos de um objeto Python que permitem sobrecarregar os operadores, e discute quando é idiomático faze-lo.</p>
<p>A apresentação foi feita usando-se um IPython Notebook que está publicado no github:</p>
<ul>
<li><a href="https://github.com/scardine/palestra-grupy-2015-11">https://github.com/scardine/palestra-grupy-2015-11</a></li>
</ul></div>
</div>
<footer>
<p>Powered by <a href="http://getpelican.com/">Pelican</a>. Theme based on <a href="http://twitter.github.com/bootstrap/">Twitter Bootstrap</a>.</p>
<p>© grupy-sp</p>
</footer>
</div>
</div>
</body>
</html>