SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Do 0 a estar online no 
Google App Engine 
GDG São Carlos 
01/11/2014
Disclaimer 
• O evento de hoje é “Trazendo sua empresa para internet” do GDG e GBG 
de São Carlos 
• Meu nome é Priscila Mayumi Sato 
• Hoje sou Fullstack Developer numa pequena startup 
• Não sou a pessoa de negócios, sou a pessoa técnica 
• Parte dos passos para criação de uma starup foram retirados do artigo de 
Sérgio Tauhata (baseado na Learn Startup) encontrado em 
http://goo.gl/HFwgEr 
• Todas as imagens usadas possuem direitos CC e estão listadas no final da 
apresentação
Mantenha-se antenado 
É preciso conhecer tanto os consumidores quanto a 
concorrência
Mantenha-se antenado 
• Acompanhe as novidades 
• Converse com muitas pessoas 
• Leia muito 
• Perceba as necessidades que você ou seus 
contatos possam ter
Mantenha-se antenado
Ideias nascem 
• Eu gostaria de ter uma forma de mensurar meus 
posts no Instagram, e o Instagram é muito usado 
por empresas… pq não criar uma app para isso?
Coloque a ideia sob a lupa 
É preciso conhecer tanto os consumidores quanto a 
concorrência
Coloque a ideia sob a lupa 
• “Verificar se o conceito original se encaixa nas 
premissas da startup” 
• “Aberto a ouvir opiniões” 
• “Saber se o mercado é amplo ou de nicho” 
• “Checar se é um modelo fácil de ser reproduzido” 
• etc
Monte o protótipo 
Pontos chaves: velocidade e flexibilidade
Monte o protótipo 
• Descubra o que o mercado quer - fazendo o protótipo 
• Use a estratégia de lançar um beta 
• A própria comunidade se encarrega de aponta falhas e 
avaliar funcionalidades 
• “O custo do processo de CD é infinitamente menor que 
o de uma pesquisa de mercado(…)” afirma Marcelo 
Amorin da Jarcard Investimentos
Monte o protótipo 
• CD - Customer Development - desenvolvido por 
Steve Blank 
• CD - Processo detalhado para testar e validar ideias 
• Use: desenvolvimento ágil - velocidade de 
aprendizado por meio de feedbacks 
• Use commodity: serviços, frameworks, tecnologias 
open source, etc
Use cloud 
• Você pode disponibilizar sua aplicação em questão 
de instantes 
• Você paga por uso 
• Serviços de cloud te dão pré configurados vários 
serviços como memcache, por exemplo 
• Serviços de cloud são flexíveis, se sua aplicação 
“der certo” e crescer você pode escalar mais rápido
Google App Engine 
Hora do “vamos ver”
Google App Engine 
• Serviço de cloud da Google de PaaS 
• Gratuito para começar 
• Infra-estrutura da Google - aberto ao público em 
2008 e estável em 2011 
• Linguagens suportadas: Java, Python, Go e PHP
Vantagens do GAE 
• Poucas configurações 
• Balanço de carga 
• Replicação 
• Infraestrtura da Google 
• Diversos serviços da Google disponíveis
GAE números em 2013 
• 300.000+ desenvolvedores ativos 
• 3.000.000+ aplicações ativas 
• 7.500.000.000+ hits por dia 
• 4.500.000.000.000+ data resquests 
• fonte: http://goo.gl/zv7Dt7
Alguns serviços do GAE 
• Memcache API - cache in-memory para alta performance 
• Datastore - database storage 
• URLFetch - invoca URLs externas 
• Mail - envia e-mails da sua aplicação 
• Task Queues - fila de processos 
• Images - api para manipulação de imagens 
• Cron Jobs - processos agendados para rodar 
• User Accounts - autenticação usando contas Google
GAE casos de uso 
• Mobile/Tablet 
• App backends 
• Cloud persistente 
• Social/Mobile Games 
• Speed, scale 
• API integrations 
• Personals/dating 
• Entre outros 
• fonte: http://goo.gl/zv7Dt7
Cota gratuita 
• Cada conta pode hospedar até 25 aplicações gratuitas e um número ilimitado de 
aplicações pagas 
• 5GBs de Google Cloud Storage 
• 5GBs de BlobStorage 
• Dados estáticos e códigos: 1GB 
• Logs de até 1GB 
• 28 horas de instancia por dia 
• 100 chamadas a API de e-mail por dia 
• Entre outros limites da quota gratuita em 
https://cloud.google.com/appengine/docs/quotas
Voltando a minha ideia 
• Primeiro passo: fazer uma landpage para mostrar a 
web app
Landpage 
para captar futuros usuários beta
Adicionar minha app no GAE
Adicionar minha app no GAE
Adicionar minha app no GAE
Adicionar minha app no GAE 
• Para subir a app você precisa do SDK, no caso 
estou usando o SDK PHP 
• Necessário python 2.7, PHP 5.4+, MySQL 5.5 na 
máquina 
• Você usa comandos para interagir e subir sua 
aplicação
GoogleAppEngineLaucher 
Onde você vai controlar sua app localmente
Adicionar minha app no GAE 
• Ele vai adicionar 3 arquivos: 
• favicon 
• main.php (com o Hello Wolrd) 
• app.yaml
Adicionar minha app no GAE 
• app.yaml é o arquivo de configuração da sua app 
• configura rotas, versão e runtime 
• Agora é clicar em rodar e testar em localhost:8080
Para casos linux 
• wget 
http://googleappengine.googlecode.com/files/google_appengine_ 
1.8.9.xip 
• unzip google_appengine_1.8.9.zip 
• gcloud auth login 
• cd endereço-do-projeto 
• gcloud init id-do-projeto 
• google_appengine/dev_appserver.py id-do-projeto/ - - 
php_executable_path <php-cgi>
Adicionar minha app no GAE 
• Opa!
Adicionar minha app no GAE 
• No arquivo app.yaml você precisa configurar o 
caminho dos arquivos, incluindo os estáticos
Adicionar minha app no GAE 
• Agora subir a app para o GAE
Para casos linux 
• ./google_appengine/appcfg.py update id-do-projeto
Salvando dados 
• Google CLoud SQL 
• Relacional 
• Api MySQL 
• Google Cloud Storage 
• Não relacional
Administração da app 
latencia, tipos de erros, trafico, utilização, instancias, informações sobre
Hora de criar sua ideia 
encontro do GDG aprofundar os conhecimentos? Tragam suas ideias
Dúvidas? 
Criticas, sugestões, comentários ou convites para jogar Magic?
Obrigada 
@MayogaX
Links úteis 
• https://cloud.google.com/ 
• https://cloud-playground.appspot.com/playground/ 
• https://cloud.google.com/appengine/kb/general
Source das Imagens 
• Kesara Rathnnayake http://goo.gl/gOlKTS 
• Rosemeri Nunes http://goo.gl/StXy8T 
• Heisenber Media http://goo.gl/F03b1B 
• Google App Engine

