Subscribe to MaxUp Blog

Archive for the ‘Desenvolvimento Agil’ Category

Atalho!

 

Pessoal, a mais ou menos uns 2 meses atrás eu tive alguns problemas com uma aplicação Flex que estava desenvolvendo para uma empresa cujo dono era um senhor de idade e que tinha adquirido alguns costumes ao longo da sua vida, um deles era utilizar teclas de atalho nos aplicativos que usava, pois bem, fui até a lista flexdev ver se havia a possibilidade, após ter procurado na web e em alguns livros e o resultado foi negativo, mas não totalmente, o Beck Novaes comentou que seria possivel extendendo o componente e até criou um exemplo muito útil encontrado aqui e com base nesse exemplo eu criei algo que atenderia melhor minhas necessidades, e agora, venho compartilhar esse solução com a comunidade!

Bom, primeiro eu tenho a Classe ShortKey.

Olha que simples, depois no mxml em que você deseja colocar o atalho no botão basta inserir o seguinte código:

<cp:shortkey key="{Keyboard.ENTER}" button="{btnConfirmar}">

E você ainda pode usar combinações com Enter e Shift + mais outra tecla, basta dar uma olhada na classe ShortKey.

Pessoal, esperamos que isso ajude ai, e gostariamos de agradacer a comunidade Flex pela força!

Oct
31
Posted by admin

Relatos pessoais

Ei caras, tudo bem, então, esse post vai ser sobre a minha experiência com duas tecnologias, o .NET e o RoR, e por favor, não vamos começar com a velha discussão de quem é melhor né… Eu tenho como opnião formada o seguinte, quem faz a linguagem boa é o porgramador, ou seja, o RoR é muito bom pra alguns e nem tanto pra outros que não saber desenvolver bem nele, assim como outras linguagens, eu também acho que para cada projeto deveria ser estudada qual linguagem melhor se adaptaria… Opnião minha!

  • .NET

Mas bem, vou falar sobre minha experiencia com as tecnologias citadas acima, bom, em fevereiro/07 comecei a programar com .NET, com VB mais precisamente, até ai tudo bem, comprei meu laptop e instalei todo o cara da Microsoft pra desenvolver alguns projetos que eu tinha em mente, coisa pequena qe deveria ser rápida… Pois bem, não foi, na verdade sequer saiu do papel, era muito massante o trabalho de criar classes pro nHibernate e coisa e tal, sei que eu consegui concluir em um mes apenas a camada de dados, só, ou seja, não tinha como ser utilizado o meu sistema…

  • Ruby on Rails

Bom, Em agosto eu acho, por ai, eu conheci o RoR, não me pergunte como, acho que foi lendo na internet mesmo, e um dos primeiros materiais que eu li foi o Ruby on Rails para sua diversão e lucro… Claro, esse titulo é realmente muito atrativo! E a minha história com o RoR tem sido muito bonita até aqui, ganhei um curso da e-Genial, comecei a participar de eventos sobre RoR, comecei a ler, coisa que eu fazia muito pouco e agora faço direto… Então eu resolvi pegar aquele meu projeto que em vários meses eu não consegui fazer… Note um coisa, “EU” não consegui, não estou dizendo que a tecnlogia é ruim, estou dizendo que eu não me sentia a vontade de fazer as coisas da maneira que a tecnologia propunha, essa é a questão, com RoR eu estou com o projeto em 40% do seu andamento total já… Faltam apenas alguns retoques(tudo bem falta toda a parte ainda) de design… E sabe a quanto tempo eu estou trabalhando no projeto versão RoR? Duas semanas… Só de pensar que me livrei daqueles milhões de arquivos de configuração do nHibernate, o .hbm e os .xml…

  • Conslusão

Pessoal, chega ao fim esse tedioso post(mas foi muito bom escreve-lo) e agora eu tenho total confiança de que terminarei meu sistema, estou procurando um design que cobre pouco, na verdade queria um parceria, mas isso é material para outro post! Então, se eu tenho um conselho para dar seria este: Faça o que você se sente a vontade para fazer, não só em desenvolvimento, mas sempre!

Até mais pessoal!!!!!!!!

Tags:
Oct
10
Posted by admin

Movimentação RoR no Brasil

Pessoal Fábio Akita anda propondo fazer uma espécie de RejectConf em São Paulo, eu acho isso brilhante, ele está coletando todo feedback possivel pra saber o que os pessoal acha disto… Como eu disse eu acho brilhante, pena que vai acontecer em São Paulo!

