SlideShare uma empresa Scribd logo
1 de 11
Baixar para ler offline
Coding Dojo de PL/pgSQL
treinando programa¸c˜ao procedural no PostgreSQL
Fabr´ızio de Royes Mello
Timbira - A empresa brasileira de PostgreSQL
16 de agosto de 2013
Apresenta¸c˜ao
Fabr´ızio de Royes Mello
Especialista em Banco de Dados
Colaborador Comunidade Brasileira de PostgreSQL
Colaborador PostgreSQL Global Development Group
@fabriziomello
Timbira
A empresa Brasileira de PostgreSQL
Consultoria / Desenvolvimento
Planos de Suporte
Parcerias com Empresas Desenvolvedoras de Software
Treinamentos In-Company e On-Line
Corre¸c˜ao de bugs no PostgreSQL garantida em contrato
Sobre esta apresenta¸c˜ao
esta apresenta¸c˜ao est´a dispon´ıvel em:
http://www.timbira.com.br/material
esta apresenta¸c˜ao est´a sob licen¸ca Creative Commons
Atribui¸c˜ao 3.0 Brasil:
http://creativecommons.org/licenses/by/3.0/br
Dojo (DO=caminho e JO=lugar)
”´E o caminho da pr´atica, a via do desenvolvimento integral, onde
entramos em contato com o nosso melhor estado de ser.”
Coding Dojo
Para que tudo isso?
ERRAR!!! Erro gera aprendizado
Treinar as habilidades de programa¸c˜ao
Melhorar a comunica¸c˜ao
Conhecer novas tecnologias
Pensar ”fora da caixinha”
Divers˜ao
Cifra de C´esar
Em criptografia, a Cifra de C´esar, tamb´em conhecida como cifra de
troca, c´odigo de C´esar ou troca de C´esar, ´e uma das mais simples
e conhecidas t´ecnicas de criptografia. ´E um tipo de cifra de
substitui¸c˜ao na qual cada letra do texto ´e substitu´ıda por outra,
que se apresenta no alfabeto abaixo dela um n´umero fixo de vezes.
Por exemplo, com uma troca de trˆes posi¸c˜oes, A seria substitu´ıdo
por D, B se tornaria E, e assim por diante.
Problema / Regras
Implementar, em PL/pgSQL, fun¸c˜oes para criptografar e
descriptografar strings usando a t´ecnica da Cifra de C´esar.
Vamos usar TDD (Test-Driven Development) usando o
Framework de Testes Epic (www.epictest.org)
A cada 5min faremos a troca do piloto e outra pessoa da
plat´eia entra na rodada
Documenta¸c˜ao Apoio
http://www.postgresql.org/docs/9.2/interactive/
plpgsql.html
http://www.epictest.org/wiki/WritingTests
Retrospectiva
Pontos Positivos?
Pontos Negativos?
Perguntas
?
Fabr´ızio de Royes Mello
fabrizio@timbira.com.br
http://www.timbira.com.br

Mais conteúdo relacionado

Mais procurados

Django: um framework web para perfeccionistas com prazo
Django: um framework web para perfeccionistas com prazoDjango: um framework web para perfeccionistas com prazo
Django: um framework web para perfeccionistas com prazoBernardo Fontes
 
Desenvolvimento web simples com Python e DJango
Desenvolvimento web simples com Python e DJangoDesenvolvimento web simples com Python e DJango
Desenvolvimento web simples com Python e DJangoRafael Nunes
 
Desenvolvimento Web Ágil com Python e Django
Desenvolvimento Web Ágil com Python e DjangoDesenvolvimento Web Ágil com Python e Django
Desenvolvimento Web Ágil com Python e DjangoBruno Barbosa
 

Mais procurados (6)

Trabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQLTrabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQL
 
Django: um framework web para perfeccionistas com prazo
Django: um framework web para perfeccionistas com prazoDjango: um framework web para perfeccionistas com prazo
Django: um framework web para perfeccionistas com prazo
 
PostgreSQL Rock Star
PostgreSQL Rock StarPostgreSQL Rock Star
PostgreSQL Rock Star
 