Weitere ähnliche Inhalte

Was ist angesagt?

Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​
Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​
Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​Valério Souza
 
Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Renzo Nuccitelli
 
Guga Alves apresenta Gutenberg fase 2 e 3
Guga Alves apresenta Gutenberg fase 2 e 3Guga Alves apresenta Gutenberg fase 2 e 3
Guga Alves apresenta Gutenberg fase 2 e 3WordCamp Floripa
 
Android com Firebase
Android com FirebaseAndroid com Firebase
Android com FirebaseRoberto Lopes
 
Walker Leite apresenta usando o WordPress como backend de aplicação
Walker Leite apresenta usando o WordPress como backend de aplicaçãoWalker Leite apresenta usando o WordPress como backend de aplicação
Walker Leite apresenta usando o WordPress como backend de aplicaçãoWordCamp Floripa
 
Desenvolvendo para WordPress com Docker, Git e WP-CLI
Desenvolvendo para WordPress com Docker, Git e WP-CLIDesenvolvendo para WordPress com Docker, Git e WP-CLI
Desenvolvendo para WordPress com Docker, Git e WP-CLIRudá Almeida
 
From Zero to App - Usando React e Firebase
From Zero to App  - Usando React e Firebase From Zero to App  - Usando React e Firebase
From Zero to App - Usando React e Firebase Alvaro Viebrantz
 
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...Bruno Rodrigo S. Souza
 
