Firefox OS Simulator

Tivemos um outro post falando sobre o lançamento e mais detalhes do FirefoxOS (codinome Boot2Gecko) neste post em agosto.

A novidade agora é que o pessoal da Mozilla lançou um complemento para o browser Firefox, que lhe permite visulizar o novo sistema operacional. Inclusive você pode instalar e utilizar as APPs já existentes para ele dentro do Market Place.

Para utilizar é muito fácil, basta instalar o seguinte plugin em seu firefox atualizado.

https://addons.mozilla.org/pt-BR/firefox/addon/firefox-os-simulator/

Eis o repositório do projeto o GitHub

https://github.com/mozilla/r2d2b2g

Aqui tem um vídeo mostrando como instalar e operar o plugin, tudo muito simples.

Agora não há mais motivos para você não dar uma olhada em como ele está ficando legal.

Até mais.

Anúncios

The Chaos Report – Web Security Version

Segurança tem se tornado um dos assuntos mais discutidos na comunidade de software nos dias de hoje. Ataques, perda de informação e/ou exposição, são barreiras a serem batidas para diversas industrias que tem um grande receio sobre a adoção de tecnologia.

Apesar de que uma parte deste problema deva ser enfrentado com maior investimento na área, o mundo de desenvolvimento também detém grande parte desta “culpa” e precisa se adequar e se aperfeiçoar para estar preparado para o embate. 

Neste vídeo Eduardo Bohrer trata sobre o assunto da segurança e dá algumas dicas de como podemos trabalhar para entendermos melhor nosso inimigo e nos prepararmos para ele.

Slides desta apresentação:

http://www.slideshare.net/nbluis/chaos-report-web-security-version

 

Links relacionados

http://www.symantec.com/business/threatreport/

https://www.whitehatsec.com/assets/WPstats_winter11_11th.pdf

https://www.owasp.org/index.php/Main_Page

https://www.owasp.org/index.php/Category:OWASP_Project

https://www.owasp.org/index.php/Porto_Alegre

https://www.owasp.org/index.php/Category:OWASP_WebScarab_Project

https://www.owasp.org/index.php/Category:OWASP_Guide_Project

https://www.owasp.org/index.php/Category:OWASP_Testing_Project

https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project

https://www.owasp.org/index.php/Category:OWASP_WebGoat_Project

https://www.owasp.org/index.php/Category:OWASP_Enterprise_Security_AP

 

A importância do uso de CRM

Normalmente, as empresas buscam sempre aumentar seu faturamento e lucro buscando novos clientes. O que não é errado, sem dúvida. O problema é que, muitas vezes, elas esquecem de seus clientes atuais. As organizações não percebem que o custo para a aquisição de novos clientes é muito maior. A venda de novos produtos e serviços para clientes atuais satisfeitos pode gerar um grande incremento no faturamento da empresa.

Para isso, o uso de uma boa ferramenta de CRM pode auxiliar muito as organizações. Além disso, é importante ampliar o conhecimento sobre os clientes a fim de categorizar os mesmos. Clientes com maior influência no mercado e com maior poder de investimento devem receber uma atenção especial. É um erro considerar que todos os clientes possuem o mesmo grau de importância e devem ser tratados na mesma forma. Clientes diferentes devem ser tratados de forma diferente. Cada um possui sua cultura, seu conhecimento sobre o produto, sua forma de comunicação.

O objetivo principal de uma ferramenta de CRM é conhecer melhor os seus clientes. Dar a atenção devida para cada um, de acordo com sua real necessidade. A partir disso, deve-se buscar o relacionamento com o cliente como um diferencial competitivo da organização. Entender de forma rápida e precisa o que cada cliente necessita, geralmente não é algo simples para as organizações. Principalmente em software-houses, onde os clientes normalmente possuem um conhecimento limitado sobre o processo de desenvolvimento de software. E isso se agrava ainda mais, se o cliente não possui uma área de TI bem estruturada.

Sendo assim, analisando o cotidiano de empresas desenvolvedoras de software, criei uma sugestão de metodologia para implantação de CRM, com algumas categorias de clientes e informações que devem ser coletadas em uma ferramenta de CRM, que pode ser conferida no vídeo do youtube ou no slideshare. Maiores informações também podem ser encontradas no blog Análise Ágil de Negócio.

Post escrito por Emerson Schenatto, analista de negócio na Trevisan Tecnologia, atuando no desenvolvimento do uMov.me.

TTLabs Summit Q3/2012! Me formei e agora? Preparado para o mercado ou para academia? por @m_andreazza

Esta apresentação foi feita dentro do TTLabs Summit Q3/2012, que ocorreu no dia 14/set/2012 na Trevisan Tecnologia.

Se olharmos jornais, blogs, notícias, sites de empregos todas elas vão lhe dizer a mesma coisa: “Sobram vagas no mercado de TI”. Mas será que realmente faltam profissionais na área ou faltam profissionais qualificados, mas principalmente, em sincronia com o que o mercado realmente está necessitando.