Desenvolvimento web simples com Python e DJango
Desenvolvimento web simples com Python e DJangoDesenvolvimento web simples com Python e DJango
Desenvolvimento web simples com Python e DJango
 
Desenvolvimento Web Ágil com Python e Django
Desenvolvimento Web Ágil com Python e DjangoDesenvolvimento Web Ágil com Python e Django
Desenvolvimento Web Ágil com Python e Django
 
Aplicações do Python na escola e no mercado de trabalho
Aplicações do Python na escola e no mercado de trabalhoAplicações do Python na escola e no mercado de trabalho
Aplicações do Python na escola e no mercado de trabalho
 

Destaque

GSoC2014 - PGCon2015 Presentation June, 2015
GSoC2014 - PGCon2015 Presentation June, 2015GSoC2014 - PGCon2015 Presentation June, 2015
GSoC2014 - PGCon2015 Presentation June, 2015Fabrízio Mello
 
GSoC2014 - PGDay Ijui/RS Presentation October, 2016
GSoC2014 - PGDay Ijui/RS Presentation October, 2016 GSoC2014 - PGDay Ijui/RS Presentation October, 2016
GSoC2014 - PGDay Ijui/RS Presentation October, 2016 Fabrízio Mello
 
Bad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de DadosBad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de DadosFabrízio Mello
 
Como posso colaborar com o PostgreSQL
Como posso colaborar com o PostgreSQLComo posso colaborar com o PostgreSQL
Como posso colaborar com o PostgreSQLFabrízio Mello
 
Keep calm and Database Continuous Deployment
Keep calm and Database Continuous DeploymentKeep calm and Database Continuous Deployment
Keep calm and Database Continuous DeploymentFabrízio Mello
 
EXPLicando o Explain no PostgreSQL
EXPLicando o Explain no PostgreSQLEXPLicando o Explain no PostgreSQL
EXPLicando o Explain no PostgreSQLFabrízio Mello
 
Bad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de DadosBad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de DadosFabrízio Mello
 
Bad Smells em Bancos de Dados
Bad Smells em Bancos de DadosBad Smells em Bancos de Dados
Bad Smells em Bancos de DadosFabrízio Mello
 
NoSQL + SQL = PostgreSQL (DBA Brasil 1.0 - São Paulo/SP)
NoSQL + SQL = PostgreSQL (DBA Brasil 1.0 - São Paulo/SP) NoSQL + SQL = PostgreSQL (DBA Brasil 1.0 - São Paulo/SP)
NoSQL + SQL = PostgreSQL (DBA Brasil 1.0 - São Paulo/SP) Fabrízio Mello
 
Sharing Code and Experiences
Sharing Code and ExperiencesSharing Code and Experiences
Sharing Code and ExperiencesFabrízio Mello
 
GSoC2014 - Uniritter Presentation May, 2015
GSoC2014 - Uniritter Presentation May, 2015GSoC2014 - Uniritter Presentation May, 2015
GSoC2014 - Uniritter Presentation May, 2015Fabrízio Mello
 
Postgres Wonderland - PGDay Cascavél 2013
Postgres Wonderland - PGDay Cascavél 2013Postgres Wonderland - PGDay Cascavél 2013
Postgres Wonderland - PGDay Cascavél 2013Fabio Telles Rodriguez
 
Planejador de Consultas do PostgreSQL
Planejador de Consultas do PostgreSQLPlanejador de Consultas do PostgreSQL
Planejador de Consultas do PostgreSQLFabrízio Mello
 
Курс лекций на программу МВА в РУДН 16 февраля 2016 Тема "Управление изменени...
Курс лекций на программу МВА в РУДН 16 февраля 2016 Тема "Управление изменени...Курс лекций на программу МВА в РУДН 16 февраля 2016 Тема "Управление изменени...
Курс лекций на программу МВА в РУДН 16 февраля 2016 Тема "Управление изменени...Андрей Анатольевич Ващенко
 
יחידת הוראה לחנכה
יחידת הוראה לחנכהיחידת הוראה לחנכה
יחידת הוראה לחנכהMax Rokach
 