Google BigQuery - Introdução
Google BigQuery - IntroduçãoGoogle BigQuery - Introdução
Google BigQuery - IntroduçãoJose Papo, MSc
 
Dicas e truques para desenvolver projetos web utilizando WordPress
Dicas e truques para desenvolver projetos web utilizando WordPressDicas e truques para desenvolver projetos web utilizando WordPress
Dicas e truques para desenvolver projetos web utilizando WordPressLeo Baiano
 
Infromatica blogs cauê
Infromatica blogs cauêInfromatica blogs cauê
Infromatica blogs cauêCaueO
 
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020Renato Groff
 
Boas Práticas de programação WordPress
Boas Práticas de programação WordPressBoas Práticas de programação WordPress
Boas Práticas de programação WordPressThiago Mendes
 
PHP Papa-Léguas: Performance em PHP
PHP Papa-Léguas: Performance em PHPPHP Papa-Léguas: Performance em PHP
PHP Papa-Léguas: Performance em PHPFlávio Lisboa
 

Was ist angesagt? (18)

Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​
Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​
Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​
 
Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE Python, Google App Engine e Webapp-CE
Python, Google App Engine e Webapp-CE
 
Guga Alves apresenta Gutenberg fase 2 e 3
Guga Alves apresenta Gutenberg fase 2 e 3Guga Alves apresenta Gutenberg fase 2 e 3
Guga Alves apresenta Gutenberg fase 2 e 3
 
Android com Firebase
Android com FirebaseAndroid com Firebase
Android com Firebase
 
Walker Leite apresenta usando o WordPress como backend de aplicação
Walker Leite apresenta usando o WordPress como backend de aplicaçãoWalker Leite apresenta usando o WordPress como backend de aplicação
Walker Leite apresenta usando o WordPress como backend de aplicação
 
Desenvolvendo para WordPress com Docker, Git e WP-CLI
Desenvolvendo para WordPress com Docker, Git e WP-CLIDesenvolvendo para WordPress com Docker, Git e WP-CLI
Desenvolvendo para WordPress com Docker, Git e WP-CLI
 
From Zero to App - Usando React e Firebase
From Zero to App  - Usando React e Firebase From Zero to App  - Usando React e Firebase
From Zero to App - Usando React e Firebase
 
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...
Palestra WordCamp RJ 2016 Configure um servidor Nginx de alta performance par...
 
Android Firebase
Android FirebaseAndroid Firebase
Android Firebase
 
Wordpress
WordpressWordpress
Wordpress
 
Workshop - Ionic + firebase
Workshop - Ionic + firebaseWorkshop - Ionic + firebase
Workshop - Ionic + firebase
 
Google BigQuery - Introdução
Google BigQuery - IntroduçãoGoogle BigQuery - Introdução
Google BigQuery - Introdução
 
Dicas e truques para desenvolver projetos web utilizando WordPress
Dicas e truques para desenvolver projetos web utilizando WordPressDicas e truques para desenvolver projetos web utilizando WordPress
Dicas e truques para desenvolver projetos web utilizando WordPress
 
Infromatica blogs cauê
Infromatica blogs cauêInfromatica blogs cauê
Infromatica blogs cauê
 
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020
Docker: visão geral, possibilidades e primeiros passos - UNIVAG - Junho-2020
 
PWA
PWAPWA
PWA
 
Boas Práticas de programação WordPress
Boas Práticas de programação WordPressBoas Práticas de programação WordPress
Boas Práticas de programação WordPress
 
PHP Papa-Léguas: Performance em PHP
PHP Papa-Léguas: Performance em PHPPHP Papa-Léguas: Performance em PHP
PHP Papa-Léguas: Performance em PHP
 

Andere mochten auch