Esta minha light talking tem como objetivo passar um pouco da idéia referente sobre o que realmente a academia está preparando para o mercado. Assuntos como Agile, Lean Software Development, Continuos Integration, Kanban, Lean Startup, Scrum, XP, Design Pattern, TDD, Unit Test ainda são coisas raras de se encontrar dentro de uma estrutura curricular.

Veja a apresentação no slideshare e o vídeo no youtube.

Mauricio é desenvolvedor web a mais de 5 anos e nos últimos 2 anos vem trabalhando com metódos ágeis tanto na gestão como em práticas de engenharia. Gosto bastante de discutir sobre boas práticas de engenharia e principalmente sobre processos de desenvolvimento de software com seus gargalos e disperdícios. Você pode me encontrar no twitter através do @m_andreazza

 

 

Continuous Delivery! Sua empresa está preparada?

Ainda depois de mais de 11 anos praticando agilidade, muitas são as equipes de desenvolvimento de software que sonham em realizar um deploy a partir de um simples click. O que geralmente ocorre é que as organizações e seus respectivos times/produtos muitas vezes não estão preparados para este grande passo. 

Para ilustrar e enriquecer este post, acompanhe algumas dicas e aprendizados adquiridos através de experiências e treinamentos como por exemplo com o autor do livro Continuous Delivery, @jezhumble.


O quão ágil é o seu time?

Hoje em dia não raros são os times de desenvolvimento de software que se consideram “ágeis”, ou que buscam nas praticas ágeis a base para seus ciclos de desenvolvimento. @Jezhumble costuma questionar o quão ágil um time de desenvolvimento é. E o mais importante, como chegar a uma métrica para mensurar tal informação. A reposta mais simples possível vem do mesmo @jezhumblee, onde ele sugere mensurar o quão rápido seu time consegue entregar software de qualidade a seus clientes. #ficaadica

Seu time está preparado para entregar software de forma contínua?

Ainda falando em desenvolvimento àgil de software, temos como premissa a entrega de software agregando valor ao negócio do cliente. Desta forma muitas equipes pecam na tentativa de estabelecer uma linha de entrega contínua a seus clientes, onde os motivos vão desde erros operacionais básicos das equipes até mesmo o despreparo por parte do cliente em relação ao modelo de entrega proposto.

Para evitar os pecados mencionados anteriormente, procure criar uma cultura de entrega continua. Faça com que a entrega de versões ou a simples entrega de uma nova funcionalidade faça parte do planejamento de cada equipe e não apenas após finalizado a codificação da mesma. Discuta estratégia de entregas. Discuta, reforce, defina o conceito de “PRONTO” com o seu time e lembre-se, tarefa pronta significa valor entregue ao cliente em produção.

Automação

Novamente parafraseando @jezhumble “… automação é tudo” ou talvez seria para tudo? O fato é que automação é um ponto chave para quem busca realizar entregas consistentes independentemente do tamanho do ciclo de desenvolvimento trabalhado.

Garanta através de “mecanismos de segurança” constantes validações sob a versão ainda em desenvolvimento, gerando feedback constante e garantindo que a linha de produção não pare, ou se caso venha parar que volte a produzir o quanto antes possível. Entre estes mecanismos estão a automação de testes validando a versão a cada commit realizado. Integrar continuamente a versão corrente evitado surpresas ao fechar versões para produção ou então rodar noturnamenta suites de regressões antecipando não conformidades geralmente identificadas apenas na validação de versões pré-produção.

Eliminar processos complexos e consequentemente dificeis de serem executados é um fator muito importante na automação de tarefas. Se uma tarefa é complexa para ser executada, talvez necessite ser executada com mais frequência buscando assim alternativas e soluções mais simples de serem executadas.

Não elimine a intervenção das pessoas no processo de entrega, pessoas são ótimas em heuristica.

“… se é demorado é porque é dificil, se é dificil é porque é manual, se é manual precisa ser automatizado”

 Continuous Deployment e Continuous Delivery

Os termos Continuous Deployment e Continuous Delivery podem nos gerar confusão. Pois bem vamos exemplificar o conceito de cadas um deles abaixo:

  • Continuous Deployment: É caracterizado pelo fechamento de builds de software funcionais.

Ex.: Realizar o fechamento de versão e realizar o deploy no ambiente de homologação a cada nova funcionalidade uma vez validada pelos testes. Note não estamos entregando software em produção. 

  • Continuous Delivery: Pode ser considerado o passo de simplesmente agregar valor ao negócio propriamente dito. Conforme o ambiente, baterias de validações podem fazer parte deste processo intermediado diretamente pelo pessoal de negócio, ou simplesmente em ambientes automatizados este mesmo time decide qual o melhor entregável deve ser promovido para produção clicando no botão “release”. http://goo.gl/QkaO 

Cultura DevOps 