Tutorial Database Refactoring
Tutorial Database RefactoringTutorial Database Refactoring
Tutorial Database RefactoringFabrízio Mello
 
NoSQL + SQL = PostgreSQL (TDC2014 - Porto Alegre/RS)
NoSQL + SQL = PostgreSQL (TDC2014 - Porto Alegre/RS)NoSQL + SQL = PostgreSQL (TDC2014 - Porto Alegre/RS)
NoSQL + SQL = PostgreSQL (TDC2014 - Porto Alegre/RS)Fabrízio Mello
 
PostgreSQL: How to Store Passwords Safely
PostgreSQL: How to Store Passwords SafelyPostgreSQL: How to Store Passwords Safely
PostgreSQL: How to Store Passwords SafelyJuliano Atanazio
 
PROCERGS 2015-03-25: Bad Smells em Bancos de Dados
PROCERGS 2015-03-25: Bad Smells em Bancos de DadosPROCERGS 2015-03-25: Bad Smells em Bancos de Dados
PROCERGS 2015-03-25: Bad Smells em Bancos de DadosFabrízio Mello
 
Greenplum: O banco de dados open source massivamente paralelo baseado em Post...
Greenplum: O banco de dados open source massivamente paralelo baseado em Post...Greenplum: O banco de dados open source massivamente paralelo baseado em Post...
Greenplum: O banco de dados open source massivamente paralelo baseado em Post...PGDay Campinas
 

Destaque (20)

GSoC2014 - PGCon2015 Presentation June, 2015
GSoC2014 - PGCon2015 Presentation June, 2015GSoC2014 - PGCon2015 Presentation June, 2015
GSoC2014 - PGCon2015 Presentation June, 2015
 
GSoC2014 - PGDay Ijui/RS Presentation October, 2016
GSoC2014 - PGDay Ijui/RS Presentation October, 2016 GSoC2014 - PGDay Ijui/RS Presentation October, 2016
GSoC2014 - PGDay Ijui/RS Presentation October, 2016
 
Bad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de DadosBad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de Dados
 
Como posso colaborar com o PostgreSQL
Como posso colaborar com o PostgreSQLComo posso colaborar com o PostgreSQL
Como posso colaborar com o PostgreSQL
 
Keep calm and Database Continuous Deployment
Keep calm and Database Continuous DeploymentKeep calm and Database Continuous Deployment
Keep calm and Database Continuous Deployment
 
EXPLicando o Explain no PostgreSQL
EXPLicando o Explain no PostgreSQLEXPLicando o Explain no PostgreSQL
EXPLicando o Explain no PostgreSQL
 
Bad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de DadosBad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de Dados
 
Bad Smells em Bancos de Dados
Bad Smells em Bancos de DadosBad Smells em Bancos de Dados
Bad Smells em Bancos de Dados
 
NoSQL + SQL = PostgreSQL (DBA Brasil 1.0 - São Paulo/SP)
NoSQL + SQL = PostgreSQL (DBA Brasil 1.0 - São Paulo/SP) NoSQL + SQL = PostgreSQL (DBA Brasil 1.0 - São Paulo/SP)
NoSQL + SQL = PostgreSQL (DBA Brasil 1.0 - São Paulo/SP)
 
Sharing Code and Experiences
Sharing Code and ExperiencesSharing Code and Experiences
Sharing Code and Experiences
 
GSoC2014 - Uniritter Presentation May, 2015
GSoC2014 - Uniritter Presentation May, 2015GSoC2014 - Uniritter Presentation May, 2015
GSoC2014 - Uniritter Presentation May, 2015
 
Postgres Wonderland - PGDay Cascavél 2013
Postgres Wonderland - PGDay Cascavél 2013Postgres Wonderland - PGDay Cascavél 2013
Postgres Wonderland - PGDay Cascavél 2013
 
Planejador de Consultas do PostgreSQL
Planejador de Consultas do PostgreSQLPlanejador de Consultas do PostgreSQL
Planejador de Consultas do PostgreSQL
 