1ª madrugada de testes net coders coding dojo
1ª madrugada de testes net coders   coding dojo1ª madrugada de testes net coders   coding dojo
1ª madrugada de testes net coders coding dojoPriscila Mayumi
 
OOD - Princípio da Substituição de Liskov
OOD - Princípio da Substituição de LiskovOOD - Princípio da Substituição de Liskov
OOD - Princípio da Substituição de LiskovPriscila Mayumi
 
OOD - Princípio da Inversão de Dependência
OOD - Princípio da Inversão de DependênciaOOD - Princípio da Inversão de Dependência
OOD - Princípio da Inversão de DependênciaPriscila Mayumi
 
Scripts Entity Framework
Scripts Entity FrameworkScripts Entity Framework
Scripts Entity FrameworkPriscila Mayumi
 
Bolovo - problema antigo de arquitetura de software - não use por aí
Bolovo - problema antigo de arquitetura de software - não use por aíBolovo - problema antigo de arquitetura de software - não use por aí
Bolovo - problema antigo de arquitetura de software - não use por aíPriscila Mayumi
 
Google drive y sus caracteristicas
Google drive y sus caracteristicasGoogle drive y sus caracteristicas
Google drive y sus caracteristicasTaty Amy St
 
Entendendo Domain-Driven Design
Entendendo Domain-Driven DesignEntendendo Domain-Driven Design
Entendendo Domain-Driven DesignRafael Ponte
 
Entity framework migrations
Entity framework migrationsEntity framework migrations
Entity framework migrationsPriscila Mayumi
 
2500 tb074Health, Safety and Environmental Manual
2500 tb074Health, Safety and Environmental Manual2500 tb074Health, Safety and Environmental Manual
2500 tb074Health, Safety and Environmental Manualahmed rizk
 
Smms construccion geotecnica tomo i
Smms construccion geotecnica tomo iSmms construccion geotecnica tomo i
Smms construccion geotecnica tomo iElizabeth Martínez
 
Turbinas aeronáuticas
Turbinas aeronáuticasTurbinas aeronáuticas
Turbinas aeronáuticasOtivo Junior
 
Fate Apostila : Princípios básicos do desenho
Fate Apostila : Princípios básicos do desenhoFate Apostila : Princípios básicos do desenho
Fate Apostila : Princípios básicos do desenhoPriscila Guimaraes
 
Combustion and Mixing Analysis of a Scramjet Combustor Using CFD
Combustion and Mixing Analysis of a Scramjet Combustor Using CFDCombustion and Mixing Analysis of a Scramjet Combustor Using CFD
Combustion and Mixing Analysis of a Scramjet Combustor Using CFDijsrd.com
 

Andere mochten auch (20)

Actividad 3 google drive
Actividad 3 google driveActividad 3 google drive
Actividad 3 google drive
 
1ª madrugada de testes net coders coding dojo
1ª madrugada de testes net coders   coding dojo1ª madrugada de testes net coders   coding dojo
1ª madrugada de testes net coders coding dojo
 
Entity framework 7
Entity framework 7Entity framework 7
Entity framework 7
 
OOD - Princípio da Substituição de Liskov
OOD - Princípio da Substituição de LiskovOOD - Princípio da Substituição de Liskov
OOD - Princípio da Substituição de Liskov
 
OOD - Princípio da Inversão de Dependência
OOD - Princípio da Inversão de DependênciaOOD - Princípio da Inversão de Dependência
OOD - Princípio da Inversão de Dependência
 
Microsoft MTACs
Microsoft MTACsMicrosoft MTACs
Microsoft MTACs
 
Scripts Entity Framework
Scripts Entity FrameworkScripts Entity Framework
Scripts Entity Framework
 
Bolovo - problema antigo de arquitetura de software - não use por aí
Bolovo - problema antigo de arquitetura de software - não use por aíBolovo - problema antigo de arquitetura de software - não use por aí
Bolovo - problema antigo de arquitetura de software - não use por aí
 
Google drive y sus caracteristicas
Google drive y sus caracteristicasGoogle drive y sus caracteristicas
Google drive y sus caracteristicas
 
