Coding Dojos do PHPMS

Este ano tem acontecido os coding dojos que o PHPMS tem organizado e estão sendo realizados na FACOM. Participei dos 3 realizados este ano e estou gostando muito. Os desafios são interessantes, a interação é boa e o resultado é gratificante.

Escolhi o problema dos dois últimos dojos, mas só no último é que o problema foi (quase) solucionado. O desafio era, a partir de um valor monetário, retorna esse valor por extenso, inclusive com os centavos.

Apesar de alguns participantes iniciantes em php, não foi difícil cada um dar sua contribuição ao problema (todos participaram) e chegar a uma solução, que imprimia o valor por extenso sem centavos (estratégia escolhida por todos para começar) e por falta de mais tempo não deu para exibir o valor com centavos.

Coding dojos estimulam a colaboração, a desenvolvimento orientado a testes (TDD) e é uma maneira saudável de treinar as habilidades de programação

Escrevi sobre o resultado do coding dojo no site do PHPMS. O próximo será realizado na 2a ou 3a quarta-feira do próximo mês.

 

jQuery: passando dados adicionais no .autocomplete() usando .ajax()

Alguns dias atrás me deparei com um probleminha chato com o jQuery, utilizando a função .autocomplete() . O .autocomplete() cria um observador num certo elemento que exibe uma lista de autocompletar conforme o usuário digita algo no input. Por exemplo:

1
2
3
$('.autocompleteField').autocomplete({
'source': 'source.com/my_data/
});

Os dados do autocomplete são buscados de uma fonte definida na opção “source” e pode ser local ou uma vindo de uma url externa. Nesse ultimo caso pode se passar dados adicionais para a requisição GET através da opção “extraParams”, porém esse modo não funcionou para mim.

Googlando um pouco para descobrir uma solução descobri uma maneira (óbvia) de passar esses argumentos adicionais que é utilizando a função .ajax() como meu “source”. E é muito simples

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$('.autocompleteField').autocomplete({
    'source': function(request, response) {
                $.ajax({
                    url: "source.com/my_data",
                    dataType: 'json',
                    data: {
                        term: request.term,
                        other_argument: 'test'
                        },
                    success: function(data) {
                        response(data);
                    }
                });
            }
});

E é isso. =)

jQuery autocomplete: http://docs.jquery.com/Plugins/Autocomplete/autocomplete

Suporte a NFC no Android 2.3.3

Dentre as novidades interessantes da api do Android 2.3, a mais recente, anunciada no blog dos desenvolvedores do android, é o suporte a NFC (Near Field Communication ou Comunicação de Campo Próximo), uma nova tecnologia sem fio que permite troca de informações entre dispositivos móveis e será uma importante funcionalidade nas próximas gerações de smartphones.

NFC é uma tecnologia de transmissão sem fio de curto alcance (aproximadamente 4cm de distancia entre os dispositivos) que opera numa frequência de 13,56MHz e tem taxa de transferência de dados entre 106 kbit/s e 848 kbit/s e possui várias aplicações como bilhetagem, cartões de visita, e-commerce, chaves eletrônicas, cartões, etc.

Os próximos celulares Android que incluírem essa nova tecnologia já podem contar com uma api pronta pra desenvolver aplicações desse tipo. E as novidades do Android não param por ai :)

Fonte: http://android-developers.blogspot.com/2011/02/android-233-platform-new-nfc.html

Iniciando com o Git

Depois de um pouco de resistência com o uso do Git na Radig e já acostumados com o SVN, resolvemos de uma vez por todas utilizar abandonar o SVN e migrar para o Git. O resultado foi ótimo.

O Git é uma excelente ferramenta de controle de versão que permite gerenciar um projeto de maneira organizada, além de facilitar a contribuição externa no caso de um projeto open source. Depois de muitas dores de cabeça com o SVN, mesmo tendo um pouco de dificuldade pra entender o Git no início, finalmente abraçamos a nova ferramenta.

A utilização do git por linha de comando é simples, os comandos de ajuda e as dicas facilitam a manipulação dos arquivos de um projeto. Além disso nenhuma modificação no projeto é realmente efetuado a não ser que o usuário tenha a noção do que está sendo modificado e a disciplina no gerenciamento de um projeto é estimulada quando se observa as regras.

O git está disponível para Linux, Windows e Mac. A instalação é rápida e não exige muitos requisitos. Basta acessar esse endereço que redirecionará para a página de download correspondente ao seu sistema operacional: http://help.github.com/git-installation-redirect

read more »

Como resolver erro 228 na adição de add-ons do Firefox

 

Um problema que acontece sempre que reinstalo o Ubuntu é na adição de complementos no Firefox. A mensagem “Error 228 – Falha no download” acontece sempre que se clica em instalar.

Pesquisando no Google vi que a solução é simples. Uma dela é garantir que o cache esteja habilitado e com pelo menos 1MB de limite. Outra solução é desabilitar o uso de IPv6. Basta entrar nas configurações do Firefox através da url “about:config” . Ao acessar esse endereço, clique no botão de confirmação “Serei cuidadoso, prometo”.

Na caixa de pesquisa, procure pela entrada “network.dns.disableIPv6″ ,  verifique se estar com o valor “false”. Se estiver, clique com o botão direito e clique na opção “inverter valor”, e deixe como “true”. Reinicie o Firefox e tente baixar o complemento.