Курс лекций на программу МВА в РУДН 16 февраля 2016 Тема "Управление изменени...
Курс лекций на программу МВА в РУДН 16 февраля 2016 Тема "Управление изменени...Курс лекций на программу МВА в РУДН 16 февраля 2016 Тема "Управление изменени...
Курс лекций на программу МВА в РУДН 16 февраля 2016 Тема "Управление изменени...
 
יחידת הוראה לחנכה
יחידת הוראה לחנכהיחידת הוראה לחנכה
יחידת הוראה לחנכה
 
Tutorial Database Refactoring
Tutorial Database RefactoringTutorial Database Refactoring
Tutorial Database Refactoring
 
NoSQL + SQL = PostgreSQL (TDC2014 - Porto Alegre/RS)
NoSQL + SQL = PostgreSQL (TDC2014 - Porto Alegre/RS)NoSQL + SQL = PostgreSQL (TDC2014 - Porto Alegre/RS)
NoSQL + SQL = PostgreSQL (TDC2014 - Porto Alegre/RS)
 
PostgreSQL: How to Store Passwords Safely
PostgreSQL: How to Store Passwords SafelyPostgreSQL: How to Store Passwords Safely
PostgreSQL: How to Store Passwords Safely
 
PROCERGS 2015-03-25: Bad Smells em Bancos de Dados
PROCERGS 2015-03-25: Bad Smells em Bancos de DadosPROCERGS 2015-03-25: Bad Smells em Bancos de Dados
PROCERGS 2015-03-25: Bad Smells em Bancos de Dados
 
Greenplum: O banco de dados open source massivamente paralelo baseado em Post...
Greenplum: O banco de dados open source massivamente paralelo baseado em Post...Greenplum: O banco de dados open source massivamente paralelo baseado em Post...
Greenplum: O banco de dados open source massivamente paralelo baseado em Post...
 

Semelhante a Dojo plpgsql

Dojo de Programação
Dojo de ProgramaçãoDojo de Programação
Dojo de ProgramaçãoRamiro Luz
 
Introdução ao Wordpress
Introdução ao WordpressIntrodução ao Wordpress
Introdução ao WordpressAline Corso
 
7 Serviços para turbinar o Azure DevOps
7 Serviços para turbinar o Azure DevOps7 Serviços para turbinar o Azure DevOps
7 Serviços para turbinar o Azure DevOpsHigor Barbosa
 
Onboarding e cultura seo [Search Lab - Expo digitalks 2018]
Onboarding e cultura seo [Search Lab - Expo digitalks 2018]Onboarding e cultura seo [Search Lab - Expo digitalks 2018]
Onboarding e cultura seo [Search Lab - Expo digitalks 2018]Daniel Arend
 
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...IT4biz IT Solutions
 
Pequenas Ações para Revolucionar sua Carreira
Pequenas Ações para Revolucionar sua CarreiraPequenas Ações para Revolucionar sua Carreira
Pequenas Ações para Revolucionar sua CarreiraPaulo Igor Alves Godinho
 
[GUTS-RS] DOJO de Arquitetura e Estratégia de Testes
[GUTS-RS] DOJO de Arquitetura e Estratégia de Testes[GUTS-RS] DOJO de Arquitetura e Estratégia de Testes
[GUTS-RS] DOJO de Arquitetura e Estratégia de TestesGUTS-RS
 
O corretor gramatical CoGrOO - IX Evidosol
O corretor gramatical CoGrOO - IX EvidosolO corretor gramatical CoGrOO - IX Evidosol
O corretor gramatical CoGrOO - IX EvidosolWilliam Colen
 
Identidade Padrão da Comunicação Digital do Governo Federal
Identidade Padrão da Comunicação Digital do Governo FederalIdentidade Padrão da Comunicação Digital do Governo Federal
Identidade Padrão da Comunicação Digital do Governo FederalTania Andrea
 
Cogroo Google Oss Jam Sao Paulo V01
Cogroo Google Oss Jam Sao Paulo V01Cogroo Google Oss Jam Sao Paulo V01
Cogroo Google Oss Jam Sao Paulo V01William Colen
 
Segunda Empregável - Edição 01
Segunda Empregável - Edição 01Segunda Empregável - Edição 01
Segunda Empregável - Edição 01Fernando Anselmo
 