Entendendo Domain-Driven Design
Entendendo Domain-Driven DesignEntendendo Domain-Driven Design
Entendendo Domain-Driven Design
 
Entity framework migrations
Entity framework migrationsEntity framework migrations
Entity framework migrations
 
Entity framework
Entity frameworkEntity framework
Entity framework
 
2500 tb074Health, Safety and Environmental Manual
2500 tb074Health, Safety and Environmental Manual2500 tb074Health, Safety and Environmental Manual
2500 tb074Health, Safety and Environmental Manual
 
Engine systems diesel engine analyst - full
Engine systems   diesel engine analyst - fullEngine systems   diesel engine analyst - full
Engine systems diesel engine analyst - full
 
Coluna gamer #1
Coluna gamer #1Coluna gamer #1
Coluna gamer #1
 
Smms construccion geotecnica tomo i
Smms construccion geotecnica tomo iSmms construccion geotecnica tomo i
Smms construccion geotecnica tomo i
 
Turbinas aeronáuticas
Turbinas aeronáuticasTurbinas aeronáuticas
Turbinas aeronáuticas
 
Termodinamica
TermodinamicaTermodinamica
Termodinamica
 
Fate Apostila : Princípios básicos do desenho
Fate Apostila : Princípios básicos do desenhoFate Apostila : Princípios básicos do desenho
Fate Apostila : Princípios básicos do desenho
 
Combustion and Mixing Analysis of a Scramjet Combustor Using CFD
Combustion and Mixing Analysis of a Scramjet Combustor Using CFDCombustion and Mixing Analysis of a Scramjet Combustor Using CFD
Combustion and Mixing Analysis of a Scramjet Combustor Using CFD
 

Ähnlich wie Do 0 a estar online no Google App Engine

Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoAlvaro Viebrantz
 
Google App Engine e Python
Google App Engine e PythonGoogle App Engine e Python
Google App Engine e PythonPeslPinguim
 
Negócios e Open Source
Negócios e Open SourceNegócios e Open Source
Negócios e Open SourceOpenBossa
 
Meetup tecnologia - desenvolvimento, infra e processos
Meetup  tecnologia - desenvolvimento, infra e processosMeetup  tecnologia - desenvolvimento, infra e processos
Meetup tecnologia - desenvolvimento, infra e processosGuilherme Veras
 
Oportunidades para desenvolvedores
Oportunidades para desenvolvedoresOportunidades para desenvolvedores
Oportunidades para desenvolvedoresPriscila Mayumi
 
Projeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareAragon Vieira
 
JHipster - Produtividade e Maturidade em suas mãos
JHipster - Produtividade e Maturidade em suas mãosJHipster - Produtividade e Maturidade em suas mãos
JHipster - Produtividade e Maturidade em suas mãosThiago Soares
 
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...minastestingconference
 
Function as a Service: IT forum expo 2017
Function as a Service: IT forum expo 2017Function as a Service: IT forum expo 2017
Function as a Service: IT forum expo 2017Igor Rosa Macedo
 
Apresentação sie ir-2014
Apresentação sie ir-2014Apresentação sie ir-2014
Apresentação sie ir-2014Renan Moreira
 
RPA - Portfólio de Serviços iProcess com RPA uiPath
RPA - Portfólio de Serviços iProcess com RPA uiPathRPA - Portfólio de Serviços iProcess com RPA uiPath
RPA - Portfólio de Serviços iProcess com RPA uiPathEduardo Britto
 
Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Cláudio Amaral
 
Qualidade de software e sua influência no sucesso do projeto
Qualidade de software e sua influência no sucesso do projetoQualidade de software e sua influência no sucesso do projeto
Qualidade de software e sua influência no sucesso do projetoValquíria Duarte D'Amato
 
Desenvolvimento de aplicações nativas para ios e android
Desenvolvimento de aplicações nativas para ios e androidDesenvolvimento de aplicações nativas para ios e android
Desenvolvimento de aplicações nativas para ios e androidDiogo Andre Loff
 

