<?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>Daniel&#039;s Blog</title>
	<atom:link href="http://drfranca.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://drfranca.com/blog</link>
	<description>PHP, Javascript e afins...</description>
	<lastBuildDate>Thu, 13 May 2010 19:18:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Cache e redirecionamento .htaccess</title>
		<link>http://drfranca.com/blog/dicas/cache-e-redirecionamento-htaccess/</link>
		<comments>http://drfranca.com/blog/dicas/cache-e-redirecionamento-htaccess/#comments</comments>
		<pubDate>Thu, 13 May 2010 19:14:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Dicas]]></category>

		<guid isPermaLink="false">http://drfranca.com/blog/?p=71</guid>
		<description><![CDATA[Case: Você tem um blog e comprou os domínios  &#8221;.com.br&#8221;, &#8220;.com&#8221;, &#8220;.net&#8221; etc&#8230; Problema sério inicial é o conteúdo duplicado que isso vai gerar para o google, segundo que fica feio né. Bom, solução para isso é bem simples, você escolhe o seu domínio principal e diz no .htaccess que tudo que for diferente disso [...]]]></description>
			<content:encoded><![CDATA[<p>Case: Você tem um blog e comprou os domínios  &#8221;.com.br&#8221;, &#8220;.com&#8221;, &#8220;.net&#8221; etc&#8230;</p>
<p>Problema sério inicial é o <a href="http://www.mestreseo.com.br/conteudo-duplicado/conteudo-duplicado">conteúdo duplicado</a> que isso vai gerar para o google, segundo que fica feio né.</p>
<p>Bom, solução para isso é bem simples, você escolhe o seu domínio principal e diz no .htaccess que tudo que for diferente disso e passar por ele, tem que ir para o que você escolheu e permanentemente(301).</p>
<pre class="brush: plain">Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !seudominio.com$ [NC]
RewriteRule ^(.*)$ http://seudominio.com/$1 [L,R=301]</pre>
<p>Bom, agora você que é um desenvolvedor preocupado com a velocidade do site e com seus visitantes, vale colocar estas configs no seu .htaccess, faça o teste e da uma olhada nos pontos que vai ganhar no <a href="http://code.google.com/intl/pt-BR/speed/page-speed/">PageSpeed do Google</a>.</p>
<pre class="brush: plain">
# Habilita a expiração e coloca o padrão para 0
ExpiresActive On
ExpiresDefault A0

# Coloca 1 semanha de cache para arquivos alterados com frequência
<FilesMatch "\.(xml|txt|html|js|css)$">
ExpiresDefault A604800
Header append Cache-Control "proxy-revalidate"
</FilesMatch>

# Coloca 2 meses de cache para media, como imagens, flash, etc.
<FilesMatch "\.(gif|jpg|jpeg|png|swf)$">
ExpiresDefault A4838400
Header append Cache-Control "public"
</FilesMatch>

#compressão
<FilesMatch "\.(js|css|html|htm|php|xml)$">
SetOutputFilter DEFLATE
</FilesMatch>
</pre>
<p>Só lembrando que o tempo de expiração dependem muito da sua aplicação, se você e sua equipe alteram o CSS todos os dias, não vai colocar cache de 1 semana né?! <a href="http://www.askapache.com/htaccess/speed-up-your-site-with-caching-and-cache-control.html#htaccess-time-cheatsheet">Confira tabela</a>.<br />
Outra coisa importante de se dizer é que o ganho de compressão é grande para o visitante do seu site, masss, seu servidor vai pagar o preço, e dependendo do seu acesso e do seu servidor, pode ter problemas, se possível monitore.</p>
<p>Bom, espero que ajude alguém, qualquer dúvida, comente.</p>
<p>Até a próxima.</p>
<p><a href="http://www.askapache.com/htaccess/speed-up-your-site-with-caching-and-cache-control.html">Fonte</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://drfranca.com/blog/dicas/cache-e-redirecionamento-htaccess/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Review &#8211; Teclado Microsoft Wired 600</title>
		<link>http://drfranca.com/blog/pseudo-reviews/review-teclado-microsoft-wired-600/</link>
		<comments>http://drfranca.com/blog/pseudo-reviews/review-teclado-microsoft-wired-600/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 01:11:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Pseudo-reviews]]></category>
		<category><![CDATA[review]]></category>

		<guid isPermaLink="false">http://drfranca.com/blog/?p=50</guid>
		<description><![CDATA[Bom, 2 anos depois de comprar o PC, resolvi trocar o monitor por um Samsung P2370 23&#8243;, comprei uma multifuncional HP F4280 e chegada a hora de trocar o teclado vagabundis que veio de brinde(já da pra imaginar né?). Bom, primeiro já vou adiantar que as únicas coisas, pra mim, que prestam da Microsoft é [...]]]></description>
			<content:encoded><![CDATA[<p>Bom, 2 anos depois de comprar o PC, resolvi trocar o monitor por um <a title="Monitor LCD" href="http://www.samsung.com/br/consumer/it-products/monitores-displays/lcd-widescreen/LS23EFHKFVLZD/index.idx?pagetype=prd_detail" target="_blank">Samsung P2370 23&#8243;</a>, comprei uma <a title="Multifuncional HP" href="http://h10010.www1.hp.com/wwpc/br/pt/sm/WF06b/18972-18972-238444-410635-410635-3390945-3390951.html" target="_blank">multifuncional HP F4280</a> e chegada a hora de trocar o teclado vagabundis que veio de brinde(já da pra imaginar né?).</p>
<p>Bom, primeiro já vou adiantar que as únicas coisas, pra mim, que prestam da Microsoft é o Windows XP e seus periféricos(mouse, teclado, webcam, etc), sendo assim como já tenho mouse e webcam da mesma, optei pelo teclado da marca. Depois de um tempo namorando o <a title="Teclado Microsoft" href="http://www.microsoft.com/brasil/hardware/mouseandkeyboard/productdetails.aspx?pid=111" target="_blank">modelo que uso no trabalho</a>, descobri que um wireless não me encanta, mas&#8230; always a catch, a ergonomia do danado é violenta, ressaltando a maciez das teclas.</p>
<p>Por fim andando pela loja da Kalunga topo com o modelo <a title="Teclado Microsoft 600" href="http://www.microsoft.com/brasil/hardware/mouseandkeyboard/productdetails.aspx?pid=039" target="_blank">Microsof Wired Keyboard 600</a>:</p>
<p><img class="alignnone size-full wp-image-54" title="mk_wiredkb600blk_largerview" src="http://drfranca.com/blog/wp-content/uploads/2010/02/mk_wiredkb600blk_largerview1.jpg" alt="mk_wiredkb600blk_largerview" width="520" height="220" /></p>
<p><strong>1 &#8211; Atalhos multimídia:</strong></p>
<p>Nada demais, play, pause e volume, particularmente não estou acostumado a usar multimídia de teclado, de vez em quando quebra o galho o mute, e só.</p>
<p><strong>2 &#8211; Teclas silenciosas:</strong></p>
<p>Isso realmente eu gosto, teclado barulhento é um saco, principalmente quando se trabalha com mais pessoas do lado.</p>
<p><strong>3 &#8211; Atalho pra calculadora:</strong></p>
<p>Tem mais utilidade pra mim que o multimídia, principalmente naquele layout que você quer deixar como o designer mandou, e se você acha que não, responda rápido 7&#215;9=? . <img src='http://drfranca.com/blog/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' /> </p>
<p><strong>4 &#8211; Cabo USB:</strong></p>
<p>Sim meu antigo era P2, e sim, é a cabo(drr..). Bem simples, trocar pilha de teclado é a treva! <img src='http://drfranca.com/blog/wp-includes/images/smilies/icon_neutral.gif' alt=':|' class='wp-smiley' /> </p>
<p><strong>5 &#8211; Teclas baixas:</strong></p>
<p>Além de aumentar a velocidade de digitação, aumenta o conforto.</p>
<p><strong>Dica para o fabricante:</strong></p>
<p><strong><img class="alignleft size-full wp-image-55" title="f5" src="http://drfranca.com/blog/wp-content/uploads/2010/02/f5.jpg" alt="f5" width="190" height="175" /><br />
</strong></p>
<p>Pra galera Web Developer seria excelente! <img src='http://drfranca.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Bom por hoje é só, espero que tenham gostado do meu primeiro pseudo-review, eu gostei!</p>
]]></content:encoded>
			<wfw:commentRss>http://drfranca.com/blog/pseudo-reviews/review-teclado-microsoft-wired-600/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Translate plugin &#8211; Smarty Template</title>
		<link>http://drfranca.com/blog/smarty-template/translate-plugin-smarty-template/</link>
		<comments>http://drfranca.com/blog/smarty-template/translate-plugin-smarty-template/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 17:44:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Smarty template]]></category>

		<guid isPermaLink="false">http://drfranca.com.br/blog/?p=32</guid>
		<description><![CDATA[function smarty_block_translate ($params, $content, &#38;$smarty, &#38;$repeat) { if (isset($content)) { global $lang; if(isset($lang)){ $cd_language = isset($params['lang'])?$params['lang']:LANG; if(isset($params['type'])){ if($params['type']=='date'){ $format = isset($lang['d/m/Y'][$cd_language])?$lang['d/m/Y'][$cd_language]:'d/m/Y'; $result = date($format,$content); } }else if(isset($lang[$content][$cd_language])){ $result = $lang[$content][$cd_language]; } if(isset($result)){ return $result; } } return $content; } }]]></description>
			<content:encoded><![CDATA[<pre class="brush: php">function smarty_block_translate ($params, $content, &amp;$smarty, &amp;$repeat) {
  if (isset($content)) {
     global $lang;
     if(isset($lang)){
        $cd_language = isset($params['lang'])?$params['lang']:LANG;
        if(isset($params['type'])){
           if($params['type']=='date'){
              $format = isset($lang['d/m/Y'][$cd_language])?$lang['d/m/Y'][$cd_language]:'d/m/Y';
              $result = date($format,$content);
           }
        }else if(isset($lang[$content][$cd_language])){
           $result = $lang[$content][$cd_language];
        }
        if(isset($result)){
           return $result;
        }
    }
    return $content;
  }
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://drfranca.com/blog/smarty-template/translate-plugin-smarty-template/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Parse JSON nativo e &#8220;inativo&#8221;.</title>
		<link>http://drfranca.com/blog/javascript/parse-json-nativo-e-inativo/</link>
		<comments>http://drfranca.com/blog/javascript/parse-json-nativo-e-inativo/#comments</comments>
		<pubDate>Mon, 06 Jul 2009 21:42:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[performance]]></category>

		<guid isPermaLink="false">http://drfranca.com.br/blog/?p=31</guid>
		<description><![CDATA[Opá! Milagres acontecem até mesmo para um ateu! To eu aqui de novo em menos de 1 mês!Bom, vamos lá! Case: To de boa tentando otimizar um JS e tals, ai entendo depois de anos de trabalho que armazenar dados em HTML quando carrega a página, quando não quer ou não da pra fazer AJAX [...]]]></description>
			<content:encoded><![CDATA[<p>Opá! Milagres acontecem até mesmo para um ateu! To eu aqui de novo em menos de 1 mês!<br />Bom, vamos lá!</p>
<p>Case: To de boa tentando otimizar um JS e tals, ai entendo depois de anos de trabalho que armazenar dados em HTML quando carrega a página, quando não quer ou não da pra fazer AJAX na bagaça mas tem que ficar 2.0, é idiotice.</p>
<p>Sol: Pego meu array PHP, aplico um json_encode() foderoso e colo dentro da variável javascript direto,! Pouts, sussa! Posso fazer isso assim:</p>
<p>var </p>
<pre class="brush: php">
galerias_multimidia = <?= json_encode($array)?>;
</pre>
<p>masss&#8230; não é o caso, eu montei a string json na unha(meio-mané)! RÁ!</p>
<p>Simprão! Só rodar nesse esquema que ta valendo.</p>
<pre class="brush: js">
var myObject = (JSON)?JSON.parse(myJSONtext): eval('(' + myJSONtext + ')');
</pre>
<p>Precisa explicar como usa não né! Percebi!<br />Fui!</p>
]]></content:encoded>
			<wfw:commentRss>http://drfranca.com/blog/javascript/parse-json-nativo-e-inativo/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Comentários condicionais dentro do CSS</title>
		<link>http://drfranca.com/blog/sem-categoria/comentarios-condicionais-dentro-do-css/</link>
		<comments>http://drfranca.com/blog/sem-categoria/comentarios-condicionais-dentro-do-css/#comments</comments>
		<pubDate>Fri, 03 Jul 2009 20:58:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Sem categoria]]></category>

		<guid isPermaLink="false">http://drfranca.com.br/blog/?p=30</guid>
		<description><![CDATA[Opa pessoal!! To vivo! hehe! Dica rápida para a galera que ainda usa hacks css ou para quem precisa consertar a caca feita por alguma biblioteca. {/* any IE */float: expression(&#8216;none&#8217;);/* IE 5.x */}{/* any Moz */float: expression(&#8216;none&#8217;);/* Moz 2.x */} Lembrando que se você montou o layout desde o começo e em determinado momento [...]]]></description>
			<content:encoded><![CDATA[<p>Opa pessoal!! To vivo! hehe!</p>
<p>Dica rápida para a galera que ainda usa hacks css ou para quem precisa consertar a caca feita por alguma biblioteca.</p>
<p>{/* any IE */float: expression(&#8216;none&#8217;);/* IE 5.x */}<br />{/* any Moz */float: expression(&#8216;none&#8217;);/* Moz 2.x */}</p>
<p>Lembrando que se você montou o layout desde o começo e em determinado momento precisou de um hack, comece de novo, leia, aprenda! Hoje em dia só utilizo hacks para consertar bibliotecas que geram estilos e aí tenho que me virar para consertar em tempo de execução.<br />FKDK! </p>
<p>Abraços e não precisa de explicação como se usa os comments não né!?</p>
]]></content:encoded>
			<wfw:commentRss>http://drfranca.com/blog/sem-categoria/comentarios-condicionais-dentro-do-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WHERE?!!!</title>
		<link>http://drfranca.com/blog/sem-categoria/where/</link>
		<comments>http://drfranca.com/blog/sem-categoria/where/#comments</comments>
		<pubDate>Mon, 08 Jun 2009 21:00:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Sem categoria]]></category>

		<guid isPermaLink="false">http://drfranca.com.br/blog/?p=29</guid>
		<description><![CDATA[Tabela de salários em TI, divulgada pela &#8220;Veja&#8221; do TI, nossa queridona &#8220;INFO&#8221; ICSO NON ECZISTE!! Rá!]]></description>
			<content:encoded><![CDATA[<p><a href="http://info.abril.com.br/professional/salarios/">Tabela de salários em TI, divulgada pela &#8220;Veja&#8221; do TI, nossa queridona &#8220;INFO&#8221;</a></p>
<p>ICSO NON ECZISTE!!</p>
<p>Rá!</p>
]]></content:encoded>
			<wfw:commentRss>http://drfranca.com/blog/sem-categoria/where/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Chrome experiments</title>
		<link>http://drfranca.com/blog/sem-categoria/chrome-experiments/</link>
		<comments>http://drfranca.com/blog/sem-categoria/chrome-experiments/#comments</comments>
		<pubDate>Wed, 29 Apr 2009 02:16:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Sem categoria]]></category>

		<guid isPermaLink="false">http://drfranca.com.br/blog/?p=28</guid>
		<description><![CDATA[Aew pessoal, link muito interessante para quem curte javascript como eu&#8230; É uma listinha de exemplos utilizando bibliotecas javascript muito bem elaboradas, vale a pena dar uma navegada. link: chromeexperiments Abraços!!!]]></description>
			<content:encoded><![CDATA[<p>Aew pessoal, link muito interessante para quem curte javascript como eu&#8230;</p>
<p>É uma listinha de exemplos utilizando bibliotecas javascript muito bem elaboradas, vale a pena dar uma navegada.</p>
<p>link: <a href="http://www.chromeexperiments.com/">chromeexperiments</a> </p>
<p>Abraços!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://drfranca.com/blog/sem-categoria/chrome-experiments/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Post rápido!!</title>
		<link>http://drfranca.com/blog/php/post-rapido/</link>
		<comments>http://drfranca.com/blog/php/post-rapido/#comments</comments>
		<pubDate>Thu, 23 Apr 2009 19:17:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://drfranca.com.br/blog/?p=27</guid>
		<description><![CDATA[Estou começando a procura por um bom(lê-se:rápido,cache memória, vários db&#8217;s, linha de aprendizado boa,etc.) framework e encontrei este site que nos mostra alguns pontos interessantes entre os disponíveis hoje em dia. Abraços e bora programar!]]></description>
			<content:encoded><![CDATA[<p>Estou começando a procura por um bom(lê-se:rápido,cache memória, vários db&#8217;s, linha de aprendizado boa,etc.) framework e encontrei este site que nos mostra alguns pontos interessantes entre os disponíveis hoje em dia.</p>
<p>Abraços e bora programar!</p>
]]></content:encoded>
			<wfw:commentRss>http://drfranca.com/blog/php/post-rapido/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Não sei PHP avançado, mas quem me ensina?</title>
		<link>http://drfranca.com/blog/sem-categoria/nao-sei-php-avancado-mas-quem-me-ensina/</link>
		<comments>http://drfranca.com/blog/sem-categoria/nao-sei-php-avancado-mas-quem-me-ensina/#comments</comments>
		<pubDate>Wed, 08 Apr 2009 13:01:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Sem categoria]]></category>

		<guid isPermaLink="false">http://drfranca.com.br/blog/?p=26</guid>
		<description><![CDATA[Sou um entusiasta de PHP, gosto mesmo de ler tudo que encontro sobre PHP, apesar do tempo curto.Mas, temos um problema, onde estão as informações?No site do php.net?NÂO! tudo que é avançado em PHP, não tem exemplo no php.net, e uma descrição muito vaga.Aí alguem me diz: &#8220;Vai ler em inglês,alemão, etc, mete a cara [...]]]></description>
			<content:encoded><![CDATA[<p>Sou um entusiasta de PHP, gosto mesmo de ler tudo que encontro sobre PHP, apesar do tempo curto.<br />Mas, temos um problema, onde estão as informações?<br />No site do php.net?<br />NÂO! tudo que é avançado em PHP, não tem exemplo no php.net, e uma descrição muito vaga.<br />Aí alguem me diz: &#8220;Vai ler em inglês,alemão, etc, mete a cara no google!!!&#8221;.<br />BLZA pimpão! Agora você gênio me diz uma coisa.<br />Pra que serve e porque eu usaria:<br />implements, abstract, interface, reflection, SPL, Trow, entre outros&#8230;<br />Teria como eu fazer uma puta cagada usando o APC? Tem? Me mostra um link dizendo isso. Se eu consigo fazer sites sem utilizar essas ferramentas, porquê eu usaria? Organização? Desempenho?</p>
<p>To meio revoltado hoje, depois de tanto pesquisar sobre SPL e APC, ainda fico na dúvida se utilizo ou não&#8230; afinal desenvolver o sistema inteiro baseado em algo que não confia ou não conhece profundamente, é complicadíssimo, tem chefes, prazos, cobranças em geral.</p>
<p>Se é preguiça ou falta de métodos de pesquisa, eu nao sei!<br />Boa vontade tenho e se alguém estiver afim de falar sobre o assunto, estou a disposição sempre&#8230;</p>
<p>Abraços!</p>
]]></content:encoded>
			<wfw:commentRss>http://drfranca.com/blog/sem-categoria/nao-sei-php-avancado-mas-quem-me-ensina/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lista de UI&#8217;s bem legais</title>
		<link>http://drfranca.com/blog/javascript/lista-de-uis-bem-legais/</link>
		<comments>http://drfranca.com/blog/javascript/lista-de-uis-bem-legais/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 11:53:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://drfranca.com.br/blog/?p=25</guid>
		<description><![CDATA[Dica do Julio Greff de algumas bibliotecas para interface de usuários bem legais http://juliogreff.blog.br/interfaces-de-usuario-com-javascript/Naveguei em algumas delas onde a Jquery UI já utilizo e me surpreendi com a UIZE, não conhecia e achei muito interessante&#8230; Bom, fica aí a dica e bom começo de semana! Abraços!]]></description>
			<content:encoded><![CDATA[<p>Dica do <a href="http://juliogreff.blog.br/">Julio Greff</a> de algumas bibliotecas para interface de usuários bem legais</p>
<p><a href="http://juliogreff.blog.br/interfaces-de-usuario-com-javascript/">http://juliogreff.blog.br/interfaces-de-usuario-com-javascript/</a><br />Naveguei em algumas delas onde a Jquery UI já utilizo e me surpreendi com a UIZE, não conhecia e achei muito interessante&#8230;</p>
<p>Bom, fica aí a dica e bom começo de semana!</p>
<p>Abraços!</p>
]]></content:encoded>
			<wfw:commentRss>http://drfranca.com/blog/javascript/lista-de-uis-bem-legais/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