SEO: (Search Engine Optimization) Otimização de buscas de Sites
SEO: (Search Engine Optimization) Otimização de buscas de SitesSEO: (Search Engine Optimization) Otimização de buscas de Sites
SEO: (Search Engine Optimization) Otimização de buscas de SitesEveraldo Wanderlei Uavniczak
 
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...Renato Groff
 
Introdução ao SAMBA-4 Level 2
Introdução ao SAMBA-4 Level 2Introdução ao SAMBA-4 Level 2
Introdução ao SAMBA-4 Level 2Robson Vaamonde
 
SOA Expert Versão Curta
SOA Expert Versão CurtaSOA Expert Versão Curta
SOA Expert Versão CurtaUros Rogulja
 

Semelhante a Dojo plpgsql (20)

Trabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQLTrabalhando com Logs no PostgreSQL
Trabalhando com Logs no PostgreSQL
 
SPA com CSharp
SPA com CSharpSPA com CSharp
SPA com CSharp
 
Dojo de Programação
Dojo de ProgramaçãoDojo de Programação
Dojo de Programação
 
Tutorial Prezi
Tutorial PreziTutorial Prezi
Tutorial Prezi
 
Introdução ao Wordpress
Introdução ao WordpressIntrodução ao Wordpress
Introdução ao Wordpress
 
7 Serviços para turbinar o Azure DevOps
7 Serviços para turbinar o Azure DevOps7 Serviços para turbinar o Azure DevOps
7 Serviços para turbinar o Azure DevOps
 
Onboarding e cultura seo [Search Lab - Expo digitalks 2018]
Onboarding e cultura seo [Search Lab - Expo digitalks 2018]Onboarding e cultura seo [Search Lab - Expo digitalks 2018]
Onboarding e cultura seo [Search Lab - Expo digitalks 2018]
 
Consegi2013
Consegi2013Consegi2013
Consegi2013
 
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...
Slide de Divulgação do Curso Inteligência de Negócios (Business Intelligence)...
 
Pequenas Ações para Revolucionar sua Carreira
Pequenas Ações para Revolucionar sua CarreiraPequenas Ações para Revolucionar sua Carreira
Pequenas Ações para Revolucionar sua Carreira
 
[GUTS-RS] DOJO de Arquitetura e Estratégia de Testes
[GUTS-RS] DOJO de Arquitetura e Estratégia de Testes[GUTS-RS] DOJO de Arquitetura e Estratégia de Testes
[GUTS-RS] DOJO de Arquitetura e Estratégia de Testes
 
O corretor gramatical CoGrOO - IX Evidosol
O corretor gramatical CoGrOO - IX EvidosolO corretor gramatical CoGrOO - IX Evidosol
O corretor gramatical CoGrOO - IX Evidosol
 
Coding Dojo #GuruPI
Coding Dojo #GuruPICoding Dojo #GuruPI
Coding Dojo #GuruPI
 
Identidade Padrão da Comunicação Digital do Governo Federal
Identidade Padrão da Comunicação Digital do Governo FederalIdentidade Padrão da Comunicação Digital do Governo Federal
Identidade Padrão da Comunicação Digital do Governo Federal
 
Cogroo Google Oss Jam Sao Paulo V01
Cogroo Google Oss Jam Sao Paulo V01Cogroo Google Oss Jam Sao Paulo V01
Cogroo Google Oss Jam Sao Paulo V01
 
Segunda Empregável - Edição 01
Segunda Empregável - Edição 01Segunda Empregável - Edição 01
Segunda Empregável - Edição 01
 
SEO: (Search Engine Optimization) Otimização de buscas de Sites
SEO: (Search Engine Optimization) Otimização de buscas de SitesSEO: (Search Engine Optimization) Otimização de buscas de Sites
SEO: (Search Engine Optimization) Otimização de buscas de Sites
 
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...
GitHub Actions: descomplicando o build/deployment automatizados | MVPConf Lat...
 
Introdução ao SAMBA-4 Level 2
Introdução ao SAMBA-4 Level 2Introdução ao SAMBA-4 Level 2
Introdução ao SAMBA-4 Level 2
 
