<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Rafael Dohms</title>
	
	<link>http://blog.doh.ms</link>
	<description>Web Engineer</description>
	<lastBuildDate>Fri, 24 Feb 2012 09:41:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/RafaelDohms/en" /><feedburner:info uri="rafaeldohms/en" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>RafaelDohms/en</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><feedburner:feedFlare href="http://www.plusmo.com/add?url=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://plusmo.com/res/graphics/fbplusmo.gif">Subscribe with Plusmo</feedburner:feedFlare><feedburner:feedFlare href="http://www.thefreedictionary.com/_/hp/AddRSS.aspx?http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://img.tfd.com/hp/addToTheFreeDictionary.gif">Subscribe with The Free Dictionary</feedburner:feedFlare><feedburner:feedFlare href="http://www.bitty.com/manual/?contenttype=rssfeed&amp;contentvalue=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://www.bitty.com/img/bittychicklet_91x17.gif">Subscribe with Bitty Browser</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsalloy.com/?rss=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://www.newsalloy.com/subrss3.gif">Subscribe with NewsAlloy</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><feedburner:feedFlare href="http://mix.excite.eu/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://image.excite.co.uk/mix/addtomix.gif">Subscribe with Excite MIX</feedburner:feedFlare><feedburner:feedFlare href="http://www.yourminis.com/subscribe.aspx?u=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://www.yourminis.com/images/addtoyourminisbadge.gif">Subscribe with Yourminis.com</feedburner:feedFlare><feedburner:feedFlare href="http://download.attensa.com/app/get_attensa.html?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://www.attensa.com/blogs/attensa/WindowsLiveWriter/BadgeredintoBadges_10C02/attensa_feed_button5.gif">Subscribe with Attensa for Outlook</feedburner:feedFlare><feedburner:feedFlare href="http://www.webwag.com/wwgthis.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://www.webwag.com/images/wwgthis.gif">Subscribe with Webwag</feedburner:feedFlare><feedburner:feedFlare href="http://hub.netomat.net/account/account.autoSubscribe.jspa?urls=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://www.netomat.net/blogger/images/icon_netomat_feedbutton.gif">Subscribe with netomat Hub</feedburner:feedFlare><feedburner:feedFlare href="http://www.podcastready.com/oneclick_bookmark.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://www.podcastready.com/images/podcastready_button.gif">Subscribe with Podcast Ready</feedburner:feedFlare><feedburner:feedFlare href="http://www.flurry.com/pushRssFeed.do?r=fb&amp;url=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://www.flurry.com/images/flurry_rss_logo2.gif">Subscribe with Flurry</feedburner:feedFlare><feedburner:feedFlare href="http://www.wikio.com/subscribe?url=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://www.wikio.com/shared/img/add2wikio.gif">Subscribe with Wikio</feedburner:feedFlare><feedburner:feedFlare href="http://www.dailyrotation.com/index.php?feed=http%3A%2F%2Ffeeds.feedburner.com%2FRafaelDohms%2Fen" src="http://www.dailyrotation.com/rss-dr2.gif">Subscribe with Daily Rotation</feedburner:feedFlare><item>
		<title>PHP Community: Of Leaders, conferences and Union</title>
		<link>http://feedproxy.google.com/~r/RafaelDohms/en/~3/JrfMSQaAvTQ/</link>
		<comments>http://blog.doh.ms/2012/02/24/php-community-of-leaders-conferences-and-union/#comments</comments>
		<pubDate>Fri, 24 Feb 2012 09:41:28 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[Community]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[phpbc]]></category>
		<category><![CDATA[phpconfbr]]></category>
		<category><![CDATA[phpsp]]></category>

		<guid isPermaLink="false">http://blog.doh.ms/?p=924</guid>
		<description><![CDATA[Note: This article was originally published on the march/2011 issue of php-architect. If you like it keep a close eye on the Community Column in the magazine, where i get the chance to write alongside other awesome community people. "Our function as community leaders is to enable people to be the best they can in [...]]]></description>
			<content:encoded><![CDATA[<p><em>Note: This article was originally published on the <a href="http://www.phparch.com/magazine/2011-2/march/">march/2011 issue of php-architect</a>. If you like it keep a close eye on the Community Column in the magazine, where i get the chance to write alongside other awesome community people.</em></p>
<p style="text-align: center;"><em><strong>"Our function as community leaders is to enable people to be the best they can in the community that they have chosen to be part of." </strong>-- Jono Bacon</em></p>
<p>This quote comes from Jono Bacon's book: "<a href="http://blog.doh.ms/2010/08/11/review-the-art-of-community-jono-bacon/">The Art of Community</a>", and I like it because it puts somethings in perspective. Communities are a interesting manifestation of human social skills, a truly incredible joining of people by a single motivation, in our case the motivation is PHP, be it helping, learning, self-promotion, work or any more of a wide gamma of roads that lead to getting in touch with this great force. Community leaders are even more intriguing species, people who try to lead and organize this controlled chaos, and they don't even get paid for it.</p>
<div id="attachment_925" class="wp-caption alignright" style="width: 310px"><a href="http://blog.doh.ms/wp-content/uploads/IMG_0052.jpg"><img class="size-medium wp-image-925" title="PHPSP TestFest" src="http://blog.doh.ms/wp-content/uploads/IMG_0052-300x199.jpg" alt="" width="300" height="199" /></a><p class="wp-caption-text">PHPSPUG during our TestFest lunch</p></div>
<p>But as Jono puts it, the Community leader is really not a leader, someone on top of the stage with all the flood lights on him. The leader is a catalyst, that spark that can lead to a forest fire, ok not the best reference, but you get the point. Leaders are there to inspire people, give them the initial push and then literally get out of their way and let them go where their inspiration and self-drive takes them, as Jono says, an "enabler".</p>
<p>Its very interesting to observe Communities, their manifestations and their growth. They seem to have life of their own, to grow, mature and expand as a group in this kind of biological process, leaders are always present, but they are a cyclic occurrence, old ones move on, new ones take over and yet the community keeps going. I have been observing communities for a long while, here in Brazil and a few overseas also, thanks to opportunities from all the major conferences that help all of us "community geeks" get together and start brainstorming, sort of like this column.</p>
<p>Our community seems to have started somewhere in 2006, the first User Group showed up with what was, back then, this crazy idea to hold a national PHP Conference. They started small with a few local events in São Paulo. By the time the conference came around there was this great sense of awareness that we were not alone. I quickly made the wise choice to gather a few savings and get myself a ticket over. It was truly an incredible experience for me, my first PHP Conference, this incredible feeling of being in a place with so many other people speaking the same language, same topics and understanding when I started talking about frameworks, mvc patterns and how to deal with heavy traffic. See, back then I was a one-man team and had barely started using mailing lists, that conference was an eye opener, it showed me that I was naught but a mere beginner in this great career of a PHP Developer. It showed me there was this incredible source out there, one you could tap into and get this amazing collection of knowledge. I stood there watching all of those speakers talk about these incredible things, sharing all of this information, an overdrive of ideas and inspiration.</p>
<p>By the end of the conference I had one clear though: "I need to learn, and I want to share, next year I want to be a speaker". That moment changed my life professionally and that conscious decision to be part of this "community" has been paid back in much more then triple. As history goes that year along with two great friends (<a href="https://twitter.com/#!/adlermedrado">Adler Medrado</a> and Pablo Sanchez) we founded our first User Group, PHPDF on Brazil's capital. And we were not alone, that single conference put so many ideas in so many heads that User Groups started popping up all over the country. The PHP community in Brazil started taking shape, we started to see that we were not quite the "few and scattered" group we believed, we were huge and ready to move to new heights.</p>
<p>Fast forward to 2010. Brazil has over 21 User Groups, almost one in every single state, from the amazon to the atlantic forest and going through all our huge metropoles. That national conference is now just the crowning conference at the end of the year, numerous other smaller conference are held during the year, producing new ideas and more and more groups every year, not to mention launching new speakers and bringing great members of the worldwide community to com inspire our masses. One of the side effects of this reunions is something I like to talk about to every community leader that gives me a chance to talk about community.</p>
<div id="attachment_927" class="wp-caption alignleft" style="width: 310px"><a href="http://blog.doh.ms/wp-content/uploads/4147519500_49528ccdcf_o.jpg"><img class="size-medium wp-image-927" title="PHP Conference Brasil" src="http://blog.doh.ms/wp-content/uploads/4147519500_49528ccdcf_o-300x224.jpg" alt="" width="300" height="224" /></a><p class="wp-caption-text">The &quot;big room&quot; of PHP Conference Brasil</p></div>
<p>Its called <strong>PHP Brazil Communities</strong> (<a href="http://www.php.org.br">PHPBC</a>). Its not a User Group, its just a simple idea, a communication channel. Building and maintaining a UG has a few distinct challenges, mostly the same for every group, save for a few exceptions. After all we are <em>"enablers"</em> right? Its what needs to be done, take down obstacles and let the community be their awesome selves. PHPBC unites all of our community "enablers" under one roof and gives them an opportunity to talk, to ask questions, to listen and to be inspired, its enablers enabling enablers. The result was beyond any expectation we had, a constant growth of members, meetings, activities and new User Groups. Everyone shared: this is how we solved problem X, this is company Y who can give you a place for meetings, this is event format Z that can work with that goal. It turns out that collectively solving problems is very productive, who could guess? The great momentum and huge mass also made it easy for us to reach out to companies, to get support and to become a pool of talent for the job marketplace. Union was our solution and our catalyst, it helped new groups be born, it helped old groups come back and it helped new leaders take the place of other leaders.</p>
<p>If you would like to take anything away from this article with you, take this: Being a community leader or a community member remember that there is great strength in numbers, as a developer there is this great source of untapped knowledge, this insane problem solving bio-computer that you can reach out to and get answers, tips and ideas from. As a leader this great union can push you to become a better "enabler", to push the limits of your community and grow, solve problems and mature.</p>
<p>If you are a leader, <strong>come join us</strong> on the UG Admins list at: <a href="http://phpgroups.org/">http://phpgroups.org/</a>. If you are not in a User Group, <strong>go find the closest one</strong> to you and let the professional growth start.</p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2012/02/24/php-community-of-leaders-conferences-and-union/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2012. |
	  <a href="http://blog.doh.ms/2012/02/24/php-community-of-leaders-conferences-and-union/">Permalink</a> |
	  <a href="http://blog.doh.ms/2012/02/24/php-community-of-leaders-conferences-and-union/#comments">No comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/dev/php/community-php/" title="View all posts in Community" rel="category tag">Community</a>, <a href="http://blog.doh.ms/category/dev/php/" title="View all posts in PHP" rel="category tag">PHP</a>.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=JrfMSQaAvTQ:OKW5ENfqUwc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=JrfMSQaAvTQ:OKW5ENfqUwc:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=JrfMSQaAvTQ:OKW5ENfqUwc:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=JrfMSQaAvTQ:OKW5ENfqUwc:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=JrfMSQaAvTQ:OKW5ENfqUwc:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=JrfMSQaAvTQ:OKW5ENfqUwc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=JrfMSQaAvTQ:OKW5ENfqUwc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=JrfMSQaAvTQ:OKW5ENfqUwc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RafaelDohms/en/~4/JrfMSQaAvTQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2012/02/24/php-community-of-leaders-conferences-and-union/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.doh.ms/2012/02/24/php-community-of-leaders-conferences-and-union/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=php-community-of-leaders-conferences-and-union</feedburner:origLink></item>
		<item>
		<title>DMS\Filter Library 1.0.1 and Bundle</title>
		<link>http://feedproxy.google.com/~r/RafaelDohms/en/~3/7GgMo5DkFz0/</link>
		<comments>http://blog.doh.ms/2012/02/02/dmsfilter-library-1-0-1-and-bundle/#comments</comments>
		<pubDate>Thu, 02 Feb 2012 22:08:43 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://blog.doh.ms/?p=916</guid>
		<description><![CDATA[The past weeks I finally had some time to invest in the DMS library again, so i got busy with a few things. I also had to fix a big problem which had gone unnoticed to me, so i have to thank Mr. Guilherme Blanco for pointing it out. Sadly this means a BC break, [...]]]></description>
			<content:encoded><![CDATA[<p>The past weeks I finally had some time to invest in the DMS library again, so i got busy with a few things. I also had to fix a big problem which had gone unnoticed to me, so i have to thank <a href="https://twitter.com/#!/guilhermeblanco">Mr. Guilherme Blanco</a> for pointing it out.</p>
<p>Sadly this means a BC break, so please follow and make adjustments.</p>
<h3>The BC break: -&gt;filter() becomes -&gt;filterEntity()</h3>
<p>The reasoning here is simple, PHP still supports legacy from PHP4 meaning a function with the same name as the class is understood as a constructor. This generates a few nasty notices, and it made enough sense to rename the function, making it clear like the other ones.</p>
<h3>The DMSFilterBundle</h3>
<p>Along with this i had time to work on building a Bundle so you can plug filtering into Symfony 2 just as you would with validation.</p>
<h3>Composer support</h3>
<p>This bundle is also available on Packagist, making it easy to install, i'll also add the DMS and Filter library as standalones to this soon.</p>
<h3>Tags</h3>
<p>I finally tagged the releases as <em>1.0</em>, or rather <em>1.0.1</em> as i quickly found a few fixes to put in.</p>
<p>The rest remains, here are the links:</p>
<p><strong>DMS Library:</strong> <a href="https://github.com/rdohms/DMS">github</a></p>
<p><strong>DMS Filter Library (sub-tree split):</strong> <a href="https://github.com/rdohms/DMS-Filter">github</a></p>
<p><strong>DMS Filter Bundle (sub-tree split):</strong> <a href="https://github.com/rdohms/DMSFilterBundle">github</a> | <a href="http://packagist.org/packages/dms/dms-filter-bundle">packagist/composer</a> | <a href="http://knpbundles.com/rdohms/DMSFilterBundle">knpbundles page</a> (please recommend it if you like it)</p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2012/02/02/dmsfilter-library-1-0-1-and-bundle/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2012. |
	  <a href="http://blog.doh.ms/2012/02/02/dmsfilter-library-1-0-1-and-bundle/">Permalink</a> |
	  <a href="http://blog.doh.ms/2012/02/02/dmsfilter-library-1-0-1-and-bundle/#comments">No comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/dev/php/" title="View all posts in PHP" rel="category tag">PHP</a>.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=7GgMo5DkFz0:u2E8exauUUA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=7GgMo5DkFz0:u2E8exauUUA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=7GgMo5DkFz0:u2E8exauUUA:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=7GgMo5DkFz0:u2E8exauUUA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=7GgMo5DkFz0:u2E8exauUUA:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=7GgMo5DkFz0:u2E8exauUUA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=7GgMo5DkFz0:u2E8exauUUA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=7GgMo5DkFz0:u2E8exauUUA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RafaelDohms/en/~4/7GgMo5DkFz0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2012/02/02/dmsfilter-library-1-0-1-and-bundle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.doh.ms/2012/02/02/dmsfilter-library-1-0-1-and-bundle/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=dmsfilter-library-1-0-1-and-bundle</feedburner:origLink></item>
		<item>
		<title>PHP Benelux 2012 – Learning lessons</title>
		<link>http://feedproxy.google.com/~r/RafaelDohms/en/~3/laFLFkHOyFA/</link>
		<comments>http://blog.doh.ms/2012/01/31/php-benelux-2012-learning-lessons/#comments</comments>
		<pubDate>Tue, 31 Jan 2012 21:12:51 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[phpbenelux]]></category>
		<category><![CDATA[phpbnl12]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://blog.doh.ms/?p=910</guid>
		<description><![CDATA[After hearing about how great PHP Benelux Conferences were I finally made it over to Belgium to check it out, and i was impressed. To catch you up on the new, I moved to Amsterdam last december and thus had the chance of attending the conference which is now 2 hours away on a train [...]]]></description>
			<content:encoded><![CDATA[<p>After hearing about how great <a href="http://phpbenelux.eu/">PHP Benelux</a> Conferences were I finally made it over to Belgium to check it out, and i was impressed. To catch you up on the new, I <a href="http://blog.doh.ms/2011/11/08/back-to-the-old-continent/">moved to Amsterdam</a> last december and thus had the chance of attending the conference which is now 2 hours away on a train ride.</p>
<p>I could not expect less of a wonderful conference when names like <a href="https://twitter.com/#!/dragonbe">Michelangelo van Dam</a> are involved and this was no exception. Its a community conference, planned and organized by community leaders and for community members, this is what makes it so amazing that even without a big name behind it this conference can put up quite a show and bring so many sponsors. As I sat there watching the closing remarks I realized other User Groups and conferences have lots of lessons to pickup from this conference. Let me name a few:</p>
<p><strong>1. Value your sponsors.</strong> This was very well executed, during the whole event the sponsors had their logos all over the place and the ones who were present had plenty one on one time with conference attendees. Finally during closing remarks each one was mentioned and with a touch of genius their contributions were described, talk about being thankful.</p>
<p><strong>2. Value your speakers.</strong> Who would not want to be a speaker at a conference where you get free belgian beer and chocolates at the end? I know i would, and i'm not even a beer drinker. The amount of care put into the speakers is legendary, pickups, great hotel and i can only imagine what else I did not see myself as a non-speaker.</p>
<p><strong>3. Value your attendees.</strong> This should be easy, but lots of conferences fail at it. Good sessions, good venue, good food and infrastructure, just make your client feel confortable. Don't make him <em>want</em>, make everything available to him <em>at the venue</em> and keep him around for more networking and fun.</p>
<p><strong>4. Awesome socials are awesome.</strong> The social events around a conference are the crowning jewel to the experience, it allows for much more networking and just plain fun and bonding. This is great for speakers and attendees alike, and is usually the moment where great projects take shape. There is a lot to learn from a chat with <a href="https://twitter.com/#!/ianbarber">Ian Barber</a> about public speaking, he even put it in <a href="http://phpir.com/presentation-tips-from-benelux">writing</a>. And there was so much more.</p>
<p><strong>5. Make your attendees pay.</strong> Yeah, I said pay. Many conferences think that being "open source" means having a free conference, I say "ppfffff". Charge a reasonable "I'm a beginner developer with low income"-price and put up a great conference using that money, and people will pay. If they do not pay their employers will, if neither of them does, the problem is bigger. Surely the people who will be leaving the conference better then they came in will be willing to pay. This also adds value to the conference, makes it an investment.</p>
<p><strong>6. Value the organizers and your volunteers.</strong> There was no single-man effort in the conference, they (from what i saw) worked together like a very well oiled machine. Many times did i see all organizers united discussing something and no man was left trying to solve everything alone. Expand your group, get more people, get volunteer and be sure to thank them, give them their "dues", they will give you their all.</p>
<p><strong>7. Have Fun!</strong> Events are always stressful, but you would never guess this from seeing the PHP Benelux crew at work. They just had fun with it, enjoyed, worked, solved solvable problems and apologized for unsolvable ones, what more do we need?</p>
<p>There are probably more lessons to be learnt here, it was a very well executed event, with great speakers, great guests. Coming from Brazil to such a rich network of PHP events is very exciting for me, I love events and now i have multiple large events all around me.</p>
<p>In Belgium I got to see great friends, make new ones, ans most of all realize that it will not be a year before I see them again (yay!). I also picked up quite a few topics to research more and study, as well as being inspired to kickoff new projects and old ideas, the keynotes really did an awesome job to get us inspired.</p>
<p>You can be sure to find me around PHP Benelux 2013, I will be putting out my best to be either a speaker or an attendee, but I'll be there for sure. Congratulations PHP Benelux Crew, it was a wonderful show and a great experience.</p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2012/01/31/php-benelux-2012-learning-lessons/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2012. |
	  <a href="http://blog.doh.ms/2012/01/31/php-benelux-2012-learning-lessons/">Permalink</a> |
	  <a href="http://blog.doh.ms/2012/01/31/php-benelux-2012-learning-lessons/#comments">2 comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/career-information/conferences/" title="View all posts in Conferences" rel="category tag">Conferences</a>, <a href="http://blog.doh.ms/category/dev/php/" title="View all posts in PHP" rel="category tag">PHP</a>.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=laFLFkHOyFA:xi_BLBIP7nk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=laFLFkHOyFA:xi_BLBIP7nk:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=laFLFkHOyFA:xi_BLBIP7nk:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=laFLFkHOyFA:xi_BLBIP7nk:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=laFLFkHOyFA:xi_BLBIP7nk:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=laFLFkHOyFA:xi_BLBIP7nk:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=laFLFkHOyFA:xi_BLBIP7nk:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=laFLFkHOyFA:xi_BLBIP7nk:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RafaelDohms/en/~4/laFLFkHOyFA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2012/01/31/php-benelux-2012-learning-lessons/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blog.doh.ms/2012/01/31/php-benelux-2012-learning-lessons/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=php-benelux-2012-learning-lessons</feedburner:origLink></item>
		<item>
		<title>Back to the Old Continent</title>
		<link>http://feedproxy.google.com/~r/RafaelDohms/en/~3/rpnMSvIUVls/</link>
		<comments>http://blog.doh.ms/2011/11/08/back-to-the-old-continent/#comments</comments>
		<pubDate>Tue, 08 Nov 2011 19:11:12 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[Career]]></category>
		<category><![CDATA[Pessoal/Off-topic]]></category>

		<guid isPermaLink="false">http://blog.rafaeldohms.com.br/?p=892</guid>
		<description><![CDATA["Your life begins where your comfort zone ends" (@elizabethN's mother) My time at SWATends just shy of four years, and I can truly say it has been the biggest, most wonderful and most amazing professional experience of my life. I joined swat as a small user group manager and I am leaving as an international [...]]]></description>
			<content:encoded><![CDATA[<p id="internal-source-marker_0.030575650976970792" style="text-align: center;" dir="ltr"><em>"Your life begins where your comfort zone ends" (<a href="http://twitter.com/#!/ElizabethN/status/131029849417592832">@elizabethN's mother</a>)</em></p>
<p>My time at <a href="http://www.mihswat.com/">SWAT</a>ends just shy of four years, and I can truly say it has been the biggest, most wonderful and most amazing professional experience of my life. I joined swat as a small user group manager and I am leaving as an international speaker, OSS contributor and manager of a awesome user group.Time has knocked on my door, I'm no longer 20 and time is not waiting around for me, so its time to kick my life's plan back into gear and proceed to the next steps. Working for SWAT with such incredible and inspiring people, enabled me to reach a very comfortable point in my career, to expand my network over the borders of Brazil, getting to know so many awesome people, literally from the US all the way around to the Philippines.</p>
<p>I was given a chance to challenge myself and follow in the lines of SWAT's CEO, <a href="http://twitter.com/#!/gustible">Jacques van Niekerk</a>, an amazing leader who inspired me to always express myself when my area of expertise was the topic. And many other amazing co-workers, experienced in so many fields. My direct team in the Brazil office with experts minds in PHP, Architecture and UX kept me on my toes and I'm very grateful for working with all these professionals.But <a href="http://twitter.com/#!/ElizabethN">@ElizabethN</a>'s mom had it right from the beginning and I have decided its time to seek new challenges, become a small fish in a bigger pond once again and learn from so many other great minds out there. Brazil has a huge and wonderful PHP community, which I watched and helped grow over these years, but so much is happening outside and I want to immerse myself in these "new waters" to take that next professional step.</p>
<p>As of the end of this year, I will be taking my place at <a href="http://www.webclusive.com/">WEBclusive</a> in Amsterdam, The Netherlands. This is a huge and exciting step for me and my wife, but one that comes after much pondering and at a very good time, moving to outside of Brazil was a old plan of ours and Europe is the right place at the right time. Both a culturally amazing region and also a florishing PHP community with so many conferences and the epicenter of the latest developments in frameworks and the language.</p>
<p>I hope to be able to reach out and talk to so many of my European development buddies and hang out much more often with them and my US friends as well, for sure i will be bothering names like <a href="http://twitter.com/Skoop">@skoop</a>, <a href="http://twitter.com/DragonBe">@dragonbe</a>, <a href="http://twitter.com/lornajane">@lornajane</a>, <a href="http://twitter.com/derickr">@derickr</a>, <a href="http://twitter.com/akrabat">@akrabat </a>and <a href="http://twitter.com/#!/davidcoallier">@davidcoallier</a> much more now, and that's just to name a few.</p>
<p>Thank you SWAT team for these awesome years, and thank you to the Brazilian PHP Community, we have grown so much over the last years, I'm very proud of the work done by so many people, I can only hope this work keeps going and that I can help as much as possible from the outside.</p>
<div><em>Note: Why "back to the old continent"? Little known fact is that i'm a german citizen (by right not birth) and lived there for 3 years in my childhood.</em></div>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2011/11/08/back-to-the-old-continent/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2011. |
	  <a href="http://blog.doh.ms/2011/11/08/back-to-the-old-continent/">Permalink</a> |
	  <a href="http://blog.doh.ms/2011/11/08/back-to-the-old-continent/#comments">5 comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/career-information/" title="View all posts in Career" rel="category tag">Career</a>, <a href="http://blog.doh.ms/category/pessoaloff-topic/" title="View all posts in Pessoal/Off-topic" rel="category tag">Pessoal/Off-topic</a>.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=rpnMSvIUVls:cCbovU3gWXw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=rpnMSvIUVls:cCbovU3gWXw:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=rpnMSvIUVls:cCbovU3gWXw:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=rpnMSvIUVls:cCbovU3gWXw:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=rpnMSvIUVls:cCbovU3gWXw:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=rpnMSvIUVls:cCbovU3gWXw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=rpnMSvIUVls:cCbovU3gWXw:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=rpnMSvIUVls:cCbovU3gWXw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RafaelDohms/en/~4/rpnMSvIUVls" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2011/11/08/back-to-the-old-continent/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://blog.doh.ms/2011/11/08/back-to-the-old-continent/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=back-to-the-old-continent</feedburner:origLink></item>
		<item>
		<title>Filtering objects using annotations</title>
		<link>http://feedproxy.google.com/~r/RafaelDohms/en/~3/68JM5j4xAHM/</link>
		<comments>http://blog.doh.ms/2011/08/11/filtering-objects-using-annotations/#comments</comments>
		<pubDate>Thu, 11 Aug 2011 13:40:00 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[annotations]]></category>
		<category><![CDATA[filtering]]></category>
		<category><![CDATA[security]]></category>

		<guid isPermaLink="false">http://blog.rafaeldohms.com.br/?p=865</guid>
		<description><![CDATA[Filtering with Annotations PHP does not have native Annotations support, however many projects have been using doc blocks to add value and semantics to code, like PHPUnit, Doctrine and Symfony. The Doctrine did a really good job in making available a Annotation parser kit, which allows you to bring the power of annotations into you [...]]]></description>
			<content:encoded><![CDATA[<h1 id="filtering_with_annotations">Filtering with Annotations</h1>
<p>PHP does not have native Annotations support, however many projects have been using doc blocks to add value and semantics to code, like PHPUnit, Doctrine and Symfony. The Doctrine did a really good job in making available a Annotation parser kit, which allows you to bring the power of annotations into you own project. This opens up a few possibilities.</p>
<h2 id="input_validation_and_filtering">Input Validation and Filtering</h2>
<p>Rule #1 of the developer is “Filter input, escape output”. To me treating input has two distinct steps which are very important: Filtering and Validation. Symfony 2 has come out with a very cool Validation library which makes validation possible using annotations. It relies on a set of constraints which can be attached to properties of your object, allowing you to simply pass your objects to a validation service and it will do the rest for you. Like this:</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
// src/Acme/BlogBundle/Entity/Author.php
use Symfony\Component\Validator\Constraints as Assert;

class Author
{
    /**
     * @Assert\NotBlank()
     */
    public $name;
}
?&gt;
</pre>
<pre class="brush: php; title: ; notranslate">
&lt;?php
$author = new Author();

$validator = $this-&gt;get('validator');
$errorList = $validator-&gt;validate($author);
?&gt;
</pre>
<p>This is a very nice and clean way of handling validation, it allows all rules to be centered on the entities, making maintenance easy. A nice complement is that constraints can be added to the class so they use more then one variable, as well as allowing you to create your own contraints.</p>
<p>However the library lacks one thing, which Zend_Filter_Input does very well, <strong>Filtering</strong>. Most data needs to be filtered before going in for validation, and even of Symfony2 offers a Data Transformer, that is not quite what is needed here, so I came out with the only other solution, build one myself.</p>
<h2 id="dmsfilter">DMS\Filter</h2>
<p>I wanted a library with all the power of the filters out there and the advantage of using annotations to provide its interface. So i set about studying the annotations implementation in doctrine and the Symfony2 Validator and came up with my own Filter library. It was designed to be simple and to be used alongside doctrine and symfony validator, so it depends on Doctrine Common.</p>
<p>Its composed of a filter service which is capable of reading “filter rules” from object properties and iterate over them, even private and protected ones, filtering the values. It works based on the object instance which is not cloned, so the object is altered and does not need to be returned nd re-assigned.</p>
<p>To add rules to you properties, just declare the namespace use and go for it, like this:</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php

namespace App\Entity;

//Import Annotations
use DMS\Filter\Rules as Filter;

class User
{

    /**
    * @Filter\StripTags()
    * @Filter\Trim()
    * @Filter\StripNewlines()
    *
    * @var string
    */
    public $name;

    /**
    * @Filter\StripTags()
    * @Filter\Trim()
    * @Filter\StripNewlines()
    *
    * @var string
    */
    public $email;

}
?&gt;
</pre>
<p>To filter your instance, just do it like this:</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
    //Get Doctrine Reader
    $reader = new Annotations\AnnotationReader();
    $reader-&gt;setEnableParsePhpImports(true);

    //Load AnnotationLoader
    $loader = new Mapping\Loader\AnnotationLoader($reader);
    $this-&gt;loader = $loader;

    //Get a MetadataFactory
    $metadataFactory = new Mapping\ClassMetadataFactory($loader);

    //Get a Filter
    $filter = new DMS\Filter\Filter($metadataFactory);

    //Get your Entity
    $user = new App\Entity\User();
    $user-&gt;name = &quot;My &lt;b&gt;name&lt;/b&gt;&quot;;
    $user-&gt;email = &quot; email@mail.com&quot;;

    //Filter you entity
    $filter-&gt;filter($user);

    echo $user-&gt;name; //&quot;My name&quot;
    echo $user-&gt;email; //&quot;email@mail.com&quot;
?&gt;
</pre>
<p>You can also recycle an AnnotationReader already in use by Symfony Validator for example. The AnnotationReader is currently changing in Doctrine Common, but DMS\Filter tries to auto-configure its namespace, I will be keeping an eye on this in the future.</p>
<p>The project is available in two forms, inside the <a href="https://github.com/rdohms/DMS">DMS library on github</a>, or as a <a href="https://github.com/rdohms/DMS-Filter">standalone component, also on github</a> (sub tree split FTW!). It has a limited number of filters, but you can develop your own filters to use or just open up <a href="https://github.com/rdohms/DMS/issues">an issue</a> and i'll create them.</p>
<p>Hope the library is useful and you enjoy it.</p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2011/08/11/filtering-objects-using-annotations/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2011. |
	  <a href="http://blog.doh.ms/2011/08/11/filtering-objects-using-annotations/">Permalink</a> |
	  <a href="http://blog.doh.ms/2011/08/11/filtering-objects-using-annotations/#comments">2 comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/dev/php/" title="View all posts in PHP" rel="category tag">PHP</a>.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=68JM5j4xAHM:esayPXqdxCY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=68JM5j4xAHM:esayPXqdxCY:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=68JM5j4xAHM:esayPXqdxCY:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=68JM5j4xAHM:esayPXqdxCY:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=68JM5j4xAHM:esayPXqdxCY:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=68JM5j4xAHM:esayPXqdxCY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=68JM5j4xAHM:esayPXqdxCY:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=68JM5j4xAHM:esayPXqdxCY:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RafaelDohms/en/~4/68JM5j4xAHM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2011/08/11/filtering-objects-using-annotations/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blog.doh.ms/2011/08/11/filtering-objects-using-annotations/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=filtering-objects-using-annotations</feedburner:origLink></item>
		<item>
		<title>PHP Development in the Cloud by Ivo Jansch and Vito Chin</title>
		<link>http://feedproxy.google.com/~r/RafaelDohms/en/~3/49YAKuLLA_g/</link>
		<comments>http://blog.doh.ms/2011/08/05/php-development-in-the-cloud-by-ivo-jansch-and-vito-chin/#comments</comments>
		<pubDate>Fri, 05 Aug 2011 13:47:56 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[review]]></category>

		<guid isPermaLink="false">http://blog.rafaeldohms.com.br/?p=871</guid>
		<description><![CDATA[Cloud computing is finally reaching a point of maturity and leaving its early “hype” years behind. Ivo and Vito do a very good job of bringing the topic into a PHP developer’s world in a very concise and objective manner, without leaving important platforms and concepts behind. From the top the book sets down the [...]]]></description>
			<content:encoded><![CDATA[<p>Cloud computing is finally reaching a point of maturity and leaving its early “hype” years behind. Ivo and Vito do a very good job of bringing the topic into a PHP developer’s world in a very concise and objective manner, without leaving important platforms and concepts behind.</p>
<p>From the top the book sets down the glossary and explains very clearly what Cloud computing is and where it stands, which is very important if you are to decide wether its the solution for you or not. It also brings the concept into technical view reviewing the differences between a regular hosting environment and a elastic cloud structure. This is very important to architects building new applications that mean to take full advantage of the cloud. Finally the book overviews a few examples and most importantly a few providers and solutions, such as Amazon, Windows Azure and Google App Engine.</p>
<p>The book was a very pleasant read, not thick and not too thin. It helped me greatly as I prepared to give a presentation on Cloud Computing, allowing me to see different points of view as well as compare other technologies i had not had time or chance to try. I recommend this for any application architect who is thinking if the cloud is the right solution, but even if its not on your mind yet. Its very important to know where the cloud fits in so that when given a choice you will know the cloud is an option to be considered.</p>
<p><a href="http://www.phparch.com/books/php-development-in-the-cloud-a-phparchitect-guide/"><img class="alignleft" style="margin-left: 15px; margin-right: 15px;" title="Book Cover" src="http://www.phparch.com/wp-content/themes/phpa/thumb.php?src=http://www.phparch.com/wp-content/uploads/2011/02/PHPCloud-cover-small.jpg&amp;w=260" alt="Book Cover" width="156" height="192" /></a><strong>Title: PHP Development in the Cloud - a php|architect Guide</strong><br />
<strong> By: Ivo Jansch and Vito Chin</strong><br />
Publisher: Blue Parabola</p>
<p>Pages: 172<br />
ISBN: 9780981034522</p>
<p>Buy it: <a href="http://www.phparch.com/books/php-development-in-the-cloud-a-phparchitect-guide/">At php|architect</a></p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2011/08/05/php-development-in-the-cloud-by-ivo-jansch-and-vito-chin/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2011. |
	  <a href="http://blog.doh.ms/2011/08/05/php-development-in-the-cloud-by-ivo-jansch-and-vito-chin/">Permalink</a> |
	  <a href="http://blog.doh.ms/2011/08/05/php-development-in-the-cloud-by-ivo-jansch-and-vito-chin/#comments">2 comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/reviews/book-reviews/" title="View all posts in Books" rel="category tag">Books</a>, <a href="http://blog.doh.ms/category/dev/php/" title="View all posts in PHP" rel="category tag">PHP</a>.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=49YAKuLLA_g:uMlYN9se8iA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=49YAKuLLA_g:uMlYN9se8iA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=49YAKuLLA_g:uMlYN9se8iA:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=49YAKuLLA_g:uMlYN9se8iA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=49YAKuLLA_g:uMlYN9se8iA:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=49YAKuLLA_g:uMlYN9se8iA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=49YAKuLLA_g:uMlYN9se8iA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=49YAKuLLA_g:uMlYN9se8iA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RafaelDohms/en/~4/49YAKuLLA_g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2011/08/05/php-development-in-the-cloud-by-ivo-jansch-and-vito-chin/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blog.doh.ms/2011/08/05/php-development-in-the-cloud-by-ivo-jansch-and-vito-chin/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=php-development-in-the-cloud-by-ivo-jansch-and-vito-chin</feedburner:origLink></item>
		<item>
		<title>php|tek 2011 and what’s trending</title>
		<link>http://feedproxy.google.com/~r/RafaelDohms/en/~3/0j50sNXYNjo/</link>
		<comments>http://blog.doh.ms/2011/06/01/phptek-2011-and-whats-trending/#comments</comments>
		<pubDate>Wed, 01 Jun 2011 17:03:46 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[Conferences]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://blog.rafaeldohms.com.br/?p=841</guid>
		<description><![CDATA[Another edition of php&#124;tek has come and gone and this year some very amazing topics came into view. The conference itself was once again a great experience, great people, incredible speakers, lots of activities and incredible hack-a-thons and unconference sessions. Cloud computing is reaching a level of maturity in the technology market as a whole, [...]]]></description>
			<content:encoded><![CDATA[<p>Another edition of php|tek has come and gone and this year some very amazing topics came into view. The conference itself was once again a great experience, great people, incredible speakers, lots of activities and incredible hack-a-thons and unconference sessions.</p>
<p>Cloud computing is reaching a level of maturity in the technology market as a whole, finally finding its place and purpose and dropping the “silver bullet” tag. This seems to reflect on the language as well and many sessions revolved around using the cloud to complement projects and on how to take advantage of cloud aspects in a PHP architecture, as well as the many cloud offerings available.</p>
<p>Another topic that kept us all busy was Mobile development, which following the incredible rise of the smartphones and the various systems like iOS, Android and WP7 was also present in multiple tags teaching how to architect your app and create solutions that would work for all smartphone users out there.</p>
<p>I was very surprised this year to see a the clear presence of Applications in the event. WordPress, Drupal and sites like joind.in made their presence in various aspects, ranging from talks, to coding sessions and especially to representatives who took their time to talk to the speakers and attendees.</p>
<p>APIs and integration with external tools was also a hot topic. Many sessions described the many tools that can be used to improve your application, like queues, protocols, services and so many more, also how to develop api into your code so that your application can also be used as an external tool in another project.</p>
<p>One topic that i would love to see more and more was also present: Soft skills. This is a very important area to be explored by the community in general, some conferences like <a href="http://daycamp4developers.com/">DayCamp 4 Developers</a> already do a great job of covering them but they also grow in various others. These skills or just plain recommendations are fundamental to new and old developers so they can find new paths and grow in their own careers as they do it.</p>
<p>I must also reserve space for the Hack-a-thon which was a complete surprise and success this year, seeing somewhere around 90 developers hacking into the night or just plain learning from each other was quite a pleasing experience. I myself had a great time explaining the importance and the first steps needed to develop PHPT tests to cover PHP’s source code, its not about how much work is done in these events, but its about planting that very important seed that will keep growing after the event, and I was very glad to see so many reach that stage during the event.</p>
<p>Congratulations to the organizers and to all the speakers for delivering incredible content and for taking all developers under their wing to teach and interact. I had a great time also speaking to everyone about Windows Azure and architecting for the cloud, and I hope everyone at the session had a great time learning, even tough my voice decided to play a hoax on me and make me sound like a game of “fill in the blanks”. If you were at the session I would love to hear your feedback, please do it over at <a href="http://joind.in/talk/view/3417">joind.in</a>, also you may want to see the slides, so please go ahead and see them <a href="http://www.slideshare.net/rdohms/open-a-window-see-the-clouds">here</a> or below.</p>
<div style="width:425px" id="__ss_8102545"> <strong style="display:block;margin:12px 0 4px"><a href="http://www.slideshare.net/rdohms/open-a-window-see-the-clouds" title="Open a window, see the clouds - php|tek 2011">Open a window, see the clouds - php|tek 2011</a></strong> <iframe src="http://www.slideshare.net/slideshow/embed_code/8102545" width="425" height="355" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
<div style="padding:5px 0 12px"> View more <a href="http://www.slideshare.net/">presentations</a> from <a href="http://www.slideshare.net/rdohms">Rafael Dohms</a> </div>
</p></div>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2011/06/01/phptek-2011-and-whats-trending/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2011. |
	  <a href="http://blog.doh.ms/2011/06/01/phptek-2011-and-whats-trending/">Permalink</a> |
	  <a href="http://blog.doh.ms/2011/06/01/phptek-2011-and-whats-trending/#comments">One comment</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/career-information/conferences/" title="View all posts in Conferences" rel="category tag">Conferences</a>, <a href="http://blog.doh.ms/category/dev/php/" title="View all posts in PHP" rel="category tag">PHP</a>.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=0j50sNXYNjo:d1-Rj8KRwYQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=0j50sNXYNjo:d1-Rj8KRwYQ:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=0j50sNXYNjo:d1-Rj8KRwYQ:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=0j50sNXYNjo:d1-Rj8KRwYQ:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=0j50sNXYNjo:d1-Rj8KRwYQ:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=0j50sNXYNjo:d1-Rj8KRwYQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=0j50sNXYNjo:d1-Rj8KRwYQ:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=0j50sNXYNjo:d1-Rj8KRwYQ:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RafaelDohms/en/~4/0j50sNXYNjo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2011/06/01/phptek-2011-and-whats-trending/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blog.doh.ms/2011/06/01/phptek-2011-and-whats-trending/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=phptek-2011-and-whats-trending</feedburner:origLink></item>
		<item>
		<title>Debugging PHPUnit Tests in NetBeans with XDebug</title>
		<link>http://feedproxy.google.com/~r/RafaelDohms/en/~3/PNEE07S4NPQ/</link>
		<comments>http://blog.doh.ms/2011/05/13/debugging-phpunit-tests-in-netbeans-with-xdebug/#comments</comments>
		<pubDate>Fri, 13 May 2011 13:45:49 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[debugging]]></category>
		<category><![CDATA[netbeans]]></category>
		<category><![CDATA[phpunit]]></category>
		<category><![CDATA[tests]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[xdebug]]></category>

		<guid isPermaLink="false">http://blog.rafaeldohms.com.br/?p=827</guid>
		<description><![CDATA[Every now and then you run into this weird situation in your code, where something that was supposed to zig is now zagging and it makes no sense whatsoever. For me this ends up happening in my unit tests since i’m not running everything in the browser everytime and since my tests usually run more [...]]]></description>
			<content:encoded><![CDATA[<p>Every now and then you run into this weird situation in your code, where something that was supposed to zig is now zagging and it makes no sense whatsoever. For me this ends up happening in my unit tests since i’m not running everything in the browser everytime and since my tests usually run more scenarios then a regular browser run, that’s where the weird stuff happens.</p>
<p>So your obvious way out is to add a few var_dumps into the code and try to understand what is happening, if you are doing that: <strong>STOP!</strong></p>
<p>Drop that mouse and step away from your keyboard, you should be debugging not adding code to the mix. So debugging in a browser is a piece of cake in most IDEs like NetBeans and Zend Studio and so forth, but debugging your tests that are running on the command line take a few more cards up your sleeve. So this is how i configured my NetBeans IDE and my PHPUnit tests to communicate and let me debug what happens inside that crazy world.</p>
<h3 id="configure_your_netbeans_debugging_configuration">Configure your NetBeans Debugging configuration</h3>
<p>This is very straight forward, go to <em>Preferences &gt; PHP</em> and set the debug settings, namely the port and a session id. For example: port 9000 and Session ID netbeans-xdebug.</p>
<p style="text-align: center;"><a href="http://blog.rafaeldohms.com.br/wp-content/uploads/Screen-shot-2011-05-04-at-11.36.39-PM.png"></a><a href="http://blog.rafaeldohms.com.br/wp-content/uploads/Screen-shot-2011-05-04-at-11.36.39-PM.png"><img class="aligncenter size-full wp-image-829" title="Netbeans: PHP Debug config" src="http://blog.rafaeldohms.com.br/wp-content/uploads/Screen-shot-2011-05-04-at-11.36.39-PM.png" alt="" width="604" height="260" /></a></p>
<h3 id="tell_xdebug_what_you_want_it_to_do">Tell Xdebug what you want it to do</h3>
<p>This is done by adding a few settings in you php.ini or if you use additional ini files, I recommend you create a xdebug.ini. You need to configure a few things here, we want xdebug to have remote debugging always enabled and we want to configure the port and ide keys we used in netbeans as well as configuring the output to be “dbgp”. This is how it will look in you ini:</p>
<pre class="brush: plain; title: ; notranslate">
xdebug.idekey=netbeans-xdebug
xdebug.remote_enable= On
xdebug.remote_handler=dbgp
xdebug.remote_mode=req
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
</pre>
<h3 id="make_phpunit_send_stuff_to_netbeans">Make PHPUnit send stuff to NetBeans</h3>
<p>So this is enough for you to do URL based debugging, but we want to debug our unit tests to pick up on those weird bugs with a easy to repeat script to lock down on it. For this to work you need to export a xdebug config variable in your local environment, so that XDebug kicks off the debugging based on this command line script. You will need to set XDEBUG_CONFIG to “idekey=netbeans-xdebug”, but setting it everytime is a nuisance, so my approach is to create a phpunit-debug file that can do this for me and allows me to kick off debugging by simply changing the executable. This is the content of this file:</p>
<pre class="brush: bash; title: ; notranslate">
export XDEBUG_CONFIG=&quot;idekey=netbeans-xdebug&quot;;
phpunit $@
</pre>
<h3 id="make_netbeans_start_a_debug_session_and_not_open_a_browser_window">Make NetBeans start a debug session and not open a browser window</h3>
<p>One last thing is needed for things to run smoothly. When you click on debug in Netbeans the usual process is for it to open up a browser window and debug from there, but we don’t want that, so we need to tell it to not open a browser.  This is done by accessing <em>File &gt; Project Properties &gt; Run Configuration</em> and clicking on the “Advanced” button, here you can select “Do no open a browser” and you are set.  <a href="http://blog.rafaeldohms.com.br/wp-content/uploads/Screen-shot-2011-05-05-at-12.02.36-AM.png"><img class="aligncenter size-full wp-image-830" title="NetBeans: Running debug config" src="http://blog.rafaeldohms.com.br/wp-content/uploads/Screen-shot-2011-05-05-at-12.02.36-AM.png" alt="" width="549" height="224" /></a></p>
<h3 id="running_debugging">Running Debugging</h3>
<p>To start a debugging session you will need to follow these steps:</p>
<ol>
<li>Click on “Debug Project” button. Now Netbeans will start waiting for a connection.</li>
<li>Go to command line and run phpunit-debug. Now debugging starts, if you selected “Stop on first line” phpunit file will be opened on your IDE, click play and you are off.</li>
</ol>
<p>There you go. Now you are all set to debug your tests and understand better what is triggering that failure deep down inside your suite.</p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2011/05/13/debugging-phpunit-tests-in-netbeans-with-xdebug/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2011. |
	  <a href="http://blog.doh.ms/2011/05/13/debugging-phpunit-tests-in-netbeans-with-xdebug/">Permalink</a> |
	  <a href="http://blog.doh.ms/2011/05/13/debugging-phpunit-tests-in-netbeans-with-xdebug/#comments">4 comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/dev/php/" title="View all posts in PHP" rel="category tag">PHP</a>, <a href="http://blog.doh.ms/category/dev/tips-and-tricks/" title="View all posts in Tips and Tricks" rel="category tag">Tips and Tricks</a>, <a href="http://blog.doh.ms/category/dev/tools/" title="View all posts in Tools" rel="category tag">Tools</a>.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=PNEE07S4NPQ:OeWPlPCk8qM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=PNEE07S4NPQ:OeWPlPCk8qM:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=PNEE07S4NPQ:OeWPlPCk8qM:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=PNEE07S4NPQ:OeWPlPCk8qM:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=PNEE07S4NPQ:OeWPlPCk8qM:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=PNEE07S4NPQ:OeWPlPCk8qM:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=PNEE07S4NPQ:OeWPlPCk8qM:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=PNEE07S4NPQ:OeWPlPCk8qM:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RafaelDohms/en/~4/PNEE07S4NPQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2011/05/13/debugging-phpunit-tests-in-netbeans-with-xdebug/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://blog.doh.ms/2011/05/13/debugging-phpunit-tests-in-netbeans-with-xdebug/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=debugging-phpunit-tests-in-netbeans-with-xdebug</feedburner:origLink></item>
		<item>
		<title>Book Review: Being Geek by Michael Lopp</title>
		<link>http://feedproxy.google.com/~r/RafaelDohms/en/~3/urfzj6wC0Qw/</link>
		<comments>http://blog.doh.ms/2011/03/24/book-review-being-geek-by-michael-lopp/#comments</comments>
		<pubDate>Thu, 24 Mar 2011 17:00:43 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[Reviews]]></category>

		<guid isPermaLink="false">http://blog.rafaeldohms.com.br/?p=821</guid>
		<description><![CDATA[I was very pleased with Being Geek, the author - Michael Lopp - does a great job of taking us on a tour of the geek’s perspective on life and career. The idea behind the book is to reflect on your career, as it is now and what you want it to be, and its [...]]]></description>
			<content:encoded><![CDATA[<p>I was very pleased with <strong>Being Geek</strong>, the author - <strong>Michael Lopp</strong> - does a great job of taking us on a tour of the geek’s perspective on life and career. The idea behind the book is to reflect on your career, as it is now and what you want it to be, and its a great read for anyone starting on a software development career and even for long time developer who have already walked a big chunk of the road.</p>
<p>The reading was not exactly smooth for me, sometimes i had to stop and remember what the initial topic being talked about was to not loose track, but that might have been more fault of my reading method (bite-size bits at random moments) then the actual author’s. I did like the narrative and the way everything is explained with an example, either from his career or a moment of reflection on your own. This was also interesting because it was very easy to draw parallels from my career to the points described in the book. These moments were for me the best thing i took away from the book, moments to reflect on my own career, its path, current downfalls or surprises and past mistakes or wins.</p>
<p>The chapters on management were an excellent exercise to analyze my own profile in team meetings and think about what i can do better from an outside perspective. Also the various ideas on how to manage your day, ideas and how to make sure you are hitting all essential parts of a day, were very good to have as reference and even inspired some changes to my own strategies. The real fun part of it was actually Michael’s read on “The Geek”, how we think, how we operate and how our significant others should "handle us". It was mind boggling to see myself so well described in some points and it made me feel good to be a geek.</p>
<p>If you are planning a Software Developer career or have already started one, check this book out, it will provide you at the very least with lots of topics to think about on the never ending drama of “leaving one job and starting a new gig”, when to leave, where to go and so forth. But much more you should be able to get a great perspective on other aspects of your career and a feel for a Manager’s position and how they work. Pick it up and check it out.</p>
<p><img class="alignleft" style="margin-left: 10px; margin-right: 10px;" title="Cover" src="http://covers.oreilly.com/images/9780596155414/cat.gif" alt="Being Geek Cover" width="146" height="225" /> <strong>Title: Being Geek </strong><br />
<strong>By: Michael Lopp </strong><br />
Publisher: O’Reilly Media<br />
Print: August 2010<br />
Ebook: July 2010<br />
Pages: 336<br />
Print ISBN:978-0-596-15540-7 | ISBN 10: 0-596-15540-9<br />
Ebook ISBN:978-1-4493-9403-5 | ISBN 10: 1-4493-9403-5</p>
<p>Buy it: <a href="http://www.amazon.com/gp/product/0596155409/ref=as_li_qf_sp_asin_il_tl?ie=UTF8&amp;tag=rafadohm-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=0596155409">On Amazon</a> or <a href="http://www.amazon.com/gp/product/B003XDUCEU/ref=as_li_qf_sp_asin_il_tl?ie=UTF8&amp;tag=rafadohm-20&amp;linkCode=as2&amp;camp=1789&amp;creative=9325&amp;creativeASIN=B003XDUCEU">On the Kindle</a> or <a href="http://oreilly.com/catalog/9780596155414/">On O’Reilly</a></p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2011/03/24/book-review-being-geek-by-michael-lopp/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2011. |
	  <a href="http://blog.doh.ms/2011/03/24/book-review-being-geek-by-michael-lopp/">Permalink</a> |
	  <a href="http://blog.doh.ms/2011/03/24/book-review-being-geek-by-michael-lopp/#comments">No comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/reviews/book-reviews/" title="View all posts in Books" rel="category tag">Books</a>, <a href="http://blog.doh.ms/category/reviews/" title="View all posts in Reviews" rel="category tag">Reviews</a>.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=urfzj6wC0Qw:p1IV9yeFzHM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=urfzj6wC0Qw:p1IV9yeFzHM:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=urfzj6wC0Qw:p1IV9yeFzHM:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=urfzj6wC0Qw:p1IV9yeFzHM:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=urfzj6wC0Qw:p1IV9yeFzHM:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=urfzj6wC0Qw:p1IV9yeFzHM:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=urfzj6wC0Qw:p1IV9yeFzHM:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=urfzj6wC0Qw:p1IV9yeFzHM:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RafaelDohms/en/~4/urfzj6wC0Qw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2011/03/24/book-review-being-geek-by-michael-lopp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.doh.ms/2011/03/24/book-review-being-geek-by-michael-lopp/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=book-review-being-geek-by-michael-lopp</feedburner:origLink></item>
		<item>
		<title>The ideas of March</title>
		<link>http://feedproxy.google.com/~r/RafaelDohms/en/~3/dO6XVWwieNY/</link>
		<comments>http://blog.doh.ms/2011/03/15/the-ideas-of-march/#comments</comments>
		<pubDate>Tue, 15 Mar 2011 15:12:16 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[Career]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[ideasofmarch]]></category>
		<category><![CDATA[professional growth]]></category>

		<guid isPermaLink="false">http://blog.rafaeldohms.com.br/?p=818</guid>
		<description><![CDATA[This year my New Year's resolution was to "write more" just as plain as that, blog more, write articles, maybe even a book can fit in there. Now it seems that resolution is in sync with the rest of the PHP Community and Chris Shifflet has once again caused ripples to roam the community with [...]]]></description>
			<content:encoded><![CDATA[<p>This year my New Year's resolution was to "write more" just as plain as that, blog more, write articles, maybe even a book can fit in there. Now it seems that resolution is in sync with the rest of the PHP Community and <a href="http://twitter.com/#!/shiflett">Chris Shifflet</a> has once again caused ripples to roam the community with his <a href="http://shiflett.org/blog/2011/mar/ideas-of-march">Ideas of March</a> initiative.</p>
<p>This blog for me is a crucial part of my professional self, hence the determination to revive the blog and the website in this year. "Why?", you may ask. Well its very simple, blogs can withstand the test of time, they do not come and go or just vanish from the internet, like tweets do. Tweets are fine to get a message started, but they suck for getting into real discussions and for actual knowledge growth, it works, but its shallow at best, the 140 chars limit will do that to you. But on the blog your limits are gone, google will keep that blogpost relevant for years to come, my first post on the Google Maps API is living proof, still the most visited article here after 4 years.</p>
<p>In a world where saying you are good at something is falling into misuse and disbelief, an active blog can assert to your skills and your career work, even your passions and your motivation. It can do all of that much better then a CV can, it can also provide you with professional projection, throwing your name around until it hits your potential future employer.</p>
<p>Its also all about knowledge. A blog  can spread your knowledge, it can bring you knowledge, in the format of comments, discussions and feedback (as <a href="http://seancoates.com/blogs/ideas-of-march">Sean Coates put it</a>), and it can also help developers who, like me, suffer of cronic forgetfulness. Seriously, its a bitter-sweet feeling to search google for a topic and end up reading your own blogpost from years past.</p>
<p>So why should you blog, not just tweet? in summary:</p>
<ol>
<li>Timeless: Blogposts don't expire</li>
<li>Professional Projection: Get your name out there, show what you do well</li>
<li>Professional Growth: Learn, expand, teach and get feedback</li>
<li>Help yourself: store your knowledge in a searchable place</li>
<li>Details: Blogs allow you to do in-depth articles and discussions</li>
<li>Get evaluation going: start discussions, propose changes, make something happen</li>
</ol>
<p>So i'll take the pledge proposed by Chris (especially since i have already commited to it) and blog more actively this year. You can also check me up on php|arch every now and then (in the future) and in brazil in our PHP Review magazine. Want to watch twitter? please do, i'll always link off from there to these posts.</p>
<p>So don't let this stop here, take the "Ideas of March" challenge yourself.</p>
<p>&nbsp;</p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2011/03/15/the-ideas-of-march/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2011. |
	  <a href="http://blog.doh.ms/2011/03/15/the-ideas-of-march/">Permalink</a> |
	  <a href="http://blog.doh.ms/2011/03/15/the-ideas-of-march/#comments">3 comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/career-information/" title="View all posts in Career" rel="category tag">Career</a>, <a href="http://blog.doh.ms/category/dev/php/" title="View all posts in PHP" rel="category tag">PHP</a>.</p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=dO6XVWwieNY:t5HUQbt1Y3Y:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=dO6XVWwieNY:t5HUQbt1Y3Y:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=dO6XVWwieNY:t5HUQbt1Y3Y:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=dO6XVWwieNY:t5HUQbt1Y3Y:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=dO6XVWwieNY:t5HUQbt1Y3Y:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=dO6XVWwieNY:t5HUQbt1Y3Y:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?i=dO6XVWwieNY:t5HUQbt1Y3Y:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/RafaelDohms/en?a=dO6XVWwieNY:t5HUQbt1Y3Y:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/RafaelDohms/en?d=qj6IDK7rITs" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/RafaelDohms/en/~4/dO6XVWwieNY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2011/03/15/the-ideas-of-march/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://blog.doh.ms/2011/03/15/the-ideas-of-march/#utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=the-ideas-of-march</feedburner:origLink></item>
	</channel>
</rss><!-- Served from: blog.rafaeldohms.com.br @ 2012-02-24 10:42:09 by W3 Total Cache -->

