<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>José Mota</title>
	
	<link>http://jose-mota.net</link>
	<description>Web engineer &amp; architect</description>
	<lastBuildDate>Sat, 07 Nov 2009 20:50:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/josemotanetblog" type="application/rss+xml" /><feedburner:emailServiceId>josemotanetblog</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Approaching people through your website copy</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/JIJMjkTtirU/</link>
		<comments>http://jose-mota.net/2009/11/approaching-people-through-your-website-copy/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 20:50:16 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Personal improvement]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=125</guid>
		<description><![CDATA[Ever since I joined Weemagine and started to help building Weebiz, I have been learning a lot of stuff other than technology. The marketing team has really good knowledge I can use myself. This week I concluded that the way we approach people through our content can sometimes – if not always – be the [...]]]></description>
			<content:encoded><![CDATA[<p>Ever since I joined <a href="http://www.weebiz.com/members/weemaginecom">Weemagine</a> and started to help building <a href="http://weebiz.com">Weebiz</a>, I have been learning a lot of stuff other than technology. The marketing team has really good knowledge I can use myself. This week I concluded that the way we approach people through our content can sometimes – if not always – be the key to success.</p>
<p>Whether your website sells products / services or is just a blog with content that’s supposed to be read and not just scanned, what you write should provoke certain feelings that makes the reader want to stick around or maybe be compelled to buy something from it, if that’s the case.</p>
<h3>How <em>should</em> you write then?</h3>
<p>The gold rule applies here like a glove. Ask yourself as a regular consumer (not as the seller):</p>
<ul>
<li>What and how would you like to see the content in your website?</li>
<li>What would you like to read to be compelled to move forward?</li>
<li>What kind of speech would trigger you to act?</li>
</ul>
<p>These are only three of the many questions you can ask yourself. If the text you’re considering doesn’t <strong>really</strong> convince you then you ought to try again.</p>
<h3>The gold answer: Stick to real content</h3>
<p>If your product is good, you won’t need to wrap it with shiny and colorful paper. You just need to point out the facts. Show it how good it really is and nothing more than that.</p>
<p>Unfortunately that’s common practice in Portugal. People mistakenly think that juggling with adverbs and adjectives makes content better and more compelling. Well, they couldn’t be more wrong. Those times are over. Now that the .com explosion is gone, filling our content with sand isn’t just unnecessary but also has the reverse effect; <strong>instead of attracting people, it repels them.</strong></p>
<p>Today we don’t waste time around the web. It’s all about the juice, why waste money and time if you can just convince your audience with naked truth and facts?</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=JIJMjkTtirU:y8U4Rw9qaiI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=JIJMjkTtirU:y8U4Rw9qaiI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=JIJMjkTtirU:y8U4Rw9qaiI:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=JIJMjkTtirU:y8U4Rw9qaiI:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=JIJMjkTtirU:y8U4Rw9qaiI:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/JIJMjkTtirU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/11/approaching-people-through-your-website-copy/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/11/approaching-people-through-your-website-copy/</feedburner:origLink></item>
		<item>
		<title>Do what you do AND don’t like</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/12YlbWmVTq4/</link>
		<comments>http://jose-mota.net/2009/10/do-what-you-do-and-dont-like/#comments</comments>
		<pubDate>Mon, 12 Oct 2009 22:40:05 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Personal improvement]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=124</guid>
		<description><![CDATA[I&#8217;m sitting in front of my laptop, working on a tiny side project for a friend. This friend is trying to sell comestic surgery equipment, so he says. I have never tried designing for such an area and it&#8217;s about time I did because I only spent around 15 minutes searching for design trends and [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m sitting in front of my laptop, working on a tiny side project for a friend. This friend is trying to sell comestic surgery equipment, so he says. I have never tried designing for such an area and it&#8217;s about time I did because I only spent around 15 minutes searching for design trends and inspiration and I must say it feels good.</p>
<p>Doing what you like is one thing we take for granted most of the time. At least for us designers. We get to be creative most of the time, we enjoy throwing that creativity into a sheet of paper or a Photoshop file, we let our wizardry blossom through our fingers into a screen. It&#8217;s just that good.</p>
<p><span id="more-124"></span></p>
<h3>Well, it might just not be enough…</h3>
<p>Even though we enjoy doing what we like (aledgely), we project that happiness for the short term. Take me, for example. Every now and then, I tend to dislike having to work on the same thing everyday, having to fix bugs and take free bullshit from some guy that won&#8217;t read what&#8217;s in their face. But hey… <em>I absolutely love my job</em>.</p>
<blockquote><p>Love your job = Do the good stuff + Do the nasty stuff × Love you have for good stuff</p></blockquote>
<p>Sounds like crap, huh? Well, that&#8217;s the way it should be. I love my job because I do the good stuff and the bad stuff, and in the end of doing the bad stuff I say: <em>I got things done, hurray! Now I can do good stuff again!</em>. In a nutshell, <strong>live everything with passion</strong>. You will be able to say <em>I&#8217;ve accomplished a lot lately</em> after a while. Why? Not just because you did the good stuff, but mostly because you felt you evolved from the bad stuff you&#8217;ve been through.</p>
<p>Bad experiences are good. They make you bigger on the inside. That&#8217;s one of the best feelings in the world. I used to curse everyone that brought me bad experiences but now? Thank you guys for where I am now.</p>
<h3>You know what&#8217;s even better?</h3>
<p>Along with time, you will master the art of letting the same old crap go away and face new and enticing crap.</p>
<p>You can&#8217;t just wish a load of crap forever <img src='http://jose-mota.net/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=12YlbWmVTq4:H_DzvoNFVg8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=12YlbWmVTq4:H_DzvoNFVg8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=12YlbWmVTq4:H_DzvoNFVg8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=12YlbWmVTq4:H_DzvoNFVg8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=12YlbWmVTq4:H_DzvoNFVg8:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/12YlbWmVTq4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/10/do-what-you-do-and-dont-like/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/10/do-what-you-do-and-dont-like/</feedburner:origLink></item>
		<item>
		<title>Rails à moda do Porto — Episódio 5</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/lCxnVhvH6xg/</link>
		<comments>http://jose-mota.net/2009/09/rails-a-moda-do-porto-episodio-5/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 17:58:00 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=122</guid>
		<description><![CDATA[Hoje vem um tópico muito rápido mas igualmente importante: layouts.
Layouts são nada mais e nada menos do que templates de HTML. A sua função é criar um esqueleto básico de como a aplicação pode ficar de modo geral.
De forma muito simples mostro como:

Indicar o layout a usar nos controladores e nas suas várias acções.
Modificar o [...]]]></description>
			<content:encoded><![CDATA[<p>Hoje vem um tópico muito rápido mas igualmente importante: <strong><a href="http://jose-mota.net/wp-content/uploads/rails-a-moda-do-porto/005.mov">layouts</a></strong>.</p>
<p>Layouts são nada mais e nada menos do que templates de <acronym title="HyperText Markup Language">HTML</acronym>. A sua função é criar um esqueleto básico de como a aplicação pode ficar de modo geral.</p>
<p>De forma muito simples mostro como:</p>
<ul>
<li>Indicar o layout a usar nos controladores e nas suas várias acções.</li>
<li>Modificar o layout de forma a permitirmos alocação de conteúdo mais eficiente.</li>
<li>Criarmos o conteúdo a alocar através da função <a href="http://api.rubyonrails.org/classes/ActionView/Helpers/CaptureHelper.html#M001763">content_for</a>.</li>
</ul>
<h3>O screencast comprou restaurante!</h3>
<p><a href="http://jose-mota.net/wp-content/uploads/2009/09/ramdp.png"><img class="alignnone size-medium wp-image-123" title="Novo site do screencast" src="http://jose-mota.net/wp-content/uploads/2009/09/ramdp-465x366.png" alt="Novo site do screencast" width="465" height="366" /></a></p>
<p>O screencast vai ter casa própria, com ementa e tudo! Visitem <a href="http://rails.amodadoporto.com">http://rails.amodadoporto.com</a>. O próximo episódio já estará lá, bem como a feed para subscreverem, tanto por <acronym title="Really Simple Syndication">RSS</acronym> como por email.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=lCxnVhvH6xg:pbr0-FeZtAI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=lCxnVhvH6xg:pbr0-FeZtAI:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=lCxnVhvH6xg:pbr0-FeZtAI:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=lCxnVhvH6xg:pbr0-FeZtAI:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=lCxnVhvH6xg:pbr0-FeZtAI:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/lCxnVhvH6xg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/09/rails-a-moda-do-porto-episodio-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://jose-mota.net/wp-content/uploads/rails-a-moda-do-porto/005.mov" length="13190744" type="video/quicktime" />
		<feedburner:origLink>http://jose-mota.net/2009/09/rails-a-moda-do-porto-episodio-5/</feedburner:origLink></item>
		<item>
		<title>Fail à moda do Porto</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/VJvP4yAr0oQ/</link>
		<comments>http://jose-mota.net/2009/09/fail-a-moda-do-porto/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 21:14:59 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Português]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=121</guid>
		<description><![CDATA[Caros amigos que seguem o meu blog ou o meu screencast, segue um pedido de desculpas por não ter dado notícias durante duas semanas. Quem pensou que o Rails à moda do Porto morreu, engana-se; está apenas em coma workólico.
Têm sido duas semanas duras, cheias de trabalho por aqui no Weebiz. Estamos a trabalhar muito [...]]]></description>
			<content:encoded><![CDATA[<p>Caros amigos que seguem o meu blog ou o meu screencast, segue um pedido de desculpas por não ter dado notícias durante duas semanas. Quem pensou que o Rails à moda do Porto morreu, engana-se; está apenas em coma workólico.</p>
<p>Têm sido duas semanas duras, cheias de trabalho por aqui no Weebiz. Estamos a trabalhar muito para trazer à comunidade empresarial a melhor plataforma social de negócios. Espero este fim-de-semana próximo ter oportunidade para vos presentear com mais magia do Rails.</p>
<p>Até lá, rogo-vos paciência. Até porque também preciso de construir as plataformas do screencast e dos workshops. Vou publicitá-los convenientemente quando estiverem prontos.</p>
<p>Abraço para vós todos!</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=VJvP4yAr0oQ:Z_j4b87ufFk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=VJvP4yAr0oQ:Z_j4b87ufFk:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=VJvP4yAr0oQ:Z_j4b87ufFk:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=VJvP4yAr0oQ:Z_j4b87ufFk:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=VJvP4yAr0oQ:Z_j4b87ufFk:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/VJvP4yAr0oQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/09/fail-a-moda-do-porto/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/09/fail-a-moda-do-porto/</feedburner:origLink></item>
		<item>
		<title>Rails à moda do Porto — Episódio 4</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/rjbrb79H1fk/</link>
		<comments>http://jose-mota.net/2009/09/rails-a-moda-do-porto-episodio-4/#comments</comments>
		<pubDate>Sun, 06 Sep 2009 16:39:19 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Português]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[screencast]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=119</guid>
		<description><![CDATA[A nossa aplicação Escola está a andar sobre rails (andar sobre rodas já é muito século XIX  ). As possibilidades de transformar conteúdo em formatos diferentes são imensas! Por defeito, temos a possibilidade de gerar XML e JSON. Através da ajuda de outras bibliotecas, podemos gerar o que quisermos, desde PDF a RSS, passando [...]]]></description>
			<content:encoded><![CDATA[<p>A nossa aplicação <em>Escola</em> está a andar sobre <em>rails</em> (andar sobre rodas já é muito século XIX <img src='http://jose-mota.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> ). As possibilidades de transformar conteúdo em formatos diferentes são imensas! Por defeito, temos a possibilidade de gerar <acronym title="eXtensible Markup Language">XML</acronym> e JSON. Através da ajuda de outras bibliotecas, podemos gerar o que quisermos, desde <acronym title="Portable Document Format">PDF</acronym> a <acronym title="Really Simple Syndication">RSS</acronym>, passando inclusivamente por gerarmos <em>templates</em> diferentes para iPhone ou para outros dispositivos.</p>
<p><span id="more-119"></span></p>
<p>No <a href="/wp-content/uploads/rails-a-moda-do-porto/004.mov">episódio de hoje</a>, mostro como gerar <acronym title="eXtensible Markup Language">XML</acronym>, <acronym title="Really Simple Syndication">RSS</acronym> e JSON para a nossa lista de alunos. Deixo também algumas referências sobre como gerar <acronym title="Portable Document Format">PDF</acronym>. Se tiverem dúvidas não hesitem em apontá-las em baixo, terei o maior gosto em ajudar!</p>
<h3>Para a semana não há episódio</h3>
<p>Infelizmente na próxima semana não vou conseguir gravar o próximo episódio dado que vou estar a concentrar o meu esforço em lançar o <a href="http://blog.weebiz.com/2009/09/redesigning-weebiz/">novo design do Weebiz</a>. Até lá, sugiro que continuem a estudar o que foi feito até agora e inclusivamente mandem sugestões do que gostariam de ouvir num futuro episódio.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=rjbrb79H1fk:sMRcuHQM-O8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=rjbrb79H1fk:sMRcuHQM-O8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=rjbrb79H1fk:sMRcuHQM-O8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=rjbrb79H1fk:sMRcuHQM-O8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=rjbrb79H1fk:sMRcuHQM-O8:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/rjbrb79H1fk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/09/rails-a-moda-do-porto-episodio-4/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/09/rails-a-moda-do-porto-episodio-4/</feedburner:origLink></item>
		<item>
		<title>Rails à moda do Porto — Episódio 3</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/6S7pzf4OSJM/</link>
		<comments>http://jose-mota.net/2009/08/rails-a-moda-do-porto-episodio-3/#comments</comments>
		<pubDate>Sun, 30 Aug 2009 20:41:50 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Português]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[screencast]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=117</guid>
		<description><![CDATA[A parte mais importante de uma aplicação: pô-la a trabalhar. Como? Construindo lógica para satisfazer as necessidades do negócio.
Neste episódio constrói-se uma relação entre dois modelos: Aluno com Disciplina através de um novo modelo: Nota. Foi um bocado difícil por tudo a funcionar mas espero que consigam assimilar o conceito de relações, dado o contexto. [...]]]></description>
			<content:encoded><![CDATA[<p>A parte mais importante de uma aplicação: pô-la a trabalhar. Como? Construindo lógica para satisfazer as necessidades do negócio.</p>
<p><a href="/wp-content/uploads/rails-a-moda-do-porto/003.mov">Neste episódio</a> constrói-se uma relação entre dois modelos: Aluno com Disciplina através de um novo modelo: Nota. Foi um bocado difícil por tudo a funcionar mas espero que consigam assimilar o conceito de relações, dado o contexto. Existem outras situações com certeza e terão a sua ocasião de serem abordadas.</p>
<p><span id="more-117"></span></p>
<p>Se por alguma razão não conseguirem compreender o procedimento, comentem em baixo ou mandem-me um email com a vossa dúvida, terei o maior gosto em explicar.</p>
<h3>Código</h3>
<pre class='brush:bash'>script/generate scaffold disciplina nome:string creditos:integer
script/generate model nota valor:integer aluno_id:integer disciplina_id:integer</pre>
<pre class='brush:rails'>class Nota < ActiveRecord::Base
	belongs_to :aluno
	belongs_to :disciplina
end

class Disciplina < ActiveRecord::Base
	has_many :alunos, :through => :notas
	has_many :notas
end

class Aluno < ActiveRecord::Base
	has_many :disciplinas, :through => :notas
	has_many :notas
end</pre>
<pre class='brush:rails'>
# atribuir_disciplinas.html.erb

&lt;% form_for @aluno do |f| %&gt;
	&lt;% for disciplina in Disciplina.all do %&gt;
	&lt;p&gt;
		&lt;%= label_tag &quot;&quot;, disciplina.nome %&gt;
		&lt;%= check_box_tag &quot;aluno[disciplina_ids][]&quot;, disciplina.id, @aluno.disciplinas.include?(disciplina) %&gt;
	&lt;/p&gt;
	&lt;% end %&gt;
	&lt;%= f.submit &quot;Atribuir&quot; %&gt;
&lt;% end %&gt;

# alunos/show.html.erb

&lt;ul&gt;
	&lt;% for aluno in @disciplina.alunos do%&gt;
		&lt;li&gt;&lt;%= aluno.primeironome %&gt; &lt;%= aluno.ultimonome %&gt;&lt;/li&gt;
	&lt;% end %&gt;
&lt;/ul&gt;
</pre><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=6S7pzf4OSJM:pORJDm5pl14:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=6S7pzf4OSJM:pORJDm5pl14:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=6S7pzf4OSJM:pORJDm5pl14:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=6S7pzf4OSJM:pORJDm5pl14:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=6S7pzf4OSJM:pORJDm5pl14:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/6S7pzf4OSJM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/08/rails-a-moda-do-porto-episodio-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/08/rails-a-moda-do-porto-episodio-3/</feedburner:origLink></item>
		<item>
		<title>Designing for the invisible</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/kyPvFX0fof8/</link>
		<comments>http://jose-mota.net/2009/08/designing-for-the-invisible/#comments</comments>
		<pubDate>Sat, 29 Aug 2009 19:31:40 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Design]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=114</guid>
		<description><![CDATA[There is a new technique on user interface / experience cunningly mentioned by Dan Rubin, a while ago. It is also used brilliantly in great applications, such as Facebook or Wordpress itself. I took interest over the subject because I believe it is an important aspect of the modern web experience.

Dan mentioned the principle of [...]]]></description>
			<content:encoded><![CDATA[<p>There is a new technique on user interface / experience cunningly mentioned by <a href="http://superfluousbanter.com">Dan Rubin</a>, <a title="Dan Rubin at the Boagworld podcast" href="http://boagworld.com/podcast/179">a while ago</a>. It is also used brilliantly in great applications, such as <a href="http://facebook.com">Facebook</a> or Wordpress itself. I took interest over the subject because I believe it is an important aspect of the modern web experience.</p>
<p><span id="more-114"></span></p>
<p>Dan mentioned the principle of <em>designing for the invisible</em>. What this means is a designer prepares a design — generally for a web application — in order to create a clean layout and provoke the user to explore certain data, providing confort and thus a better experience.</p>
<h3>Where to design for the invisible?</h3>
<p>There are lots of situations where you can apply this principle. Even though it can be freshening to use, designing for the invisible has the risk of hiding data from your user, and that can be dangerous sometimes. It really depends on the kind of experience you&#8217;re trying to reach for. Situations to consider can be:</p>
<ul>
<li>Areas in which a user is likely to hover.</li>
<li>Places with too much information that can represent a threat of not being paid due attention.</li>
<li>Resources that have a main purpose (such as reading it) and also can have other secondary actions (such as admin actions).</li>
<li>Certain content that can have tiny <acronym title="Asynchronous JavaScript and XML">AJAX</acronym> calls, like removing an item from a cart which only requires a little call to remove it.</li>
</ul>
<p>Let&#8217;s consider the example of Wordpress, for example:</p>
<p><a href="http://jose-mota.net/wp-content/uploads/2009/08/Picture-1.png"><img class="alignnone size-full wp-image-115" title="Wordpress post management" src="http://jose-mota.net/wp-content/uploads/2009/08/Picture-1.png" alt="Wordpress post management" width="451" height="331" /></a></p>
<p>This is a very basic post management page. Supposedly, such a list should have a list of repetitive actions which clutter the interface. The solution for this problem: <em>Wordpress hid those actions</em>. As it knew a user had to hover the respective item to do anything with it, the actions only appear when the user does hover the item.</p>
<p><a href="http://jose-mota.net/wp-content/uploads/2009/08/Picture-2.png"><img class="alignnone size-full wp-image-116" title="Wordpress page administration with admin options" src="http://jose-mota.net/wp-content/uploads/2009/08/Picture-2.png" alt="Wordpress page administration with admin options" width="444" height="326" /></a></p>
<p>This is one of many examples that can take advantage of this principle. According to your requirements, you can be as creative as you can. Just be careful not to overuse it, remember: the experience depends on both your product and your user. Study them well and you succeed.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=kyPvFX0fof8:jRrKAS2r4n0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=kyPvFX0fof8:jRrKAS2r4n0:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=kyPvFX0fof8:jRrKAS2r4n0:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=kyPvFX0fof8:jRrKAS2r4n0:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=kyPvFX0fof8:jRrKAS2r4n0:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/kyPvFX0fof8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/08/designing-for-the-invisible/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/08/designing-for-the-invisible/</feedburner:origLink></item>
		<item>
		<title>Rails à Moda do Porto — Episódio 2</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/ElgqMvbhYYA/</link>
		<comments>http://jose-mota.net/2009/08/rails-a-moda-do-porto-episodio-2/#comments</comments>
		<pubDate>Mon, 24 Aug 2009 07:30:53 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Português]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[screencast]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=112</guid>
		<description><![CDATA[Quantas vezes pensamos no trabalho que dá validarmos formulários? Misturar lógica com apresentação apenas para validar uma coisa pequena consegue ser uma verdadeira dor de cabeça.

No seguimento da aplicação educacional que iniciámos no primeiro episódio, este segundo aborda validações. Com apenas duas instruções, conseguimos dizer ao sistema que queremos que o sistema verifique a presença [...]]]></description>
			<content:encoded><![CDATA[<p>Quantas vezes pensamos no trabalho que dá validarmos formulários? Misturar lógica com apresentação apenas para validar uma coisa pequena consegue ser uma verdadeira dor de cabeça.</p>
<p><span id="more-112"></span></p>
<p>No seguimento da aplicação educacional que iniciámos no primeiro episódio, <a href="/wp-content/uploads/rails-a-moda-do-porto/002.mov">este segundo</a> aborda <strong>validações</strong>. Com apenas duas instruções, conseguimos dizer ao sistema que queremos que o sistema verifique a presença de vários campos, bem como a numericalidade de outro campo. Existem muitas mais validações que podem ser consultadas na <a href="http://api.rubyonrails.org/"><acronym title="Application Programming Interface">API</acronym> do Rails</a>.</p>
<pre class="brush:rails">class Aluno &lt; ActiveRecord::Base
	validates_presence_of :primeironome, :ultimonome, :email, :sexo
	validates_numericality_of :telefone
end</pre>
<p>Já sabem, podem contribuir com os vossos comentários e dúvidas.</p>
<p><strong>Edit:</strong> A pedido de alguns assíduos colegas, segue abaixo a lista de todas as validações possíveis:</p>
<ol>
<li>validates_acceptance_of</li>
<li>validates_associated</li>
<li>validates_confirmation_of</li>
<li>validates_each</li>
<li>validates_exclusion_of</li>
<li>validates_format_of</li>
<li>validates_inclusion_of</li>
<li>validates_length_of</li>
<li>validates_numericality_of</li>
<li>validates_presence_of</li>
<li>validates_size_of</li>
<li>validates_uniqueness_of</li>
</ol><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=ElgqMvbhYYA:QoKkK4STNek:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=ElgqMvbhYYA:QoKkK4STNek:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=ElgqMvbhYYA:QoKkK4STNek:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=ElgqMvbhYYA:QoKkK4STNek:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=ElgqMvbhYYA:QoKkK4STNek:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/ElgqMvbhYYA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/08/rails-a-moda-do-porto-episodio-2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/08/rails-a-moda-do-porto-episodio-2/</feedburner:origLink></item>
		<item>
		<title>Should you still support IE 6?</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/eKLv6kbm4hI/</link>
		<comments>http://jose-mota.net/2009/08/should-you-still-support-ie-6/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 21:06:11 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Loadacrap]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=111</guid>
		<description><![CDATA[Yea, that&#8217;s right: I&#8217;m talking about you-know-which browser.
What is this IE 6 phenomenon anyway??
Internet Explorer 6 is the 8-year old Microsoft browser, it comes by default in Windows XP. There are already versions 7 and 8 for this browser. Version 6 is now extremely outdated as it doesn&#8217;t offer the best experience and quality when [...]]]></description>
			<content:encoded><![CDATA[<p>Yea, that&#8217;s right: I&#8217;m talking about <em>you-know-which browser</em>.</p>
<h3>What is this <acronym title="Internet Explorer">IE</acronym> 6 phenomenon anyway??</h3>
<p>Internet Explorer 6 is the 8-year old Microsoft browser, it comes by default in Windows XP. There are already versions 7 and 8 for this browser. Version 6 is now extremely outdated as it doesn&#8217;t offer the best experience and quality when visiting a website. Web standards have evolved since the time and so upgrade is extremely recommended for all users.</p>
<p><span id="more-111"></span></p>
<h3>Are you a designer? An aware one?</h3>
<p>If you are, then you know that <acronym title="Internet Explorer">IE</acronym> 6 is a <acronym title="Pain in the Ass">PITA</acronym> when it comes to designing a website or application. Its support for <acronym title="Cascading Style Sheets">CSS</acronym> 2 is not perfect and thus it causes a lot of frustration. In my case, it takes double the work (and money) to support websites in <acronym title="Internet Explorer">IE</acronym> 6.</p>
<h3>What about “those” clients? They only use <acronym title="Internet Explorer">IE</acronym> 6!</h3>
<p>If you have clients that still use <acronym title="Internet Explorer">IE</acronym> 6, it really depends on what you wrote a contract for. If you promised to support it, well&#8230; there is nothing you can do. What you <em>can</em> do is prepare for the future.</p>
<p>Paul Boag said brilliantly:</p>
<blockquote><p>The energy we are spending in dropping <acronym title="Internet Explorer">IE</acronym> 6 should be used to make our clients realize the truth about <acronym title="Internet Explorer">IE</acronym> 6, providing a <strong>lesser experience</strong>.</p></blockquote>
<p>I agree 100% with Paul. We are being plain old silly by even considering tweaking what&#8217;s good. Old browsers should have an experience of their own. In the end of it all, <strong>what matters most is the content</strong>.</p>
<h3>So this means the problem is not the browser?</h3>
<p>YES, the problem is NOT the browser. The problem is what people make of it, both designers and users. Designers have the responsibility to warn the user about the lesser experience and say how they can enjoy the full show. Splitting <acronym title="Cascading Style Sheets">CSS</acronym> apart and delivering them according to each browser&#8217;s capabilities is key. If the full means upgrading, fine. Users will be able to choose now.</p>
<p>If they choose to upgrade, don&#8217;t be a fool, go help the guy! You will score good points.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=eKLv6kbm4hI:GYitDWI6lqE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=eKLv6kbm4hI:GYitDWI6lqE:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=eKLv6kbm4hI:GYitDWI6lqE:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=eKLv6kbm4hI:GYitDWI6lqE:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=eKLv6kbm4hI:GYitDWI6lqE:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/eKLv6kbm4hI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/08/should-you-still-support-ie-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/08/should-you-still-support-ie-6/</feedburner:origLink></item>
		<item>
		<title>Rails à moda do Porto - Episódio 1</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/7o-3l9EhbS0/</link>
		<comments>http://jose-mota.net/2009/08/rails-a-moda-do-porto-episodio-1/#comments</comments>
		<pubDate>Sun, 16 Aug 2009 22:01:11 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Português]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[screencast]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=107</guid>
		<description><![CDATA[
Depois de muitos dias à espera, finalmente vos apresento: Rails à moda do Porto, o novo screencast de Ruby on Rails, em Português! O episódio de hoje é mesmo um cheirinho muito introdutório ao Rails, na tentativa de deixar um gostinho aos meninos mais curiosos.
Este é o primeiro episódio, é natural que tenha MUITA coisa a [...]]]></description>
			<content:encoded><![CDATA[<p><a href="/wp-content/uploads/rails-a-moda-do-porto/001.mov"><img class="alignnone size-medium wp-image-108" title="rails-a-moda-do-porto" src="http://jose-mota.net/wp-content/uploads/2009/08/rails-a-moda-do-porto-465x348.jpg" alt="rails-a-moda-do-porto" width="465" height="348" /></a></p>
<p>Depois de muitos dias à espera, finalmente vos apresento: <strong><a href="/wp-content/uploads/rails-a-moda-do-porto/001.mov">Rails à moda do Porto</a></strong>, o novo screencast de Ruby on Rails, <em>em Português</em>! O episódio de hoje é mesmo um cheirinho muito introdutório ao Rails, na tentativa de deixar um gostinho aos meninos mais curiosos.</p>
<p>Este é o primeiro episódio, é natural que tenha MUITA coisa a apontar. Os comentários incentivam-se, contribuam para um melhor screencast!</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=7o-3l9EhbS0:01xni_i-6Ww:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=7o-3l9EhbS0:01xni_i-6Ww:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=7o-3l9EhbS0:01xni_i-6Ww:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=7o-3l9EhbS0:01xni_i-6Ww:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=7o-3l9EhbS0:01xni_i-6Ww:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/7o-3l9EhbS0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/08/rails-a-moda-do-porto-episodio-1/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/08/rails-a-moda-do-porto-episodio-1/</feedburner:origLink></item>
		<item>
		<title>Screencast de Ruby on Rails em português?</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/BgkTan9dEkE/</link>
		<comments>http://jose-mota.net/2009/08/screencast-de-ruby-on-rails-em-portugues/#comments</comments>
		<pubDate>Mon, 03 Aug 2009 21:14:28 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Português]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=103</guid>
		<description><![CDATA[Visto que tenho vindo a conhecer colegas na indústria do desenvolvimento web e que gostariam de começar a aprender Ruby on Rails, eu começo a considerar a hipótese de realizar uma série de screencasts de Rails em português. Por mais entusiasmante que seja o desafio, preciso de saber se vou ter seguidores suficientes e interessados [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" title="Ruby on Rails logo" src="http://freelanceswitch.com/images/rails-podcast.png" alt="" height="120" />Visto que tenho vindo a conhecer colegas na indústria do desenvolvimento web e que gostariam de começar a aprender Ruby on Rails, eu começo a considerar a hipótese de realizar uma <strong>série de screencasts de Rails em português</strong>. Por mais entusiasmante que seja o desafio, preciso de saber se vou ter seguidores suficientes e interessados no que tenho para manter uma boa motivação. Começar a série para depois a deixar a meio não é propriamente algo bom.</p>
<p><span id="more-103"></span></p>
<p>O propósito de iniciar um screencast, além do sentido de contribuição do meu conhecimento é dar a conhecer a beleza de programar Ruby e o imenso poder do Rails para construir aplicações web bem pensadas, bem desenhadas e sólidas.</p>
<p>Tu gostavas de conhecer Ruby e Rails? Gostavas de ter um conjunto de vídeos em Português que te mostrassem como fazer aplicações web em Rails? Gostavas inclusivamente de sugerir um workshop de 8 ou 16 horas sobre o assunto? Fico à espera de feedback.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=BgkTan9dEkE:hSZxO7bD1JA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=BgkTan9dEkE:hSZxO7bD1JA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=BgkTan9dEkE:hSZxO7bD1JA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=BgkTan9dEkE:hSZxO7bD1JA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=BgkTan9dEkE:hSZxO7bD1JA:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/BgkTan9dEkE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/08/screencast-de-ruby-on-rails-em-portugues/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/08/screencast-de-ruby-on-rails-em-portugues/</feedburner:origLink></item>
		<item>
		<title>Announcing: José Mota — New breakthrough.</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/NXXhWjVH0Zk/</link>
		<comments>http://jose-mota.net/2009/08/announcing-jose-mota-%e2%80%94-new-breakthrough/#comments</comments>
		<pubDate>Mon, 03 Aug 2009 17:25:39 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Miscellaneous]]></category>

		<guid isPermaLink="false">http://jose-mota.net/?p=102</guid>
		<description><![CDATA[Today I officially launch my blog revamp, after a series of hosting and domain issues. I decided to buy a new yet similar domain and host it in a trustful company.

So what&#8217;s new anyway?
New theme series
As you may recall, the previous series of theming were named after the purple gem, Amethyst. This time I baptize [...]]]></description>
			<content:encoded><![CDATA[<p>Today I officially launch my blog revamp, after a series of hosting and domain issues. I decided to buy a new yet similar domain and host it in a trustful company.</p>
<p><span id="more-102"></span></p>
<h3>So what&#8217;s new anyway?</h3>
<h4>New theme series</h4>
<p>As you may recall, the previous series of theming were named after the purple gem, <em>Amethyst</em>. This time I baptize this series with a different gem color, namely <strong>Amber</strong>. I chose browns and yellows to resemble a different level of distinction and so I traded the mysterious nature of the purple for a more determined and sleeker brown &amp; yellow mix. Personally I enjoyed the soft grunge touch to it, it really pushes it up a notch.</p>
<p>I also tried to emphasize the content in a way that&#8217;s readable, simple and efficient. At least when I read a post, it makes me feel comfortable.</p>
<h4>Back to Wordpress</h4>
<p>Yes, you heard me: I ditched Drupal in favor of Wordpress. But then you ask:</p>
<blockquote><p>Are you of your freaking mind? First you use Wordpress, then Drupal and now Wordpress back again??</p></blockquote>
<ol>
<li>Drupal was giving me a lotta headaches just for building a blog and a portfolio. If it were something bigger, then perhaps I&#8217;d consider Drupal instead.</li>
<li>I must admit: Wordpress&#8217; editor is the best one I&#8217;ve ever seen. The media section is built right in and the whole admin area is just so much more inviting.</li>
<li>Wordpress also includes import/export features, which Drupal doesn&#8217;t yet. Well, at least not this good, all I did was import the <acronym title="eXtensible Markup Language">XML</acronym> file, plain paste of the wp-content folder, configure the plugins and that&#8217;s it.</li>
</ol>
<h3>Well, anything else?</h3>
<ul>
<li>I&#8217;m considering the hypothesis of inviting people to guest post along.</li>
<li>A screencast series would be an interesting idea, most likely on Rails or application engineering, and in Portuguese — there are plenty of them in English already.</li>
</ul>
<p>That&#8217;s it for today. I hope that this installation stays put for a long long time. Give your feedback if you are so kind.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=NXXhWjVH0Zk:zgOSMk-1V-Q:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=NXXhWjVH0Zk:zgOSMk-1V-Q:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=NXXhWjVH0Zk:zgOSMk-1V-Q:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=NXXhWjVH0Zk:zgOSMk-1V-Q:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=NXXhWjVH0Zk:zgOSMk-1V-Q:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/NXXhWjVH0Zk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/08/announcing-jose-mota-%e2%80%94-new-breakthrough/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/08/announcing-jose-mota-%e2%80%94-new-breakthrough/</feedburner:origLink></item>
		<item>
		<title>Learning to be alone</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/xfssTOUfVH4/</link>
		<comments>http://jose-mota.net/2009/06/learning-to-be-alone/#comments</comments>
		<pubDate>Mon, 29 Jun 2009 21:48:52 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Personal improvement]]></category>

		<guid isPermaLink="false">http://localhost:8888/?p=83</guid>
		<description><![CDATA[It&#8217;s almost been a week since I&#8217;ve got my new job at Weemagine — Leiria and living here has been quite an adventure. For those who know me well, you know that it wouldn&#8217;t be easy. Honestly I thought it would be harder but I have been widely helped by my work team, it has been [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s almost been a week since I&#8217;ve got my new job at <a href="http://tinyurl.com/nltxmn">Weemagine — Leiria</a> and living here has been quite an adventure. For those who know me well, you know that it wouldn&#8217;t be easy. Honestly I thought it would be harder but I have been widely helped by my work team, it has been a tremendous relief to know I can count on them.</p>
<p><em>[more content is missing due to my previous blog crash. I will try and get the rest of it when I find it possible.]</em></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=xfssTOUfVH4:4mvVMnJAZD0:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=xfssTOUfVH4:4mvVMnJAZD0:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=xfssTOUfVH4:4mvVMnJAZD0:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=xfssTOUfVH4:4mvVMnJAZD0:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=xfssTOUfVH4:4mvVMnJAZD0:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/xfssTOUfVH4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/06/learning-to-be-alone/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/06/learning-to-be-alone/</feedburner:origLink></item>
		<item>
		<title>Como utilizar o MS Word / OpenOffice correctamente</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/lO7bx4Gx5yI/</link>
		<comments>http://jose-mota.net/2009/05/como-utilizar-o-ms-word-openoffice-correctamente/#comments</comments>
		<pubDate>Sun, 24 May 2009 20:22:17 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Personal improvement]]></category>
		<category><![CDATA[Português]]></category>

		<guid isPermaLink="false">http://localhost:8888/?p=79</guid>
		<description><![CDATA[O povo português não sabe utilizar o Microsoft Word — já para não falar de que nem conhecem o OpenOffice, uma versão gratuita que faz o mesmo ou melhor — e, pior que isso, gosta de não o saber utilizar! Hoje saí duma discussão com o meu pai sobre isso mesmo e não sei bem [...]]]></description>
			<content:encoded><![CDATA[<p>O povo português não sabe utilizar o Microsoft Word — já para não falar de que nem conhecem o <a href="http://openoffice.org">OpenOffice</a>, uma versão gratuita que faz o mesmo ou melhor — e, pior que isso, <strong>gosta de não o saber utilizar</strong>! Hoje saí duma discussão com o meu pai sobre isso mesmo e não sei bem em que posição cada um fica. Eu já <a href="/2008/01/a-new-approach-to-word-processing">escrevi sobre o tema</a>, desta vez vou abordar o assunto em português para não deixar ninguém de fora. Desde já, obrigado, pai.</p>
<p><span id="more-79"></span></p>
<h3>Estrutura</h3>
<a href="/wp-content/uploads/2009/07/word-styles.png"><img class="size-full wp-image-81" title="MS Word styles" src="/wp-content/uploads/2009/07/word-styles.png" alt="MS Word styles" width="260" height="335" /></a>
<p>O Word suporta estilos. Melhor que isso, já tem alguns predefinidos para se usar de imediato. Se quiser, pode mudar a formatação ao seu gosto, mas mude o estritamente necessário e <strong>mude o estilo, não o texto em si!</strong> Assim, assegura que todo o texto é uniforme e assegura a estrutura semântica do seu documento. Quando tiver de utilizar o documento entre plataformas diferentes (entre Word e Openoffice, por exemplo), o número de casualidades diminui drasticamente.</p>
<h3>Conteúdo gerado</h3>
<div id="attachment_80" class="wp-caption alignnone" style="width: 475px"><a href="/wp-content/uploads/2009/07/Picture-1.png"><img class="size-medium wp-image-80" title="Generated content" src="/wp-content/uploads/2009/07/Picture-1-465x353.png" alt="Generated content" width="465" height="353" /></a><p class="wp-caption-text">Generated content</p></div>
<p>Uma das vantagens de usar os estilos de que falei é o conteúdo gerado ser feito de forma automática e simples. Apenas indique os parâmetros necessários e a aplicação gera automaticamente o conteúdo. Melhor que gerá-lo é actualizá-lo com apenas um clique — botão direito do rato em cima do conteúdo e pedir para o actualizar. <em>Mai nada!</em></p>
<h3>Algumas regras</h3>
<ol>
<li>Não separe os parágrafos com &lt;Enter&gt;&#8217;s a mais. Defina no seu estilo que quer uma margem inferior e dê-lhe um valor mais generoso.</li>
<li>Faça das listas a coisa mais simples possível. Não arraste os manípulos para trás e para a frente, vai acabar por desuniformizar a sua estrutura e depois é mais difícil tornar a endireitar.</li>
<li>Tabelas super simples. Pode escolher as formatações automáticas sem qualquer problema. Se quiser criar um estilo único, use um estilo para tabelas e use-o sempre. Dêem também espaço suficiente nas células das tabelas.</li>
<li>Não usem WordArt nem molduras de página. Por favor.</li>
<li>Mantenham margens de página acima dos 2,5cm para ser mais fácil de ler.</li>
<li>Se tiverem um uso consistente e relativamente uniforme do Word, considerem criar templates, com os estilos já todos definidos. Assim não precisam mais de se preocupar com a formatação de cada vez que criam um documento novo.</li>
</ol>
<p>Percam algum tempo a conhecer as ferramentas que usam, elas são simples, apenas precisam de procurar. Para aqueles mais ávidos e dispostos a levar o conceito de preparação de documentos mais ao extremo, dêem-se ao trabalho de usar LaTeX. Eu uso-o e vale mesmo a pena.</p>
<p>Mantenham este conjunto de guias e orientações mais rico, comentem. Contribuam para a melhor produtividade do nosso Portugal.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=lO7bx4Gx5yI:pd2H6M5fII4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=lO7bx4Gx5yI:pd2H6M5fII4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=lO7bx4Gx5yI:pd2H6M5fII4:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=lO7bx4Gx5yI:pd2H6M5fII4:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=lO7bx4Gx5yI:pd2H6M5fII4:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/lO7bx4Gx5yI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/05/como-utilizar-o-ms-word-openoffice-correctamente/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/05/como-utilizar-o-ms-word-openoffice-correctamente/</feedburner:origLink></item>
		<item>
		<title>Relationships in Rails 2.3</title>
		<link>http://feedproxy.google.com/~r/josemotanetblog/~3/u8ItlLUbfQc/</link>
		<comments>http://jose-mota.net/2009/04/relationships-in-rails-2-3/#comments</comments>
		<pubDate>Thu, 30 Apr 2009 22:59:33 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[rails]]></category>

		<guid isPermaLink="false">http://localhost:8888/?p=77</guid>
		<description><![CDATA[Ruby on Rails is becoming quite a piece of software. I&#8217;ve been learning how to work with its latest version to date, 2.3, for a series of workshops on web development. It has surprised me how easy it is now to accomplish a simple task such as multi-model form processing. Let me show what I&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p>Ruby on Rails is becoming quite a piece of software. I&#8217;ve been learning how to work with its latest version to date, 2.3, for a series of workshops on web development. It has surprised me how easy it is now to accomplish a simple task such as multi-model form processing. Let me show what I&#8217;ve been doing lately.</p>
<p><span id="more-77"></span></p>
<h3>Case study: a school</h3>
<p>The example I am going to show my attendees resembles a typical school situation. In a nutsheel:</p>
<ul>
<li>Students have Subjects.</li>
<li>Subjects have Students.</li>
<li>Students have Grades to Subjects.</li>
</ul>
<div id="attachment_78" class="wp-caption alignnone" style="width: 452px"><a href="/wp-content/uploads/2009/07/rails-relationships-student.png"><img class="size-full wp-image-78" title="Rails relationships — student" src="/wp-content/uploads/2009/07/rails-relationships-student.png" alt="Rails relationships — student" width="442" height="98" /></a><p class="wp-caption-text">Rails relationships — student</p></div>
<h3>The Models</h3>
<h4>Student</h4>
<pre class='brush:rails'>class Student < ActiveRecord::Base
   has_many :grades
   has_many :subjects, :through => :grades, :uniq => true
   accepts_nested_attributes_for :grades, :allow_destroy => true
end</pre>
<h4>Subject</h4>
<pre class='brush:rails'>class Subject < ActiveRecord::Base
  validates_uniqueness_of :shortname
  has_many :grades
  has_many :students, :through => :grades, :uniq => true
end
</pre>
<h4>Grade</h4>
<pre class='brush:rails'>class Grade < ActiveRecord::Base
  belongs_to :subject
  belongs_to :student
  validates_presence_of :value
end
</pre>
<h3>And the magic trick!</h3>
<p>Through <em>accepts_nested_attributes_for</em>, the student's <em>form_for</em> can now accept nested fields through <em>fields_for</em> for setting Grades' data.</p>
<p>Everytime a student is created, subjects are not directly associated to him. You need to create a form in which you allow to assign a student the subjects you want.</p>
<p>[image missing]</p>
<p>This tells you that a student can have an array of subject id's. You even get to see what subjects are already assigned and dissociate them just like that! When the associations are done, a new Grade record is created to associate the first two modules. Unfortunately, when the associations are dismantled, the Grade association is gone too.</p>
<p>If you know Railscasts, the <a href="http://railscasts.com/episodes?search=complex+forms">Complex Forms series</a> explain this task for Rails &lt; 2.3. But now it has become easier and easier to associate models and worrying less about your structure.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=u8ItlLUbfQc:WTOvZQ2tdDM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=u8ItlLUbfQc:WTOvZQ2tdDM:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=u8ItlLUbfQc:WTOvZQ2tdDM:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/josemotanetblog?a=u8ItlLUbfQc:WTOvZQ2tdDM:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/josemotanetblog?i=u8ItlLUbfQc:WTOvZQ2tdDM:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/josemotanetblog/~4/u8ItlLUbfQc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://jose-mota.net/2009/04/relationships-in-rails-2-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://jose-mota.net/2009/04/relationships-in-rails-2-3/</feedburner:origLink></item>
	</channel>
</rss>