SOA Expert Versão Curta
SOA Expert Versão CurtaSOA Expert Versão Curta
SOA Expert Versão Curta
 

Mais de Fabrízio Mello

PHP e PostgreSQL: Um é pouco, dois é bom, três é demais
PHP e PostgreSQL: Um é pouco, dois é bom, três é demaisPHP e PostgreSQL: Um é pouco, dois é bom, três é demais
PHP e PostgreSQL: Um é pouco, dois é bom, três é demaisFabrízio Mello
 
Bad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de DadosBad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de DadosFabrízio Mello
 
URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...
URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...
URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...Fabrízio Mello
 
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...Fabrízio Mello
 
Software Delivery Like a Boss
Software Delivery Like a BossSoftware Delivery Like a Boss
Software Delivery Like a BossFabrízio Mello
 
NoSQL + SQL = PostgreSQL (PGDay Campinas 2014)
NoSQL + SQL = PostgreSQL (PGDay Campinas 2014)NoSQL + SQL = PostgreSQL (PGDay Campinas 2014)
NoSQL + SQL = PostgreSQL (PGDay Campinas 2014)Fabrízio Mello
 
Oficina PostgreSQL Básico Latinoware 2012
Oficina PostgreSQL Básico Latinoware 2012Oficina PostgreSQL Básico Latinoware 2012
Oficina PostgreSQL Básico Latinoware 2012Fabrízio Mello
 
Oficina postgresql avançado_consegi2010
Oficina postgresql avançado_consegi2010Oficina postgresql avançado_consegi2010
Oficina postgresql avançado_consegi2010Fabrízio Mello
 
Oficina postgresql basico_consegi2010
Oficina postgresql basico_consegi2010Oficina postgresql basico_consegi2010
Oficina postgresql basico_consegi2010Fabrízio Mello
 
Database refactoring postgresql_consegi2010
Database refactoring postgresql_consegi2010Database refactoring postgresql_consegi2010
Database refactoring postgresql_consegi2010Fabrízio Mello
 
Database Refactoring PostgreSQL Urcamp Alegrete 2009
Database Refactoring PostgreSQL Urcamp Alegrete 2009Database Refactoring PostgreSQL Urcamp Alegrete 2009
Database Refactoring PostgreSQL Urcamp Alegrete 2009Fabrízio Mello
 
Database Refactoring com PostgreSQL PGDay RS 2009
Database Refactoring com PostgreSQL PGDay RS 2009Database Refactoring com PostgreSQL PGDay RS 2009
Database Refactoring com PostgreSQL PGDay RS 2009Fabrízio Mello
 
Refatoração Banco de Dados (Agileweekend2009)
Refatoração Banco de Dados (Agileweekend2009)Refatoração Banco de Dados (Agileweekend2009)
Refatoração Banco de Dados (Agileweekend2009)Fabrízio Mello
 

Mais de Fabrízio Mello (13)

PHP e PostgreSQL: Um é pouco, dois é bom, três é demais
PHP e PostgreSQL: Um é pouco, dois é bom, três é demaisPHP e PostgreSQL: Um é pouco, dois é bom, três é demais
PHP e PostgreSQL: Um é pouco, dois é bom, três é demais
 
Bad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de DadosBad Smells (mal cheiros) em Bancos de Dados
Bad Smells (mal cheiros) em Bancos de Dados
 
URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...
URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...
URCAMP (Jun2017) - Como o papel e atividades de DBA ficam no contexto da cult...
 
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...
DBA Brasil 2.0: Como o papel e atividades de DBA ficam no contexto da cultura...
 
Software Delivery Like a Boss
Software Delivery Like a BossSoftware Delivery Like a Boss
Software Delivery Like a Boss
 
NoSQL + SQL = PostgreSQL (PGDay Campinas 2014)
NoSQL + SQL = PostgreSQL (PGDay Campinas 2014)NoSQL + SQL = PostgreSQL (PGDay Campinas 2014)
NoSQL + SQL = PostgreSQL (PGDay Campinas 2014)
 
Oficina PostgreSQL Básico Latinoware 2012
Oficina PostgreSQL Básico Latinoware 2012Oficina PostgreSQL Básico Latinoware 2012
Oficina PostgreSQL Básico Latinoware 2012
 
Oficina postgresql avançado_consegi2010
Oficina postgresql avançado_consegi2010Oficina postgresql avançado_consegi2010
Oficina postgresql avançado_consegi2010
 
Oficina postgresql basico_consegi2010
Oficina postgresql basico_consegi2010Oficina postgresql basico_consegi2010
Oficina postgresql basico_consegi2010
 
Database refactoring postgresql_consegi2010
Database refactoring postgresql_consegi2010Database refactoring postgresql_consegi2010
Database refactoring postgresql_consegi2010
 
Database Refactoring PostgreSQL Urcamp Alegrete 2009
Database Refactoring PostgreSQL Urcamp Alegrete 2009Database Refactoring PostgreSQL Urcamp Alegrete 2009
Database Refactoring PostgreSQL Urcamp Alegrete 2009
 
Database Refactoring com PostgreSQL PGDay RS 2009
Database Refactoring com PostgreSQL PGDay RS 2009Database Refactoring com PostgreSQL PGDay RS 2009
Database Refactoring com PostgreSQL PGDay RS 2009
 
Refatoração Banco de Dados (Agileweekend2009)
Refatoração Banco de Dados (Agileweekend2009)Refatoração Banco de Dados (Agileweekend2009)
Refatoração Banco de Dados (Agileweekend2009)
 

Dojo plpgsql

  • 1. Coding Dojo de PL/pgSQL treinando programa¸c˜ao procedural no PostgreSQL Fabr´ızio de Royes Mello Timbira - A empresa brasileira de PostgreSQL 16 de agosto de 2013
  • 2. Apresenta¸c˜ao Fabr´ızio de Royes Mello Especialista em Banco de Dados Colaborador Comunidade Brasileira de PostgreSQL Colaborador PostgreSQL Global Development Group @fabriziomello Timbira A empresa Brasileira de PostgreSQL Consultoria / Desenvolvimento Planos de Suporte Parcerias com Empresas Desenvolvedoras de Software Treinamentos In-Company e On-Line Corre¸c˜ao de bugs no PostgreSQL garantida em contrato
  • 3. Sobre esta apresenta¸c˜ao esta apresenta¸c˜ao est´a dispon´ıvel em: http://www.timbira.com.br/material esta apresenta¸c˜ao est´a sob licen¸ca Creative Commons Atribui¸c˜ao 3.0 Brasil: http://creativecommons.org/licenses/by/3.0/br
  • 4. Dojo (DO=caminho e JO=lugar) ”´E o caminho da pr´atica, a via do desenvolvimento integral, onde entramos em contato com o nosso melhor estado de ser.”
  • 6. Para que tudo isso? ERRAR!!! Erro gera aprendizado Treinar as habilidades de programa¸c˜ao Melhorar a comunica¸c˜ao Conhecer novas tecnologias Pensar ”fora da caixinha” Divers˜ao
  • 7. Cifra de C´esar Em criptografia, a Cifra de C´esar, tamb´em conhecida como cifra de troca, c´odigo de C´esar ou troca de C´esar, ´e uma das mais simples e conhecidas t´ecnicas de criptografia. ´E um tipo de cifra de substitui¸c˜ao na qual cada letra do texto ´e substitu´ıda por outra, que se apresenta no alfabeto abaixo dela um n´umero fixo de vezes. Por exemplo, com uma troca de trˆes posi¸c˜oes, A seria substitu´ıdo por D, B se tornaria E, e assim por diante.
  • 8. Problema / Regras Implementar, em PL/pgSQL, fun¸c˜oes para criptografar e descriptografar strings usando a t´ecnica da Cifra de C´esar. Vamos usar TDD (Test-Driven Development) usando o Framework de Testes Epic (www.epictest.org) A cada 5min faremos a troca do piloto e outra pessoa da plat´eia entra na rodada
  • 11. Perguntas ? Fabr´ızio de Royes Mello fabrizio@timbira.com.br http://www.timbira.com.br