<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3.1" -->
<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/"
	>

<channel>
	<title>souweb</title>
	<link>http://blog.souweb.info</link>
	<description>carlostristacci</description>
	<pubDate>Thu, 11 Dec 2008 00:08:33 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.1</generator>
	<language>en</language>
			<item>
		<title>Classe FileReferenceList (Português)</title>
		<link>http://blog.souweb.info/filereferencelist/</link>
		<comments>http://blog.souweb.info/filereferencelist/#comments</comments>
		<pubDate>Sun, 26 Oct 2008 19:02:02 +0000</pubDate>
		<dc:creator>Carlos Tristacci</dc:creator>
		
		<category><![CDATA[ActionScript 3.0]]></category>

		<category><![CDATA[Adobe AIR]]></category>

		<category><![CDATA[Adobe Flash]]></category>

		<category><![CDATA[Adobe Flex]]></category>

		<category><![CDATA[Orientação a Objetos]]></category>

		<guid isPermaLink="false">http://blog.souweb.info/filereferencelist/</guid>
		<description><![CDATA[
Fonte: http://livedocs.adobe.com/flex/201/langref/flash/net/FileReferenceList.html 
A classe FileReferenceList fornece recursos para permitir o usuário selecionar um ou mais arquivos para upload. Um objeto FileReferenceList representa um grupo de um ou mais arquivos locais no disco do usuário como um array de objetos FileReference.
Para trabalhar com a classe FileReferenceList:

 Instanciar a classe: var frl:FileReferenceList = new FileReferenceList();
Chamar o método FileReferenceList.browse(), que abre [...]]]></description>
			<content:encoded><![CDATA[<p><!--StartFragment-->
<p class="MsoNormal">Fonte: <a href="http://livedocs.adobe.com/flex/201/langref/flash/net/FileReferenceList.html" target="_blank">http://livedocs.adobe.com/flex/201/langref/flash/net/FileReferenceList.html</a> </p>
<p class="MsoNormal">A classe FileReferenceList fornece recursos para permitir o usuário selecionar um ou mais arquivos para upload. Um objeto FileReferenceList representa um grupo de um ou mais arquivos locais no disco do usuário como um array de objetos FileReference.</p>
<p class="MsoNormal">Para trabalhar com a classe FileReferenceList:</p>
<ul>
<li><span style="font-family: Symbol"><span><span style="font: normal normal normal 7pt/normal 'Times New Roman'"> </span></span></span>Instanciar a classe: var frl:FileReferenceList = new FileReferenceList();</li>
<li>Chamar o método FileReferenceList.browse(), que abre uma janela que permiete o usuário selecionar um ou mais arquivos para upload: frl.browse();</li>
<li>Depois o método é browse() ser chamado com sucesso, a propriedade fileList do pobjeto FileReferenceList é populado com um array de objetos FileReference.</li>
<li>Chame FileReference.upload() em cada elemento do array fileList.</li>
</ul>
<p class="MsoNormal">A classe FileReferenceList inclui um método browse() e uma propriedade fileList para trabalhar com múltiplos arquivos. Enquanto uma chamada para FileReferenceList.browse() está em execução, o arquivo pausa a reprodução em stand-alone e players externos para Linux e Mac OS X 10.1 e versões anteriores.</p>
<h2>Propriedades Públicas</h2>
<ul>
<li><strong>fileList:Array</strong> – [somente leitura] Cria um novo objeto FileReferenceList.</li>
<li><strong>browse(typeFilter:Array):Boolean</strong> – Apresenta uma janela que permite o usuário selecionar um ou mais arquivos para upload.</li>
</ul>
<h2>Eventos</h2>
<ul>
<li><strong>cancel</strong> – Disparado quando o usuário fecha a janela.</li>
<li><strong>select </strong>– Disparado quando o usuário seleciona um ou mais arquivos para upload de uma janela de arquivo</li>
</ul>
<p><!--EndFragment--></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.souweb.info/filereferencelist/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Classe FileReference (Português)</title>
		<link>http://blog.souweb.info/classe-filereference/</link>
		<comments>http://blog.souweb.info/classe-filereference/#comments</comments>
		<pubDate>Sun, 26 Oct 2008 18:52:50 +0000</pubDate>
		<dc:creator>Carlos Tristacci</dc:creator>
		
		<category><![CDATA[ActionScript 3.0]]></category>

		<category><![CDATA[Adobe AIR]]></category>

		<category><![CDATA[Adobe Flash]]></category>

		<category><![CDATA[Adobe Flex]]></category>

		<category><![CDATA[Orientação a Objetos]]></category>

		<guid isPermaLink="false">http://blog.souweb.info/classe-filereference/</guid>
		<description><![CDATA[
Resolvi traduzir, apesar do meu inglês não ser muito avançado, da documentação da Adobe, para que todos tivessem um conhecimento maior da classe FileReference e de outras que pretendo traduzir. 
Essa especificamente agora, pois estarei postando aqui no Blog um tutorial de como desenvolver um MultiFileUpload com Flex e PHP.
Se alguma tradução não estiver de acordo, [...]]]></description>
			<content:encoded><![CDATA[<p><!--StartFragment-->
<p class="MsoNormal">Resolvi traduzir, apesar do meu inglês não ser muito avançado, da documentação da Adobe, para que todos tivessem um conhecimento maior da classe FileReference e de outras que pretendo traduzir. </p>
<p class="MsoNormal">Essa especificamente agora, pois estarei postando aqui no Blog um tutorial de como desenvolver um MultiFileUpload com Flex e PHP.</p>
<p class="MsoNormal">Se alguma tradução não estiver de acordo, mande um e-mail, deixe um comentário. </p>
<p class="MsoNormal">Boa leitura! </p>
<p class="MsoNormal"><span class="Apple-style-span" style="font-size: 24px; font-weight: bold">FileReference</span> </p>
<p class="MsoNormal">Fonte:  <a href="http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/net/FileReference.html" target="_blank">http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/net/FileReference.html</a></p>
<p class="MsoNormal">A classe FileReference fornece recursos para upload e download de arquivos entre o cliente e o servidor. Uma janela avisa o usuário para selecionar um arquivo para upload ou um local para download. Cada objeto FileReference referencia um único arquivo no disco do usuário e tem propriedades que contêm informações sobre o arquivo: Tamanho, tipo, data de criação, data de modificação e tipo do criador (somente Macintosh).</p>
<p class="MsoNormal">Instâncias FileReference são criadas em dois passos:</p>
<ul>
<li>Quando você usa o operador <em>new</em> com o construtor FileReference: var fr:FileReference = new FileReference();</li>
<li>Quando você chama o método FileReferenceList.browse(), que cria um array de objetos FileReference.</li>
</ul>
<p class="MsoNormal">Durante a operação de upload, todas as propriedades de um objeto FileReference são populados por chamadas para os métodos FileReference.browse() ou FileReferenceList.browse(). Durante uma operação de download, a propriedade <em>name</em> é populada quando o evento <em>select </em>é disparado, todas as outras propriedades são populadas quando o evento complete é disparado.</p>
<p class="MsoNormal">O método browse() abre uma janela do sistema operacional para o usuário selecionar um arquivo para upload.</p>
<p class="MsoNormal">O método FileReference.browse() pemite o usuário selecionar somente um arquivo; o método FileReferenceList.browse() permite o usuário selecionar múltiplos arquivos. Depois de uma chamada bem sucedida do método browse(), chame o método FileReference.upload() para fazer o upload de um arquivo de cada vez.</p>
<p class="MsoNormal">As classes FileReference e FileReferenceList não permitem definir o local padrão de arquivos para a caixa de diálogo que os métodos browse() ou download() geram. O local padrão mostrado na caixa de diálogo é a pasta que recentemente foi mais acessada, se aquele local puder ser determinado, ou o desktop. As classes não permitem ler ou escrever a partir do arquivo transferido. Elas não permitem que o arquivo SWF que iniciou o upload ou download acesse o arquivo baixado ou a localização no disco do usuário.</p>
<p class="MsoNormal">As classes FileReference e FileReferenceList também não fornecem métodos para autenticação. Como servidores que requerem<span>  </span>autenticação, você pode baixar arquivos com o Flash Player, mas upload (em todos players) e download (no stand-alone ou player externo) falha. Observe os eventos FileReference para determinar se as operações foram concluídas com êxito e para tratar os erros.</p>
<p class="MsoNormal">Para operações de upload e download, um arquivo SWF pode acessar somente dentro do mesmo domínio, incluindo alguns domínios que estiverem especificados em um arquivo cross-domain policy. Coloque um arquivo policy no servidor se iniciar upload ou download de outro servidor de arquivos.</p>
<p class="MsoNormal">Enquanto chamadas para o FileReference.browse(), FileReference.browse(), FileReferenceList.browse(), ou FileReference.download() são executadas, o arquivo SWF pausa a reprodução em stand-alone e players externos para o Mac OS X 10.1 e anteriores.</p>
<h2>Propriedades Públicas</h2>
<ul>
<li><strong>creationDate : Date</strong> - [somente leitura] A data de criação do arquivo no disco local.</li>
<li><strong>creator : Strng</strong> – [somente leitura ] O tipo criador de arquivo do Macintosh, que só é usado no Mac OS em versões anteriores ao Mac OS X.</li>
<li><strong>extension : String</strong> – [AIR][somente leitura] A extensão do arquivo.</li>
<li><strong>modificationDate : Date</strong> – [somente leitura] A data que o arquivo foi modificado no disco local.</li>
<li><strong>name : String</strong> – [somente leitura] O nome do arquivo no disco local.</li>
<li><strong>size : Number</strong> – [somente leitura] O tamanho do arquivo no disco local.</li>
<li><strong>type : String</strong> – [somente leitura] O tipo de arquivo.</li>
</ul>
<h2>Métodos Públicos</h2>
<ul>
<li><strong>FileReference()</strong> – Cria um novo objeto FileReference.</li>
<li><strong>browse(tipeFilter:Array = null):Boolean</strong> – Apresenta uma janela que permite o usuário selecionar um arquivo para upload.</li>
<li><strong>cancel():void</strong> – Cancela qualquer operação de upload ou download em curso neste objeto FileReference.</li>
<li><strong>download(request:URLRequest, defaultFileName:String = null):void</strong> – Abre uma janela que permite o usuário baixar um arquivo de um servidor remoto.</li>
<li><strong>upload(request:URLRequest, uploadDataFieldName:String = “FileData”, testUpload:Boolean = false):void</strong> – Inicia o upload de um arquivo selecionado por um usuário para um servidor remote.</li>
<li><strong>uploadUnencoded(request:URLRequest):void</strong> – Inicia o upload de um arquivo para uma URL sem qualquer codificação.</li>
</ul>
<h2>Eventos</h2>
<ul>
<li><strong>cancel</strong> – Disparado quando o upload ou download de arquivos é cancelado através de uma caixa de diálogo de navegação pelo usuário.</li>
<li><strong>complete</strong> – Disparado quando download é completado ou quando o upload gerar um HTTP status código 200.</li>
<li><strong>httpResponseStatus</strong> – [AIR] Disparado se a chamada para o método upload() ou uploadUnencoded tenta acessar os dados sobre HTTP e Adobe AIR é capaz de detectar e retornar o código de status da solicitação.</li>
<li><strong>httpStatus</strong> – Disparado quando um upload falha e um status HTTP está disponível para descrever a falha.</li>
<li><strong>ioError</strong> – Disparado quando uma operação de upload ou download falha.</li>
<li><strong>open</strong> – Disparado quando uma operação de upload ou download inicia.</li>
<li><strong>progress</strong> – Disparado periodicamente durante a operação de upload ou download.</li>
<li><strong>securityError</strong> – Disparado quando uma chamada para o método FileReference.upload() ou FileReference.download() tenta fazer o upload de um arquivo de um servidor ou pegar um arquivo de um servidor que esteja fora do sandbox de segurança da chamada.</li>
<li><strong>select</strong> – Disparado quando o usuário seleciona um arquivo para download ou upload de uma janela do sistema.</li>
<li><strong>uploadCompleteData</strong> – Disparado após os dados serem recebidos pelo servidor depois de um upload bem-sucedido.</li>
</ul>
<p><!--EndFragment--></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.souweb.info/classe-filereference/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Menos XHTML com JavaScript</title>
		<link>http://blog.souweb.info/estilizando-com-menos-xhtml/</link>
		<comments>http://blog.souweb.info/estilizando-com-menos-xhtml/#comments</comments>
		<pubDate>Sat, 27 Sep 2008 20:14:11 +0000</pubDate>
		<dc:creator>Carlos Tristacci</dc:creator>
		
		<category><![CDATA[JavaScript]]></category>

		<category><![CDATA[Padrões web]]></category>

		<guid isPermaLink="false">http://blog.souweb.info/?p=129</guid>
		<description><![CDATA[Recentemente estou trabalhando no novo layout do Portal do Professor (http://portaldoproferssor.mec.gov.br), no qual projetei o conteúdo separado por caixas que possuem: Cantos arredondados, sombra, sombra interna, degradê e linhas de borda,  como pode ver abaixo:

Com esta combinação deixei o cliente satisfeito com o resultado visual, mas acabei projetando um verdadeiro problema para estruturar o XHTML, [...]]]></description>
			<content:encoded><![CDATA[<p>Recentemente estou trabalhando no novo layout do Portal do Professor (<a href="http://portaldoproferssor.mec.gov.br" target="_blank">http://portaldoproferssor.mec.gov.br</a>), no qual projetei o conteúdo separado por caixas que possuem: Cantos arredondados, sombra, sombra interna, degradê e linhas de borda,  como pode ver abaixo:</p>
<p><img src="http://blog.souweb.info/wp-content/uploads/2008/09/imagem4.png" alt="imagem4.png" height="163" width="474" /></p>
<p>Com esta combinação deixei o cliente satisfeito com o resultado visual, mas acabei projetando um verdadeiro problema para estruturar o XHTML, pois preciso agora de 6 imagens de fundo para cada caixa e devido ao meu layout ser líquido / elástico, acabei com a seguinte estrutura:</p>
<p><em>&lt;span class=&#8221;wrap1&#8243;&gt;<br />
&lt;span class=&#8221;wrap2&#8243;&gt;<br />
&lt;span class=&#8221;wrap3&#8243;&gt;<br />
&lt;span class=&#8221;wrap4&#8243;&gt;<br />
&lt;span class=&#8221;wrap5&#8243;&gt;<br />
&lt;span class=&#8221;wrap6&#8243;&gt;<br />
&lt;div class=&#8221;box&#8221;&gt;<br />
&lt;h2&gt;Wrap&lt;/h2&gt;<br />
&lt;p&gt;<br />
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vestibulum tempor. Fusce lacinia. Duis blandit tincidunt lectus. Donec tortor. Nam fringilla justo vitae erat. Vivamus lobortis dui a nisl. Proin justo ante, lacinia non, aliquet in, egestas ac, leo. Sed metus libero, ornare eu, sagittis elementum, vulputate a, erat. Aliquam porttitor.<br />
&lt;/p&gt;<br />
&lt;/div&gt;<br />
&lt;/span&gt;<br />
&lt;/span&gt;<br />
&lt;/span&gt;<br />
&lt;/span&gt;<br />
&lt;/span&gt;<br />
&lt;/span&gt;</em></p>
<p>Acabei tendo que escrever um código repetitivo e nada semântico, além de tornar meu código mais difícil de manter, prejudicando assim a escabilidade de um portal que está constantemente recebendo novas implementações.</p>
<p>Para solucionar isto, resolvi escrever um código javascript, que insere tags &lt;span&gt; de forma dinâmica deixando o meu código XHTML apenas com a &lt;div class=&#8221;box&#8221;&gt;&#8230;&lt;/box&gt;, como abaixo:</p>
<p><em>&lt;div class=&#8221;box&#8221;&gt;<br />
&lt;h2&gt;Wrap&lt;/h2&gt;<br />
&lt;p&gt;<br />
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Vestibulum tempor. Fusce lacinia. Duis blandit tincidunt lectus. Donec tortor. Nam fringilla justo vitae erat. Vivamus lobortis dui a nisl. Proin justo ante, lacinia non, aliquet in, egestas ac, leo. Sed metus libero, ornare eu, sagittis elementum, vulputate a, erat. Aliquam porttitor.<br />
&lt;/p&gt;<br />
&lt;/div&gt;</em></p>
<p>Para inserir as tags &lt;span&gt; necessárias para inserer as imagens de fundo na caixa, lembrando que cada tag aceita apenas uma imagem de fundo, escrevi o script a seguir:</p>
<p><font color="#999999">// Crio um array </font><br />
<em>var alltags = new Array();<br />
function changeBox() {</em><br />
<font color="#999999">// O método <font color="#808080"><em>getElementsByTagName()</em></font> retorna um array com todas os elementos<em> <font color="#808080">&lt;div&gt;</font></em> que existem no documento e armazena no array <em><font color="#808080">alltags</font></em>.</font><br />
<em>var alltags=document.getElementsByTagName(&#8221;div&#8221;);</em><br />
<font color="#999999">// A estrutura de repetição <font color="#808080"><em>for</em></font> passa por cada elemento &lt;<font color="#808080"><em>div&gt;</em></font> armazenado em alltags.</font><br />
<em>for (i=0; i&lt;alltags.length; i++) {</em><br />
<font color="#999999">// Verifica se o elemento tem a classe <font color="#808080"><em>box</em></font>.</font><br />
<em>if (alltags[i].className==&#8217;box&#8217;) {</em><br />
<font color="#999999">// Armazena na variável <font color="#808080"><em>element</em></font> em  cada interação do <font color="#808080"><em>for </em></font>o velor armazenado no índice<em><font color="#808080"> i</font></em> de <em><font color="#808080">alltags</font></em></font><br />
<em>var element = alltags[i];</em><br />
<font color="#999999">// Armazena o objeto pai de <font color="#808080"><em>element</em></font> na variável content</font><br />
<em>var content = element.parentNode;</em><br />
<font color="#999999">// Cria os elementos XHTML <em><font color="#808080">&lt;span</font></em></font>&gt;<br />
<em>var wrap1 = document.createElement(&#8217;span&#8217;);<br />
var wrap2 = document.createElement(&#8217;span&#8217;);<br />
var wrap3 = document.createElement(&#8217;span&#8217;);<br />
var wrap4 = document.createElement(&#8217;span&#8217;);<br />
var wrap5 = document.createElement(&#8217;span&#8217;);<br />
var wrap6 = document.createElement(&#8217;span&#8217;);</em><br />
<font color="#999999">// Atribui para cada elemento XHTML <em><font color="#808080">&lt;span&gt;</font></em> uma classe</font><br />
<em>wrap1.setAttribute(&#8217;class&#8217;, &#8216;wrap1&#8242;);<br />
wrap2.setAttribute(&#8217;class&#8217;, &#8216;wrap2&#8242;);<br />
wrap3.setAttribute(&#8217;class&#8217;, &#8216;wrap3&#8242;);<br />
wrap4.setAttribute(&#8217;class&#8217;, &#8216;wrap4&#8242;);<br />
wrap5.setAttribute(&#8217;class&#8217;, &#8216;wrap5&#8242;);<br />
wrap6.setAttribute(&#8217;class&#8217;, &#8216;wrap6&#8242;);</em><br />
<font color="#999999">// Insere um elemento filho ao elemento atual, antes de um determinado elemento. O elemento <em><font color="#808080">wrap1</font></em> é inserido em <font color="#808080"><em>content</em></font> antes de <em><font color="#808080">element</font></em><br />
// Mais informações do método <font color="#808080"><em>insertBefore</em></font> no endereço: <a href="http://developer.mozilla.org/pt/DOM/element.insertBefore." target="_blank">http://developer.mozilla.org/pt/DOM/element.insertBefore.</a></font><br />
<em>content.insertBefore(wrap1, element);</em><br />
<font color="#999999">// O elemento <em><font color="#808080">wrap1</font></em> recebe o novo elemento <font color="#808080"><em>wrap2</em></font>. E assim acontece com os demais elementos respectivamente.<br />
// Mais informações do método <em><font color="#808080">appendChild</font></em> no endereço:<a href="http://developer.mozilla.org/Pt/DOM/Element.appendChild" target="_blank"> http://developer.mozilla.org/Pt/DOM/Element.appendChild</a>.</font><br />
<em>wrap1.appendChild(wrap2);<br />
wrap2.appendChild(wrap3);<br />
wrap3.appendChild(wrap4);<br />
wrap4.appendChild(wrap5);</em><br />
<em>wrap5.appendChild(wrap6);</em><br />
<font color="#999999">// Remove <font color="#808080"><em>element</em></font> de <font color="#808080"><em>content</em></font></font><br />
<em>content.removeChild(element);</em><br />
<font color="#999999">// E insere <font color="#808080"><em>element</em></font> para <em><font color="#808080">wrap6</font></em></font><br />
<em>wrap6.appendChild(element);<br />
}<br />
}<br />
}</em><br />
<font color="#999999">// Executa a função</font><br />
<em>changeBox();</em></p>
<p>E para finalizar nossas caixas vamos estilizá-las com CSS. Não irei comentar o CSS, pois acredito que se chegou até aqui buscando solução para um problema semelhante,  já domine a linguagem.</p>
<p>Além do CSS ques estilizam as classes que atribuímos por JavaScript as tags &lt;span&gt;, escrevi outros estilos para compor a página e representar melhor o exemplo.</p>
<p><em>*{<br />
padding:0;<br />
margin:0;<br />
font:1em Verdana, Geneva, Arial, Helvetica, sans-serif;<br />
}<br />
body{<br />
background:transparent url(bg_body.png) repeat left top;<br />
font-size:11px;<br />
padding:100px 400px;<br />
}<br />
h2{<br />
font-size:1.5em;<br />
padding-bottom:.5em;<br />
}<br />
p{<br />
color:#666;<br />
}<br />
.box{<br />
padding:25px 30px 30px;<br />
}<br />
.wrap1, .wrap2, .wrap3, .wrap4, .wrap5, .wrap6 {<br />
display:block;<br />
}</em></p>
<p><em>.wrap1 {<br />
background:transparent url(bg_cr.png) repeat-y right center;<br />
margin-bottom:1em;<br />
}<br />
.wrap2 {<br />
background:transparent url(bg_cl.png) repeat-y left center;<br />
}<br />
.wrap3 {<br />
background:transparent url(bg_tr.png) no-repeat right top;<br />
}<br />
.wrap4 {<br />
background:transparent url(bg_tl.png) no-repeat left top;<br />
}<br />
.wrap5 {<br />
background:transparent url(bg_br.png) no-repeat right bottom;<br />
}<br />
.wrap6 {<br />
background:transparent url(bg_bl.png) no-repeat left bottom;<br />
}</em></p>
<p>Para baixar os arquivos deste exemplo <a href="http://blog.souweb.info/wp-content/uploads/2008/09/menos_xhtml_com_js.zip" title="menos_xhtml_com_js.zip">clique aqui.</a></p>
<p>Espero que visite o Portal do Professor daqui algum tempo e veja o resultado prático do que estou falando aqui.</p>
<p>Um abraço e até o próximo post.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.souweb.info/estilizando-com-menos-xhtml/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Lançamento do Livro e-Usabilidade</title>
		<link>http://blog.souweb.info/lancamento-do-livro-e-usabilidade/</link>
		<comments>http://blog.souweb.info/lancamento-do-livro-e-usabilidade/#comments</comments>
		<pubDate>Wed, 03 Sep 2008 19:28:23 +0000</pubDate>
		<dc:creator>Carlos Tristacci</dc:creator>
		
		<category><![CDATA[souweb]]></category>

		<guid isPermaLink="false">http://blog.souweb.info/?p=122</guid>
		<description><![CDATA[Acontecerá no dia 08/09 às 19:30h no salão Louvre do Hotel Windsor Barra (Av. Sernambetiba, 2630, Barrada Tijuca, RJ), junto ao XXXII ENANPAD (Encontro da Associação Nacional de Pós-Graduação em Administração). O lançamento do livro &#8220;e-Usabilidade&#8221; de autoria de Simone Bacellar Leal Ferreira e Ricardo Rodrigues Nunes, respectivamente professora e aluno do Curso de Mestrado [...]]]></description>
			<content:encoded><![CDATA[<p>Acontecerá no dia 08/09 às 19:30h no salão Louvre do Hotel Windsor Barra (Av. Sernambetiba, 2630, Barrada Tijuca, RJ), junto ao XXXII ENANPAD (Encontro da Associação Nacional de Pós-Graduação em Administração). O lançamento do livro &#8220;e-Usabilidade&#8221; de autoria de Simone Bacellar Leal Ferreira e Ricardo Rodrigues Nunes, respectivamente professora e aluno do Curso de Mestrado em Sistemas de Informação do Programa de Pós-Graduação em Informática da UNIRIO (http://www.uniriotec.br/pgi).</p>
<p><img src="http://blog.souweb.info/wp-content/uploads/2008/09/capa_lealferreira.jpg" alt="Capa do Livro e-Usabilidade" /></p>
<p>É  muito bom receber a notícia de lançamentos de livros na área de usabilidade e acessibilidade de autores brasileiros, que é uma área, dentre tantas, que temos que buscar autores estrangeiros e quase sempre em inglês.</p>
<p>O livro trata de aspectos  de usabilidade com a finalidade de apoiar os estudantes e profissionais de sistemas de informação, em especial os sistemas orientados para a Web, a projetarem e administrarem interfaces que propeciem a  seus usuários uma interação fácil e transparente. Isto é,  uma interface que, quando acessada por um usuário para executar uma tarefa, seja projetada de tal forma que ele só  precise focalizar sua atenção no trabalho que deseja executar.Para isso são abordados diversos aspectos da usabilidade, como:</p>
<ul>
<li>Interação Homem-Computador</li>
<li>Estilos de Interface</li>
<li>O Uso de Cores em Sistema Computacionais</li>
<li>Estratégias de Usabilidade em Sistemas de Informação Globalizados</li>
<li>e-Acessibilidade</li>
<li>Alinhamento dos Requisitos de Usabilidade com as Diretrizes de Acessibilidade</li>
</ul>
<p>Um abraço!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.souweb.info/lancamento-do-livro-e-usabilidade/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Reputação.com</title>
		<link>http://blog.souweb.info/reputacaocom/</link>
		<comments>http://blog.souweb.info/reputacaocom/#comments</comments>
		<pubDate>Sat, 26 Jul 2008 15:11:56 +0000</pubDate>
		<dc:creator>Carlos Tristacci</dc:creator>
		
		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.souweb.info/?p=116</guid>
		<description><![CDATA[Uma das coisas mais importantes como profissional é estar atento não apenas a informações diretamente ligadas ao trabalho do dia-a-dia. Mas a tudo que esteja relacionado a vida profissional. Por isso, leio assuntos relacionados a carreira, mercado e negócios, além dos assuntos diretamente ligados ao meu trabalho.
Esta semana lendo a revista Você S/A encontrei este [...]]]></description>
			<content:encoded><![CDATA[<p><em>Uma das coisas mais importantes como profissional é estar atento não apenas a informações diretamente ligadas ao trabalho do dia-a-dia. Mas a tudo que esteja relacionado a vida profissional. Por isso, leio assuntos relacionados a carreira, mercado e negócios, além dos assuntos diretamente ligados ao meu trabalho.</em></p>
<p><em>Esta semana lendo a revista Você S/A encontrei este artigo, escrito por Françoise Terzian.</em></p>
<p><em>Espero que gostem e aproveitem as dicas, da mesma maneira. </em></p>
<p><em><strong>Saiba como usar a vitrine da internet para construir uma imagem pessoal positiva.</strong></em></p>
<p>A internet é uma vitrine. Escreva seu nome no Google e confira o resultado: surge um rastro digital feito de listas de aprovação em concursos, comentários em salas de bate-papo, resultados de competições esportivas e fotos. A web registra pedaços de sua vida em forma uma imagem virtual. As empresas de recrutamento já descobriram isso faz tempo.</p>
<p>A consultoria americana Michael Page, que tem escritório em São Paulo, desenvolveu, por exemplo, uma ferramenta de busca própria, voltada para encontrar informações de profissionais na web. É impossível controlar tudo o que sai publicado na internet. Mas é possível aumentar a relevância de uma parcela das informações. Confira as sugestões e use a rede a seu favor.</p>
<p><strong>CRIE UM BLOG</strong></p>
<p>Um blog profissional, que discuta temas pertinentes ao trabalho, dá um toque de credibilidade à imagem de seu criador. &#8220;Um blog amplia a exposição do autor. As chance de o nome aparecer numa pesquisa aumenta e favorecem  o profissional. Desde que o conteúdo tenha qualidade, relevância e português sem erros&#8221;, dis Ricardo Basaglia, gerente da divisão de TI da Michael Page. Mas, atenção: mantenha o site atualizado. Caso contrário, você vai passar a imagem de desorganização.</p>
<p>- <strong>Relevância</strong> - Há mais de 120 milhões de blogs na web. Ser criativo não é fácil.</p>
<p><strong>SEJA NATURAL</strong></p>
<p>Evite criar uma imagem altamente positiva. Trata-se de um erro facilmente percebido por headhunders e recrutadores. Ninguém é perfeito, e demonstrar humanidade, acredite, pode contar pontos a seu favor. As empresas valorizam candidatos autênticos. Portanto, seja transparente. Não minta nem omita. Tenha apenas bom senso.  &#8220;Não faça na internet algo que você evitaria fazer no mundo real&#8221;, diz Fernando Mantovani, gerente do escritório de São Paulo da consultoria de recrutamento Robert Half.</p>
<p><strong>PUBLIQUE CONTEÚDOS PERTINENTES</strong></p>
<p>Se tiver algo realmente a dizer na internet, diga. Se não for importante, fique calado. &#8220;Criar mais um blog ou abrir uma comunidade para não ter o que dizer é perda de tempo. Tente ser singular no conteúdo&#8221;, diz o paulista René de Paula Júnior, autor de seis blogs independentes e funcionário da área de experiência do usuário da Microsoft.</p>
<p><strong>SIGA SEU RASTRO</strong></p>
<p>Uma vez por mês, Marcelo Sant&#8217;iago, diretor de novos negócios da agência de publicidade digital MidiaClick, de São Paulo, entra no Google, digita seu nome e faz uma busca. É uma boa medida. Os buscadores são um termômetro para saber o que aparece sobre ele e se há alguém falando algo a seu respeito. &#8220;Encontro meu trabalho em outros sites&#8221;, diz Marcelo Sant&#8217;iago.</p>
<p><strong>EVITE A IMAGEM POPSTAR</strong></p>
<p>Estar presente em todos os sites de relacionamento, blogs, fotologs e comunidades da internet não é bom para a imagem. &#8220;Fazer marketing pessoal em excesso atrabalha&#8221;, diz Karin Parodi, diretora de consultoria Career Center, de São Paulo. &#8220;Evite a alta exposição&#8221;, diz Karin.</p>
<p><strong>TORNE-SE UM VERBETE</strong></p>
<p>Há uma série de grandes executivos com um verbete criado na enciclopédia virtual Wikipédia. Muitos foram construídos de forma neutra, enquanto outros são partidários ou subjetivos demais. Criar um para o seu nome é simples. Se alguém já criu seu perfil, você poderá alterá-lo com informações mais precisas. A dica é fazer buscas frequentes para descobrir se há novidades ou erros envolvendo seu nome.</p>
<p><strong>FAÇA USO DE SUA LISTA DE CONTATOS</strong></p>
<p>No Linkedin, Plaxo ou qualquer outra rede de relacionamento, é importante trazer para a vida real a lista de contatos virtuais. &#8220;Cuide da sua rede de contatos, não procuré só quando necessitar&#8221;, diz Karin Parodi, diretora do Career Center. Ou seja, mantenha contato com as pessoas fora da internet.</p>
<p><strong>CORRA PARA O LINKEDIN</strong></p>
<p>É conselho entre headhunters, recrutadores e executivos: o Linkedin é a ferramenta de relacionamento profissional mais poderosa da internet. Preencha cada item com o máximo possível de informações. Tome cuidado: o que vale é a qualidade dos relacionamentos, e não a quantidade. Entre os contatos conhecidos, tente fazer uma seleção de quem realmente integrará sua rede. Evite adicionar desconhecidos recomendações exageradas. &#8220;O risco de obter uma série de recomendações sem critério é cair no descrédito. O recrutador percebe e checa esse tipo de coisa&#8221;, diz Ricardo Basaglia.</p>
<p><strong>SEJA DISCRETO</strong></p>
<p>O Orkut é um dos sites de relacionamento mais conhecidos do Brasil e também o de maior exposição. Marcar presença em suas páginas não é ruim. Pelo contrário, pode transmitir a imagem de profissional conectado. No entanto, use o bom senso. Não vá moderar a comunidade &#8220;Eu odeio a minha empresa&#8221;. Cuidado também com fotos ousadas.</p>
<p><strong>MELHORE A PESQUISA</strong></p>
<p>Já ouviu falar de Search Engine Optimization (SEO)? Trata-se de uma combinação de técnicas e estratégias para facilitaa a seleção de um site pelo Google, por exemplo. Otimizado, o site salta para os primeiros lugares na lista de resultados. As empresas usam SEO. Nada impede que um um profissional faça o mesmo para destacar seus blogs profissionais. Há alguns macetes tecnológicos, como programar o site para os buscadores, atualizar constantemente o conteúdo e fazer com que o maior número possível de sites inclua links para a sua página.</p>
<p><em>Fonte: revista Você S/A</em></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.souweb.info/reputacaocom/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Introdução ao PHP</title>
		<link>http://blog.souweb.info/introducao-ao-php/</link>
		<comments>http://blog.souweb.info/introducao-ao-php/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 12:45:30 +0000</pubDate>
		<dc:creator>Carlos Tristacci</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://blog.souweb.info/?p=113</guid>
		<description><![CDATA[
PHP é uma das linguagens mais usadas para desenvolvimento de sites, pela sua simplicidade e grande suporte por empresas de hospedagem.
Trabalhei com projetos em PHP durante 5 anos, onde grande parte deste tempo trabalhei com o programador Rafael Jaques, mantenedor do blog www.phpit.com.br. 
Por isso pedi para o mesmo escrever um artigo sobre o assunto.
Valeu [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal"><img src="http://blog.souweb.info/wp-content/uploads/2008/07/php1.jpg" alt="PHP" align="left" /></p>
<p class="MsoNormal"><em>PHP é uma das linguagens mais usadas para desenvolvimento de sites, pela sua simplicidade e grande suporte por empresas de hospedagem.</em></p>
<p class="MsoNormal"><em>Trabalhei com projetos em PHP durante 5 anos, onde grande parte deste tempo trabalhei com o programador Rafael Jaques, mantenedor do blog <a href="http://www.phpit.com.br" target="_blank">www.phpit.com.br</a>. </em></p>
<p class="MsoNormal"><em>Por isso pedi para o mesmo escrever um artigo sobre o assunto.</em></p>
<p class="MsoNormal"><em>Valeu Jaques pela contribuição! </em></p>
<p class="MsoNormal">Olá amigos! Tudo jóia?</p>
<p class="MsoNormal">Primeiramente eu gostaria de me apresentar. Meu nome é Rafael Jaques, tenho 19 anos e programo em PHP há 5 anos. Meu intuito aqui hoje é explicar pra vocês o que é o PHP, para que serve e coisas interessantes que se pode fazer com ele!<br />
<strong><br />
</strong> <span class="Ttulo2Char"><span style="font-size: 14pt"><strong>O que é o PHP?</strong><br />
</span></span><br />
PHP é uma linguagem que permite criar sites WEB dinâmicos, possibilitando uma interação com o usuário através de formulários, parâmetros da URL e links. A diferença de PHP com relação a linguagens semelhantes a Javascript é que o código PHP é executado no servidor, sendo enviado para o cliente apenas html puro. Desta maneira é possível interagir com bancos de dados e aplicações existentes no servidor, com a vantagem de não expor o código fonte para o cliente. Isso pode ser útil quando o programa está lidando com senhas ou qualquer tipo de informação confidencial.</p>
<p>O que diferencia PHP de um script CGI escrito em C ou Perl é que o código PHP fica embutido no próprio HTML, enquanto no outro caso é necessário que o script CGI gere todo o código HTML, ou leia de um outro arquivo.<br />
<strong><br />
</strong> <span class="Ttulo2Char"><span style="font-size: 14pt"><strong>O que pode ser feito com PHP?</strong><br />
</span></span><br />
Basicamente, qualquer coisa que pode ser feita por algum programa CGI pode ser feita também com PHP, como coletar dados de um formulário, gerar páginas dinamicamente ou enviar e receber cookies.</p>
<p>PHP também tem como uma das características mais importantes o suporte a um grande número de bancos de dados, como dBase, Interbase, mSQL, MS SQL Server, MySQL, Oracle, Sybase, Firebird, PostgreSQL e vários outros. Construir uma página baseada em um banco de dados torna-se uma tarefa extremamente simples com PHP.</p>
<p>Além disso, PHP tem suporte a outros serviços através de protocolos como IMAP, SNMP, NNTP, POP3 e, logicamente, HTTP. Ainda é possível abrir sockets e interagir com outros protocolos.</p>
<p><span class="Ttulo2Char"><span style="font-size: 14pt"><strong>Como surgiu o PHP?</strong><br />
</span></span><br />
A linguagem PHP foi concebida durante o outono de 1994 por Rasmus Lerdorf. As primeiras versões não foram disponibilizadas, tendo sido utilizadas em sua home-page apenas para que ele pudesse ter informações sobre as visitas que estavam sendo feitas. A primeira versão utilizada por outras pessoas foi disponibilizada em 1995, e ficou conhecida como “Personal Home Page Tools” (ferramentas para página pessoal). Era composta por um sistema bastante simples que interpretava algumas macros e alguns utilitários que rodavam “por trás” das home-pages: um livro de visitas, um contador e algumas outras coisas.</p>
<p>Em meados de 1995 o interpretador foi reescrito, e ganhou o nome de PHP/FI, o “FI” veio de um outro pacote escrito por Rasmus que interpretava dados de formulários HTML (Form Interpreter). Ele combinou os scripts do pacote Personal Home Page Tools com o FI e adicionou suporte a mSQL, nascendo assim o PHP/FI, que cresceu bastante, e as pessoas passaram a contribuir com o projeto.</p>
<p>Estima-se que em 1996 PHP/FI estava sendo usado por cerca de 15.000 sites pelo mundo, e em meados de 1997 esse número subiu para mais de 50.000. Nessa época houve uma mudança no desenvolvimento do PHP. Ele deixou de ser um projeto de Rasmus com contribuições de outras pessoas para ter uma equipe de desenvolvimento mais organizada. O interpretador foi reescrito por Zeev Suraski e Andi Gutmans, e esse novo interpretador foi a base para a versão 3.</p>
<p class="MsoNormal">Em maio de 2000 o PHP3 deu espaço para a versão <st1:metricconverter productid="4, a" w:st="on">4, a</st1:metricconverter> qual foi revolucionária, pois o PHP começava a engatinhar na Orientação a Objetos.</p>
<p>Em 2004 foi lançado o PHP5, com melhoramentos na OOP e muitas outras adições.<br />
Atualmente o PHP6 está no forno e parece não demorar muito mais para ficar pronto.</p>
<p><span class="Ttulo2Char"><span style="font-size: 14pt"><strong>Conclusão</strong><br />
</span></span><br />
Embora seja uma linguagem de código-fonte aberto, o que gera discriminação por parte de alguns, PHP é uma ferramenta poderosa que possui diversos recursos e uma sintaxe simples e fácil de ser aprendida. Linguagem promissora que ainda tem muito pra dar.</p>
<p>Espero ter sido claro em todas as especificações acima e qualquer dúvida ou sugestão vocês podem me encontrar no <a href="http://www.phpit.com.br" target="_blank">PHPit</a>!</p>
<p>Um grande abraço a todos e fiquem com Deus!<br />
Rafael Jaques</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.souweb.info/introducao-ao-php/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Download - Apostila de Web Standards</title>
		<link>http://blog.souweb.info/download-apostila-de-web-standards/</link>
		<comments>http://blog.souweb.info/download-apostila-de-web-standards/#comments</comments>
		<pubDate>Thu, 05 Jun 2008 03:10:45 +0000</pubDate>
		<dc:creator>Carlos Tristacci</dc:creator>
		
		<category><![CDATA[AJAX]]></category>

		<category><![CDATA[Acessibilidade]]></category>

		<category><![CDATA[Adobe Flash]]></category>

		<category><![CDATA[Internet]]></category>

		<category><![CDATA[JavaScript]]></category>

		<guid isPermaLink="false">http://blog.souweb.info/?p=110</guid>
		<description><![CDATA[Juntamente com André Espeiorin, programador no Ministério da Educação e mantenedor do www.blogdoxorna.com e Andrea Poletto, coordenadora do núcleo de acessibilidade do projeto SIEP (Sistema de Informação na Educação Profissional e Tecnológica) do Ministério da Educação, desenvolvi uma Apostila de Web Standards, englobando XHTML, CSS, Tableless, Acessibilidade, Flash e AJAX Acessível.
Pensada para o uso de [...]]]></description>
			<content:encoded><![CDATA[<p>Juntamente com André Espeiorin, programador no Ministério da Educação e mantenedor do <a href="http://www.blogdoxorna.com" title="Leia os artigos do Xorna" target="_blank">www.blogdoxorna.com</a> e Andrea Poletto, coordenadora do núcleo de acessibilidade do projeto SIEP (Sistema de Informação na Educação Profissional e Tecnológica) do Ministério da Educação, desenvolvi uma Apostila de Web Standards, englobando XHTML, CSS, Tableless, Acessibilidade, Flash e AJAX Acessível.</p>
<p>Pensada para o uso de conceitos e técnicas práticas, foi usada em diversos treinamentos e distribuida pela Rede de Desenvolvimento do SIEP.</p>
<p>Tendo sempre em mente contribuir para a comunidade, alcançando uma web mais rica e acessível, disponibilizo para <strong><a href="http://blog.souweb.info/wp-content/uploads/2008/06/apostila_web_standards.zip" title="Apostila de Web Standards">donwload aqui</a></strong>, para todos os interessados.</p>
<p>Boa leitura!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.souweb.info/download-apostila-de-web-standards/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Desenvolvimento Web - Semântica</title>
		<link>http://blog.souweb.info/desenvolvimento-web-semantica/</link>
		<comments>http://blog.souweb.info/desenvolvimento-web-semantica/#comments</comments>
		<pubDate>Fri, 30 May 2008 16:58:55 +0000</pubDate>
		<dc:creator>Carlos Tristacci</dc:creator>
		
		<category><![CDATA[Padrões web]]></category>

		<guid isPermaLink="false">http://blog.souweb.info/?p=109</guid>
		<description><![CDATA[Sempre acreditei que a web devia ser levada ao seu máximo, com usabilidade, acessibilidade, comunicabilidade e padrões de desenvolvimento, por isso iniciarei falando sobre Padrões Web no meu site, saindo um pouco da tradicional linha Flex e Flash, devido a minha mudança de trabalho e foco absoluto nesta área.  
“Semântica é a parte da gramática que [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal">Sempre acreditei que a web devia ser levada ao seu máximo, com usabilidade, acessibilidade, comunicabilidade e padrões de desenvolvimento, por isso iniciarei falando sobre Padrões Web no meu site, saindo um pouco da tradicional linha Flex e Flash, devido a minha mudança de trabalho e foco absoluto nesta área.  </p>
<p class="MsoNormal"><span class="Apple-style-span" style="line-height: 24px">“Semântica é a parte da gramática que estuda o sentido e a aplicação das palavras em um contexto.”</span> </p>
<p class="MsoNormal">O grande paradigma do desenvolvimento de sites e sistemas acessíveis está no uso correto de cada tag para o seu respectivo conteúdo, como por exemplo, ao pegarmos uma citação e seu autor, como segue abaixo, de que forma devemos implementar a demarcação?</p>
<p class="MsoNormal"><span style="white-space: pre" class="Apple-tab-span">	</span><span class="Apple-style-span" style="font-style: italic">“Somente aquele que administra suas idéias de forma livre é dono de suas idéias, e somente aquele que é dono de </span><span style="white-space: pre" class="Apple-tab-span"><span class="Apple-style-span" style="font-style: italic">	</span></span><span class="Apple-style-span" style="font-style: italic">suas idéias não é escravizado por elas.”</span><span style="white-space: pre" class="Apple-tab-span"><span class="Apple-style-span" style="font-style: italic">	</span></span></p>
<p class="MsoNormal"><span class="Apple-style-span" style="font-style: italic"><span style="white-space: pre" class="Apple-tab-span"></span></span><span style="white-space: pre" class="Apple-tab-span"><span class="Apple-style-span" style="font-style: italic">	</span></span><span class="Apple-style-span" style="font-style: italic">- Lin Yutang</span></p>
<p class="MsoNormal">Que tal desta forma:</p>
<p class="MsoNormal"><span style="white-space: pre" class="Apple-tab-span">	</span><span class="Apple-style-span" style="font-style: italic">&lt;p&gt;“Somente aquele que administra suas idéias de forma livre é dono de suas idéias, e somente aquele que é dono de </span><span style="white-space: pre" class="Apple-tab-span"><span class="Apple-style-span" style="font-style: italic">	</span></span><span class="Apple-style-span" style="font-style: italic">suas idéias não é escravizado por elas.”&lt;/p&gt;</span></p>
<p class="MsoNormal"><span style="white-space: pre" class="Apple-tab-span"><span class="Apple-style-span" style="font-style: italic">	</span></span><span class="Apple-style-span" style="font-style: italic">&lt;p&gt;- Lin Yutang&lt;/p&gt;</span></p>
<p class="MsoNormal">Para muitos, isto será muito familiar, mais está forma não é correta, sendo que temos tags apropriadas como elementos semânticos:</p>
<p class="MsoNormal"><span class="Apple-tab-span" style="white-space: pre">	</span><span class="Apple-style-span" style="font-style: italic">&lt;blockquote&gt;“Somente aquele que administra suas idéias de forma livre é dono de suas idéias, e somente aquele que é dono de suas idéias não é escravizado por elas.”&lt;/blockquote&gt;</span></p>
<p class="MsoNormal"><span class="Apple-tab-span" style="white-space: pre"><span class="Apple-style-span" style="font-style: italic">	</span></span><span class="Apple-style-span" style="font-style: italic">&lt;cite&gt;- Lin Yutang&lt;/cite&gt; </span></p>
<p class="MsoNormal">Muios desenvolvedores estão habituados a escrever HTML desta forma e inclinados a desenvolver sites com várias tags &lt;div&gt; no início do desenvolvimento com a metodologia Tableless, claramente espelhandos em layouts estruturados com tabelas. Esta prática é chamada de <em>divite</em>, mas deve ser evitada.</p>
<p class="MsoNormal">Similarmente, devemos ser cautelosos sobre a divisão de elementos únicos com tags &lt;div&gt;. Isto é frequentemente realizado para propósitos de estilização, mas usualmente isto destrói com a marcação semântica, além de ser totalmente desnecessário.</p>
<p class="MsoNormal">A tag &lt;div&gt; é usada para criar divisões na página, mas ao mesmo tempo é utilizada para criar grupos de conteúdo. Por exemplo, por que fazer isto:</p>
<p class="MsoNormal"><em>&lt;div id=&#8221;menu&#8221;&gt;<o:p></o:p></em></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><em>&lt;ul&gt;<o:p></o:p></em></p>
<p class="MsoNormal" style="margin-left: 54pt"><em><span lang="EN-US">&lt;li&gt;Item A&lt;/li&gt;<o:p></o:p></span></em></p>
<p class="MsoNormal" style="margin-left: 54pt"><em><span lang="EN-US">&lt;li&gt;Item B&lt;/li&gt;<o:p></o:p></span></em></p>
<p class="MsoNormal" style="margin-left: 54pt"><em><span lang="EN-US">&lt;li&gt;Item C&lt;/li&gt;<o:p></o:p></span></em></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><em>&lt;/ul&gt;<o:p></o:p></em></p>
<p class="MsoNormal"><em>&lt;/div&gt;<o:p></o:p></em></p>
<p class="MsoNormal">Quando podemos estruturar a página usando menos código:</p>
<p class="MsoNormal"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;ul id=&#8221;menu&#8221;&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;li&gt;Item A&lt;/li&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span class="Apple-style-span" style="font-style: italic">&lt;li&gt;Item B&lt;/li&gt;</span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span class="Apple-style-span" style="font-style: italic">&lt;li&gt;Item C&lt;/li&gt;</span></p>
<p class="MsoNormal"><span class="Apple-style-span" style="font-style: italic">&lt;/ul&gt;</span></p>
<p class="MsoNormal">A este uso desnecessário da tag &lt;div&gt; damos o nome de “divite”. O mesmo problema pode ocorrer comumente com desenvolvedores web ao utilizar o atributo class, ao que chamaremos de classite.</p>
<p class="MsoNormal">O atributo class existe para que possamos utilizar a mesma esitilização para vários elementos em comum, mas como a divite, muitos desenvolvedores utilizam o atributo class no lugar da tag apropriada, como no exemplo:</p>
<p class="MsoNormal"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;p class=&#8221;address&#8221;&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">Carlos Tristacci&lt;br /&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">Rua 13 de Maio, 1535 &lt;br /&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">Bento Gonçalves - RS</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal"><span class="Apple-style-span" style="font-style: italic">&lt;/p&gt;</span></p>
<p class="MsoNormal">O correto é usar o elemento (X)HTML address, veja abaixo:</p>
<p class="MsoNormal"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;address&gt;</span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">Carlos Tristacci&lt;br /&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">Rua 13 de Maio, 1535 &lt;br /&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">Bento Gonçalves - RS</span></span></p>
<p class="MsoNormal"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;/address&gt;</span><o:p></o:p></span></p>
<p class="MsoNormal">Desenvolvedores tem também a tendência de usar o atributo class em diversos elementos que se repetem ao invés de simplificar aplicando a class para o elemento pai, veja o seguinte código:</p>
<p class="MsoNormal"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;ul&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;li class=&#8221;tipos-queijo&#8221;&gt;Cheddar&lt;/li&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;li class=&#8221;tipos-queijo&#8221;&gt;Mozzarella&lt;/li&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;li class=&#8221;tipos-queijo&#8221;&gt;Parmesan&lt;/li&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;li class=&#8221;tipos-queijo&#8221;&gt;Swiss&lt;/li&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal"><span class="Apple-style-span" style="font-style: italic">&lt;/ul&gt;</span></p>
<p class="MsoNormal">Aqui uma maneira muito mais simplificada:</p>
<p class="MsoNormal"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;ul class=&#8221;tipos-queijos&#8221;&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span lang="EN-US"><span class="Apple-style-span" style="font-style: italic">&lt;li&gt;Cheddar&lt;/li&gt;</span><span class="Apple-style-span" style="font-style: italic"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span class="Apple-style-span" style="font-style: italic">&lt;li&gt;Mozzarella&lt;/li&gt;</span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span class="Apple-style-span" style="font-style: italic">&lt;li&gt;Parmesan&lt;/li&gt;</span></p>
<p class="MsoNormal" style="margin-left: 35.4pt"><span class="Apple-style-span" style="font-style: italic">&lt;li&gt;Swiss&lt;/li&gt;</span></p>
<p class="MsoNormal"><span class="Apple-style-span" style="font-style: italic">&lt;/ul&gt;</span></p>
<p class="MsoNormal">Mas, quando temos o cuidado no uso das tag &lt;div&gt;, &lt;p&gt;, &lt;span&gt; juntamente com as demais tags e estudando padrões de desenvolvimento web, iremos utilizar elementos (X) HTML mais apropriados, eliminando a confusão do documento e possibilitando um código mais semântico, fácil de dar manutenção, leve e rápido de ser carregado pelo browser e enfim acessível.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.souweb.info/desenvolvimento-web-semantica/feed/</wfw:commentRss>
		</item>
		<item>
		<title>MXStudio&#8230; souweb!</title>
		<link>http://blog.souweb.info/mxstudio-souweb/</link>
		<comments>http://blog.souweb.info/mxstudio-souweb/#comments</comments>
		<pubDate>Mon, 12 May 2008 14:34:59 +0000</pubDate>
		<dc:creator>Carlos Tristacci</dc:creator>
		
		<category><![CDATA[souweb]]></category>

		<guid isPermaLink="false">http://blog.souweb.info/?p=106</guid>
		<description><![CDATA[Esta semana tive a confirmação do Gerente de Marketing do MXStudio, Juliano Haussen, da minha participação como colunista no MXStudio. E registro aqui, meu agradecimento por toda atenção dada. Valeu Juliano!!!
Fico muito lisonjeado de poder contribuir para mais um dos portais mais acessados do Brasil, onde pude aprender muito com artigos de seus colunistas, chegando [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.souweb.info/?attachment_id=107" target="_blank" rel="attachment wp-att-107" title="Logo MXStudio"><img src="http://blog.souweb.info/wp-content/uploads/2008/05/mxstudio.jpg" alt="Logo MXStudio" align="left" /></a>Esta semana tive a confirmação do Gerente de Marketing do MXStudio, Juliano Haussen, da minha participação como colunista no MXStudio. E registro aqui, meu agradecimento por toda atenção dada. Valeu Juliano!!!</p>
<p>Fico muito lisonjeado de poder contribuir para mais um dos portais mais acessados do Brasil, onde pude aprender muito com artigos de seus colunistas, chegando a minha hora de poder retribuir todo o aprendizado.</p>
<p>O principal disto é poder dividir com todos as minhas idéias e conhecimentos, receber críticas e elogios e principalmente alimentar a paixão por escrever.</p>
<p>Acessem meu primeiro artigo, Entendendo Orientação a Objetos, postado dia 10.05.2008:</p>
<p><a href="http://www.mxstudio.com.br/flash/entendendo-orientacao-a-objetos/" target="_blank">http://www.mxstudio.com.br/flash/entendendo-orientacao-a-objetos/</a></p>
<p>Bom&#8230; espero que gostem deste e de outros artigos que eu venha a postar.</p>
<p>Um abraço e até a próxima!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.souweb.info/mxstudio-souweb/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Google, o Grande Cego</title>
		<link>http://blog.souweb.info/google-o-grande-cego/</link>
		<comments>http://blog.souweb.info/google-o-grande-cego/#comments</comments>
		<pubDate>Fri, 09 May 2008 14:37:55 +0000</pubDate>
		<dc:creator>Carlos Tristacci</dc:creator>
		
		<category><![CDATA[Acessibilidade]]></category>

		<category><![CDATA[Internet]]></category>

		<guid isPermaLink="false">http://blog.souweb.info/?p=105</guid>
		<description><![CDATA[O artigo a seguir foi escrito pelo meu amigo Anderson Triacca, www.andersontriacca.com, escrito quando ainda trabalhávamos juntos. Pedi sua aprovação para postar no meu blog devido a importância dada aos padrões web e a acessibilidade e sua relação com os mecanismos de busca.
Boa leitura! 
O título pode parecer meio estranho, mas essa é uma das [...]]]></description>
			<content:encoded><![CDATA[<p><em>O artigo a seguir foi escrito pelo meu amigo Anderson Triacca, www.andersontriacca.com, escrito quando ainda trabalhávamos juntos. Pedi sua aprovação para postar no meu blog devido a importância dada aos padrões web e a acessibilidade e sua relação com os mecanismos de busca.</em></p>
<p><em>Boa leitura! </em></p>
<p>O título pode parecer meio estranho, mas essa é uma das grandes verdades da web, o google é o maior cego da internet, e isso é muito bom para nós(desenvolvedores). Você deve estar pensando: “esse cara é louco”, mas vou explicar um pouco da minha lógica, e depois você pode tirar suas conclusões.</p>
<p>Quando eu comecei a montar minhas páginas html eu fui questionado sobre como eu tratava da acessibilidade nas minhas páginas eu respondi que não me importava muito com isso, que deficientes não usam a internet(como eu era ingênuo nessa época).</p>
<p>Acontece que os deficientes(parciais ou totais) acessam sim a web, e acessam muito, cerca de 20% das pessoas que navegam na web são portadoras de algum tipo de deficiência, e não pensar nelas é excluir milhões de possíveis visitantes aos nossos sites.</p>
<p>Mas agora você deve estar se perguntando: “como um cego acessa um site?”, pois eu respondo, através de leitores de tela(progamas que lêem o conteudo do site e expressam de forma verbal para o deficiente poder acessar a página) tais como Jaws ou DoxVox. Mas se na hora que desenvolvemos o site não pensarmos nesses programas, eles com certeza irão confundir o deficiente no lugar de ajudá-lo.</p>
<p>Devemos tomar medidas preventivas para que um deficiente tenha uma boa experiência quando navegar em nosso site, medidas como colocar conteúdos alternativos para leitores de tela, separar conteúdo de estilização, usar webstandards, escrever html semântico, conteúdo alternativo para navegadores que não suportam flash, e outros mais(nas próximas colunas eu explico cada técnica mais detalhadamente).</p>
<p>Agora você me pergunta: “onde o google do título entra nesta história?”, pois ele é mais importante, mais inteligente e mais cego do que você pode imaginar.</p>
<p>Veja por este lado, quanto melhor a colocação do seu site numa busca mais visitas você vai ter. Agora você já se perguntou como o google determina quais sites aparecerão melhor numa busca?</p>
<p>Pois o google visita seu site semanalmente, e quanto mais você atualizar ele melhor ele ficará colocado numa busca, isso claro, se o google conseguir ler seu site. Para o google ler seu site ele precisa de conteúdo, muito conteúdo, e a melhor forma de se conseguir muito conteúdo é usar pouco código na marcação, e para isso existem os webstandards, que separam estruturação de estilização. Quanto mais acessível aos leitores de tela seu site for melhor cotado ele será pelo google e mais visitas ele terá, pois o google é o grande oráculo cego da web.</p>
<p>Vivemos num país onde existem muitas desigualdedes e preconceitos, pelo menos na internet vamos tentar fazer algo para mudar esse quadro.</p>
<p>Autor: Anderson Triacca ( www.andersontriacca.com )</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.souweb.info/google-o-grande-cego/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
