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

<channel>
	<title>Tecnologia e Educação</title>
	<atom:link href="http://blog.jarley.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://blog.jarley.com</link>
	<description>Blog de Jarley Nóbrega</description>
	<lastBuildDate>Thu, 02 Sep 2010 18:21:10 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>60% Of Apps In Android Market Are Free (Vs. 30% Or Less In Other App Stores)</title>
		<link>http://blog.jarley.com/?p=281</link>
		<comments>http://blog.jarley.com/?p=281#comments</comments>
		<pubDate>Thu, 02 Sep 2010 18:21:10 +0000</pubDate>
		<dc:creator>Jarley Nóbrega</dc:creator>
				<category><![CDATA[Tecnologia]]></category>

		<guid isPermaLink="false">http://blog.jarley.com/?p=281</guid>
		<description><![CDATA[O post abaixo, publicado no TechCrunch, explica parte de minha decisão em trocar o meu velho (e bom) HTC S621 por um Samsung Galaxy rodando Android. A lista de aplicações disponíveis no Android Market é imensa, e a maioria é gratuíta. &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211; App store analytics provider Distimo yesterday published its latest report, once again zooming]]></description>
			<content:encoded><![CDATA[<p>O post abaixo, publicado no <a href="http://techcrunch.com" target="_blank">TechCrunch</a>, explica parte de minha decisão em trocar o meu velho (e bom) HTC S621 por um Samsung Galaxy rodando Android. A lista de aplicações disponíveis no <a href="http://www.android.com/market/" target="_self">Android Market</a> é imensa, e a maioria é gratuíta.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>App store analytics provider <a href="http://www.crunchbase.com/company/distimo">Distimo<img id="snap_com_shot_link_icon" src="http://i.ixnp.com/images/v6.42/t.gif" alt="" /></a> yesterday published its <a href="http://www.distimo.com/report/download-latest">latest report<img id="snap_com_shot_link_icon" src="http://i.ixnp.com/images/v6.42/t.gif" alt="" /></a>, once again zooming in on the pricing of mobile applications across a variety of platforms.</p>
<p>Consistent with its previous findings, Google’s <a href="http://www.android.com/market/#app=com.farproc.wifi.analyzer">Android Market<img id="snap_com_shot_link_icon" src="http://i.ixnp.com/images/v6.42/t.gif" alt="" /></a> has by far the largest share of free applications available compared to other mobile app store, but the gap is also widening.</p>
<p>In July 2010, 60% of all applications on Android Market were free of  charge, representing an increase of 3% since May 2010 when it was <a href="http://techcrunch.com/2010/07/05/distimo-june-2010/">57%</a>.</p>
<p>As you can tell from the graph below, that share is more than double  the share of free apps on other mobile app stores, with the exception of  Palm’s App Catalog (albeit barely).</p>
<p>The share of free applications is smallest on Windows Marketplace for  Mobile (22%), followed by the Apple App Store for iPad (26%) and RIM’s  BlackBerry App World (26%).</p>
<p><a href="http://tctechcrunch.files.wordpress.com/2010/09/distimo_proportion_free_vs_paid-full.png"><img src="http://tctechcrunch.files.wordpress.com/2010/09/distimo_proportion_free_vs_paid.png" alt="" /></a></p>
<p>(click image for full size)</p>
<p>Let’s take a closer look at the prices of paid apps across mobile application stores.</p>
<p>Distimo posits that the average price of the 100 most popular apps in  Android Market and Palm’s App Catalog is higher than the average price  of the entire catalogue of applications.</p>
<p>While the average price of all applications is only 16% higher in the  Apple App Store for iPad than in the App Store for iPhone, the average  price of the 100 most popular applications is nearly three times as high  in the former.</p>
<p>More than 60% of applications are priced below or equal to $2 in the  App Store for iPhone, Android Market, Nokia’s Ovi Store and Palm’s App  Catalog. The proportion of applications priced<br />
below or equal to $2 is much lower in the App Store for iPad and Windows Marketplace for Mobile.</p>
<p>Notably, it seems prices of apps for iOS devices are on the rise. The  proportion of paid applications priced below $1 on the Apple App Store  for iPad and Apple App Store for iPhone has decreased in both in July  2010, from 30% to 25% and from 49% to 45%, respectively.</p>
<p><a href="http://tctechcrunch.files.wordpress.com/2010/09/distimo_proportion_of_applications-full.png"><img src="http://tctechcrunch.files.wordpress.com/2010/09/distimo_proportion_of_applications.png" alt="" /></a></p>
<p>(click image for full size)</p>
<p><a href="http://tctechcrunch.files.wordpress.com/2010/09/distimo_average_prices-full.png"><img src="http://tctechcrunch.files.wordpress.com/2010/09/distimo_average_prices.png" alt="" /></a></p>
<p>(click image for full size)</p>
<div><script src="http://www.crunchbase.com/javascripts/widget.js" type="text/javascript"></script><!-- .cbw{ padding: 1px; border: 1px solid #b6b6b6; margin: .6em 0 .6em 0 !important; clear: both;} .cbw a{ color: #3F87BB !important; border: 0 !important; text-decoration: none !important;} .cbw a:hover{ color: #165d91 !important; border: 0 !important; text-decoration: none !important;} .cbw_header{ font-size: .9em; font-weight: bold; position: relative;} .cbw_header_text{ background: #f4f4f4 !important; padding: 1em 1em 1em 1em !important;} .cbw_header_toggle{ display: block; position: absolute; top: 1em; right: 1em; _right: 3.5em; font-weight: bold; cursor: pointer;} .cbw_header_get{ display: block; position: absolute; top: 1em; right: 7em; _right: 9.5em; font-weight: bold; cursor: pointer;} .cbw_subheader{ padding: .7em .7em .5em .7em !important; border: 0 !important; margin: 0 !important; font-size: 1.2em !important; background: #f4f4f4 !important; font-weight: bold;} .cbw_subcontent{ font-size: 0.95em; line-height: 1.2em !important; margin: .15em 0 .15em 0 !important; padding: .7em !important; background: white !important; border-top: 2px solid #f4f4f4 !important; border-bottom: 2px solid #f9f9f9 !important; overflow: hidden; height: auto;} .cbw_subcontent p{ margin: .45em .15em .45em .15em !important; padding: 0 !important;} .cbw_subcontent_left{ float: right !important; margin: 0 0 .5em .5em !important;} .cbw img{ max-width: 150px !important; max-height: 150px !important; border: 0 !important; padding: 0 !important;} .cbw img:hover, .cbw_subcontent_left a:hover{ border: 0 !important;} .cbw_subcontent_right{ } .cbw_subcontent table{ width: auto !important;} .cbw_subcontent td{ padding: .15em !important; vertical-align: top !important;} .cbw_subcontent .td_left{ width: 40px !important; font-weight: bold !important;} .cbw_footer{ padding: .8em !important; font-size: .9em !important; text-align: right !important; background: #f9f9f9 !important;} .cbw_footer a{ font-weight: bold; } --><!--  .cbw_header_text { display: none; }  --><a href="http://www.crunchbase.com/widget/"></a></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.jarley.com/?feed=rss2&amp;p=281</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Como manter um blog (para estudantes de doutorado)</title>
		<link>http://blog.jarley.com/?p=273</link>
		<comments>http://blog.jarley.com/?p=273#comments</comments>
		<pubDate>Tue, 24 Aug 2010 23:14:14 +0000</pubDate>
		<dc:creator>Jarley Nóbrega</dc:creator>
				<category><![CDATA[Educação]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[Blog Jarley]]></category>

		<guid isPermaLink="false">http://blog.jarley.com/?p=273</guid>
		<description><![CDATA[Para tentar tirar um pouco da poeira do blog, replico aqui o post de Matt Might sobre como manter uma atividade de escrita mesmo fazendo um PhD, trabalhando e cuidando da família. &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212; &#8220;I don&#8217;t have time,&#8221; is the worst excuse not to blog. Yet, I hear it often from fellow academics. My advisor from]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.jarley.com/wp-content/uploads/2010/08/Busy-Guy.gif"><img class="alignleft size-full wp-image-278" title="Busy-Guy" src="http://blog.jarley.com/wp-content/uploads/2010/08/Busy-Guy.gif" alt="" width="339" height="267" /></a>Para tentar tirar um pouco da poeira do blog, replico aqui o post de <a href="http://matt.might.net" target="_blank">Matt Might</a> sobre como manter uma atividade de escrita mesmo fazendo um PhD, trabalhando e cuidando da família.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>&#8220;I don&#8217;t have time,&#8221; is the worst excuse not to blog.</p>
<p>Yet, I hear it often from fellow academics.</p>
<p>My advisor from grad school recently asked, &#8220;How can you write tons of papers and grant proposals, teach your classes, advise students, take care of your family and still have time to blog?  Where does that time come from?&#8221;</p>
<p>Embedded in his question is an assumption that blogging has to take time.</p>
<p>Were this true, I couldn&#8217;t recommend it Ph.D. students or pre-tenure profs.</p>
<p>The secret to low-cost academic blogging is to make blogging a natural byproduct of all the things that academics already do.</p>
<ul>
<li> Doing an interesting lecture?  Put your lecture notes in a blog post.</li>
<li> Writing a detailed email reply?  &#8220;Reply to public&#8221; with a blog post.</li>
<li> Answering the same question a second time?  Put it in a blog post.</li>
<li> Writing interesting code?  Comment a snippet into a post.</li>
<li> Doing something geeky at home? Blog about what you learned.</li>
</ul>
<p>I&#8217;ll save an argument for the benefits of academic blogging for another post.  For now, I&#8217;ll argue that those benefits need not be high to overcome the cost.</p>
<p>Read below for my efficient blogging strategies.</p>
<p><!-- /#content --> <!-- /#content-container --></p>
<div>
<div><script type="text/javascript">// <![CDATA[
google_ad_client = "pub-4400645483943138";
/* Header ad unit */
google_ad_slot = "8276008011";
google_ad_width = 468;
google_ad_height = 60;
// ]]&gt;</script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript">
</script><script src="http://pagead2.googlesyndication.com/pagead/expansion_embed.js"></script><script src="http://googleads.g.doubleclick.net/pagead/test_domain.js"></script><script type="text/javascript">// <![CDATA[
google_protectAndRun("ads_core.google_render_ad", google_handleError, google_render_ad);
// ]]&gt;</script><ins><ins id="google_ads_frame1_anchor"></ins></ins></div>
</div>
<div id="article-content">
<h2>Tip 1: Lecture as post</h2>
<p>A favorite gripe of junior professors is that teaching is a waste of their time.</p>
<p>Excellence in teaching buys no credit for tenure at many universities.</p>
<p>(Of course, putrid teaching can derail a tenure case.)</p>
<p>Teaching is an opportunity to convert lecture notes into blog posts and external evangelism.  The conversion usually polishes a lecture too.</p>
<p>It&#8217;s hard to teach a class without creating lecture notes.</p>
<p>Why not write those lecture notes as a blog post?</p>
<h3>Examples</h3>
<ul>
<li><a href="http://matt.might.net/articles/metacircular-evaluation-and-first-class-run-time-macros/">First-class macros in meta-circular evaluators</a>.</li>
<li><a href="http://matt.might.net/articles/c++-template-meta-programming-with-lambda-calculus/">A lambda-calculus interpreter in C++ templates</a>.</li>
<li><a href="http://matt.might.net/articles/compiling-scheme-to-c/">Compiling Scheme to C</a>.</li>
<li><a href="http://matt.might.net/articles/compiling-to-java/">Compiling Scheme to Java</a>.</li>
</ul>
<h2>Tip 2: &#8220;Reply to public&#8221; as post</h2>
<p>Many of the academics that &#8220;don&#8217;t have time to blog&#8221; seem to have plenty of time to write detailed, well-structured replies and flames over email.</p>
<p>Before pressing send, ask yourself, should this answer be, &#8220;Reply,&#8221; &#8220;Reply to all,&#8221; or &#8220;Reply to public&#8221;?</p>
<p>If you put effort into the reply, don&#8217;t waste it on a lucky few. Share it.</p>
<p>Of course, &#8220;reply to public&#8221; is not limited to email.  A few of my recent posts started on <a href="http://www.quora.com/">Quora</a>.  If I still used Usenet, I bet the same would be true there.</p>
<h3>Examples</h3>
<ul>
<li>This post.</li>
<li><a href="http://matt.might.net/articles/successful-phd-students/">3 qualities of successful Ph.D. students</a>.</li>
<li><a href="http://matt.might.net/articles/apply-yourself-greasemonkey-scripts-to-fix-the-user-interface/">Greasemonkey scripts for Apply Yourself</a>.</li>
<li><a href="http://matt.might.net/articles/why-infinite-or-guaranteed-file-compression-is-impossible/">Why guaranteed file compression is impossible</a>.</li>
</ul>
<h2>Tip 3: Advice as post</h2>
<p>I hear some questions with alarming repetition.  To name a few:</p>
<ul>
<li>What is grad school like?</li>
<li>How many years does a Ph.D. take?</li>
<li>How can I get into grad school?</li>
<li>How should I structure a thesis proposal?</li>
</ul>
<p>Any question asked more than once is a candidate for a blog post.</p>
<h3>Examples</h3>
<ul>
<li> <a href="http://matt.might.net/articles/phd-school-in-pictures/">The illustrated guide to a Ph.D.</a></li>
<li> <a href="http://matt.might.net/articles/how-to-apply-and-get-in-to-graduate-school-in-science-mathematics-engineering-or-computer-science/"> HOWTO: Get into grad school</a>.</li>
<li> <a href="http://matt.might.net/articles/advice-for-phd-thesis-proposals/">A thesis proposal is a contract</a>.</li>
<li><a href="http://matt.might.net/articles/productivity-tips-hints-hacks-tricks-for-grad-students-academics/">Productivity tips for academics</a>.</li>
</ul>
<h2>Tip 4: Vented steam as post</h2>
<p>My colleague, <a href="http://geomblog.blogspot.com/">Suresh Venkatasubramanian</a>, claims that the need to vent steam is his preferred reason for posting.</p>
<p>Blogs are a way to safely let it out, assuming appropriate diplomacy.</p>
<h3>Examples</h3>
<ul>
<li><a href="http://matt.might.net/articles/crapl/">The CRAPL: An academic-strength open-source license</a>.</li>
<li><a href="http://matt.might.net/articles/american-airlines-sucks/">American Airlines sucks</a>.</li>
<li><a href="http://matt.might.net/articles/why-peer-reviewers-should-use-tor/">Why peer reviewers should use Tor</a>.</li>
</ul>
<h2>Tip 5: Blog as code repository</h2>
<p>I used to be great at starting coding projects, but terrible at finishing them.</p>
<p>That changed when I started posting code on my blog.</p>
<p>Posting my code on my blog forces me to do three things:</p>
<ul>
<li>It makes me refactor my code into a clean design.</li>
<li>It makes me comment my code sufficiently.</li>
<li>It makes me search for the most concise solution.</li>
</ul>
<p>I&#8217;ve stopped rewriting code, because I reuse the code I post on my blog.</p>
<p>At the same time, I&#8217;ve picked up months-old projects and continued them.</p>
<p>Now when I write code, I look for ways to turn parts of it into a blog post.</p>
<h3>Examples</h3>
<ul>
<li><a href="http://matt.might.net/articles/implementation-of-regular-expression-matching-in-scheme-with-derivatives/">Matching regular expressions with derivatives</a>.</li>
<li><a href="http://matt.might.net/articles/nonblocking-lexing-toolkit-based-on-regex-derivatives/">A nonblocking lexing toolkit based on derivatives</a>.</li>
<li><a href="http://matt.might.net/articles/pipelined-nonblocking-extensible-web-server-with-coroutines/">A pipelined nonblocking webserver in Scala</a>.</li>
<li><a href="http://matt.might.net/articles/implementation-of-kcfa-and-0cfa/">A reference implementation of k-CFA</a>.</li>
</ul>
<h2>Tip 6: Blog as long-term memory</h2>
<p>There are lots of things I used to know, but forgot.</p>
<p>When I find myself relearning something for the second time, I write a blog post on it, so that I won&#8217;t have to relearn it again.</p>
<p>I often write these up as a HOWTO.</p>
<h3>Examples</h3>
<ul>
<li><a href="http://matt.might.net/articles/how-to-native-iphone-ipad-apps-in-javascript/">HOWTO: Create native iPhone apps in JavaScript</a>.</li>
<li><a href="http://matt.might.net/articles/how-to-make-your-own-cat-5-ethernet-cable/">HOWTO: Make cat 5 network cables</a>.</li>
<li><a href="http://matt.might.net/articles/how-to-rip-a-dvd/">HOWTO: Rip a DVD</a>.</li>
<li><a href="http://matt.might.net/articles/how-to-create-online-catalog-of-books-with-cuecat-barcode-scanner-and-librarything/">HOWTO: Create an online book catalog</a>.</li>
<li><a href="http://matt.might.net/articles/how-to-fix-allergy-mold-pet-hair-problems-with-dehumidifiers-air-purifiers-and-vacuums/">HOWTO: Fix mold and allergy problems</a>.</li>
</ul>
<h2>A few more tips</h2>
<p>I have a few miscellaneous tips for busy academic bloggers:</p>
<ul>
<li>Don&#8217;t blog before a deadline.</li>
<li>Don&#8217;t post too frequently.</li>
<li>Don&#8217;t feel pressure to post with regularity.   Twitter and RSS can alert your readers.</li>
<li>Don&#8217;t spend too much time on a post.  It doesn&#8217;t have to be as polished as something you submit for peer review.    I don&#8217;t even spell-check.</li>
<li>Do store up posts if you have free time.   Release when you&#8217;re busy.</li>
<li>Don&#8217;t submit your own work to social news sites.  If you write well enough, others will do it for you.</li>
<li>Don&#8217;t feel the need to have comments.  I get plenty of constructive,   meaningful interaction with my readers over twitter and email.</li>
</ul>
<h2>Academic blogs I like</h2>
<ul>
<li>Dave Herman&#8217;s <a href="http://calculist.blogspot.com/">The   Little Calculist</a>.  I point this out to my students as a great   example of grad student blogging as note-taking.    (Dave recently finished his Ph.D., but he&#8217;s given this blog to himself and to the community forever.)</li>
<li>John Regehr&#8217;s <a href="http://blog.regehr.org/">Embedded in   Academia</a>.  John&#8217;s posts are much more polished than mine, and   they&#8217;re entertaining, educational and thorough as a result.    His posts are great outreach and service to the field.    He nails the post-tenure associate professor blog perfectly.</li>
<li>Suresh Venkatasubramanian&#8217;s <a href="http://geomblog.blogspot.com/">geomblog</a>.  Suresh&#8217;s blog   is a great mixture of field-specialist and pan-academic writing.   There&#8217;s something worth knowing in every post.</li>
<li><a href="http://www.daniel-lemire.com/blog/">Daniel Lemire&#8217;s blog</a> hits topics ranging from his own research interests to broader academic concerns.    He thoughtfully compresses many of his posts into small, bite-sized form.</li>
<li> <a href="http://rjlipton.wordpress.com/">Dick Lipton&#8217;s blog</a> does a major service to theory of computation, because he spends   time writing engaging, thoughtful and accessible articles.    Dick does the esteemed yet friendly full professor blog well.</li>
</ul>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.jarley.com/?feed=rss2&amp;p=273</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Corrida Farmácia Bompreço</title>
		<link>http://blog.jarley.com/?p=261</link>
		<comments>http://blog.jarley.com/?p=261#comments</comments>
		<pubDate>Sun, 25 Jul 2010 14:06:58 +0000</pubDate>
		<dc:creator>Jarley Nóbrega</dc:creator>
				<category><![CDATA[Cotidiano]]></category>
		<category><![CDATA[Geral]]></category>
		<category><![CDATA[corrida]]></category>

		<guid isPermaLink="false">http://blog.jarley.com/?p=261</guid>
		<description><![CDATA[Acabei de chegar da 3a Corrida da Farmácia Bompreço. Foi uma prova muito boa, incluindo aí o meu desempenho na corrida e a organização da prova. Nesse último ponto os organizadores fizeram um excelente trabalho. As inscrições foram rápidas e eficientes (pagamento com boleto e cartão), a camisa era bonita e confortável e as informações]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.jarley.com/wp-content/uploads/2010/07/recife_11.jpg"><img class="alignleft size-full wp-image-269" title="recife_11" src="http://blog.jarley.com/wp-content/uploads/2010/07/recife_11.jpg" alt="" width="354" height="235" /></a>Acabei de chegar da 3a Corrida da Farmácia Bompreço. Foi uma prova muito boa, incluindo aí o meu desempenho na corrida e a organização da prova. Nesse último ponto os organizadores fizeram um excelente trabalho. As inscrições foram rápidas e eficientes (pagamento com boleto e cartão), a camisa era bonita e confortável e as informações no site da prova eram úteis e fáceis de achar.</p>
<p>Na hora da prova, os corredores foram separados por setores, de acordo com uma pulseira distribuída junto ao kit. Era necessário informar o pace desejado na corrida durante o processo de inscrição. Nota 10 para a iniciativa da Corpore por essa divisão.</p>
<p>Da corrida em si, alguns pontos que foram importantes: o tempo (nublado, com alguns chuviscos) ajudou a reduzir o desgaste dos corredores, o isolamento muito bem feito pela CTTU e os pontos de hidratação dos dois lados da pista, sem tumulto para pegar água. Pela primeira vez corri ouvindo música. Não sei se isso ajudou na concentração, mas o fato é que terminei a prova inteiro e consegui manter o pace da largada e ainda dar um gás no quilômetro final. A trilha sonora teve Nine Inch Nails no aquecimento e Audioslave durante a corrida.</p>
<p>Fiz um tempo líquido (extra-oficial) de 54&#8217;29&#8243;, um dos meus melhores para provas de 10KM. Próxima parada: Corrida Duque de Caxias, em Agosto.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jarley.com/?feed=rss2&amp;p=261</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Who needs math skills?</title>
		<link>http://blog.jarley.com/?p=255</link>
		<comments>http://blog.jarley.com/?p=255#comments</comments>
		<pubDate>Thu, 25 Mar 2010 18:30:43 +0000</pubDate>
		<dc:creator>Jarley Nóbrega</dc:creator>
				<category><![CDATA[Educação]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[ciência da computação]]></category>

		<guid isPermaLink="false">http://blog.jarley.com/?p=255</guid>
		<description><![CDATA[Após quase um mês de aulas no doutorado do CIN, percebi o quanto estou enferrujado em alguns princípios básicos de cálculo. Durante a minha graduação cursei 4 disciplinas de cálculo, 3 de álgebra e 1 de estatística. Mesmo assim, senti uma dificuldade enorme em acompanhar as primeiras aulas &#8211; em grande parte, pelo tempo que]]></description>
			<content:encoded><![CDATA[<p>Após quase um mês de aulas no doutorado do <a href="http://www.cin.ufpe.br" target="_blank">CIN</a>, percebi o quanto estou enferrujado em alguns princípios básicos de cálculo. Durante a minha graduação cursei 4 disciplinas de cálculo, 3 de álgebra e 1 de estatística. Mesmo assim, senti uma dificuldade enorme em acompanhar as primeiras aulas &#8211; em grande parte, pelo tempo que passou entre a graduação e o meu novo contato com o mundo dos números. Mas o principal motivo foi o simples fato que nunca precisei utilizar esses conhecimentos na minha carreira como analista de sistemas. Esse assunto veio à tona quando li o <a href="http://www.skorks.com/2010/03/you-dont-need-math-skills-to-be-a-good-developer-but-you-do-need-them-to-be-a-great-one/" target="_blank">post</a> de Alan Skorkin falando exatamente sobre os problemas que estou enfrentando agora. Vale a pena dar uma olhada.</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-</p>
<h1>You Don’t Need Math Skills To Be A Good Developer But You Do Need Them To Be A Great One</h1>
<p>A little while ago I started thinking about math. You see, I&#8217;ve been writing software for quite a few years now and to be totally honest, I <a href="http://www.robbyonrails.com/articles/2008/01/01/advanced-mathematics-and-programming" target="_blank">haven&#8217;t yet found a need for math</a> in my work. There has been plenty of new stuff I&#8217;ve had to learn/master, languages, frameworks, tools, processes, communication skills and library upon library of stuff to do just about anything you can think of; math hasn&#8217;t been useful for any of it. Of course this is not surprising, the vast majority of the work I&#8217;ve been doing has been <a href="http://en.wikipedia.org/wiki/Create,_read,_update_and_delete" target="_blank">CRUD</a> in one form or another, that&#8217;s the vast majority of the work most developers do in these interweb times of ours. You do consulting – <strong>you mostly build websites</strong>, you work for a large corporates – mostly build websites, you freelance – you mostly build websites. I am well aware that I am generalising quite a bit, but do bear with me, I am going somewhere.</p>
<p>Eventually you get a little tired of it, as I did. Don&#8217;t get me wrong it can be fun and challenging work, providing opportunities to solve problems and interact with interesting people – I am happy to do it during work hours. But the thought of building yet more websites in my personal time has somewhat lost its luster – you begin to look for something more interesting/cool/fun, as – once again – I did. Some people gravitate to front-end technologies and graphical things – visual feedback is seductive – I was not one of them (<em>I love a nice front-end as much as the next guy, but it doesn&#8217;t really excite me</em>), which is why, when I was confronted with some search-related problems I decided to dig a little further. And this brings me back to the start of this story because as soon as I grabbed the first metaphorical shovel-full of search, I ran smack-bang into some math and realized exactly just how far my skills have deteriorated. Unlike riding a bike – you certainly do forget (<em>although I haven&#8217;t ridden a bike in years so maybe you forget that too <img src='http://blog.jarley.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em>).</p>
<h2>Broadening Horizons</h2>
<p>Learning a little bit about search exposed me to all sorts of interesting software-y and computer science-y related things/problems (<em>machine learning, natural language processing, algorithm analysis etc.</em>) and now everywhere I turn I see math and so feel my lack of skills all the more keenly. I&#8217;ve come to the realization that you need a decent level of math skill if you want to do cool and interesting things with computers. Here are some more in addition to the ones I already mentioned – cryptography, games AI, compression, genetic algorithms, 3d graphics etc. You need math to understand the theory behind these fields which you can then apply if you want to write those libraries and tools that I was talking about – rather than<a href="http://agnosticcoder.com/2010/03/is-your-job-title-relevant-mine-is-im-a-software-mechanic/" target="_blank"> just use them</a> (<em>be a <a href="http://en.wikipedia.org/wiki/Producer-consumer_problem" target="_blank">producer rather than just a consumer</a> – to borrow an OS metaphor <img src='http://blog.jarley.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em>). And even if you don&#8217;t want to write any libraries, <strong>it makes for a much more satisfying time building software, when you really understand what makes things tick</strong>, rather than just plugging them in and hoping they do whatever the hell they&#8217;re supposed to.</p>
<p>The majority of developers will tell you that they&#8217;ve <a href="http://4.flowsnake.org/archives/108" target="_blank">never needed math for their work</a> (<em>like I did a couple of paragraphs above <img src='http://blog.jarley.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em>), but after musing on it for a while, I had a though. What we might have here is a <strong>reverse <a href="http://en.wikipedia.org/wiki/Law_of_the_instrument" target="_blank">Maslow&#8217;s hammer</a></strong> problem. You know the one – when you have a hammer, everything looks like a nail. It is a metaphor for using a favourite tool even when it may not be best for the job at hand. Math is our hammer in reverse. We know the hammer exists but don&#8217;t quite know how to use it, so even when we meet a problem where our hammer would be the perfect tool, we never give it serious consideration. The screwdriver was good enough for my granddaddy, it was good enough for my daddy and it is good enough for me, who needs a hammer anyway? The trick with math is – people are afraid of it – even most programmers, you&#8217;d think we wouldn&#8217;t be, but we are. So, we turn our words into a self-fulfilling prophecy. It&#8217;s not that I don&#8217;t need math for my work it&#8217;s just that I don&#8217;t really know it and even if I do, I don&#8217;t know how to apply it. So I get by without it and when you make-do without something for long enough, after a while you don&#8217;t even notice it&#8217;s missing and so need it even less – self-fulfilling prophecy.</p>
<p>Here is some food for thought about something close to all our hearts – learning new skills. As a developer in the corporate world, you strive to be a generalizing specialist (<em><a href="http://www.amazon.com/Passionate-Programmer-Remarkable-Development-Pragmatic/dp/1934356344/ref=pd_sim_b_3" target="_blank">read this book</a> if you don&#8217;t know what I am talking about</em>). You try to be decent at most things and really good at some. But what do you specialize in? Normally people choose a framework or two and a programming language and go with that, which is fine and worthwhile. But consider the fact that frameworks and to a lesser extent languages have a limited shelf life. If you&#8217;re building a career on being a Hibernate, <a href="http://rubyonrails.org/" target="_blank">Rails</a> or Struts expert (<em>the struts guys should really be getting worried now <img src='http://blog.jarley.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em>), <strong>you will have to rinse and repeat all over again in a few years when new frameworks come along to supersede the current flavour of the month</strong>. So is it really the best investment of your time – maybe, but then again maybe not. Math, on the other hand is not going away any time soon. Everything we do in our field is built upon solid mathematical principles at its root (<em>algorithms and data structures being a case in point</em>), so time spent keeping up your math skills is arguably never wasted. And it, once again, comes down to really understanding something rather than just using it by rote – math can help you understand everything you do more deeply, when it comes to computers. Infact, as <a href="http://steve-yegge.blogspot.com/2006/03/math-for-programmers.html" target="_blank">Steve Yegge said</a>, what we do as programmers is so much like math we don&#8217;t even realise it.</p>
<h2>What/Who Makes A Difference</h2>
<p><img title="Knuth" src="http://www.skorks.com/wp-content/uploads/2010/03/knuth.jpg" alt="Knuth" vspace="5" width="170" height="256" align="middle" /></p>
<p>You don&#8217;t believe me, then consider this. Most of the<strong> people who are almost universally respected  in our field as great programmers are also great mathematicians</strong>. I am talking people like <a href="http://en.wikipedia.org/wiki/Donald_Knuth" target="_blank">Donald Knuth</a>, <a href="http://en.wikipedia.org/wiki/Edsger_W._Dijkstra" target="_blank">Edsger W. Dijkstra</a>, <a href="http://en.wikipedia.org/wiki/Noam_Chomsky" target="_blank">Noam Chomsky</a>, <a href="http://norvig.com/" target="_blank">Peter Norvig</a>. But then again these guys weren’t really developers, they were <a href="http://www.skorks.com/2010/03/the-difference-between-a-developer-a-programmer-and-a-computer-scientist/" target="_blank">computer scientists</a>, so it doesn&#8217;t really count right? I guess, but then again, maybe we shouldn&#8217;t really talk until our output in pure lines of code even begins to approach 10% of what these people have produced. Of course, you can be successful and famous without being a <a href="http://en.wikipedia.org/wiki/Boffin" target="_blank">boffin</a>, everyone has heard of <a href="http://en.wikipedia.org/wiki/Hibernate_%28Java%29" target="_blank">Gavin King</a> or <a href="http://www.loudthinking.com/" target="_blank">DHH</a>. That&#8217;s kinda true (<em>although it&#8217;s an arguable point whether or not many people have heard of Gavin or DHH outside their respective niches</em>), but &#8220;heard of&#8221; and universally respected are different things, about as different as creating a framework and significantly advancing the sum-total of human knowledge in your field (<em>don&#8217;t get me wrong, I respect Gavin And David, they&#8217;ve done a hell of a lot more than I have, but that doesn&#8217;t make what I said any less of a fact</em>). How is all of this relevant? I dunno, it probably isn&#8217;t, but I thought I&#8217;d throw it in there anyway since we&#8217;re being introspective and all.</p>
<p>The world is getting filled up with data, there is more and more of it every day and whereas before we had the luxury of working with relatively small sets of it, these days the software we write must operate efficiently with enormous data sets. This is increasingly true even in the corporate world. What this means is that you will be less and less likely to be able to just &#8220;<em>kick things off</em>&#8221; to see how they run, because with the amount of data you&#8217;ll be dealing with it will just grind to a halt unless you&#8217;re smart about it. My prediction is that algorithm analysis will become increasingly important for the lay-programmer, not that it wasn&#8217;t before, but it will become more so. And what do you need to be a decent <a href="http://en.wikipedia.org/wiki/Algorist" target="_blank">algorist</a> – you guessed it, some math skills.</p>
<p>So, what about me? Well, <strong>I&#8217;ve decided to build up/revive my math skills a little bit at a time</strong>, there are still plenty of books to read and code to write, but I will try to devote a little bit of my time to math at least once in a while, because like exercise, a little bit once in a while, is better than nothing (<em>to quote <a href="http://steve-yegge.blogspot.com/2006/03/math-for-programmers.html" target="_blank">Steve Yegge</a> yet again</em>). Of course I have a bit of an ace up my sleeve when it comes to math, which is good for me, but luckily with this blog, we might all benefit (<em>I know you&#8217;re curious, I&#8217;ll <a href="http://feeds.feedburner.com/softwaretechandmore">tell you about it soon</a> <img src='http://blog.jarley.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em>).</p>
<h2>Where Do You See Yourself In 5 Years</h2>
<p><img title="Wakeboarding" src="http://www.skorks.com/wp-content/uploads/2010/03/wakeboarding.jpg" alt="Wakeboarding" vspace="5" width="311" height="207" align="middle" /></p>
<p>So, is all this math gonna be good for anything? It&#8217;s hard to say in advance, I am pretty happy with where I am at right now and so might you be, but it&#8217;s all about potential. End of the day, <strong>if you&#8217;re a developer in the corporate world you don&#8217;t really need any math</strong>. If you&#8217;re happy to go your entire career doing enterprise CRUD apps during work hours and paragliding or wakeboarding (<em>or whatever trendy &#8216;sport&#8217; the geeky in-crowd is into these days</em>) during your off time then by all means, invest some more time into <a href="http://www.springsource.org/documentation" target="_blank">Spring</a> or <a href="http://www.hibernate.org/" target="_blank">Hibernate</a> or Visual Studio or whatever. It will not really limit your potential in that particular niche; you can become extremely valuable – even sought after. But if you strive for diversity in your career and want to have the ability to try your hand at almost any activity that involves code, from <a href="http://en.wikipedia.org/wiki/Information_retrieval" target="_blank">information retrieval</a> to Linux kernel hacking. In short if you want to be a perfect mix of <a href="http://www.skorks.com/2010/03/the-difference-between-a-developer-a-programmer-and-a-computer-scientist/" target="_blank">developer, programmer and computer scientist</a>, you have to make sure you math skills are up to scratch (<em>and hell, you can still go wakeboarding if you really want <img src='http://blog.jarley.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em>). Long story short, if you grok math, there are no doors that are closed to you in the software development field, if you don&#8217;t – it&#8217;s going to be all CRUD (<em>pun intended</em>)!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jarley.com/?feed=rss2&amp;p=255</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>7a Corrida das Pontes</title>
		<link>http://blog.jarley.com/?p=248</link>
		<comments>http://blog.jarley.com/?p=248#comments</comments>
		<pubDate>Sun, 21 Mar 2010 14:36:38 +0000</pubDate>
		<dc:creator>Jarley Nóbrega</dc:creator>
				<category><![CDATA[Geral]]></category>
		<category><![CDATA[corrida]]></category>

		<guid isPermaLink="false">http://blog.jarley.com/?p=248</guid>
		<description><![CDATA[Debaixo de um calor infernal, concluí a sétima edição da Corrida das Pontes. Apesar da impressão de que estava correndo dentro de uma sauna, consegui completar a prova em 1h00&#8217;09&#8243;, um de meus piores tempos nessa prova. Descontando o fator idade, o calor e a falta de treinamento das últimas semanas pesaram muito do meio]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.jarley.com/wp-content/uploads/2010/03/DSC00797.jpg"><img class="alignleft size-full wp-image-250" title="DSC00797" src="http://blog.jarley.com/wp-content/uploads/2010/03/DSC00797.jpg" alt="" width="355" height="473" /></a>Debaixo de um calor infernal, concluí a sétima edição da Corrida das Pontes. Apesar da impressão de que estava correndo dentro de uma sauna, consegui completar a prova em 1h00&#8217;09&#8243;, um de meus piores tempos nessa prova. Descontando o fator idade, o calor e a falta de treinamento das últimas semanas pesaram muito do meio da prova em diante. Os organizadores tiveram a infeliz idéia de fazer a prova em conjunto com a comemoração do aniversário de Recife, em pleno fim de verão. A corrida era realizada normalmente em Junho.</p>
<p>Da corrida em si, nada a reclamar da organização, muito bem isolada pela CTTU e PM-PE. Os pontos de hidratação a cada 2 Km e o kit da prova foram os pontos altos da organização.</p>
<p>Próxima parada: Corrida do Bompreço, em Maio.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jarley.com/?feed=rss2&amp;p=248</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>O Adeus a Glauco</title>
		<link>http://blog.jarley.com/?p=244</link>
		<comments>http://blog.jarley.com/?p=244#comments</comments>
		<pubDate>Fri, 12 Mar 2010 22:17:49 +0000</pubDate>
		<dc:creator>Jarley Nóbrega</dc:creator>
				<category><![CDATA[Cotidiano]]></category>
		<category><![CDATA[quadrinhos]]></category>

		<guid isPermaLink="false">http://blog.jarley.com/?p=244</guid>
		<description><![CDATA[Fiquei muito triste com a notícia da morte de Glauco, um dos meus cartunistas favoritos. As tiras dele fazem parte da série &#8220;coisas que moldaram a minha personalidade&#8221;. Comecei a colecionar revistas em quadrinhos quando ainda era moleque, e a partir de uma certa idade, passei a consumir apenas o melhor do &#8220;udigrudi&#8221; brasileiro. Tenho]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.jarley.com/wp-content/uploads/2010/03/Glauco_Geraldao.jpg"><img class="size-full wp-image-245 alignright" title="Glauco_Geraldao" src="http://blog.jarley.com/wp-content/uploads/2010/03/Glauco_Geraldao.jpg" alt="" width="206" height="270" /></a>Fiquei muito triste com a notícia da morte de Glauco, um dos meus cartunistas favoritos.</p>
<p>As tiras dele fazem parte da série &#8220;coisas que moldaram a minha personalidade&#8221;. Comecei a colecionar revistas em quadrinhos quando ainda era moleque, e a partir de uma certa idade, passei a consumir apenas o melhor do &#8220;udigrudi&#8221; brasileiro. Tenho em casa os originais dos primeiros números do Chiclete com Banana (Angeli), Níquel Náusea (Fernando Gonsales), Piratas do Tietê (Laerte) e Geraldão (Glauco). Para falar a verdade, ainda tenho os 10 ou 12 exemplares originais da <a href="http://www.universohq.com/quadrinhos/museu_circo.cfm" target="_blank">Circo</a>, a revista onde eles publicaram algumas tiras memoráveis e onde tive meu primeiro contato com o melhor do quadrinho brasileiro. Se algum dia alguém quiser saber como era o meu estado de espírito na época, basta ver <a href="http://www2.uol.com.br/laerte/personagens/palhacos/" target="_blank">A Noite dos Palhaços Mudos</a> de Larte, publicada nos Piratas em 94 (na minha opinião, a melhor estória em quadrinhos já feita no Brasil).</p>
<p>Descanse em paz, Glauquito!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jarley.com/?feed=rss2&amp;p=244</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NoSQL: O fim dos bancos de dados relacionais?</title>
		<link>http://blog.jarley.com/?p=241</link>
		<comments>http://blog.jarley.com/?p=241#comments</comments>
		<pubDate>Fri, 12 Mar 2010 19:08:00 +0000</pubDate>
		<dc:creator>Jarley Nóbrega</dc:creator>
				<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[banco de dados]]></category>
		<category><![CDATA[ciência da computação]]></category>

		<guid isPermaLink="false">http://blog.jarley.com/?p=241</guid>
		<description><![CDATA[O Digg é mais um grande nome da Web 2.0 que acaba de migrar os seus (gigantescos) conjuntos de dados do mundo relacional para o modelo &#8220;pós-relacional&#8221;, esse último conhecido como NoSQL. Eles se juntaram à empresas como Google, Amazon, e-Bay, LinkedIn, Twitter e Facebook, com o objetivo de prover níveis de performance mais adequados]]></description>
			<content:encoded><![CDATA[<p>O <a href="http://www.digg.com" target="_blank">Digg</a> é mais um grande nome da Web 2.0 que <a href="http://about.digg.com/node/564" target="_blank">acaba de migrar</a> os seus (gigantescos) conjuntos de dados do mundo <a href="http://en.wikipedia.org/wiki/Relational_model" target="_blank">relacional</a> para o modelo &#8220;pós-relacional&#8221;, esse último conhecido como <a href="http://en.wikipedia.org/wiki/Nosql" target="_blank">NoSQL</a>. Eles se juntaram à empresas como Google, Amazon, e-Bay, LinkedIn, Twitter e Facebook, com o objetivo de prover níveis de performance mais adequados para as consultas realizadas em bases de dados monstruosas, típicas de aplicações da Web 2.0.  Para ter idéia do problema, imagine uma consulta na base de 2 PB (dois Petabytes) do e-Bay sendo feita online por um conjunto de centenas ou milhares de usuários simultaneamente. Imagine agora fazer um<a href="http://en.wikipedia.org/wiki/Join_%28SQL%29" target="_blank"> join</a> com essa quantidade toda de linhas em tabelas de um banco relacional.</p>
<p>A estratégia do Digg está descrita em dois posts  no blog do serviço. <a href="http://about.digg.com/blog/looking-future-cassandra" target="_blank">O primeiro</a> fala  sobre as dificuldades de escalabilidade da infraestrutura de banco de dados, baseada em uma solução mestre-escravo particionada um servidor MySQL. O texto mostra um exemplo de um a consulta com join que levava 14 segundos para ser completada. Após a migração para um datastore não-relacional, baseado no modelo distribuído do <a href="http://incubator.apache.org/cassandra/" target="_blank">Cassandra</a>, a mesma consulta pôde ser realizada em menos de um segundo. <a href="http://about.digg.com/node/564" target="_blank">O segundo</a> texto fala sobre a migração completa dos principais serviços do Digg usando o <a href="http://incubator.apache.org/cassandra/" target="_blank">Cassandra</a> e ainda lista as principais contribuições da equipe de desenvolvimento para o projeto.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jarley.com/?feed=rss2&amp;p=241</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>O Futuro de Java</title>
		<link>http://blog.jarley.com/?p=236</link>
		<comments>http://blog.jarley.com/?p=236#comments</comments>
		<pubDate>Tue, 09 Mar 2010 23:22:44 +0000</pubDate>
		<dc:creator>Jarley Nóbrega</dc:creator>
				<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.jarley.com/?p=236</guid>
		<description><![CDATA[Interessante post de Eric Bruno sobre o futuro de Java como plataforma e linguagem de programação. O post original pode ser visto aqui. Um dado curioso extraído do texto é sobre a quantidade de linguagens dinâmicas que atualmente utilizam a JVM para rodar. A lista inclui Rexx, Ruby, JavaScript, Python, PHP, Groovy, Clojure e Scala.A]]></description>
			<content:encoded><![CDATA[<p>Interessante post de Eric Bruno sobre o futuro de Java como plataforma e linguagem de programação. O post original pode ser visto<a href="http://www.drdobbs.com/java/223101669?cid=RSSfeed_DDJ_All" target="_blank"> aqui</a>. Um dado curioso extraído do texto é sobre a quantidade de linguagens dinâmicas que atualmente utilizam a JVM para rodar. A lista inclui <a href="www.rexxinfo.org" target="_blank">Rexx</a>, <a href="www.ruby-lang.org/" target="_blank">Ruby</a>, <a href="http://www.mozilla.org/js/" target="_blank">JavaScript</a>, <a href="www.python.org" target="_blank">Python</a>, <a href="www.php.net" target="_blank">PHP</a>, <a href="http://groovy.codehaus.org" target="_blank">Groovy</a>, <a href="http://clojure.org" target="_blank">Clojure</a> e <a href="www.scala-lang.org" target="_blank">Scala</a>.A justificativa para esse movimento é a melhora sensível na execução das aplicações através de recursos como os compiladores Just-In-Time da plataforma.</p>
<p>Apesar de muita gente nos últimos meses ter começado a fuçar outras linguagens em substituição a Java (eu me incluo nesse meio), a linguagem ainda é a mais utilizada pelos desenvolvedores, com mais de nove milhões deles construindo aplicações para as mais variadas plataformas e dispositivos. Um fato que assustou a comunidade Java foi a recente compra da Sun pela Oracle e as incertezas no futuro da plataforma geradas pela aquisição. Os caras da Oracle se comprometeram a manter o <a href="http://jcp.org/en/home/index" target="_blank">Java Community Process</a> como o fórum de discussão e evolução da plataforma e adiantaram ainda que a nova versão (chamada provisoriamente de Java 7) trará algumas mudanças significativas, incluindo a modularização da JVM, o suporte nativo à outras linguagens e melhorias no suporte ao processamento com vários núcleos. A integração da JVM com o <a href="http://www.oracle.com/technology/products/jrockit/index.html" target="_blank">JRockit</a> da BEA levará a criação de um novo mecanismo de <a href="http://pt.wikipedia.org/wiki/Coletor_de_lixo" target="_blank">garbage collection</a>, trazendo alguns benefícios adicionais de performance para as aplicações.</p>
<p>Eric também prevê que o sofrimento atual dos desenvolvedores de aplicações para web na criação de interfaces com o usuário, deverá  ser amenizado quando ocorrer a evolução natural das novas versões de <a href="http://www.sun.com/software/javafx/" target="_blank">JavaFX</a>. Confesso que não me animei muito em estudar essa nova API, e atualmente estou estudando e desenvolvendo uma pequena aplicação com o <a href="http://vaadin.com" target="_blank">Vaadin</a>, um framework criado como uma extensão dos componentes de <a href="http://code.google.com/webtoolkit" target="_blank">GWT</a>. Assim que a aplicação entrar no ar, eu divulgarei a URL para vocês acessarem.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jarley.com/?feed=rss2&amp;p=236</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Os 25 erros de programação mais perigosos</title>
		<link>http://blog.jarley.com/?p=231</link>
		<comments>http://blog.jarley.com/?p=231#comments</comments>
		<pubDate>Fri, 19 Feb 2010 13:50:42 +0000</pubDate>
		<dc:creator>Jarley Nóbrega</dc:creator>
				<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[segurança]]></category>

		<guid isPermaLink="false">http://blog.jarley.com/?p=231</guid>
		<description><![CDATA[Na minha jornada para estudar outras linguagens de programação (para sair um pouco do mundo de Java), comecei a estudar os capítulos relacionados à segurança em Scala e Ruby on Rails. Para a primeira, eu recomendo uma lida no capítulo 3 do livro &#8220;The Definitive Guide to Lift: A Scala-based Web Framework&#8220;, voltado para construção]]></description>
			<content:encoded><![CDATA[<p>Na minha jornada para estudar outras linguagens de programação (para sair um pouco do mundo de Java), comecei a estudar os capítulos relacionados à segurança em Scala e Ruby on Rails. Para a primeira, eu recomendo uma lida no capítulo 3 do livro &#8220;<a href="http://www.amazon.com/Definitive-Guide-Lift-Scala-based-Framework/dp/1430224215" target="_blank">The Definitive Guide to Lift: A Scala-based Web Framework</a>&#8220;, voltado para construção de aplicações web usando Scala e o framework Lift. Para a segunda existe um livro inteiro dedicado ao assunto: &#8220;<a href="http://www.amazon.com/Security-Rails-Ben-Poweski/dp/1934356484" target="_blank">Security on Rails</a>&#8220;. Mas antes de ler esses capítulos, me chamou atenção o artigo publicado pela <a href="http://cwe.mitre.org/" target="_blank">Common Weakness Enumeration</a> intutulado &#8220;2010 CWE/SANS Top 25 Most Dangerous Programming Errors&#8221;. Esse trabalho mostra um resumo muito bem estruturado dos principais erros de programação que tornam vulnerável uma aplicação web. A leitura do artigo é mais rápida que um livro inteiro sobre segurança e pode ser usada com um check-list para sua aplicação.</p>
<p>O artigo completo pode ser visto <a href="http://cwe.mitre.org/top25/" target="_blank">aqui</a>. Vale a pena dar uma olhada, independente da linguagem de programação que você esteja usando.</p>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px;">
<h2>2010 CWE/SANS Top 25 Most Dangerous Programming Errors</h2>
</div>
]]></content:encoded>
			<wfw:commentRss>http://blog.jarley.com/?feed=rss2&amp;p=231</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>O Melhor e o Pior da Década</title>
		<link>http://blog.jarley.com/?p=217</link>
		<comments>http://blog.jarley.com/?p=217#comments</comments>
		<pubDate>Mon, 25 Jan 2010 20:34:19 +0000</pubDate>
		<dc:creator>Jarley Nóbrega</dc:creator>
				<category><![CDATA[Tecnologia]]></category>

		<guid isPermaLink="false">http://blog.jarley.com/?p=217</guid>
		<description><![CDATA[Eu recebo uma quantidade muito grande de informação todos os dias, normalmente via email, feeds RSS, posts no Twitter e Facebook, além dos sites de notícias que costumo visitar com alguma frequência. Filtrar tudo isso consome uma parcela considerável de tempo, apesar de ter aprendido a separar no olho o que é lixo e o]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft" src="http://thumbs.dreamstime.com/thumb_239/12034194249xsuA6.jpg" alt="" width="180" height="183" />Eu recebo uma quantidade muito grande de informação todos os dias, normalmente via email, feeds RSS, posts no <a href="http://twitter.com" target="_blank">Twitter</a> e <a href="http://www.facebook.com" target="_blank">Facebook</a>, além dos sites de notícias que costumo visitar com alguma frequência. Filtrar tudo isso consome uma parcela considerável de tempo, apesar de ter aprendido a separar no olho o que é lixo e o que é informação relevante. Uma das minhas resoluções para 2010 foi tentar manter esse blog o mais atualizado possível, com a missão de publicar dois ou três posts por semana. Essa tarefa é pouco complicada em função das várias atividades que exerço, ainda mais com o início do doutorado do <a href="http://www.cin.ufpe.br" target="_blank">CIN</a> previsto para Março. Mesmo assim, comecei a separar algumas coisas para publicar aqui, começando com alguns artigos e posts de outros blogs.</p>
<p>Para iniciar essa série, dei uma olhada no post de <a href="http://radar.oreilly.com/jamest" target="_blank">James Turner</a>, publicado final do ano passado no <a href="http://radar.oreilly.com/" target="_blank">O&#8217;Reilly Radar</a>, com uma lista das melhores e piores coisas que apareceram em TI ao longo dessa última década. A lista de Turner incluía entre os avanços uma série de tecnologias bem consolidadas. Para entender o porquê da lista, basta imaginar como vivíamos sem essas tecnologias em 2000 e como elas estão onipresentes em nossas vidas agora. Segue a lista das melhores:</p>
<ul>
<li><strong>AJAX</strong>: possibilitou uma melhoria sensível na experiência do usuário e em questões relativas à usabilidade das aplicações voltadas para Web 2.0. Sem ela, provavelmente não teríamos algo como Gmail, Orkut, Twitter, Digg, entre um monte de outras aplicações &#8220;user-centric&#8221;.</li>
<li><strong>Twitter</strong>: na visão de Turner, a verdadeira essência do que ele chamou de &#8220;web logging&#8221;. Mas ele alerta que os maiores benefícios do uso do Twitter ocorrem quando combinado com outras aplicações em forma de <em>marshups</em>.</li>
<li><strong>WiFi ubíqua</strong>: essa eu concordo em grau, gênero e número com ele. Na visão de Turner, basta imaginar como nos conectávamos à internet no começo da década e como o fazemos agora. É cada vez mais comum (talvez nem tanto aqui no Brasil), permanecer o tempo todo conectado em restaurantes, aeroportos, shoppings e mais um monte de outros lugares.</li>
<li><strong>Smartphones</strong>: imagine o seu telefone em 2000. Imagine-o hoje. A inclusão de itens como câmeras digitais, acesso à redes sem fio e 3G, aplicativos, jogos, entre outros, mudou o conceito do que conhecíamos como um telefone celular. E eles ainda continuam fazendo ligações para outros celulares <img src='http://blog.jarley.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> .</li>
<li><strong>A cultura do &#8220;Do It Yourself&#8221;</strong>: hoje em dia é fácil ter a sua própria estação de TV (veja <a href="http://www.justin.tv" target="_blank">Justin.tv</a>, por exemplo), o seu próprio jornal (esse blog é um exemplo <img src='http://blog.jarley.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> ), a sua própria estação de rádio (veja a <a href="http://www.last.fm" target="_blank">Last.fm</a>). Uma das coisas mais interessantes que eu vi recentemente é a possibilidade de publicar o seu próprio livro (em papel e PDF) completamente de graça. Dê uma olhada no site da <a href="http://www.lap-publishing.com/" target="_blank">Lambert Academic Publishing</a> e veja como publicar a sua dissertação ou tese na faixa.</li>
<li><strong>Popularização do Open Source</strong>: você está lendo esse blog através de uma infraestrutura de software 100% open source. Grandes corporações mantém servidores, aplicações e um mundo de tecnologia por trás disso, todos baseados em software onde o código-fonte está disponível para qualquer um alterar e testar. Como Turner diz em seu post, &#8220;se até a Microsoft está lançando aplicações open source&#8230;&#8221;, imagine que essa próxima década será a consolidação do movimento OSS (Open Source Software).</li>
<li><strong>Evolução do hardware</strong>: imagine acessar a internet usando um modem de 56 Kbps, em uma máquina com 20 MB de disco, 640 KB de RAM e um processador com clock de 2 Mhz. Pense no iPhone que você tem no bolso e entenda porque a evolução do hardware na última década não desmentiu a <a href="http://en.wikipedia.org/wiki/Moore%27s_law" target="_blank">Lei de Moore</a>.</li>
</ul>
<p>Em seu post, Turner também lista uma série de decepções e falácias do mundo tecnologia:</p>
<ul>
<li><strong>SOAP</strong>: só quem precisou configurar um arquivo <a href="http://www.w3.org/TR/wsdl" target="_blank">WSDL</a> para um <em>web service</em> sabe o sofrimento que é utilizar tecnologias baseadas em SOAP.</li>
<li><strong>A guerra de propriedade intelectual</strong>: aqui no Brasil a onda de processos em cima dos usuários que baixam conteúdo protegido por direitos autorais ainda não chegou com força. Mas lá fora tem gente indo para cadeia por fazer download de músicas e filmes. Ainda bem que existem iniciativas como as do <a href="http://www.radiohead.com/" target="_blank">Radiohead</a>, <a href="http://www.nin.com/" target="_blank">Nine Inch Nails</a>, <a href="http://www.csshurts.com/" target="_blank">CSS</a>, e um monte de gente boa que distribui o seu trabalho de graça na Web.</li>
<li><strong>O culto ao Scrum</strong>: Apesar de muita gente achar que as metodologias ágeis são a salvação da engenharia de software, só com muito suor e disciplina se consegue praticar tudo o que o <a href="http://www.scrumalliance.org/" target="_blank">Scrum</a> prega. No ano passado, tirei a minha certificação <strong>Scrum Master</strong>, mas admito que existem várias barreiras culturais que impedem a adoção das práticas &#8220;puras&#8221; do Scrum. Mesmo assim, sou adepto de algumas coisas que <a href="http://amagno.blogspot.com" target="_blank">Alexandre Magno</a> chama de &#8220;Scrum, but&#8230;&#8221;. Em resumo, acho Scrum fantástico, mas sem extremismos.</li>
<li><strong>O fim dos fins de semana</strong>: TI é uma área com um nível de <a href="http://computerworld.uol.com.br/gestao/2006/05/26/idgnoticia.2006-05-26.3429630181/" target="_blank">stress alto</a> em relação à outras profissões. Todas as maravilhas citadas por Turner têm um efeito colateral quando colocadas em conjunto. A nossa casa passou a ser uma extensão do escritório. Estamos conectados o tempo todo e isso implica em muito trabalho para fazer nos fins de semana. Como se já não bastasse a pressão enorme para entregar software no prazo, funcionando e com alto grau de reuso&#8230;</li>
</ul>
<p>O artigo completo pode ser visto <a href="http://radar.oreilly.com/2009/12/the-best-and-the-worst-tech-of.html?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A+oreilly%2Fnews+%28O%27Reilly+News%29" target="_blank">aqui</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.jarley.com/?feed=rss2&amp;p=217</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