Ähnlich wie Do 0 a estar online no Google App Engine (20)

Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em Go
 
Google App Engine e Python
Google App Engine e PythonGoogle App Engine e Python
Google App Engine e Python
 
Negócios e Open Source
Negócios e Open SourceNegócios e Open Source
Negócios e Open Source
 
Meetup tecnologia - desenvolvimento, infra e processos
Meetup  tecnologia - desenvolvimento, infra e processosMeetup  tecnologia - desenvolvimento, infra e processos
Meetup tecnologia - desenvolvimento, infra e processos
 
Oportunidades para desenvolvedores
Oportunidades para desenvolvedoresOportunidades para desenvolvedores
Oportunidades para desenvolvedores
 
Meteor - TechParty 2015
Meteor - TechParty 2015Meteor - TechParty 2015
Meteor - TechParty 2015
 
Projeto e Desenvolvimento de Software
Projeto e Desenvolvimento de SoftwareProjeto e Desenvolvimento de Software
Projeto e Desenvolvimento de Software
 
JHipster - Produtividade e Maturidade em suas mãos
JHipster - Produtividade e Maturidade em suas mãosJHipster - Produtividade e Maturidade em suas mãos
JHipster - Produtividade e Maturidade em suas mãos
 
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...
[MTC 2021] As 8 melhores práticas e formas de simplificar e estruturar todos...
 
Function as a Service: IT forum expo 2017
Function as a Service: IT forum expo 2017Function as a Service: IT forum expo 2017
Function as a Service: IT forum expo 2017
 
Apresentação sie ir-2014
Apresentação sie ir-2014Apresentação sie ir-2014
Apresentação sie ir-2014
 
Aula PIT 3
Aula PIT 3Aula PIT 3
Aula PIT 3
 
RPA - Portfólio de Serviços iProcess com RPA uiPath
RPA - Portfólio de Serviços iProcess com RPA uiPathRPA - Portfólio de Serviços iProcess com RPA uiPath
RPA - Portfólio de Serviços iProcess com RPA uiPath
 
Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002Projeto de Sistemas - Aula002
Projeto de Sistemas - Aula002
 
Qualidade de software e sua influência no sucesso do projeto
Qualidade de software e sua influência no sucesso do projetoQualidade de software e sua influência no sucesso do projeto
Qualidade de software e sua influência no sucesso do projeto
 
#Moving br workshop
#Moving br workshop#Moving br workshop
#Moving br workshop
 
Desenvolvimento de aplicações nativas para ios e android
Desenvolvimento de aplicações nativas para ios e androidDesenvolvimento de aplicações nativas para ios e android
Desenvolvimento de aplicações nativas para ios e android
 
Falando sobre DevOps no azure
Falando sobre DevOps no azureFalando sobre DevOps no azure
Falando sobre DevOps no azure
 
Temas estudo
Temas estudoTemas estudo
Temas estudo
 
Scrum em 1h.
Scrum em 1h.Scrum em 1h.
Scrum em 1h.
 

Mehr von Priscila Mayumi

OOD - Princípio Open/Closed
OOD - Princípio Open/ClosedOOD - Princípio Open/Closed
OOD - Princípio Open/ClosedPriscila Mayumi
 
Hangout OOD – princípio da responsabilidade única
Hangout OOD – princípio da responsabilidade únicaHangout OOD – princípio da responsabilidade única
Hangout OOD – princípio da responsabilidade únicaPriscila Mayumi
 
Sistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computingSistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computingPriscila Mayumi
 
Banco de dados de grafos
Banco de dados de grafosBanco de dados de grafos
Banco de dados de grafosPriscila Mayumi
 
Trabalhando com banco de dados e Entity Framework
Trabalhando com banco de dados e Entity FrameworkTrabalhando com banco de dados e Entity Framework
Trabalhando com banco de dados e Entity FrameworkPriscila Mayumi
 
O Mágico Mundo do Entity Framework
O Mágico Mundo do Entity FrameworkO Mágico Mundo do Entity Framework
O Mágico Mundo do Entity FrameworkPriscila Mayumi
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonPriscila Mayumi
 

