<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Blog do Desenvolvedor &#60;? &#187; dicas</title>
	<atom:link href="http://www.ricardomartins.info/blog/tag/dicas/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ricardomartins.info/blog</link>
	<description>o lugar do profissional web e do e-empreendedor</description>
	<lastBuildDate>Tue, 20 Jul 2010 01:41:39 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>PQP: Meu salário vai sobrar</title>
		<link>http://www.ricardomartins.info/blog/investimentos-mercado/pqp-mais-dinheiro-na-minha-conta/</link>
		<comments>http://www.ricardomartins.info/blog/investimentos-mercado/pqp-mais-dinheiro-na-minha-conta/#comments</comments>
		<pubDate>Tue, 20 Jul 2010 01:33:46 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Investimentos e Mercado]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[investimentos]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=399</guid>
		<description><![CDATA[Dia desses eu estava no Senac, participando de um curso oferecido pela Bm&#38;FBovespa sobre educação financeira e investimentos. O que mais me chamou atenção foi a quantidade de pessoas que assistiam e que não faziam a menor idéia de como poupar e fazer sobrar algum dinheiro no final do mês. Uma boa parte das pessoas [...]]]></description>
			<content:encoded><![CDATA[<p>Dia desses eu estava no Senac, participando de um curso oferecido pela <a title="Site da BM&amp;FBovespa - A nova bolsa" href="http://www.bmfbovespa.com.br/" target="_blank">Bm&amp;FBovespa</a> sobre educação financeira e investimentos. O que mais me chamou atenção foi a quantidade de pessoas que assistiam e que não faziam a menor idéia de <strong>como poupar</strong> e fazer sobrar algum dinheiro no final do mês. Uma boa parte das pessoas vive endividada e com grande parte do salário comprometido em <strong>prestações</strong> a perder de vista, <strong>gastos inúteis</strong> que por vezes nem percebem que estão pagando, e produtos que usam uma ou duas vezes até esquecer de lado.</p>
<p><strong><a href="http://www.ricardomartins.info/blog/wp-content/uploads/2010/07/tio-patinha.jpg"><img class="alignright size-full wp-image-428" title="Tio Patinhas" src="http://www.ricardomartins.info/blog/wp-content/uploads/2010/07/tio-patinha.jpg" alt="Tio Patinhas" width="261" height="279" /></a>O dinheiro tem valor no tempo<br />
</strong>Esta afirmação foi martelada do começo ao fim do curso. E com muita razão. As pessoas deveriam aprender a somar os pequenos valores que pagam repetidamente. Me refiro aqui às pequenas taxas de cartão de crédito, da administração da conta corrente, do táxi, ou daquele pastelzinho de cada dia. É um hábito as pessoas olharem taxas pequenas com desprezo, como se aqueles R$5,00 da manutenção da conta corrente ou os R$100,00 do celular.  Você já pensou quanto isso influencia suas finanças em um ano? Vamos a uma pequena simulação:</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody style="text-align: left;">
<tr>
<td width="192" valign="top"><strong>Despesa</strong></td>
<td width="192" valign="top"><strong>Valor mensal</strong></td>
<td width="192" valign="top"><strong>Total gasto em 12 meses</strong></td>
</tr>
<tr>
<td width="192" valign="top"><strong>Tarifas bancárias</strong></td>
<td width="192" valign="top">7,00</td>
<td width="192" valign="top">84,00</td>
</tr>
<tr>
<td width="192" valign="top"><strong>Celular pós-pago</strong></td>
<td width="192" valign="top">60,00</td>
<td width="192" valign="top">720,00</td>
</tr>
<tr>
<td width="192" valign="top"><strong>Cafézinho todos os dias</strong></td>
<td width="192" valign="top">44,00 (R$2,00 x 22)</td>
<td width="192" valign="top">528,00</td>
</tr>
<tr>
<td width="192" valign="top"><strong>Assinatura de revista</strong></td>
<td width="192" valign="top">15,00</td>
<td width="192" valign="top">180,00</td>
</tr>
<tr>
<td width="192" valign="top"><strong> </strong></td>
<td width="192" valign="top"><strong>Total</strong></td>
<td width="192" valign="top"><strong>R$ 1.512,00</strong></td>
</tr>
</tbody>
</table>
<p>Em outras palavras, você pode estar bebendo suas férias no Nordeste naquele cafezinho com a turma do escritório depois do almoço. Miserável? Será? Não tenho dúvidas que se eu ou você levantarmos todas as despesas rotineiras que não damos importância, chegaremos a valores bem interessantes do quanto desperdiçamos todos os dias e meses de nossas vidas.</p>
<h4><strong>PQP? Não é o que parece!</strong></h4>
<p>PQP é a forma que encontrei para me policiar ao assumir pequenas dívidas ou comprar determinado produto ou serviço. A idéia é super simples. Eu respondo três perguntas:</p>
<ul>
<li><strong>P</strong>reciso? &#8211; Eu realmente preciso comprar esse produto ou serviço? Será que eu consigo viver sem ele? Tem algum outro com menos recursos que me atenda com qualidade a um preço menor?</li>
<li><strong>Q</strong>uero? &#8211; Eu quero comprar isso? Ou estou comprando por impulso, pra seguir uma moda, ou não ficar de fora da rodinha de amigos?</li>
<li><strong>P</strong>osso? &#8211; Posso assumir essa dívida? Esse produto é razoável pra mim? Ou estou querendo comprar uma Ferrari só porque se juntar meu salário todo e não comer sobremesa nos almoços dá pra pagar as prestações em 20 anos?</li>
</ul>
<p><strong>Por onde começar?<br />
</strong>Se você realmente quiser começar a repensar seus gastos, comece listando seus gastos diários e mensais. Você perceberá que muitas das coisas que você paga são por coisas que você não <strong>p</strong>recisa. Um exemplo típico são as taxas de manutenção de conta corrente e de cartão de crédito. Provavelmente os serviços que você precisa do seu banco são os mesmos de quem tem apenas uma conta poupança, que não incide taxa alguma e ainda rende um cafézinho por mês, dependendo do valor aplicado. E anuidade de cartão de crédito? Com tantos cartões gratuitos você ainda paga por isso?</p>
<p><strong>Gostou?</strong> Comente! Esqueci alguma coisa? Comente também!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/investimentos-mercado/pqp-mais-dinheiro-na-minha-conta/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Convertendo filmes para seu iPod</title>
		<link>http://www.ricardomartins.info/blog/tecnologia/ipodme-convertendo-filmes-ipod/</link>
		<comments>http://www.ricardomartins.info/blog/tecnologia/ipodme-convertendo-filmes-ipod/#comments</comments>
		<pubDate>Wed, 14 Apr 2010 01:13:54 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[rapidinhas]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=392</guid>
		<description><![CDATA[A dica de hoje é super simples e surgiu da necessidade de converter um filme (com arquivo de legenda separado) para um formato que pudesse ser importado no iTunes (mp4) e posteriormente sincronizado com o iPod Touch.
Estou falando do iPodME. Software brasileiro disponível no site BaixaKi que cumpre muito bem seu objetivo. Ele é capaz [...]]]></description>
			<content:encoded><![CDATA[<p>A dica de hoje é super simples e surgiu da necessidade de converter um filme (com arquivo de legenda separado) para um formato que pudesse ser importado no iTunes (mp4) e posteriormente sincronizado com o iPod Touch.</p>
<p>Estou falando do iPodME. Software brasileiro <a title="Download do iPodMe 2.3 no site Baixaki" href="http://www.baixaki.com.br/download/ipodme.htm" target="_blank">disponível no site BaixaKi</a> que cumpre muito bem seu objetivo. Ele é capaz de converter longos filmes em cerca de 10 minutos, e dispensa instalação. O aplicativo é apenas um executável para windows (xp/vista/7).</p>
<p><a href="http://www.ricardomartins.info/blog/wp-content/uploads/2010/04/ipodme.png"><img class="alignright size-full wp-image-393" title="iPodME" src="http://www.ricardomartins.info/blog/wp-content/uploads/2010/04/ipodme.png" alt="Conversor de videos para iPod Touch" width="312" height="384" /></a>Após abri-lo, basta selecionar os filmes que deseja converter (como mostrado na imagem). Se houver um ou mais arquivos de legenda com o mesmo nome dentro da pasta do filme, o mesmo será convertido em legenda, num formato aceitável pelo iPod. Por exemplo: se o nome do filme é <strong>video.avi</strong>, o arquivo de legenda deverá se chamar <strong>video-en.srt</strong>. Observe que a sigla do idioma é necessária após o nome do arquivo principal e que o formato deve ser SRT.</p>
<p><a title="Download iPodMe" href="http://www.baixaki.com.br/download/ipodme.htm" target="_blank">Faça o download do iPodME aqui</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/tecnologia/ipodme-convertendo-filmes-ipod/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Upload no Picasa, sem o Picasa</title>
		<link>http://www.ricardomartins.info/blog/outros/upload-picasa-shell-cmd/</link>
		<comments>http://www.ricardomartins.info/blog/outros/upload-picasa-shell-cmd/#comments</comments>
		<pubDate>Mon, 15 Feb 2010 19:42:38 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Outros]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[rapidinhas]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=359</guid>
		<description><![CDATA[Diferente do FlickR do Yahoo!, o serviço de fotos do Google não tem muitos softwares que conversem com ele e que permitam gerenciar remotamente suas fotos, a não ser o próprio Google Picasa pra desktop.
Como eu não gosto muito dele, acabei descobrindo uma forma de enviar várias fotos do pc direto para um álbum no [...]]]></description>
			<content:encoded><![CDATA[<p>Diferente do <a title="Serviço de Fotos do Yahoo!" href="http://www.flickr.com/" target="_blank">FlickR</a> do Yahoo!, o serviço de fotos do Google não tem muitos softwares que conversem com ele e que permitam gerenciar remotamente suas fotos, a não ser o próprio <a title="Google Picasa para Desktop" href="http://picasa.google.com.br/" target="_blank">Google Picasa pra desktop</a>.</p>
<p>Como eu não gosto muito dele, acabei descobrindo uma forma de enviar várias fotos do pc direto para um álbum no Picasa, sem ter que instalar o software do Google no meu desktop.</p>
<p>Trata-se do <a title="PhotoLoader envia várias fotos para o picasa usando linha de comando" href="http://www.softpedia.com/progDownload/PhotoLoader-Download-140013.html" target="_blank">PhotoLoader</a>. Um software gratuito de linha de comando feito em Java, que funciona tanto no Windows quanto nos sistemas <em>*nix</em>, e não depende de instalação. Basta ter o Java instalado (você já deve ter, se não tiver, o site de download será aberto).</p>
<p>Uma vez descompactado, basta abrir o prompt (no caso do windows), ir até a pasta do aplicativo, e executá-lo como mostrado abaixo:</p>
<blockquote><p>C:/&gt; photo-loader -u USUARIO [-p SENHA] [-d DIRETORIO] [-a ALBUM] [-s TAMANHO_MAXIMO_DA_FOTO]</p>
<p>Exemplo: photo-loader -u martins -p minhasenha123 c:\fotos -a ViagemMiami -s 800</p></blockquote>
<p>O <strong>-s</strong> indica o tamanho máximo da largura ou altura de cada foto a ser enviada, economizando seu espaço. Ele faz o redimensionamento automático das fotos (em outra pasta) conforme o tamanho informado no parametro -s, e sobe as fotos no álbum automaticamente.</p>
<p>Há mais detalhes sobre os parâmetros e opções no Readme.txt do programa.</p>
<p><strong>O site de Download do PhotoLoader é <a title="PhotoLoader envia várias fotos para o picasa usando linha de comando" href="http://www.softpedia.com/progDownload/PhotoLoader-Download-140013.html" target="_blank">http://www.softpedia.com/progDownload/PhotoLoader-Download-140013.html</a></strong></p>
<p>Aproveite.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/outros/upload-picasa-shell-cmd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Firefox e Firebug: Os ladrões de memória. Será?</title>
		<link>http://www.ricardomartins.info/blog/outros/firefox-e-firebug-os-ladroes-de-memoria-sera/</link>
		<comments>http://www.ricardomartins.info/blog/outros/firefox-e-firebug-os-ladroes-de-memoria-sera/#comments</comments>
		<pubDate>Wed, 09 Dec 2009 00:11:14 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Outros]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[rapidinhas]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=321</guid>
		<description><![CDATA[Há 10 meses fiz um post sobre como otimizar o Firefox para que ele consuma menos memória ram.  Muita coisa mudou, e hoje vejo muita gente ainda reclamando do Firefox. Alguns estão até mudando para o Chrome e abrindo mão dos complementos do FF.
Além dos macetes que passei no artigo acima, percebi que um agravante [...]]]></description>
			<content:encoded><![CDATA[<p>Há 10 meses fiz um <a title="Firefox, devolve minha memória" href="http://www.ricardomartins.info/blog/tecnologia/otimizar-uso-memoria-firefox/" target="_self">post sobre como otimizar o Firefox</a> para que ele consuma menos memória ram.  Muita coisa mudou, e hoje vejo muita gente ainda reclamando do Firefox. Alguns estão até mudando para o Chrome e abrindo mão dos complementos do FF.</p>
<p>Além dos macetes que passei no artigo acima, percebi que um agravante para o problema era o Firebug. Isso mesmo, o complemento Firebug.</p>
<p>Ok, você já deve ter percebido isso também! Vamos ao que interessa: o que fazer?</p>
<p>Eu resolvi o problema de memória nos meus Firefox atualizando o Firebug para uma versão alpha mais recente. A versão disponível no portal oficial é da versão estável, que infelizmente se comporta pior que as versões alpha no consumo de memória.</p>
<p>Enquanto escrevo este post a versão oficial é a 1.4 (devoradora de memória ram) e as versões alpha estão na casa do 1.5.x.</p>
<p>Para resolver o problema, vá até o diretório &#8217;secreto&#8217; e releases do Firebug, o <a href="http://getfirebug.com/releases/firebug/1.5X/" target="_blank">http://getfirebug.com/releases/firebug/1.5X/</a> e instale o último .XPI disponível. Claro, desinstale o seu Firebug atual antes por favor.</p>
<p>O Firefox vai continuar consumindo mais memória que um Chrome, porém senti diferenças enormes com ele em diversas máquinas e continuo usando ele sem problemas. Espero que esta dica sirva pra você também. Se não servir, usa o IE 6 que é show de bola. =)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/outros/firefox-e-firebug-os-ladroes-de-memoria-sera/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows Authentication no PHP</title>
		<link>http://www.ricardomartins.info/blog/tecnologia/windows-authentication-no-php/</link>
		<comments>http://www.ricardomartins.info/blog/tecnologia/windows-authentication-no-php/#comments</comments>
		<pubDate>Thu, 01 Oct 2009 01:49:04 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[SEO e Marketing]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=277</guid>
		<description><![CDATA[Veja como integrar a autenticação do windows (NTLM) em sistemas PHP.]]></description>
			<content:encoded><![CDATA[<p>Windows Authentication ou Autenticação Integrada no PHP não poderia ser tão fácil.</p>
<p>Hoje ao ler uma entrevista com Manuel Lemos da Microsoft, ele explicou como é simples o funcionamento do recurso em sistemas PHP.</p>
<p><strong>Como integrar o  Windows Authentication no PHP?</strong><br />
Se você roda o php no IIS, para ativar o recurso basta ativar a autenticação NTLM em páginas PHP.<br />
No Apache, para ativar o recurso, basta ativar o módulo <em>mod_ntlm</em> no seu httpd.conf.<br />
O módulo para o Apache pode ser baixado em <a title="Mod Ntlm - Integrated Authentication no PHP" href="http://modntlm.sourceforge.net/" target="_blank">http://modntlm.sourceforge.net/</a>.</p>
<p>Feito isso, basta usar a variável de servidor <em>$_SERVER['LOGON_USER']</em> para recuperar o nome do usuário logado e checar se ele tem acesso à area ou módulo em questão.</p>
<p>Fácil né?</p>
<h6>Fonte: <a title="Entrevista com Manuel Lemos no PHPClasses.org" href="http://www.phpclasses.org/blog/post/102-Microsoft-promotes-the-careers-of-PHP-professionals.html" target="_blank">http://www.phpclasses.org/blog/post/102-Microsoft-promotes-the-careers-of-PHP-professionals.html</a></h6>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/tecnologia/windows-authentication-no-php/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Cartão de crédito virtual e descartável</title>
		<link>http://www.ricardomartins.info/blog/outros/cartao-de-credito-virtual-e-descartavel/</link>
		<comments>http://www.ricardomartins.info/blog/outros/cartao-de-credito-virtual-e-descartavel/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 01:52:57 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Outros]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[e-commerce]]></category>
		<category><![CDATA[rapidinhas]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=273</guid>
		<description><![CDATA[Uma forma de tomar cuidado com dados de cartão de crédito nas compras online, é criar um cartão de crédito descartável. Nesta matéria conto como funciona o EntroPay.]]></description>
			<content:encoded><![CDATA[<p>Ser um cartão de crédito virtual e descartável é a proposta da EntroPay. A idéia é simples e muito útil quando não confiamos no site que estamos comprando ou contratando serviços.</p>
<p><img class="alignleft size-full wp-image-274" title="Exemplo do cartao virtual Entropay" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/09/entropay1.jpg" alt="Exemplo do cartao virtual Entropay" width="270" height="234" />Com um cartão de crédito internacional, você deposita a quantia que deseja na sua conta EntroPay e distribui o valor entre cartões de crédito visa virtuais, que podem ser gerados na hora e são válidos em qualquer site que aceite a bandeira.</p>
<p>O mais legal é que tudo é feito na hora, e você pode se livrar facilmente dos cartões que gerou. Além disso, você limita o valor a ser gasto com cada cartão e pode ver o extrato dos mesmos em tempo quase real.</p>
<p>O site cobra uma taxa de 4,95%. Vale lembrar que para nós brasileiros ainda tem a taxa de IOF, cobrada em todas transações internacionais na fatura do cartão.</p>
<p>Veja mais detalhes no <a href="http://www.entropay.com/" target="_blank">site da Entropay www.entropay.com.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/outros/cartao-de-credito-virtual-e-descartavel/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Profiler no PHP com Cachegrind</title>
		<link>http://www.ricardomartins.info/blog/tecnologia/profiler-no-php-com-cachegrind/</link>
		<comments>http://www.ricardomartins.info/blog/tecnologia/profiler-no-php-com-cachegrind/#comments</comments>
		<pubDate>Sat, 29 Aug 2009 13:32:23 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=266</guid>
		<description><![CDATA[Saiba como fazer e interpretar arquivos de profiling do PHP usando xDebug e WinCacheGrind. Veja o quão dispendioso é cada trecho do seu programa desenvolvido em PHP e em outras linguagens.]]></description>
			<content:encoded><![CDATA[<p>Cachegrind é um<em> cache profiler</em> disponível no PHP e em diversas outras linguagens. Ele faz simulações detalhadas do cache do processador, e o mais legal de tudo: mostra quanto cada linha de código carregou o processador em milisegundos, ou %. Ele pode mostrar informações por função, por  módulo ou um resumo completo do programa.</p>
<p>Habilitando o cachegrind o programa pode ficar de 20 a 100 vezes mais lento, por isso vamos deixar pra brincar com ele só nos ambientes de teste/desenvolvimento, ok?</p>
<p>Cachegrind is a cache profiler. It performs detailed simulation of the I1, D1 and L2 caches in your CPU and so can accurately pinpoint the sources of cache misses in your code. It identifies the number of cache misses, memory references and instructions executed for each line of source code, with per-function, per-module and whole-program summaries. It is useful with programs written in any language. Cachegrind runs programs about 20&#8211;100x slower than normal.</p>
<p>Ouvi sobre cachegrind no Podcast do PHPSP, o <a title="Podcast do PHPSP #3 - PHP pra gente grande" href="http://phpsp.org.br/2009/08/24/phpspcast-3-des-sobrinhacao-php-pra-gente-grande/" target="_blank">PHPSPCast n. 3</a>.  Pra mim o recurso ainda é novidade, mas vou mostrar como funciona.</p>
<h2>Configurando o xDebug</h2>
<p>No mês passado fiz um post explicando sobre <a title="xDebug no PHP com Wamp e NetBeans" href="http://www.ricardomartins.info/blog/2009/06/debugando-em-php-com-wamp-e-netbeans/">como fazer debug no PHP com Wamp e Netbeans</a>, usando o XDebug. Siga os passos até terminar de instalar o xDebug no seu PHP/Wamp Server.</p>
<p>Feito isso, vamos abrir o php.ini e configurar a pasta do profiler, onde queremos salvar os arquivos de cachegrind para leitura. Para isso basta adicionar (ou modificar) as linhas a seguir na seção [XDebug]:</p>
<blockquote><p>xdebug.profiler_enable=1<br />
xdebug.profiler_output_dir=&#8221;<span style="color: #ff0000;">c:\wamp\xdebug</span>&#8220;</p></blockquote>
<p>E pronto. Agora é só executar suas páginas normalmente e olhar na pasta para ver se estão sendo gerados arquivos com nome <em>cachegrind.out</em>. Agora precisaremos de uma ferramenta para analizar esses arquivos.</p>
<h2>Analizando arquivos de profiler com WinCacheGrind</h2>
<p>WinCacheGrind é gratuíto e pode ser baixado em <a title="WincacheGrind Download" href="http://sourceforge.net/projects/wincachegrind/" target="_blank">http://sourceforge.net/projects/wincachegrind/</a>. Como o nome diz, ele só funciona no Windows. Mas há dezenas de aplicativos que fazem isso (até melhores) via web e também em outros OS.</p>
<p>Após instalá-lo, basta abrir os arquivos cachegrind gerados pelo xdebug. Ele automaticamente analiza o arquivo e tudo mais. Não há muito o que explicar sobre ele. Veja:</p>
<p><img class="aligncenter size-full wp-image-268" title="Tela do WinCacheGrind" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/08/wincachegrind2.jpg" alt="Tela do WinCacheGrind" width="597" height="488" /><br />
Você pode consultar linha por linha, ou um resumo completo do fonte.  Ele ainda mostra em formato de árvore, para que você possa ir abrindo as classes e ver que trecho prejudicou mais a performance do seu programa.</p>
<p>Como disse, há dezenas de programas que fazem a leitura da saída de profiling. Esse foi o que eu experimentei. Há o <a href="http://kcachegrind.sourceforge.net/html/Home.html" target="_blank">KCachegring</a> que roda em vários sistemas operacionais, ou o <a href="http://code.google.com/p/webgrind/" target="_blank">WebGrind</a> que roda no browser.</p>
<p>Espero ter dado o &#8216;empurrãozinho&#8217; que você precisava pra melhorar a forma com que você fazia análise de performance.</p>
<p>Colabore! Deixe seu comentário!</p>
<h3>Outras fontes</h3>
<p>WebGrind &#8211; <a href="http://code.google.com/p/webgrind/" target="_blank">http://code.google.com/p/webgrind/</a><br />
PHPSP &#8211; <a href="http://www.phpsp.org.br/" target="_blank">http://www.phpsp.org.br/</a> e <a href="http://phpsp.org.br/2009/05/04/analise-de-performance/" target="_blank">http://phpsp.org.br/2009/05/04/analise-de-performance/</a><br />
KCachegrind &#8211; <a href="http://kcachegrind.sourceforge.net/html/Home.html" target="_blank">http://kcachegrind.sourceforge.net/</a><br />
WinCacheGrind &#8211; <a href="http://sourceforge.net/projects/wincachegrind/" target="_blank">http://sourceforge.net/projects/wincachegrind/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/tecnologia/profiler-no-php-com-cachegrind/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Como aprender 400 palavras em inglês em 1 minuto</title>
		<link>http://www.ricardomartins.info/blog/outros/aprenda-400-palavras-em-ingles-em-1-minuto/</link>
		<comments>http://www.ricardomartins.info/blog/outros/aprenda-400-palavras-em-ingles-em-1-minuto/#comments</comments>
		<pubDate>Sun, 21 Jun 2009 20:54:11 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Outros]]></category>
		<category><![CDATA[cursos]]></category>
		<category><![CDATA[dicas]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=241</guid>
		<description><![CDATA[Aprenda a escrever 400 palavras em inglês em apenas 1 minuto. Parece até brincadeira, mas funciona.]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-medium wp-image-242" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/06/homer-scream-210x300.jpg" width="210" height="300" />Hoje estava navegando num<a title="Cursos Grátis" href="http://idealgratis.com/curso/" target="_blank"> site de cursos gratuitos</a> e me surpreendi com uma das propostas: aprender 400 palavras de inglês em apenas 1 minuto.  A proposta é seguir algumas regrinhas que permitem converter dezenas de palavras do português para o inglês. A pronúncia não é a mesma, mas a escrita é correta e existem algumas excessões, no entanto, vale a pena aprender para os momentos de apuros. As regras são:</p>
<p>1. Para todas as palavras em português que terminam em DADE (como a palavra cidade) retire o DADE e coloque em seu lugar TY e assim CIDADE passou a ser CITY.<br />
Veja alguns exemplos das centenas de palavras que você acabou de aprender:</p>
<p>CIDADE = CITY<br />
VELOCIDADE = VELOCITY<br />
SIMPLICIDADE = SIMPLICITY<br />
NATURALIDADE = NATURALITY<br />
CAPACIDADE = CAPACITY</p>
<p>2. Para todas as palavras em português que terminem em ÇÃO (como a palavra NAÇÃO) tire fora o ÇÃO e coloque em seu lugar TION e assim a palavra NAÇÃO passou a ser NATION (as respectivas pronúncias não importam no momento, e além disso você estaria sendo muito malcriado querendo exigir demais numa aula de graça!).<br />
Vejamos agora algumas das centenas de palavras em que a imensa maioria delas se aplica e essa regra:</p>
<p>SIMPLIFICAÇÃO = SIMPLIFICATION<br />
NAÇÃO = NATION<br />
OBSERVAÇÃO = OBSERVATION<br />
NATURALIZAÇÃO = NATURALIZATION<br />
SENSAÇÃO = SENSATION</p>
<p>3. Para os advérbios terminados em MENTE (como a palavra NATURALMENTE), tire o MENTE e em seu lugar coloque LLY ( e assim a palavra passou a ser NATURALLY.<br />
Quando o radical em português termina em L, como a palavra TOTALMENTE, acrescente apenas LY).</p>
<p>Veja agora alguns exemplos:<br />
NATURALMENTE = NATURALLY<br />
GENETICAMENTE = GENETICALLY<br />
ORALMENTE = ORALLY</p>
<p>4. Para as palavras terminadas em ÊNCIA (como no caso de ESSÊNCIA), tire o ÊNCIA e em seu lugar coloque ENCE. Eis algumas delas abaixo:</p>
<p>ESSÊNCIA = ESSENCE<br />
REVERÊNCIA = REVERENCE<br />
FREQÜÊNCIA = FREQUENCE<br />
ELOQÜÊNCIA = ELOQUENCE</p>
<p>5. Para as palavras terminadas em AL (como a palavra GENERAL) não mude nada, escreva exatamente como está em português e ela sai a mesma coisa em inglês.</p>
<p>Veja alguns exemplos:</p>
<p>NATURAL = NATURAL<br />
TOTAL = TOTAL<br />
GENERAL = GENERAL<br />
FATAL = FATAL<br />
SENSUAL = SENSUAL</p>
<p>Espero que tenham gostado.</p>
<h6>Fonte: <a href="http://idealgratis.com/curso/" target="_blank">Ideal Cursos Grátis</a></h6>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/outros/aprenda-400-palavras-em-ingles-em-1-minuto/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Debugando em PHP com Wamp e NetBeans</title>
		<link>http://www.ricardomartins.info/blog/outros/debugando-em-php-com-wamp-e-netbeans/</link>
		<comments>http://www.ricardomartins.info/blog/outros/debugando-em-php-com-wamp-e-netbeans/#comments</comments>
		<pubDate>Wed, 17 Jun 2009 01:23:13 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Outros]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=210</guid>
		<description><![CDATA[Aprenda como configurar o Wamp e o Netbeans e seus componentes para um debug eficiente em PHP e abandonar os velhos var_dump e 'echos' de debug.]]></description>
			<content:encoded><![CDATA[<p>Hoje vou falar um pouco sobre debug no php. Um recurso pouco explorado pela maioria dos programadores php que conheço, e até por mim mesmo que apesar de ter mais de 5 anos de experiência com a linguagem, só agora resolvi fazer um debug de verdade funcionar.</p>
<p>Debugar códigos na maioria das linguagens de programação, permite que você navegue por dentro do código e suas funções na medida que o programa ou página é executada, podendo acompanhar o valor de variáveis e inclusive alterá-las, o que ajuda em 90% o desenvolvedor a encontrar falhas ou pontos específicos em uma aplicação.</p>
<p>Então vamos ao que interessa&#8230;</p>
<p>Para ser rápido, presumimos que você tenha instalado em seu ambiente windows o pacote Wamp e o NetBeans 6.5.x, ambos com suas configurações originais.</p>
<blockquote><p>- <a title="Download Wamp Server - Pacote de Servidor Apache + Mysql + PHP para Windows" href="http://www.wampserver.com/en/download.php" target="_blank">Fazer download do Wamp Server</a>.<br />
- <a title="Ferramenta visual (IDE) de desenvolvimento para PHP." href="http://www.netbeans.org/downloads/start.html?platform=windows&amp;lang=pt_BR&amp;option=php&amp;version=6.5.1" target="_blank">Fazer download do NetBeans 6.5.1  para PHP</a>.</p></blockquote>
<p>Verifique se seu Wamp está instalado corretamente executando-o e acessando o site http://localhost/ no seu navegador. Se aparecer a página do Wamp é porque tudo ocorreu direitinho.</p>
<p><img class="alignleft size-thumbnail wp-image-222" title="Adicionando exceção ao firewall do windows" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/06/firewall-windows-150x150.jpg" alt="Adicionando exceção ao firewall do windows" width="150" height="150" />1. A primeira coisa que vamos fazer é ir até o Firewall do windows, no Painel de Controle e adicionar a porta TCP 9000 como exceção, para evitar problemas com o debug no netbeans.</p>
<p>2. Na seqüência, abra seu NetBeans e vá ao menu Ferramentas -&gt; Opções (Tools -&gt; Options) e clique no ícone do PHP. Em seguida verifique se a porta de depuração é a 9000, e altere caso não seja. Clique em OK.</p>
<p>3. Você precisará de uma extensão de debug do php. No meu caso, utilizei o XDebug. Veja a versão do seu PHP na sua pagina inicial do Wamp Server (http://localhost/) e faça o download da .DLL na versão apropriada:</p>
<blockquote><p>- <a title="XDebug para php 5.2 VC6" href="http://www.xdebug.org/files/php_xdebug-2.0.4-5.2.8.dll" target="_blank">Faça download do XDebug para versão do PHP 5.2</a>.<br />
- <a title="XDebug para php 5.3 VC6" href="http://www.xdebug.org/files/php_xdebug-2.0.4-5.3.0-vc6.dll" target="_blank">Disponível também para versão 5.3 aqui</a>.<br />
- <a title="Outras versões do XDebug" href="http://www.xdebug.org/download.php" target="_blank">Consulte outras versões</a>.</p></blockquote>
<p>4. Coloque o arquivo DLL que acabou de baixar na pasta EXT do PHP. Se você instalou o wamp de forma padrão esta pasta será &#8220;C:\wamp\bin\php\php5.2.5\ext&#8221; ou algo parecido dependendo da versão instalada.</p>
<p>5. Feito isso, inicie o Wamp Server (caso ele não esteja iniciado), clique no ícone dele ao lado do relógio e procure pelo arquivo php.ini. (Menu: PHP-&gt;php.ini).</p>
<p>6. O arquivo abrirá no bloco de notas. Vá até o final do arquivo e adicione as linhas abaixo:</p>
<blockquote><p>[XDebug]<br />
; Only Zend OR (!) XDebug<br />
zend_extension_ts = <span style="color: #ff0000;">&#8220;C:\wamp\bin\php\php5.2.5\ext\php_xdebug-2.0.4-5.2.8.dll</span>&#8221;<br />
; XAMPP and XAMPP Lite 1.7.0 and later come with a bundled xdebug at &lt;XAMPP_HOME&gt;/php/ext/php_xdebug.dll, without a version number.<br />
xdebug.remote_enable=1<br />
xdebug.remote_host=127.0.0.1<br />
xdebug.remote_port=9000<br />
; Port number must match debugger port number in NetBeans IDE Tools &gt; Options &gt; PHP<br />
xdebug.remote_handler=dbgp<br />
xdebug.profiler_enable=1<br />
xdebug.profiler_output_dir=&#8221;c:\wamp\xdebug&#8221;</p></blockquote>
<p>Altere o caminho da dll se necessário, colocando o caminho exato da pasta e do arquivo que você acabou de fazer download no passo anterior. Ele pode variar dependendo da versão conforme falei.</p>
<p>7. Salve o arquivo e reinicie todos os serviços do wamp na opção &#8220;Reiniciar todos os serviços&#8221; que aparece no menu do relógio.</p>
<p>8. Para confirmar a instalação, acesse o link do phpinfo() que aparece na página inicial do seu wamp (http://localhost/?phpinfo=1).</p>
<p>9. Se tudo correu bem, o final do primeiro trecho do phpinfo deverá ser parecido com este:<br />
<img class="aligncenter size-full wp-image-227" title="phpinfo com xdebug instalado" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/06/zend-xdebug1.jpg" alt="phpinfo com xdebug instalado" width="610" height="89" /></p>
<p>Dica:  se você já tinha uma instalação anterior, certifique-se de que não há componentes de debug do zend instalados e configurados no php.ini. Os dois não se entendem muito bem.</p>
<h2>Finalmente debugando no NetBeans</h2>
<p>Se você chegou até aqui, parabéns. O mais difícil já foi (eu acho). Agora debugar fica mais fácil.</p>
<p>Abra seu NetBeans e crie um arquivo PHP qualquer ou abra um projeto existente. Diferente de outros meios de debug,<img class="size-full wp-image-229 alignright" title="marcando o breakpoint no netbeans" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/06/codigo1.jpg" alt="marcando o breakpoint no netbeans" width="313" height="167" /> nada precisará ser alterado no código.</p>
<p>Vá até a linha que deseja que o debug comece a ser executado e pressione Ctrl + F8 ou clique no número da linha ao lado esquerdo do código. (Veja ao lado)</p>
<p>Em seguida, mande depurar o arquivo apertando Ctrl + Shift + F5 ou indo ao menu &#8220;Depurar -&gt; Depurar <em>arquivo</em>.php&#8221;.</p>
<p>Na janela que se abrirá marque a opção PHP do lado do servidor.</p>
<p><img class="alignleft size-full wp-image-231" title="breakpoint no netbeans" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/06/codigo2.jpg" alt="breakpoint no netbeans" width="270" height="78" />Uma nova janela do navegador se abrirá e a execução irá parar no ponto de interrupção que determinamos com uma setinha verde apontando a linha do código que está sendo executada.  Você pode alterar o valor das variáveis em tempo de execução, ou criar observadores (watchers) para elas.</p>
<p>Para continuar a execução basta apertar F5 ou o botão <img class="alignnone size-full wp-image-232" title="continue-debugging-session" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/06/continue-debugging-session.png" alt="continue-debugging-session" width="30" height="30" /> no próprio NetBeans.</p>
<p>Isso tudo que falei é apenas o básico do processo de debug que o netbeans permite fazer. Existem outros métodos como utilizando o plugin FirePhp para o Firefox, mas não falarei disso desta vez.</p>
<p>Espero que esta seja uma boa alternativa pra você no lugar dos velhos &#8216;echos&#8217; perdidos no seu código fonte. <img src='http://www.ricardomartins.info/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<blockquote><p>Para ver e aprender mais sobre o assunto, <a title="Debugging no NetBeans" href="http://www.netbeans.org/kb/docs/php/debugging.html" target="_blank">veja a matéria sobre debugging na página especial da netbeans </a>(em inglês). Tem um passo-a-passo do processo de debug bem bacana.</p></blockquote>
<p><strong>Update (09-dez-2009):</strong> as versões que sugeri para download são para PHP&#8217;s compilados com VC6. Veja qual a forma de compilação do seu php no phpinfo(), no item &#8216;Compiler&#8217;. Ex: MSVC6 (Visual C++ 6.0)  corresponde ao VC6 do Xdebug. Baixe a versão adequada ao seu PHP, não esquecendo de substituir o nome da DLL no php.ini confome mostrado acima.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/outros/debugando-em-php-com-wamp-e-netbeans/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Expressões Regulares</title>
		<link>http://www.ricardomartins.info/blog/tecnologia/expressoes-regulares/</link>
		<comments>http://www.ricardomartins.info/blog/tecnologia/expressoes-regulares/#comments</comments>
		<pubDate>Mon, 30 Mar 2009 11:20:16 +0000</pubDate>
		<dc:creator>Ricardo Martins</dc:creator>
				<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[dicas]]></category>
		<category><![CDATA[rapidinhas]]></category>

		<guid isPermaLink="false">http://www.ricardomartins.info/blog/?p=188</guid>
		<description><![CDATA[Dicas pra quem gosta de Expressões Regulares, quer aprender ou pra quem quer tudo mastigado.]]></description>
			<content:encoded><![CDATA[<p>A rapidinha da semana fica para as expressões regulares, que existem desde 1943 e implantada na informática em 1986 no pacote C chamado regex.<br />
Bom, não vou me aprofundar muito no assunto nem explicar aqui como as expressões regulares funcionam. O assunto é um tanto extenso.<br />
O que gostaria é de compartilhar duas fontes que ajudam aqueles que querem aprender e aqueles que apenas querem procurar expressões regulares prontas e ter tudo mastigado.</p>
<p><img class="alignleft size-full wp-image-191" title="Livro: Expressões Regulares" src="http://www.ricardomartins.info/blog/wp-content/uploads/2009/03/regexp1.jpg" alt="Livro: Expressões Regulares" width="79" height="120" /></p>
<p>A primeira dica é o site <a title="Expressões Regulares Prontas" href="http://www.regexlib.com/" target="_blank">http://www.regexlib.com/</a> que traz mais de 2400 expressões regulares como validadores de e-mail, domínio, datas, telefone, urls e muito mais.</p>
<p>A segunda dica, pra quem quer aprender, é o livro &#8220;Expressões Regulares&#8221; do Aurélio Marinho Jargas. O livro trata das expressões de um jeito divertido (afinal, expressões regulares em geral são vistas como coisa pra louco) e fácil de memorizar.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ricardomartins.info/blog/tecnologia/expressoes-regulares/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