Mas isso até que não é um grande impecilho… Aqui no RS as coisas estão tambpem bastante avançadas, nós já tivemos nosso primeiro encontro informal, o DOJO, que irá acontecer na Unisinos também está para acontecer, falta apenas a confirmação da data, quando isso acontecer eu mando um post aqui pra todos saberem, e ainda estmos organizando algo um pouco mais formal, com palestras e tal, então se você não está em sampa mas está no RS aconselho entrar na lista Rails RS e ficar atento aqui no blog para saber das novidades, e cas você não esteja em nenhum destes estados é claro, você terá todo apoio para iniciar um movimento deste tipo na sua região, então não fique parado se lamentando e mexa-se!

Tags:
Sep
11
Posted by admin

1º Encontro do Grupo Rails-RS


Pessoal, não preciso dizer mais nada né…
A imagem foi concebida por Juan Maiz e mostra o interesse da gauchada em aprender e compartilhar conhecimento sobre ROR, quem quiser saber mais basta entrar na lista de discução Rails-RS

Tags:

Pessoal, parece mentira, mas realmente eu fui o vencedor do concurso “Post Criativo E-genial”, cara, como isso soa bem, há muito tempo eu não era vencedor de nada hahaha… Mas agora as coisas parecem estar mudando, a sorte parece andar ao meu lado, e eu tenho que aproveitar, aqui está a confirmação, estou muito contente de ter ganhado, vai ser muito proveitoso pra mim… Há… Este foi o post que me deu a vitória, que causa tamanha felicidade: Marcus On e-Genial, queria por fim agradecer o pessoal da e-Genial também… Um abraço a todos!!!!!!!

Tags:
Metas individuais de curto prazo frequentemente entram em conflito com metas sociais de longo prazo. AS sociedades aprenderam a lidar com esse problema desenvolvendo um conjunto de valores a serem compartilhados, apoiados por mitos, rituais, punições e recompensas. Sem esses valores, o homem tende a voltar-se para seus próprios interesses de curto prazo.

Os quatro valores da XP são:

  • Comunicação
  • Simplicidade
  • Feedback
  • Coragem

Comunicação

Quando analisamos os problemas que ocorreram nos projetos, vemos que muitos deles forma provocados por alguém que não conversou com outro alguém sobre alguma coisa importante. Algumas vezes, o programador não fala para os outros sobre uma mudança fundamental no projeto. Outras vezes, o programador não faz a pergunta certa para o cliente, fazendo com que uma importante decisão de domínio seja prejudicada. Às vezes um gerente não faz a pergunta certa para o programador e o progresso de projeto é reportado de maneira errada.

A má comunicação não acontece por acaso. Existem muitas circunstancias que levam a um colapso nas comunicações. Um programador da más noticias ao gerente e o gerente pune o programador. O cliente diz algo importante e programador parece ignorar a informação.

A XP procura manter as comunicações certas fluindo através do emprego de muitas praticas que não podem ser feitas sem comunicação. São praticas que fazem sentido a curto prazo, como testar, programar em pares e estimar é a comunicação entre programadores, clientes e gerentes.

Isso não quer dizer que a comunicação não seja obstruída em um projeto XP. As pessoas ficam com medo, erram e se distraem. A XP emprega um “treinador” cujo trabalho é perceber quando as pessoas não estão se comunicando e restabelecer o vinculo entre elas.

Simplicidade

O treinador XP pergunta ao time: “Qual a coisa mais simples que poderia funcionar?”.

Simplicidade não é fácil. É muito difícil não antecipar aquilo que você precisara implementar amanha ou na próxima semana ou no próximo mês. Mas antecipar as coisas compulsivamente é ser influenciado pelo medo do custo exponencial da curva das modificações. Algumas vezes o treinador precisa gentilmente lembrar ao time de que eles estão sendo influenciados pelos seus medos: “Talvez você seja tão mais inteligente do que eu que possa fazer essa tal de arvore dinamicamente funcionar. Eu iria ingenuamente assumir que uma busca linear funcionaria”.

A XP esta fazendo uma aposta. Esta apostando que é melhor fazer uma coisa simples hoje e pagar um pouco mais amanha para fazer alguma modificação nela se for necessário do que fazer uma coisa mais complicada hoje que talvez nunca será usada.

Simplicidade e comunicação têm uma maravilhosa relação de suporte mutuo. Quando mais você se comunica mais claramente você vê o que precisa ser feito e tem mais certeza sobre o que não precisa. Quanto mais simples for o sistema menos você precisa comunicar sobre ele. O que nos leva a uma comunicação mais completa, especialmente se você pode simplificar o sistema o suficiente para precisar de menos programadores.

