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

<channel>
	<title>José Mota &#187; Development</title>
	<atom:link href="http://josemota.net/category/development/feed/" rel="self" type="application/rss+xml" />
	<link>http://josemota.net</link>
	<description>Web engineer &#38; architect</description>
	<lastBuildDate>Sat, 19 May 2012 15:34:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Sacrilege: a rather lousy rant on Java for the web</title>
		<link>http://josemota.net/2012/02/sacrilege-a-rather-lousy-rant-on-java-for-the-web/</link>
		<comments>http://josemota.net/2012/02/sacrilege-a-rather-lousy-rant-on-java-for-the-web/#comments</comments>
		<pubDate>Fri, 10 Feb 2012 20:34:58 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Loadacrap]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=290</guid>
		<description><![CDATA[Let me start out saying I&#8217;m glad I never had to make web apps in Java. Boostrapping the crap out of a Maven + Struts archetype is insane. I honestly don&#8217;t know what to feel for Java programmers. It&#8217;s been an hour and a half since I&#8217;ve started reading the Apache Struts 2 Web Application [...]]]></description>
			<content:encoded><![CDATA[<p>Let me start out saying I&#8217;m glad I never had to make web apps in Java. Boostrapping the crap out of a Maven + Struts archetype is insane. I honestly don&#8217;t know what to feel for Java programmers.</p>

<p>It&#8217;s been an hour and a half since I&#8217;ve started reading the <a href="http://www.amazon.com/Apache-Struts-Web-Application-Development/dp/1847193390/ref=sr_1_1?ie=UTF8&amp;qid=1328904973&amp;sr=8-1">Apache Struts 2 Web Application Development</a> book and I&#8217;m going nuts. <em>I&#8217;ve dealt with more <acronym title="eXtensible Markup Language">XML</acronym> in this hour and a half than most of the time in my degree.</em></p>

<p>Story told short:</p>

<ol>
<li>I&#8217;ve installed Netbeans and an Apache Tomcat 7 server.</li>
<li>I&#8217;ve created a new Maven Web application.</li>
<li>I&#8217;ve copied a struts routing example, along with the respective action POJO.</li>
<li>Tried to reach the <acronym title="Uniform Resource Locator">URL</acronym>; no luck.</li>
<li>Looked up for a web.xml example, in order to correctly load Struts.</li>
<li>Project won&#8217;t deploy. FML.</li>
</ol>

<p><strong>At an hour and a half, reading and typing, I could have done so much more in Rails or Sinatra. Sorry.</strong></p>

<p>I don&#8217;t care what people think about me comparing Java to Ruby at such an early stage in <em>trying to learn</em>. But hey, it&#8217;s 2012, software ought to be easier to accomplish. Why does it have to be so difficult to understand how a simple controller is executed? Why is the Java way so convoluted?</p>

<p>I&#8217;ll update this post when I can create a Struts action properly, perhaps with an interceptor. If I can make it to apply some TDD along the way, I pat myself in the back. Until then, I stay with the attitude.</p>]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2012/02/sacrilege-a-rather-lousy-rant-on-java-for-the-web/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Same class associations in Rails 3</title>
		<link>http://josemota.net/2011/12/same-class-associations-in-rails-3/</link>
		<comments>http://josemota.net/2011/12/same-class-associations-in-rails-3/#comments</comments>
		<pubDate>Fri, 09 Dec 2011 00:26:24 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=280</guid>
		<description><![CDATA[[TL;DR] Even though the selected events conceptually belong to a record, the latter has the foreign keys to former. So technically, has_one is to be changed to belongs_to. This is the first time I&#8217;ve ran into something like this and it was interesting to realize what it actually means when developing a business logic in [...]]]></description>
			<content:encoded><![CDATA[<p><strong>[TL;DR]</strong> Even though the selected events conceptually belong to a record, the latter has the foreign keys to former. So technically, <code>has_one</code> is to be changed to <code>belongs_to</code>.</p>
<hr />
<p>This is the first time I&#8217;ve ran into something like this and it was interesting to realize what it actually means when developing a business logic in Rails.</p>
<h3>Context</h3>
<p>In this app I&#8217;m building, I have <em>Students</em> that have a <em>Record</em> per year. Each record has several <em>Events</em>. These records also have two specific events: a <em>test</em> and an <em>audition</em>, registered in the schema as <code>id</code>&#8216;s in the record&#8217;s table.</p>
<h3>So what did technically happen?</h3>
<p>I wasn&#8217;t able to access those specific events through the associations specified in the model. Given <code>r = Record.first</code>, when I tried to access the audition, by using <code>r.test</code>, Rails would use a <acronym title="Structured Query Language">SQL</acronym> query that would correspond to <code>r.events.first</code> instead.</p>
<p>After acknowledging that, I turned to <a href="http://twitter.com/varandas">@varandas</a> and we both thought it might be a bug in the Rails framework. Turns out it wasn&#8217;t; all I had to do was switch from <code>has_one</code> to <code>belongs_to</code> (thanks <a href="http://github.com/drogus">@drogus</a>!). The reason for that is the foreign key is on the <code>records</code> table. From the framework&#8217;s perspective, it looks like the record actually <em>belongs to</em> the event, when in practice it&#8217;s not.</p>
<h3>Code sample</h3>
<p><script src="http://gist.github.com/1449428.js"></script></p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/12/same-class-associations-in-rails-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Piscean programming</title>
		<link>http://josemota.net/2011/11/piscean-programming/</link>
		<comments>http://josemota.net/2011/11/piscean-programming/#comments</comments>
		<pubDate>Sat, 12 Nov 2011 01:55:21 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Personal improvement]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=273</guid>
		<description><![CDATA[For those who don&#8217;t care about astrology, try to follow along; the principle is pretty practical. TL;DR – Being bossed around compromises inovation, creativity and it destroys one&#8217;s true sense of purpose. Don&#8217;t let that destroy you. The Piscean Era has begun around 0-400 A.D and, according to the math, will last until very soon. The [...]]]></description>
			<content:encoded><![CDATA[<p>For those who don&#8217;t care about astrology, try to follow along; the principle is pretty practical.</p>
<blockquote><p><strong>TL;DR</strong> – Being bossed around compromises inovation, creativity and it destroys one&#8217;s true sense of purpose. Don&#8217;t let that destroy you.</p></blockquote>
<p><span id="more-273"></span></p>
<p>The Piscean Era has begun around 0-400 A.D and, according to the math, will last until very soon. The Pisces sign has several connotations: <em>sacrifice</em>, <em>martyrization</em>, <em>faith</em>, <em>dogma</em> and <em>spiritual dictatorship</em>. This is still a challenge for many creative and passionate developers who wish to spread wings and bring a better world through technology. Only the bravest survive the food chain and those won&#8217;t don&#8217;t become slaves.</p>
<p>The Aquarian Era follows the Piscean. It stands for <em>freedom</em>, <em>love</em> and <em>conciousness</em>. These are the values I fight for. My goal is to build great stuff on the web, the way I feel it should be done. A lot of what&#8217;s built today looks great, but there are still major issues to tackle when it comes to fulfilling needs. Those needs are overrated and they don&#8217;t help the smallest, the poorest and the less bright; they only serve the allegedly powerful and certainly wealthy.</p>
<p>Open source is an awesome Aquarian movement. It&#8217;s not just the code, it&#8217;s a whole mindset. It lets people make their move and be rewarded for it. That reward is not just money, it&#8217;s also the joy of the contribution and hope for evolution.</p>
<p>This is not about companies anymore, each team member is too important to be masked with a company logo. People move a lot these days, there&#8217;s actually no point in fixating all the credit in one company in a point in time. Letting developers choose what they want to do is crucial to creativity. They will do what it takes if they feel it&#8217;s the right thing to do.</p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/11/piscean-programming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Going for JRuby</title>
		<link>http://josemota.net/2011/10/going-for-jruby/</link>
		<comments>http://josemota.net/2011/10/going-for-jruby/#comments</comments>
		<pubDate>Thu, 20 Oct 2011 00:07:13 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=269</guid>
		<description><![CDATA[The company I work for uses Java for all of its projects. Based on that, I have been considering looking into JRuby and giving it a try. Every piece of advice is greatly appreciated. Context I play the Interaction Designer role and digging deeper to Struts and Java servlets, more than just HTML/CSS/jQuery, is becoming [...]]]></description>
			<content:encoded><![CDATA[<p>The company I work for uses Java for all of its projects. Based on that, I have been considering looking into JRuby and giving it a try. Every piece of advice is greatly appreciated.</p>
<p><span id="more-269"></span></p>
<h3>Context</h3>
<p>I play the Interaction Designer role and digging deeper to Struts and Java servlets, more than just <acronym title="HyperText Markup Language">HTML</acronym>/<acronym title="Cascading Style Sheets">CSS</acronym>/jQuery, is becoming quite the challenge. I happen to love Rails and would love to try it out. My main goals are:</p>
<ol>
<li>Take advantage of Rails&#8217; controllers, routes and views;</li>
<li>Use Haml with Markdown and Sass with Compass;</li>
<li>Take advantage of REST.</li>
<li>Finally use Rspec and inject some proper testing and specification practices.</li>
</ol>
<p>All of this while the rest of the team can still code the models (aka the business logic) the way they prefer. I think it&#8217;s a good cause and it&#8217;s a great opportunity to improve development happiness and systems integration.</p>
<h3>The challenge</h3>
<p>Here is a list of the things I know:</p>
<ol>
<li>I can use <a href="http://rvm.beginrescueend.com">RVM</a> to quickly install and use JRuby.</li>
<li>Gems with C extensions are a bit difficult to use inside the JVM.</li>
<li>There are alternative gems to the ones above.</li>
</ol>
<p>I also need to get in touch with these concepts:</p>
<ul>
<li>Web application development in Java: .jar&#8217;s, war&#8217;s, etc.</li>
<li><a href="http://tomcat.apache.org">Tomcat</a> or <a href="http://glassfish.java.net">Glassfish</a> as servers.</li>
<li>Importing Java code into a Rails or Sinatra app.</li>
<li>(optional) Using Ruby code from Java.</li>
</ul>
<p>I guess the main question would be: <em>Where do I start?</em> What am I supposed to know to begin developing some sort of Rails app, using it under Tomcat or Glassfish and reusing Java code from the rest of the team? Thanks for helping me, guys!</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/10/going-for-jruby/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Does Datatables need better integration?</title>
		<link>http://josemota.net/2011/09/does-datatables-need-better-integration/</link>
		<comments>http://josemota.net/2011/09/does-datatables-need-better-integration/#comments</comments>
		<pubDate>Thu, 01 Sep 2011 16:21:38 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[datatables]]></category>
		<category><![CDATA[functional]]></category>
		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=265</guid>
		<description><![CDATA[Over these last two months, I&#8217;ve been working with Datatables, an amazing easy-to-setup steroid machine for HTML tables. For the kind of work I&#8217;m doing right now, it suits my needs just perfectly. A couple of weeks ago I needed to build a plugin for DT: MultipleFilters, something that would allow me to filter data [...]]]></description>
			<content:encoded><![CDATA[<p>Over these last two months, I&#8217;ve been working with <a href="http://datatables.net" target="_blank">Datatables</a>, an amazing easy-to-setup steroid machine for <acronym title="HyperText Markup Language">HTML</acronym> tables. For the kind of work I&#8217;m doing right now, it suits my needs just perfectly.</p>
<p>A couple of weeks ago I needed to build a plugin for DT: <em>MultipleFilters</em>, something that would allow me to filter data by a range. Each column would have a pair of fields and I would have to mix them into the bowl of parameters to send to the server . It looked fun, so I started doing it, hoping to achieve a beautiful Javascript prototype object that would <a title="Enable features by adding a letter in the sequence of features." href="http://datatables.net/development/features" target="_blank">do magic when plugged in by a single letter</a>. As I was finishing building it, I realized some issues had to be fixed.</p>
<p><span id="more-265"></span></p>
<p><strong>Disclaimer</strong>: The plugin does not approach local processing, only server-side.</p>
<h3>Push data to the server without using fnServerData</h3>
<p>With minimum coupling in mind, I wanted to find a way that allowed to push data to the server without using the <code>fnServerData</code> option in the initializer. That&#8217;s not what the end user wants, he wants to just download the plugin, place it in and there, it does range filtering.</p>
<p>My suggestion here would be an array of functions (perhaps called <code>afnbeforeSend</code>) that allowed any plugin builder to be able to inject parameters to be sent. That way, when my plugin is initialized, I can push my function that injects such parameters and I don&#8217;t pollute the initializers.</p>
<h3>Integrate with other plugins, such as ColVis or ColReorder</h3>
<p>Datatables&#8217; features that have controls, such as MF, require a <acronym title="Document Object Model">DOM</acronym> object to be returned in the fnInit function. As of now, I am generating the feature with just a button. The actual controls are being appended to the table&#8217;s footer, with no regard to the column order or state of visualization.</p>
<p>At some point in time, I faced a lot of trouble as I watched multiple controls get spawned across the table, as well as the controls not being switched along with the column being reordered nor being hidden / shown when you check a column with <code>ColVis</code>. Wouldn&#8217;t it be great if both <code>ColVis</code> and <code>ColReorder</code> had some sort of array of callbacks we could populate? When <code>ColVis</code> toggled a column, I could access it and toggle my filter controls accordingly. When <code>ColReorder</code> dragged a column around, I could know which one and to where it moved. All of this without requiring additional initialization and granting cohesion, based on a functional approaching.</p>
<p>For what it&#8217;s worth, I actually had to hack inside ColReorder and add some code in there so I had to accomplish some integration between MF and CR.</p>
<h3>So, is there a need for better integration?</h3>
<p>Before I jump into the conclusion, I should say that <a href="http://www.sprymedia.co.uk/about" target="_blank">Allan</a> did a great job on building Datatables, it&#8217;s a remarkable piece of software.</p>
<p>I told him that I would risk being stupid to the point of being told to <acronym title="Read The Fucking Manual">RTFM</acronym>, but I stand for ease of read as well as ease of use. There should clearly be some plugin development guidelines and I personally volunteer to help build those guidelines. Based on what I know, <em>I would say there is a need to improve integration. If it&#8217;s not for how it&#8217;s built, it would by the way it&#8217;s told.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/09/does-datatables-need-better-integration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cucumber / Rspec and documentation as one</title>
		<link>http://josemota.net/2011/08/cucumber-rspec-and-documentation-as-one/</link>
		<comments>http://josemota.net/2011/08/cucumber-rspec-and-documentation-as-one/#comments</comments>
		<pubDate>Mon, 01 Aug 2011 23:33:04 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Personal improvement]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=255</guid>
		<description><![CDATA[A Ruby developer I met recently told me that the majority of us Rubyists skip documentation in favor of Test Driven Development tools. Some business are still pretty waterfall oriented and demand all the requirements gathering, business analysis and design beforehand, as well as hard documentation with lots of funny terms and fancy diagrams. I [...]]]></description>
			<content:encoded><![CDATA[<p>A Ruby developer I met recently told me that the majority of us Rubyists skip documentation in favor of <a href="http://en.wikipedia.org/wiki/Test-driven_development">Test Driven Development</a> tools. Some business are still pretty <a title="Waterfall design process" href="http://en.wikipedia.org/wiki/Waterfall_model">waterfall oriented</a> and demand all the requirements gathering, business analysis and design beforehand, as well as hard documentation with lots of funny terms and fancy diagrams.</p>
<p>I told her I was looking forward to studying <a href="http://cukes.info">Cucumber</a> and <a href="http://rspec.info">Rspec</a> in order to improve my skills. She asked me how I did documentation using those tools and I answered: “Cucumber and Rspec are the documentation”. As she twisted her nose I could tell I had to research more on the topic; so I did.</p>
<p><span id="more-255"></span></p>
<p>I have been reading the Rspec book. Definitely read it if you want to know how to code better.</p>
<h3>Why does “documentation” feel so hard?</h3>
<p>Dumb answer: <em>It sucks</em>. Smart answer would be something like: <em>You might be doing it wrong</em>.</p>
<p>Documentation specifies a software&#8217;s collection of procedures it performs. Why should we even try and build software that does not resemble people&#8217;s expectations? (If it weren&#8217;t Ruby, I&#8217;d guess the software to be built required another form of understanding, which is fine and yet irrelevant in this case.)</p>
<h3>Who is the documentation for?</h3>
<p>Not just people, but stakeholders who want straightforward answers. 150 pages of paper is not the way to accomplish that, <acronym title="In my opinion">IMO</acronym>. They know what they asked for and we should build the answers accordingly.</p>
<h3>Cucumber and Rspec</h3>
<p>What&#8217;s wrong with automated documentation? How beautiful is it to have a stakeholder look to a set of Cucumber features and Rspec examples that assert precisely what he asked for — damn, he might have written those features…! — and find the answer?</p>
<p>Cucumber defines vocabulary for the system, states what it does and who. And it helps developers and stakeholders connect and collaborate.</p>
<p>PS: being a designer, I know I must present my documentation as pleasant as possible. Well, I guess Cucumber and Rspec just support this statement of mine, don&#8217;t they…?</p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/08/cucumber-rspec-and-documentation-as-one/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blogrite — on indexes</title>
		<link>http://josemota.net/2011/07/blogrite-on-indexes/</link>
		<comments>http://josemota.net/2011/07/blogrite-on-indexes/#comments</comments>
		<pubDate>Tue, 05 Jul 2011 07:42:18 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=244</guid>
		<description><![CDATA[Blogrite has been having a steady grow since I announced it; slow but growing still. Single pages finally work and I&#8217;m pretty happy with the results. Thanks to Ruben Fonseca for helping me out with this issue I had bugging me for quite some time. I have reached a milestone. The next thing I need to [...]]]></description>
			<content:encoded><![CDATA[<p>Blogrite has been having a steady grow since I announced it; slow but growing still. Single pages finally work and I&#8217;m pretty happy with the results. Thanks to <a title="@rubenfonseca" href="http://twitter.com/rubenfonseca">Ruben Fonseca</a> for helping me out with <a title="The HTTP status would be a 404 after the first bad one." href="https://github.com/josemota/blogrite/commit/632ff222c9f2abca8f66015f067543638806e009">this issue</a> I had bugging me for quite some time.</p>
<p>I have reached a milestone. The next thing I need to build is an index page that inevitably fetches all the posts I have. <em>But how am I supposed to do that with files</em>? If I didn&#8217;t build Blogrite to allow multiple content providers, I would fix the posts&#8217; location into the filesystem and perform system calls like <code>find</code> or <code>tail</code> or something else. I wouldn&#8217;t have to think about an index file that would be built everytime I write something new, in order to increase performance. But since this is not the case, I need to come up with a solution.</p>
<p>What I do know is the responsability of getting the index content is the provider&#8217;s.</p>
<ul>
<li>If I hosted content live along with the system – like I mentioned above –, <code>find</code> or <code>tail</code> system calls would be fine.</li>
<li>If I used Git, I could use a post-commit hook and have it change that post info in an index file.</li>
<li>Dropbox would be a totally different story. Are there any hooks in the service for automated scripts? (honestly I don&#8217;t think there are, feel free to prove me wrong!)</li>
</ul>
<p>All of this considering an automated index page. There might be another ways of accomplishing this. I&#8217;m open to suggestions, throw &#8216;em away.</p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/07/blogrite-on-indexes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UFZvalidator: form validator jQuery plugin</title>
		<link>http://josemota.net/2011/06/ufzvalidator-form-validator-jquery-plugin/</link>
		<comments>http://josemota.net/2011/06/ufzvalidator-form-validator-jquery-plugin/#comments</comments>
		<pubDate>Thu, 09 Jun 2011 17:55:47 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Personal improvement]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=239</guid>
		<description><![CDATA[I have been working with Utopic Farm&#8216;s jQuery Form Validator for a while, it&#8217;s a good plugin. But I have been forced to change it to suit my needs. I thought it would be a great idea to just fork it and release the changes I made previously. I asked Tolga Arican what the license [...]]]></description>
			<content:encoded><![CDATA[<p>I have been working with <a href="http://utopicfarm.com">Utopic Farm</a>&#8216;s <a href="http://plugins.jquery.com/project/ufvalidator">jQuery Form Validator</a> for a while, it&#8217;s a good plugin. But I have been forced to change it to suit my needs. I thought it would be a great idea to just fork it and release the changes I made previously.</p>
<p>I asked Tolga Arican what the license what kind of license they had for the plugin, they said <em>none</em>. I decided to <a href="http://github.com/josemota/ufzvalidator">fork the project</a> and host it on Github, so I could make improvements to the plugin and share them with everyone. Enjoy! Props to the Utopic Farm team for building such a great plugin.</p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/06/ufzvalidator-form-validator-jquery-plugin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blogrite 006 &#8211; It works! Well, sort of.</title>
		<link>http://josemota.net/2011/05/blogrite-006-it-works-well-sort-of/</link>
		<comments>http://josemota.net/2011/05/blogrite-006-it-works-well-sort-of/#comments</comments>
		<pubDate>Tue, 24 May 2011 22:55:00 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Personal improvement]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[screencast]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=229</guid>
		<description><![CDATA[I told you before I would post a video on the development of Blogrite after Rubynorte. So here it is. Topics included It works! Well, sort of. The first request is a 200, all the other ones throw me a 404 CSS file! ERB for rendering the templates. Classes over modules for extension? I appreciate [...]]]></description>
			<content:encoded><![CDATA[<p><iframe src="http://player.vimeo.com/video/24182015?title=0&amp;byline=0&amp;portrait=0&amp;color=ff9933" width="466" height="291" frameborder="0"></iframe></p>
<p>I told you before I would post a video on the development of Blogrite after Rubynorte. So here it is.</p>
<h3>Topics included</h3>
<ul>
<li><em>It works!</em></li>
<li><em> </em>Well, sort of. The first request is a 200, all the other ones throw me a 404 <acronym title="Cascading Style Sheets">CSS</acronym> file!</li>
<li>ERB for rendering the templates.</li>
<li>Classes over modules for extension?</li>
</ul>
<p>I appreciate your feedback, you can clone the project at <a href="http://github.com/josemota/blogrite">Github</a>.</p>
<p>After fixing the bugs I still have, I intend on fetching the list of posts at the root. Or I can let the final user create an index.txt for a landing page.</p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/05/blogrite-006-it-works-well-sort-of/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blogrite 005 &#8211; Tests pass, server runs</title>
		<link>http://josemota.net/2011/05/blogrite-005-tests-pass-server-runs/</link>
		<comments>http://josemota.net/2011/05/blogrite-005-tests-pass-server-runs/#comments</comments>
		<pubDate>Mon, 09 May 2011 20:14:33 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Personal improvement]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[screencast]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=221</guid>
		<description><![CDATA[I have talked a little faster today but still a bit longer than I had wished for. I&#8217;m excited to bring good news about Blogrite, I&#8217;m steadly growing my knowledge on Ruby. Rack is really interesting, I&#8217;m loving how simple and easy to learn it is so far. Testing is fun when you start to [...]]]></description>
			<content:encoded><![CDATA[<p><iframe src="http://player.vimeo.com/video/23494236?title=0&amp;byline=0&amp;portrait=0&amp;color=ff9933" width="466" height="291" frameborder="0"></iframe></p>
<p>I have talked a little faster today but still a bit longer than I had wished for. I&#8217;m excited to bring good news about Blogrite, I&#8217;m steadly growing my knowledge on Ruby. Rack is really interesting, I&#8217;m loving how simple and easy to learn it is so far.</p>
<p>Testing is fun when you start to think of features you want to implement and quickly draw a quick test that will fail and you try to make it pass. I can&#8217;t wait to start the refactoring phase, when everything is working the <em>not-so-right</em> way.</p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/05/blogrite-005-tests-pass-server-runs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blogrite 003 – Requires done wrong</title>
		<link>http://josemota.net/2011/03/blogrite-003-requires-done-wrong/</link>
		<comments>http://josemota.net/2011/03/blogrite-003-requires-done-wrong/#comments</comments>
		<pubDate>Thu, 31 Mar 2011 21:05:51 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Personal improvement]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[screencast]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=203</guid>
		<description><![CDATA[Still not much to show you, sadly. I&#8217;m having trouble setting my tests up so the rest flows well. If you guys help me out on this, I will be sure to mention you in the following video, you deserve it. Thanks for all the help guys.]]></description>
			<content:encoded><![CDATA[<p>Still not much to show you, sadly. I&#8217;m having trouble setting my tests up so the rest flows well. If you guys help me out on this, I will be sure to mention you in the following video, you deserve it.</p>
<p>Thanks for all the help guys.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="466" height="291" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=21772926&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" /><embed type="application/x-shockwave-flash" width="466" height="291" src="http://vimeo.com/moogaloop.swf?clip_id=21772926&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/03/blogrite-003-requires-done-wrong/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Blogrite 002 – Where to even start</title>
		<link>http://josemota.net/2011/03/blogrite-002-where-to-even-start/</link>
		<comments>http://josemota.net/2011/03/blogrite-002-where-to-even-start/#comments</comments>
		<pubDate>Wed, 30 Mar 2011 21:04:07 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Personal improvement]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[screencast]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=199</guid>
		<description><![CDATA[It&#8217;s the first time I am writing any tests at all, I&#8217;m dead serious. Please bear with me, I&#8217;d appreciate your help in guiding towards the magic of TDD. Thanks guys. What I noticed already I chose Minitest after Rspec because it&#8217;s leaner, which is what I want for now. Requiring &#8216;minitest/autorun&#8217; will run my [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s the first time I am writing any tests at all, I&#8217;m dead serious. Please bear with me, I&#8217;d appreciate your help in guiding towards the magic of TDD. Thanks guys.</p>
<h3>What I noticed already</h3>
<ul>
<li>I chose Minitest after Rspec because it&#8217;s leaner, which is what I want for now.</li>
<li>Requiring &#8216;minitest/autorun&#8217; will run my tests automatically.</li>
<li>The class to inherit from is Minitest::Unit::TestCase, not from the Test module.</li>
</ul>
<p>I&#8217;m still missing stuff like how to require and autoload right. I&#8217;m pretty sure is wrong with that.</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="466" height="291" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=21714980&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" /><embed type="application/x-shockwave-flash" width="466" height="291" src="http://vimeo.com/moogaloop.swf?clip_id=21714980&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/03/blogrite-002-where-to-even-start/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Blogrite 001 – Prelude</title>
		<link>http://josemota.net/2011/03/blogrite-001-prelude/</link>
		<comments>http://josemota.net/2011/03/blogrite-001-prelude/#comments</comments>
		<pubDate>Tue, 29 Mar 2011 21:12:08 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Personal improvement]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[screencast]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=195</guid>
		<description><![CDATA[I&#8217;ve posted my first video about Blogrite. It mainly states initial thoughts and motivation on the project. @dhh started a heated discussion on Rspec vs Test::Unit, right after I finished the recording. I must admit he&#8217;s a genius and he actually made me reconsider Test::Unit again, since it is considerably lighter than Rspec. I&#8217;ll have [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve posted my first video about Blogrite. It mainly states initial thoughts and motivation on the project.</p>

<p>@dhh started a <a title="I respect the guys behind it and I'm all for experimentation, but the proliferation of rSpec and Cucumber makes me sad. / RSpec offends me aesthetically with no discernible benefit for its added complexity over test/unit." href="https://twitter.com/dhh/status/52806992150007808">heated discussion on Rspec vs Test::Unit</a>, right after I finished the recording. I must admit he&#8217;s a genius and he actually made me reconsider Test::Unit again, since it is considerably lighter than Rspec. I&#8217;ll have to think about it.</p>

<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="466" height="291" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://vimeo.com/moogaloop.swf?clip_id=21663789&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" /><embed type="application/x-shockwave-flash" width="466" height="291" src="http://vimeo.com/moogaloop.swf?clip_id=21663789&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1&amp;autoplay=0&amp;loop=0" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/03/blogrite-001-prelude/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New journey: Ruby + git = Blogrite</title>
		<link>http://josemota.net/2011/03/new-journey-ruby-git-blogrite/</link>
		<comments>http://josemota.net/2011/03/new-journey-ruby-git-blogrite/#comments</comments>
		<pubDate>Mon, 28 Mar 2011 23:51:15 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Miscellaneous]]></category>
		<category><![CDATA[Personal improvement]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=190</guid>
		<description><![CDATA[Truth: my blog and I have been apart for a while. Another truth: I&#8217;ve been reading more about Ruby. In fact, the more I read, the more I want to. Also, I&#8217;ve been growing tired of certain things: PHP is not it anymore. WordPress or Drupal are top notch. I don&#8217;t need top notch; I [...]]]></description>
			<content:encoded><![CDATA[<p>Truth: my blog and I have been apart for a while. Another truth: I&#8217;ve been reading more about Ruby. In fact, the more I read, the more I want to. Also, I&#8217;ve been growing tired of certain things:</p>
<ul>
<li><acronym title="Pre-Hypertext Processing">PHP</acronym> is not it anymore.</li>
<li>WordPress or Drupal are top notch. I don&#8217;t <em>need</em> top notch; I want to publish content easier and faster.</li>
<li>I want to learn Ruby the hard way. I want to learn how to <em>test</em>, I want to learn how to <em>build a gem</em>, how to use <em>Rack</em>, all of it. Only then I&#8217;ll be more confident enjoying the full power of Ruby.</li>
<li>I <em>don&#8217;t </em>want to <em>depend on a database</em> to publish my content. I never saw that much sense in storing articles inside a relational database column. I love <em>Git</em> and it seems it is capable of storing the content I want.</li>
<li>I&#8217;m sick of 10+ spam comments a day.</li>
</ul>
<p>My next dare: a git + ruby based blog. So, I&#8217;ll be posting several articles on how I&#8217;m doing. If possible, I&#8217;ll post videos too. I&#8217;ll make sure to use Vimeo since it accepts OGG (it seems lighter).</p>
<p>Thanks to the people at the <a href="http://locks.github.com/rubynorte">Ruby meetup in March 19th</a> who have motivated me (even without knowing).</p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/03/new-journey-ruby-git-blogrite/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Prototypes in Rails?</title>
		<link>http://josemota.net/2011/02/prototypes-in-rails/</link>
		<comments>http://josemota.net/2011/02/prototypes-in-rails/#comments</comments>
		<pubDate>Mon, 21 Feb 2011 17:44:48 +0000</pubDate>
		<dc:creator>José Mota</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://josemota.net/?p=187</guid>
		<description><![CDATA[Prototyping is good tool; if your regular development is slow, not agile and you need to draft something up real quick for your client. If you&#8217;re a Rails developer / designer, why even bother? Why not just start pumping the business up? You don&#8217;t have that much attrition to get an app up and running. [...]]]></description>
			<content:encoded><![CDATA[<p>Prototyping is good tool; if your regular development is slow, not agile and you need to draft something up real quick for your client.</p>
<p>If you&#8217;re a Rails developer / designer, why even bother? Why not just start pumping the business up? You don&#8217;t have that much attrition to get an app up and running. All the time you spend in prototyping should be invested in building the actual app.</p>
<p>Web application design walks with its development, they are too close to be set apart.</p>
]]></content:encoded>
			<wfw:commentRss>http://josemota.net/2011/02/prototypes-in-rails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