Leve para dentro de seu time a cultura DevOps, fazendo o time de desenvolvimento sentir as dores atuais para realizar a liberação de uma nova versão. Fazer do time de operações uma extensão do time de desenvolvimento ou vice-versa.

Esta maior integração propicia ao desenvolvedor uma maior responsabilidade dentro do processo de liberação de novas versões. A prática de code refactoring não pode ser vista como ato de heroísmo e sim de responsabilidade e respeito para com o time. Um desenvolvedor deve garantir que após realizar uma refatoração em uma parte do sistema, tudo deve continuar funcionando conforme anteriormente.

Realize eventos para apresentar grandes mudanças no software, evitando assim também grandes surpresas e processos de rollbacks/fallbacks traumáticos. Mas esteja sempre preparado para executá-los da melhor forma possível.

Estude melhores práticas e formas de modo a facilitar o bom andamento do ciclo de desenvolvimento de seu time tais como:

  • Feature Toogles;
  • Feature Branching; 
  • Blue-Green Deployment;
  • Virtualização etc …

Pratique Chaos Monkey! Aprenda com suas falhas e a melhor forma de fazer isso é falhar frequentemete. Certifique-se de que sua infraestrutura pode ser recriada através do seu controle de versão, incluindo scripts de toda e qualquer espécie.

      Você viu nosso canal no youtube?

      De vez em quando gravamos algumas palestras. Várias delas foram publicadas no nosso canal do Vimeo. Aí queríamos colocar alguns vídeos maiores e por outras restrições, criamos um canal no youtube para publicar as histórias. 

      Então fica a dica do nosso novo canal no youtube

      Quem escreveu este post? Daniel Wildt é CTO da Trevisan Tecnologia e curte ajudar o time a melhorar continuamente. Site no danielwildt.com e twitter @dwildt.

      TTLabs Podcast #4

      E chega o mais novo episódio do nosso podcast!!!

      Nesta edição falamos um pouco dos eventos que a equipe da TTLabs participou, tais como BrazilJS, Agile Brazil 2012, RS on Rails 2012 entre outros.

      Então não perca mais tempo e curta abaixo o nosso podcast!

      Abaixo segue o link dos eventos mencionados no nosso podcast:

       

      GUTS

      Grupo no google-groups: https://groups.google.com/d/forum/guts-rs-sucesu

      Blog http://guts-rs.blogspot.com.br/

      Post sobre o GUTS 20 minutes no blog: http://guts-rs.blogspot.com.br/2012/08/sobre-o-evento-guts-rs-20-minutes.html

       

      IASA

      Grupo no google-groups: https://groups.google.com/d/forum/iasaportoalegre

      Site da Zenvia: http://www.zenvia.com.br/

      Sobre ECA: http://en.wikipedia.org/wiki/Event_condition_action

       

      Seminário PMI

      Site: http://www.seminario.pmirs.org.br/site/home

      Sobre Lean: http://en.wikipedia.org/wiki/Lean_manufacturing

      Site do Almyr Klink: http://www.amyrklink.com.br/

       

      BrazilJS

      Site: http://braziljs.com.br/

      Site do @BrendanEich: https://brendaneich.com/

      Site do @cowboy: http://benalman.com/

      Site do GruntJS: http://gruntjs.com/

      Site do @fat: http://byfat.xxx/

      Sobre twitter-bootstrap: http://twitter.github.com/bootstrap/

      Site do @firt: http://firt.mobi/

      Site do @maujor: http://www.maujor.com/

      Site do @bernarddeluna: http://bernarddeluna.com/

       

      Startup Dev Rumble

      Site: http://startupdev.com.br/rumble/pt/

      Facebook do Cardapiaria: https://www.facebook.com/Cardapiaria

      Site RubyOnRails: http://rubyonrails.org/

      Site jQuery Mobile: http://jquerymobile.com/

       

      AgileBrazil

      Site: http://www.agilebrazil.com/2012/

      Site da InfoQ: http://www.infoq.com/br

      Sobre Cecilia Fernandes: http://www.caelum.com.br/instrutores/cecilia-fernandes/

      Site do James Shore: http://jamesshore.com/

      Livro “The Art of Agile Development”: http://bit.ly/PFZ5za

      Sobre Slack: http://bit.ly/xWCAqz

       

      RSOnRails

      Site: http://rsonrails.com.br/

       

      Startup Dojo

      Grupo no facebook: https://www.facebook.com/groups/319499808099995/

      Sobre Business Canvas: http://www.businessmodelgeneration.com/canvas

       

      NoSummit

      Site: http://nosummit.com/

      Post sobre o NoSummit do @dwildt: http://bit.ly/RSn6Bn

      Twitter do Manoel Pimentel: https://twitter.com/manoelp

       

      GUDAY

      Inscrições: http://www.sucesurs.org.br/eventos/guday/inscricao

       

      DevRS.Net

      Site do evento: http://www.sucesurs.org.br/evento/1o-evento-devrs-net-sucesu-rs