1) O documento discute sobre linguagens de programação open source e suas comunidades, enfatizando a importância da participação na comunidade.
2) É apresentada uma comparação entre as linguagens Ruby on Rails, Django e microframeworks para Python, discutindo quando cada uma é mais adequada.
3) O documento ressalta a responsabilidade de quem usa software open source de se engajar na comunidade por meio de atividades como reportar bugs, criar artigos e ajudar iniciantes.
8. A maior virtude dos jovens é a preguiça
Web Open Source
Juventude na Programação
9. Ninguém gosta de fazer tarefas repetitivas
Web Open Source
Juventude na Programação
10. Web Open Source
Juventude na Programação
● John Resig, tinha 22 anos na primeira versão.
● Tornou atividades massantes em simples.
● Write less, do more.
29. Ruby on Rails
● Criado por David Heinemeier Hansson em 2005
● DRY - Don't repeat yourself
● Linha de comando
Web Open Source
Linguagens de programação
30. $ rails new blog
Web Open Source
Linguagens de programação / Rails
31. ● Controllers
● Models
● Views
● Helpers
● Database SQLite
● Servidor de Desenvolvimento
Web Open Source
Linguagens de programação / Rails
44. Python
● Sintaxe linda
● Pacotes para praticamente tudo
● Comunidade <3
Web Open Source
Linguagens de programação
45. Django
● Surgiu em 2005 como um CMS
● MVC embora MTV
● DRY
Web Open Source
Linguagens de programação / Python
46. $ django-admin startproject mysite
mysite/
manage.py
mysite/
__init__.py
settings.py
urls.py
wsgi.py
Web Open Source
Linguagens de programação / Python / Django
47. $ python manage.py runserver
Web Open Source
Linguagens de programação / Python / Django
48. $ python manage.py startapp blog
polls/
__init__.py
admin.py
apps.py
migrations/
__init__.py
models.py
tests.py
views.py
Web Open Source
Linguagens de programação / Python / Django
49. Diferente do Rails o Django não:
● Gera a arquitetura dos arquivos estáticos.
● Gera código-fonte.
● Não tem um comando scaffold.
Web Open Source
Linguagens de programação / Python / Django
50. Models
from django.db import models
class Post(models.Model):
title = models.CharField(max_length=128)
body = models.TextField()
class Comment(models.Model):
user = models.CharField(max_length=128)
comment = models.TextField()
post = models.ForeignKey(Post)
Web Open Source
Linguagens de programação / Python / Django
51. Migrations
$ python manage.py makemigrations blog
Migrations for 'blog':
0001_initial.py:
- Create model Comment
- Create model Post
- Add field post to comment
Web Open Source
Linguagens de programação / Python / Django
58. MicroFrameworks
As vezes o pouco é muito
Flask, Bottle, CherryPy, entre outros.
Web Open Source
Linguagens de programação / Python
59. from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run()
Web Open Source
Linguagens de programação / Python / Microframeworks
60. NodeJS, GoLang e Banco de Dados não
relacionais
Web Open Source
Linguagens de programação
61. Web Open Source
Linguagens de programação /
NodeJS, GoLang e Banco de Dados não relacionais
Arquiteturas baseadas em microserviços
62. Web Open Source
Linguagens de programação /
NodeJS, GoLang e Banco de Dados não relacionais
Arquiteturas baseadas em microserviços
Jornal Online
Notícias
Usuários
Comentários
63. Web Open Source
Linguagens de programação /
NodeJS, GoLang e Banco de Dados não relacionais
Arquiteturas baseadas em microserviços
Jornal Online
Notícias
Usuários
Comentários Jornal Online
Notícias Usuários
Comentários
64. Web Open Source
Linguagens de programação /
NodeJS, GoLang e Banco de Dados não relacionais
Arquiteturas baseadas em microserviços
65. Web Open Source
Linguagens de programação /
NodeJS, GoLang e Banco de Dados não relacionais
Aplicativos Mobile
66. Web Open Source
Linguagens de programação /
NodeJS, GoLang e Banco de Dados não relacionais
Aplicativos Mobile
● Alta disponibilidade
● Velocidade de resposta
● API's REST
86. Web Open Source
Quando você usa Git para Deploy você tem:
● A garantia que vai estar tudo atualizado após um git pull
● Não vai ter que avisar ao time que você está mexendo em tal
arquivo
● Voltar a versão de um arquivo
● Ter histórico das modificações
Ferramentas Importantes / Git
89. Web Open Source
Excelente para:
● Cache
● Servidor de mensagens
● Bibliotecas para quase todas as linguagens e
frameworks
Ferramentas Importantes / Redis
90. Web Open Source
Exemplo de um servidor de mensagens
Ferramentas Importantes / Redis
Aplicação 2Aplicação 1
93. Web Open Source
Responsabilidades por usar open source
Responsabilidades por usar open source
● Faça parte de uma comunidade
● Reporte bugs
● Crie artigos
● Ajude os mais novos
● Participe dos eventos da sua comunidade.
● Desenvolva software livre
● Engaje-se
94. Web Open Source
Responsabilidades por usar open source
MeetUps
● www.meetup.com/Grupy-SP/
● www.meetup.com/rubyon/
● www.meetup.com/NodeBR-Sao-Paulo/
● www.meetup.com/GDG-SP/
96. Web Open Source
Responsabilidades por usar open source
Você tem a responsabilidade de saber o que é a
regra de negócio do seu cliente e o que é
tecnologia Open Source.
101. Web Open Source
Responsabilidades por usar open source
Um cara fez um tweet
Postei no Facebook
@pythontrending
Stars no GitHub ▲
Empresa Irlandesa de
Games