Mehr von Priscila Mayumi (12)

OOD - Princípio Open/Closed
OOD - Princípio Open/ClosedOOD - Princípio Open/Closed
OOD - Princípio Open/Closed
 
Hangout OOD – princípio da responsabilidade única
Hangout OOD – princípio da responsabilidade únicaHangout OOD – princípio da responsabilidade única
Hangout OOD – princípio da responsabilidade única
 
Sistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computingSistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computing
 
Conhecendo o Firefox OS
Conhecendo o Firefox OSConhecendo o Firefox OS
Conhecendo o Firefox OS
 
PHP no Windows Azure
PHP no Windows AzurePHP no Windows Azure
PHP no Windows Azure
 
Banco de dados de grafos
Banco de dados de grafosBanco de dados de grafos
Banco de dados de grafos
 
Entity framework
Entity frameworkEntity framework
Entity framework
 
Trabalhando com banco de dados e Entity Framework
Trabalhando com banco de dados e Entity FrameworkTrabalhando com banco de dados e Entity Framework
Trabalhando com banco de dados e Entity Framework
 
Ninja migrations
Ninja migrationsNinja migrations
Ninja migrations
 
O Mágico Mundo do Entity Framework
O Mágico Mundo do Entity FrameworkO Mágico Mundo do Entity Framework
O Mágico Mundo do Entity Framework
 
Ruby versus Python
Ruby versus PythonRuby versus Python
Ruby versus Python
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação Python
 

