summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosé Mota <josemota.net@gmail.com>2012-04-06 19:40:37 +0100
committerJosé Mota <josemota.net@gmail.com>2012-04-06 19:40:37 +0100
commit3204575bfcd1f12db5945c8959073d40915cfdfe (patch)
tree5b35a0896f91043c931482b5ecb99dc2aa154310
parent6644e3213758ac5f8ea4f388d4dcf4105e7d4530 (diff)
Import all posts.
-rw-r--r--_posts/2007-12-21-a-new-approach-to-development.markdown51
-rw-r--r--_posts/2008-01-11-a-new-approach-to-word-processing.html28
-rw-r--r--_posts/2008-03-17-flash-navigaton-bars-ie-6-only.html26
-rw-r--r--_posts/2008-03-18-i-got-my-first-bitchy-job.html22
-rw-r--r--_posts/2008-04-21-latex-the-word-processor-for-engineers-and-smart-people-too.html19
-rw-r--r--_posts/2008-05-01-overuse-of-ajax-is-not-good.html20
-rw-r--r--_posts/2008-05-14-what-i-think-about-leadership-and-work.html27
-rw-r--r--_posts/2008-05-25-a-feel-of-deep-change.html22
-rw-r--r--_posts/2008-06-26-the-balance-of-my-trip-to-the-usa.html30
-rw-r--r--_posts/2008-09-22-last-year-in-a-nutshell.html26
-rw-r--r--_posts/2008-10-09-pixelmator-a-smaller-photoshop.html14
-rw-r--r--_posts/2008-10-10-mastering-content.html21
-rw-r--r--_posts/2008-10-20-corrupt-kings-an-approach-to-greedy-people-of-the-web.html17
-rw-r--r--_posts/2008-10-29-collaboration-in-development.html34
-rw-r--r--_posts/2008-11-01-accessibility-in-real-life.html22
-rw-r--r--_posts/2008-11-10-effective-web-design-so-many-attributes-for-what.html30
-rw-r--r--_posts/2008-11-27-facing-freelancers-a-skill-for-clients-to-master.html33
-rw-r--r--_posts/2008-12-15-blogging-for-real-people.html29
-rw-r--r--_posts/2008-12-25-apache-2-on-mac-os-x-leopard-10-5-issue-on-upgrade.html40
-rw-r--r--_posts/2009-01-07-the-960px-grid-on-top-of-full-range-background.html39
-rw-r--r--_posts/2009-02-12-2009-my-fresh-start.html31
-rw-r--r--_posts/2009-03-01-building-a-system-on-your-own-when-youre-a-rookie.html41
-rw-r--r--_posts/2009-03-11-semi-final-do-concurso-internacional-de-kizomba.html18
-rw-r--r--_posts/2009-03-24-rescaldo-do-africadancar-2009.html36
-rw-r--r--_posts/2009-04-17-how-to-backup-your-drupal-site-using-backup-migrate.html25
-rw-r--r--_posts/2009-04-30-relationships-in-rails-2-3.html54
-rw-r--r--_posts/2009-05-24-como-utilizar-o-ms-word-openoffice-correctamente.html35
-rw-r--r--_posts/2009-06-29-learning-to-be-alone.html14
-rw-r--r--_posts/2009-08-03-announcing-jose-mota-%e2%80%94-new-breakthrough.html33
-rw-r--r--_posts/2009-08-03-screencast-de-ruby-on-rails-em-portugues.html19
-rw-r--r--_posts/2009-08-16-rails-a-moda-do-porto-episodio-1.html20
-rw-r--r--_posts/2009-08-19-should-you-still-support-ie-6.html29
-rw-r--r--_posts/2009-08-24-rails-a-moda-do-porto-episodio-2.html41
-rw-r--r--_posts/2009-08-29-designing-for-the-invisible.html33
-rw-r--r--_posts/2009-08-30-rails-a-moda-do-porto-episodio-3.html65
-rw-r--r--_posts/2009-09-06-rails-a-moda-do-porto-episodio-4.html24
-rw-r--r--_posts/2009-09-21-fail-a-moda-do-porto.html18
-rw-r--r--_posts/2009-09-28-rails-a-moda-do-porto-episodio-5.html34
-rw-r--r--_posts/2009-10-12-do-what-you-do-and-dont-like.html27
-rw-r--r--_posts/2009-11-07-approaching-people-through-your-website-copy.html29
-rw-r--r--_posts/2010-01-27-zend-framework-friend-or-foe.html29
-rw-r--r--_posts/2010-03-17-vendo-dominio-amodadoporto-com.html14
-rw-r--r--_posts/2010-03-26-i-read-rework-i-loved-it.html25
-rw-r--r--_posts/2010-04-20-to-show-or-not-to-show-registered-user-only-actions.html25
-rw-r--r--_posts/2010-04-26-tear-up-your-clients-proposal-in-half.html27
-rw-r--r--_posts/2010-04-29-html-semantics-brs-control-labels.html33
-rw-r--r--_posts/2010-04-30-nao-dou-mais-abracos-a-estranhos.html17
-rw-r--r--_posts/2010-05-04-wasting-time-a-story-about-motivation.html22
-rw-r--r--_posts/2010-05-19-apresentacao-no-barcamp-pt.html26
-rw-r--r--_posts/2010-05-26-o-lamento-de-um-designer.html20
-rw-r--r--_posts/2010-06-07-rescaldo-do-barcamp-pt-2010.html23
-rw-r--r--_posts/2010-06-13-wanted-micromanagement-dead.html45
-rw-r--r--_posts/2010-06-30-resultados-do-questionario-cv.html20
-rw-r--r--_posts/2010-07-02-age-still-a-prejudice.html28
-rw-r--r--_posts/2010-07-06-singular-resourcing-on-rails-3-beta.html28
-rw-r--r--_posts/2010-09-23-on-honesty.html20
-rw-r--r--_posts/2010-11-05-rails-3-has_many-through-checkboxes.html30
-rw-r--r--_posts/2011-02-21-prototypes-in-rails.html21
-rw-r--r--_posts/2011-03-29-blogrite-001-prelude.html21
-rw-r--r--_posts/2011-03-29-new-journey-ruby-git-blogrite.html25
-rw-r--r--_posts/2011-03-30-blogrite-002-where-to-even-start.html25
-rw-r--r--_posts/2011-03-31-blogrite-003-requires-done-wrong.html20
-rw-r--r--_posts/2011-04-11-blogrite-git-or-dropbox.html21
-rw-r--r--_posts/2011-04-18-blogrite-004-lots-of-news.html20
-rw-r--r--_posts/2011-05-09-blogrite-005-tests-pass-server-runs.html19
-rw-r--r--_posts/2011-05-10-blogrite-see-you-at-rubynorte.html16
-rw-r--r--_posts/2011-05-24-blogrite-006-it-works-well-sort-of.html27
-rw-r--r--_posts/2011-06-08-blogrite-007-classes-over-modules-404-is-not-ok.html19
-rw-r--r--_posts/2011-06-09-ufzvalidator-form-validator-jquery-plugin.html15
-rw-r--r--_posts/2011-07-05-blogrite-on-indexes.html23
-rw-r--r--_posts/2011-08-02-cucumber-rspec-and-documentation-as-one.html31
-rw-r--r--_posts/2011-09-01-does-datatables-need-better-integration.html35
-rw-r--r--_posts/2011-10-20-going-for-jruby.html40
-rw-r--r--_posts/2011-11-12-piscean-programming.html23
-rw-r--r--_posts/2011-12-09-same-class-associations-in-rails-3.html31
-rw-r--r--_posts/2011-12-26-a-perspective-on-education.html54
-rw-r--r--_posts/2012-02-10-sacrilege-a-rather-lousy-rant-on-java-for-the-web.html33
-rw-r--r--_posts/2012-02-28-innovation:-mediocrity-vs-community.html24
-rw-r--r--_posts/2012-02-28-ruby-as-a-philosophy.html31
-rw-r--r--_posts/2012-02-28-talks-2.0---o-resultado.html53
-rw-r--r--_posts/2012-02-28-the-switch:-textmate-to-vim.html12
81 files changed, 2247 insertions, 0 deletions
diff --git a/_posts/2007-12-21-a-new-approach-to-development.markdown b/_posts/2007-12-21-a-new-approach-to-development.markdown
new file mode 100644
index 0000000..1fcc39e
--- /dev/null
+++ b/_posts/2007-12-21-a-new-approach-to-development.markdown
@@ -0,0 +1,51 @@
+---
+layout: post
+title: A new approach to development
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+As the Web users number increases, so does the number of Web collaborators,
+should we call them this way. In fact, we keep watching the wonderful things
+the Web has brought since Tim Berners Lee. Today we see a lot of applications
+and a lot of content that increases everyone's attention to one thing: the
+Internet is not just for richest and the most powerful. It reaches everyone.
+
+Developers should take this seriously, as we are Web users as well. We all
+enjoy beautifully crafted web pages and the seamless complexity of a web
+application like <a title="Facebook" href="http://facebook.com">Facebook</a>,
+<a title="Drupal" href="http://drupal.org">Drupal</a>, <a
+href="http://digg.com">Digg</a>, <a href="http://del.icio.us">del.icio.us</a>,
+amongst others. Have we even noticed what's underneath it all? Sounds
+interesting... I want to share a very simple guideline that's amazingly
+powerful for anyone to grab onto: <em>high-level interfacing.</em> Imagine
+anything you want. I'm picking a blog, for example; like this one. Yea, that's
+right: this very blog has this guideline applied.
+
+A blog as we know it has some basic features:
+
+ * has several "entries";
+ * can be commented by anyone (registered or not);
+ * can be categorized and it is run by it own author, like a journal.
+
+Now imagine yourself with your journal in front of you, all you have to do as
+an author is write in it. As a reader, you just want to read and comment it.
+You just wished you had a button called "Post!" and a button called "Post
+comment!". It's all part of the same thing, the same object. Wait a minute:
+this reminds me of those boring C++ classes where the teacher yelled at us:
+"It's a single object, with its unique methods!". Well, why not try the same
+thing in your tiny little webapp?
+
+Start thinking about the things our blog example can do. Each feature you think
+of should be a function of our new Blog class/interface - I'd rather consider
+this an interface, so it can be implemented in any way you like -. At the end
+of it all you'll come up with a neat, professional and clean set of functions
+organized in a single structure, thus gaining sense for the user that actually
+uses it and for the developer that immediately recognizes the whole structure
+and workflow.
+
+This is high-level information processing; a new approach to web development.
diff --git a/_posts/2008-01-11-a-new-approach-to-word-processing.html b/_posts/2008-01-11-a-new-approach-to-word-processing.html
new file mode 100644
index 0000000..014b236
--- /dev/null
+++ b/_posts/2008-01-11-a-new-approach-to-word-processing.html
@@ -0,0 +1,28 @@
+---
+layout: post
+title: A new approach to word processing
+tags:
+- Design
+- Miscellaneous
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Last month I came up with a college project where we had to report our work in a 70-90 pages technical document. I was in a five people group and we agreed that everyone had to write a part of it and gather it all in the end. I was talking to another group's colleague about the way they were gathering all the jigsaws of the puzzle. He said his group took about two and a half hours to complete the formatting and design of the whole document. After I browsed through their document, I took my not so good conclusions... The report was somehow inconsistent and compromised. Obviously the job wasn't successfully accomplished.
+
+<!--more-->Most people don't know how to process text and that's a fact. Everyone has this major problem and it affects any organization's productivity. I want to share some thoughts on this subject, namely three tips:
+<h3>No extra RETURN's</h3>
+We are all used to grant whitespace to each paragraph by pressing RETURN, even if a single time. Well, don't. Use the space-before/after-paragraph feature. It may sound strange when you have your text altogether at first glance but when you apply this feature, the results will be shiny and it will save you a lot of time!
+<h3>Default styling</h3>
+You should be using this all the time for two major reasons:
+<ul>
+ <li>You get an instant look and feel of what your document will look like. In my modest opinion, the default styles on any word processor look just fine.</li>
+ <li>You might now know this but when you apply the default styles available, you automatically build a semantic structure of your document. This means you can create a table of contents or a document outline with zero effort! This is extremely useful when exporting to PDF because it promotes accessibility and usability.</li>
+</ul>
+You can obviously change the style the way you want but you should change the style and not the paragraph using that style. If you change the style you ensuring that every single paragraph is affected and the document looks consistent.
+<h3>Templates</h3>
+It's amazing how powerful this tool can be. Just define the styles in a blank document - you can even put some text with the various styles to be used - and save it as a template. Both Microsoft Word and Apple Pages have this feature. This tool is absolutely power-saving when more than one person writes the same document.
+
+Should you use these suggestions I presented and you will have your time saved for sure.
diff --git a/_posts/2008-03-17-flash-navigaton-bars-ie-6-only.html b/_posts/2008-03-17-flash-navigaton-bars-ie-6-only.html
new file mode 100644
index 0000000..e176724
--- /dev/null
+++ b/_posts/2008-03-17-flash-navigaton-bars-ie-6-only.html
@@ -0,0 +1,26 @@
+---
+layout: post
+title: Flash navigaton bars? IE 6 only.
+tags:
+- Design
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+I recall the times I still used Microsoft's IE browser. Every fancy website had these navigation bars with killer graphics at the time. I wanted to browse through the still messy deprecated HTML so I could learn myself some new techniques along my web design debut. I found this OBJECT tag at the time and was amazed like "Wow, cool graphics! When do I get the chance to do something alike?" I found later that it was a Flash object that I consider nowadays to be a pain in the ass in which concerns web design standards.
+
+<!--more-->
+
+I don't like it when Flash takes over HTML / CSS / Javascript for three reasons:
+<ol>
+ <li>It's not Flash's job to BE a website or replace HTML content.</li>
+ <li>I hate waiting several seconds to see web content.</li>
+ <li>Imagine the Internet download bill...!</li>
+</ol>
+Flash is a great technology, I love Youtube. It's fantastic how Flash allows you to transpose from different video formats into it so people can view it on the web. But I don't see it as HTML replacer, unless it's IE 6.
+
+IE 6, as you know, is simply the worst web browser ever (if you deny this I suggest you go to bed and wait till IE shuts down). The CSS float property is not supported. This means if I tried to do this kind navigation bar with some floated &lt;li&gt; tags, the list would appear top-down..! Designers thought about this of course and they decided to go for Flash because it had this chance to show "buttons" and with those killer graphics and hover / click effects that IE doesn't have except for hyperlinks (even these are limited).
+
+Flash's arrival came just in time. It would bring much greater vision on web design; kind of cheating but it's ok. Nowadays we can assist beautiful accomplishments on web design and killer graphics, without Flash. This can now be assigned to what it's meant to be: non-content interactive action.
diff --git a/_posts/2008-03-18-i-got-my-first-bitchy-job.html b/_posts/2008-03-18-i-got-my-first-bitchy-job.html
new file mode 100644
index 0000000..15193f9
--- /dev/null
+++ b/_posts/2008-03-18-i-got-my-first-bitchy-job.html
@@ -0,0 +1,22 @@
+---
+layout: post
+title: I got my first (bitchy) job!
+tags:
+- Loadacrap
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+So the day has come... I'm not that excited because the whole day sucked like hell. If you're a guy who's hoping to get a decent job on your first try, forget it.
+
+<!--more-->
+
+For a start off, I arrived at 9h30 at the office so I would start being taught the all-fancy Microsoft's SharePoint... yet the boss only came at midday! I wasted 2,5 hours for nothing. When the guy actually came he said I should start with SharePoint right away. The thing is he didn't actually say I was to do it all by myself. After some dirty stuff we did lifting closets, me and a newcomer as well were given a book (not two - one per brain - , just one) and told: "Start doin' it, you have this virtual machine to start playing around..." What the hell?! Where's our training? This slide-like 250 page book with something we didn't put our brains into whensoever in our entire life and we just «start doin' it»??
+
+The worst thing was the machine I was given: it didn't work! I had to format it myself and spend 2 hours trying to make it work with the virtual machine up and running as well..! After all that was clear, I tried to actually run the VM; result: it didn't work again. One more hour to fix it and it finally goes up. What's my final suprise? The VM is slow as a turtoise!
+
+I can't work like this! Somebody make time go bullet fast because I had enough of this and it's been only my first day! I start to get a little scared of what might happen the next weeks.
+
+<span style="text-decoration: line-through;">I'm looking for a company that wants PHP or Rails with special concern on page design. Just talk to me and I'll be right over.</span> No fancy crap like Microsoft please!
diff --git a/_posts/2008-04-21-latex-the-word-processor-for-engineers-and-smart-people-too.html b/_posts/2008-04-21-latex-the-word-processor-for-engineers-and-smart-people-too.html
new file mode 100644
index 0000000..c160e15
--- /dev/null
+++ b/_posts/2008-04-21-latex-the-word-processor-for-engineers-and-smart-people-too.html
@@ -0,0 +1,19 @@
+---
+layout: post
+title: LaTeX - the word processor for engineers (and smart people too)
+tags:
+- Design
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+When i met <a href="http://nunojob.wordpress.com">Nuno Job</a>, we had a great time talking about technology and its future. He told me about <a href="http://latex-project.org">LaTeX</a>, a logical structure word processor. It allows people to write documents, books, reports, articles, you name it, through proper source code. <!--more-->This means a lot of things to me:
+<ol>
+ <li>The code stays organized, which means the result document stays organized.</li>
+ <li>No templates; or in other words, one single template.</li>
+ <li>Want to pass the document through the network? Just a few KB instead of almost 1MB...!</li>
+</ol>
+Despite the LaTeX distribution being larger than a CD (at least for Mac OS, the Windows version is slightly smaller), it's worth it, especially if you're in a team in which everyone has to write a piece of a written delivery. I remember I had to spend almost two hours to format every piece into one big furball. Sounds kind of messy, huh? Try gathering up a team, each one writes a piece of the document at their own way and then try using LaTeX. Your conclusions should be the same as mine. :D
diff --git a/_posts/2008-05-01-overuse-of-ajax-is-not-good.html b/_posts/2008-05-01-overuse-of-ajax-is-not-good.html
new file mode 100644
index 0000000..3a9d3ae
--- /dev/null
+++ b/_posts/2008-05-01-overuse-of-ajax-is-not-good.html
@@ -0,0 +1,20 @@
+---
+layout: post
+title: Overuse of AJAX is not good.
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+I was having a nice chat with a <a title="Igor Carrasco" href="http://igorcarrasco.com">partner of mine</a> about this new project we're to create soon. I was spreading the word on web standards design and he actually agreed on the principles. He also asked my opinion on using <acronym title="Asynchronous Javascript And XML">AJAX</acronym>, stating that it would be a great tool on server performance, although it would affect Google indexation; all true.
+
+<!--more-->The thing is he wanted to use AJAX the wrong way. In other words, he wanted to use it all the way, including content. That really is harsh towards findability, according to what he said, thus it shouldn't be used on generating content, unless we don't actually want it to be found, of course.
+
+If you want your content to be findable, just don't use AJAX. My whole learning process is about optimizing content and its generation and what I know for sure is that AJAX is for optimizing content management and not its generation (if you still want to use <acronym title="Asynchronous HTML And HTTP">AHAH</acronym> that's your call, I respect).
+
+For example, you have a blog with regular posts. If want to insert a new post, you won't actually need a brand new page just to say the post has been created. This is the perfect example to use AJAX in which the only thing you have to print from the server is a single phrase, after doing the insertion in the database of course.
+
+And that is only one example, there is a ton more out there!
diff --git a/_posts/2008-05-14-what-i-think-about-leadership-and-work.html b/_posts/2008-05-14-what-i-think-about-leadership-and-work.html
new file mode 100644
index 0000000..907cff1
--- /dev/null
+++ b/_posts/2008-05-14-what-i-think-about-leadership-and-work.html
@@ -0,0 +1,27 @@
+---
+layout: post
+title: What I think about leadership and work
+tags:
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+This goes to my dear friend <a href="http://www.openquest.pt">FS</a> who has helped me a lot today. Thank you for your example.
+
+I have (re)discovered that not everyone is meant to be a leader. The worst thing I have concluded is that the actual leaders shouldn't be leaders at all because they just don't know how to lead people the right way.
+
+<!--more-->
+<ol>
+ <li>Bad leaders don't actually consider people as such: they call them "resources". Honestly I don't feel like I'm an object. What is more unmotivating than being treated as <em>something</em>, not <em>someone</em>?</li>
+ <li>Bad leaders don't care of what you think, they just want to see the job done. I'm not against wanting the job done but I believe we deserve to feel good while doing our work. <strong>Work is not supposed to be a sacrifice, it's supposed to be a joyful way to serve people.</strong></li>
+ <li>Bad leaders don't teach, they criticize and even when they do they do it wrong. Try and think of God or who/whatever serves you as a perfect example of a loving teacher. I'm sure much of the disappointments would fade away.</li>
+ <li>Bad leaders think they know all and think we can do all. That's a huge difference between realizing someone's potential is good and showing trust on her work.</li>
+</ol>
+There would be a lot more bad attitudes I could point out, you can simply imagine one bad boss you've had (or you still do) and all the bad things they did to you.
+
+I want to assure you my will is to release society from wrong principles of professionalism and misconceptions of professional etiquette. If someone says you should not be yourself at work then something is definitely wrong. Of course you can actually be doing something wrong; in that case, I advice you to look over yourself and get over some big faults of yours. But if you strongly believe you are a nice person and if you realize your social life is quite rewarding then fear not and stand up for your valiant principles of innocence and truth.
+
+I stand up for a pleasant way of working and for better leadership.
diff --git a/_posts/2008-05-25-a-feel-of-deep-change.html b/_posts/2008-05-25-a-feel-of-deep-change.html
new file mode 100644
index 0000000..e9a96b4
--- /dev/null
+++ b/_posts/2008-05-25-a-feel-of-deep-change.html
@@ -0,0 +1,22 @@
+---
+layout: post
+title: A feel of deep change
+tags:
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+This is a set of thoughts on how I am feeling inside and an attempt to let go / acknowledge some of these thoughts.
+
+From the day I joined a company based on Microsoft, my technological values grew and became rock solid. But I'm feeling sort of a whirlwind deep inside the social, emotional and psychological values as well.
+
+<!--more-->I see my country falling apart because of all the speculation on oil fuel. I see a blind society that doesn't want to evolve and reacts harshly over technological evolution and over change. I see the government spending a lot, I see the people rioting for everything, I see heavy taxes, I see professional disappointment and I see myself in a reckless anxiety, fearing for my professional success and my happiness. <span style="text-decoration: line-through;">I don't want to live in Portugal because I strongly feel I wouldn't be happy here. I want a place where I can live without such feelings of fear, no reliability and lack of vision.</span>
+
+I need a place to express my joy for life, work, friends, love and most of all, freedom. I need a place where I can grow as a designer and as a developer. I need scones. I need my own home, my own salary.
+
+I am changing inside. I am becoming a whole different person; a person who needs to be independent and have his own story to tell. I am feeling a different energy. After all, I'm becoming an adult at full speed and I'm having a different kind of needs from the ones I had when a teenager. Yet, my strongest desire is to be free and tremendously happy and make other people feel free and happy as well.
+
+I feel better already :)
diff --git a/_posts/2008-06-26-the-balance-of-my-trip-to-the-usa.html b/_posts/2008-06-26-the-balance-of-my-trip-to-the-usa.html
new file mode 100644
index 0000000..9407506
--- /dev/null
+++ b/_posts/2008-06-26-the-balance-of-my-trip-to-the-usa.html
@@ -0,0 +1,30 @@
+---
+layout: post
+title: The balance of my trip to the USA
+tags:
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Tomorrow will be a week since I left Portugal on my first attempt to live alone and begin a new life on my own at the United States. Apparently it went wrong and for all of you guys that actually think that, <em>this is my final statement</em> on this week full of adventure, risk and emotions.
+
+<!--more-->I got in the plain Saturday, July 19th 2008, 9h30am. Everything was still an exciting mistery. Arrived at Newark, New Jersey at 3pm. <a href="http://agencyaccess.com" target="_blank">Jim Starace</a> picked me up to show me the town of Hauppauge, New York. He showed me my office, my home and some parts of town. For two days we drove to various spots like some stores for me to get some stuff to eat, sleep and fill the house. It was an interesting weekend, we could actually chat a little and hang out so me and Jim could get along as friends and colleagues at work.
+
+Monday came. Jim picked me from the hotel on our way to start my first day of work. A wonderful day that was. I met the boss, Keith, a wonderful guy indeed. Everyone at <a href="http://agencyaccess.com">Agency Access</a> is just lovely! I started my role as the in-house PHP developer in order to start the project I applied to. The whole day went just great. I had the perfect work day. I wish these days could exist where I live.
+
+Then another major event came upon: my moving in. When I first saw the house and said to me: "I won't be staying here too long, I can tell...". The house «looked» kinda nice but it was only that. The house smelled funny and it had no lights in the living room nor the bedroom. The floor was carpeted - I am not used to it - and the couch was dirty. I would get a new couch cover and the problem would be settled. I was so excited with all the adventure that I didn't even think about that whole mess. I just wanted to experience all of it; unfortunately it turned out the other way around.
+
+The first night at the place was ... peaceful. Until... the landlord turned the TV out loud till after bed time. I had the whole bedroom lit up by the moonlight so I just couldn't get no sleep because of these two incidents. I managed to get some sleep.
+
+Next day I wake up with pain in my back from the lousy night I had. I get up, I have breakfast and go to work. A lovely 20 minute walk in the midst of the trees that fill New York's suburbs. The whole work day was very pleasant and productive. I was actually enjoying working there very much, no doubt on that.
+
+When I came home, I felt this deep voidness inside. I was looking at my still unpacked case, my dirty couch, my TV set and decided to chill out a little bit. I laid on the couch with my laptop trying to chat with my friends at Portugal. A nice time that was. When all of them were off I decided to get something to eat. I had previously got those add-water meals so I could easily start off with something rather than milk &amp; cereals. So I put turn the oven on and it didn't last 5 minutes until the fire alarm went off...! I had to turn it off so the house wouldn't go nuts because of that. So milk &amp; cereals it was for dinner.
+
+I tried to listen to some of my music to see if I could relax but the moment I turned the music on I felt like I wanted to dance it with some girl. Guess what? There were no girls! Turn it off so I won't be crying. What could I possibly do at that time (it was like 9pm) ? Nothing but go to bed. And so I did. What happened? Landlord's TV out loud. Moonlight. I was trembling for so much disaster. I started crying in despair. That's where I found I was having no peace. The next morning I got the tickets and went back home.
+
+Life lesson: never face something <strong>that</strong> unknown. I lost a lot of money on this adventure and I must get them back no matter what. If you are reading this and want to do something alike this, be careful! I learned a lot in this week concerning risk taking, investing and inner joy, peace and happiness.
+
+I appreciate everyone's help and support. But there are three people I want to thank with kind attention: Jim Starace, for all the incomparable support during this week, my deepest <em>thank you</em> goes to you; <strong>my mother</strong> because she is my mother and there is no one like her, period; <a href="http://onwired.com">Tony Chester</a>, leader of the OnWired team that first offered me a job but it didn't work. However, his concern has always meant a lot to me. My regards to you, Tony.
diff --git a/_posts/2008-09-22-last-year-in-a-nutshell.html b/_posts/2008-09-22-last-year-in-a-nutshell.html
new file mode 100644
index 0000000..c618fbe
--- /dev/null
+++ b/_posts/2008-09-22-last-year-in-a-nutshell.html
@@ -0,0 +1,26 @@
+---
+layout: post
+title: Last year in a nutshell
+tags:
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Today is my 22nd birthday. Yay, you say. Actually, it was a lousy day if I must say, it rained all day, my degree ain't done yet and I have work to do.
+
+This post is more like an introspection to my progress throughout 2007/2008, regarding web design, development and self development. It has been by far the year that I have learned the most. It has been the year where I have put myself to test the most. It has been the year where I've finally met the USA, their culture, their "different" food. There were just so many things that happened! I can't even remember them all.
+
+<!--more-->This was the last year (until further notice) on my degree.
+<ul>
+ <li>I experienced the challenge of being a leader of a pseudo-company. It's a wonderful experience yet tough if you don't know how to do it correctly or if you go soft. I met wonderful people, grew on open-source and developed my <em>standardismo</em> during that time.</li>
+ <li>In 2008, I had a two month training in one of the biggest banks in Portugal. My first true work experience... boy, was that hard. Faced a bad boss, worked with awful .NET Framework 1.1, coded in Visual Basic and commuted between home, work and college.</li>
+ <li>In July, I went to the USA, met lovely people and a lousy house. Won my first true job and my first true money. Learned a lot on web design, web tools and frameworks, productivity, self development and subsistance... everything that turns you into an adult. It really felt like I've taken lots of hormones to grow up faster. Try and picture it</li>
+</ul>
+It's September now and I feel wonderful. I know a lot more people, a lot more of my skills, a lot more of how my future should change from now. Well... I know it'll change a lot!
+
+Thanks for everyone that's helped me to become a better person, a better designer, a better developer, a better friend. I'm not going to name everybody because I have people I learned from ... for what I should do and what I shouldn't.
+
+I believe this year to come will bring me a lot of knowledge, experience and income so I can fulfill my dreams. Wish me luck!
diff --git a/_posts/2008-10-09-pixelmator-a-smaller-photoshop.html b/_posts/2008-10-09-pixelmator-a-smaller-photoshop.html
new file mode 100644
index 0000000..4950176
--- /dev/null
+++ b/_posts/2008-10-09-pixelmator-a-smaller-photoshop.html
@@ -0,0 +1,14 @@
+---
+layout: post
+title: ! 'Pixelmator: a smaller Photoshop.'
+tags:
+- Design
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<img class="alignleft" src="http://upload.wikimedia.org/wikipedia/en/b/bf/PixelmatorAppLogo.png" alt="Pixelmator_logo.jpg" width="75" height="80" />I've been sniping <a href="http://pixelmator.com">Pixelmator</a> for a time ago. Truly simple, fast, sleek and result-driven tool. Oh, you don't know what Pixelmator is? It's a photography utility program that allows you to edit photos in a pinch! And since it's based on Mac so nicely, you can access your iPhoto library seamlessly. As <a href="http://en.wikipedia.org/wiki/Steve_Jobs">master Jobs</a> would say: pretty cool, huh?
+
+Oh and forgot to mention, it's open source based! This means low expense and good results as usual in the FOSS group. Will be posting some results with my experience on it, now that I'm almost to embrace photography more seriously. If you don't have the money nor the mad genius to get Photoshop, this is a real good way to start!
diff --git a/_posts/2008-10-10-mastering-content.html b/_posts/2008-10-10-mastering-content.html
new file mode 100644
index 0000000..af5a9dc
--- /dev/null
+++ b/_posts/2008-10-10-mastering-content.html
@@ -0,0 +1,21 @@
+---
+layout: post
+title: Mastering content
+tags:
+- Design
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Many times I wonder why there are such brilliant websites and the people behind them are such great masterminds. I'm already assuming there needs to have a bit of genius, not just creativity. I'm talking about the core of <em>every</em> website: <strong>content</strong>.
+
+Imagine you care about content already, but in what way? Do you design for the content or the other way around? Do you create a layout based on the information/content you have or do you try and generate content based on the lovely yet empty work of art you've created with Photoshop?
+
+<!--more-->Every piece of content has its weight inside a website, acknowledging that is a major step towards balance and success. I took this into consideration when building my last project with a local client, in which he asked for many many chunks of information all organized across pages. Measuring each chunk of information takes credit in the definition of a proper layout in which each portion can be more relevant or not through width, height, color, typography, everything.
+
+<em>Content, not data!</em> It is our job as designers/engineers to make content out of data that a client gives us. No matter how much a client sees <em>their content</em>, it's still <strong>data</strong> for us and it's also our job to help the client understand what data should be like in a website and what importance it should have to achieve better results. I'm not saying we should override their needs, we actually need to listen to what they want, we're not wizards :P We can even pretend we're a regular user of theirs and play the game, a lot of results come from such an approach concerning usability and accesibility.
+<h3>End of story</h3>
+Content is what grabs people's attention on a website and the way it's explicit. You can even have a beautiful background and today's grungy trends and everything, but if your content is not meaningful and well marked up then something's definitely wrong.
diff --git a/_posts/2008-10-20-corrupt-kings-an-approach-to-greedy-people-of-the-web.html b/_posts/2008-10-20-corrupt-kings-an-approach-to-greedy-people-of-the-web.html
new file mode 100644
index 0000000..c73c4a0
--- /dev/null
+++ b/_posts/2008-10-20-corrupt-kings-an-approach-to-greedy-people-of-the-web.html
@@ -0,0 +1,17 @@
+---
+layout: post
+title: ! 'Corrupt kings: an approach to greedy people of the web'
+tags:
+- Design
+- Loadacrap
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+This is something that intrigues me pretty much: design companies / people who claim themselves the trophy for great products and yet they suck. I tag these guys as <em>corrupt kings</em> or <em>napoleons</em> of the web because they think they are the best at what they do and yet they don't and no one tells them so!
+
+<!--more-->I met a client a couple days ago. He asked me to retake on a project that used a very strange platform. "Please take a look at the current launch, José". What do I do? I browse CSS, accessibility, usability and source code. The apparently awarded CMS was built on a table based layout and it didn't show the same results over different browsers. And you say: "OK, so what's the problem with designing on top of a table layout ?" If it works on many browsers and you can't afford web standards, well... keep it! But if it comes out as a complete junk like this, I would be ashamed of myself. The website looks like this in <a href="http://localhost:8888/wp-content/uploads/2009/07/ie6.png">Internet Explorer</a>, <a href="http://localhost:8888/wp-content/uploads/2009/07/firefox.png">Firefox</a> and <a href="http://localhost:8888/wp-content/uploads/2009/07/safari.png">Safari</a>.
+
+Any <em>napoleon</em> with this level of costumer fidelity - yea, the costumers say they have <em>really great</em> products! my gosh... — ought to be better prepared to face the real challenge, when users start to realize there are many browsers to choose from, new technologies improve user experience and designers and developers create the web differently with more care for performance, beauty and usability. Are you a designer reading this? Take a look at web standards and cross-browser experience. I'm sure you'll like it.
diff --git a/_posts/2008-10-29-collaboration-in-development.html b/_posts/2008-10-29-collaboration-in-development.html
new file mode 100644
index 0000000..896dbd7
--- /dev/null
+++ b/_posts/2008-10-29-collaboration-in-development.html
@@ -0,0 +1,34 @@
+---
+layout: post
+title: Collaboration in development
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+I usually write after something big approaches me. This could be no bigger: <em>collaboration is not considered when developing</em>. Well, at least not lately. Here's what happened:
+
+<!--more--><a href="http://styl.eti.me">Roger Byrne</a> asked me to check a plugin and help him in a submission form. Roger said to me that the Javascript inside the wordpress instalation he already had was obtrusive and he needed to render the form with <acronym title="Cascading Style Sheets">CSS</acronym> only. So I did it; delivered. He asked me why the form wasn't submitting. I didn't know because I didn't make the plugin. In either way, the plugin was kind of a mess. Between lack of standards and lack of a plugin workflow, me and Roger didn't figure out what was happening.
+
+So what do I mean with all of this? Again, collaboration is not considered when developing. Developers assume their code is flawless and it will work. However, they don't take a look at crucial guidelines of development: (Note: I'm thinking of plugins as I write this, but any situation is perfectly suitable.)
+<h3>Logical separation</h3>
+Logic, content, generated content (different than just content), presentation and behaviour all set apart. Logic goes to one <acronym title="PHP: Hypertext Preprocessing">PHP</acronym> file, content goes to one markup file, presentation in a <acronym title="Cascading Style Sheets">CSS</acronym> file, special behaviour in a <acronym title="Javascript">JS</acronym> file. Generated content can be either part of the CSS or the JS, depends on what's its purpose.
+<h3>Concerning classes…</h3>
+<em>Concerning markup, please don't drown it in classes!</em> Keep it with an all-around div with an id, most likely you won't need more, you'll most likely style the children elements from that single id. Also, don't flood it with unnecessary div's, it hardens its understanding and ... it really might be just clutter. Are they for IE? Use a <a href="http://code.google.com/p/ie7-js/">script</a> instead. The client doesn't have Javascript? Get <a href="http://firefox.com">Firefox</a>. If neither, then you don't need any div's at all.
+
+Meta-information for each feature and a short glance at the top; easy to read and above all, summarize every major feature, so a thrown in developer knows what a certain code does.
+<h3>Comments,</h3>
+In the right place. Don't just write a comment line before every single line. Only some guidelines. One practice I really like is split the logic of a function into blocks like this:
+<code>&lt;?php # Semantic block 1 {
+Code for block one goes here...
+# }
+# Semantic block 2 {
+Code for block two goes here..
+# }
+?&gt;</code>
+Some text editors like <a href="http://macromates.com">Textmate</a> have the ability to fold these kinds of blocks, which is a great visual aid in developing and first-hand comprehension.
+<h3>End of story</h3>
+<strong>Use web standards, separate each component, take advantage of semantics in comments and talk it easy.</strong> Better than a developer is one that knows how to explain what he's done. I'm sure Roger will appreciate it as well as me.
diff --git a/_posts/2008-11-01-accessibility-in-real-life.html b/_posts/2008-11-01-accessibility-in-real-life.html
new file mode 100644
index 0000000..12b29dc
--- /dev/null
+++ b/_posts/2008-11-01-accessibility-in-real-life.html
@@ -0,0 +1,22 @@
+---
+layout: post
+title: Accessibility in real life
+tags:
+- Design
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Yesterday I was at the mall trying to have lunch and I stood before two restaurants, both 30 feet away from me. I wanted to see the price tags for each restaurant and the result was the following. The shots were taken with a lousy Nokia XpressMusic but they totally say my point:
+
+<!--more-->
+
+[caption id="attachment_62" align="alignnone" width="465" caption="Accessibility 1"]<img class="size-medium wp-image-62 " title="Accessibility 1" src="http://localhost:8888/wp-content/uploads/2009/07/Image043-465x620.jpg" alt="Accessibility 1" width="465" height="620" />[/caption]
+
+[caption id="attachment_63" align="alignnone" width="465" caption="Accessibility 2"]<img class="size-medium wp-image-63 " title="Accessibility 2" src="http://localhost:8888/wp-content/uploads/2009/07/Image044-465x620.jpg" alt="Accessibility 2" width="465" height="620" />[/caption]
+
+The first shot says where the price is and you can actually can read something with little effor while in the last you can't even tell where the price is...!
+
+What better example than this one to show that important content must be well represented through appropriate style and positioning. <strong>Show your "price tags" big!</strong>
diff --git a/_posts/2008-11-10-effective-web-design-so-many-attributes-for-what.html b/_posts/2008-11-10-effective-web-design-so-many-attributes-for-what.html
new file mode 100644
index 0000000..5c858e5
--- /dev/null
+++ b/_posts/2008-11-10-effective-web-design-so-many-attributes-for-what.html
@@ -0,0 +1,30 @@
+---
+layout: post
+title: Effective web design - so many attributes for what?
+tags:
+- Design
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Despite the money issues, freelancing is great! It allowed me to learn so much on my proficiency as a designer and as a developer. One of the most important skills I've mastered is <em>web standards</em>. Designing on top of standards is the ultimate technique for everything else, from presentation with CSS to user experience with Javascript and AJAX.
+
+Even though <a href="http://drupal.org">Drupal</a> is the best <acronym title="Content Management System">CMS</acronym> in the world - which I subscribe with pride -, there's one thing I've been noticing: it has a load of attributes within elements, particularly classes and id's (not to mention sometimes it seems there are loads of div's that look rather unnecessary until certain point). This is good and bad for some reasons, and I'll explain why the Drupal team proceeds that way.
+
+<!--more-->
+<h3>Good stuff</h3>
+<ol>
+ <li>It allows better comprehension of both structure and semantics of the platform's output. Structure stands for the content you have in it (the What question), semantics stands for its meaning (the Why question).</li>
+ <li>As you know, Drupal has a steep learning curve and as I started stumbling over it I realized certain concepts that Drupal has inherent like delta attribution for blocks, their proper identification and helper class attributes built in, etc. And through this identification system the theming process became much easier because I already knew what and where things were.</li>
+ <li>If you need to style/change behaviour to a certain block or node for any reason (i.e. accessibility, Javascript enhancement...), you can easily select groups individual chunks of markup or even groups of them with Drupal class/id patterned attribution.</li>
+</ol>
+<h3>Bad stuff</h3>
+<ol>
+ <li>Too much of a mess with all the nested div's. I put this one on the top because it's complicated for a rookie to make himself confortable with the output he wants to generate and also because I just hate unnecessary markup. I only need extra div's if I'm going to turn the CSS up <em>one and only one</em> notch. If I fall with more than one notch, then it's time for a design check.</li>
+ <li>On top of extra div's, extra id's and classes in them. I have a really hard time finding the right rules in CSS to actually hit the element I want. It's a real <acronym title="Pain In The A$$">PITA</acronym>. And most of the times it's actually not necessary to have some of the classes because the parent div already has an id and thus a meaning is already set to its children.</li>
+</ol>
+Drupal is designed in this way so you can choose between theming from scratch and have full control of whatever you might like or not bother and just let Drupal do its job. It's up to your will and your needs to decide wether you choose one or another or even both — like I do —.
+<h3>End of story</h3>
+I picked on Drupal for this entry for the reasons I just showed. Speaking more generally, make sure your markup is valid and accurate. If you accomplish this, your design will better and easier, not to mention your javascripting will be smoother and less painful.
diff --git a/_posts/2008-11-27-facing-freelancers-a-skill-for-clients-to-master.html b/_posts/2008-11-27-facing-freelancers-a-skill-for-clients-to-master.html
new file mode 100644
index 0000000..67891d0
--- /dev/null
+++ b/_posts/2008-11-27-facing-freelancers-a-skill-for-clients-to-master.html
@@ -0,0 +1,33 @@
+---
+layout: post
+title: ! 'Facing freelancers: a skill for clients to master'
+tags:
+- Loadacrap
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Ever had a bad client? You know how the deal: he thinks you can read his mind and do everything he wants at the first try. Guess again.
+
+<!--more-->Today a client said to me:
+<blockquote>You've been eating too much cheese, eh José?</blockquote>
+He actually thought he was my only project - even if he was, I am not supposed to know everything, since he didn't know how to approach me in the first place and didn't write the specs of what he wanted well enough.
+
+<strong>Clients, this is the truth</strong>. We as freelancers are providing a service for you. Say specifically what service it is you want us to do, don't just fire an idea away. If you only have an idea, get it written down. Here's a couple guidelines for you when approaching us.
+<ol>
+ <li>If you can, personally reach us to discuss the idea open and friendly.</li>
+ <li>Be nice to us. We deserve good work experience too.</li>
+ <li>Always accomplish what we ask and let us do our job well.</li>
+ <li>Be ready to do whatever it takes. Remember, you're paying for the job.</li>
+ <li>Let us reach you as nicely as we would like you to reach us. The <em>worst</em> thing it can happen in such a relationship is to get chills whenever your name shows up on the screen. Word of experience.</li>
+ <li>Pay us. If you feel paying it all in a bunch is too much in your mind, set reasonable milestones.</li>
+ <li>Golden rule: if you want to hire us again, make sure we want to be hired by you again as well; we can always say no.</li>
+</ol>
+It sure sounds like I'm pushing too much on you but I'm not. It's all a matter of love and motivation. After all, if you want us to do a good job, we need to feel we're doing a good job for a good person, so <strong>spoil us</strong>! Yea, spoil us. Make us feel good and enjoying the work we're doing, we'll feel like <em>"Hey, this client deserves a treat!"</em>, rather than <em>"This guy is getting on my nerves, let me just take care of the business so I don't see his face anymore..."</em>. Smile when you're talking to us, praise us when you see progress.
+
+I had a client, <a href="http://tonyrobbins-seminars.com">Paul Kay</a>, who deserved a special award because he praised and kept motivating me so much he made me want to do his site smooth and silky, and fast too! <em>I did his website in a week</em>, for the very first time in my life. We ended up friends and he told he would love to refer me to other people because of the way he made me feel, not actually the other way around.
+
+<strong>PS</strong>: Freelancers, we should do the same thing, of course! We should praise our client for what he does and motivate him to be on track with our requests the whole time. <strong>Love is reciprocal.</strong>
diff --git a/_posts/2008-12-15-blogging-for-real-people.html b/_posts/2008-12-15-blogging-for-real-people.html
new file mode 100644
index 0000000..c74d7fe
--- /dev/null
+++ b/_posts/2008-12-15-blogging-for-real-people.html
@@ -0,0 +1,29 @@
+---
+layout: post
+title: Blogging for real people
+tags:
+- Miscellaneous
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Writing blog posts is already a hard task, imagine if you want to write for other people...! Let me try and share my thoughts on this, it's even a way for me to keep up with my writing habit.
+
+What better way to know what to do than taking a look at good blogs out there! I'll take some of the best that I know, if you know others please spill 'em out!.
+
+<!--more-->
+<ul>
+ <li>A <strong>catchy title</strong> should already make your brain spark inside, pretty much like this one I guess. If you have your own blog it should be a subject of your interest, or if you don't but would like to start one blog, now it's a good chance to start off pretty well!</li>
+ <li>A <strong>simple shorthand</strong> like <a href="http://avalonstar.com">Bryan Veloso</a>'s is a killer, I just love to know what the post is all about with a simple touch of uniqueness. Like a newspaper, every article always has a shorthand to let the reader know if the article is of his interest or not without reading it all.</li>
+ <li>I don't need to say that grammar should be checked before publishing a post, but more important than that is actually <strong>providing a story line</strong> that enhances its reading in the way that readers enjoy a story more than loose thoughts. This way you even create more reasonable means to actually understand the post's content and it sticks in people's mind.</li>
+ <li><strong>Images / videos</strong> support an idea like nothing else does. I guess I don't need to say anything else.</li>
+ <li>There's also another thing that I found lately and I find of the upmost importance: <strong>the text to read should be visually appealing</strong>.
+<ul>
+ <li>I used to have a dark purple <em>background</em> under white text and it was not the best idea I came up with because it was freaking hard to read.</li>
+ <li>Not just the colors, <em>whitespace</em> should be taken into consideration.</li>
+</ul>
+These really play a big role for me. <a href="http://mezzoblue.com">Dave Shea</a>'s blog is a great example on this matter.</li>
+</ul>
+How about yourself? Do you have any other details you take into consideration? Should you have a certain blog you find readable, leave your contribution!
diff --git a/_posts/2008-12-25-apache-2-on-mac-os-x-leopard-10-5-issue-on-upgrade.html b/_posts/2008-12-25-apache-2-on-mac-os-x-leopard-10-5-issue-on-upgrade.html
new file mode 100644
index 0000000..4bb2bab
--- /dev/null
+++ b/_posts/2008-12-25-apache-2-on-mac-os-x-leopard-10-5-issue-on-upgrade.html
@@ -0,0 +1,40 @@
+---
+layout: post
+title: Apache 2 on Mac OS X Leopard 10.5 issue on upgrade
+tags:
+- Development
+- mac leopard apache
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+This weekend I decided to arrange my hard drive in a way that I could have a 5GB partition with sinful Windows XP to play some games with the family. To do that, I bought a 1TB external hard drive to use as a Time Machine backup for the process. At the time, my disk was already partitioned for Ubuntu but since I didn't find it useful anymore, I replaced it for Windows.
+
+<!--more-->
+
+Well, the good thing is I can actually play some old games like Empire Earth and Counter-Strike with the cousins to have some fun. The bad news is my Apache server settings screwed up. Two things happened. <em>Number one: </em>http://localhost/~user was thrown a 403 Forbidden access. This problem is the result of the user configurations for the server whilst the reinstallation / upgrade of the system, they don't exist now. What you have to do is very simple. Go to /private/etc/apache2/users and create a file <em>yourshortusername.conf</em> and type this:
+
+<pre class="brush:bash"><Directory "/Users/shortusername/Sites/">
+Options Indexes MultiViews
+AllowOverride None
+Order allow,deny
+Allow from all
+</Directory></pre>
+
+Restart your server and you're ready to go!
+
+Number two: My virtual hosts blew away. I should have kept a record on how to do this in case I had to a reinstallation, I guess I can kick myself now. (I'm solving this as I write this post :P) Three steps:
+<ol>
+ <li>Go to /private/etc/hosts and say you want to assign 127.0.0.1 to your alias, like this: 127.0.0.1 youralias</li>
+ <li>Go to /private/etc/apache2 and uncomment the line that includes the virtual hosts configuration file. If you want to use PHP, you might want to uncomment the line that includes it as well.</li>
+ <li>Finally, go to /private/etc/apache2/extra and edit the httpd-vhosts.conf mentioned on 2. and add this chunk of code:</li>
+</ol>
+<pre class='brush:bash'><VirtualHost 127.0.0.1>
+DocumentRoot "/path/to/your/site/"
+ServerAlias yoursitename
+ServerName yoursitename
+</VirtualHost></pre>
+
+Restart your server and virtual hosts are up and running.
diff --git a/_posts/2009-01-07-the-960px-grid-on-top-of-full-range-background.html b/_posts/2009-01-07-the-960px-grid-on-top-of-full-range-background.html
new file mode 100644
index 0000000..5934ee2
--- /dev/null
+++ b/_posts/2009-01-07-the-960px-grid-on-top-of-full-range-background.html
@@ -0,0 +1,39 @@
+---
+layout: post
+title: The 960px grid on top of full-range background
+tags:
+- Design
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+I have been putting myself to test on a client project, regarding aesthetics. I have used "The Grid" in other situations but not in this way. I have learned how to accomplish grid balance on top of full-range background... again, the hard way. I use this approach in this very blog so you should realize its result already.
+
+<!--more-->This accomplishment has been unveiled to me through three of my favorite websites out there: <a href="http://simplebits.com">SimpleBits</a>, <a href="http://viget.com">Viget</a> and <a href="http://onwired.com">OnWired</a>. I know a lot of other websites that use this but these really caught my special attention. If you see three homepages, all of them use full-range backgrounds and yet they use the the 960px grid. I wanted that richness in my projects and so I gave it a try. Before I deepen into the procedure, i must say it's always good to have a container/bucket div instead of acting directly over the body element for cross-browser compatibility. I have tried it and IE 6 didn't like it very much.
+
+We are admitting a simple <em>skeleton</em> here: a simple header, a navigation bar, a main body and a footer should do the trick. So here's my procedure:
+<h3>Step 1</h3>
+Create the container div around.
+
+<code>&lt;div id='container'&gt;
+→ Skeleton goes here.
+&lt;/div&gt;</code>
+
+This is helpful as I mentioned in order to set its width to 960px right there.
+
+<code>#container { width: 960px; margin: X auto; }</code>
+
+This is a very basic approach and it's a good one if you want to implement a 30px padded box like <a href="http://boagworld.com">Paul Boag</a> for example. That way you save further implementation and get a clean shot at the grid. However, if you plan to use full-range backgrounds like I did then you'll have a little more work.
+<h3>Step 2</h3>
+Don't set any width for the skeleton div's so they default to 100%. Now you're ready to set each one a background (perhaps you'll have a repeat-x option or an attached one merging to the background color). Now each div gets it's own background, which is what we want. For the header, it would be something like:
+
+<code>#header { background: #xyz url('path/to/background.png') repeat-x; }</code>
+<h3>Step 3</h3>
+Place a single div child inside each skeleton div. All of the content should go inside these child div's. Then, you can set each div child the 960px width like this: <code>#container &gt; div &gt; div { width: 960px; margin: 0 auto; }</code>This tells us the div's inside the skeleton div's get affected. That's why I'm saying every piece of content should go inside the child div's, while the background goes outside.
+And you ask why not setting the default width to the skeleton div's itself? Well, you can do that but let me show me the differences.
+
+<a href="http://josemota.net/sites/default/files/images/1.jpg"><img class="frame frame-unfloated" src="http://josemota.net/sites/default/files/images/1_.png" alt="Without the child div's it would look like this..." /></a>
+
+Again, this is a very simple example. You can try lots of other stuff like positioning only some of the div's, background different settings, anything. I hope you learned something from this example.
diff --git a/_posts/2009-02-12-2009-my-fresh-start.html b/_posts/2009-02-12-2009-my-fresh-start.html
new file mode 100644
index 0000000..720cd57
--- /dev/null
+++ b/_posts/2009-02-12-2009-my-fresh-start.html
@@ -0,0 +1,31 @@
+---
+layout: post
+title: 2009 - my fresh start
+tags:
+- Design
+- Miscellaneous
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Finally, after a long long time, I decide to say something to my readers. It's been crazy in here!
+
+Today starts my 2009 and with it certain acknowledgments and decisions I've made. Today I want to share some these with you.
+
+<!--more-->
+<h3>New website theme</h3>
+I've been struggling over the very presentation of my website. After some months I guess I can settle with the <em>6th iteration of the Amethyst series</em>.
+
+[caption id="attachment_71" align="alignnone" width="465" caption="Amethyst — 6th iteration"]<a href="http://localhost:8888/wp-content/uploads/2009/07/amethyst6.png"><img class="size-medium wp-image-71" title="Amethyst — 6th iteration" src="http://localhost:8888/wp-content/uploads/2009/07/amethyst6-465x313.png" alt="Amethyst — 6th iteration" width="465" height="313" /></a>[/caption]
+<h3>Posts in Portuguese</h3>
+For the first time I am going to <em>add some posts in portuguese</em> to allow other audiences to visit my website. Each portuguese post will be categorized and identified as such properly.
+<h3>No <abbr title="Internet Explorer">IE</abbr> direct support</h3>
+Realizing <a href="http://stopdesign.com">Stop Design</a>'s wonderful approach to approach IE users, I am going to <em>drop support for IE6 and maybe even IE7</em>, providing a proper stylesheet complies with them. Now that IE8 is almost coming, we can —and should already do this a long time ago and— start discouraging users from using low level browsers. Besides, last time I checked, my IE audience is between 1 and 5%. Not worth the investment.
+<h3>Personal bookmarking system</h3>
+I don't use <a href="http://delicious.com">delicious</a> that much and yet I should because I have some pretty good links I wanted me and others to reach more often. That's why I am also going to <em>manage them bookmarks from my Drupal website</em>. This will be implemented soon enough.
+<h3>Conclusion</h3>
+2009 will be a serious and decisive year in my life because it will be the year I will learn a lot on my skills and also get a lot of work to apply them skills and earn what I need to boost my life up a notch or two.
+
+Let's hope for the best!
diff --git a/_posts/2009-03-01-building-a-system-on-your-own-when-youre-a-rookie.html b/_posts/2009-03-01-building-a-system-on-your-own-when-youre-a-rookie.html
new file mode 100644
index 0000000..cfa3f9e
--- /dev/null
+++ b/_posts/2009-03-01-building-a-system-on-your-own-when-youre-a-rookie.html
@@ -0,0 +1,41 @@
+---
+layout: post
+title: Building a system on your own when you're a rookie
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+If you're like me, you'll want to build your website the hard way, just so you can get to know a little more on programming <abbr title="PHP: Hypertext Preprocessor">PHP</abbr> and understanding certain aspects regarding its planning and structure.
+
+This post is taking place after a conversation I had with a friend of mine in college about building a website from scratch, in order to learn PHP. Guess what I told her ;)
+
+So what if you just wanted to build a website to start a business right away and never worry about if it works? Is <em>building a website / web application the best solution</em> if you wanna start off successful and harmlessly?
+
+<!--more-->
+<h3>Know what you want</h3>
+First of all, you need to focus on pointing out what you want. What is it?
+<ul>
+ <li>A static information website, with a couple forms?</li>
+ <li>A blog?</li>
+ <li>If you are a photographer, a photo gallery to use as a portfolio?</li>
+ <li>A CRM application?</li>
+ <li>...</li>
+</ul>
+<blockquote>With great power comes great responsability.</blockquote>
+Whatever you are trying to do, it's important you know if you can do it or go for already existing applications for your needs. If it's a blog or a photo gallery, I'd suggest using a CMS like <a href="http://drupal.org">Drupal</a> or <a href="http://wordpress.org">Wordpress</a>. As for CRM platforms, there are lots of them, like <a href="http://xlsuite.org">XLSuite</a> or <a href="http://sugarcrm.com">SugarCRM</a> are in the list.
+<h3>Choosing a framework or not</h3>
+Again, if you're going the hard way, you will most likely discard the option of using a framework such as the Zend framework or CodeIgniter, since these spare you the application code management such as URL aliases and filter, database abstraction / configuration and templating, amongst other things.
+
+You have two choices:
+<ol>
+ <li>Not use a framework and learn everything you need from top to bottom. This is particularly good choice if you're inexperienced but want to learn how to write and manage an <em>application's architecture</em> over programming logic.</li>
+ <li>Choose a framework and focus only on the <em>programming logic</em>, leaving architecture details to the framework. This is a good choice if you have acquired some knowledge over time and so you feel confident you will be using such a framework more often, dedicating more time to the application itself and not just its skeleton.</li>
+</ol>
+<h3>What resources you have</h3>
+I only advise <a href="http://php.net">PHP's official website</a>. It contains all the reference regarding the language and packages included such as database operations, XML, Web services, everything. There's always <em>Twitter, IRC and Google</em> to help you out. Hey, it did for me, why not you?
+<h3>End of story</h3>
+PHP is just so freaking easy. The hard part is organizing your thought. If you need any help, drop by this website and reach me, I'd be glad to help. If you have any resources or suggestions you'd like to mention, please do!
diff --git a/_posts/2009-03-11-semi-final-do-concurso-internacional-de-kizomba.html b/_posts/2009-03-11-semi-final-do-concurso-internacional-de-kizomba.html
new file mode 100644
index 0000000..2534720
--- /dev/null
+++ b/_posts/2009-03-11-semi-final-do-concurso-internacional-de-kizomba.html
@@ -0,0 +1,18 @@
+---
+layout: post
+title: Semi final do concurso internacional de kizomba
+tags:
+- Português
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<a href="/wp-content/uploads/2009/07/kizomba.jpg"><img class="size-medium wp-image-74 alignnone" title="Os finalistas do concurso internacional de kizomba" src="/wp-content/uploads/2009/07/kizomba-465x348.jpg" alt="Os finalistas do concurso internacional de kizomba" width="465" height="348" /></a>
+
+Sou finalista no <a href="http://africadancar.com">Concurso Internacional de Kizomba</a>! Dos 23 pares que actuaram na <a href="http://edsae.com">EDSAE</a>, em Lisboa, eu fui um dos premiados para participar na gala final do dia 22 de Março.
+
+<!--more-->Entre viagens de carro cansativas, filmes verídicos com 80 rufias armados à porta da esquadra, dançar na rua e a festa na noite, foi um dos dias mais divertidos para os 8 amigos que lá estivemos.
+
+Vou colocando fotografias à medida que as tiver. Estejam atentos!
diff --git a/_posts/2009-03-24-rescaldo-do-africadancar-2009.html b/_posts/2009-03-24-rescaldo-do-africadancar-2009.html
new file mode 100644
index 0000000..380d2b2
--- /dev/null
+++ b/_posts/2009-03-24-rescaldo-do-africadancar-2009.html
@@ -0,0 +1,36 @@
+---
+layout: post
+title: Rescaldo do Africadançar 2009
+tags:
+- Loadacrap
+- Português
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Para quem não sabe, este Domingo participei na gala final do <a href="http://africadancar.com">Africadançar</a>, no Cinema de São Jorge — Lisboa. Em poucas palavras, não valeu tanto a pena: a atribuição dos prémios foi forjada, os concorrentes foram tratados a um nível animalesco e o clima gerado durante o concurso foi caótico; ou seja, parabéns <a href="http://pmpeventos.com">PMPeventos</a>: vocês falharam redondamente.
+
+Isto é só um pequeno leque do todo que aconteceu durante e depois da gala. Já lá vão 24 horas e metade já se me olvidou :D
+
+<!--more-->
+<h3>A <em>forja</em></h3>
+<ol>
+ <li>O primeiro lugar foi atribuído aos representantes de Angola. Este par profissional com alegadamente 4 anos de experiência internacional, dançou 4 minutos em vez dos 2 como todos os outros. E não, ninguém acredita na falta de profissionalismo dos produtores quando dizem que o DJ se enganou a pôr a música deles.</li>
+ <li>O segundo lugar já tinha estado na televisão, parece que no programa da Fátima Lopes. Não há nada como um tachinho.</li>
+ <li>O terceiro lugar, que segundo muitos não fez nada de especial (além do strip dela), além de também ter aparecido na televisão, parece que são afilhados dos Irmãos Verdades. Cunhas não faltam por aqui, pois não...?</li>
+</ol>
+Só os que estavam a olhar para o júri é que conseguiram ver a cara de pau deles quando os vencedores foram anunciados.
+<h3>Tratamento “VIP“ aos concorrentes</h3>
+<ol>
+ <li>Tinham-nos dito que deveríamos estar no local da gala às 12h para ensaiarmos. Começámos apenas às 14h30. Ah esperem! Sabem quanto tempo demorou o ensaio? 2 minutos. Alguns nem sequer ensaiaram…! Super profissional.</li>
+ <li>Eu e muitos outros viemos do Norte e do Sul do país. Nós por exemplo, só em viagens, gastámos mais de 100€, só num dia. Juntem a semi final, o preço escandaloso dos bilhetes para a família que nos veio apoiar e somem tudo… Quanto nos foi ajudado? Zero.O mais escandaloso: os concorrentes internacionais tiveram a viagem de ida paga. Qual é a palavra parecida com xenofobia mas para os conterrâneos…? Hmm...</li>
+ <li>A única coisa que nos deram (de bom) para além da medalha no fim foi água. Foi-nos prometido um par de sapatos — nada. Foi-nos prometido o conjunto de workshops de Domingo — nada. Podia ter-nos sido oferecida uma refeição que fosse para conhecermos todos os concorrentes, sei lá… — nada.</li>
+</ol>
+<h3>Moral da história</h3>
+Em especial para a PMPeventos, <strong>o falhanço é histórico</strong>. Não se vê na história (por acaso até sim, na edição do ano passado) tamanha corrupção na atribuição dos vencedores, tamanha falta de consideração pelos concorrentes e perigosa vontade de ganhar dinheiro à custa dos não-lisboetas. Fica a sugestão: experimentem começar por baixo e fidelizar as pessoas em vez de deitarem tudo a perder logo à primeira oportunidade que encontram para roubarem a carteira do povo. De mim, não vão ter mais clientes.
+
+Tenho pena também de ver o júri tão mal comprado. Tenho um carinho muito grande por eles, mas é triste ver que integridade falha por todos os cantos. O que se viu nestas duas edições não instiga à confiança de ninguém e muito menos inspira os futuros participantes a o fazer.
+
+<em>Tu queres participar? “Eh pá, esquece...”</em>
diff --git a/_posts/2009-04-17-how-to-backup-your-drupal-site-using-backup-migrate.html b/_posts/2009-04-17-how-to-backup-your-drupal-site-using-backup-migrate.html
new file mode 100644
index 0000000..db9f008
--- /dev/null
+++ b/_posts/2009-04-17-how-to-backup-your-drupal-site-using-backup-migrate.html
@@ -0,0 +1,25 @@
+---
+layout: post
+title: How to backup your Drupal site using Backup & Migrate
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Back from the dead; I mean, my <a title="CoreSP (honestly, they should know better)" href="http://coresp.com">hosting</a> has been dead for more than a week. That's why I “finally decided to back my Drupal website up just in case I get screwed again. The magic tool: <a href="http://drupal.org/project/backup_migrate">Backup &amp; Migrate</a>!
+
+<!--more-->
+
+Backup &amp; Migrate is a Drupal module that, once installed, allows you to easily backup your entire database into one single file. It also has the ability to:
+<ul>
+ <li>Restore that backup in any Drupal installation.</li>
+ <li>Schedule backup generation.</li>
+ <li>Generate backups under gzip, bzip or zip format.</li>
+ <li>Select only the tables you want to backup and even the table structure (no content).</li>
+</ul>
+The only thing I found missing is file backup, such as images, themes and other modules. I honestly hope it knows what modules were installed so the only thing I need to do is paste the entire <code>sites</code> folder, install this module, import the database and <em>wham!</em>, the site is up and running. Oh and by the way, Drupal core version is something to consider, since it depends heavily on the database configurations. Just make sure the version you currently use is the same to the one you're importing the database to.
+
+If you know Drupal, you know portability is a serious issue of his. Well, at least you know how to back it up and even set boundaries between your development and production environments!
diff --git a/_posts/2009-04-30-relationships-in-rails-2-3.html b/_posts/2009-04-30-relationships-in-rails-2-3.html
new file mode 100644
index 0000000..aba204d
--- /dev/null
+++ b/_posts/2009-04-30-relationships-in-rails-2-3.html
@@ -0,0 +1,54 @@
+---
+layout: post
+title: Relationships in Rails 2.3
+tags:
+- Development
+- rails
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Ruby on Rails is becoming quite a piece of software. I'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've been doing lately.
+
+<!--more-->
+<h3>Case study: a school</h3>
+The example I am going to show my attendees resembles a typical school situation. In a nutsheel:
+<ul>
+ <li>Students have Subjects.</li>
+ <li>Subjects have Students.</li>
+ <li>Students have Grades to Subjects.</li>
+</ul>
+[caption id="attachment_78" align="alignnone" width="442" caption="Rails relationships — student"]<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>[/caption]
+<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>
+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.
+
+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.
+
+[image missing]
+
+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.
+
+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.
diff --git a/_posts/2009-05-24-como-utilizar-o-ms-word-openoffice-correctamente.html b/_posts/2009-05-24-como-utilizar-o-ms-word-openoffice-correctamente.html
new file mode 100644
index 0000000..3dd3682
--- /dev/null
+++ b/_posts/2009-05-24-como-utilizar-o-ms-word-openoffice-correctamente.html
@@ -0,0 +1,35 @@
+---
+layout: post
+title: Como utilizar o MS Word / OpenOffice correctamente
+tags:
+- Personal improvement
+- Português
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+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. Obrigado ao meu pai por me motivar a escrever sobre o assunto.
+
+<!--more-->
+<h3>Estrutura</h3>
+[caption id="attachment_81" align="alignnone" width="260" caption="MS Word styles"]<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>[/caption]
+
+<em>O Word suporta estilo</em>s. Já existem alguns predefinidos para se usarem logo. Se quiser, pode mudar a formatação ao seu gosto, mas <strong>mude o estilo, não o texto em si.</strong> Assim assegura que todo o texto é uniforme e a semântica do seu documento. Quando tiver de utilizar o documento entre plataformas diferentes (entre Word e Openoffice, por exemplo), a frustração é muito mais pequena.
+<h3>Conteúdo gerado</h3>
+[caption id="attachment_80" align="alignnone" width="465" caption="Generated content"]<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>[/caption]
+
+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>
+<h3>Alguns conselhos</h3>
+<ol>
+ <li><em>Não separe os parágrafos com &lt;Enter&gt;'s a mais</em>. Defina no seu estilo que quer uma margem diferente e dê-lhe um valor mais generoso.</li>
+ <li>Simplifique as suas listas. Não arraste os manípulos para trás e para a frente, vai acabar por alterar a sua estrutura e depois é mais difícil tornar a endireitar.</li>
+ <li><em>Tabelas super simples</em>. 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><strong><em>Não usem WordArt</em></strong> nem molduras de página. Por favor.</li>
+ <li>Mantenham <em>margens de página acima dos 2,5cm</em> para ser mais fácil de ler.</li>
+ <li>Se tiverem um uso consistente e relativamente uniforme do Word, <em>considerem criar templates</em>, 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>
+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 <a href="http://www.latex-project.org/">LaTeX</a>. Eu uso-o e vale mesmo a pena.
+
+Mantenham este conjunto de guias e orientações mais rico, comentem. Contribuam para a melhor produtividade do nosso Portugal.
diff --git a/_posts/2009-06-29-learning-to-be-alone.html b/_posts/2009-06-29-learning-to-be-alone.html
new file mode 100644
index 0000000..9815e4d
--- /dev/null
+++ b/_posts/2009-06-29-learning-to-be-alone.html
@@ -0,0 +1,14 @@
+---
+layout: post
+title: Learning to be alone
+tags:
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+It's almost been a week since I'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'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.
+
+<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>
diff --git a/_posts/2009-08-03-announcing-jose-mota-%e2%80%94-new-breakthrough.html b/_posts/2009-08-03-announcing-jose-mota-%e2%80%94-new-breakthrough.html
new file mode 100644
index 0000000..a086800
--- /dev/null
+++ b/_posts/2009-08-03-announcing-jose-mota-%e2%80%94-new-breakthrough.html
@@ -0,0 +1,33 @@
+---
+layout: post
+title: ! 'Announcing: José Mota — New breakthrough.'
+tags:
+- Miscellaneous
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+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.
+
+<!--more-->
+<h3>So what's new anyway?</h3>
+<h4>New theme series</h4>
+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.
+
+I also tried to emphasize the content in a way that's readable, simple and efficient. At least when I read a post, it makes me feel comfortable.
+<h4>Back to Wordpress</h4>
+Yes, you heard me: I ditched Drupal in favor of Wordpress. But then you ask:
+<blockquote>Are you of your freaking mind? First you use Wordpress, then Drupal and now Wordpress back again??</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'd consider Drupal instead.</li>
+ <li>I must admit: Wordpress' editor is the best one I'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't yet. Well, at least not this good, all I did was import the XML file, plain paste of the wp-content folder, configure the plugins and that's it.</li>
+</ol>
+<h3>Well, anything else?</h3>
+<ul>
+ <li>I'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>
+That's it for today. I hope that this installation stays put for a long long time. Give your feedback if you are so kind.
diff --git a/_posts/2009-08-03-screencast-de-ruby-on-rails-em-portugues.html b/_posts/2009-08-03-screencast-de-ruby-on-rails-em-portugues.html
new file mode 100644
index 0000000..31b196e
--- /dev/null
+++ b/_posts/2009-08-03-screencast-de-ruby-on-rails-em-portugues.html
@@ -0,0 +1,19 @@
+---
+layout: post
+title: Screencast de Ruby on Rails em português?
+tags:
+- Development
+- Português
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<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.
+
+<!--more-->
+
+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.
+
+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.
diff --git a/_posts/2009-08-16-rails-a-moda-do-porto-episodio-1.html b/_posts/2009-08-16-rails-a-moda-do-porto-episodio-1.html
new file mode 100644
index 0000000..ebaf825
--- /dev/null
+++ b/_posts/2009-08-16-rails-a-moda-do-porto-episodio-1.html
@@ -0,0 +1,20 @@
+---
+layout: post
+title: Rails à moda do Porto - Episódio 1
+tags:
+- Development
+- Português
+- rails
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _wp_old_slug: rails-a-moda-do-porto-%c2%a0episodio-1
+---
+<video width='465' controls='controls' src='/wp-content/uploads/rails-a-moda-do-porto/001.mov'><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></video>
+
+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.
+
+Este é o primeiro episódio, é natural que tenha MUITA coisa a apontar. Os comentários incentivam-se, contribuam para um melhor screencast!
diff --git a/_posts/2009-08-19-should-you-still-support-ie-6.html b/_posts/2009-08-19-should-you-still-support-ie-6.html
new file mode 100644
index 0000000..66ca564
--- /dev/null
+++ b/_posts/2009-08-19-should-you-still-support-ie-6.html
@@ -0,0 +1,29 @@
+---
+layout: post
+title: Should you still support IE 6?
+tags:
+- Design
+- Loadacrap
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Yea, that's right: I'm talking about <em>you-know-which browser</em>.
+<h3>What is this IE 6 phenomenon anyway??</h3>
+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'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.
+
+<!--more-->
+<h3>Are you a designer? An aware one?</h3>
+If you are, then you know that IE 6 is a PITA when it comes to designing a website or application. Its support for CSS 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 IE 6.
+<h3>What about “those” clients? They only use IE 6!</h3>
+If you have clients that still use IE 6, it really depends on what you wrote a contract for. If you promised to support it, well... there is nothing you can do. What you <em>can</em> do is prepare for the future.
+
+Paul Boag said brilliantly:
+<blockquote>The energy we are spending in dropping IE 6 should be used to make our clients realize the truth about IE 6, providing a <strong>lesser experience</strong>.</blockquote>
+I agree 100% with Paul. We are being plain old silly by even considering tweaking what'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>.
+<h3>So this means the problem is not the browser?</h3>
+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 CSS apart and delivering them according to each browser's capabilities is key. If the full means upgrading, fine. Users will be able to choose now.
+
+If they choose to upgrade, don't be a fool, go help the guy! You will score good points.
diff --git a/_posts/2009-08-24-rails-a-moda-do-porto-episodio-2.html b/_posts/2009-08-24-rails-a-moda-do-porto-episodio-2.html
new file mode 100644
index 0000000..625c733
--- /dev/null
+++ b/_posts/2009-08-24-rails-a-moda-do-porto-episodio-2.html
@@ -0,0 +1,41 @@
+---
+layout: post
+title: Rails à Moda do Porto — Episódio 2
+tags:
+- Development
+- Português
+- rails
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<video width='465' controls='controls' src='/wp-content/uploads/rails-a-moda-do-porto/002.mov'></video>
+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.
+
+<!--more-->
+
+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/">API do Rails</a>.
+<pre class="brush:rails">class Aluno &lt; ActiveRecord::Base
+ validates_presence_of :primeironome, :ultimonome, :email, :sexo
+ validates_numericality_of :telefone
+end</pre>
+Já sabem, podem contribuir com os vossos comentários e dúvidas.
+
+<strong>Edit:</strong> A pedido de alguns assíduos colegas, segue abaixo a lista de todas as validações possíveis:
+<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>
diff --git a/_posts/2009-08-29-designing-for-the-invisible.html b/_posts/2009-08-29-designing-for-the-invisible.html
new file mode 100644
index 0000000..a116509
--- /dev/null
+++ b/_posts/2009-08-29-designing-for-the-invisible.html
@@ -0,0 +1,33 @@
+---
+layout: post
+title: Designing for the invisible
+tags:
+- Design
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+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.
+
+<!--more-->
+
+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.
+<h3>Where to design for the invisible?</h3>
+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're trying to reach for. Situations to consider can be:
+<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 AJAX calls, like removing an item from a cart which only requires a little call to remove it.</li>
+</ul>
+Let's consider the example of Wordpress, for example:
+
+<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>
+
+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.
+
+<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>
+
+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.
diff --git a/_posts/2009-08-30-rails-a-moda-do-porto-episodio-3.html b/_posts/2009-08-30-rails-a-moda-do-porto-episodio-3.html
new file mode 100644
index 0000000..7a9be25
--- /dev/null
+++ b/_posts/2009-08-30-rails-a-moda-do-porto-episodio-3.html
@@ -0,0 +1,65 @@
+---
+layout: post
+title: Rails à moda do Porto — Episódio 3
+tags:
+- Development
+- Português
+- rails
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<video width='465' controls='controls' src='/wp-content/uploads/rails-a-moda-do-porto/003.mov'></video>
+
+A parte mais importante de uma aplicação: pô-la a trabalhar. Como? Construindo lógica para satisfazer as necessidades do negócio.
+
+<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.
+
+<!--more-->
+
+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.
+
+<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>
diff --git a/_posts/2009-09-06-rails-a-moda-do-porto-episodio-4.html b/_posts/2009-09-06-rails-a-moda-do-porto-episodio-4.html
new file mode 100644
index 0000000..25209a3
--- /dev/null
+++ b/_posts/2009-09-06-rails-a-moda-do-porto-episodio-4.html
@@ -0,0 +1,24 @@
+---
+layout: post
+title: Rails à moda do Porto — Episódio 4
+tags:
+- Development
+- Português
+- rails
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _wp_old_slug: rails-a-moda-do-porto-%e2%80%94-episodio-4
+---
+<video width='465' src='/wp-content/uploads/rails-a-moda-do-porto/004.mov' controls='controls'></video>
+
+A nossa aplicação <em>Escola</em> está a andar sobre <em>rails</em> (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 inclusivamente por gerarmos <em>templates</em> diferentes para iPhone ou para outros dispositivos.
+
+<!--more-->
+
+No <a href="/wp-content/uploads/rails-a-moda-do-porto/004.mov">episódio de hoje</a>, mostro como gerar XML, RSS e JSON para a nossa lista de alunos. Deixo também algumas referências sobre como gerar PDF. Se tiverem dúvidas não hesitem em apontá-las em baixo, terei o maior gosto em ajudar!
+<h3>Para a semana não há episódio</h3>
+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.
diff --git a/_posts/2009-09-21-fail-a-moda-do-porto.html b/_posts/2009-09-21-fail-a-moda-do-porto.html
new file mode 100644
index 0000000..a1b6412
--- /dev/null
+++ b/_posts/2009-09-21-fail-a-moda-do-porto.html
@@ -0,0 +1,18 @@
+---
+layout: post
+title: Fail à moda do Porto
+tags:
+- Português
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+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 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.
+
+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.
+
+Abraço para vós todos!
diff --git a/_posts/2009-09-28-rails-a-moda-do-porto-episodio-5.html b/_posts/2009-09-28-rails-a-moda-do-porto-episodio-5.html
new file mode 100644
index 0000000..799918a
--- /dev/null
+++ b/_posts/2009-09-28-rails-a-moda-do-porto-episodio-5.html
@@ -0,0 +1,34 @@
+---
+layout: post
+title: Rails à moda do Porto — Episódio 5
+tags:
+- Miscellaneous
+- rails
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ enclosure: ! "http://jose-mota.net/wp-content/uploads/rails-a-moda-do-porto/005.mov\r\n13190744\r\nvideo/quicktime\r\n"
+ _sd_is_markdown: '1'
+---
+<p><video width='465' controls='controls' src='/wp-content/uploads/rails-a-moda-do-porto/005.mov'></video></p>
+
+<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 HTML. 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 RSS como por email.</p>
diff --git a/_posts/2009-10-12-do-what-you-do-and-dont-like.html b/_posts/2009-10-12-do-what-you-do-and-dont-like.html
new file mode 100644
index 0000000..b102e66
--- /dev/null
+++ b/_posts/2009-10-12-do-what-you-do-and-dont-like.html
@@ -0,0 +1,27 @@
+---
+layout: post
+title: Do what you do AND don't like
+tags:
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+I'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'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.
+
+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's just that good.
+
+<!--more-->
+
+<h3>Well, it might just not be enough…</h3>
+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't read what's in their face. But hey… <em>I absolutely love my job</em>.
+<blockquote>Love your job = Do the good stuff + Do the nasty stuff × Love you have for good stuff</blockquote>
+Sounds like crap, huh? Well, that'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'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've been through.
+
+Bad experiences are good. They make you bigger on the inside. That'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.
+<h3>You know what's even better?</h3>
+Along with time, you will master the art of letting the same old crap go away and face new and enticing crap.
+
+You can't just wish a load of crap forever :P
diff --git a/_posts/2009-11-07-approaching-people-through-your-website-copy.html b/_posts/2009-11-07-approaching-people-through-your-website-copy.html
new file mode 100644
index 0000000..459f151
--- /dev/null
+++ b/_posts/2009-11-07-approaching-people-through-your-website-copy.html
@@ -0,0 +1,29 @@
+---
+layout: post
+title: Approaching people through your website copy
+tags:
+- Design
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+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. This week I concluded that the way we approach people through our content can sometimes – if not always – be key to success.
+
+<!--more-->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.
+<h3>How <em>should</em> you write then?</h3>
+The gold rule applies here like a glove. Ask yourself as a regular consumer (not as the seller):
+<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>
+These are only three of the many questions you can ask yourself. If the text you’re considering doesn’t <em>really</em> convince you then you ought to try again.
+<h3>Golden answer: Stick to real content</h3>
+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 else.
+
+Sadly, that’s not a common practice in Portugal. Its 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, cheap copy repel them.</strong>
+
+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?
diff --git a/_posts/2010-01-27-zend-framework-friend-or-foe.html b/_posts/2010-01-27-zend-framework-friend-or-foe.html
new file mode 100644
index 0000000..0f8c1c7
--- /dev/null
+++ b/_posts/2010-01-27-zend-framework-friend-or-foe.html
@@ -0,0 +1,29 @@
+---
+layout: post
+title: ! 'Zend Framework: friend or foe?'
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<img class="alignleft" title="Zend Framework logo" src="http://dev.juokaz.com/wp-content/uploads/2009/04/logo-zend-framework.jpg" alt="" width="169" height="114" />Yesterday I started working for <a href="http://www.goweb.pt">Goweb</a>, a portuguese web development agency. I'm working as a <a href="http://framework.zend.com">Zend Framework</a> developer and I must say I'm very surprised for what I'm learning from the experience so far. It has its unique philosophy – if I can call it like that – and way of coding.
+
+It's not just another MVC framework. It's a set of PHP classes (one of them actually enables MVC and makes it work stand-alone) that allows you to focus a little more on your application logic rather than spending time on fixing technical bugs.
+
+<!--more-->
+<h3>Is it any good compared to other frameworks?</h3>
+Considering I have Ruby on Rails and CodeIgniter background, I should point out that all three are different, although Rails and CI have similar approaches to what they try to reach. Zend FW aims to be more generic and reach as much as it can pursue. Since it doesn't have an exact folder structure and conventions take very little into consideration, it's kinda farfecthed to say it's better or worse than the other two.
+<h3>What I DO know is…</h3>
+<ul>
+ <li>Rails' conventions and ease of implementation are gold to me. You can just think of an application architecture and just start building it!</li>
+ <li>Its ActiveRecord is <strong>major</strong>.</li>
+ <li>CodeIgniter's naming convention and learning curve is simpler than Zend's.</li>
+ <li>Zend's flexibility lets you do whatever you want (as long as you don't see any advantage on ORM).</li>
+ <li>Zend's form design pattern is concise and pretty solid.</li>
+ <li>Zend lets you use any template systems you want (Rails and CI are not that flexible I believe).</li>
+ <li>Zend has direct Web services, PDF, email and authentication/ACL support, amongst others.</li>
+</ul>
+As you are probably guessing, <em>I'm definitely biased towards Rails</em>. It's just easier for me to get things done. Simple, clean and fast. However, my job is to embrace Zend FW and to explore its potential. I would love to hear from you guys. <strong>What do you think about the framework?</strong>
diff --git a/_posts/2010-03-17-vendo-dominio-amodadoporto-com.html b/_posts/2010-03-17-vendo-dominio-amodadoporto-com.html
new file mode 100644
index 0000000..bc1a0a3
--- /dev/null
+++ b/_posts/2010-03-17-vendo-dominio-amodadoporto-com.html
@@ -0,0 +1,14 @@
+---
+layout: post
+title: Vendo domínio amodadoporto.com
+tags:
+- Miscellaneous
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<strong>Valor mínimo: 50€.</strong>
+
+Se conhecerem alguém interessado, <a href="http://jose-mota.net/contact">contactem-me</a>. Obrigado.
diff --git a/_posts/2010-03-26-i-read-rework-i-loved-it.html b/_posts/2010-03-26-i-read-rework-i-loved-it.html
new file mode 100644
index 0000000..77680b0
--- /dev/null
+++ b/_posts/2010-03-26-i-read-rework-i-loved-it.html
@@ -0,0 +1,25 @@
+---
+layout: post
+title: I read “REWORK”. I loved it.
+tags:
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<a href="http://jose-mota.net/wp-content/uploads/2010/03/Photo-on-2010-03-25-at-19.191.jpg"><img class="alignnone size-medium wp-image-133" title="Me holding REWORK, in love." src="http://jose-mota.net/wp-content/uploads/2010/03/Photo-on-2010-03-25-at-19.191-465x348.jpg" alt="" width="465" height="348" /></a>
+
+<em>REWORK is by far the best book I've read in my whole life</em>. Even though I read very few books, this one shattered my doubts about wanting to make my own business away. After reading this book — if you must know, I read it in <em>under 24 hours</em> —, I feel happier about myself, i feel more confident and I also feel more relaxed. My potential as a business owner is as big as everyone else's, including <a href="http://twitter.com/jasonfried">Jason's</a> and <a href="http://twitter.com/dhh">David's</a>, the very authors of the book. Thanks to them, my maturity towards achieving the future I dream of grows bigger by the day.<!--more-->
+<h3>What's inside the book anyway?</h3>
+In a nutshell, Jason and David share the top experiences of their life as part of <a href="http://37signals.com">37signals</a>. The book's slogan is "Change the way you work forever". No wonder.  They write in a straightforward, conversational style so you can feel comfortable while reading. It's divided into two to four page chapters so you won't get lost in the material. The content they share is that simple: no fancy crap, no jargon — as they mention —, just pure juice. <strong>The book will change your fucking mind.</strong>
+<h3>What next? Are you just stopping there, José?</h3>
+No way I'm stopping now! I am considering reading it one more time, except this time I will write my own notes and publish them in a PDF for free.
+
+<a href="http://www.jumpthecurve.net/images/uploads/linchpin.JPG.jpeg"><img class="alignleft" title="Linchpin: Are you indispensable?, by Seth Godin" src="http://www.jumpthecurve.net/images/uploads/linchpin.JPG.jpeg" alt="" width="68" height="104" /></a> After that, I'm considering reading:
+<ul>
+ <li> <a href="http://sethgodin.com">Seth Godin</a>'s <cite>Linchpin: Are you indispensable?</cite>, it's said to be a great book.</li>
+ <li><a href="http://tonyrobbins.com">Tony Robbins</a>' <cite>Awaken the Giant Within</cite>. I've attended one of his conferences and he's totally awesome!</li>
+</ul>
+Is there any other book you'd recommend? There's this one called <a title="by Luke Wroblewski" href="http://rosenfeldmedia.com/books/webforms/">Web Form Design</a> on Rosenfeld Media that's drawing my attention because of my skillset in UI/UX. Other than that, I'm open to suggestions!
diff --git a/_posts/2010-04-20-to-show-or-not-to-show-registered-user-only-actions.html b/_posts/2010-04-20-to-show-or-not-to-show-registered-user-only-actions.html
new file mode 100644
index 0000000..8e939c4
--- /dev/null
+++ b/_posts/2010-04-20-to-show-or-not-to-show-registered-user-only-actions.html
@@ -0,0 +1,25 @@
+---
+layout: post
+title: To show or not to show [registered user only actions]
+tags:
+- Design
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Last week I struggled with a design decision that really caught my attention. Consider this:
+<ul>
+ <li>You have a <em>user driven app</em> on the web.</li>
+ <li>You also provide some actions for <em>guests</em>.</li>
+</ul>
+What you would do? Either:
+<ol>
+ <li><strong>Don't show the user only actions?</strong> (my opinion: this one reduces clutter on your interface).</li>
+ <li><strong>Or do show them and when the user clicks</strong> the links/buttons, the user gets a login redirected page for every new click?</li>
+</ol>
+<h3>My pick would be number <em>1</em>. Why?</h3>
+I'd rather have a welcome page that showed you what to use in case you signed up. Actions such as creating a new item on a product list and message sending that apparently require a sign up are confusing for a guest. Besides, clicking on such an action and redirecting you to a login page <em>several times</em> is not that much of an engaging experience.
+
+Feel free to add up on this thought.
diff --git a/_posts/2010-04-26-tear-up-your-clients-proposal-in-half.html b/_posts/2010-04-26-tear-up-your-clients-proposal-in-half.html
new file mode 100644
index 0000000..d4e96db
--- /dev/null
+++ b/_posts/2010-04-26-tear-up-your-clients-proposal-in-half.html
@@ -0,0 +1,27 @@
+---
+layout: post
+title: Tear up your client's proposal in half!
+tags:
+- Design
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<img class="alignleft" title="Picture of a teared up contract" src="http://farm4.static.flickr.com/3626/3357161527_fabbb28d52.jpg" alt="" width="121" height="151" />Just picture it: you are about to welcome your client into your office for a first meeting. You are excited to know what he wants. He brings his suitcase. Both of you happily sit down and he takes the project briefing out of the suitcase and hands it to you. <q>This is what I want. Please take a look.</q>, the client happily states, confident in his effort to provide a solid brief for you to work on.
+<h3>Take the briefing and <em>tear it up in half!</em></h3>
+<!--more-->You heard me! Excuse yourself to him and just rip it apart. Let the client watch (you might wanna tell him that the experience of working with you would be quite different).
+<h3>What the hell! Are you serious?</h3>
+Yes! Ask yourself: what would you feel if you started reading a pile of rubbish? What would you feel about reading dozens of pages that might not even be what the client really wants in the end? Well, you can start on the right foot and reset the entire system.
+
+Tearing the briefing up in front of the client will force a chemical reaction inside his body. <em>It is the perfect time for you to teach him your method: the method of emotion</em>.
+<h3>The method of emotion</h3>
+Building experiences is what I want to do because it envolves passion and emotion from other people. Good emotions, that is. Bad emotions are supposed to be secondary and/or should help realize which emotions are the good ones. In the end, you should be glad for having fulfilled a client's need.
+
+Businesses are run by people; they are the materialization of the emotion that drives their creators to actually do it. Nothing more satisfying for a client than knowing he is being <em>heard</em>, not read. So why not start listening to his heart instead of both looking to a computer screen and/or a briefing? Let them explain to you the emotion they want to feel when they use what you're about to create.
+
+Briefings, paper, a screen, all of these limit our creativity. If you can reduce the load, do it from the very beginning.
+<h3>Obviously you don't need to tear <em>his </em>papers</h3>
+If you're scared of what his reaction might be, you can always pretend it. Get some bad paper the size of the brief, tear it up in front of the client, experience the feeling and then explain it was an exercise to test both yours and your client's creativity.
diff --git a/_posts/2010-04-29-html-semantics-brs-control-labels.html b/_posts/2010-04-29-html-semantics-brs-control-labels.html
new file mode 100644
index 0000000..73dfb15
--- /dev/null
+++ b/_posts/2010-04-29-html-semantics-brs-control-labels.html
@@ -0,0 +1,33 @@
+---
+layout: post
+title: ! 'HTML Semantics: br''s & control labels'
+tags:
+- Design
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<blockquote><code>&lt;br /&gt;</code> elements break content. They don't space it.</blockquote>
+This gave birth to a nice debate. I threw that tweet because I was facing a terrible blunder from a fellow designer. He was using <code>&lt;br /&gt;'s</code> to wrap an <code>&lt;hr /&gt;</code> just to give the ruler some space — instead of adding margins to it —. <a href="http://paulozoom.com">Paulo Zoom</a> and <a href="http://levifig.com">Levi Figueira</a> propelled the whole thing and I kinda moderated it. The end result was quite satisfying.
+
+<!--more-->
+<h3>Our conclusions</h3>
+The only way I'd use <code>&lt;br /&gt;</code> would be for:
+<ul>
+ <li>Addresses;</li>
+ <li>Poems;</li>
+ <li>Multiple radio buttons / checkboxes.</li>
+</ul>
+<h3>There was one more thing.</h3>
+Then the conversation shifted towards how to include labels, inputs and paragraphs inside each other. Levi found <a href="http://www.w3.org/TR/2010/WD-html5-20100304/forms.html#the-label-element">this about labels and inputs</a> on the <a href="http://www.w3.org/TR/2010/WD-html5-20100304/">HTML5 specification</a>:
+<blockquote>The <code>label</code> represents a caption in a user interface. <strong>The caption can be associated with a specific form control, known as the </strong><code><strong>label</strong></code><strong> element's labeled control</strong>, either using <code>for</code> attribute, or by putting the form control inside the <code>label</code> element itself.</blockquote>
+The idea of including an input inside a label — <code>&lt;label&gt;Label: &lt;input /&gt;&lt;/label&gt;</code> — didn't convince Paulo as he thought it felt wrong. It's not that bad if you think of this particular example, for instance. Consider a series of checkboxes for a certain field. It would be handy if people knew they can click the text and select the checkbox too, right? Like this:
+
+<label><input type="checkbox" /> Checkbox 1</label><label><input type="checkbox" /> Checkbox 3</label><label><input type="checkbox" /> Checkbox 3</label>
+
+If you click the labels, the checkboxes are activated. And it's perfectly semantic as the labels work as controls alike.
+
+Thank you, Paulo and Levi!
diff --git a/_posts/2010-04-30-nao-dou-mais-abracos-a-estranhos.html b/_posts/2010-04-30-nao-dou-mais-abracos-a-estranhos.html
new file mode 100644
index 0000000..ae8dad2
--- /dev/null
+++ b/_posts/2010-04-30-nao-dou-mais-abracos-a-estranhos.html
@@ -0,0 +1,17 @@
+---
+layout: post
+title: Não dou mais abraços a estranhos.
+tags:
+- Personal improvement
+- Português
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Duas pessoas falam ao telefone. Muito provavelmente nunca se viram, nem mesmo se conheceram. Ao fim da conversa, despedem-se com um abraço... eu disse que eles estavam <strong>ao telefone</strong>, não disse? <em>O QUÊ?!</em>
+<!--more-->
+Isto só para dizer que eu não torno a dar abraços a quem não conheço. Seja em encontros técnicos, conferências, palestras, entrevistas de emprego, etc. É no mínimo estranho e, no pior dos casos, uma hipocrisia de todo o tamanho. Muito provavelmente não são capazes de dar o tão afamado abraço.
+
+Uma vez estive numa entrevista de emprego e o empregador gostou de mim. Na despedida, apertamos a mão e ele diz-me: <q>Um abraço!</q>.
diff --git a/_posts/2010-05-04-wasting-time-a-story-about-motivation.html b/_posts/2010-05-04-wasting-time-a-story-about-motivation.html
new file mode 100644
index 0000000..82b2153
--- /dev/null
+++ b/_posts/2010-05-04-wasting-time-a-story-about-motivation.html
@@ -0,0 +1,22 @@
+---
+layout: post
+title: Wasting time — a story about motivation
+tags:
+- Loadacrap
+- Personal improvement
+status: private
+type: post
+published: false
+meta:
+ _edit_last: '1'
+---
+Sometimes <strong>I feel I'm wasting my fucking time.</strong> Ever had that feeling? — Sometimes I also feel that I'm being tossed the wrong client and the wrong bosses but that's a whole different story —. This is kind of a judgement leak in the way that I'm boiling to exhaustion.<!--more-->
+<h3>Come on, honey, have a seat and tell me the story.</h3>
+<ul>
+ <li>Situation: I'm 2 days over a wrong deadline.</li>
+ <li>Problem: no, passing the deadline is not an issue for me <em>anymore</em>. The problem is with how the deadline was set; why I, a freshly admitted collaborator, jumped into such a project with no experience; why I'm forced to work with inappropriate and slow tools such as a transformed version of the Zend Framework.</li>
+</ul>
+<h3>So you're sick of it. Suck it up and finish it, how 'bout that?</h3>
+I'm not a cheap laborer. I work hard but I also work for passion. This project is a total waste of time because everyone working on it says it won't convert and won't be successful. Wait a minute, what?! You mean I'm spending three months (that's 480 hours approximately) of my life for absolutely nothing? That's definitely a motivation. So no sucking it up this time; and finishing it doesn't look that thrilling, does it?
+
+<em>My drive is passion, people and the mind of the beautiful</em>. If I can't deliver, then one of these three is missing or corrupt (like a system file).
diff --git a/_posts/2010-05-19-apresentacao-no-barcamp-pt.html b/_posts/2010-05-19-apresentacao-no-barcamp-pt.html
new file mode 100644
index 0000000..c0809c9
--- /dev/null
+++ b/_posts/2010-05-19-apresentacao-no-barcamp-pt.html
@@ -0,0 +1,26 @@
+---
+layout: post
+title: Apresentação no Barcamp PT
+tags:
+- Development
+- Personal improvement
+- Português
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Vou estar no <a href="http://barcamppt.org/wiki/index.php/Primavera10">Barcamp PT Primavera10</a>. O encontro vai ser realizado no <a href="http://porto.the-hub.net/">Hub do Porto</a>, nos dias 5 e 6 de Junho e eu vou apresentar o tópico: <strong>Psicologia, Paixão e Rails (PPR) - Uma perspectiva mais humana do desenvolvimento Web</strong>.
+<h3>Psicologia não exige curso superior</h3>
+Se achas que não consegues ser psicólogo, então precisas mesmo de vir!
+
+Um bom amigo é um psicólogo; um bom homem da web também é (leia-se "deve ser") um psicólogo. As variáveis aqui são o prisma e a aplicação da ciência. Vou falar de como psicologia afecta as nossas decisões, bem como as dos nossos clientes e de como podemos contornar os tão afamados entraves e desatinos.
+<h3>Paixão é a força motriz</h3>
+<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="480" height="280" 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://www.youtube.com/v/u6XAPnuFjJc&amp;hl=en_US&amp;fs=1&amp;" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="480" height="280" src="http://www.youtube.com/v/u6XAPnuFjJc&amp;hl=en_US&amp;fs=1&amp;" allowscriptaccess="always" allowfullscreen="true"></embed></object>
+
+Não é o dinheiro que nos motiva (pelo menos não só). A verdadeira força que nos orienta a atingir resultados e ter motivação é <em>paixão</em>. Os teus pais sempre te disseram: <cite>Faz aquilo que gostas.</cite> ou <cite>Quem corre por gosto, não cansa.</cite>
+<h3>Ruby on Rails para concretizar</h3>
+Até hoje ainda não encontrei ferramenta mais completa e linguagem mais simples do que Rails e Ruby, respectivamente. O padrão MVC aproxima o negócio do cliente ao software que quer implementar. O REST permite que os objetos de negócio sejam manipulados de forma simples e uniforme. Existem tantas outras coisas que fazem do Rails a ferramenta de elite.
+
+Se quiserem saber mais, venham! Estou a pensar em apresentar algo mais interativo; algo como envolver a audiência de um certo modo, portanto acho que vai ser bastante engraçado!
diff --git a/_posts/2010-05-26-o-lamento-de-um-designer.html b/_posts/2010-05-26-o-lamento-de-um-designer.html
new file mode 100644
index 0000000..0225077
--- /dev/null
+++ b/_posts/2010-05-26-o-lamento-de-um-designer.html
@@ -0,0 +1,20 @@
+---
+layout: post
+title: O lamento de um designer
+tags:
+- Design
+- Loadacrap
+- Português
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Há cerca de dois anos eu concorri para o <a href="http://zizuzi.pt">projeto Zizuzi</a>, um conceito de rede de emprego, com contratandos e contratantes. Quando vi o documento de aproximadamente 17 páginas de conteúdo relativamente preciso e bem organizado, eu pensei que iria participar num projeto inteligente.
+
+Ontem tive curiosidade de ver como estaria o projeto. <em>Morri</em>. Vejam por vocês.
+
+<a href="http://jose-mota.net/wp-content/uploads/2010/05/zizuzi.png"><img class="alignnone size-medium wp-image-148" title="Projeto Zizuzi - o resultado hediondo" src="http://jose-mota.net/wp-content/uploads/2010/05/zizuzi-465x335.png" alt="" width="465" height="335" /></a>
+
+Sem informação para quem entra, sem forma de registo, nada. E isto é só a página de entrada. Eu até tremo de pensar o que estará lá por dentro. Expresso as minhas condolências pela pobre alma que inventou o nome Zizuzi; em nada sugere "rede de procura e oferta de emprego".
diff --git a/_posts/2010-06-07-rescaldo-do-barcamp-pt-2010.html b/_posts/2010-06-07-rescaldo-do-barcamp-pt-2010.html
new file mode 100644
index 0000000..2b701ba
--- /dev/null
+++ b/_posts/2010-06-07-rescaldo-do-barcamp-pt-2010.html
@@ -0,0 +1,23 @@
+---
+layout: post
+title: Rescaldo do Barcamp PT 2010
+tags:
+- Development
+- Português
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="465" height="360" 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=12373138&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="465" height="360" src="http://vimeo.com/moogaloop.swf?clip_id=12373138&amp;server=vimeo.com&amp;show_title=0&amp;show_byline=0&amp;show_portrait=0&amp;color=ff9933&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object>
+
+Estou muito feliz por me poder envolver com pessoas felizes como as que encontrei no Barcamp que houve no Porto, este fim-de-semana. Obrigado à organização do <a href="http://barcamppt.org">Barcamp</a>, correu muitíssimo bem e é suposto repetir-se.
+
+<!--more-->
+
+Uma sugestão que me esqueci de dar: pensem maior! Sejamos ambiciosos e pensemos em engrandecer em quantidade de pessoas, energia e qualidade. Aquilo que faz destes eventos especiais é <em>a energia que se acumula e os sorrisos que se criam e se partilham</em>. Mais vezes!
+<h3>Convite — Proposta de projeto comunitário</h3>
+<strong>Estou a planear construir uma aplicação web comunitária</strong>. O objeto principal? O teu <em>Curriculum Vitae</em>. Quero criar um mecanismo que te permita gostar de manter um CV e usá-lo de maneiras mais criativas e funcionais. O teu contributo é importante para mim e dessa forma, convido-te a <a href="http://josemota.wufoo.com/forms/questionario-cv">preencheres este formulário</a>. A informação que eu conseguir juntar será preciosa para eu conseguir tomar decisões mais acertadas no início do projeto e torná-lo desejável logo no arranque!
+
+Eu vou fazer um resumo da informação que conseguir juntar, brevemente. Quero conseguir ter 100 questionários preenchidos. Portanto, junta-te à festa e espalha a notícia! Fala com quem não tem CV, com quem tem dificuldades em fazer/manter o seu. Convida-os a participarem, vai ser genial!
diff --git a/_posts/2010-06-13-wanted-micromanagement-dead.html b/_posts/2010-06-13-wanted-micromanagement-dead.html
new file mode 100644
index 0000000..b6994d9
--- /dev/null
+++ b/_posts/2010-06-13-wanted-micromanagement-dead.html
@@ -0,0 +1,45 @@
+---
+layout: post
+title: ! 'Wanted: Micromanagement. Dead.'
+tags:
+- Loadacrap
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Besides passion, <em>trust</em> is one basic pillar of success in the web industry. <em>Micromanagement</em> is its Megatron.
+<h3>What is Micromanagement?</h3>
+No, it’s not about Starcraft; but it can be related though. Quoting Wikipedia:
+<blockquote>In business management, micromanagement is a management style where a manager closely observes or controls the work of his or her subordinates or employees. Micromanagement is generally used as a negative term.</blockquote>
+So yea, micromanagement is a bad thing. In an industry where motivation and passion are the ultimate requirements, anti-trust behaviour is the killer. If you don’t trust your colleagues / subordinates, then something is wrong. It’s either you or them. Which one is it going to be?
+
+<!--more-->
+
+<h3>What makes you not trust your peers?</h3>
+Take your last bad project and analyze your actions, your behaviours and also their actions and their behaviours. Write them down. What did you find?
+<ul>
+ <li>Did your peers change their way of talking to you?</li>
+ <li>Did they approach you less often?</li>
+ <li>Have they tried to cut the conversation short? Like, hurrying things up so they won’t have to talk to you?</li>
+ <li>Have they stopped doing stuff the way you wanted?</li>
+ <li>Did you start resenting their presence, the moment you even see them at the office?</li>
+ <li>Did you start feeling they are not following your “orders” ?</li>
+ <li>Have you been shouting and cursing more often?</li>
+ <li>More headaches? More stress? Nausea?</li>
+</ul>
+I could spill a dozen more. I experienced these behaviours in some way a while ago. They are real and you can experience them as well, should you choose to.
+<h3>How can I turn Micromanagement around?</h3>
+<strong>You can choose not to micromanage your peers</strong>. Instead, you can lower your bar and let <em>them</em> manage the project <em>they</em> are working on. You just manage outer communication. They might even call quits. If that happens, you don’t need to panic; you’re not supposed to. You’re supposed to ask them what should change and share the learning experience with everyone in your company. I’m sure they’ll come up with an answer and I’m even more sure that the learning experience will be welcome and rewarding.
+<h3>“Let’s talk.” Never do that!</h3>
+If someone said that to me, I’d talk, sure; but not as comfortable as he wanted. This phrase is a threat. It doesn’t look one but it is, especially if you turn your back like <a href="http://www.youtube.com/watch?v=glvGfQnx3DI">David Caruso</a> does. It gets even worse if he wants to talk to you in the meeting room.
+
+If the subject is important, then you probably want to engage me:
+<ul>
+ <li>Reach out a smile and a chance for the both of you to figure the solution out.</li>
+ <li>Listen to who you’re talking.</li>
+ <li>Be honest with the both of you.</li>
+ <li>Don’t explode. If you are, then probably you’ve reached the path of no return. Say you’re sorry, return to the basics and learn from the experience.</li>
+</ul>
diff --git a/_posts/2010-06-30-resultados-do-questionario-cv.html b/_posts/2010-06-30-resultados-do-questionario-cv.html
new file mode 100644
index 0000000..dc77826
--- /dev/null
+++ b/_posts/2010-06-30-resultados-do-questionario-cv.html
@@ -0,0 +1,20 @@
+---
+layout: post
+title: ! 'Resultados do questionário: CV'
+tags:
+- Português
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Não tenho tido tempo nenhum para colocar os resultados do questionário que criei sobre currículos. Mas aproveito o pouco da manhã que tenho para publicar o <a href="http://josemota.wufoo.com/reports/resultados-do-questionario-cv/">relatório</a>. Alguns dos comentários que mais gostei foram:
+<blockquote>Um repositório central onde pudesse ter o CV actualizado em permanência (e que esta tarefa fosse simple - via wizard, exemplos, etc) e com um url único para poder divulgá-lo em sites de emprego, no meu blog professional, etc.
+
+Permitir ser exportada para diversos formatos, quer Europass (pdf), quer resume em Latex. Onde o Europass seria utilizada na europa e o resume para quando queremos enviar para a America ou assim. Uma coisa muito importante é que o input possa ser feito através do xml do Europass.</blockquote>
+Houve mais comentários, podem ir <a href="http://josemota.wufoo.com/reports/resultados-do-questionario-cv/">vê-los</a>. Estes foram os que me chamaram a atenção pelo URL único, exportação PDF e importação XML do Europass.
+<h3>Ainda não há nome?!</h3>
+Há, sim; mas só vou dizer depois ;) Preciso de registar o domínio primeiro. Vou tratar também de começar a disparar o desenvolvimento para se poder testar. Em princípio a fase alpha da aplicação será só por convite, para garantir que é bem testado.
+
+Obrigado pela vossa ajuda!
diff --git a/_posts/2010-07-02-age-still-a-prejudice.html b/_posts/2010-07-02-age-still-a-prejudice.html
new file mode 100644
index 0000000..ef7550a
--- /dev/null
+++ b/_posts/2010-07-02-age-still-a-prejudice.html
@@ -0,0 +1,28 @@
+---
+layout: post
+title: Age still a prejudice?
+tags:
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+When at Barcamp, I had good and bad reviews about my presentation. One of them touched me in a particular way:
+<blockquote>I found the fact that you're particularly young pretty unusual for someone to share your thoughts, experience and expertise. It just confused me.</blockquote>
+My apologies to the kind and sensible person that said this to me if this is wrong. He mentioned prejudice along the comment and sought to put it apart while I was speaking. I understood and accepted what he meant. You don't face a young rebel like me who happens to feel his life intensely that often.
+
+<!--more-->
+
+I am 23 years old. I experience as much as you (I guess): mad boss, bad salary, trouble every now and then, I get sick, scared, happy, angry, sad; just like you. I want to move in together and get married; like you might dream or already accomplished. <strong>The difference between me and most people is that they don't care</strong>. If you do care, then you are a friend.
+<h3>It's a matter of energy and emotion.</h3>
+I went to see a wedding a time ago. It was supposed to be the happiest moment of the couple's lives. Except it wasn't. The beautiful couple wasn't connected. There was no magic in their eyes when they looked at each other, that sparkling glow.
+
+What does this have to do with anything? Well, they didn't care about their marriage, why should they care about the rest of their lives?
+
+You don't need to be 30 or 40 to start caring. Start caring right now. Start feeling. Write about it. A couple of months after you start writing, you'll notice how much you've learned. I know I did. <a href="http://www.oportoemconversa.com/2010/06/23/barcamp-jose-mota-paixao-psicologia-e-rails/">My Barcamp presentation</a> is the result of 2 months of writing and caring about my growth and my happiness.
+
+Age is not a prejudice anymore. Information is spreading fast and people's awareness and conscience levels are rising. It's a biological process.
+
+<a href="http://dmitrizone.com/">Dmitri Gaskin</a> started caring at the age of 11. He is one that <a href="http://www.youtube.com/watch?v=8mwKq7_JlS8">taught me jQuery</a> and he was only 12 back then. I can't find a better example.
diff --git a/_posts/2010-07-06-singular-resourcing-on-rails-3-beta.html b/_posts/2010-07-06-singular-resourcing-on-rails-3-beta.html
new file mode 100644
index 0000000..a06a9be
--- /dev/null
+++ b/_posts/2010-07-06-singular-resourcing-on-rails-3-beta.html
@@ -0,0 +1,28 @@
+---
+layout: post
+title: Singular resourcing on Rails 3 beta
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Today I've been struggling on my project to be. I want to build it just right so I can learn Rails 3 the best way and enjoy the Ruby and Rails experience a little more. I love their ways, but sometimes it gets tough to go around the normal skeleton of an application.
+<h3>Singular resourcing was harder to grasp than I thought</h3>
+The idea is actually pretty simple to understand: for example, <em>you say you want a user to access only one resume</em> because that's the only one he would have. The scaffold generator adjusts the routing accordingly; well, at least it should.
+
+<!--more-->
+
+[gist id='464781']
+
+It should actually be <code>resume_path</code> in the singular but for the URL's to work you must have an <code>:as</code> parameter in the routes:
+
+[gist id='464784']
+
+I got frustrated for realizing I had to do extra effort to understand something that should have been linear. I need to work around on this. I was thinking of normal resourcing the posts so it could be searchable later on and everything. But it doesn't feel right, that's not the business model. A user has its own resume, period. If he is to look at another one, then a custom route will be made up.
+
+I'm asking for help now. If you have something to share regarding this matter, it would be absolutely great and I thank you very much.
+
+PS: Yes, the application started from this point. I have no users yet, no static content, no nothing. Perhaps starting an application with a singleton scaffold was a bad idea. Perhaps start with the users first? After all, they are the system and the resume should belong to them.
diff --git a/_posts/2010-09-23-on-honesty.html b/_posts/2010-09-23-on-honesty.html
new file mode 100644
index 0000000..2dfd7ed
--- /dev/null
+++ b/_posts/2010-09-23-on-honesty.html
@@ -0,0 +1,20 @@
+---
+layout: post
+title: On honesty
+tags:
+- Miscellaneous
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+I tweeted:
+<blockquote>Third draft for a blog post. Not coming soon. I'm just too honest.</blockquote>
+I can't speak much because I don't have money. But I subscribe <a href="http://loudthinking.com">David Heinemeier Hansson</a>'s <a href="http://37signals.com/svn/posts/2585-facebook-is-not-worth-33000000000">brilliant post</a> about Facebook. Right off the bat he says:
+<blockquote>Anyone who can get 500 million people to connect, share photos, and click on little cows in Farmville deserves major kudos.</blockquote>
+Along his speech he doesn't give a crap about what he says will affect others. He just says it. Period.
+
+I like his honesty. I like his guts. I like that he can say this kind of stuff. The fact is, he can say whatever he wants; he's successful and no one can say anything about it.
+
+David, you sir, are an example. I wish you and your company the best of luck. I wish that for myself. I will get there, I promise.
diff --git a/_posts/2010-11-05-rails-3-has_many-through-checkboxes.html b/_posts/2010-11-05-rails-3-has_many-through-checkboxes.html
new file mode 100644
index 0000000..84838a2
--- /dev/null
+++ b/_posts/2010-11-05-rails-3-has_many-through-checkboxes.html
@@ -0,0 +1,30 @@
+---
+layout: post
+title: Rails 3 has_many :through checkboxes
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _wp_old_slug: ''
+---
+On Twitter I wrote:
+<blockquote>Rails does it for you, just add sheet_ids[] to the form with the checkboxes and it's done! will blog.</blockquote>
+Being a music teacher, my fiance needed to keep record of tests her students perform. Also, each test has several sheets that need mentoring and monitorization through several parameters. I decided to help and reentered the Rails world, and since I have found no answer on this topic, I decided to write it myself.
+
+This situation is a perfect model for using the so well known <a href="http://railscasts.com/episodes/17-habtm-checkboxes">HABTM checkboxes</a>.
+
+<!--more-->
+<h3>A closer look at the problem</h3>
+<h4>Models</h4>
+[gist id=663287]
+
+A pretty basic setup. The <em>venues</em> (the students' tests) include several <em>sheets</em> for them to study and for the teacher to evaluate, through <em>exhibitions</em> that have several criteria.
+<h4>View</h4>
+[gist id=663417]
+
+I simplified the form just so you see what's at stake. The same principle of the HABTM checkboxes applies to a has_many :through association. Instead of new entries in a venues_sheets table, new <em>Exhibitions</em> are created with the respective foreign ids in them.
+
+The controller needs no mention because it stays the same. It just saves / updates the model. This is why I love Rails: the hard work is done: you just need to focus on what matters.
diff --git a/_posts/2011-02-21-prototypes-in-rails.html b/_posts/2011-02-21-prototypes-in-rails.html
new file mode 100644
index 0000000..0a3074f
--- /dev/null
+++ b/_posts/2011-02-21-prototypes-in-rails.html
@@ -0,0 +1,21 @@
+---
+layout: post
+title: Prototypes in Rails?
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+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're a Rails developer / designer, why even bother? Why not just start
+pumping the business up? You don'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.
+
+Web application design walks with its development, they are too close to be set
+apart.
diff --git a/_posts/2011-03-29-blogrite-001-prelude.html b/_posts/2011-03-29-blogrite-001-prelude.html
new file mode 100644
index 0000000..be2a388
--- /dev/null
+++ b/_posts/2011-03-29-blogrite-001-prelude.html
@@ -0,0 +1,21 @@
+---
+layout: post
+title: Blogrite 001 – Prelude
+tags:
+- Development
+- Personal improvement
+- ruby
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _wp_old_slug: ''
+ _sd_is_markdown: '1'
+---
+<p>I'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's a genius and he actually made me reconsider Test::Unit again, since it is considerably lighter than Rspec. I'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>
diff --git a/_posts/2011-03-29-new-journey-ruby-git-blogrite.html b/_posts/2011-03-29-new-journey-ruby-git-blogrite.html
new file mode 100644
index 0000000..c42ae69
--- /dev/null
+++ b/_posts/2011-03-29-new-journey-ruby-git-blogrite.html
@@ -0,0 +1,25 @@
+---
+layout: post
+title: ! 'New journey: Ruby + git = Blogrite'
+tags:
+- Development
+- Miscellaneous
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _wp_old_slug: ''
+---
+Truth: my blog and I have been apart for a while. Another truth: I've been reading more about Ruby. In fact, the more I read, the more I want to. Also, I've been growing tired of certain things:
+<ul>
+ <li>PHP is not it anymore.</li>
+ <li>Wordpress or Drupal are top notch. I don'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'll be more confident enjoying the full power of Ruby.</li>
+ <li>I <em>don'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'm sick of 10+ spam comments a day.</li>
+</ul>
+My next dare: a git + ruby based blog. So, I'll be posting several articles on how I'm doing. If possible, I'll post videos too. I'll make sure to use Vimeo since it accepts OGG (it seems lighter).
+
+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).
diff --git a/_posts/2011-03-30-blogrite-002-where-to-even-start.html b/_posts/2011-03-30-blogrite-002-where-to-even-start.html
new file mode 100644
index 0000000..793935b
--- /dev/null
+++ b/_posts/2011-03-30-blogrite-002-where-to-even-start.html
@@ -0,0 +1,25 @@
+---
+layout: post
+title: Blogrite 002 – Where to even start
+tags:
+- Development
+- Personal improvement
+- ruby
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _wp_old_slug: ''
+---
+It's the first time I am writing any tests at all, I'm dead serious. Please bear with me, I'd appreciate your help in guiding towards the magic of TDD. Thanks guys.
+<h3>What I noticed already</h3>
+<ul>
+ <li>I chose Minitest after Rspec because it's leaner, which is what I want for now.</li>
+ <li>Requiring 'minitest/autorun' will run my tests automatically.</li>
+ <li>The class to inherit from is Minitest::Unit::TestCase, not from the Test module.</li>
+</ul>
+I'm still missing stuff like how to require and autoload right. I'm pretty sure is wrong with that.
+
+<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>
diff --git a/_posts/2011-03-31-blogrite-003-requires-done-wrong.html b/_posts/2011-03-31-blogrite-003-requires-done-wrong.html
new file mode 100644
index 0000000..f30b62a
--- /dev/null
+++ b/_posts/2011-03-31-blogrite-003-requires-done-wrong.html
@@ -0,0 +1,20 @@
+---
+layout: post
+title: Blogrite 003 – Requires done wrong
+tags:
+- Development
+- Personal improvement
+- ruby
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _wp_old_slug: ''
+---
+Still not much to show you, sadly. I'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.
+
+<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>
diff --git a/_posts/2011-04-11-blogrite-git-or-dropbox.html b/_posts/2011-04-11-blogrite-git-or-dropbox.html
new file mode 100644
index 0000000..7a241d2
--- /dev/null
+++ b/_posts/2011-04-11-blogrite-git-or-dropbox.html
@@ -0,0 +1,21 @@
+---
+layout: post
+title: Blogrite - Git or Dropbox?
+tags:
+- Miscellaneous
+- ruby
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _wp_old_slug: blogrite-%e2%80%94-git-or-dropbox
+ _edit_last: '1'
+---
+The absence of communication has been resounding for a while. I have been thinking about Blogrite, nonetheless. I want to show something in the local Ruby meetup next month.
+<h3>The million dollar question</h3>
+Today I went to #git in Freenode, asking for how should I learn git in order to use it as a filesystem and access it remotely via some server using Grit. The somehow arrogant yet most likely right answer I got was: <em>don't</em>. Well, what should I use then? The same guy didn't answer me (well, he did: "<em>I don't know".</em>) but another guy did.
+<blockquote>Why not use Dropbox or Amazon S3?</blockquote>
+Actually that is a great idea. Again, my principle is: keep it minimal and lightweight and still easy for geeks to use. Dropbox is definitely easy to use and maintain. You can also version the content with Git; it just won't be part of my engine.
+<h3>The million dollar answer</h3>
+I will use Dropbox as the content database. Git will have to wait. It shall come, but not just yet. This gives me opportunity to create modular adapters later on so I feel confortable with it.
diff --git a/_posts/2011-04-18-blogrite-004-lots-of-news.html b/_posts/2011-04-18-blogrite-004-lots-of-news.html
new file mode 100644
index 0000000..197d36a
--- /dev/null
+++ b/_posts/2011-04-18-blogrite-004-lots-of-news.html
@@ -0,0 +1,20 @@
+---
+layout: post
+title: Blogrite 004 - Lots of news
+tags:
+- Miscellaneous
+- ruby
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _wp_old_slug: ''
+---
+Hi everyone, I apologize for not saying anything sooner. I've got lots of different stuff going on. Watch it and submit your comments, I appreciate it.
+
+<iframe src="http://player.vimeo.com/video/22561180?title=0&amp;byline=0&amp;portrait=0&amp;color=ff9933" width="466" height="291" frameborder="0"></iframe>
+
+<h3>Shameless self-promotion: Rubynorte</h3>
+<a href="http://rubynorte.heroku.com">Rubynorte</a> is the Portuguese Ruby conference a <a title="Filipe Pina" href="http://twitter.com/filipepina">couple</a> <a title="Ricardo Mendes" href="http://twitter.com/locks">of</a> <a title="Pedro Borges" href="http://twitter.com/pedroborges">friends</a> and I are putting up. If you're portuguese, come and join us. Submit a talk if you wish to speak to the community.
diff --git a/_posts/2011-05-09-blogrite-005-tests-pass-server-runs.html b/_posts/2011-05-09-blogrite-005-tests-pass-server-runs.html
new file mode 100644
index 0000000..ffb8162
--- /dev/null
+++ b/_posts/2011-05-09-blogrite-005-tests-pass-server-runs.html
@@ -0,0 +1,19 @@
+---
+layout: post
+title: Blogrite 005 - Tests pass, server runs
+tags:
+- Development
+- Personal improvement
+- ruby
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<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>
+
+I have talked a little faster today but still a bit longer than I had wished for. I'm excited to bring good news about Blogrite, I'm steadly growing my knowledge on Ruby. Rack is really interesting, I'm loving how simple and easy to learn it is so far.
+
+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't wait to start the refactoring phase, when everything is working the <em>not-so-right</em> way.
diff --git a/_posts/2011-05-10-blogrite-see-you-at-rubynorte.html b/_posts/2011-05-10-blogrite-see-you-at-rubynorte.html
new file mode 100644
index 0000000..a3677e1
--- /dev/null
+++ b/_posts/2011-05-10-blogrite-see-you-at-rubynorte.html
@@ -0,0 +1,16 @@
+---
+layout: post
+title: Blogrite — see you at Rubynorte!
+tags:
+- Miscellaneous
+- ruby
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Since I'm doing a presentation on Blogrite at <a title="Portuguese Ruby conference" href="http://rubynorte.heroku.com" target="_blank">Rubynorte</a> in little more than a week, I won't put any videos until then. It will build expectation on wether it's actually working or not. I certainly hope it is by then!
+
+Wish me luck, or even better: help me build something that I hope you might use too.
diff --git a/_posts/2011-05-24-blogrite-006-it-works-well-sort-of.html b/_posts/2011-05-24-blogrite-006-it-works-well-sort-of.html
new file mode 100644
index 0000000..7f81a96
--- /dev/null
+++ b/_posts/2011-05-24-blogrite-006-it-works-well-sort-of.html
@@ -0,0 +1,27 @@
+---
+layout: post
+title: Blogrite 006 - It works! Well, sort of.
+tags:
+- Development
+- Personal improvement
+- ruby
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+<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>
+
+I told you before I would post a video on the development of Blogrite after Rubynorte. So here it is.
+<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 CSS file!</li>
+ <li>ERB for rendering the templates.</li>
+ <li>Classes over modules for extension?</li>
+</ul>
+I appreciate your feedback, you can clone the project at <a href="http://github.com/josemota/blogrite">Github</a>.
+
+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.
diff --git a/_posts/2011-06-08-blogrite-007-classes-over-modules-404-is-not-ok.html b/_posts/2011-06-08-blogrite-007-classes-over-modules-404-is-not-ok.html
new file mode 100644
index 0000000..38fdce0
--- /dev/null
+++ b/_posts/2011-06-08-blogrite-007-classes-over-modules-404-is-not-ok.html
@@ -0,0 +1,19 @@
+---
+layout: post
+title: Blogrite 007 - Classes over modules, 404 is not OK
+tags:
+- Miscellaneous
+- ruby
+- screencast
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _sd_is_markdown: '1'
+---
+<iframe src="http://player.vimeo.com/video/24788937?title=0&amp;byline=0&amp;portrait=0&amp;color=ff9933" width="466" height="291" frameborder="0"></iframe>
+
+<p>TDD is so much fun. The tests I made allowed me to redo the whole plugin system and understand what I should do instead. I am pleased with with how the direction is being set and I can't wait to put this up for you guys.</p>
+
+<p>In the video you'll see I'm having trouble with requesting a good post after a request done wrong. Everytime a request is a bad one, all the following ones are bad as well, I'm not being able to control it. I appreciate the help you can give, thanks a bunch!</p>
diff --git a/_posts/2011-06-09-ufzvalidator-form-validator-jquery-plugin.html b/_posts/2011-06-09-ufzvalidator-form-validator-jquery-plugin.html
new file mode 100644
index 0000000..c5a9513
--- /dev/null
+++ b/_posts/2011-06-09-ufzvalidator-form-validator-jquery-plugin.html
@@ -0,0 +1,15 @@
+---
+layout: post
+title: ! 'UFZvalidator: form validator jQuery plugin'
+tags:
+- Development
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+I have been working with <a href="http://utopicfarm.com">Utopic Farm</a>'s <a href="http://plugins.jquery.com/project/ufvalidator">jQuery Form Validator</a> for a while, it'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 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.
diff --git a/_posts/2011-07-05-blogrite-on-indexes.html b/_posts/2011-07-05-blogrite-on-indexes.html
new file mode 100644
index 0000000..a7e6646
--- /dev/null
+++ b/_posts/2011-07-05-blogrite-on-indexes.html
@@ -0,0 +1,23 @@
+---
+layout: post
+title: Blogrite — on indexes
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Blogrite has been having a steady grow since I announced it; slow but growing still. Single pages finally work and I'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.
+
+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't build Blogrite to allow multiple content providers, I would fix the posts' location into the filesystem and perform system calls like <code>find</code> or <code>tail</code> or something else. I wouldn'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.
+
+What I do know is the responsability of getting the index content is the provider's.
+<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't think there are, feel free to prove me wrong!)</li>
+</ul>
+
+All of this considering an automated index page. There might be another ways of accomplishing this. I'm open to suggestions, throw 'em away.
diff --git a/_posts/2011-08-02-cucumber-rspec-and-documentation-as-one.html b/_posts/2011-08-02-cucumber-rspec-and-documentation-as-one.html
new file mode 100644
index 0000000..0d33c72
--- /dev/null
+++ b/_posts/2011-08-02-cucumber-rspec-and-documentation-as-one.html
@@ -0,0 +1,31 @@
+---
+layout: post
+title: Cucumber / Rspec and documentation as one
+tags:
+- Development
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+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.
+
+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.
+
+<!--more-->
+
+I have been reading the Rspec book. Definitely read it if you want to know how to code better.
+<h3>Why does “documentation” feel so hard?</h3>
+Dumb answer: <em>It sucks</em>. Smart answer would be something like: <em>You might be doing it wrong</em>.
+
+Documentation specifies a software's collection of procedures it performs. Why should we even try and build software that does not resemble people's expectations? (If it weren't Ruby, I'd guess the software to be built required another form of understanding, which is fine and yet irrelevant in this case.)
+<h3>Who is the documentation for?</h3>
+Not just people, but stakeholders who want straightforward answers. 150 pages of paper is not the way to accomplish that, IMO. They know what they asked for and we should build the answers accordingly.
+<h3>Cucumber and Rspec</h3>
+What'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?
+
+Cucumber defines vocabulary for the system, states what it does and who. And it helps developers and stakeholders connect and collaborate.
+
+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't they…?
diff --git a/_posts/2011-09-01-does-datatables-need-better-integration.html b/_posts/2011-09-01-does-datatables-need-better-integration.html
new file mode 100644
index 0000000..6eed784
--- /dev/null
+++ b/_posts/2011-09-01-does-datatables-need-better-integration.html
@@ -0,0 +1,35 @@
+---
+layout: post
+title: Does Datatables need better integration?
+tags:
+- datatables
+- Development
+- functional
+- javascript
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+Over these last two months, I've been working with <a href="http://datatables.net" target="_blank">Datatables</a>, an amazing easy-to-setup steroid machine for HTML tables. For the kind of work I'm doing right now, it suits my needs just perfectly.
+
+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.
+
+<!--more-->
+
+<strong>Disclaimer</strong>: The plugin does not approach local processing, only server-side.
+<h3>Push data to the server without using fnServerData</h3>
+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's not what the end user wants, he wants to just download the plugin, place it in and there, it does range filtering.
+
+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't pollute the initializers.
+<h3>Integrate with other plugins, such as ColVis or ColReorder</h3>
+Datatables' features that have controls, such as MF, require a DOM 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's footer, with no regard to the column order or state of visualization.
+
+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'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.
+
+For what it'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.
+<h3>So, is there a need for better integration?</h3>
+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's a remarkable piece of software.
+
+I told him that I would risk being stupid to the point of being told to RTFM, 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's not for how it's built, it would by the way it's told.</em>
diff --git a/_posts/2011-10-20-going-for-jruby.html b/_posts/2011-10-20-going-for-jruby.html
new file mode 100644
index 0000000..f50a884
--- /dev/null
+++ b/_posts/2011-10-20-going-for-jruby.html
@@ -0,0 +1,40 @@
+---
+layout: post
+title: Going for JRuby
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+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.
+
+<!--more-->
+<h3>Context</h3>
+I play the Interaction Designer role and digging deeper to Struts and Java servlets, more than just HTML/CSS/jQuery, is becoming quite the challenge. I happen to love Rails and would love to try it out. My main goals are:
+<ol>
+ <li>Take advantage of Rails' 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>
+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's a good cause and it's a great opportunity to improve development happiness and systems integration.
+<h3>The challenge</h3>
+Here is a list of the things I know:
+<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>
+I also need to get in touch with these concepts:
+<ul>
+ <li>Web application development in Java: .jar's, war'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>
+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!
+
+&nbsp;
diff --git a/_posts/2011-11-12-piscean-programming.html b/_posts/2011-11-12-piscean-programming.html
new file mode 100644
index 0000000..53aada6
--- /dev/null
+++ b/_posts/2011-11-12-piscean-programming.html
@@ -0,0 +1,23 @@
+---
+layout: post
+title: Piscean programming
+tags:
+- Development
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+---
+For those who don't care about astrology, try to follow along; the principle is pretty practical.
+<blockquote><strong>TL;DR</strong> – Being bossed around compromises inovation, creativity and it destroys one's true sense of purpose. Don't let that destroy you.</blockquote>
+<!--more-->
+
+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't don't become slaves.
+
+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'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't help the smallest, the poorest and the less bright; they only serve the allegedly powerful and certainly wealthy.
+
+Open source is an awesome Aquarian movement. It's not just the code, it's a whole mindset. It lets people make their move and be rewarded for it. That reward is not just money, it's also the joy of the contribution and hope for evolution.
+
+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'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's the right thing to do.
diff --git a/_posts/2011-12-09-same-class-associations-in-rails-3.html b/_posts/2011-12-09-same-class-associations-in-rails-3.html
new file mode 100644
index 0000000..654f69d
--- /dev/null
+++ b/_posts/2011-12-09-same-class-associations-in-rails-3.html
@@ -0,0 +1,31 @@
+---
+layout: post
+title: Same class associations in Rails 3
+tags:
+- Development
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _cws_is_markdown: '1'
+---
+<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>.
+
+<hr />
+
+This is the first time I've ran into something like this and it was interesting to realize what it actually means when developing a business logic in Rails.
+
+<h3>Context</h3>
+
+In this app I'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>'s in the record's table.
+
+<h3>So what did technically happen?</h3>
+
+I wasn'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 SQL query that would correspond to <code>r.events.first</code> instead.
+
+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'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's perspective, it looks like the record actually <em>belongs to</em> the event, when in practice it's not.
+
+<h3>Code sample</h3>
+
+[gist id=1449428]
diff --git a/_posts/2011-12-26-a-perspective-on-education.html b/_posts/2011-12-26-a-perspective-on-education.html
new file mode 100644
index 0000000..8a99f2f
--- /dev/null
+++ b/_posts/2011-12-26-a-perspective-on-education.html
@@ -0,0 +1,54 @@
+---
+layout: post
+title: A perspective on the state of education (of the Web)
+tags:
+- Design
+- Personal improvement
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _cws_is_markdown: '1'
+ _sd_is_markdown: '1'
+---
+<p>This is a <a href="https://twitter.com/mollydotcom/status/147234090603651072">challenge</a> by <a href="http://molly.com">Molly Holzschlag</a> concerning how the Web is taught around here. Even though I tend to be opinionated, things have been happening that I consider important to a better future.</p>
+
+<p>Learning the craft of the Web has always been hard. It has taken a lot of blog posts, trial and error, inspiration, books, <em>etc.</em> to slowly progress; all of this... after hours.</p>
+
+<p>You must get things done at daytime. Innovation costs time that doesn't exist. At least that's what most companies believe around here in the last 5 years. Money is all leaders see, there's not the time nor the money to delve into a better process or a better performance. Why bother if the pay is low and things are steady? This is a cultural issue and that might just be the hardest impediment that our people has to clear.</p>
+
+<!--more-->
+
+<h3>Academics is overrated</h3>
+
+<p>Our culture has been dictating over the years that the path to success must include a college degree. It even includes <em>two</em> now, a bachelor and a masters degree. If you achieve none of them, people will think you're an idiot. That immediately lowers any expectations for anyone that decides to hire a web designer or an open source developer (<em>i.e.</em> not Java / .NET). That's probably one of the many reasons why websites like <a href="http://clientsfromhell.com">Clients from Hell</a> show up. We don't have <a href="http://en.wikipedia.org/wiki/European_Credit_Transfer_and_Accumulation_System">ECTS</a> to prove our clients we can do our job as much as those that do have them.</p>
+
+<p>The nature of the open web allows anyone to learn it and that is wonderful. Resources are available everywhere, updated perhaps monthly. The community gives their time, tutorials, references and screencasts. How will teachers reassess innovative technologies such as HTML5, CSS3 and Javascript? What will universities do with such a plethora of information?</p>
+
+<p>It's pretty hard to embrace all this change, so volatile. Trying to enclose an everchanging engineering is hurtful for both the enclosed and the enclosing. That's my #1 reason to believe that teaching <em>the web isn't meant to be dominated by universities but by the community</em>.</p>
+
+<h3>Education is underrated</h3>
+
+<p>I took a Computer Science Engineering degree from 2004 to 2009. Everything I know on how to be a web standards designer did not come from that degree. I have learned every semantic element, every CSS best practice, every bit of jQuery from home, after school. Professors lethargicly give students the W3Schools' URL and that's it, they are not required to know more. However, they are responsible for the future of website and web application development, would they choose to. They ought to know more than simple <code>div</code>s and some background colors. They are taught how to give birth to a full fledged, top-to-bottom application, from database modeling and systems architecture to basic MVC. It seems to me that the V is left a little alone.</p>
+
+<p>True education in its most pure and holistic meaning surpasses any established rules. What matters is content and the apprentice's will to absorb it in the way he feels it's best for him. Factory oriented learning &mdash; the one that's implemented today from kindergarten to college &mdash; violates the principle of individuality and it hurts growth. Sadly, achieving individuality in the process of learning is utopic at this point in time and thus a compromise must be reached.</p>
+
+<p>All we have now is the free Internet. People still keep learning and sharing after hours (like I am right now). Twitter allows us to keep up with the brightest mentors such as Molly herself, <a href="http://stuffandnonsense.co.uk">Andy Clarke</a>, <a href="http://zeldman.com">Jeffrey Zeldman</a>, <a href="http://adactio.com">Jeremy Keith</a>, <a href="http://simplebits.com">Dan Cederholm</a>, <a href="http://css-tricks.com">Chris Coyier</a>, amongst so many inspired people that blog and speak about design, standards and application development. I owe them my career, certainly not my college degree. I'm pretty sure most good portuguese designers feel the same way, even if ever so slightly.</p>
+
+<h3>Solutions</h3>
+
+<p>I have stated before that universities shouldn't raise the flag and shape the whole web standards industry. However, there is the room and the need to solidify the basic assets of web development. In fact, I totally support the creation (if not an update; perhaps a branch on W3C?) of a unique place where all these resources can be served with quality documentation and possibility of debate, allowing universities to have some sort of reference of what can be introduced in their courses and promote the best content to their students. This not only:</p>
+
+<ol>
+<li>Gives future designers and developers' the right skills and techniques so they can do their job like they never did before; but also,</li>
+<li>Increases the universities' reputation for their investment in practical, meaningful content that helps students get things done fast and done well.</li>
+</ol>
+
+<p>A great example of a standardized way of centering resources in one accessible and friendly place is the <a href="http://rubygems.org">Rubygems</a> platform. Unlike other programming languages, Ruby has managed to flagpole an idea so great and no other language has ever made it this well. Sure, <a href="http://pear.php.net">PEAR for PHP</a> is nice and <a href="http://ctan.tex.org">CTAN for LaTeX</a> is huge but not has rewarding and simple as the gem system. Everyone uses Rubygems, all the tools for publishing Ruby knowledge are published through it; it builds trust amongst the developer community and it's just amazing.</p>
+
+<p>The effort of standardizing education of the web is being debuted in Portugal with the birth of a post-graduation in <em>Web design</em> at <a href="http://esad.pt/en/cursos/pos-graduacao/web-design">ESAD</a>. <a href="http://tpwd.net">Tiago Pedras</a> <em>et al</em> have been working hard so as to build a course that grants you ECTS points and also means something. I look forward to hear from him and acknowledge that finally the bar is being raised for everyone.</p>
+
+<h3>Conclusion</h3>
+
+<p>After several years, our nation is finally taking its first steps to adulthood regarding the craft of the web. Up until now, every designer was a nomad messing around with what they thought they knew and stuck with it. Now there's a chance for constantly embracing change and be happy about it. Let's look at what has been done well in the last few years and consider the chance of making the world a better place through creativity and care, one step at a time.</p>
diff --git a/_posts/2012-02-10-sacrilege-a-rather-lousy-rant-on-java-for-the-web.html b/_posts/2012-02-10-sacrilege-a-rather-lousy-rant-on-java-for-the-web.html
new file mode 100644
index 0000000..dfd9816
--- /dev/null
+++ b/_posts/2012-02-10-sacrilege-a-rather-lousy-rant-on-java-for-the-web.html
@@ -0,0 +1,33 @@
+---
+layout: post
+title: ! 'Sacrilege: a rather lousy rant on Java for the web'
+tags:
+- Development
+- Loadacrap
+status: publish
+type: post
+published: true
+meta:
+ _edit_last: '1'
+ _sd_is_markdown: '1'
+---
+<p>Let me start out saying I'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't know what to feel for Java programmers.</p>
+
+<p>It's been an hour and a half since I'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'm going nuts. <em>I've dealt with more XML in this hour and a half than most of the time in my degree.</em></p>
+
+<p>Story told short:</p>
+
+<ol>
+<li>I've installed Netbeans and an Apache Tomcat 7 server.</li>
+<li>I've created a new Maven Web application.</li>
+<li>I've copied a struts routing example, along with the respective action POJO.</li>
+<li>Tried to reach the URL; no luck.</li>
+<li>Looked up for a web.xml example, in order to correctly load Struts.</li>
+<li>Project won'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'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'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'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>
diff --git a/_posts/2012-02-28-innovation:-mediocrity-vs-community.html b/_posts/2012-02-28-innovation:-mediocrity-vs-community.html
new file mode 100644
index 0000000..ce66048
--- /dev/null
+++ b/_posts/2012-02-28-innovation:-mediocrity-vs-community.html
@@ -0,0 +1,24 @@
+---
+layout: post
+title: ! 'Innovation: mediocrity vs community'
+tags:
+- Miscellaneous
+status: draft
+type: post
+published: false
+meta:
+ _edit_last: '1'
+---
+I am taking a stand here and I expect serious retaliation. I am writing under serious anger towards poor sense of <em>true</em> innovation.
+
+I love my country, Portugal is a lovely place to live. But there's one thing I despise: <strong>we breathe mediocrity </strong><em><strong>everywhere</strong></em>.
+<ul>
+ <li>The Parliament looks like a bunch of monkeys laughing at each other.</li>
+ <li>People live poorly and choose to do so.</li>
+ <li>Banks steal.</li>
+ <li>CEOs of companies buy expensive cars instead of paying the employees; and then they declare bankruptcy and get away.</li>
+ <li>Cops don't protect people, they ticket them, in order to finance the corrupt Parliament.</li>
+ <li>Justice is corrupt.</li>
+ <li>Information Technology is retarded.</li>
+</ul>
+Now there's the main focus (at least for me). I am an Interaction Designer, I design interfaces that people find pleasing in their heart and brain.
diff --git a/_posts/2012-02-28-ruby-as-a-philosophy.html b/_posts/2012-02-28-ruby-as-a-philosophy.html
new file mode 100644
index 0000000..48eb2b4
--- /dev/null
+++ b/_posts/2012-02-28-ruby-as-a-philosophy.html
@@ -0,0 +1,31 @@
+---
+layout: post
+title: Ruby as a philosophy
+tags:
+- Development
+- Personal improvement
+status: draft
+type: post
+published: false
+meta:
+ _edit_last: '1'
+ _sd_is_markdown: '1'
+---
+<p>The Ruby language is only a part of what I want to consider an open philosophy. There's just so much behind the definition of a Ruby developer, and I want to be proud enough to consider myself as one.</p>
+
+<p>I come from a <code>PHP</code> background, and have also developed <code>C</code>, <code>VB</code> and Java. I respect <code>C</code> because it is the mainstream procedural language, although I don't actually develop with it. A better comparison would be between Ruby, <code>PHP</code>, Java, Python (never tried), Perl (never tried either) and <code>C#</code> (barely touched it). I've tried the first two and my conclusion is that PHP has two purposes:</p>
+
+<ul>
+<li>Hold the millions of websites out there so they won't just break;</li>
+<li>Ease website deployment through <em>Wordpress, Drupal and Textpattern</em>. They build the righteous web in PHP: <em>accessible, microformatted, well crafted</em> publishing platforms.</li>
+</ul>
+
+<p>Other than that, I want Ruby to be the way to go for me. Wether through Rails, Sinatra, MacRuby, CLI apps, you name it.</p>
+
+<h3>The principle of Easy</h3>
+
+<p>Ruby's syntax leaves a pretty good impression on me. It's clean, fresh and fun. Its capabilities (from what I have read in the Pickaxe book) are out of the normal league. Blocks, procs and all its dynamics still blow me away.</p>
+
+<h3>The principle of Supportive</h3>
+
+<p>This actually is a proof that</p>
diff --git a/_posts/2012-02-28-talks-2.0---o-resultado.html b/_posts/2012-02-28-talks-2.0---o-resultado.html
new file mode 100644
index 0000000..f89132d
--- /dev/null
+++ b/_posts/2012-02-28-talks-2.0---o-resultado.html
@@ -0,0 +1,53 @@
+---
+layout: post
+title: Talks 2.0 - O resultado
+tags:
+- Personal improvement
+- Português
+status: draft
+type: post
+published: false
+meta:
+ _edit_last: '1'
+---
+Hoje fui à <a href="http://talks20.com">Talks 2.0</a>, uma conferência de empreendedorismo. O tópico foi <em>Erros e Sucessos na Criação de Empresas Tecnológicas</em> e não podia ir mais ao encontro do que poderia precisar de ouvir nesta fase da minha vida. Foi um aglomerado de energia empreendedora em 300m2 e o conhecimento partilhado vale ouro, vindo de oradores com a experiência certa.
+<h3>O meu apanhado</h3>
+<blockquote>Empreendedorismo é uma maratona e não um <em>sprint</em>.</blockquote>
+<blockquote>A base de construção da sociedade em Portugal é a desconfiança.
+
+Combater a irresponsabilidade diluída.
+
+Medo de falhar é pior do que falhar.
+
+Apoio à comunidade.
+
+Quando alguém assume ser empreendedor, há sempre alguém que contrapõe e nos tenta rebaixar.
+
+Aquando da decisão de montar um negócio: não planear muito nem se atirar de cabeça, imprudente.
+
+O nosso negócio/empresa deve estar em concordância com a nossa vontade e motivação. Se for preciso, mudar o plano de negócio.
+
+Atraimos aquilo que somos, não aquilo que parecemos.
+
+Olhar à volta é um começo brilhante para inovar.
+
+Dificuldades
+<ol>
+ <li>Estratégia. não é linear. muda. intuição à primeira, dados à segunda.</li>
+ <li>Gerir pessoas.</li>
+ <li>Dinamismo de plano de negócio. pode ser perigoso se não se está preparado e consciente.</li>
+ <li>Necessidade de cobrir várias áreas.</li>
+</ol>
+Erros
+<ol>
+ <li>Exigir demasiado das pessoas. Começa-se a ver que as pessoas são o mais importante.</li>
+ <li>Muito tempo em instalações de pouca qualidade e que não satisfaçam as nossas necessidades.</li>
+ <li>Maus colaboradores demasiado tempo.</li>
+ <li>Má imagem.</li>
+</ol>
+Bons passos
+<ol>
+ <li>Motivação. (a visita do João Garcia à AnubisNetworks foi super inteligente)</li>
+ <li>Coisa boa # 5: trocar serviços. Coisa boa # 4: Buzz (espalhar rumor e tal). Coisa boa # 3: Ousadia.</li>
+</ol>
+</blockquote>
diff --git a/_posts/2012-02-28-the-switch:-textmate-to-vim.html b/_posts/2012-02-28-the-switch:-textmate-to-vim.html
new file mode 100644
index 0000000..fb946c7
--- /dev/null
+++ b/_posts/2012-02-28-the-switch:-textmate-to-vim.html
@@ -0,0 +1,12 @@
+---
+layout: post
+title: ! 'The switch: Textmate to Vim'
+tags:
+- Miscellaneous
+status: draft
+type: post
+published: false
+meta:
+ _edit_last: '1'
+---
+The day has come. I have switched from Textmate to Vim. I decided to switch because I believe in its power. And even though Textmate is a great text editor, Vim has