Espero ter ajudado. ;)

Saiu a versão 1.3.5 do CakePHP

50 commits e quase 1 mês e meio depois, a equipe do CakePHP lançou ontem (24/10) a nova versão do framework, com alguns ajustes e algumas correções:

  • Router agora manipula corretamente padrões para o parâmetro :action
  • RequestHandlerComponent envia o content-type e o encoding de cabeçalhos para páginas html automaticamente
  • Melhorias na compatibilidade com PostgreSQL 9
  • Memcache Engine agora funciona certo com endereços ipv6

Mais informações no site do CakePHP. Baixe agora ou faça seu pull no Git.

Fonte: http://bakery.cakephp.org/articles/markstory/2010/10/24/cakephp_1_3_5_released

Froyo no Milestone com a rom G.O.T 2.2.1

Uma boa notícia pra que não quer esperar 2011 pra atualizar seu Milestone. O Group Often criou uma rom modificada do Froyo, adaptada para o Motorola Milestone, funcionando quase 100% e sem bugs aparentes. Além do mais é possível habilitar o root e realizar overclock com o GOT Open Recovery.

A rom é realmente do Froyo, com todas as funcionalidades. Porém as disponíveis são de operadoras estrangeiras, o que não impede de funcionar no Brasil e adicionar um aplicativo de tradução.

Segue os passos para realizar a operação. É importante ter pelo menos conhecimento no uso do aplicativo RSD Lite do Windows, ou o equivalente no Linux. Pra quem já fez o flash com o RSD, o procedimento é o mesmo.

FAÇA POR SUA CONTA EM RISCO. Os procedimentos são simples mas requer atenção

read more »

Papel de parede animado estilo Android para Ubuntu

Quem possui um aparelho com Android  >2.1 sabe que é possível colocar papéis de parede animados de vários tipos. Um deles é o Galaxy, que mostra um cinturão de estrelas em forma de galáxia girando. Agora, graças a um usuário esperto, o Ubuntu 10.10 pode contar com esse live wallpaper (e muitos outros), utilizando o Compiz.

Para aproveitar os live wallapers no Ubuntu 10.10, basta adicionar o repositório do usuário “ilap” e instalar o plugin.

sudo add-apt-repository ppa:ilap/lwp
sudo apt-get update && sudo apt-get install compiz-plugins-livewallpapers

Depois de instalado, mude o wallpaper e escolhe um dos live wallpapers.

  1. Menu Sistema -> Preferências -> Aparência -> Plano de Fundo ou botão direito na área de trabalho ->  alterar plano de fundo
  2. Clique em Adicionar
  3. Enre em /usr/share/backgrounds no campo location. Tecle enter
  4. Selecione ‘Space_by_ilap.jpg’
  5. Clique em ”Abrir” e depois “Close”

Depois de alterado, ativar o  plugin “Galaxy Live Wallpaper” plugin no gerenciador do CompizConfig Settings Manager em Sistema -> Preferências.

Ao abrir a janela de configurações do Compiz,  no pailei esquerdo selecione “Live Wallpapers n the left-hand side pane select “Live Wallpapers” and check/enable ‘Galaxy Live Wallpaper’.

Ative o efeito Galaxy Live pressionando “super” (tecla windows) e F4.

Fonte: OMG Ubuntu e Ilap’s Blog

Ubuntu 10.10 Maverick Meekat lançado hoje

Saindo um pouco mais rápido  que de costume, o Ubuntu 10.10 já está disponível para download no site do Ubuntu.

Download:  http://www.ubuntu.com/desktop/get-ubuntu/download

Skype lança seu aplicativo para Android

Finalmente a Skype lança seu aplicativo para Android. Existem no Market outras opções de aplicativos que utilizam o serviço Skype, algumas boas, outras ruins, mas poder contar com o aplicativo oficial as vezes pode ser uma boa escolha. É possível sincronizar os contatos do Skype com os do Android (assim como o Facebook e Twitter fazem). Porém não encontrei uma opção de unir contatos existentes nem pude visualizar a contatos do Skype na lista de contatos do Android. É possível que essas opções venham em atualizações futuras. Também dá pra comprar créditos, mas ao tentar abrir o navegador ele informa que o não é compatível. Provalmente um bug na versão.

O consumo de bateria é baixo, fiz uma chamada de 1 minuto e usei o chat por uns 2 minutos e nem apareceu no gerenciador de consumo da bateria. É possível selecionar uma foto do álbum para adicionar ao contato. A interface precisa de umas melhorias, não há como voltar em algumas telas. A fonte é um pouco grande e algumas palavras são cortadas. É possivel escolher um som mp3 salvo no cartão de memória como toque de notificação ou o ringtone padrão do sistema pra chamadas, mas não dá pra escolher outros toques do sistema.

O aplicativo não sai com o botão voltar. Para voltar para a homescreen e deixar ele em segundo plano tem que tocar o botão home. Um ícone na área de notificação permite reabrir ele. O bate-papo tem uma interface estranha, com balõezinhos pra cada mensagem do contato.

Apesar desses pequenos defeitos, vale a pena usar.

Switch to our mobile site