Do 0 a estar online no Google App Engine

  • 1. Do 0 a estar online no Google App Engine GDG São Carlos 01/11/2014
  • 2. Disclaimer • O evento de hoje é “Trazendo sua empresa para internet” do GDG e GBG de São Carlos • Meu nome é Priscila Mayumi Sato • Hoje sou Fullstack Developer numa pequena startup • Não sou a pessoa de negócios, sou a pessoa técnica • Parte dos passos para criação de uma starup foram retirados do artigo de Sérgio Tauhata (baseado na Learn Startup) encontrado em http://goo.gl/HFwgEr • Todas as imagens usadas possuem direitos CC e estão listadas no final da apresentação
  • 3. Mantenha-se antenado É preciso conhecer tanto os consumidores quanto a concorrência
  • 4. Mantenha-se antenado • Acompanhe as novidades • Converse com muitas pessoas • Leia muito • Perceba as necessidades que você ou seus contatos possam ter
  • 6. Ideias nascem • Eu gostaria de ter uma forma de mensurar meus posts no Instagram, e o Instagram é muito usado por empresas… pq não criar uma app para isso?
  • 7. Coloque a ideia sob a lupa É preciso conhecer tanto os consumidores quanto a concorrência
  • 8. Coloque a ideia sob a lupa • “Verificar se o conceito original se encaixa nas premissas da startup” • “Aberto a ouvir opiniões” • “Saber se o mercado é amplo ou de nicho” • “Checar se é um modelo fácil de ser reproduzido” • etc
  • 9. Monte o protótipo Pontos chaves: velocidade e flexibilidade
  • 10. Monte o protótipo • Descubra o que o mercado quer - fazendo o protótipo • Use a estratégia de lançar um beta • A própria comunidade se encarrega de aponta falhas e avaliar funcionalidades • “O custo do processo de CD é infinitamente menor que o de uma pesquisa de mercado(…)” afirma Marcelo Amorin da Jarcard Investimentos
  • 11. Monte o protótipo • CD - Customer Development - desenvolvido por Steve Blank • CD - Processo detalhado para testar e validar ideias • Use: desenvolvimento ágil - velocidade de aprendizado por meio de feedbacks • Use commodity: serviços, frameworks, tecnologias open source, etc
  • 12. Use cloud • Você pode disponibilizar sua aplicação em questão de instantes • Você paga por uso • Serviços de cloud te dão pré configurados vários serviços como memcache, por exemplo • Serviços de cloud são flexíveis, se sua aplicação “der certo” e crescer você pode escalar mais rápido
  • 13. Google App Engine Hora do “vamos ver”
  • 14. Google App Engine • Serviço de cloud da Google de PaaS • Gratuito para começar • Infra-estrutura da Google - aberto ao público em 2008 e estável em 2011 • Linguagens suportadas: Java, Python, Go e PHP
  • 15. Vantagens do GAE • Poucas configurações • Balanço de carga • Replicação • Infraestrtura da Google • Diversos serviços da Google disponíveis
  • 16. GAE números em 2013 • 300.000+ desenvolvedores ativos • 3.000.000+ aplicações ativas • 7.500.000.000+ hits por dia • 4.500.000.000.000+ data resquests • fonte: http://goo.gl/zv7Dt7
  • 17. Alguns serviços do GAE • Memcache API - cache in-memory para alta performance • Datastore - database storage • URLFetch - invoca URLs externas • Mail - envia e-mails da sua aplicação • Task Queues - fila de processos • Images - api para manipulação de imagens • Cron Jobs - processos agendados para rodar • User Accounts - autenticação usando contas Google
  • 18. GAE casos de uso • Mobile/Tablet • App backends • Cloud persistente • Social/Mobile Games • Speed, scale • API integrations • Personals/dating • Entre outros • fonte: http://goo.gl/zv7Dt7
  • 19. Cota gratuita • Cada conta pode hospedar até 25 aplicações gratuitas e um número ilimitado de aplicações pagas • 5GBs de Google Cloud Storage • 5GBs de BlobStorage • Dados estáticos e códigos: 1GB • Logs de até 1GB • 28 horas de instancia por dia • 100 chamadas a API de e-mail por dia • Entre outros limites da quota gratuita em https://cloud.google.com/appengine/docs/quotas
  • 20. Voltando a minha ideia • Primeiro passo: fazer uma landpage para mostrar a web app
  • 21. Landpage para captar futuros usuários beta
  • 25. Adicionar minha app no GAE • Para subir a app você precisa do SDK, no caso estou usando o SDK PHP • Necessário python 2.7, PHP 5.4+, MySQL 5.5 na máquina • Você usa comandos para interagir e subir sua aplicação
  • 26. GoogleAppEngineLaucher Onde você vai controlar sua app localmente
  • 27. Adicionar minha app no GAE • Ele vai adicionar 3 arquivos: • favicon • main.php (com o Hello Wolrd) • app.yaml
  • 28. Adicionar minha app no GAE • app.yaml é o arquivo de configuração da sua app • configura rotas, versão e runtime • Agora é clicar em rodar e testar em localhost:8080
  • 29. Para casos linux • wget http://googleappengine.googlecode.com/files/google_appengine_ 1.8.9.xip • unzip google_appengine_1.8.9.zip • gcloud auth login • cd endereço-do-projeto • gcloud init id-do-projeto • google_appengine/dev_appserver.py id-do-projeto/ - - php_executable_path <php-cgi>
  • 30. Adicionar minha app no GAE • Opa!
  • 31. Adicionar minha app no GAE • No arquivo app.yaml você precisa configurar o caminho dos arquivos, incluindo os estáticos
  • 32. Adicionar minha app no GAE • Agora subir a app para o GAE
  • 33. Para casos linux • ./google_appengine/appcfg.py update id-do-projeto
  • 34. Salvando dados • Google CLoud SQL • Relacional • Api MySQL • Google Cloud Storage • Não relacional
  • 35. Administração da app latencia, tipos de erros, trafico, utilização, instancias, informações sobre
  • 36. Hora de criar sua ideia encontro do GDG aprofundar os conhecimentos? Tragam suas ideias
  • 37. Dúvidas? Criticas, sugestões, comentários ou convites para jogar Magic?
  • 39. Links úteis • https://cloud.google.com/ • https://cloud-playground.appspot.com/playground/ • https://cloud.google.com/appengine/kb/general
  • 40. Source das Imagens • Kesara Rathnnayake http://goo.gl/gOlKTS • Rosemeri Nunes http://goo.gl/StXy8T • Heisenber Media http://goo.gl/F03b1B • Google App Engine