Feedback

O feedback funciona em diferentes escalas de tempo. Primeiramente o feedback funciona na escala de minutos e dias. Os programadores escrevem testes de unidade para toda a lógica do sistema que poderia não funcionar. Os programadores tem feedback concreto de minuto a minuto sobre o estado do sistema. Quando os clientes escrevem novas “historias” (descrições das características), os programadores as avaliam imediatamente. Assim os clientes tem feedback concreto sobre a qualidade de suas historias. A pessoa que rastreia o progresso observa o termino das tarefas para dar, a todo o time, feedback sobre a probabilidade de eles terminarem tudo o que foi definido para um dado período de tempo.

O feedback também funciona na escala de semanas e meses. Os clientes e testadores escrevem testes de funcionalidade para todas as historias (que na verdade são “casos de uso simplificados”) implementadas pelo sistema. Eles tem feedback concreto sobre o estado atual do sistema. Os clientes revisam o cronograma a cada duas horas ou três semanas para ver se a velocidade geral do time fecha com o plano e também para reajustar o plano. O sistema é colocado em produção assim que ele fizer sentido, para que os negócios possam começar a sentir como o sistema se comporta em ação e a descobrir como ele pode ser mais bem explorado.

Produções precoces precisam de uma pequena explicação. Uma das estratégias no processo de planejamento é o time colocar em produção as historias mais importantes assim que possível. Isso da aos programadores feedback concreto sobre a qualidade de suas decisões e sobre o processo de desenvolvimento que só é possível quando colocamos a mão na massa. Alguns programadores nunca experimentaram um sistema em produção. Com eles podem aprender a melhorar seu trabalho?

A maioria dos projetos parecem ter uma estratégia exatamente oposta. O pensamento parece ser: “Quando o sistema entrar em produção, você não pode fazer alterações interessantes, então mantenha o sistema em desenvolvimento o maior tempo possível”.

Na verdade, é o contrario. “Em desenvolvimento” é um estado temporário, em que o projeto fica uma pequena parte de sua vida. É muito melhor dar ao sistema uma vida independente, fazendo-o sobreviver por si mesmo. Você terá simultaneamente gerenciar a produção e desenvolver novas funcionalidade. É melhor se acostumar mais cedo a equilibrar a produção e o desenvolvimento do que faze-lo tarde demais.

O feedback concreto trabalha juntamente coma comunicação e a simplicidade.

Quanto mais feedback você tiver, mais fácil será se comunicar. Muitas horas de discussão podem ser poupadas se, quando alguém tiver alguma objeção ao seu código, ele lhe entregar um caso de teste que faz esse código falhar. Se você estiver se comunicando claramente, você saberá o que é preciso testar e medir para aprender sobre o sistema. Sistemas simples são mais fáceis de testar. Escrever o teste faz você se concentrar na simplicidade do sistema – antes de os teste executarem você ainda não terminou; e quando todos executarem, você terminou.

Coragem

A estratégia do projeto da XP se parece com um algoritmo para escalar uma colina. Você começa com um projeto simples, então você o transforma em algo um pouco mais complexo, e depois em um pouco mais simples, para então deixa-lo um pouco mis complexo. O problema com algoritmos para escalar colinas é alcançar o um local ótimo, onde uma pequena mudança não consegue melhorar a situação, mas uma grande mudança sim.

O que garante quer você nunca chegara a uma rua sem saída: Coragem. De vez em quando, alguém no time ira ter uma idéia louca, que talvez acabe com a complexibilidade de todo o sistema. Se eles tiverem coragem, irão colocar essa idéia em produção. Agora você esta escalando uma colina inteiramente nova. Se você não tiver definido os três primeiros valores, coragem por siso é apenas fuçar em seu próprio sistema. No entanto quando combinada com comunicação, simplicidade e feedback concreto, a coragem se torna extremamente valiosa.

A comunicação da suporte a coragem porque abre a possibilidade de mais experiências de alto risco e alta recompensa. “Você não gosta disso? Eu odeio esse código. Vamos ver o quanto dele podemos substituir em uma tarde.” A simplicidade da suporte a coragem porque você pode se dar ao luxo de ser muito mais corajoso com um sistema simples. É muito menos provável que você estrague o sistema inadvertidamente. Coragem da suporte a simplicidade porque assim que a oportunidade de simplificar o sistema é percebida, você a experimenta. O feedback concreto dá suporte à coragem porque você se sente muito mais seguro experimentando algo extremo no código se você puder pressionar um botão e ver resultados positivos nos testes (ou não, no caso de você jogar código fora).

Tags: