<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6677673004986645318</id><updated>2011-09-02T04:51:10.426-07:00</updated><category term='ruby'/><category term='beljungle'/><category term='micro-gerencameto'/><category term='aplicação'/><category term='CSM'/><category term='Cesupa'/><category term='agile'/><category term='blog'/><category term='beljug'/><category term='reunião diária'/><category term='rails'/><category term='Maré de Agilidade'/><title type='text'>Pam Little Cat</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://pamelagatinho.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://pamelagatinho.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>pamelagatinho</name><uri>http://www.blogger.com/profile/17115866283215450245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_RA66Nou_muA/S3LNdSATfMI/AAAAAAAABHE/RkfFQWUcKcs/S220/pam02.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>8</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6677673004986645318.post-6773026267519594480</id><published>2010-07-09T11:09:00.000-07:00</published><updated>2010-07-09T14:11:33.431-07:00</updated><title type='text'>Criando um blog com Ruby on Rails – Parte 2</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;br /&gt;Galera, estou de volta pra continuar a criação daquela aplicação em RoR.&lt;br /&gt;&lt;br /&gt;Na primeira parte deste pequeno tutotial, criamos um CRUD da entidade Post. Nessa segunda parte, vamos incrementar nossa aplicação, adicionando algumas validações para incluir um Post e também, vamos alterar o layout pra deixar nosso blog mais bonitinho.&lt;br /&gt;&lt;br /&gt;Vamos começar adicionando as validações. A primeira, vai ser para não permitir a inclusão de campos em branco. Para isso, vamos abrir o modelo  (&lt;span style="font-style: italic;font-family:arial;" &gt;WebBlog/app/post.rb&lt;/span&gt;) e adicionar o seguinte trecho de código: &lt;code&gt;validates_presence_of :tittle, :body&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RA66Nou_muA/TDdoYc1fKmI/AAAAAAAABM8/aOnIeajb-FY/s1600/01_adicionando_validacao.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 191px;" src="http://2.bp.blogspot.com/_RA66Nou_muA/TDdoYc1fKmI/AAAAAAAABM8/aOnIeajb-FY/s320/01_adicionando_validacao.png" alt="" id="BLOGGER_PHOTO_ID_5491973039868291682" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Os métodos &lt;code&gt;validates &lt;/code&gt;do Rails fazem validação, checando algum campo em uma condição específica. Nesse caso, a condição é a presença de campos em branco. Veremos outras condições daqui a pouco.&lt;br /&gt;&lt;br /&gt;A linguagem ruby tem uma leitura tão simples, que é praticamente auto-explicativa: o código está validando a presença de: &lt;code&gt;tittle &lt;/code&gt;e &lt;code style="font-style: italic;"&gt;body&lt;/code&gt;. Simples, né? Pra testar, não é preciso nem reiniciar o servidor, é só salvar e testar. Se você tentar inserir um post sem título e conteúdo, a aplicação irá informar que os campos estão em branco.&lt;blockquote&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RA66Nou_muA/TDdoY_ajsNI/AAAAAAAABNE/w6szFLk_uOE/s1600/02_testando_validacao.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 191px;" src="http://4.bp.blogspot.com/_RA66Nou_muA/TDdoY_ajsNI/AAAAAAAABNE/w6szFLk_uOE/s320/02_testando_validacao.png" alt="" id="BLOGGER_PHOTO_ID_5491973049150582994" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Agora vamos adicionar outra validação: o título não pode conter mais que 50 caracteres.  Dessa vez, vamos usar o método &lt;code&gt;validates_length_of&lt;/code&gt;,  para ser aplicado ao campo título. O trecho de código que faz isso é esse: &lt;code&gt;validates_length_of :tittle, :maximum =&gt; 50&lt;/code&gt;. Vejam que a condição é mostrada pelo símbolo&lt;code&gt; :maximum&lt;/code&gt;, que recebe como parâmetro o valor 50.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RA66Nou_muA/TDdoZLN2NbI/AAAAAAAABNM/qY52QBji7vA/s1600/03_validacao_tamanho_campo.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://4.bp.blogspot.com/_RA66Nou_muA/TDdoZLN2NbI/AAAAAAAABNM/qY52QBji7vA/s320/03_validacao_tamanho_campo.png" alt="" id="BLOGGER_PHOTO_ID_5491973052318496178" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Em seguida, é só salvar e testar na aplicação.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RA66Nou_muA/TDdoZuw5HMI/AAAAAAAABNU/U3AdavxVanQ/s1600/04_testando_validacao_tamanho_campo.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://1.bp.blogspot.com/_RA66Nou_muA/TDdoZuw5HMI/AAAAAAAABNU/U3AdavxVanQ/s320/04_testando_validacao_tamanho_campo.png" alt="" id="BLOGGER_PHOTO_ID_5491973061860728002" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Vamos agora adicionar a terceira e última validação ao nosso blog, para não permitir que tenhamos dois Posts com o mesmo título, vamos fazer com que esse campo seja único, não possa ser repetido. Para isso, vamos usar o método &lt;code&gt;validates_uniqueness_of&lt;/code&gt; e indicamos o campo tittle.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_RA66Nou_muA/TDdpJ_Omh9I/AAAAAAAABNc/G450yIY9zHs/s1600/05_validacao_titulo_repetido.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://3.bp.blogspot.com/_RA66Nou_muA/TDdpJ_Omh9I/AAAAAAAABNc/G450yIY9zHs/s320/05_validacao_titulo_repetido.png" alt="" id="BLOGGER_PHOTO_ID_5491973890914027474" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;E prontinho, nossa aplicação está pronta pra não permitir o cadastro de post com títulos repetidos.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_RA66Nou_muA/TDdpKKt5JrI/AAAAAAAABNk/41ip_cWGagU/s1600/06_testando_validacao_titulo_repetido.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://3.bp.blogspot.com/_RA66Nou_muA/TDdpKKt5JrI/AAAAAAAABNk/41ip_cWGagU/s320/06_testando_validacao_titulo_repetido.png" alt="" id="BLOGGER_PHOTO_ID_5491973893998061234" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Agora que a nossa aplicação já está fazendo as devidas validações,  vamos melhorar o layout dela. Vou fazer algumas alterações na tela de consulta (&lt;span style="font-style: italic;"&gt;WebBlog/app/views/posts/show.html.erb&lt;/span&gt;), para que ela fique com cara de um blog de verdade.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RA66Nou_muA/TDdpKWHFQGI/AAAAAAAABNs/PRV_cRTcekk/s1600/07_codigo_alterado.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 192px;" src="http://4.bp.blogspot.com/_RA66Nou_muA/TDdpKWHFQGI/AAAAAAAABNs/PRV_cRTcekk/s320/07_codigo_alterado.png" alt="" id="BLOGGER_PHOTO_ID_5491973897056501858" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Depois de fazer as alterações, a aplicação fica assim...&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_RA66Nou_muA/TDdpKrDTenI/AAAAAAAABN0/lcU6kXiryh0/s1600/08_tela_com_codigo_alterado.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 191px;" src="http://3.bp.blogspot.com/_RA66Nou_muA/TDdpKrDTenI/AAAAAAAABN0/lcU6kXiryh0/s320/08_tela_com_codigo_alterado.png" alt="" id="BLOGGER_PHOTO_ID_5491973902677801586" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A tela inicial já está parecendo um blog, agora vamos alterar a tela de detalhe do post. Eu quero que a tela de detalhe fique bem parecida com a tela inicial. Para isso, vamos usar um recurso do Rails chamado &lt;a href="http://api.rubyonrails.org/"&gt;Partial&lt;/a&gt;, para renderizar nas duas telas um mesmo trecho de código, evitando a duplicação.&lt;br /&gt;&lt;br /&gt;Vamos ver a tela de detalhe como ela está.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RA66Nou_muA/TDdqDKEjydI/AAAAAAAABN8/2PXeyR3y2zw/s1600/09_tela_detalhle_sem_alteracao.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://1.bp.blogspot.com/_RA66Nou_muA/TDdqDKEjydI/AAAAAAAABN8/2PXeyR3y2zw/s320/09_tela_detalhle_sem_alteracao.png" alt="" id="BLOGGER_PHOTO_ID_5491974873077238226" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Agora, vamos criar um arquivo chamado &lt;code&gt;_post.html.erb&lt;/code&gt; no diretório &lt;span style="font-style: italic;"&gt;WebBlog/app/views/post&lt;/span&gt;. (Por convenção, o nome de um partial deve iniciar com o sílbolo _ no início). Nesse arquivo, vamos colocar uma parte do trecho de código que alteramos na tela de consulta.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RA66Nou_muA/TDdqDlRsXHI/AAAAAAAABOE/BuIt-FCww_g/s1600/10_codigo_partial.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://4.bp.blogspot.com/_RA66Nou_muA/TDdqDlRsXHI/AAAAAAAABOE/BuIt-FCww_g/s320/10_codigo_partial.png" alt="" id="BLOGGER_PHOTO_ID_5491974880380083314" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Prontinho, agora estamos prontos para reaproveitar o código.&lt;br /&gt;&lt;br /&gt;Primeiramente, vamos alterar na tela de consulta, para que ela chame o partial. Adicionamos o código &lt;code&gt;&lt;%= render :partial =&gt; post %&gt;&lt;/code&gt;. Esse código, diz que é pra renderizar um partial, utilizando o objeto '&lt;span style="font-style: italic;"&gt;post&lt;/span&gt;' como variável.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_RA66Nou_muA/TDeQYd2Ms0I/AAAAAAAABOk/60cpRtSkSLs/s1600/10_codigo_partial_consulta.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://3.bp.blogspot.com/_RA66Nou_muA/TDeQYd2Ms0I/AAAAAAAABOk/60cpRtSkSLs/s320/10_codigo_partial_consulta.png" alt="" id="BLOGGER_PHOTO_ID_5492017020604822338" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Depois, adicionamos esse mesmo código na tela de detalhe, só atentando pra alterar a variável, ao invés de ser '&lt;span style="font-style: italic;"&gt;post' &lt;/span&gt;vai ser '&lt;span style="font-style: italic;"&gt;@post&lt;/span&gt;'.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RA66Nou_muA/TDdqEIteLPI/AAAAAAAABOM/iywfvl5JDiE/s1600/11_codigo_partial_tela_detalhamento.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://4.bp.blogspot.com/_RA66Nou_muA/TDdqEIteLPI/AAAAAAAABOM/iywfvl5JDiE/s320/11_codigo_partial_tela_detalhamento.png" alt="" id="BLOGGER_PHOTO_ID_5491974889891835122" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Agora, vamos ver na tela como ficou.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RA66Nou_muA/TDdqEZo_MfI/AAAAAAAABOU/xE9GLPY0cuU/s1600/12_tela_detalhamento_alterado.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://2.bp.blogspot.com/_RA66Nou_muA/TDdqEZo_MfI/AAAAAAAABOU/xE9GLPY0cuU/s320/12_tela_detalhamento_alterado.png" alt="" id="BLOGGER_PHOTO_ID_5491974894436430322" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Agora sim nossa aplicação já ficou com uma carinha de blog. Esse post fica por aqui, no próximo, vou mostrar como fazer os testes para validar o funcionamento da nossa aplicação.&lt;br /&gt;&lt;br /&gt;Espero que vocês tenham gostado de mais um post sobre como montar uma aplicação com RoR, e no final, espero que tenhamos montado uma aplicação simples, porém bem completa, pra aprender como é legal trabalhar com essa linguagem! Qualquer dúvida, só entrar em contato... :)&lt;br /&gt;&lt;br /&gt;Até a próxima!!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6677673004986645318-6773026267519594480?l=pamelagatinho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pamelagatinho.blogspot.com/feeds/6773026267519594480/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6677673004986645318&amp;postID=6773026267519594480' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/6773026267519594480'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/6773026267519594480'/><link rel='alternate' type='text/html' href='http://pamelagatinho.blogspot.com/2010/07/criando-um-blog-com-ruby-on-rails-parte.html' title='Criando um blog com Ruby on Rails – Parte 2'/><author><name>pamelagatinho</name><uri>http://www.blogger.com/profile/17115866283215450245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_RA66Nou_muA/S3LNdSATfMI/AAAAAAAABHE/RkfFQWUcKcs/S220/pam02.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_RA66Nou_muA/TDdoYc1fKmI/AAAAAAAABM8/aOnIeajb-FY/s72-c/01_adicionando_validacao.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6677673004986645318.post-3591365446426636677</id><published>2010-06-01T18:42:00.000-07:00</published><updated>2010-06-01T18:53:46.194-07:00</updated><title type='text'>Movimento #horadodesapego</title><content type='html'>&lt;div style="text-align: justify;"&gt;Semana passada eu iniciei  a &lt;a href="http://pamelagatinho.blogspot.com/2010/05/horadodesapego.html"&gt;#horadodesapego&lt;/a&gt; e acho que o pessoal gostou da idéia hehehe. Tem tanta gente interessada em alguns livros e perguntando se pode participar também...&lt;br /&gt;&lt;br /&gt;Portanto, o &lt;a href="http://tasafo.wordpress.com/"&gt;Ta Safo&lt;/a&gt; resolveu dar início ao &lt;a href="http://br.groups.yahoo.com/group/safos/message/2647"&gt;Movimento #horadodesapego&lt;/a&gt;, que vai funcionar mais ou menos assim:&lt;br /&gt;&lt;br /&gt;Foi criada uma planilha no google docs com a lista de livros que as pessoas querem doar. Quem se interessar por algum livro, acessa a planilha e marca ao lado do livro. Quem tiver algum livro pra doar, adiciona na planilha. Depois de algum tempo, vamos marcar uma data pra que todos os doadores e interessados possam entregar e receber os livros e também, pra que todos possam se conhecer e realizar uma pequena confraternização.&lt;br /&gt;&lt;br /&gt;Gostou da idéia? Participe! Entre na &lt;a href="http://br.groups.yahoo.com/group/safos/"&gt;lista&lt;/a&gt; do Ta Safo pra participar da discussão sobre o movimento, acesse a &lt;a href="https://spreadsheets.google.com/ccc?key=0Ap1CIDVZmBEgdGlwU3E0V0pweFByLVV4dF9QUXRGRFE&amp;amp;hl=en"&gt;planilha&lt;/a&gt; e escolha seu livro! E mesmo que você não queira doar nem recber nenhum livro, apareça no dia da troca também, pra conhecer a gente e trocar uma idéia!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6677673004986645318-3591365446426636677?l=pamelagatinho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pamelagatinho.blogspot.com/feeds/3591365446426636677/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6677673004986645318&amp;postID=3591365446426636677' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/3591365446426636677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/3591365446426636677'/><link rel='alternate' type='text/html' href='http://pamelagatinho.blogspot.com/2010/06/movimento-horadodesapego.html' title='Movimento #horadodesapego'/><author><name>pamelagatinho</name><uri>http://www.blogger.com/profile/17115866283215450245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_RA66Nou_muA/S3LNdSATfMI/AAAAAAAABHE/RkfFQWUcKcs/S220/pam02.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6677673004986645318.post-2034936274697711642</id><published>2010-05-27T07:29:00.000-07:00</published><updated>2010-05-27T07:59:41.584-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='blog'/><category scheme='http://www.blogger.com/atom/ns#' term='aplicação'/><category scheme='http://www.blogger.com/atom/ns#' term='rails'/><title type='text'>Criando uma aplicação com Ruby on Rails - Parte 1</title><content type='html'>Tô de volta...! Como falei em outro post, na  minha palestra no  #tasafoemacao – Edição CESUPA, mostrei como criar uma  pequena aplicação  em RoR. A aplicação de exemplo, foi a que várias pessoas já  fizeram,  um blog.&lt;span style=""&gt;  &lt;/span&gt;Pra quem perdeu, fiz esse post criando a  mesma aplicação, pra que todos possam fazer em casa pra aprender. Vou  dividir em mais de um post, pra leitura não ficar muito  cansativa. No  primeiro post, vou criar primeiro a entidade Post.  &lt;p style="text-align: justify;" class="MsoNormal"&gt;Primeiramente, vamos  baixar e instalar o &lt;a href="http://www.ruby-lang.org/pt/downloads/"&gt;Ruby&lt;/a&gt;.  Depois, sugiro que baixem uma IDE, para facilitar o desenvolvimento. A IDE que eu utilizo é o &lt;a href="http://www.radrails.org/"&gt;RadRails&lt;/a&gt;,  que é uma IDE baseda no Eclipse. Eu, sinceramente, prefiro programar em  IDE’s a  utilizar bloco de notas. Mas pra quem prefere bloco de notas,  pode ficar a  vontade também que dá pra ser feito tranquilamente.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Depois de ter o ambiente todo prontinho, vamos   começar a criar a nossa aplicação. Primeiramente, vamos criar um novo  projeto  Rails. &lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RA66Nou_muA/S_w7lwGm20I/AAAAAAAABKY/vyRfx4ek3HY/s1600/01+-+criando+o+projeto.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 191px;" src="http://4.bp.blogspot.com/_RA66Nou_muA/S_w7lwGm20I/AAAAAAAABKY/vyRfx4ek3HY/s320/01+-+criando+o+projeto.png" alt="" id="BLOGGER_PHOTO_ID_5475316766729493314" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Dê o nome de WebBlog ao projeto. Na hora de   criar o projeto, o RadRails pede que indiquemos qual banco de dados  vamos  utilizar. Eu vou utilizar o &lt;a href="http://dev.mysql.com/downloads/"&gt;MySql&lt;/a&gt;, pois  é o banco que  tenho instalado na minha máquina. &lt;/p&gt;&lt;div style="text-align: justify;"&gt;   &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RA66Nou_muA/S_w72SNOCiI/AAAAAAAABKg/liwNfO-oDuQ/s1600/02+-+selecionando+o+bd.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 191px;" src="http://2.bp.blogspot.com/_RA66Nou_muA/S_w72SNOCiI/AAAAAAAABKg/liwNfO-oDuQ/s320/02+-+selecionando+o+bd.png" alt="" id="BLOGGER_PHOTO_ID_5475317050761939490" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Após criar o projeto, vejam que já foi gerado toda a  estrutura de pastas do projeto, inclusive até alguns arquivos, como por  exemplo, o de configuração do banco de dados (&lt;span style="font-style: italic;"&gt;WebBlog/config/database.ym&lt;/span&gt;l). Nesse arquivo, vejam que o  rails já criou pra mim três confirgurações de banco de dados:  uma para  ser usada em ambiente de desenvolvimento, outra&lt;span style=""&gt;  &lt;/span&gt;em  ambiente de teste e outra em ambiente de produção.&lt;span style=""&gt;  &lt;/span&gt;O  arquivo já contém quase todas as configurações necessárias para  conectar ao banco instalado na minha máquina.&lt;br /&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;No rails, o adapter é que provê a conexão com o  banco  de dados. Então, quando você escolher outro banco, você vai ter que  mudar o adapter. O ruby já vem com alguns adapters intalados (&lt;span style="font-style: italic;"&gt;...\Ruby\lib\ruby\gems\1.8\gems\activerecord-2.3.4\lib\active_record\connection_adapters&lt;/span&gt;).  Caso  você queira utilizar um banco, cujo adapter não venha com o ruby,  você terá que instalá-lo (mas isso fica pra um outro post).&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;O arquivo de configuração do banco de dados já está   quase pronto, só falta adicionar as informações do meu banco (usuário e   senha). &lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RA66Nou_muA/S_w8GUbF69I/AAAAAAAABKo/_a-9dTmKf74/s1600/03+-+mostrando+o+arquivo+do+bd.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_RA66Nou_muA/S_w8GUbF69I/AAAAAAAABKo/_a-9dTmKf74/s320/03+-+mostrando+o+arquivo+do+bd.png" alt="" id="BLOGGER_PHOTO_ID_5475317326234905554" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Adicionando essas informações, eu posso executar o   comando para criar o banco de dados. Lembrando que, ao criar um projeto,  o rails  gera o arquivo com as configurações do banco, porém não gera o  banco. É  necessário então executar um comando para que ele seja  gerado. Esse comando, fica  na view &lt;a href="http://en.wikipedia.org/wiki/Rake_%28software%29"&gt;RAKE TASKS&lt;/a&gt;  .  Vou selecionar a opção &lt;span style="font-style: italic;"&gt;db:create:all&lt;/span&gt;,   para gerar o banco de dados.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RA66Nou_muA/S_522wqix6I/AAAAAAAABLo/SCZS0Z31T3w/s1600/04+-+criando+o+bd.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 191px;" src="http://2.bp.blogspot.com/_RA66Nou_muA/S_522wqix6I/AAAAAAAABLo/SCZS0Z31T3w/s320/04+-+criando+o+bd.png" alt="" id="BLOGGER_PHOTO_ID_5475944880077457314" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Após criar o banco de  dados, podemos partir pra  segunda parte do desenvolvimento que é criar a  minha entidade Post. O rails  possui um recurso chamado scaffold, que  fornece toda a implementação do MVC para  uma entidade. Ou seja, ao  gerar um scaffold de Post, vamos criar uma  estrutura que permitirá  executar um CRUD dessa entidade. O scaffold gera o modelo, as  views, o  controlador e o script de criação da tabela no banco de dados. Tudo   isso é transparente pro desenvolvedor, ele precisa apenas executar esse  comando  e dizer quais atributos a entidade terá.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Para criar um scaffold, abrimos a view Generator,  que  é um recurso utlizado para gerar uma parte do código, &lt;span style=""&gt; &lt;/span&gt;digitamos   o nome da entidade que vamos criar e os atributos que ela terá. Nesse  caso, vamos criar uma entidade Post,  que terá somente três atributos  como parâmetro: &lt;span style="font-style: italic;"&gt;tittle&lt;/span&gt;,  que é  do tipo &lt;span style="font-style: italic;"&gt;string&lt;/span&gt;; &lt;span style="font-style: italic;"&gt;body&lt;/span&gt;, que é do tipo &lt;span style="font-style: italic;"&gt;text&lt;/span&gt;; e &lt;span style="font-style: italic;"&gt;post_date&lt;/span&gt;, que é do tipo &lt;span style="font-style: italic;"&gt;date&lt;/span&gt;.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_RA66Nou_muA/S_52EQM9j3I/AAAAAAAABLY/Cj8xPWVqVGk/s1600/05+-+criando+o+scaffold+Post.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 191px;" src="http://3.bp.blogspot.com/_RA66Nou_muA/S_52EQM9j3I/AAAAAAAABLY/Cj8xPWVqVGk/s320/05+-+criando+o+scaffold+Post.png" alt="" id="BLOGGER_PHOTO_ID_5475944012369989490" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Após executar, o console exibe um log com todos os   arquivos e pastas que foram criados. Você pode olhar também na estrutura  do seu  projeto tudo que foi criado. &lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RA66Nou_muA/S_53c0-pxtI/AAAAAAAABLw/xn_FPIoK5hM/s1600/06+-+log+do+scaffols+Post.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 191px;" src="http://1.bp.blogspot.com/_RA66Nou_muA/S_53c0-pxtI/AAAAAAAABLw/xn_FPIoK5hM/s320/06+-+log+do+scaffols+Post.png" alt="" id="BLOGGER_PHOTO_ID_5475945534070572754" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Assim como, ao criamos um projeto, o rails cria os   arquivos de configuração do banco, o comando scaffold também gera os  scripts de  criação das tabelas. Nesse caso, o arquivo &lt;span style="font-style: italic;"&gt;create_posts.rb&lt;/span&gt;  (&lt;span style="font-style: italic;"&gt;WebBlog/db/migrate&lt;/span&gt;) possui o script  para criação da tabela posts. Como o&lt;span style=""&gt;  &lt;/span&gt;rails é  baseado em &lt;a href="http://en.wikipedia.org/wiki/Convention_over_configuration"&gt;CoC   (Convention Over Configuration)&lt;/a&gt;, a convenção é criar o nome da   tabela adicionando um S no final do nome do modelo. Como criamos um  modelo post, o nome da tabela, por convenção,  será posts. Assim como o  nome do controlador, &lt;span style=""&gt; &lt;/span&gt;nome da  pasta das views...  tudo baseado em convenção, e é isso que também agiliza bastante o  desenvolvimento com rails!&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_RA66Nou_muA/S_5-kgvE19I/AAAAAAAABL4/oL0ypPH3FUo/s1600/07+-+arquivo+create_posts.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 191px;" src="http://3.bp.blogspot.com/_RA66Nou_muA/S_5-kgvE19I/AAAAAAAABL4/oL0ypPH3FUo/s320/07+-+arquivo+create_posts.png" alt="" id="BLOGGER_PHOTO_ID_5475953362656876498" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Precisamos então rodar o script para criar as  tabelas  no banco. Vamos então executar o comando &lt;span style="font-style: italic;"&gt;db:migrate&lt;/span&gt;,  na view &lt;span&gt;RAKE TASKS&lt;/span&gt;, para criar  a tabela posts no nosos banco de dados.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RA66Nou_muA/S_5--1ZYxKI/AAAAAAAABMA/X6MXJq5MXtI/s1600/08+-+criando+a+tabela+posts.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 191px;" src="http://4.bp.blogspot.com/_RA66Nou_muA/S_5--1ZYxKI/AAAAAAAABMA/X6MXJq5MXtI/s320/08+-+criando+a+tabela+posts.png" alt="" id="BLOGGER_PHOTO_ID_5475953814879650978" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;O log do console informa que a tabela foi criada.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RA66Nou_muA/S_5_YMIVrpI/AAAAAAAABMI/Ah4vimhSd0M/s1600/09+-+log+de+criacao+da+tabela+posts.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 192px;" src="http://2.bp.blogspot.com/_RA66Nou_muA/S_5_YMIVrpI/AAAAAAAABMI/Ah4vimhSd0M/s320/09+-+log+de+criacao+da+tabela+posts.png" alt="" id="BLOGGER_PHOTO_ID_5475954250478890642" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Prontinho! Sua aplicação  já esta pronta para  incluir, excluir, alterar e consultar posts! Para  testar, vamos iniciar o  servidor (View Servers)...&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RA66Nou_muA/S_5_1tUqpbI/AAAAAAAABMQ/1Mx2_pg6u-0/s1600/10+-+iniciando+o+servidor.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 191px;" src="http://1.bp.blogspot.com/_RA66Nou_muA/S_5_1tUqpbI/AAAAAAAABMQ/1Mx2_pg6u-0/s320/10+-+iniciando+o+servidor.png" alt="" id="BLOGGER_PHOTO_ID_5475954757605172658" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RA66Nou_muA/S_6ALF64zPI/AAAAAAAABMY/9qRxOsAeE-k/s1600/11+-+log+do+servidor.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 191px;" src="http://1.bp.blogspot.com/_RA66Nou_muA/S_6ALF64zPI/AAAAAAAABMY/9qRxOsAeE-k/s320/11+-+log+do+servidor.png" alt="" id="BLOGGER_PHOTO_ID_5475955124985187570" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;E acessar a página...&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RA66Nou_muA/S_6AUTpPIZI/AAAAAAAABMg/X2wi9ZENEYk/s1600/12+-acessando+a+p%C3%A1gina.png"&gt;&lt;img style="cursor: pointer; width: 320px; height: 191px;" src="http://1.bp.blogspot.com/_RA66Nou_muA/S_6AUTpPIZI/AAAAAAAABMg/X2wi9ZENEYk/s320/12+-acessando+a+p%C3%A1gina.png" alt="" id="BLOGGER_PHOTO_ID_5475955283288072594" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Já podemos então incluir, alterar, listar e excluir   os nossos Posts.A aplicação está funcionando perfeitamente.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;No próximo post, vou mostrar como fazer algumas   melhorias na aplicação, incluindo validações e melhorias de layout. &lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Bem galera, espero que vocês tenham gostado desse   primeiro post. Semana que vem eu posto a segunda parte desse pequeno  tutorial. &lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Have a nice week ;) &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6677673004986645318-2034936274697711642?l=pamelagatinho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pamelagatinho.blogspot.com/feeds/2034936274697711642/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6677673004986645318&amp;postID=2034936274697711642' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/2034936274697711642'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/2034936274697711642'/><link rel='alternate' type='text/html' href='http://pamelagatinho.blogspot.com/2010/05/criando-uma-aplicacao-com-ruby-on-rails_27.html' title='Criando uma aplicação com Ruby on Rails - Parte 1'/><author><name>pamelagatinho</name><uri>http://www.blogger.com/profile/17115866283215450245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_RA66Nou_muA/S3LNdSATfMI/AAAAAAAABHE/RkfFQWUcKcs/S220/pam02.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_RA66Nou_muA/S_w7lwGm20I/AAAAAAAABKY/vyRfx4ek3HY/s72-c/01+-+criando+o+projeto.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6677673004986645318.post-659442180171935945</id><published>2010-05-26T06:05:00.000-07:00</published><updated>2010-06-01T18:55:30.435-07:00</updated><title type='text'>#horadodesapego</title><content type='html'>Pessoal,&lt;br /&gt;&lt;br /&gt;Estou doando desses livros e gostaria de saber se alguém tem interesse em ficar com algum deles...&lt;br /&gt;&lt;br /&gt;Caso alguém se interesse, é só entrar em contato comigo que a gente dá um jeito.&lt;br /&gt;&lt;br /&gt;Em breve vem uma nova lista da #horadodesapego.&lt;br /&gt;&lt;br /&gt;Espero que eles sejam de utilidade pra alguém.&lt;br /&gt;&lt;br /&gt;-&lt;i&gt;&lt;s&gt;Aprenda em 21 dias Java 2&lt;/s&gt;&lt;/i&gt;&lt;s&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/s&gt;  &lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RA66Nou_muA/S_0dJwArM6I/AAAAAAAABKw/GKE9vJGhNwY/s1600/DSC00869.JPG"&gt;&lt;img style="cursor: pointer; width: 240px; height: 320px;" src="http://2.bp.blogspot.com/_RA66Nou_muA/S_0dJwArM6I/AAAAAAAABKw/GKE9vJGhNwY/s320/DSC00869.JPG" alt="" id="BLOGGER_PHOTO_ID_5475564775296152482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;- &lt;span style="font-style: italic;"&gt;Série Curso Básico &amp;amp; Rápido : Montagem de Micros 3ª Edição&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RA66Nou_muA/S_0dSbDr7nI/AAAAAAAABK4/8G0Qi1izqhM/s1600/DSC00870.JPG"&gt;&lt;img style="cursor: pointer; width: 240px; height: 320px;" src="http://4.bp.blogspot.com/_RA66Nou_muA/S_0dSbDr7nI/AAAAAAAABK4/8G0Qi1izqhM/s320/DSC00870.JPG" alt="" id="BLOGGER_PHOTO_ID_5475564924290461298" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;- &lt;i&gt;&lt;s&gt;&lt;span style="font-style: italic;"&gt;XML: Conceitos e Aplicações&lt;/span&gt;&lt;/s&gt;&lt;/i&gt;&lt;s&gt;&lt;/s&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RA66Nou_muA/S_0dan2GY-I/AAAAAAAABLA/GYHRvf4xGVE/s1600/DSC00871.JPG"&gt;&lt;img style="cursor: pointer; width: 240px; height: 320px;" src="http://4.bp.blogspot.com/_RA66Nou_muA/S_0dan2GY-I/AAAAAAAABLA/GYHRvf4xGVE/s320/DSC00871.JPG" alt="" id="BLOGGER_PHOTO_ID_5475565065162089442" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;-&lt;i&gt;&lt;s&gt;Certificação Sin para programador &amp;amp; desenvolvedor Java 2&lt;/s&gt;&lt;/i&gt;&lt;s&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/s&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RA66Nou_muA/S_0gXMt-3rI/AAAAAAAABLI/46IB7epSG5s/s1600/DSC00873.JPG"&gt;&lt;img style="cursor: pointer; width: 240px; height: 320px;" src="http://2.bp.blogspot.com/_RA66Nou_muA/S_0gXMt-3rI/AAAAAAAABLI/46IB7epSG5s/s320/DSC00873.JPG" alt="" id="BLOGGER_PHOTO_ID_5475568304875560626" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6677673004986645318-659442180171935945?l=pamelagatinho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pamelagatinho.blogspot.com/feeds/659442180171935945/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6677673004986645318&amp;postID=659442180171935945' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/659442180171935945'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/659442180171935945'/><link rel='alternate' type='text/html' href='http://pamelagatinho.blogspot.com/2010/05/horadodesapego.html' title='#horadodesapego'/><author><name>pamelagatinho</name><uri>http://www.blogger.com/profile/17115866283215450245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_RA66Nou_muA/S3LNdSATfMI/AAAAAAAABHE/RkfFQWUcKcs/S220/pam02.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_RA66Nou_muA/S_0dJwArM6I/AAAAAAAABKw/GKE9vJGhNwY/s72-c/DSC00869.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6677673004986645318.post-1350954805600723751</id><published>2010-05-24T11:12:00.000-07:00</published><updated>2010-05-25T12:09:13.610-07:00</updated><title type='text'>Tá Safo em Ação</title><content type='html'>&lt;p style="text-align: justify;" class="MsoNormal"&gt;Fala galera!!&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Depois de passar um tempo sumida, estou de volta e com algumas novidades. Primeiro quero falar do Ta Safo em Ação, que é um encontro promovido pela comunidade Ta Safo, &lt;span style=""&gt; &lt;/span&gt;voltado para o compartilhamento de conhecimento. &lt;span style=""&gt; &lt;/span&gt;Não é um evento só para profissionais, nem só para estudantes, nem só para entusiastas. É um evento pra quem tiver interesse de aprender coisas novas e divulgar alguma coisa bacana que saiba... enfim, é um evento sem frescura! &lt;span style=""&gt; &lt;/span&gt;Temos palestras motivacionais, técnicas, conceituais... tem de tudo um pouco.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;&lt;span style=""&gt; &lt;/span&gt;O primeiro encontro foi no IESAM, no dia 15 de abril. Os alunos compareceram em peso, pois foi um encontro que fez parte da Semana Acadêmica do IESAM. Pra quem se interessar, as palestras estão todas no &lt;a href="http://tasafo.wordpress.com/2010/04/19/projeto-ta-safo-em-acao-palestras"&gt;blog do Ta Safo&lt;/a&gt;.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;O segundo encontro aconteceu semana passada, dia 20 de maio, no CESUPA. Mais uma vez, alunos, profissionais e entusiastas participaram e deram sua contribuição.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Começamos com a palestra&lt;span style=""&gt; &lt;/span&gt;&lt;a href="http://www.slideshare.net/luizsanches/tasafoemacao-refatorada"&gt;Tá Safo em 10 minutos&lt;/a&gt; (que durou 20 minutos, na verdade) do Sanches. Essa palestra é imperdível! O Sanshes tem um jeito próprio de apresentar essa palestra que não consegue deixar ninguém sem dar boas gargalhadas. Com muito bom humor e descontração ele apresentou o Ta Safo pra quem não conhecia.&lt;/p&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RA66Nou_muA/S_rCgfkzbDI/AAAAAAAABJ4/iXK6e40JnpQ/s1600/sanches.jpg"&gt;&lt;img style="cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_RA66Nou_muA/S_rCgfkzbDI/AAAAAAAABJ4/iXK6e40JnpQ/s320/sanches.jpg" alt="" id="BLOGGER_PHOTO_ID_5474902160509725746" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Depois, tivemos a palestra &lt;a href="http://www.slideshare.net/Pigor/carreira2-0"&gt;Carreira 2.0&lt;/a&gt; com o &lt;a href="http://pauloigor.blogspot.com/"&gt;Paulo Igor&lt;/a&gt; (também conhecido como Pigor). Essa palestra deixou muita gente pensativa em como agir daqui pra frente. Show de bola!&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RA66Nou_muA/S_rDkaFTsdI/AAAAAAAABKQ/MO7Fiy-aFuA/s1600/galera.jpg"&gt;&lt;img style="cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_RA66Nou_muA/S_rDkaFTsdI/AAAAAAAABKQ/MO7Fiy-aFuA/s320/galera.jpg" alt="" id="BLOGGER_PHOTO_ID_5474903327266550226" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Estreando como a primeira mulher no Ta Safo em Ação: euzinha, com a minha palestra “Contruindo um blog em minutos com Ruby on Rails”. Foi um exemplo da vida real de um programador,&lt;span style=""&gt;  &lt;/span&gt;com muita tensãããão, diante de coisas que eram pra dar certo mas misteriosamente não davam, hehehe. Mas no final, deu tudo certo e todo mundo pode perceber o quanto é simples montar uma aplicação completa usando o Rails.&lt;/p&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RA66Nou_muA/S_rDIzL142I/AAAAAAAABKA/gCm9ObdREhQ/s1600/pamela.jpg"&gt;&lt;img style="cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_RA66Nou_muA/S_rDIzL142I/AAAAAAAABKA/gCm9ObdREhQ/s320/pamela.jpg" alt="" id="BLOGGER_PHOTO_ID_5474902852968506210" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Em seguida, foi a vez do Vitor Feitosa, também iniciante no Ta Safo em Ação, com a palestra “Perca peso em seu processo, think Lean” mostrando pra todo mundo porque o Lean é um sucesso.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Depois desse ciclo de palestras, foi aberta a Desconferência , um espaço pro pessoal que estava assistindo e tem alguma coisa legal pra mostrar pra gente em 10 ou 15 minutos. Tivemos uma pessoa interessada em mostrar um projetinho legal, que foi o &lt;a href="http://www.jsatriani.wordpress.com/"&gt;Anderson Silveira&lt;/a&gt;. Ele mostrou como integrar o Flex com o Flick. A apresentação dele demorou um pouco mais que 15 minutos, mas a galera tava bastante interessada e não arredou o pé enquanto ele não terminou.&lt;br /&gt;&lt;/p&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_RA66Nou_muA/S_rDYMq-KsI/AAAAAAAABKI/auHKb90cfXg/s1600/anderson.jpg"&gt;&lt;img style="cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_RA66Nou_muA/S_rDYMq-KsI/AAAAAAAABKI/auHKb90cfXg/s320/anderson.jpg" alt="" id="BLOGGER_PHOTO_ID_5474903117507996354" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;E pra fechar a noite, o Ta Safo sorteou algumas camisas entre o pessoal que ficou até o fim. O evento acabou umas 22:30h, todos satisfeitos por mais um encontro ter acontecido, com caras novas palestrando e gente da plátéia querendo participar com a gente.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Estamos querendo agora levar o Ta Safo em Ação pra outras instituições, se alguém se interessar em levar pra sua instituição, é só entrar em contato com a gente que realizamos o encontro onde for. Estamos cheio de gente com boa vontade e vontade de fazer acontecer.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Estou terminando um post com um tutotial da aplicação que eu montei na palestra do Cesupa, então aguardem que essa semana mesmo tenho mais novidades pra vocês.&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt;  &lt;/div&gt;&lt;p style="text-align: justify;" class="MsoNormal"&gt;Espero que vocês tenham gostado e sintam vontade de participar com a gente, da nossa caravana #tasafoemacao. &lt;span style="font-family:Wingdings;"&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;[]’s&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6677673004986645318-1350954805600723751?l=pamelagatinho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pamelagatinho.blogspot.com/feeds/1350954805600723751/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6677673004986645318&amp;postID=1350954805600723751' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/1350954805600723751'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/1350954805600723751'/><link rel='alternate' type='text/html' href='http://pamelagatinho.blogspot.com/2010/05/ta-safo-em-acao.html' title='Tá Safo em Ação'/><author><name>pamelagatinho</name><uri>http://www.blogger.com/profile/17115866283215450245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_RA66Nou_muA/S3LNdSATfMI/AAAAAAAABHE/RkfFQWUcKcs/S220/pam02.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_RA66Nou_muA/S_rCgfkzbDI/AAAAAAAABJ4/iXK6e40JnpQ/s72-c/sanches.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6677673004986645318.post-6860398554568140493</id><published>2010-01-14T11:33:00.000-08:00</published><updated>2010-05-24T11:31:23.063-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='micro-gerencameto'/><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='reunião diária'/><title type='text'>A mudança de cultura como uma vilã</title><content type='html'>&lt;div align="justify"&gt;Todos os agilistas sabem que o desenvolvimento ágil tem como foco principal o micro-gerenciamento. Quando me refiro a micro-gerenciamento, me refiro ao desenvolvimento em si, ao andamento das atividades que cada membro do time se propôs a fazer. &lt;a href="http://blog.mountaingoatsoftware.com/ssssh-agile-is-all-about-micromanaging"&gt;Mike Cohn&lt;/a&gt; inclusive diz que as práticas do Agile suportam o micro-gerenciamento. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Mas quando se fala nisso, não estamos falando da necessidade de um gerente pra controlar de perto o time, pois em Agile, quem é responsável por isso é o próprio time. É o time que precisa saber, por exemplo, se as atividades foram cumpridas, pois como todos estão comprometidos com a meta da Sprint, caso alguma atividade fique pela metade, todos tem o dever de contribuir para que ela seja finalizada. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Beleza, pra quem tem o pensamento ágil, isso é muito claro. Mas muitas vezes, é difícil fazer com que a cultura das outras pessoas seja adaptada pra essa nova realidade. O micro-gerenciamento incomoda muita gente. Incomoda tanto os gerentes, que sentem a necessidade de saber exatamente o que seus desenvolvedores estão fazendo, pois não há confiança entre ele e sua equipe, quanto do lado dos desenvolvedores, pois muitos não são pró-ativos e precisam de um gerente “comando-controle” do seu lado. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;O micro-gerenciamento é percebido no dia-a-dia do time, na realização das tarefas, na identificação dos impedimentos, na resolução desses impedimento pelo Scrum Master (SM). É assim que ele funciona. Não é ninguém no pé de ninguém, dizendo o que cada um deve fazer.&lt;br /&gt;Já trabalhei em duas empresas que resolveram adotar o desenvolvimento ágil: uma foi um sucesso e a outra nem tanto. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Na primeira, a equipe estava bem alinhada, todos tinham a mesma linha de raciocínio. Não precisávamos mudar a cultura da empresa, pois nós criamos essa cultura. Nós definimos o estilo de trabalho e conforme as pessoas iam integrando a equipe, elas iam sendo contagiadas pela nossa cultura, que já era Agile. Não tivemos problema nenhum, o trabalho fluiu maravilhosamente e no final... cliente satisfeitíssimo. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;A mesma equipe foi trabalhar na segunda empresa . A princípio foi ótimo, estávamos todos empolgados. Porém, com o passar do tempo, fomos percebendo que o problema gerado pela mudança de cultura seria muito maior do que imaginávamos. Os conceitos básicos não estavam bem solidificados na cabeça das pessoas. A mudança de cultura incomodava muita gente, tanto gerentes quanto desenvolvedores. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;As reuniões diárias passaram a ser um sofrimento pro time, pois como eles não entendiam o maior benefício dela, que era promover a comunicação e a visibilidade do andamento das atividades, todos achavam que eram uma reunião desnecessária. Todo mundo ficava calado, ninguém falava nada. Pra piorar, colocaram, além do SM e do time, uma terceira pessoa pra participar da reunião. Essa pessoa era responsável pelo andamento da reunião. Resumindo, o que acontecia era o seguinte: quando o time ficava calado, essa terceira pessoa entrava em ação e começava a forçar as pessoas a falarem. Resultado: todo mundo falava por falar, sem se interessar muito pelo que as outras pessoas estavam dizendo. Nem preciso dizer que após algum tempo essas reuniõs passaram a ser uma chatice, né? &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Esses conceitos vem com calma, não é forçando alguém a falar que esse alguém vai perceber a real importância das reuniões diárias. Quando se tocar disso, ai sim ela vai se sentir na obrigação de participar, pois, como um time pode ser autogerenciável, se ninguém tem conhecimento do que os outros integrantes do time estão fazendo...? &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Com o passar do tempo, as coisas começaram a desandar, e todo mundo culpava o processo. Mas como Agile vai funcionar, se ninguém quer pensar como Agile? Preencher milhares de documentos a cada semana é ser ágil? O pobre do SM tinha mais documento pra preencher que o gerente: era um documento de planejamento de Sprint, relatório de andamento da Sprint, relatório de andamento das atividades (diferente do outro, esse era semanal!). Quase não sobrava tempo pra ele retirar os impedimentos, de tanto documento que precisava ser escrito.&lt;br /&gt;Um conceito puxa o outro, e quando todos ficarem bem solidificados na cabeça das pessoas, ai sim elas vão perceber a real importância da comunicação do time. Aí sim vão perceber também, que tanto documento não agrega valor ao produto... E é assim que, na minha opinião, a maturidade do time vai sendo formada, com a percepção da importância das coisas e não com a imposição. &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Esse foi um pequeno relato de duas experiência que eu tive. E serve de conselho pra quem está pensando em adotar Agile na sua empresa. Primeiramente, invista no treinamento da equipe, na mudança de cultura, pois caso os conceitos não estejam solidificados na mente das pessoas, ou caso sejam mal aplicados, pode levar seu projeto pro ralo... e a culpa vai ser sempre do modelo cascata, ou do modelo ágil... ou de qualquer outro modelo que venha a existir. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6677673004986645318-6860398554568140493?l=pamelagatinho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pamelagatinho.blogspot.com/feeds/6860398554568140493/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6677673004986645318&amp;postID=6860398554568140493' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/6860398554568140493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/6860398554568140493'/><link rel='alternate' type='text/html' href='http://pamelagatinho.blogspot.com/2010/01/mudanca-de-cultura-como-uma-vila.html' title='A mudança de cultura como uma vilã'/><author><name>pamelagatinho</name><uri>http://www.blogger.com/profile/17115866283215450245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_RA66Nou_muA/S3LNdSATfMI/AAAAAAAABHE/RkfFQWUcKcs/S220/pam02.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6677673004986645318.post-3680326063741954252</id><published>2009-12-09T13:04:00.000-08:00</published><updated>2009-12-09T14:43:35.230-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='beljungle'/><category scheme='http://www.blogger.com/atom/ns#' term='Cesupa'/><category scheme='http://www.blogger.com/atom/ns#' term='beljug'/><title type='text'>VI Beljungle</title><content type='html'>&lt;div align="justify"&gt;Pra quem não sabe, semana passada aconteceu o VI Beljungle, um evento anual organizado pelo Beljug (Grupo de usuários Java de Belém). Antigamente, ele acontecia junto com a SEPAI (Semana Paraense de Informática), mas agora ele é um evento independente, organizado por pessoas que fazem parte do Beljug e que estão engajadas em disseminar essa cultura no estado. Mais uma vez, estávamos lá presentes, ajudando na organização.&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;O evento foi muito bom, os temas das palestras foram bem legais, próximos da realidade dos desenvolvedores, tivemos até uma palestra internacional, com o Sang Sing da Sun, com o tema “Java EE 6: Next Generation Enterprise Application Plataform”. Os outros palestrantes foram todos locais, provando que tem muita gente boa aqui e melhor de tudo, disposta a compartilhar seus conhecimentos com a comunidade. &lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;É muito legal ver as pessoas interessadas em participar do evento, seja como palestrante e/ou ouvinte mesmo, pois o mais legal é a interação entre as pessoas, a troca de conhecimento.No final do evento, tivemos o Boteco Java. Funcionou exatamente da mesma maneira que no Maré, onde os palestrantes e a platéia sentaram todos juntos e trocam idéias sobre qualquer assunto que seja de seu interesse. É um momento muito interessante, pois rola um bate papo mesmo, bem informal, onde todo mundo pode trocar idéia, sem ter aquela “coisa” de palestrante x platéia, pois fica todo mundo no mesmo nível.&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;No final, tivemos um feedback bacana dos participantes e, o melhor de todos, foi de uma pessoa da platéia que disse mais ou menos isso:&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="center"&gt;&lt;em&gt;“Se cada um de nós se comprometer a trazer uma outra pessoa ano que vem, esse auditório aqui vai ficar lotado. O evento foi muito bom e seria interessante se a gente divulgasse isso pros nossos conhecidos, pra eles terem idéia do que estão perdendo.”&lt;/em&gt;&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Foi uma observação bem legal e muito bem colocada, inclusive. São essas coisas que nos estimulam e não deixar esse evento morrer, muito pelo contrário, fazer com que, a cada ano que passa, ele fique mais fortalecido!&lt;/div&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;A nossa idéia pro ano que vem é unir toda a comunidade de TI e organizar eventos bem legais, pois já chega de ficar dizendo que nunca chega nada aqui pra gente. É bom que TODOS PARTICIPEM! Pois só assim vamos perceber quanta coisa boa temos aqui e que não somos muito diferentes (tecnicamente falando) das pessoas que vem de fora. Vamos valorizar o que é nosso!!! &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5413368102397518450" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_RA66Nou_muA/SyAlm53VonI/AAAAAAAAAtk/0WiErfLEF14/s320/DSC00063.JPG" border="0" /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5413367636830595250" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_RA66Nou_muA/SyAlLzfiKLI/AAAAAAAAAs8/9JSFPpwF5uc/s320/DSC00099.JPG" border="0" /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5413367648140228978" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_RA66Nou_muA/SyAlMdn9eXI/AAAAAAAAAtM/pNcL7YuMR1g/s320/DSC00112.JPG" border="0" /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5413367642430609234" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_RA66Nou_muA/SyAlMIWrl1I/AAAAAAAAAtE/hS58oEoN8_k/s320/DSC00108.JPG" border="0" /&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;img id="BLOGGER_PHOTO_ID_5413367633166964018" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_RA66Nou_muA/SyAlLl2DlTI/AAAAAAAAAs0/LaDnzA4hnyo/s320/DSC00072.JPG" border="0" /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5413366870818549682" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_RA66Nou_muA/SyAkfN4B77I/AAAAAAAAArM/K1H4M_IH3sM/s320/DSC00087.JPG" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;Abraços e até a próxima...!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6677673004986645318-3680326063741954252?l=pamelagatinho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pamelagatinho.blogspot.com/feeds/3680326063741954252/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6677673004986645318&amp;postID=3680326063741954252' title='4 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/3680326063741954252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/3680326063741954252'/><link rel='alternate' type='text/html' href='http://pamelagatinho.blogspot.com/2009/12/vi-beljungle.html' title='VI Beljungle'/><author><name>pamelagatinho</name><uri>http://www.blogger.com/profile/17115866283215450245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_RA66Nou_muA/S3LNdSATfMI/AAAAAAAABHE/RkfFQWUcKcs/S220/pam02.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_RA66Nou_muA/SyAlm53VonI/AAAAAAAAAtk/0WiErfLEF14/s72-c/DSC00063.JPG' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6677673004986645318.post-7779591321333983766</id><published>2009-12-01T15:30:00.000-08:00</published><updated>2009-12-09T14:39:49.701-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Maré de Agilidade'/><category scheme='http://www.blogger.com/atom/ns#' term='CSM'/><category scheme='http://www.blogger.com/atom/ns#' term='Cesupa'/><title type='text'>CSM + Maré de Agilidade</title><content type='html'>&lt;div align="justify"&gt;Ano passado decidi criar esse blog pra discutir assuntos que acho interessantes, porém sempre ia deixando pra depois e acabou que não escrevi nada! No Carnaval desse ano, novamente me empolguei e decidi que dessa vez, ia ser pra valer. Mais uma vez, não fiz NADA. Mas... os acontecimentos do último final de semana me fizeram sentir necessidade de compartilhar com todos vocês tudo de legal que aconteceu. Então apaguei tudo que tinha escrito e comecei do zero!&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Bem, pra quem não sabe, semana passada aconteceram 2 coisas aqui em Belém. Dias 26 e 27, teve o curso de CSM com o Alexandre Magno e dias 26, 27 e 28 aconteceu o Maré de Agilidade! Sim... ambos em B-E-L-É-M. Falo assim porque muita gente não acredita que um evento desse porte, como o Maré, possa acontecer aqui. &lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Falando primeiramente do CSM, o curso foi simplesmente sensacional! O Alexandre, além de ser um cara gente boa, é um instrutor de primeiríssima qualidade, explicando o assunto de forma fenomenal, sem deixar ninguém sair da sala com alguma interrogação na cabeça. Esse curso foi de fundamental importância pra minha vida profissional, pois se antes dele eu já usava SCRUM de uma maneira beeem singela, agora então, quero tirar proveito de tudo de bom que ele possa me oferecer! Ele traz acontecimentos reais, que ele mesmo já passou, pra poder esclarecer todas as nossas dúvidas. Recomendo todos que estejam interessados em aprender sobre SCRUM a fazerem esse curso, é muito bom!&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5410420529926195650" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_RA66Nou_muA/SxWszmu7ScI/AAAAAAAAAO4/S1a_-HFQFhM/s320/IMG_0766.JPG" border="0" /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_RA66Nou_muA/SxWu2k6llQI/AAAAAAAAAPA/wo6n4xE8Mzg/s1600/IMG_0772.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5410422780001096962" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_RA66Nou_muA/SxWu2k6llQI/AAAAAAAAAPA/wo6n4xE8Mzg/s320/IMG_0772.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5410424913376682386" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_RA66Nou_muA/SxWwywW9oZI/AAAAAAAAAPI/BpPGHfZvnbg/s320/IMG_0775.JPG" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;Não bastasse a satisfação em ter feito o &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;CSM&lt;/span&gt;, veio o Maré. Pra quem não conhece, o Maré de Agilidade (&lt;/span&gt;&lt;a href="http://www.maredeagilidade.com.br/"&gt;&lt;span style="font-family:arial;"&gt;www.maredeagilidade.com.br&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;) é um evento que já passou por várias capitais do Brasil, e discute vários assuntos, dentre eles, as tendências em gerência de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;projetos&lt;/span&gt; e técnicas de desenvolvimento de software que constituem &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;atualmente&lt;/span&gt; o grande diferencial de empresas como Apple, Google, Microsoft, Yahoo e Globo.com. &lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;&lt;/div&gt;&lt;/span&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;Ele aconteceu aqui em Belém, por iniciativa nossa, do grupo &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;TáSafo&lt;/span&gt; (&lt;/span&gt;&lt;a href="http://www.tasafo.org/"&gt;&lt;span style="font-family:arial;"&gt;http://www.tasafo.org&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;), e com o apoio e patrocínio de vários outros &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;orgãos&lt;/span&gt;. Aconteceu no &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;CESUPA&lt;/span&gt; e foram 2 dias de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;minicursos&lt;/span&gt; e 1 dia de palestras. &lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;&lt;/div&gt;&lt;/span&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;Como eu estava no &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_16"&gt;CSM&lt;/span&gt;, infelizmente não pude participar nos dias de &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_17"&gt;minicurso&lt;/span&gt;. Porém, no sábado, dia das palestras, eu pude estar presente e constatei porque que o evento é um sucesso por onde ele passa! &lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;&lt;/div&gt;&lt;/span&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;Primeiramente, pelo fatos dos &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_18"&gt;palestrantes&lt;/span&gt; serem pessoas maravilhosas!! Alexandre Gomes (SEA Tecnologia), Renato &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_19"&gt;Willi (SEA Tecnologia)&lt;/span&gt;, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_20"&gt;Wesley&lt;/span&gt; Rocha (SEA Tecnologia), Alexandre Magno (Adaptworks) , &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_21"&gt;Manoel&lt;/span&gt; Pimentel (Visão Ágil), &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_22"&gt;Felipe&lt;/span&gt; Rodrigues (Fratech) e Leonardo &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_23"&gt;Antonialli&lt;/span&gt; (SEA Tecnologa) são pessoas nota 10, jovens, experientes, dispostos a passar pra galera a experiência &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_24"&gt;profissional&lt;/span&gt; deles. Tem o fato também dos temas escolhidos serem assuntos &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_25"&gt;atuais&lt;/span&gt;, e que são carentes de discussão aqui na nossa região.&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;Infelizmente, muita gente perdeu... é uma pena que tanta tenha perdido essa oportunidade de acordar pra vida, assim como eu acordei. É uma pena que &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_26"&gt;ninguém&lt;/span&gt; tenha a oportunidade de se transformar num &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_27"&gt;profissional&lt;/span&gt; 2.0, como o Alexandre Gomes mostrou pra gente (pra quem tiver interesse... &lt;/span&gt;&lt;a href="http://www.vimeo.com/7696734"&gt;&lt;span style="font-family:arial;"&gt;http://www.vimeo.com/7696734&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;"&gt;). &lt;/span&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;&lt;/div&gt;&lt;/span&gt;&lt;div align="justify"&gt;&lt;span style="font-family:arial;"&gt;Esse Maré me fez ter outra visão da minha profissão, sinceramente falando. Me fez ver que tem gente jovem como eu, fazendo tudo isso acontecer. E eu quero fazer parte disso também!! Eu VOU fazer parte disso também! &lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;span style="font-family:arial;"&gt;&lt;/span&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;p align="justify"&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5410428053621916018" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_RA66Nou_muA/SxWzpirxQXI/AAAAAAAAAPQ/zTejhxaIe2k/s320/DSC00008.JPG" border="0" /&gt;&lt;/p&gt;&lt;/span&gt;&lt;p&gt;&lt;span style="font-family:arial;"&gt;&lt;img id="BLOGGER_PHOTO_ID_5410429214260507106" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_RA66Nou_muA/SxW0tGZkseI/AAAAAAAAAPY/Nm8gsoNVLDg/s320/DSC02189.JPG" border="0" /&gt;&lt;/p&gt;&lt;/span&gt;&lt;img id="BLOGGER_PHOTO_ID_5410430388060746466" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_RA66Nou_muA/SxW1xbJW8uI/AAAAAAAAAPg/R9X8WWeneiA/s320/DSC02192.JPG" border="0" /&gt; &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_28"&gt;Esse&lt;/span&gt; foi o primeiro de vários outros eventos que o &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_29"&gt;TáSafo&lt;/span&gt; vai trazer pra galera de Belém, pra que todo mundo fique por dentro do que ta acontecendo lá fora. Vamos movimentar a comunidade! Vamos mostrar que aqui também tem muita coisa boa!!&lt;br /&gt;Foi resumido, mas acho que deu pra perceber o quão importante pra mim foi ter participado do Maré!!!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;T+, galera... volto em breve!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;&lt;/p&gt;&lt;div align="justify"&gt;&lt;span style="font-family:Arial;"&gt;PS: Queria agradecer de coração aos novos amigos Alexandre Gomes, Renato &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_30"&gt;Willi&lt;/span&gt;, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_31"&gt;Wesley&lt;/span&gt; Rocha, Alexandre Magno, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_32"&gt;Manoel&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_33"&gt;Pimente&lt;/span&gt;, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_34"&gt;Felipe&lt;/span&gt; Rodrigues, Leonardo &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_35"&gt;Antonialli&lt;/span&gt; e &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_36"&gt;Serge&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_37"&gt;Rehem&lt;/span&gt;.. sem vocês esse evento não teria acontecido! OBRIGADA em nome de todos!! :)&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6677673004986645318-7779591321333983766?l=pamelagatinho.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pamelagatinho.blogspot.com/feeds/7779591321333983766/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6677673004986645318&amp;postID=7779591321333983766' title='4 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/7779591321333983766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6677673004986645318/posts/default/7779591321333983766'/><link rel='alternate' type='text/html' href='http://pamelagatinho.blogspot.com/2009/12/ano-passado-decidi-criar-esse-blog-pra.html' title='CSM + Maré de Agilidade'/><author><name>pamelagatinho</name><uri>http://www.blogger.com/profile/17115866283215450245</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_RA66Nou_muA/S3LNdSATfMI/AAAAAAAABHE/RkfFQWUcKcs/S220/pam02.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_RA66Nou_muA/SxWszmu7ScI/AAAAAAAAAO4/S1a_-HFQFhM/s72-c/IMG_0766.JPG' height='72' width='72'/><thr:total>4</thr:total></entry></feed>
