<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5672026603543907765</id><updated>2012-01-04T17:10:33.108-08:00</updated><category term='bit'/><category term='postgresql'/><category term='so'/><category term='technology should try to achieve xml suck'/><category term='3d'/><category term='interesting'/><category term='ram'/><category term='stuff'/><category term='dump'/><category term='rdbms'/><category term='plano'/><category term='psql'/><category term='exceptions'/><category term='commands'/><category term='css'/><category term='tips'/><category term='linux linus open source free'/><category term='script'/><category term='rico'/><category term='windows'/><category term='file'/><category term='database'/><category term='backup'/><category term='gb'/><category term='operating system'/><category term='linux'/><category term='tech'/><category term='java'/><category term='mysql'/><category term='se'/><category term='effect'/><category term='trigger'/><category term='2010'/><category term='arquitecture'/><category term='join-k'/><category term='bash'/><category term='margin'/><category term='pl/pgsql'/><category term='um'/><category term='como'/><category term='round1a'/><category term='negative'/><category term='sql'/><category term='unix'/><category term='milionário'/><category term='things'/><category term='errors'/><category term='code jam'/><category term='tornar'/><category term='ubuntu'/><category term='distribution'/><category term='google'/><category term='db'/><category term='problem'/><title type='text'>Anime World</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>34</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-1267612888451005339</id><published>2012-01-04T17:04:00.000-08:00</published><updated>2012-01-04T17:10:33.124-08:00</updated><title type='text'>facebook apis test</title><content type='html'>&lt;script src="http://connect.facebook.net/en_US/all.js "&gt;&lt;/script&gt;&lt;br /&gt;&lt;br /&gt;&lt;script&gt; &lt;br /&gt;     function displayUser(user) {&lt;br /&gt;       var userName = document.getElementById('userName');&lt;br /&gt;       var greetingText = document.createTextNode('Greetings, '&lt;br /&gt;         + user.name + '.');&lt;br /&gt;   userName.appendChild(greetingText);&lt;br /&gt;     }&lt;br /&gt;&lt;br /&gt;     var appID = "321065164593578";&lt;br /&gt;     if (window.location.hash.length == 0) {&lt;br /&gt;       var path = 'https://www.facebook.com/dialog/oauth?';&lt;br /&gt;   var queryParams = ['client_id=' + appID,&lt;br /&gt;     'redirect_uri=' + window.location,&lt;br /&gt;     'response_type=token'];&lt;br /&gt;   var query = queryParams.join('&amp;');&lt;br /&gt;   var url = path + query;&lt;br /&gt;   window.open(url);&lt;br /&gt;     } else {&lt;br /&gt;       var accessToken = window.location.hash.substring(1);&lt;br /&gt;       var path = "https://graph.facebook.com/me?";&lt;br /&gt;   var queryParams = [accessToken, 'callback=displayUser'];&lt;br /&gt;   var query = queryParams.join('&amp;');&lt;br /&gt;   var url = path + query;&lt;br /&gt;&lt;br /&gt;   // use jsonp to call the graph&lt;br /&gt;       var script = document.createElement('script');&lt;br /&gt;       script.src = url;&lt;br /&gt;       document.body.appendChild(script);        &lt;br /&gt;     }&lt;br /&gt;   &lt;/script&gt; &lt;br /&gt;   &lt;p id="userName"&gt;:(&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;script&gt;&lt;br /&gt;  FB.init({&lt;br /&gt;    appId  : '321065164593578', //This is our application ID&lt;br /&gt;    status : true, // This is if you want to get login status&lt;br /&gt;    cookie : true, // enable cookies to allow the server to access the session&lt;br /&gt;    xfbml  : true  // In this way the fb:login-button will be parsed by the Javascript SDK&lt;br /&gt;  });&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;div id="fb-root"&gt;&lt;/div&gt;&lt;br /&gt;&lt;fb:login-button&gt;Login with Facebook&lt;/fb:login-button&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-1267612888451005339?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/1267612888451005339/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=1267612888451005339' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/1267612888451005339'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/1267612888451005339'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2012/01/facebook-apis-test.html' title='facebook apis test'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-1499842387891003390</id><published>2011-12-18T05:36:00.000-08:00</published><updated>2011-12-18T06:36:36.420-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='round1a'/><category scheme='http://www.blogger.com/atom/ns#' term='code jam'/><category scheme='http://www.blogger.com/atom/ns#' term='problem'/><category scheme='http://www.blogger.com/atom/ns#' term='2010'/><category scheme='http://www.blogger.com/atom/ns#' term='join-k'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Google Code jam Round1A 2010 Rotate Join-k game</title><content type='html'>&lt;span style="font-weight:bold;"&gt;My solution. =)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/codejam/contest/dashboard?c=544101#s=p0"&gt;http://code.google.com/codejam/contest/dashboard?c=544101#s=p0&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;import java.util.Scanner;&lt;br /&gt;import java.io.File;&lt;br /&gt;import java.io.PrintWriter;&lt;br /&gt;import java.util.List;&lt;br /&gt;import java.util.ArrayList;&lt;br /&gt;&lt;br /&gt;public class JoinK&lt;br /&gt;{&lt;br /&gt;static Scanner in;&lt;br /&gt;static PrintWriter out;&lt;br /&gt;&lt;br /&gt;static boolean isBlue, isRed;&lt;br /&gt;static int countRed, countBlue, k;&lt;br /&gt;&lt;br /&gt;public static void main(String[] args) throws Exception&lt;br /&gt;{&lt;br /&gt; in = new Scanner(new File("input-sample.in"));&lt;br /&gt; out = new PrintWriter(new File("output.txt")); &lt;br /&gt;&lt;br /&gt; int t, n, m;&lt;br /&gt;&lt;br /&gt; t = in.nextInt(); in.nextLine();&lt;br /&gt; for(int i = 1; i &amp;lt;= t; i++)   {    n = in.nextInt();    k = in.nextInt();    in.nextLine();    char[][] lines = new char[n][n];    for(int j = 0; j &amp;lt; n; j++) {     char[] line = in.nextLine().toCharArray();     for(int z = 0; z &amp;lt; n; z++) {      lines[j][z] = line[z];          }    }           lines = rotate90degrees(lines);       System.out.println("-----------ROTATE---------");    for(int z = 0; z &amp;lt; lines.length; z++) System.out.println(lines[z]);    lines = doGravity(lines);    System.out.println("-------------GRAVITY--------------");    for(int z = 0; z &amp;lt; lines.length; z++) System.out.println(lines[z]);           out.printf("Case #%d: %s\n", i, checkWinner(lines));   }      in.close();   out.close();  }    /**  * First column becomes the first row  * from bottom to top.  */  static char[][] rotate90degrees(char[][] lines)  {   int l = lines.length;   char[][] newLines = new char[l][l];   for(int i = 0, c = 0; i &amp;lt; l; i++, c++)   {    for(int j = 0, r = l-1; j &amp;lt; l; j++, r--)    {     newLines[i][j] = lines[r][c];    }     }     return newLines;  }    static char[][] doGravity(char[][] lines)  {   for(int c = 0; c &amp;lt; lines.length; c++)   {    for(int r = lines.length-1; r &amp;gt; -1; r--)&lt;br /&gt;  {&lt;br /&gt;   int x = r;&lt;br /&gt;   while(lines[r][c] == '.' &amp;amp;&amp;amp; x &amp;gt; 0) {&lt;br /&gt;    lines[r][c] = lines[--x][c];&lt;br /&gt;    lines[x][c] = '.';&lt;br /&gt;   }&lt;br /&gt;  }  &lt;br /&gt; }&lt;br /&gt; return lines;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;* It's the same check as tic-tac-toe:&lt;br /&gt;* horizontal, vertical and diagonal.&lt;br /&gt;*&lt;br /&gt;* @returns Red, Blue, Neither, or Both&lt;br /&gt;*/&lt;br /&gt;static String checkWinner(char[][] lines)&lt;br /&gt;{&lt;br /&gt; isBlue = false; isRed = false;&lt;br /&gt;&lt;br /&gt; // check horizontal (row)&lt;br /&gt; for(int r = 0; r &amp;lt; lines.length; r++) {    countRed = 0; countBlue = 0;    for( int c = 0; c &amp;lt; lines.length; c++) {     testCheckWinner(lines[r][c]);    }      }      // check vertical (column)   for(int c = 0; c &amp;lt; lines.length; c++) {    countRed = 0; countBlue = 0;    for( int r = 0; r &amp;lt; lines.length; r++) {     testCheckWinner(lines[r][c]);    }      }      // check main diagonal. bottom half   for(int i = 0; i &amp;lt; lines.length; i++) {    countRed = 0; countBlue = 0;    for(int r = i, c = 0; r &amp;lt; lines.length; r++, c++) {         testCheckWinner(lines[r][c]);    }      }      // check main diagonal. upper half   for(int i = lines.length-2; i &amp;gt; 0; i--) {&lt;br /&gt;  countRed = 0; countBlue = 0;&lt;br /&gt;  for(int r = 0, c = i; c &amp;lt; lines.length; r++, c++) {         testCheckWinner(lines[r][c]);    }      }      // check opposite diagonal. bottom half   for(int i = 0; i &amp;lt; lines.length; i++) {    countRed = 0; countBlue = 0;    for(int r = i, c = lines.length-1; r &amp;lt; lines.length; r++, c--) {         testCheckWinner(lines[r][c]);    }      }      // check opposite diagonal. upper half   for(int i = 1; i &amp;lt; lines.length; i++) {    countRed = 0; countBlue = 0;    for(int r = 0, c = i; c &amp;gt;= 0; r++, c--) {   &lt;br /&gt;   testCheckWinner(lines[r][c]);&lt;br /&gt;  }  &lt;br /&gt; }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; if(isBlue &amp;amp;&amp;amp; isRed) {&lt;br /&gt;  return "Both";&lt;br /&gt; } else if(isBlue) {&lt;br /&gt;  return "Blue";&lt;br /&gt; } else if(isRed) {&lt;br /&gt;  return "Red";&lt;br /&gt; } else {&lt;br /&gt;  return "Neither";&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;static void testCheckWinner(char c)&lt;br /&gt;{&lt;br /&gt; if(c == 'R') {&lt;br /&gt;  countRed++;&lt;br /&gt;  countBlue = 0;&lt;br /&gt; } else if(c == 'B') {&lt;br /&gt;  countBlue++;&lt;br /&gt;  countRed = 0;&lt;br /&gt; } else {&lt;br /&gt;  countRed = 0;&lt;br /&gt;  countBlue = 0;&lt;br /&gt; }&lt;br /&gt; if(countRed == k) isRed = true;&lt;br /&gt; if(countBlue == k) isBlue = true;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-1499842387891003390?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/1499842387891003390/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=1499842387891003390' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/1499842387891003390'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/1499842387891003390'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2011/12/google-code-jam-round1a-2010-rotate.html' title='Google Code jam Round1A 2010 Rotate Join-k game'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-4149611214995426358</id><published>2011-11-12T03:41:00.000-08:00</published><updated>2011-11-12T03:56:34.977-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='negative'/><category scheme='http://www.blogger.com/atom/ns#' term='margin'/><category scheme='http://www.blogger.com/atom/ns#' term='3d'/><category scheme='http://www.blogger.com/atom/ns#' term='effect'/><category scheme='http://www.blogger.com/atom/ns#' term='css'/><title type='text'>CSS</title><content type='html'>&lt;span style="font-style: italic;"&gt;November 12th, 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The Power of Negative Margins:&lt;br /&gt;&lt;a href="http://coding.smashingmagazine.com/2009/07/27/the-definitive-guide-to-using-negative-margins/"&gt;http://coding.smashingmagazine.com/2009/07/27/the-definitive-guide-to-using-negative-margins/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;3d effect&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;style type=&amp;quot;text/css&amp;quot;&amp;gt;&lt;br /&gt;.threeD1 {&lt;br /&gt; color: red;&lt;br /&gt; line-height: 40px;&lt;br /&gt; margin-left: 1px;&lt;br /&gt; font-size: large;&lt;br /&gt;}&lt;br /&gt;.threeD {&lt;br /&gt; margin-top: -48px;&lt;br /&gt; color: blue;&lt;br /&gt; font-size: large;&lt;br /&gt;}&lt;br /&gt;&amp;lt;/style&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;p class=&amp;quot;threeD1&amp;quot;&amp;gt;Leandro&amp;lt;/p&amp;gt;&lt;br /&gt;&amp;lt;p class=&amp;quot;threeD&amp;quot;&amp;gt;Leandro&amp;lt;/p&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-4149611214995426358?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/4149611214995426358/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=4149611214995426358' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/4149611214995426358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/4149611214995426358'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2011/11/css.html' title='CSS'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-8988594837723464069</id><published>2011-07-09T19:31:00.000-07:00</published><updated>2011-07-09T19:32:51.762-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux linus open source free'/><title type='text'>Linux</title><content type='html'>========================&lt;br /&gt;July 9th, 2011&lt;br /&gt;&lt;br /&gt;Could you be Linus?&lt;br /&gt;1    3    -&amp;gt; flame mailing list&lt;br /&gt;2    2    -&amp;gt; diving Australia&lt;br /&gt;3    5    -&amp;gt; take the kids&lt;br /&gt;4    3    -&amp;gt; Android&lt;br /&gt;5        -&amp;gt; microEmacs&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Private software puts limitation. They imply that you know what you are doing.&lt;br /&gt;Sometimes you put the wrong goal or just lose focus.&lt;br /&gt;&lt;br /&gt;Software is just a part of the solution.&lt;br /&gt;&lt;br /&gt;He doesn't use debuggers.&lt;br /&gt;Debuggers makes for worst programmers. And if you don't understand the problem at the source level, you shouldn't even try to fix it. xD uhahuauhauhauha&lt;br /&gt;He sleeps ten hours a day.&lt;br /&gt;&lt;br /&gt;He is against software desing.&lt;br /&gt;"A lot of people do a very strict design first and then they try to implement it. And when they find problems in the design, they just&lt;br /&gt;implement it anyway." xD&lt;br /&gt;"I'm a big believer of doing prototypes."&lt;br /&gt;========================&lt;br /&gt;&lt;br /&gt;========================&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-8988594837723464069?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/8988594837723464069/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=8988594837723464069' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/8988594837723464069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/8988594837723464069'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2011/07/linux.html' title='Linux'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-2079057350262970581</id><published>2011-05-28T15:27:00.000-07:00</published><updated>2011-05-28T15:36:07.117-07:00</updated><title type='text'>My Solutions to Google Code Jam 2010</title><content type='html'>&lt;h3 id="dsb-problem-title-div"&gt;Solutions written in Java!!!&lt;/h3&gt;&lt;h3 id="dsb-problem-title-div"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="color: rgb(102, 102, 102);"&gt;Problem A.&lt;/span&gt; Store Credit&lt;/span&gt;&lt;/h3&gt;&lt;br /&gt;&lt;a href="http://code.google.com/codejam/contest/dashboard?c=351101#s=p0"&gt;http://code.google.com/codejam/contest/dashboard?c=351101#s=p0&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;import java.util.Scanner;&lt;br /&gt;import java.io.File;&lt;br /&gt;import java.io.PrintWriter;&lt;br /&gt;&lt;br /&gt;public class ProblemAStoreCredit2010&lt;br /&gt;{ &lt;br /&gt; public static void main(String[] args) throws Exception&lt;br /&gt; {&lt;br /&gt;  Scanner scanner = new Scanner(new File("A-large-practice.in"));&lt;br /&gt;  PrintWriter pw = new PrintWriter("A-large-practice.ou"); &lt;br /&gt;  int _case = 1;&lt;br /&gt;  &lt;br /&gt;  scanner.nextLine();&lt;br /&gt;  while(scanner.hasNextLine())&lt;br /&gt;  {&lt;br /&gt;   int c = Integer.parseInt(scanner.nextLine()); //Amount of credit you have at the store&lt;br /&gt;   int i = Integer.parseInt(scanner.nextLine()); // Number of items in the store&lt;br /&gt;   String prices = scanner.nextLine();&lt;br /&gt;  &lt;br /&gt;   /* Available items */&lt;br /&gt;   Item[] l = new Item[i];&lt;br /&gt;  &lt;br /&gt;   String[] ap = prices.split(" ");&lt;br /&gt;   for(int x = 0; x &lt; i; x++)  &lt;br /&gt;    l[x] = new Item(Integer.parseInt(ap[x]));&lt;br /&gt;  &lt;br /&gt;  &lt;br /&gt;   search:for(int x = 0; x &lt; i-1; x++)&lt;br /&gt;   {&lt;br /&gt;    for(int j = x+1; j &lt; i; j++)&lt;br /&gt;    {&lt;br /&gt;     if(l[x].price + l[j].price == c)&lt;br /&gt;     {&lt;br /&gt;      System.out.printf("Case #%d: %d %d\n", _case, x+1, j+1);&lt;br /&gt;      pw.printf("Case #%d: %d %d\n", _case, x+1, j+1);&lt;br /&gt;      break search;&lt;br /&gt;     }&lt;br /&gt;    }&lt;br /&gt;   }&lt;br /&gt;   _case++;&lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  scanner.close();&lt;br /&gt;  pw.close();&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;class Item&lt;br /&gt;{&lt;br /&gt; int price;&lt;br /&gt; &lt;br /&gt; Item(int price)&lt;br /&gt; {&lt;br /&gt;  this.price = price;&lt;br /&gt; }&lt;br /&gt;}&lt;/code&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-2079057350262970581?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/2079057350262970581/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=2079057350262970581' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2079057350262970581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2079057350262970581'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2011/05/my-solutions-to-google-code-jam-2010.html' title='My Solutions to Google Code Jam 2010'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-1439026343094209151</id><published>2010-05-26T19:12:00.000-07:00</published><updated>2011-07-09T19:23:27.100-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dump'/><category scheme='http://www.blogger.com/atom/ns#' term='mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='file'/><category scheme='http://www.blogger.com/atom/ns#' term='backup'/><category scheme='http://www.blogger.com/atom/ns#' term='rdbms'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><title type='text'>MySQL Stuff</title><content type='html'>&lt;div&gt;Hi!&lt;/div&gt;&lt;br /&gt;&lt;bold&gt;&lt;i&gt;July 9th, 2011&lt;/i&gt;&lt;/bold&gt;&lt;br /&gt;&lt;br /&gt;Creating a Function&lt;br /&gt;&lt;div style="overflow: auto;"&gt;&lt;br /&gt;&lt;pre class="Sql"&gt;-- MySQL testing&lt;br /&gt;&lt;br /&gt;create database if not exists testing&lt;br /&gt;character set = utf8;&lt;br /&gt;&lt;br /&gt;-- show create database testing;&lt;br /&gt;&lt;br /&gt;use testing;&lt;br /&gt;&lt;br /&gt;create table client&lt;br /&gt;(&lt;br /&gt;id int primary key auto_increment,&lt;br /&gt;name varchar(20) not null,&lt;br /&gt;lastname varchar(40) not null,&lt;br /&gt;born_date date not null&lt;br /&gt;);&lt;br /&gt;&lt;br /&gt;-- show create table client;&lt;br /&gt;&lt;br /&gt;insert into client (name, lastname, born_date) values&lt;br /&gt;('Leandro', 'dos Santos Coutinho', '1987-02-02'),&lt;br /&gt;('Marco', 'Aurélio Magalhães Coutinho', '1960-12-15');&lt;br /&gt;('Rodrigo', 'dos Santos', '1981-07-01');&lt;br /&gt;&lt;br /&gt;-- the age below is not corret because it doesn't consider the month nor the day&lt;br /&gt;select name, year(now()) - year(born_date) as age from client;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-- Creating a FUNTION&lt;br /&gt;&lt;br /&gt;delimiter |&lt;br /&gt;create function get_age(born_date date) returns int&lt;br /&gt;begin&lt;br /&gt;declare age int;&lt;br /&gt;&lt;br /&gt;declare this_month, this_day int;&lt;br /&gt;declare born_month, born_day int;&lt;br /&gt;&lt;br /&gt;set age = year(now()) - year(born_date);&lt;br /&gt;&lt;br /&gt;set this_month = month(now());&lt;br /&gt;set this_day = day(now());&lt;br /&gt;&lt;br /&gt;set born_month = month(born_date);&lt;br /&gt;set born_day = day(born_date);&lt;br /&gt;&lt;br /&gt;if this_month &amp;lt; born_month then set age = age - 1;&lt;br /&gt;elseif this_month = born_month and this_day &amp;lt; born_day then set age = age - 1;&lt;br /&gt;end if;&lt;br /&gt;RETURN age;&lt;br /&gt;end |&lt;br /&gt;-- drop function get_age&lt;br /&gt;select name, born_date, get_age(born_date) as age from client; &lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;March 26th, 2010&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Redirect Select Output to File&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html"&gt;http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;mysql -u userName -p -e "select fields from table" dataBase &amp;gt; folder/fileName&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;Example:&lt;/div&gt;&lt;div&gt;&lt;div&gt;mysql -u root -p -e "select * from fool_users" hacker &amp;gt; temp/fool_users===================18th August 2010&lt;h2 class="storytitle"&gt;&lt;a href="http://www.tech-recipes.com/rx/378/add-a-column-to-an-existing-mysql-table/" rel="bookmark"&gt;Add a column to an existing MySQL table&lt;/a&gt;&lt;/h2&gt;http://www.tech-recipes.com/rx/378/add-a-column-to-an-existing-mysql-table/&lt;code&gt;ALTER TABLE contacts ADD email VARCHAR(60);&lt;/code&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-1439026343094209151?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/1439026343094209151/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=1439026343094209151' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/1439026343094209151'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/1439026343094209151'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2010/05/mysql-stuff.html' title='MySQL Stuff'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-7936421129539124857</id><published>2010-05-23T11:13:00.000-07:00</published><updated>2010-05-23T11:16:04.302-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='bash'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='commands'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><category scheme='http://www.blogger.com/atom/ns#' term='script'/><title type='text'>Bash Script Stuff</title><content type='html'>Howdy!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Download a file to the same directory:&lt;br /&gt;&lt;br /&gt;wget http://site/file&lt;br /&gt;&lt;br /&gt;Download a file to the specified directory:&lt;br /&gt;&lt;br /&gt;wget -O directory/fileName http://site/file&lt;br /&gt;&lt;br /&gt;What do you think you can do with the commands above? xD&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-7936421129539124857?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/7936421129539124857/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=7936421129539124857' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/7936421129539124857'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/7936421129539124857'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2010/05/bash-script-stuff.html' title='Bash Script Stuff'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-3068303997293267558</id><published>2010-05-20T20:25:00.000-07:00</published><updated>2010-05-20T20:36:33.034-07:00</updated><title type='text'>Python Stuffs</title><content type='html'>Howdy!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Useful functions!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: 'Book Antiqua', Georgia, Palatino, Times, 'Times New Roman', serif; font-size: medium; color: rgb(34, 34, 34); line-height: 23px; "&gt;&lt;div class="titlepage"&gt;&lt;div&gt;&lt;div&gt;&lt;h3 class="title" style="margin-top: 1em; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: 'Lucida Grande', Tahoma, 'Trebuchet MS', Verdana, Lucida, Geneva, Helvetica, sans-serif; font-size: 16px; "&gt;4.3.1. The &lt;tt class="function"&gt;type&lt;/tt&gt; Function&lt;/h3&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;The &lt;tt class="function"&gt;type&lt;/tt&gt; function returns the datatype of any arbitrary object. The possible types are listed in the &lt;tt class="filename"&gt;types&lt;/tt&gt; module. This is useful for helper functions that can handle several types of data.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="titlepage"&gt;&lt;div&gt;&lt;div&gt;&lt;h3 class="title" style="margin-top: 1em; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: 'Lucida Grande', Tahoma, 'Trebuchet MS', Verdana, Lucida, Geneva, Helvetica, sans-serif; font-size: 16px; "&gt;4.3.2. The &lt;tt class="function"&gt;str&lt;/tt&gt; Function&lt;/h3&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;The &lt;tt class="function"&gt;str&lt;/tt&gt; coerces data into a string. Every datatype can be coerced into a string.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Discovering Methods:&lt;/b&gt; dir(object)&lt;/p&gt;&lt;p&gt;&lt;b&gt;Getting Help About a Method:&lt;/b&gt; help(obj.method)&lt;/p&gt;&lt;p&gt;Presentation comparing Python with C, C++ and Java. It also shows some Python's nice features:&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.youtube.com/watch?v=bDgD9whDfEY"&gt;http://www.youtube.com/watch?v=bDgD9whDfEY&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;b&gt;BUILT-IN CONTAINER TYPES&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Tuple: immutable sequence - ()&lt;/p&gt;&lt;p&gt;List: mutable sequence (a vector) - []&lt;/p&gt;&lt;p&gt;Dict: map key -&gt; value by hashtable - {}&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-3068303997293267558?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/3068303997293267558/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=3068303997293267558' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/3068303997293267558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/3068303997293267558'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2010/05/python-stuffs.html' title='Python Stuffs'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-8257729562117843049</id><published>2010-05-05T13:20:00.000-07:00</published><updated>2010-05-05T17:29:27.223-07:00</updated><title type='text'>EASY 3: Hospitality and Restaurant Episode 9</title><content type='html'>Hi!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I tried to write the transcript of this video: http://www.youtube.com/watch?v=dOX9Fl17F6s&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I would really appreciate any corrections. Thank you!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: Hi. I'm Luis. I'm going to start working as a server. The manager told me to talk with the bartender.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: That's me. Hi Luis. I'm Jake. You'll just need a short orientation before serve alcohol.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: Sure.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: The first thing you need to know: don't serve alcohol to anyone underage. You know, too young. It's against the law.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: Yes, I know.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: Here you have to be 21 years old. Other places, only 18.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: How do I know how old someone is?&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: If you are not sure, ask for a photo ID. Usually, it's a driver's license like this. Just say: “May I please see your ID?”. If you are not sure about the ID, show me. It needs to be a government issue with a photo ID, like a passport or a driver's license.  &lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: Okay. That makes sense.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: We serve mixed drinks, beer and wine.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: So I ask for drink orders when people sit down?&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: That's right. Here's a drink menu. Most people order off the menu.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: I don't know much about drinks.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: Don't worry about it. Here, I'll show you a few things.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: “On the rocks” means over ice. So a martini over or on the rocks is like this. A martini up or straight up is in a glass like this. “Neat” means only the liquor, no ice.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: What about beer?&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: We have two draft beers. (name of the beers?). Here is our list of bottle beers. Take this list and memorize it.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: Sure. I can do that. What about wine?&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: We have a wine list. We serve wine by the glass and by the bottle. We sell a few by the half bottle.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: I don't know much about wine either.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: A lot of people enjoy wine with their meal. Some people know a lot about wine. Other people want you to help them.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: I know that red wine goes with red meat and white wine goes with white meat, like chicken or fish.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: That's the main idea, but people can order what they want.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: The chef said he will offer wine recommendation with each entry.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: That's good. He knows what goes together. So that's about it. We gonna have happy hour five to seven. I need to set up the hors d'oeuvres and snacks.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: What is happy hour?&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: During happy hour, all drinks don't have price. We want customers to come in and stay for dinner.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: Just one more thing. What about smoking?&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: The dining room is nonsmokers. So is the bar. But we do allow smoking on the patio outside.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Luis: Okay. Well, thanks for the information.&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;Jake: Sure. If you have any questions, just ask. You know where you can find me.&lt;/p&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-8257729562117843049?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/8257729562117843049/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=8257729562117843049' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/8257729562117843049'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/8257729562117843049'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2010/05/easy-3-hospitality-and-restaurant.html' title='EASY 3: Hospitality and Restaurant Episode 9'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-1667922027359572544</id><published>2010-03-03T15:01:00.000-08:00</published><updated>2010-03-03T17:03:01.962-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='problem'/><category scheme='http://www.blogger.com/atom/ns#' term='bit'/><category scheme='http://www.blogger.com/atom/ns#' term='tech'/><category scheme='http://www.blogger.com/atom/ns#' term='gb'/><category scheme='http://www.blogger.com/atom/ns#' term='windows'/><category scheme='http://www.blogger.com/atom/ns#' term='ram'/><category scheme='http://www.blogger.com/atom/ns#' term='arquitecture'/><title type='text'>Other tech stuffs</title><content type='html'>Hi!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;March 3td, 2010&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What the hell is 32 bits and 64 bits?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The first tech stuff is about bitsss. I'm posting this because I need to understand it, so I can buy the right hardware and OS for my server.&lt;br /&gt;&lt;br /&gt;&lt;span class="BlogPostWords"&gt;To build a system with more than 4 gigs of RAM, you need to have a 64-bit microprocessor and a 64-bit operating system.&lt;br /&gt;&lt;br /&gt;hehe That's the short answer and what is important to me. If you want to read more, take a look in the links below.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;http://blog.newsweek.com/blogs/techtonicshifts/archive/2009/09/16/64-bit-computing-the-next-big-confusing-thing.aspx&lt;br /&gt;http://blogs.msdn.com/hiltonl/archive/2007/04/13/the-3gb-not-4gb-ram-problem.aspx&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-1667922027359572544?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/1667922027359572544/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=1667922027359572544' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/1667922027359572544'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/1667922027359572544'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2010/03/other-tech-stuffs.html' title='Other tech stuffs'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-2122156439905207164</id><published>2010-02-22T15:19:00.000-08:00</published><updated>2010-08-21T11:55:31.323-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='so'/><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><category scheme='http://www.blogger.com/atom/ns#' term='distribution'/><category scheme='http://www.blogger.com/atom/ns#' term='operating system'/><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>Ubuntu Stuff</title><content type='html'>&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;=======================&lt;br /&gt;21th August 2010&lt;br /&gt;&lt;br /&gt;Ubuntu 10.04 Wireless driver installation&lt;br /&gt;&lt;br /&gt;Go to this folder: &lt;a href="ftp://3dsp.com.cn/Open%20Source%20Code/Sectional%20Open%20source%20code/"&gt;ftp://3dsp.com.cn/Open%20Source%20Code/Sectional%20Open%20source%20code/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And download: &lt;a href="ftp://3dsp_lpkt_usb:m4rt9s@3dsp.com.cn/Open%20Source%20Code/Sectional%20Open%20source%20code/BlueW-2310U_3.0.4_100820.tar.gz"&gt;BlueW-2310U_3.0.4_100820.tar.gz&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Unpack an read the readme file. It worked at my notebook (Microboard Ultimate)&lt;br /&gt;&lt;br /&gt;I'm using D-link DI 524 Wireless router&lt;br /&gt;&lt;br /&gt;(Maybe) Useful links:&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;http://www.vivaolinux.com.br/topico/OTRS/3dsp-no-Ubuntu-10.04&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;http://www.orkut.com.br/Main#CommMsgs?cmm=91345357&amp;amp;tid=5464668451951237704&amp;amp;kw=ubuntu&amp;amp;na=1&amp;amp;nst=1&lt;br /&gt;http://www.youtube.com/watch?v=m03RcFkSIA8&amp;amp;feature=related&lt;br /&gt;&lt;br /&gt;=======================&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/List_of_Ubuntu_releases#Ubuntu_9.10_.28Karmic_Koala.29"&gt;Karmic&lt;/a&gt; &lt;a href="http://www.idepuntonet.com/ventas/images/karmic_koala.jpg"&gt;Koala&lt;/a&gt; 9.10&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size:130%;"&gt;&lt;i&gt;March 26th, 2010&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;List all users and groups&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;font-family:Verdana,Helvetica,Arial,sans-serif;" &gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;cat /etc/passwd | cut -d: -f1&lt;br /&gt;cat /etc/group |cut -d: -f1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-weight: bold;"&gt;&lt;span class="Apple-style-span"  style="font-family:Verdana,Helvetica,Arial,sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style=";font-family:Verdana,Helvetica,Arial,sans-serif;font-size:100%;"  &gt;&lt;span class="Apple-style-span" style="font-weight: normal;font-size:12px;" &gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;source: &lt;/span&gt;&lt;a href="http://www.linuxforums.org/forum/redhat-fedora-linux-help/41672-command-view-list-all-users-groups.html"&gt;http://www.linuxforums.org/forum/redhat-fedora-linux-help/41672-command-view-list-all-users-groups.html&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style=";font-family:Verdana,Helvetica,Arial,sans-serif;font-size:100%;"  &gt;&lt;span class="Apple-style-span" style="font-weight: normal;font-size:12px;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span class="Apple-style-span" style=";font-family:Verdana,Helvetica,Arial,sans-serif;font-size:100%;"  &gt;&lt;span class="Apple-style-span" style="font-weight: normal;font-size:12px;" &gt;&lt;a href="http://www.linuxforums.org/forum/redhat-fedora-linux-help/41672-command-view-list-all-users-groups.html"&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;b&gt;Add permission to a Group to Access a File&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:100%;" &gt;March 2nd, 2010&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;How to Install JRE plugin in Firefox&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If you already have JRE installed, then only &lt;span style="font-style: italic;"&gt;sudo apt-get install sun-java6-plugin&lt;/span&gt; is necessary.&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-size:100%;" &gt;February 23, 2010&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;Install flash in Firefox&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-size:100%;"&gt;Hi! It's very easy to install flash in Firefox.&lt;br /&gt;&lt;br /&gt;Steps:&lt;br /&gt;- Applications -&gt; Ubuntu Software Center&lt;br /&gt;- Search for &lt;span style="font-style: italic;"&gt;flash&lt;/span&gt;&lt;br /&gt;- Adobe Flash plugin -&gt; install&lt;br /&gt;- be happy!! xD&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;February 22th, 2010&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Install mp3 support&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Probably mp3 support won't be available due to license issues, but it's very simple to install mp3 support.&lt;br /&gt;&lt;br /&gt;1. sudo apt-get update&lt;br /&gt;2. play some file&lt;br /&gt;3. search plugin&lt;br /&gt;4. reopen the file&lt;br /&gt;5. be happy&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-2122156439905207164?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/2122156439905207164/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=2122156439905207164' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2122156439905207164'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2122156439905207164'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2010/02/ubuntu-stuff.html' title='Ubuntu Stuff'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-2379688748605760152</id><published>2010-02-18T02:32:00.000-08:00</published><updated>2010-02-18T02:37:19.750-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='pl/pgsql'/><category scheme='http://www.blogger.com/atom/ns#' term='psql'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><category scheme='http://www.blogger.com/atom/ns#' term='postgresql'/><category scheme='http://www.blogger.com/atom/ns#' term='trigger'/><category scheme='http://www.blogger.com/atom/ns#' term='db'/><title type='text'>PostgreSQL Stuff</title><content type='html'>Hi folks!&lt;br /&gt;&lt;br /&gt;In this post I'll write stuffs related with PostgreSQL.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Login&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;February 18th, 2010&lt;br /&gt;&lt;br /&gt;&gt; psql -h localhost -U postgres&lt;br /&gt;&gt; ***** (your password)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-2379688748605760152?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/2379688748605760152/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=2379688748605760152' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2379688748605760152'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2379688748605760152'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2010/02/postgresql-stuff.html' title='PostgreSQL Stuff'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-5628128552278250468</id><published>2010-02-08T09:38:00.000-08:00</published><updated>2010-05-26T14:31:17.122-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java'/><category scheme='http://www.blogger.com/atom/ns#' term='tips'/><category scheme='http://www.blogger.com/atom/ns#' term='stuff'/><category scheme='http://www.blogger.com/atom/ns#' term='errors'/><category scheme='http://www.blogger.com/atom/ns#' term='things'/><category scheme='http://www.blogger.com/atom/ns#' term='interesting'/><category scheme='http://www.blogger.com/atom/ns#' term='exceptions'/><title type='text'>Java Stuff</title><content type='html'>Hi!&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;Files&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;1 - text file busy&lt;/span&gt; February 8th, 2010&lt;br /&gt;&lt;br /&gt;So, I was changing the content of an executable file with PrintWriter, then I used flush() and tried to execute the file:&lt;br /&gt;...&lt;br /&gt;pw.flush();&lt;br /&gt;Runtime rt = Runtime.getRuntime();&lt;br /&gt;rt.exec("./testPrinter.sh");&lt;br /&gt;&lt;br /&gt;And I  was getting the following exception: IOException - text file busy&lt;br /&gt;Fortunately it had a simple solution ...&lt;br /&gt;I just had to close the PrintWriter object before execute the file:&lt;br /&gt;-------&gt; pw.close();&lt;br /&gt;&lt;br /&gt;Cheers!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Import Static&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;hi folks!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I tried to do a import static ClassName.*, but it didn't work. The problem is that the class must be inside some package. So I did: import static packageName.ClassName.*;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-5628128552278250468?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/5628128552278250468/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=5628128552278250468' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/5628128552278250468'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/5628128552278250468'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2010/02/java-stuff.html' title='Java Stuff'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-7283239254472112578</id><published>2010-02-03T18:01:00.000-08:00</published><updated>2010-07-31T16:12:39.075-07:00</updated><title type='text'>Servlets and JSP stuff</title><content type='html'>&lt;pre&gt;FAIL - Application at context path /project1 could not be started&lt;br /&gt;&lt;/pre&gt;The problem was in the web.xml file. I just changed ISO-8851-1 to ISO-8859-1. xD&lt;br /&gt;Cheers!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;**********************&lt;br /&gt;&lt;br /&gt;So, response.sendRedirect("destination") doesn't exit the method. Well maybe it's obvious, but it was not for me. So if you use response.sendRedirect and want to exit the method you must use &lt;span style="font-weight: bold; font-style: italic;"&gt;return&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-7283239254472112578?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/7283239254472112578/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=7283239254472112578' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/7283239254472112578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/7283239254472112578'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2010/02/servlets-and-jsp-stuff.html' title='Servlets and JSP stuff'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-3314021122216208946</id><published>2010-01-18T19:18:00.000-08:00</published><updated>2010-01-18T19:20:13.077-08:00</updated><title type='text'>Conversations Questions Getting to Know Each Other</title><content type='html'>source: &lt;a href="http://iteslj.org/questions/getting.html"&gt;http://iteslj.org/questions/getting.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;h2&gt;Conversation Questions&lt;br /&gt;Getting to Know Each Other &lt;/h2&gt; A Part of &lt;a href="http://iteslj.org/questions/"&gt;Conversation Questions for the ESL Classroom&lt;/a&gt;.  &lt;/center&gt; &lt;ul&gt;&lt;li&gt;Do you have any pets? &lt;/li&gt;&lt;li&gt;What was the last book you read? &lt;/li&gt;&lt;li&gt;Do you like to cook? &lt;/li&gt;&lt;li&gt;What's your favorite food? &lt;/li&gt;&lt;li&gt;Are you good at cooking/swimming/etc? &lt;/li&gt;&lt;li&gt;Are you married or single? &lt;/li&gt;&lt;li&gt;Do you have brothers and sisters?&lt;ul&gt;&lt;li&gt;Are they older or younger than you?&lt;/li&gt;&lt;/ul&gt; &lt;/li&gt;&lt;li&gt;Do you like baseball? &lt;/li&gt;&lt;li&gt;Do you live alone? &lt;/li&gt;&lt;li&gt;Do you live in a house or an apartment? &lt;/li&gt;&lt;li&gt;Have you ever lived in another country? &lt;/li&gt;&lt;li&gt;Have you ever met a famous person? &lt;/li&gt;&lt;li&gt;How do you spend your free time? &lt;/li&gt;&lt;li&gt;How long have you been studying English? &lt;/li&gt;&lt;li&gt;How old are you? &lt;/li&gt;&lt;li&gt;How tall are you? &lt;/li&gt;&lt;li&gt;Tell me about a favorite event of your adulthood. &lt;/li&gt;&lt;li&gt;Tell me about a favorite event of your childhood. &lt;/li&gt;&lt;li&gt;What are your hobbies? &lt;/li&gt;&lt;li&gt;What two things could you not do when you were.....? &lt;/li&gt;&lt;li&gt;What countries have you visited? &lt;/li&gt;&lt;li&gt;What country are you from? &lt;/li&gt;&lt;li&gt;What do you do on Sundays? &lt;/li&gt;&lt;li&gt;What do you do?  What's your job? &lt;/li&gt;&lt;li&gt;What do you like to do in your free time? &lt;/li&gt;&lt;li&gt;What hobbies do you have? &lt;/li&gt;&lt;li&gt;What is the nearest bus stop or train station to your house? &lt;/li&gt;&lt;li&gt;What is your motto? &lt;/li&gt;&lt;li&gt;What is your religion? (Perhaps not a good question in some situations.) &lt;/li&gt;&lt;li&gt;What kind of food do you like? &lt;/li&gt;&lt;li&gt;What kind of people do you like? &lt;/li&gt;&lt;li&gt;What kind of people do you not like? &lt;/li&gt;&lt;li&gt;What languages do you speak? &lt;/li&gt;&lt;li&gt;What two things could you not do when you were a child, but you can do now? &lt;/li&gt;&lt;li&gt;What's something you do well? &lt;/li&gt;&lt;li&gt;What's your address? &lt;/li&gt;&lt;li&gt;What's your father like? &lt;/li&gt;&lt;li&gt;What's your mother like? &lt;/li&gt;&lt;li&gt;What's your name? &lt;/li&gt;&lt;li&gt;What's your phone number? &lt;/li&gt;&lt;li&gt;What's your telephone number? &lt;/li&gt;&lt;li&gt;When did you start to study English? &lt;/li&gt;&lt;li&gt;Where are you from? &lt;/li&gt;&lt;li&gt;Where do you live? &lt;/li&gt;&lt;li&gt;Where do you live?  How long have you lived there? &lt;/li&gt;&lt;li&gt;Where were you born? &lt;/li&gt;&lt;li&gt;Which sports do you like? &lt;/li&gt;&lt;li&gt;Who do you live with? &lt;/li&gt;&lt;li&gt;Who do you respect the most? &lt;/li&gt;&lt;li&gt;Who has had the most influence in your life? &lt;/li&gt;&lt;li&gt;Why did you decide to take this course? &lt;/li&gt;&lt;li&gt;Why do you want to learn English? &lt;/li&gt;&lt;li&gt;Would you like to be famous? &lt;/li&gt;&lt;li&gt;What do you think you will be doing five years from now?&lt;ul&gt;&lt;li&gt;Where do you think you'll be living five years from now?&lt;/li&gt;&lt;/ul&gt; &lt;/li&gt;&lt;li&gt;What is your goal in life? &lt;/li&gt;&lt;li&gt;Are you a 'morning' or 'night' person? &lt;/li&gt;&lt;li&gt;When do you feel best?  In the morning, afternoon, or evening? &lt;/li&gt;&lt;li&gt;How many cities have you lived in? &lt;/li&gt;&lt;li&gt;What jobs have you done? &lt;/li&gt;&lt;li&gt;Which do you prefer, sunrises or sunsets?  &lt;/li&gt;&lt;li&gt;What could you do as a child that you can't do now?  &lt;/li&gt;&lt;li&gt;Who is your next door neighbor in your home country?&lt;ul&gt;&lt;li&gt;What is he or she like?&lt;/li&gt;&lt;li&gt;Did you get along with each other?&lt;/li&gt;&lt;/ul&gt; &lt;/li&gt;&lt;li&gt;What is the best memory of our country that you will take back home with you? &lt;/li&gt;&lt;li&gt;What is the worst memory of our country? &lt;/li&gt;&lt;li&gt;How many times did you move as a child? &lt;/li&gt;&lt;li&gt;Are you a task oriented person or a people oriented person? &lt;/li&gt;&lt;li&gt;What is the profile of the wife/husband you would meet?&lt;ul&gt;&lt;li&gt;What kind of woman/man would you like to marry?&lt;/li&gt;&lt;/ul&gt;  &lt;/li&gt;&lt;/ul&gt;source: &lt;a href="http://iteslj.org/questions/getting.html"&gt;http://iteslj.org/questions/getting.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-3314021122216208946?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/3314021122216208946/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=3314021122216208946' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/3314021122216208946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/3314021122216208946'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2010/01/conversations-questions-getting-to-know.html' title='Conversations Questions Getting to Know Each Other'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-3016123821303524189</id><published>2009-11-24T10:06:00.000-08:00</published><updated>2009-11-24T10:11:06.654-08:00</updated><title type='text'>Rails Is A Ghetto Original Copy</title><content type='html'>Copy of the original Zed Shaw's rant&lt;br /&gt;&lt;br /&gt;I had to post it here, because, you know, this is a real gem! xD&lt;br /&gt;&lt;br /&gt;source: http://www.zedshaw.com.sharedcopy.com/rants/51489cec9386f7c13f69b3a58cd50b02.html&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div id="contentwrapper"&gt;         &lt;div id="contentcolumnRight"&gt;           &lt;h2&gt;Rails Is A Ghetto&lt;/h2&gt;    &lt;p&gt;I’ve more or less kept my mouth shut about some of the dumb and plain evil stuff that goes on in the Rails community.  As things would happen though I’d take notes, collect logs, and started writing this little essay. As soon as I was stable and didn’t need Ruby on Rails to survive I told myself I’d revamp my blog and expose these fucks.&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;&lt;span class="caps"&gt;NOTE&lt;/span&gt;: This post is currently an open draft. Feel free to comment but it will have spelling and grammar errors and some paragraphs might not make sense. Check my &lt;a href="http://www.zedshaw.com.sharedcopy.com/blog/index.html"&gt;blog&lt;/a&gt; and my &lt;a href="http://www.zedshaw.com.sharedcopy.com/feed.atom"&gt;atom feed&lt;/a&gt; to find out when I post the updates.&lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;This is that rant.  It is part of my grand exit strategy from the Ruby and Rails community.  I don’t want to be a “Ruby guy” anymore, and will probably start getting into more Python, Factor, and Lua in the coming months.  I’ve got about three or four more projects in the works that will use all of those and not much Ruby planned.&lt;/p&gt;    &lt;p&gt;This rant is full of stories about companies and people who’ve either pissed in my cheerios somehow or screwed over friends.  I can back all of them up from emails, &lt;span class="caps"&gt;IRC&lt;/span&gt; chat logs, or with witnesses.  Nothing in here is a lie unless it’s really obviously a lie through exaggeration, and there’s a lot of my opinion  as well.&lt;/p&gt;    &lt;p&gt;The best part about ripping on these guys though is this:&lt;/p&gt;    &lt;pre&gt;&lt;code&gt;If they have a blog, speak at conferences, publish papers,&lt;br /&gt;or write books then they are &lt;strong&gt;public figures&lt;/strong&gt; just like me.&lt;/code&gt;&lt;/pre&gt;    &lt;p&gt;This means that thanks to Larry Flynt I can stab them in the ear verbally, insult them, question their sexual orientation, and say anything that’s true and they just have to take it.  Their only recourse is to write their pathetic little rebuttals in their stupid little blogs.&lt;/p&gt;    &lt;p&gt;I’ll add one more thing to the people reading this:  I mean business when I say I’ll take anyone on who wants to fight me.  You think you can take me, I’ll &lt;strong&gt;pay&lt;/strong&gt; to rent a boxing ring and beat your fucking ass legally.  Remember that I’ve studied enough martial arts to be deadly even though I’m old, &lt;strong&gt;and&lt;/strong&gt; I don’t give a fuck if I kick your mother fucking ass or you kick mine.  You don’t like what I’ve said, then write something in reply but fuck you if you think you’re gonna talk to me like you can hurt me.&lt;/p&gt;    &lt;p&gt;I’ll never be afraid of some pilsner fresh fat fuck who eats donut hamburgers and only gets exercise when he plays World of Warcraft on a &lt;span class="caps"&gt;DDR&lt;/span&gt; pad.&lt;/p&gt;    &lt;p&gt;To prime the pump, let’s talk about Kevin Clark.  Me and Kevin don’t get along because he once tried to demand some free tech support out of me for Mongrel. His dumb little company &lt;a href="http://www.powerset.com/"&gt;VaporSet&lt;/a&gt; had this stupid setup where the people deploying Rails didn’t have root access.  I told Kevin that this was stupid and apparently it was Kevin’s idea because he told me “fuck you”.  Ever since then Kevin’s been a mouthy little shit with nothing to back it up.&lt;/p&gt;    &lt;p&gt;This particular discussion started with Kevin Clark deciding to tell me that my idea to restrict access to the main repository for &lt;a href="http://savingtheinternetwithhate.com/"&gt;Utu&lt;/a&gt; until it’s solid makes me a “dick”.  But, read to the end of the chat for the punch line.  It’s great.&lt;/p&gt;   &lt;blockquote&gt; &lt;pre&gt;02:18 &lt;&gt; evan: http://utuprotocol.info/repos/&lt;br /&gt;02:18 &lt;&gt; evan: I thought so too, but it still seems to&lt;br /&gt;                   happen (atleast on my system). And lightning has&lt;br /&gt;                   a few that hang out&lt;br /&gt;02:18 &lt;&gt; evan: http://utuprotocol.info/repos/utu/changes.rss&lt;br /&gt;              is generated from an included xslt i hacked up&lt;br /&gt;02:18 &lt;@evan&gt; zedas: and who can push code to that location?&lt;br /&gt;02:18 &lt;&gt; me&lt;br /&gt;02:18 &lt;&gt; large git clones can also get kind of bad&lt;br /&gt;02:18 &lt;@evan&gt; see, thats the problem.&lt;br /&gt;02:19 &lt;@evan&gt; kevinclark: hang out?&lt;br /&gt;02:19 &lt;&gt; not a problem at all.  feature since i don't trust&lt;br /&gt;              any you mofos :-)&lt;br /&gt;02:19 &lt;@evan&gt; kevinclark: you mean missing files?&lt;br /&gt;02:19 &lt;@evan&gt; zedas: then you're set!&lt;br /&gt;02:19 &lt;&gt; evan: I mean generated files are sitting in svn&lt;br /&gt;02:19 &lt;&gt; evan: no, people can contribute by doing a darcs send&lt;br /&gt;              which packs it up and shoots it to my email.&lt;br /&gt;&lt;/pre&gt; &lt;/blockquote&gt;   &lt;p&gt;Then kevin comes in:&lt;/p&gt;   &lt;blockquote&gt; &lt;pre&gt;02:21 &lt;@evan&gt; we've got very different ideas about how to deal with&lt;br /&gt;             contribution, i suspect.&lt;br /&gt;02:21 &lt;&gt; i also anticipate that there won't be so many people&lt;br /&gt;              contributing directly on the main utu server, but&lt;br /&gt;              more contributing by writing clients or tools that&lt;br /&gt;              use it&lt;br /&gt;02:21 &lt;&gt; evan: I'd say you're polar opposites&lt;br /&gt;02:22 &lt;&gt; how's that kevinclark?&lt;br /&gt;02:22 &lt;&gt; zedas: I thought you weren't talking to me&lt;br /&gt;02:22 &lt;&gt; kev * [1003] /rubinius/trunk (8 files) add&lt;br /&gt;                 rb_hash_delete&lt;br /&gt;02:24 &lt;&gt; kevinclark: well i'm gonna talk to you if you're&lt;br /&gt;              making passive aggressive little comments&lt;br /&gt;02:24 &lt;&gt; zedas: they aren't passive aggressive. You don't&lt;br /&gt;                   want anyone to check in to your repo. Evan's&lt;br /&gt;                   repo is open to anyone who's gotten a patch in.&lt;br /&gt;                   polar opposites&lt;br /&gt;02:24 &lt;&gt; and you're still a dick&lt;br /&gt;02:25 &lt;&gt; and I'm enjoying the vacation&lt;br /&gt;02:25 &lt;&gt; so, keep it up&lt;br /&gt;02:27 &lt;&gt; kevinclark: you just called me a dick?&lt;br /&gt;02:27 &lt;&gt; you can still read too&lt;br /&gt;02:27 &lt;&gt; awesome&lt;br /&gt;02:27 &lt;&gt; hmmm&lt;br /&gt;02:27 &lt;&gt; well, i'll just leave this alone for now.&lt;br /&gt;02:27 &lt;&gt; sorry about that evan.&lt;br /&gt;02:28 &lt;@evan&gt; no problem.&lt;br /&gt;&lt;/pre&gt; &lt;/blockquote&gt;   &lt;p&gt;And then kevin demonstrates why I’m trying to limit people’s access to the main repository:&lt;/p&gt;   &lt;blockquote&gt; &lt;pre&gt;02:47 &lt;&gt; evan: lighting is using autoconf?&lt;br /&gt;02:47 &lt;&gt; er lightning&lt;br /&gt;02:48 &lt;@evan&gt; yeah&lt;br /&gt;02:48 &lt;@evan&gt; well, crap.&lt;br /&gt;02:48 &lt;@evan&gt; lightning is faulting on i386&lt;br /&gt;02:48 &lt;&gt; hmm?&lt;br /&gt;02:48 &lt;&gt; yeah r1003 deleted configure&lt;br /&gt;02:48 &lt;&gt; working on mine now&lt;br /&gt;02:48 &lt;&gt; oh, crap&lt;br /&gt;02:48 &lt;&gt; I thought configure was generated&lt;br /&gt;02:48 &lt;&gt; from autoconf&lt;br /&gt;02:48 &lt;@evan&gt; really?&lt;br /&gt;02:48 &lt;&gt; all my build tools do it ;)&lt;br /&gt;02:48 &lt;&gt; sorry&lt;br /&gt;02:48 &lt;&gt; well, not from our .configure&lt;br /&gt;02:48 &lt;@evan&gt; brixen: it should be there.&lt;br /&gt;02:49 &lt;&gt; I'll restore from r1002&lt;br /&gt;02:49 &lt;&gt; brixen: cool. sorry about that.&lt;br /&gt;02:49 &lt;&gt; just wasn't sure if the build steps had changed&lt;br /&gt;02:49 &lt;&gt; kevinclark: np&lt;br /&gt;02:50 &lt;@evan&gt; brixen: wtf.&lt;br /&gt;02:50 &lt;@evan&gt; why did it get deleted....&lt;br /&gt;02:50 &lt;@evan&gt; kevinclark: did you delete it?&lt;br /&gt;02:51 &lt;&gt; evan: I did. Too much time with buildtools that&lt;br /&gt;                   were generating configure for me, and I got&lt;br /&gt;                   confused.&lt;br /&gt;02:51 &lt;&gt; evan: It got caught with the docs that got&lt;br /&gt;                   modified&lt;br /&gt;02:51 &lt;&gt; and I didn't think twice about it&lt;br /&gt;02:52 &lt;@evan&gt; yeah, just restore it plz, kthxomgwtfbbq&lt;br /&gt;02:52 &lt;&gt; evan: working on it ;)&lt;br /&gt;02:52 &lt;&gt; brixen: you're doing the restore, yeah?&lt;br /&gt;02:52 &lt;&gt; yeah, one sec&lt;br /&gt;02:52 &lt;&gt; was just checking it would build&lt;br /&gt;02:52 &lt;&gt; and it's building :)&lt;br /&gt;02:53 &lt;&gt; sweet&lt;br /&gt;02:53 &lt;&gt; brixen * [1004]&lt;br /&gt;/rubinius/trunk/shotgun/external_libs/lightning/configure restore&lt;br /&gt;&lt;/pre&gt; &lt;/blockquote&gt;   &lt;p&gt;Wow, rails is a ghetto.  The little prick calls me a dick (and in private chat said he’d find me at the next conference but of course never did), then he &lt;strong&gt;deletes the fucking configure file for the project!&lt;/strong&gt;  Remember he was working on &lt;span class="caps"&gt;GNU&lt;/span&gt; lightning when I started chatting, so this means that it took an hour for everyone to figure out that his dumb fuck ass deleted it.&lt;/p&gt;    &lt;p&gt;Why is this ghetto?  Any experienced developer knows that autoconf configure files are a &lt;strong&gt;&lt;span class="caps"&gt;PAIN IN THE ASS&lt;/span&gt;&lt;/strong&gt; to recreate.  They almost always require special reconfigure calls, special m4 macros, or just time.  You usually get them right, generate them once, and then leave them in your repository for all to use.  To make it worse, Kevin actually wrote a supposed &lt;a href="http://mkrf.rubyforge.org/"&gt;alternative to autoconf,&lt;/a&gt; and yet &lt;strong&gt;he doesn’t know the most basic thing about autoconf&lt;/strong&gt;.&lt;/p&gt;    &lt;p&gt;Only a fucking tool bag piece of shit would:&lt;/p&gt;    &lt;ul&gt;&lt;li&gt;spend 10-20 minutes calling me names over &lt;span class="caps"&gt;IRC&lt;/span&gt;, &lt;/li&gt;&lt;li&gt;not have the balls to say any of that to my face, &lt;/li&gt;&lt;li&gt;say I’m a dick for wanting to use a different (established) publish/review model,&lt;/li&gt;&lt;li&gt;and then demolish such an important file for a project,&lt;/li&gt;&lt;li&gt;keeping everyone stumped and pissed for an hour,&lt;/li&gt;&lt;li&gt;therefore proving me right.&lt;/li&gt;&lt;/ul&gt;    &lt;p&gt;This is exactly what makes Rails a ghetto.  A bunch of half-trained  former &lt;span class="caps"&gt;PHP&lt;/span&gt; morons who never bother to sit down and really learn the computer science they were too good to study in college.  &lt;span class="caps"&gt;BTW&lt;/span&gt;, this is true about Kevin as he’s an English major or something stupid (and it shows).&lt;/p&gt;    &lt;p&gt;Hats off to you Kevin, you fucking prick.  I’m enjoying my vacation too.&lt;/p&gt;    &lt;p&gt;After this, I started thinking, since it was the first realization that I picked the absolute last wrong community to make my living in.  They were all pricks, morons, assholes, and arrogant fucks who didn’t care about the art or the craft.&lt;/p&gt;    &lt;p&gt;They were all a bunch of little ghetto fabulous princesses trying to make it in this tiny little Rails world and not enough brains between them all to make it happen.&lt;/p&gt;    &lt;h2&gt;Tied To The Rails&lt;/h2&gt;    &lt;p&gt;I’ve been thinking this over ever since I realized that Mongrel and Rails more or less killed my career.  During 2006 I was effectively homeless for about 4-6 months out of the year and made no money at all.  During the rest of the year the little money I made was impossible to get, and many times I was simply not paid.&lt;/p&gt;    &lt;p&gt;If it weren’t for the totally kick ass &lt;a href="http://obiefernandez.com/"&gt;Obie Fernandez&lt;/a&gt; I’d probably be slogging away in some McD’s screaming, “you want fries with that?!” He got me a really good gig in Florida and I was able to get back on my feet. Obie rocks, and he’s also a good family man, treats his kids well, and is very smart. He’s one of the few gems of the Ruby world.&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;Before&lt;/strong&gt; Mongrel I was building kick ass software for the &lt;span class="caps"&gt;NYC&lt;/span&gt; Dept. of  Correction with a tiny team.  We were doing innovative stuff like &lt;span class="caps"&gt;REST&lt;/span&gt; &lt;span class="caps"&gt;XML&lt;/span&gt; feeds of prisoner releases and &lt;span class="caps"&gt;RSS&lt;/span&gt; of prisoner transfers.  It was fun, I was in charge, and things were pretty good.&lt;/p&gt;    &lt;p&gt;Before that I built software for finger print readers, network protocols, designed business processes, lead software teams, created portals, and generally rocked as a consultant.&lt;/p&gt;    &lt;p&gt;After Mongrel I couldn’t get a gang of monkeys to rape me, so forget any jobs. Sure people would contact me for their tiny little start-ups, but I’d eventually catch on that they just want to use me to implement their ideas.  Their ideas were horrendously lame.  I swear if someone says they’re starting a social network I’m gonna beat them with the heel of my shoe.&lt;/p&gt;    &lt;h2&gt;The Stories I Could (and Will) Tell&lt;/h2&gt;    &lt;p&gt;One company tried to get me to sign a contract that required me to list all of my inventions, software, cooking recipes, works of art, writings, poems, essays, thoughts, ideas, patentable or unpatentable, prior to taking a &lt;strong&gt;2 hour per week gig mentoring someone&lt;/strong&gt;.  The list of shit they wanted went on and on,  and after I refused and just ignored them they still kept asking me.&lt;/p&gt;    &lt;p&gt;Another company told me they had a great job for me and that I’d be perfect for them.  I knew these guys so I at first trusted them, but what a mistake.  Turns out that it wasn’t a job they had, it was an &lt;span class="caps"&gt;RFP&lt;/span&gt; that they wanted to bid for and put my name on the bid so they’d have an advantage.  Alright, that’s fine but that means they’re using my name and reputation (that I earned) in a business transaction without telling me.  Fine, I better get some fat cash.  They then build the team and dole out the positions:  Software Architect to the shithead who can’t code; Project Manager to the &lt;span class="caps"&gt;MBA&lt;/span&gt; asshole who talks like a car salesman; Lead Engineer to the guy using my shit to run his company.  What do they give me?  Nothing.  I’m just Zed.  Nobody needs my skills.&lt;/p&gt;    &lt;p&gt;Other companies would hire me to fix something simple, I’d quote them $500 or so to do it, and then they’d refuse to pay if it didn’t take me a week to do.  In one case I did something in about 5 minutes, sent off my automated billing &lt;span class="caps"&gt;PDF&lt;/span&gt; and they just flat refused.  I had to work for another hour and even then they didn’t want to pay.&lt;/p&gt;    &lt;p&gt;A company in &lt;span class="caps"&gt;NYC&lt;/span&gt; flew me out, put me up, and I gave them a cut-throat deal on my rate if they’d pay me quick.  I needed the money to pay rent, so it had to be right after the two weeks of work.  About the middle of the week I hear that the &lt;span class="caps"&gt;CEO&lt;/span&gt; isn’t going to pay me right away but is instead going to do &lt;span class="caps"&gt;NET&lt;/span&gt;-30 (an evil     practice reserved only for furniture sales).  I tell the guys that I got to go and I’d like my money, but they refuse, I fly out, and I don’t get paid for &lt;strong&gt;60 days.&lt;/strong&gt;  What’d I do for them?  Oh only a custom Mongrel server, a clean deployment to Mongrel from fastcgi, and a ton of training for their main man.&lt;/p&gt;    &lt;p&gt;Then there’s the social network idiots.  They all have a social network plus something fucking stupid to sell, but of course no &lt;span class="caps"&gt;MBA&lt;/span&gt; can actually code so they come running to me.  However, there’s a slight problem.  You see, &lt;strong&gt;I have a business degree you cock suckers.&lt;/strong&gt;  If you tell me that your social network will take on facebook because it includes baby pictures then I’m going to laugh in your face.  They are an established player with &lt;span class="caps"&gt;CIA&lt;/span&gt; backing.  You won’t wipe them out.&lt;/p&gt;    &lt;p&gt;Google was a total riot.  They offered me a job twice.  I went with it, and they never responded.  Probably because the job they were offering me—someone who’s been coding for 21 years, 15 professionally—was as a &lt;strong&gt;junior system administrator&lt;/strong&gt;.  What the hell does a junior sysadmin do at google?  That’s probably like mopping the floor at a glory hole in Queens.  I told them to review my resume and offer me a real position.&lt;/p&gt;    &lt;h2&gt;Revenge Of The Zen Prick&lt;/h2&gt;    &lt;p&gt;In Vancouver it was even weirder.  There was no Rails there, and the only Ruby on Rails work was at this shitty little company I once worked for name Raymond James.  I worked for them on a small gig, not doing much coding, just getting a project they screwed up out the door.  Later I got into it with their “Development Manager” Alex Bunardzic over e-mail where he says something strange:&lt;/p&gt;   &lt;blockquote&gt; I would think twice before doing something like that, if I were you. As a Development Manager at Raymond James, I am privy to the work details you did for us some time ago (it’s all here, meticulously classified by [MANAGER]), and I must say that your references from that job are far from being stellar. To put things extremely mildly, you’ve ended up on our ‘not to rehire’ black list.   &lt;p&gt;You may be looking for work, and people will naturally start asking around. I have plenty of contacts in the industry, and you know how people are when hiring—looking for references and for some feedback.&lt;/p&gt;   I’m afraid that, after just reviewing the code you’ve delivered here, I won’t be in the position to say many encouraging things about the quality of your work, not to mention your personality traits. &lt;/blockquote&gt;   &lt;p&gt;We go at it for a bit, because I didn’t actually write much code for them and I sure as hell didn’t write bad code since, you know, the damn project actually ran after I got there.  Hell, I reverse engineered a Java library they bought but lost the source to so we could patch it.  They even asked me to come in a few times and help on short gigs after my initial work.  How the hell was I on a blacklist, why did they have a blacklist, why didn’t I know, and why the hell was Alex telling people this shit?&lt;/p&gt;    &lt;p&gt;As the exchange unfolds (where apparently my use of foul language is bad but his threatening my livelihood is all right), Alex the Zen Master confesses that he got things wrong:&lt;/p&gt;   &lt;blockquote&gt; Here I need to apologize—I went back and looked over the documentation, and was shocked to realize that I’ve confused you with another person! That person’s name is Shai, and because that name was on a quick glance so close to Shaw, I’ve made a blunder and jumped at the premature conclusions.   &lt;p&gt;...&lt;/p&gt;   So please scratch all the things I wrote previously concerning your past performance—all of that applies to some person whose name is Shain. &lt;/blockquote&gt;   &lt;p&gt;That’s right, this moronic idiot basically told (or just threatened to tell) everybody I was a shitty coder, refused to hire me, threatened me with slander, and tried to destroy me because he confused me with a “Shai” or a “Shain” in his blacklist.  He even later tried to tell me that there &lt;strong&gt;wasn’t&lt;/strong&gt; a blacklist.&lt;/p&gt;    &lt;p&gt;Here’s the guy who is a development manager for an entire company and he can’t even tell the difference between two completely different people in some weirdo black list.  All the more reason to leave Vancouver and try again somewhere else with people who don’t pretend to be Zen masters while they’re treating you like shit with a perfect half smile on their face.&lt;/p&gt;    &lt;h2&gt;How’d This Happen?&lt;/h2&gt;    &lt;p&gt;Over and over again I’d run into these morons who would offer me tiny jobs, no jobs, insult my intelligence, treat me like all I can do is code, and when I didn’t fit that mold or wanted to charge them for the privilege they’d cheat me or laugh at me.&lt;/p&gt;    &lt;p&gt;Here’s a bit of background on me:  My education is in business.  I have a BS in &lt;span class="caps"&gt;MIS&lt;/span&gt; and almost finished my MS but ran out of money.  I’ve got more business education than most of the MBAs out there, &lt;strong&gt;and&lt;/strong&gt; I have a nearly formal education in software development, modeling, statistical analysis, and sociology.  I’ve done it all, but what does the slick talking shit head car sales &lt;span class="caps"&gt;MBA&lt;/span&gt; loser think I am?&lt;/p&gt;    &lt;pre&gt;&lt;code&gt;Just a code monkey.&lt;/code&gt;&lt;/pre&gt;    &lt;p&gt;I have this rule that when life isn’t going well I have to look at myself very  hard first, make the changes that might improve things, and then start looking at who’s stomping on my day.&lt;/p&gt;    &lt;p&gt;After revitalizing myself, getting out of the Rails business (or trying), distancing myself from Mongrel, disconnecting from the Ruby community, and focusing on my business skills, I finally felt ready to figure out why the hell the Rails community is so completely and totally useless, stupid, and arrogant.&lt;/p&gt;    &lt;p&gt;I believe, if I could point at one thing it’s the following statement on 2007-01-20 to me by David H. creator of Rails:&lt;/p&gt;   &lt;blockquote&gt; &lt;pre&gt;(15:11:12) DHH: before fastthread we had ~400 restarts/day&lt;br /&gt;(15:11:22) DHH: now we have perhaps 10&lt;br /&gt;(15:11:29) Zed S.: oh nice&lt;br /&gt;(15:11:33) Zed S.: and that's still fastcgi right?&lt;br /&gt;&lt;/pre&gt; &lt;/blockquote&gt;   &lt;p&gt;Notice how it took me a few seconds to reply.  This one single statement basically means that we all got duped.  The main Rails application that &lt;span class="caps"&gt;DHH&lt;/span&gt; created required restarting ~400 times/day.  That’s a production  application that can’t stay up for more than 4 minutes on average.&lt;/p&gt;    &lt;p&gt;Let me put this into perspective for you:  I’ve ran servers that needed  to be restarted once in a year.  They were written in &lt;span class="caps"&gt;PHP&lt;/span&gt;, Python, Java,  C, C++, you name it.  Hell, I’ve got this blog on a server I’ve restarted maybe 10-20 times the whole year.&lt;/p&gt;    &lt;p&gt;Now, &lt;span class="caps"&gt;DHH&lt;/span&gt; tells me that he’s got &lt;strong&gt;400 restarts&lt;/strong&gt; a mother fucking &lt;strong&gt;day&lt;/strong&gt;.  That’s 1 restart about ever 4 minutes bitches.  These restarts went away after I exposed bugs in the GC and Threads which  Mentalguy fixed with fastthread (like a Ninja, Mentalguy is awesome).&lt;/p&gt;    &lt;p&gt;If anyone had known Rails was that unstable they would have laughed in his face. Think about it further, this means that &lt;a style="position: relative; top: -2em;" name="shcp1"&gt;&lt;/a&gt;&lt;span id="k_highlight_text1_chunk0" title="choonkeat@58.185.xxx.xxx Wed, 02 Jan 2008 03:29:46 GMT" style="background-color: rgb(255, 255, 179);" class="hilite_chunk_wrapper k_highlight_text1 k_highlight k_commentter k_coupling1"&gt;the &lt;/span&gt;&lt;strong&gt;&lt;span id="k_highlight_text1_chunk1" title="choonkeat@58.185.xxx.xxx Wed, 02 Jan 2008 03:29:46 GMT" style="background-color: rgb(255, 255, 179);" class="hilite_chunk_wrapper k_highlight_text1 k_highlight k_commentter k_coupling1"&gt;creator&lt;/span&gt;&lt;/strong&gt;&lt;span id="k_highlight_text1_chunk2" title="choonkeat@58.185.xxx.xxx Wed, 02 Jan 2008 03:29:46 GMT" style="background-color: rgb(255, 255, 179);" class="hilite_chunk_wrapper k_highlight_text1 k_highlight k_commentter k_coupling1"&gt; of Rails in his flagship products could not keep them running for &lt;/span&gt;&lt;strong&gt;&lt;span id="k_highlight_text1_chunk3" title="choonkeat@58.185.xxx.xxx Wed, 02 Jan 2008 03:29:46 GMT" style="background-color: rgb(255, 255, 179);" class="hilite_chunk_wrapper k_highlight_text1 k_highlight k_commentter k_coupling1"&gt;longer than 4 minutes on average.&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;    &lt;p&gt;Repeat that to yourself.  “He couldn’t keep his own servers running for longer than 4 minutes on average.”&lt;/p&gt;    &lt;p&gt;Assuming his statements are true (which we may never know) he basically duped us all.&lt;/p&gt;    &lt;p&gt;Now I’m glad he did since Rails is a pretty nice idea, and it demolished the Java world I hated so much.  What bothers me though, is that while all of the Rails Core fuck tards would insult me, tell me I was wrong, laugh at me, marginalize me, tell me I was a waste of space, that I “jumed the shark”, they were quietly taking my work and using it to improve their festering shit pile deployments.&lt;/p&gt;    &lt;p&gt;In fact, in chats with me and them where I started to identify the GC, Threads, and IO all I ever got was denial from guys like Dave Thomas, Michael Koziarski, and Chad Fowler. Remember that &lt;a href="http://securitytracker.com/alerts/2006/Dec/1017363.html"&gt;nasty cgi.rb bug&lt;/a&gt; that is fixed with a monkey patch in Mongrel?  Did you guys know that Michael K. and Dave Thomas pretty much threatened me into not releasing a Mongrel fix for the problem for &lt;strong&gt;three months&lt;/strong&gt;?  They actually let it sit for three months before other people crafted the cgi_multipart_eof_fix which I could include.&lt;/p&gt;    &lt;p&gt;In the beginning, was this huge lie, but after that…&lt;/p&gt;    &lt;h2&gt;Then The Idiots Came&lt;/h2&gt;    &lt;p&gt;My theory on why Rails is a ghetto is best summarized by an observation I made about Michael Koziarski.  &lt;a href="http://www.koziarski.com/"&gt;Here’s is fat fucking face&lt;/a&gt; just in case you don’t know who I’m talking about.  See, here’s the thing about Koz:  He’s got  a big mouth he runs when he’s online, but in person he doesn’t say shit.  He loves talking shit about me when I’m not around apparently, insults me when he wants, but the best thing about Michael Koziarski is this:&lt;/p&gt;    &lt;p&gt;When he tells people I’m an asshole they go, “Zed’s such a prick I hate him.”&lt;/p&gt;    &lt;p&gt;When I tell people Mike’s a fucktard loser, they say,&lt;/p&gt;    &lt;pre&gt;&lt;code&gt;"Who?"&lt;/code&gt;&lt;/pre&gt;    &lt;p&gt;That’s right, dude works on Rails in some capacity, apparently writing tons of shitty fucking code with his butt buddy Nicholas Sekar.  Yet, nobody knows him. He’s got more web sites than Elvis and Chuck Noris combined and nobody knows him.  He’s written &lt;strong&gt;mountains&lt;/strong&gt; more open source code than me and no-bo-dy knows him.&lt;/p&gt;    &lt;p&gt;He’s a fucking loser, and man he used to bug me.  Now however, I don’t give a shit about Rails so he’s a little fly.  Rails is my money maker platform I don’t invest in at all.  Rails could sink in the ocean for all I care and I’d roll on to my next big thing.  I’ve done the right thing by giving Mongrel to a great team, and if Rails dies, then awesome because little useless pricks like MK will probably fall off the planet into that part of hell where shitty managers end up.&lt;/p&gt;    &lt;p&gt;The best part about the whole thing is there’s potentially 10 new web frameworks that can take on Rails.  Hell, Mongrel spawned or helped 5 of those.  My favorite of those frameworks is &lt;a href="http://merbivore.com/"&gt;Merb&lt;/a&gt; which is literally “Mongrel plus Erb” but now it uses Erubis mostly.  What I love about Merb is that it proved you could make a fast thread safe Ruby web framework with all the same ideas as Rails and using most of the Rails gear at the same time.  &lt;a style="position: relative; top: -2em;" name="shcp2"&gt;&lt;/a&gt;&lt;span id="k_highlight_text2_chunk0" title="choonkeat@58.185.xxx.xxx Wed, 02 Jan 2008 03:29:46 GMT" style="background-color: rgb(255, 255, 179);" class="hilite_chunk_wrapper k_highlight_text2 k_highlight k_commentter k_coupling2"&gt;However, the joke is that before Merb the Rails Core morons would scream up and down you can’t make Rails thread safe.  Ezra however proved them all wrong by just writing a better Rails than Rails and all thanks to Mongrel being so easy to hack and work with.&lt;/span&gt;&lt;/p&gt;    &lt;p&gt;If the Rails guys had given me even an ounce of respect and listened to me I might have helped them, but instead I wanted to make sure that they didn’t rule the world because when I listened to them shit talk about the community that made them famous I wanted to scream.&lt;/p&gt;    &lt;p&gt;Alright, but let’s say I’m totally wrong and Koz is really a great coder who’s just staying under the radar?  Alright, remember the change to Rails to allow this?&lt;/p&gt;   &lt;pre&gt;http://mysite.com/controller/action;edit&lt;/pre&gt;   &lt;p&gt;&lt;a style="position: relative; top: -2em;" name="shcp3"&gt;&lt;/a&gt;&lt;span id="k_highlight_text3_chunk0" title="choonkeat@58.185.xxx.xxx Wed, 02 Jan 2008 04:46:00 GMT" style="background-color: rgb(255, 255, 179);" class="hilite_chunk_wrapper k_highlight_text3 k_highlight k_commentter k_coupling3"&gt;That one little ’;’ was the cause of some serious pain&lt;/span&gt; for people since it’s actually not a proper request the way they interpret it.  Requests with ’;’ in them are considered path parameters which are kind of like query parameters.  Koz and &lt;span class="caps"&gt;DHH&lt;/span&gt; and crew added this, but I told them that’s not right, they should use something else like, uh, oh, maybe fucking &lt;strong&gt;’/’&lt;/strong&gt;.  They ignored me.  Did it anyway.  Then when it was clearly obvious they were wrong (since Mongrel’s got a tight parser) who was out there defending this decision?  Fucking Koz.  &lt;a style="position: relative; top: -2em;" name="shcp4"&gt;&lt;/a&gt;&lt;span id="k_highlight_text4_chunk0" title="choonkeat@58.185.xxx.xxx Wed, 02 Jan 2008 04:46:00 GMT" style="background-color: rgb(255, 255, 179);" class="hilite_chunk_wrapper k_highlight_text4 k_highlight k_commentter k_coupling4"&gt;Great programmers don’t defend stupid, they stamp it out and own up to their mistakes.&lt;/span&gt;&lt;/p&gt;    &lt;p&gt;Fuck you Koz.  You don’t speak.&lt;/p&gt;    &lt;p&gt;Ruby on Rails has become full of people like Koz, with Koz the most senior of the wannabe smarties.  Koz got lucky at best and injected his shitty coding into a good project, fucked it up, and then latched on to security as the way to get more control.  Of course he doesn’t actually know anything about secure coding which is why his code seems to have lots of the bugs (go check out the date parsing shit.  Clue: months don’t always have 30 days).&lt;/p&gt;    &lt;p&gt;When I hang out with the Nitro, &lt;a href="http://www.factorcode.org/"&gt;Factor&lt;/a&gt;, Django, Lua, Python, Lisp, or Mongrel crews I get to talk to super smart guys who have egos for sure, but have mutual respect.  They craft nifty shit I love to play with, are fun to talk with even when I disagree, and don’t say mean shit when I’m not around.&lt;/p&gt;    &lt;p&gt;With Rails I get scrawny cock suckers with carpal tunnel syndrome talking to me like they’re gonna eat my young.  Their feeble &lt;span class="caps"&gt;PHP&lt;/span&gt; infected minds can’t grasp advanced shit like objects or closures.  When you combine stupid businesses with stupid people using a stupid framework based on a big fat fucking lie on a shitty platform you get the perfect storm of dumbfuck where a man like me can’t find work.&lt;/p&gt;    &lt;p&gt;There’s no work for a smart man in a town full of stupid.&lt;/p&gt;    &lt;h2&gt;The Hysteria Of Consultancy&lt;/h2&gt;    &lt;p&gt;Where I work the company is willing to blow huge amounts of money on a consulting firm or hardware, but ends up firing people when times get tight.  It’s a universal mass hysteria that paying $100 – $200  per hour for a group of consultants is preferable to simply hiring good employees.  At the rates companies pay these consultants they could hire 4 full time employees.&lt;/p&gt;    &lt;p&gt;Consultancies used to provide a service by managing the entire project so you didn’t have to do much.  Now with Agile and Pair Programming the consulting firms can dupe clients into helping them make the sausage, provide little to no services, yet still charge insane rates.  What’s impressive is these consulting firms somehow charge rates that are 5 or 6 &lt;strong&gt;times&lt;/strong&gt; what they pay their employees.&lt;/p&gt;    &lt;p&gt;Think about that.  How is it possible that your consulting firm has so much inefficiency they must charge 600% overhead?  Are the services you get &lt;strong&gt;really&lt;/strong&gt; that far above the base pay of that employee?  Why the hell not just hire someone and have a long term learner who’ll be ready to work on anything?&lt;/p&gt;    &lt;p&gt;Accounting, that’s why.  When you hire a Full Time Employee (FTE) you need to account for it and budget them differently than if  you pay a firm for a consultant.  There’s several loop holes in the tax and accounting standards that make a consultant seem cheaper than a regular employee.&lt;/p&gt;    &lt;p&gt;However, this is a mass hysteria.  Eventually people will catch on that the quality they get for the price they pay isn’t there. A smart consultancy will figure out that they could undercut these idiot firms by simply using technology properly to cut costs and reduce overhead.  Hell, you’ve got 600% overhead to work with. Should be easy to pull a Southwest Airlines on them.&lt;/p&gt;    &lt;p&gt;Let’s take ThoughtWorks as a classic example of the hysteria.  They decided to get into the Ruby on Rails game and went full bore.  I was telling people right when Rails came out that doing it for internal projects at big companies would be a huge money maker.  Nobody believed me, and now rather than all my smart friends working on cool applications for big money I have ThoughtWorks fucking up my party.&lt;/p&gt;    &lt;p&gt;Before you continue this part of the rant ask yourself a question:&lt;/p&gt;    &lt;p&gt;How did ThoughtWorks go from 0% Rails business to 60% Rails in just a few short months, but somehow didn’t hire that many top notch Ruby guys?  Remember, if 60% of your business is Rails then 60% of your people need Rails training or else you have to hire more people. If they didn’t hire any more people than that means…the people they had were retrained.  With two week training courses.  Huh?  How does that make them experts?&lt;/p&gt;    &lt;p&gt;What happens if you do that is you have a group of former C# and Java guys running around writing shitty Ruby code and training on the client’s dime for huge fees.&lt;/p&gt;    &lt;p&gt;Think for a second.  ThoughtWorks charges its clients a premium price for expertise.  They claim that their Agile methods and development expertise means they’ll produce a great result.  This is why you pay them a premium.  However, they reserve the right to control staffing, and you have very little say in the skills of the people they place.&lt;/p&gt;    &lt;p&gt;Continue the logic further my friends with this little walk through consulting practices:&lt;/p&gt;    &lt;ol&gt;&lt;li&gt;TW figures out it can make a mint doing RoR projects for dumb ass MBAs at dumbass companies.&lt;/li&gt;&lt;li&gt;TW goes for it and gets 60% of its business now all RoR.&lt;/li&gt;&lt;li&gt;TW realizes that they can’t hire enough Ruby people to do that.  Actually, they didn’t really try too hard since that’d mean paying the new people a fair salary.&lt;/li&gt;&lt;li&gt;Yet, somehow they put 6-20 people on projects and claim that these people are Rails experts with a high standard of quality.  These people actually had two weeks of training.&lt;/li&gt;&lt;li&gt;After each person has been on a project for a few months, they mysteriously get  transitioned to another project, become “sick”, or generally leave.&lt;/li&gt;&lt;li&gt;They are then replaced with someone else who’s training is limited.&lt;/li&gt;&lt;li&gt;During their operations they seem to focus entirely on the process, but very little on the quality of the code.  Sorry guys, but having a 1:4 code:test ratio is not focusing on code quality.  It’s focusing on &lt;strong&gt;test&lt;/strong&gt; quality.&lt;/li&gt;&lt;li&gt;Finally, when your project is in the dumps and it takes months to get simple things done you realize that you’ve been paying ThoughtWorks a premium for what is effectively a bunch of total newbies who are only there for a few months before they roll off.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;You my friend got fucked in the ass.&lt;/strong&gt;  Congratulations because all the idiots who paid ThoughtWorks 6x times salary for junior ass wipes got taken and simply paid to train ThoughtWorks’ new crew.&lt;/li&gt;&lt;/ol&gt;    &lt;p&gt;How do I know this?  Well, I’ve been a consultant for years and recently I’ve taken over two ThoughtWorks Ruby on Rails projects.  &lt;span class="caps"&gt;BTW&lt;/span&gt;, they claim they don’t do “Ruby on Rails” projects, but actually do “Ruby” projects.  They also claim they don’t do “eXtreme Programming” but do “Agile”.  Doing this little semantics juggle means you can never hold them to any standard of quality.&lt;/p&gt;    &lt;p&gt;In the two projects I’ve taken from ThoughtWorks I found mountains of horrible, horrible code.  They of course try to pull the classic “there’s many ways to do everything in programming” but this time they kind of get caught because Ruby on &lt;strong&gt;Rails&lt;/strong&gt; means stay on the Rails.  There &lt;strong&gt;is&lt;/strong&gt; an established best practice way to build web applications with &lt;strong&gt;Rails&lt;/strong&gt; and that’s the entire point of the system.  When ThoughtWorks fucked up these projects they did it in such a completely deviated way that it was impossible to defend.&lt;/p&gt;    &lt;p&gt;Additionally, the people they placed on these projects were not well trained at all, had no idea about simple Ruby idioms let alone good design, and spent more of their time drinking and having fun than actually getting shit done.  At the last project they actually had bottles of Pedialyte in the fridge to help with their hangovers after wild nights partying.&lt;/p&gt;    &lt;p&gt;After ThoughtWorks left the most recent project we revamped the team.  We got rid of pair programming, cut down the number of tests, started cleaning more and more code out, got rid of their shitty tools, and we all started leaving at 6pm. What happens?&lt;/p&gt;    &lt;p&gt;We &lt;strong&gt;doubled&lt;/strong&gt; our productivity with &lt;strong&gt;fewer&lt;/strong&gt; people.  Yes, that is a verifiable metrically validated claim I can back up.  Just like the horrible quality of the code, their idiotic defense of it, and their very bad job at designing even the basics of the business model required.  Remember, they are testing and svn whores so their failure on these two projects is very well documented.&lt;/p&gt;    &lt;p&gt;However, what really ticks me off about ThoughtWorks isn’t the way they fucked up  these two projects.  I’d take ThoughtWorks over &lt;span class="caps"&gt;IBM&lt;/span&gt;, Accenture, or BearingPoint any day of the week.  ThoughtWorks’ competitors are even worse, so I’ll take the lesser of ten evils any day.  What pisses me off is that I know they’re responsible for turning Ruby on Rails into the next Visual Basic.  Why?  Because they wrote in a position paper that Ruby on Rails was like Visual Basic.  Yes, they did that. They compared Ruby on Rails to probably the most technically vilified language in the history of computing.&lt;/p&gt;    &lt;p&gt;Here’s my prediction about ThoughtWorks:  They’ll continue to screw customers over by training their employees on their client’s dime and write tons of fucked up software.  The bad results from ThoughtWorks will kill Ruby on Rails for companies as these companies are left with a bad taste from bad implementations.&lt;/p&gt;    &lt;h2&gt;From Industry to Corporate&lt;/h2&gt;    &lt;p&gt;ThoughtWorks is simply taking advantage of a pattern where new technology goes from fringe to corporate and then dies.  A great example of this is Java Portals.  They started out on the fringe at universities and non-profits, where they were mildly successful.  Then they migrated into the corporate world where they were complete disasters, and finally the risk averse government picked them up for even less success.&lt;/p&gt;    &lt;p&gt;How do I know this?  I worked on portals for their entire life and followed them through this process.  Go look.  I did some of the first work on uPortal, then I worked on portals in companies, and then worked on them for the government.&lt;/p&gt;    &lt;p&gt;Ruby on Rails is following the same trajectory I’m afraid, and ThoughtWorks is  milking it while they can.  First it started on the fringe in start-ups and a  few lonely places where it’s having mixed success (mostly due to the poor performance of the Ruby platform).  Now it’s getting adopted internally at companies where of course it’ll get fucked up again and die off.  After that it’ll move to the government sector where it will languish along with it’s new found buddy &lt;span class="caps"&gt;COBOL&lt;/span&gt;.&lt;/p&gt;    &lt;p&gt;Oh, did I mention ThoughtWorks compared Rails to &lt;span class="caps"&gt;COBOL&lt;/span&gt; as well?  Awesome.&lt;/p&gt;    &lt;h2&gt;Fighting Consulting Firms&lt;/h2&gt;    &lt;p&gt;I have a few pieces of advice for people about to hire any company like ThoughtWorks.  There’s just a few simple strategies you can follow to  make sure you get the most out of them and get your money’s worth:&lt;/p&gt;    &lt;ol&gt;&lt;li&gt;Make sure you have the right to see every resume and interview each consultant they place.  Treat them like new hires and don’t let anyone who’s not worth the rate you’re paying on the team.&lt;/li&gt;&lt;li&gt;Demand a variable rate based on the position of the person and their experience.&lt;/li&gt;&lt;li&gt;Demand that no employees can leave the project to work on another  project.  These placements have to be for the life of the project  or until the employee quits.&lt;/li&gt;&lt;li&gt;Require that you have the right to have someone replaced if they are not immediately capable.  Part of what you’re paying is that a ThoughtWorker should be able to drop in commando style and just start working.  The reality is they are usually totally lost anyway.&lt;/li&gt;&lt;li&gt;Seriously consider recruiting one full time employee as a team lead, another as a project manager, and then staff the rest of your team with independent consultants.  You’ll find that you get more control and better quality at a lower price.&lt;/li&gt;&lt;/ol&gt;    &lt;p&gt;Finally, a company like ThoughtWorks uses bizarre socialization processes and weird shit like &lt;a href="http://en.wikipedia.org/wiki/Neuro-linguistic_programming"&gt;Neuro-Linguistic Programming&lt;/a&gt; to enslave their employees into working more hours than needed.  That shit about “can’t leave with a broken build”, pair programming, hazing rituals, firing people who don’t conform, and other unprofessional behavior mostly exists to make employees pliable pawns.&lt;/p&gt;    &lt;p&gt;Why?  Because ThoughtWorks pays these people a salary that is fixed and considered a sunk cost.  If they pay someone 60k/year and that person works 40 hours/week then they are paying them about $29/hour.  If they convince this idiot to work 60 hours/week then they are basically paying the moron $19/hour.  If they can push them to 80 hour/week then these idiots are actually making $14/hour.  You can make $29/hour managing a fast food joint.&lt;/p&gt;    &lt;p&gt;The further and harder ThoughtWorks (or any consulting firm) pushes its employees the more money they make because then they charge the client &lt;strong&gt;for each fucking hour&lt;/strong&gt;.  Get it?  If they push an employee to 60/week they not only reduce the cost of that employee but &lt;strong&gt;also&lt;/strong&gt; increase the billable hours.  Hell, even if they don’t charge for those hours they still make more money just by reducing costs.&lt;/p&gt;    &lt;p&gt;Now I’ll admit I didn’t see ThoughtWorks do this quite as much as I’ve seen &lt;span class="caps"&gt;IBM&lt;/span&gt; Global Services, Accenture, and BearingPoint do it, but they still do it.  My observation about ThoughtWorks is they’re really really &lt;strong&gt;really&lt;/strong&gt; fucking weird about it.  I saw them pull passive aggressive shit like picking on a single employee high-school-nerd-vs-jock style until he conforms or quits.&lt;/p&gt;    &lt;p&gt;What’s this got to do with your project?  Well, if you have a mix of ThoughtWorks employees and your own then be careful that the ThoughtWorkers don’t warp your employees as well.  I’ve seen it once already where a room full of ThoughtWorkers would thrash and trash on one poor employee simply because he disagreed with their approach to a problem.  Or, having special boards on the wall with “How Many Times Frank Is Late”.  Or, holding “dev lunches” (which I called “dev &lt;strong&gt;lynches&lt;/strong&gt;“) where they thrash client employees with alternative opinions in order to maintain their stupid operations.&lt;/p&gt;    &lt;p&gt;I’ve seen it, and they do it.  Be careful of it as you’ll lose people who are smart and not susceptible to that crap, or you’ll have a  bunch of brain washed idiots at the end of the project.  It’s also a horrible way to treat a client so don’t put up with it.&lt;/p&gt;    &lt;h2&gt;More To Come&lt;/h2&gt;    &lt;p&gt;This is a long rant I’m writing in serial form.  Stay tuned for more  about Ruby conferences and why they suck, and why the Pickaxe book is what killed Ruby.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;source: http://www.zedshaw.com.sharedcopy.com/rants/51489cec9386f7c13f69b3a58cd50b02.html&lt;br /&gt;&lt;/p&gt;         &lt;/div&gt;       &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-3016123821303524189?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/3016123821303524189/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=3016123821303524189' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/3016123821303524189'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/3016123821303524189'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2009/11/rails-is-ghetto-original-copy.html' title='Rails Is A Ghetto Original Copy'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-8200250640863183890</id><published>2009-11-20T16:38:00.000-08:00</published><updated>2009-11-20T16:50:58.533-08:00</updated><title type='text'>Hibernate Tips and FAQ</title><content type='html'>Hello! Well, I encountered many problems when using Hibernate. So I'm going to post here how I solved the problems.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LazyInitializationException&lt;/span&gt;&lt;br /&gt;When you commit a transaction the session is closed. So I was getting LazyInitializationException in my Swing application. You don't need to commit after reading operations. And I was right. I removed the commit after the read and the problem was gone.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Cannot fetch multiple begs&lt;/span&gt;&lt;br /&gt;The name of the error was something like this, cannot fetch multiple begs. It was because I had in the same class two Lists with fetch type equals Eager. I just changed one to Set and problem solved.&lt;br /&gt;&lt;br /&gt;I can't remember more errors, but for sure they will appear. Well, I hope not. xD&lt;br /&gt;&lt;br /&gt;If you had some problem that you could solve, share your solution here!!!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-8200250640863183890?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/8200250640863183890/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=8200250640863183890' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/8200250640863183890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/8200250640863183890'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2009/11/hibernate-tips-and-faq.html' title='Hibernate Tips and FAQ'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-948207745434842051</id><published>2009-11-11T16:50:00.000-08:00</published><updated>2009-11-11T16:53:17.070-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='technology should try to achieve xml suck'/><title type='text'>What Technology Should (and Shouldn't) Try to Achieve</title><content type='html'>source-&gt;&lt;a href="http://www.oreillynet.com/xml/blog/2002/08/does_xml_suck_revisited.html"&gt; http://www.oreillynet.com/xml/blog/2002/08/does_xml_suck_revisited.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2 class="post-title"&gt;&lt;a class="permalink" href="http://www.oreillynet.com/xml/blog/2002/08/does_xml_suck_revisited.html"&gt;"Does XML Suck?" Revisited&lt;/a&gt;&lt;/h2&gt; &lt;span class="ISI_IGNORE"&gt;   &lt;/span&gt;     Tuesday August  6, 2002 &lt;span class="ISI_IGNORE"&gt;11:33AM&lt;/span&gt;&lt;br /&gt;by &lt;a href="http://www.oreillynet.com/pub/au/943"&gt;Jeff Bone&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;XML-bashing seems to have become a semi-popular passtime of late…  of the many critiques I’ve come across, &lt;a href="http://xmlsucks.org/but_you_have_to_use_it_anyway/does-xml-suck.pdf"&gt;this presentation&lt;/a&gt; is one of the best. Here are a few hopefully reasonable comments addressing the whole anti-XML sentiment that’s floating around and this critique in particular. &lt;/p&gt; &lt;p&gt;Up front… I’m not particularly an XML advocate; I’ve been involved in none of the XML specifications or working groups. However, while I share some of the same feelings that somehow XML is rather “grotty,” I’ve developed what I hope is a reasonable position on the matter. &lt;/p&gt;&lt;p&gt;Some of Aaron’s arguments are pretty good, but some rest on a few assumptions and philosophical positions that are, IMHO, erroneous. &lt;/p&gt;&lt;p&gt;&lt;b&gt;What Technology Should (and Shouldn’t) Try to Achieve&lt;/b&gt; &lt;/p&gt;&lt;p&gt;All instances of technology have one meta-purpose: to accomplish or achieve some function, feature, or design requirement. That’s it. It’s not the job of a technology to be beautiful, aesthetically pleasing, etc. In fact, there’s *no such thing* as beautiful or aesthetically pleasing technology. We technologists are prone to thinking that technology can have these qualities because we “feel” that some technologies do; however, this is a trap — one that we technologists often fall into. &lt;/p&gt;&lt;p&gt;A technology should accomplish what it is designed to accomplish in a reasonably efficient manner, with minimal cognitive overhead. Let’s break that down: technology should be designed to accomplish some purpose. It should not attempt to accomplish things for which it is not explicitly and specifically designed. (A desire to make our artifacts very general is another pervasive trap that us techies fall into.) It should fulfill its design in a reasonably efficient manner; this means that it shouldn’t be obviously and grossly inefficient, i.e., some other design should not be able to fulfill the specific requirements in a significantly more efficient manner. Efficiency is a loosey-goosey term, but it can mean computational efficiency, storage or bandwidth efficiency, ease-of-use, or any combination of the above and other types of efficiency. Efficiency is likely to be domain-specific, so the statement needs be interpreted in the context of the particular application. Minimal cognitive overhead means that the simplest design that achieves the design requirements reasonably efficiently wins. &lt;/p&gt;&lt;p&gt;All other considerations about a technology are illusionary, insignificant, unimportant. A technology that does what it is supposed to in an efficient manner with no more than a minimum amount of complexity is “good enough” — and there’s no such thing as “better than good enough.” The mistaken belief that there is such a thing is what leads to a chronic and puzzling thing in the marketplace: technologies that are deemed “best of breed” (i.e., exceed their design requirements on somebody’s subjective quality assessment) *ALWAYS* underperform “inferior” but adequate technologies in the market. (NeXT, Beta, Objective C, the Mac, Be, Newton, etc. etc. etc.) &lt;/p&gt;&lt;p&gt;Aaron falls into this trap when he describes XML as “technologically terrible.” He’s expressing an aesthetic opinion dressed up as a technological argument. The question we should ask when evaluating XML (or any technology) is: “can something else do as good or better a job on the relevant / important dimensions?” The answer for XML *might* be “yes”, but in absence of any compelling evidence to the contrary it’s probably “no.” &lt;/p&gt;&lt;p&gt;&lt;b&gt;“Does XML Suck?” Revisited&lt;/b&gt; &lt;/p&gt;&lt;p&gt;Aaron lists “verbosity” as one of the problems with XML. He’s not alone in that complaint. However, this criticism is off base for several reasons. First, it’s important to distinguish between XML-the-syntax and XML-the-datastructure. Complaints about syntax are, generally, pretty silly. Two otherwise equivalent syntaxes for something should be considered the same; and a range of techniques exist for reducing the verbosity of XML (including judicious use of namespaces and schemas, as well as things like binary and indexed representations.) Complaining about XML’s verbosity is a generalization from some certain bad examples of XML. And: some researchers at IBM Almaden about two years ago [lost the ref, anybody] showed that a reasonably efficient XML representation of something was IIRC same-order the size of the minimal representation / encoding of something that carried the same amount of structural and semantic information. That is, with appropriately efficient use of namespaces, etc. XML will be less than 10x the minimal compressed size of the same info given any non-lossy compression scheme. In my experience, differences of that order can largely be ignored in almost all systems. (It’s the O(n^2), O(n!) etc. stuff that we’ve got to worry about.) &lt;/p&gt;&lt;p&gt;Aaron also emphasizes that XML isn’t the most human-readable representation. But that assumes that XML is intended to be read / written by humans. It’s tempting to make that assumption, but IMHO it’s incorrect: we make that assumption because HTML is often read / written by humans. However, just as *more* HTML is created / processed by software than by people, so too (and even moreso) is more XML created / processed by software than people. The nice thing about both is that they *can* — when necessary — be processed by humans. XML represents a nice tradeoff between human readability and efficient machine representation. &lt;/p&gt;&lt;p&gt;Aaron’s arguments about complexity sound reasonable on the surface, however… Complexity is a tough thing to pin down. In computer science we have good (at least adequate) tools for analyzing and understanding computational complexity e.g. time-space tradeoffs, algorithmic complexity, etc. Information theory gives us some tools for dealing with information complexity… But we have very poor or no tools for analyzing and quantitatively addressing problems of dynamic complexity of component interactions in systems, representational complexity of data structures, expressivity of languages, etc. I’ve spent over a year trying to create a theory of the former (compositional complexity in software architectures) and let me tell you, complexity is a complex notion. ;-) &lt;/p&gt;&lt;p&gt;Representational complexity and expressivity is an even less studied and less understood area, and while Aaron may in fact be right his argument isn’t well supported. And there are hints from information theory — such as the size order of XML vs. theoretic optima — that indicate that it’s wrong. &lt;/p&gt;&lt;p&gt;If Aaron can state exactly what he means by “complexity” and quantify / generalize his argument, it would be significant not only as XML criticism but as an important result in computer science. &lt;/p&gt;&lt;p&gt;The “acronym proliferation” problem is very real, but it’s a function of where this technology is in its lifecycle and the amount of attention it has received. It’s not surprising that there’s a “fan-out” of overlapping applications / standards / etc. related to XML — it’s relatively early, very general, and lots of people are trying to do stuff. That leads to quite a bit of noise and frustration but — inevitably — there will be a “fan-in” to a few general, standard tools for various things. Aaron even recognizes that this is happening: “Even here, the situation is improving.” &lt;/p&gt;&lt;p&gt;The bottom line is this: it *might* be possible to design a similar representational mechanism that accomplishes all the things that XML accomplishes — i.e., multidimensional reference structures with arbitrary attribution and strong typing… But *today* there are no existence proofs of such alternatives and, indeed, I believe that if there were they would strongly resemble XML except in the trivial details. In the absence of proposals for such alternatives, it would seem that criticizing XML is a rather empty exercise. &lt;/p&gt;&lt;p&gt;And Aaron recognizes the most important argument *for* XML — its socioeconomic benefits. “Everybody’s doing it” is a very *good* argument for any technology; systems that can communicate through such a mechanism grow in value with the square of the number of components, per Metcalfe’s law. Anyone using other idiosyncratic technologies to accomplish some or all of the same things actually inhibit the overall growth of value of the system. &lt;/p&gt;&lt;p&gt;&lt;em&gt;What do you think?  Does XML suck?  Is it horribly inefficient?  Are there better alternatives that accomplish the same thing?&lt;/em&gt;&lt;/p&gt;source-&gt;&lt;a href="http://www.oreillynet.com/xml/blog/2002/08/does_xml_suck_revisited.html"&gt; http://www.oreillynet.com/xml/blog/2002/08/does_xml_suck_revisited.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-948207745434842051?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/948207745434842051/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=948207745434842051' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/948207745434842051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/948207745434842051'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2009/11/what-technology-should-and-shouldnt-try.html' title='What Technology Should (and Shouldn&apos;t) Try to Achieve'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-2594071257787779043</id><published>2009-10-26T08:29:00.000-07:00</published><updated>2009-10-26T08:39:50.246-07:00</updated><title type='text'>Books I read</title><content type='html'>Books I read:&lt;br /&gt;&lt;br /&gt;JAVA:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/Just-Java-TM-2-6th/dp/0131482114"&gt;Just Java 2 6th edition&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/SCJP-Certified-Programmer-Java-310-065/dp/0071591060"&gt;SCJP Sun Certified  Programmer for Java 6&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/Core-Java-TM-I-Fundamentals-7th/dp/0131482025"&gt;Core Java 2, Volume I -- Fundamentals. 7th edition&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;C:&lt;br /&gt;&lt;a href="http://www.amazon.com/Practical-Programming-3rd-Steve-Oualline/dp/1565923065"&gt;Practical C Programming, 3rd edition&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;PROGRAMMING IN GENERAL:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.amazon.com/gp/product/1430219483"&gt;Coders at Work&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-2594071257787779043?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/2594071257787779043/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=2594071257787779043' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2594071257787779043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2594071257787779043'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2009/10/books-i-read.html' title='Books I read'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-410058462355948477</id><published>2009-04-02T12:23:00.000-07:00</published><updated>2009-04-02T12:29:37.032-07:00</updated><title type='text'>Regular Expressions</title><content type='html'>date 04/02/09&lt;br /&gt;&lt;br /&gt;source http://weblogtoolscollection.com/regex/regex.php&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-410058462355948477?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/410058462355948477/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=410058462355948477' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/410058462355948477'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/410058462355948477'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2009/04/regular-expressions.html' title='Regular Expressions'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-220213487382698452</id><published>2009-01-06T16:08:00.000-08:00</published><updated>2009-01-06T16:29:03.395-08:00</updated><title type='text'>Naruto Opening</title><content type='html'>&lt;h3&gt;Naruto Beginning theme 1&lt;/h3&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ezJYEjHi0aI&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/ezJYEjHi0aI&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;h3&gt;Naruto Shippuuden Opening Song [Hero's Comeback]&lt;/h3&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/yIzUTz_SNf4&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/yIzUTz_SNf4&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;h3&gt;Naruto Opening 2- Haruka Kanata&lt;/h3&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/UqTxzOVRJOk&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/UqTxzOVRJOk&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;h3&gt;Naruto Opening 3&lt;/h3&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/CVcxVCmO3Lc&amp;hl=en&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/CVcxVCmO3Lc&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-220213487382698452?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/220213487382698452/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=220213487382698452' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/220213487382698452'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/220213487382698452'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2009/01/naruto-opening.html' title='Naruto Opening'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-5427216205610630697</id><published>2008-12-18T07:15:00.000-08:00</published><updated>2010-06-12T15:32:13.977-07:00</updated><title type='text'>javascript</title><content type='html'>&lt;p&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-size:180%;"&gt;JavaScript Stuff&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;********************************&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold;"&gt;&lt;span style="font-size:130%;"&gt;Curly Braces Convention&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;Use the Java convention and not others like C#. You may come across hard to catch problems.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;********************************&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;About the "new" operator&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;I don't use "new" anymore. I think it's just too dangerous.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;Doug Crockford. 00:25:35&lt;br /&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.youtube.com/watch?v=hQVTIJBZook"&gt;&lt;span style="font-weight: bold;"&gt;http://www.youtube.com/watch?v=hQVTIJBZook&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;*******************************&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;Creating an Object&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold; font-style: italic;"&gt;First way:&lt;/p&gt;&lt;p style="font-weight: bold; font-style: italic;"&gt;&lt;span style="font-weight: normal;"&gt;var person = {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: normal;"&gt;    name:    'Leandro',&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: normal;"&gt;    age:    23&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: normal;"&gt;};&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: normal;"&gt;document.write(person);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: normal;"&gt;for(var p in person) {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: normal;"&gt;    document.write(p + ' = ' + person[p]);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: normal;"&gt;}&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold; font-style: italic;"&gt;&lt;br /&gt;&lt;span style="font-weight: normal;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="font-weight: bold; font-style: italic;"&gt;Second way:&lt;/p&gt;&lt;p&gt;var person = new Object();&lt;br /&gt;&lt;br /&gt;person.name = 'Your name';&lt;br /&gt;person.age = 80;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;****************************&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-weight: bold;"&gt;Iterating through an Object or Array&lt;/span&gt; -&lt;br /&gt;&lt;br /&gt;var person = new Object();&lt;br /&gt;&lt;br /&gt;person.name = 'Leandro';&lt;br /&gt;person.age = 23;&lt;br /&gt;&lt;br /&gt;for(var p in person) {&lt;br /&gt;  document.write(p + ' = ' + person[p]);&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;***************************&lt;br /&gt;&lt;/p&gt;&lt;p&gt;date 02/01/2010&lt;/p&gt;&lt;p&gt;Hi! I found an interesting thing about JavaScript today.&lt;/p&gt;&lt;p&gt;I was trying to set the value of a text field in the popup window, but&lt;br /&gt;I was not having success.&lt;/p&gt;&lt;p&gt;The problem was that the page didn't have render yet, so I couldn't access the field.&lt;/p&gt;&lt;p&gt;So, instead of the parent window try to access the pop up window, I made the popup window access the parent window. =)&lt;br /&gt;&lt;/p&gt;&lt;p&gt;--------------------------------------------------------&lt;br /&gt;&lt;/p&gt;&lt;p&gt;date 12/24/08&lt;/p&gt;&lt;h3&gt;Fixed tooltip&lt;/h3&gt;&lt;p&gt;&lt;br /&gt;There are lot of scripts about tooltip available &lt;a href="http://www.dynamicdrive.com/dynamicindex5/"&gt;dynamicdrive&lt;/a&gt; is a good example. But I need one that the tooltip would be fixed (positon: absolute) and I could pass the mouse over it. I didn't find one that do that (i didn't search too much =D), and what I found made javascript look complex, at least to me (do you think javascript is complex?), and would be difficult to modifie, so I create this one.&lt;br /&gt;It's a very readable code. If you have any doubts or can improve it, post a comment here.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="http://www.webdeveloper.com/forum/showthread.php?p=962797#post962797"&gt;http://www.webdeveloper.com/forum/showthread.php?p=962797#post962797&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;/************************************&lt;br /&gt;date 22/12/08&lt;br /&gt;How to access a element in a iframe&lt;br /&gt;both with Firefox (the best) and IE (the worst)&lt;br /&gt;&lt;br /&gt;/****************************************************&lt;br /&gt;date: 18/12/08&lt;br /&gt;&lt;p&gt;Most modern browsers support cookies. However, a user can usually also choose whether cookies should be used or not. The following are common options:&lt;sup id="cite_ref-9" class="reference"&gt;&lt;a href="http://en.wikipedia.org/wiki/HTTP_cookie#cite_note-9" title=""&gt;&lt;span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/sup&gt;&lt;/p&gt; &lt;ol&gt;&lt;li&gt;To enable or disable cookies completely, so that they are always accepted or always blocked.&lt;/li&gt;&lt;li&gt;To allow the user to see the cookies that are active with respect to a given page by typing&lt;/li&gt;&lt;/ol&gt; &lt;pre&gt;&lt;code&gt;javascript:alert("Cookies: "+document.cookie)&lt;/code&gt;&lt;br /&gt;&lt;/pre&gt; &lt;p&gt;in the browser URL field. Some browsers incorporate a cookie manager for the user to see and selectively delete the cookies currently stored in the browser.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-5427216205610630697?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/5427216205610630697/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=5427216205610630697' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/5427216205610630697'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/5427216205610630697'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/12/javascript.html' title='javascript'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-9181207959977375831</id><published>2008-12-10T02:57:00.000-08:00</published><updated>2008-12-10T03:37:16.396-08:00</updated><title type='text'>Gloria Estefan - Reach</title><content type='html'>&lt;table&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;Some dreams live on in time forever&lt;br /&gt;those dreams, you want with&lt;br /&gt;all your heart&lt;br /&gt;&lt;br /&gt;and I'll do whatever it takes&lt;br /&gt;follow through with the promise I made&lt;br /&gt;put it all on the line&lt;br /&gt;what I hoped for at last would be mine&lt;br /&gt;&lt;br /&gt;if I could reach, higher&lt;br /&gt;just for one moment touch the sky&lt;br /&gt;from that one moment in my life&lt;br /&gt;I'm gonna be stronger&lt;br /&gt;know that I've tried my&lt;br /&gt;very best&lt;br /&gt;I'd put my spirit to the test&lt;br /&gt;if I could reach&lt;br /&gt;&lt;br /&gt;somedays are meant to be&lt;br /&gt;remembered&lt;br /&gt;those days we rise above&lt;br /&gt;the stars&lt;br /&gt;&lt;br /&gt;so I'll go the distance&lt;br /&gt;this time&lt;br /&gt;seeing more the higher I climb&lt;br /&gt;that the more I believe&lt;br /&gt;all the more that this dream&lt;br /&gt;will be mine&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;td&gt;&lt;br /&gt;&lt;br /&gt;Alguns sonhos vivem para sempre no tempo&lt;br /&gt;Aqueles sonhos que você anseia com todo&lt;br /&gt;coração.&lt;br /&gt;&lt;br /&gt;E eu farei o que for preciso&lt;br /&gt;Seguir a diante com a promessa que fiz&lt;br /&gt;Colocar tudo na linha&lt;br /&gt;O que eu esperava, finalmente seria meu&lt;br /&gt;&lt;br /&gt;Seu eu pudesse alcançar, mais alto&lt;br /&gt;Só por um instante tocar o céu&lt;br /&gt;A partir deste momento em minha vida&lt;br /&gt;Eu vou ser mais forte&lt;br /&gt;Sabendo que eu fiz o meu&lt;br /&gt;melhor&lt;br /&gt;Eu colocaria meu espírito a teste&lt;br /&gt;Se eu pudesse alcançar&lt;br /&gt;&lt;br /&gt;Alguns dias são destinados a&lt;br /&gt;serem lembrados&lt;br /&gt;Aqueles dias em que nós&lt;br /&gt;ultrapassamos as estrelas&lt;br /&gt;&lt;br /&gt;Então eu vou à distância&lt;br /&gt;desta vez&lt;br /&gt;Vendo mais, quanto mais eu me elevo&lt;br /&gt;Que quanto mais eu acredito&lt;br /&gt;Mais este sonho&lt;br /&gt;será meu&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/td&gt;&lt;br /&gt;&lt;/tr&gt;&lt;br /&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;a href="http://www.youtube.com/watch?v=_jN5YWevYBk"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/_jN5YWevYBk&amp;amp;hl=en&amp;amp;fs=1&amp;amp;autoplay=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/_jN5YWevYBk&amp;amp;hl=en&amp;amp;fs=1&amp;amp;autoplay=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-9181207959977375831?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/9181207959977375831/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=9181207959977375831' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/9181207959977375831'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/9181207959977375831'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/12/gloria-estefan-reach.html' title='Gloria Estefan - Reach'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-5523921450689788816</id><published>2008-12-07T13:15:00.000-08:00</published><updated>2008-12-07T13:31:06.480-08:00</updated><title type='text'>JAR files</title><content type='html'>&lt;p&gt;&lt;a name="N10068"&gt;&lt;span class="atitle"&gt;jar tutorial &lt;/span&gt;&lt;/a&gt;&lt;span class="atitle"&gt;&lt;a href="http://java.sun.com/docs/books/tutorial/deployment/jar/index.html"&gt;http://java.sun.com/docs/books/tutorial/deployment/jar/index.html&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;JAR File Specification &lt;a href="http://java.sun.com/j2se/1.5.0/docs/guide/jar/jar.html"&gt;http://java.sun.com/j2se/1.5.0/docs/guide/jar/jar.html&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a name="N10068"&gt;&lt;span class="atitle"&gt;//////////////////******************************************&lt;br /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a name="N10068"&gt;&lt;span class="atitle"&gt;source: &lt;/span&gt;&lt;/a&gt;&lt;a href="http://www.ibm.com/developerworks/library/j-jar/index.html"&gt;http://www.ibm.com/developerworks/library/j-jar/index.html&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a name="N10068"&gt;&lt;span class="atitle"&gt;What is a JAR file?&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The JAR file format is based on the popular ZIP file format, and is used for aggregating many files into one. Unlike ZIP files, JAR files are used not only for archiving and distribution, but also for deployment and encapsulation of libraries, components, and plug-ins, and are consumed directly by tools such as compilers and JVMs. Special files contained in the JAR, such as manifests and deployment descriptors, instruct tools how a particular JAR is to be treated.&lt;/p&gt;  &lt;p&gt;A JAR file might be used:&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;For distributing and using class libraries&lt;/li&gt;&lt;li&gt;As building blocks for applications and extensions&lt;/li&gt;&lt;li&gt;As deployment units for components, applets, or plug-ins&lt;/li&gt;&lt;li&gt;For packaging auxiliary resources associated with components&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;The JAR file format provides many benefits and features, many of which are not provided with a traditional archive format such as ZIP or TAR. These include: &lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;b&gt;Security.&lt;/b&gt; You can digitally sign the contents of a JAR file. Tools that recognize your signature can then optionally grant your software security privileges it wouldn't otherwise have, and detect if the code has been tampered with.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Decreased download time.&lt;/b&gt; If an applet is bundled in a JAR file, the applet's class files and associated resources can be downloaded by a browser in a single HTTP transaction, instead of opening a new connection for each file.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Compression.&lt;/b&gt; The JAR format allows you to compress your files for efficient storage.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Transparent platform extension.&lt;/b&gt; The Java Extensions Framework provides a means by which you can add functionality to the Java core platform, which uses the JAR file for packaging of extensions. (Java 3D and JavaMail are examples of extensions developed by Sun.)&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Package sealing.&lt;/b&gt; Packages stored in JAR files can be optionally &lt;i&gt;sealed&lt;/i&gt; to enforce version consistency and security. Sealing a package means that all classes defined in that package must be found in the same JAR file.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Package versioning.&lt;/b&gt; A JAR file can hold data about the files it contains, such as vendor and version information.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;Portability.&lt;/b&gt; The mechanism for handling JAR files is a standard part of the Java platform's core API.&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;a name="N100BD"&gt;&lt;span class="smalltitle"&gt;Compressed and uncompressed JARs&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The &lt;code&gt;jar&lt;/code&gt; tool (see &lt;a href="http://www.ibm.com/developerworks/library/j-jar/index.html#jartool"&gt;The &lt;code&gt;jar&lt;/code&gt; tool&lt;/a&gt; for details) compresses files by default. Uncompressed JAR files can generally be loaded more quickly than compressed JAR files, because the need to decompress the files during loading is eliminated, but download time over a network may be longer for uncompressed files.&lt;/p&gt;  &lt;p&gt;&lt;a name="N100D4"&gt;&lt;span class="smalltitle"&gt;The META-INF directory&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Most JAR files contain a META-INF directory, which is used to store package and extension configuration data, such as security and versioning information. The following files or directories in the META-INF directory are recognized and interpreted by the Java 2 platform for configuring applications, extensions, and class loaders:&lt;/p&gt;  &lt;ul&gt;&lt;li&gt;&lt;b&gt;MANIFEST.MF.&lt;/b&gt; The &lt;i&gt;manifest file&lt;/i&gt; defines the extension- and package-related data.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;INDEX.LIST.&lt;/b&gt; This file is generated by the new &lt;code&gt;-i&lt;/code&gt; option of the &lt;code&gt;jar&lt;/code&gt; tool and contains location information for packages defined in an application or extension. It is part of the JarIndex implementation and used by class loaders to speed up the class loading process.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;i&gt;xxx&lt;/i&gt;.SF.&lt;/b&gt; This is the signature file for the JAR file.  The placeholder &lt;i&gt;xxx&lt;/i&gt; identifies the signer.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;b&gt;&lt;i&gt;xxx&lt;/i&gt;.DSA.&lt;/b&gt; The signature block file associated with the signature file stores the public signature used to sign the JAR file. &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;&lt;a name="jartool"&gt;&lt;span class="smalltitle"&gt;The &lt;code&gt;jar&lt;/code&gt; tool&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;To perform basic tasks with JAR files, you use the Java Archive Tool (&lt;code&gt;jar&lt;/code&gt; tool) provided as part of the Java Development Kit.  You invoke the &lt;code&gt;jar&lt;/code&gt; tool with the &lt;code&gt;jar&lt;/code&gt; command. Table 1 shows some common applications:&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Table 1. Common usages of the &lt;code&gt;jar&lt;/code&gt; tool&lt;/b&gt; &lt;/p&gt;&lt;table width="100%" border="1" cellpadding="3" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;b&gt;Function&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Command&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Creating a JAR file from individual files&lt;/td&gt;&lt;td&gt;jar cf jar-file input-file...&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Creating a JAR file from a directory&lt;/td&gt;&lt;td&gt;jar cf jar-file dir-name&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Creating an uncompressed JAR file&lt;/td&gt;&lt;td&gt;jar cf0 jar-file dir-name&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Updating a JAR file&lt;/td&gt;&lt;td&gt;jar uf jar-file input-file...&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Viewing the contents of a JAR file&lt;/td&gt;&lt;td&gt;jar tf jar-file&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Extracting the contents of a JAR file&lt;/td&gt;&lt;td&gt;jar xf jar-file&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Extracting specific files from a JAR file&lt;/td&gt;&lt;td&gt;jar xf jar-file archived-file...&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Running an application packaged as an executable JAR file&lt;/td&gt;&lt;td&gt;java -jar app.jar&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;img src="http://www.ibm.com/i/v14/rules/blue_rule.gif" alt="" width="100%" height="1" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table class="no-print" align="right" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr align="right"&gt;&lt;td&gt;&lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="middle"&gt;&lt;img src="http://www.ibm.com/i/v14/icons/u_bold.gif" alt="" width="16" border="0" height="16" /&gt;&lt;br /&gt;&lt;/td&gt;&lt;td valign="top" align="right"&gt;&lt;a href="http://www.ibm.com/developerworks/library/j-jar/index.html#main" class="fbox"&gt;&lt;b&gt;Back to top&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a name="N1018B"&gt;&lt;span class="atitle"&gt;Executable JARs&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;An &lt;i&gt;executable jar&lt;/i&gt; file is a self-contained Java application stored in a specially configured JAR file, which can be executed directly by the JVM without having to first extract the files or set up a class path. To run an application stored in a non-executable JAR, you have to add it to your class path and invoke the application's main class by name. But by using executable JAR files, we can run an application without extracting it or needing to know the main entry point. Executable JARs facilitate easy distribution and execution of Java applications.&lt;/p&gt;  &lt;p&gt;&lt;a name="N10199"&gt;&lt;span class="smalltitle"&gt;Creating executable JARs&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Creating an executable JAR is easy. You begin by placing all your application code in a single directory. Let's say the main class in your application is &lt;code&gt;com.mycompany.myapp.Sample&lt;/code&gt;. You want to create a JAR file that contains the application code and identifies the main class. To do this, create a file called &lt;code&gt;manifest&lt;/code&gt; somewhere (not in your application directory), and add the following line to it:&lt;/p&gt;  &lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;Main-Class: com.mycompany.myapp.Sample&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;Then, create the JAR file like this:&lt;/p&gt;  &lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;jar cmf manifest ExecutableJar.jar application-dir&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;That's all there is to it -- now the JAR file ExecutableJar.jar can be executed using &lt;code&gt;java -jar&lt;/code&gt;. &lt;/p&gt;  &lt;p&gt;An executable JAR must reference all the other dependent JARs it requires through the &lt;code&gt;Class-Path&lt;/code&gt; header of the manifest file. The environment variable CLASSPATH and any class path specified on the command line is ignored by the JVM if the &lt;code&gt;-jar&lt;/code&gt; option is used. &lt;/p&gt;  &lt;p&gt;&lt;a name="N101C9"&gt;&lt;span class="smalltitle"&gt;Launching executable JARs&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Now that we've packaged our application into an executable JAR called ExecutableJar.jar, we can launch the application directly from the file using the following command:&lt;/p&gt;   &lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;java -jar ExecutableJar.jar&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;img src="http://www.ibm.com/i/v14/rules/blue_rule.gif" alt="" width="100%" height="1" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table class="no-print" align="right" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr align="right"&gt;&lt;td&gt;&lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="middle"&gt;&lt;img src="http://www.ibm.com/i/v14/icons/u_bold.gif" alt="" width="16" border="0" height="16" /&gt;&lt;br /&gt;&lt;/td&gt;&lt;td valign="top" align="right"&gt;&lt;a href="http://www.ibm.com/developerworks/library/j-jar/index.html#main" class="fbox"&gt;&lt;b&gt;Back to top&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a name="N101D8"&gt;&lt;span class="atitle"&gt;Package sealing&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Sealing a package within a JAR file means that all classes defined in that package must be found in the same JAR file. This allows the package author to enforce version consistency among packaged classes. Sealing also provides a security measure to detect code tampering.&lt;/p&gt;  &lt;p&gt;To seal a package, add a &lt;code&gt;Name&lt;/code&gt; header for the package, followed by a &lt;code&gt;Sealed&lt;/code&gt; header with value "true" to the JAR manifest file. Just as with executable JARs, you can seal a JAR by specifying a manifest file with the appropriate header elements when the JAR is created, as shown here:&lt;/p&gt;  &lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;Name: com/samplePackage/&lt;br /&gt;Sealed: true&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;The &lt;code&gt;Name&lt;/code&gt; header identifies the package's relative pathname. It ends with a "/" to distinguish it from a filename. Any headers following a &lt;code&gt;Name&lt;/code&gt; header, without any intervening blank lines, apply to the file or package specified in the &lt;code&gt;Name&lt;/code&gt; header.  In the example above, because the &lt;code&gt;Sealed&lt;/code&gt; header occurs after the &lt;code&gt;Name&lt;/code&gt; header without intervening blank lines, the &lt;code&gt;Sealed&lt;/code&gt; header will be interpreted as applying only to the package &lt;code&gt;com/samplePackage&lt;/code&gt;. &lt;/p&gt;  &lt;p&gt;If you try to load a class in a sealed package from another source other than the JAR file in which the sealed package lives, the JVM will throw a &lt;code&gt;SecurityException&lt;/code&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a name="N10218"&gt;&lt;span class="smalltitle"&gt;Packaging for extensions&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Extensions add functionality to the Java platform, and an extensions mechanism is built into the JAR file format. The Extensions mechanism allows JAR files to specify other required JAR files via the &lt;code&gt;Class-Path&lt;/code&gt; headers in the manifest file.&lt;/p&gt;  &lt;p&gt;Let's say that extension1.jar and extension2.jar are two JAR files in the same directory, with the manifest of extension1.jar containing the following header:&lt;/p&gt;  &lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;Class-Path: extension2.jar&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;This header indicates that the classes in extension2.jar serve as &lt;i&gt;extension classes&lt;/i&gt; for purposes of the classes in extension1.jar. The classes in extension1.jar can invoke classes in extension2.jar without extension2.jar having to be part of the class path.&lt;/p&gt;  &lt;p&gt;The JVM effectively automatically adds JARs referenced in a &lt;code&gt;Class-Path&lt;/code&gt; header to the class path when loading a JAR that uses the extension mechanism. However, the extension JAR path is interpreted as a relative path, so in general the extension JAR must be stored in the same directory as the JAR referencing it.&lt;/p&gt;  &lt;p&gt;For example, assume the class &lt;code&gt;ExtensionClient&lt;/code&gt;, which references class &lt;code&gt;ExtensionDemo&lt;/code&gt;, is bundled in a JAR file called ExtensionClient.jar, and that the class &lt;code&gt;ExtensionDemo&lt;/code&gt; is bundled in ExtensionDemo.jar. In order for ExtensionDemo.jar to be treated as an extension, ExtensionDemo.jar must be listed in the &lt;code&gt;Class-Path&lt;/code&gt; header in ExtensionClient.jar's manifest, as follows:&lt;/p&gt;  &lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;Manifest-Version: 1.0&lt;br /&gt;Class-Path: ExtensionDemo.jar&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;The value of the &lt;code&gt;Class-Path&lt;/code&gt; header in this manifest is ExtensionDemo.jar with no path specified, indicating that ExtensionDemo.jar is located in the same directory as the ExtensionClient JAR file. &lt;/p&gt;&lt;br /&gt;&lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;img src="http://www.ibm.com/i/v14/rules/blue_rule.gif" alt="" width="100%" height="1" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table class="no-print" align="right" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr align="right"&gt;&lt;td&gt;&lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="middle"&gt;&lt;img src="http://www.ibm.com/i/v14/icons/u_bold.gif" alt="" width="16" border="0" height="16" /&gt;&lt;br /&gt;&lt;/td&gt;&lt;td valign="top" align="right"&gt;&lt;a href="http://www.ibm.com/developerworks/library/j-jar/index.html#main" class="fbox"&gt;&lt;b&gt;Back to top&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a name="N10259"&gt;&lt;span class="atitle"&gt;Security in JAR files&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;A JAR file can be signed by using the &lt;code&gt;jarsigner&lt;/code&gt; tool or directly through the &lt;code&gt;java.security&lt;/code&gt; API. A signed JAR file is exactly the same as the original JAR file, except that its manifest is updated, and two additional files are added to the META-INF directory, a signature file and a signature block file.&lt;/p&gt;  &lt;p&gt;A JAR file is signed using a certificate stored in the &lt;i&gt;Keystore&lt;/i&gt; database.  Certificates stored in the keystore are protected with a password, which must be provided to the &lt;code&gt;jarsigner&lt;/code&gt; tool to sign a JAR file.&lt;/p&gt;&lt;br /&gt;&lt;a name="N10278"&gt;&lt;b&gt;Figure 1. Keystore database&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;img alt="Keystore Database" src="http://www.ibm.com/developerworks/library/j-jar/keystoredatabase.gif" width="324" height="117" /&gt;&lt;br /&gt;&lt;p&gt;Each signer of a JAR is represented by a signature file with the extension .SF within the META-INF directory of the JAR file. The format of the file is similar to the manifest file -- a set of RFC-822 headers. As shown below, it consists of a main section, which includes information supplied by the signer but not specific to any particular JAR file entry, followed by a list of individual entries which also must be present in the manifest file. To validate a file from a signed JAR, a digest value in the signature file is compared against a digest calculated against the corresponding entry in the JAR file.&lt;/p&gt;&lt;br /&gt;&lt;a name="N1028A"&gt;&lt;b&gt;Listing 1. Manifest and signature files in signed JARs&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;&lt;span class="boldcode"&gt;Contents of signature file META-INF/MANIFEST.MF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Manifest-Version: 1.0&lt;br /&gt;Created-By: 1.3.0 (Sun Microsystems Inc.)&lt;br /&gt;&lt;br /&gt;Name: Sample.java&lt;br /&gt;SHA1-Digest: 3+DdYW8INICtyG8ZarHlFxX0W6g=&lt;br /&gt;&lt;br /&gt;Name: Sample.class&lt;br /&gt;SHA1-Digest: YJ5yQHBZBJ3SsTNcHJFqUkfWEmI=&lt;br /&gt;&lt;br /&gt;&lt;span class="boldcode"&gt;Contents of signature file META-INF/JAMES.SF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Signature-Version: 1.0&lt;br /&gt;SHA1-Digest-Manifest: HBstZOJBuuTJ6QMIdB90T8sjaOM=&lt;br /&gt;Created-By: 1.3.0 (Sun Microsystems Inc.)&lt;br /&gt;&lt;br /&gt;Name: Sample.java&lt;br /&gt;SHA1-Digest: qipMDrkurQcKwnyIlI3Jtrnia8Q=&lt;br /&gt;&lt;br /&gt;Name: Sample.class&lt;br /&gt;SHA1-Digest: pT2DYby8QXPcCzv2NwpLxd8p4G4=&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;&lt;a name="N10297"&gt;&lt;span class="smalltitle"&gt;Digital signatures&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;A digital signature is a signed version of the &lt;code&gt;.SF&lt;/code&gt; signature file. Digital signature files are binary files and have the same filename as the &lt;code&gt;.SF&lt;/code&gt; file but a different extension. The extension varies depending on the type of digital signature -- RSA, DSA, or PGP -- and on the type of certificate used to sign the JAR. &lt;/p&gt;  &lt;p&gt;&lt;a name="N102AA"&gt;&lt;span class="smalltitle"&gt;Keystore&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;To sign a JAR file, you must first have a private key. Private keys and their associated public-key certificates are stored in password-protected databases called &lt;code&gt;keystores&lt;/code&gt;. The JDK contains tools for creating and modifying keystores. Each key in the keystore can be identified by an alias, which is typically the name of the signer who owns the key.&lt;/p&gt;  &lt;p&gt;All keystore entries (key and trusted certificate entries) are accessed with unique aliases. An alias is specified when you add an entity to the keystore using the &lt;code&gt;keytool -genkey&lt;/code&gt; command to generate a key pair (public and private key). Subsequent &lt;code&gt;keytool&lt;/code&gt; commands must use this same alias to refer to the entity.&lt;/p&gt;  &lt;p&gt;For example, to generate a new public/private key pair with the alias "james" and wrap the public key into a self-signed certificate, you would use with the following command:&lt;/p&gt;  &lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;keytool -genkey -alias james -keypass jamespass&lt;br /&gt;     -validity 80 -keystore jamesKeyStore&lt;br /&gt;     -storepass jamesKeyStorePass&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;This command sequence specifies an initial password of "jamespass" required by subsequent commands to access the private key associated with the alias "james" in the keystore "jamesKeyStore." If the keystore "jamesKeyStore" does not exist, &lt;code&gt;keytool&lt;/code&gt; will automatically create it. &lt;/p&gt;   &lt;p&gt;&lt;a name="N102D2"&gt;&lt;span class="smalltitle"&gt;The jarsigner tool&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The &lt;code&gt;jarsigner&lt;/code&gt; tool uses keystore to generate or verify digital signatures for JAR files. &lt;/p&gt;  &lt;p&gt;Assuming you've created the keystore "jamesKeyStore" as in the example above, and it contains a key with alias "james," you can sign a JAR file with the following command:&lt;/p&gt;  &lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;jarsigner -keystore jamesKeyStore -storepass jamesKeyStorePass&lt;br /&gt;       -keypass jamespass -signedjar SSample.jar Sample.jar james&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;This command fetches the key whose alias is "james" and whose password is "jamespass" from the keystore named "jamesKeyStore" with the password "jamesKeyStorePass," and signs the Sample.jar file, creating a signed JAR, SSample.jar. &lt;/p&gt;  &lt;p&gt;The &lt;code&gt;jarsigner&lt;/code&gt; tool can also verify a signed JAR file; this operation is considerably simpler than signing the JAR file. Just execute the following command:&lt;/p&gt;  &lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;jarsigner -verify SSample.jar&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;If the signed JAR file has not been tampered with, the &lt;code&gt;jarsigner&lt;/code&gt; tool will tell you the JAR has been verified; otherwise, it will throw a &lt;code&gt;SecurityException&lt;/code&gt; indicating which files could not be verified.&lt;/p&gt;  &lt;p&gt;JARs can also be signed programmatically using the &lt;code&gt;java.util.jar&lt;/code&gt; and &lt;code&gt;java.security&lt;/code&gt; APIs.  Alternatively, you can use tools such as Netscape Object Signing Tool.&lt;/p&gt;  &lt;p&gt;You can also sign JARs programmatically using the &lt;code&gt;java.util.jar&lt;/code&gt; and &lt;code&gt;java.security&lt;/code&gt; APIs.  (See &lt;a href="http://www.ibm.com/developerworks/library/j-jar/index.html#resources"&gt;Resources&lt;/a&gt; for details). Alternatively, you can use tools such as the Netscape Object Signing Tool.&lt;/p&gt;&lt;br /&gt;&lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;img src="http://www.ibm.com/i/v14/rules/blue_rule.gif" alt="" width="100%" height="1" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table class="no-print" align="right" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr align="right"&gt;&lt;td&gt;&lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="middle"&gt;&lt;img src="http://www.ibm.com/i/v14/icons/u_bold.gif" alt="" width="16" border="0" height="16" /&gt;&lt;br /&gt;&lt;/td&gt;&lt;td valign="top" align="right"&gt;&lt;a href="http://www.ibm.com/developerworks/library/j-jar/index.html#main" class="fbox"&gt;&lt;b&gt;Back to top&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a name="N1031B"&gt;&lt;span class="atitle"&gt;JAR indexing&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;If an application or applet is bundled into multiple JAR files, the class loader uses a simple linear search algorithm to search each element of the class path, which may entail the class loader downloading and opening many JAR files until the class or resource is found. If the class loader tries to find a nonexistent resource, all the JAR files within the application or applet will have to be downloaded. For large network applications and applets this could result in slow start up, sluggish response, and wasted network bandwidth.&lt;/p&gt;  &lt;p&gt;Since JDK 1.3, the JAR file format has supported indexing to optimize the process of searching for classes in network applications, especially applets. The JarIndex mechanism collects the contents of all the JAR files defined in an applet or application and stores the information in an index file in the first JAR file. After the first JAR file is downloaded, the applet class loader will use the collected content information for efficient downloading of JAR files. This directory information is stored in a simple text file named INDEX.LIST in the META-INF directory of the root JAR file.&lt;/p&gt;  &lt;p&gt;&lt;a name="N10329"&gt;&lt;span class="smalltitle"&gt;Creating a JarIndex&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;You can create a JarIndex by specifying the &lt;code&gt;-i&lt;/code&gt; option to the &lt;code&gt;jar&lt;/code&gt; command.  Suppose we have a directory structure as depicted in the following diagram: &lt;/p&gt;&lt;br /&gt;&lt;a name="N1033E"&gt;&lt;b&gt;Figure 2. JarIndex&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;img alt="JarIndex Demo" src="http://www.ibm.com/developerworks/library/j-jar/jarindex.gif" width="329" height="163" /&gt;&lt;br /&gt;&lt;p&gt;You would use the following command to create an index file for JarIndex_Main.jar, JarIndex_test.jar, and JarIndex_test1.jar:&lt;/p&gt;  &lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;jar -i JarIndex_Main.jar JarIndex_test.jar SampleDir/JarIndex_test1.jar&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;The INDEX.LIST file has a simple format, containing the names of the packages or classes contained in each JAR file indexed, as shown in Listing 2:&lt;/p&gt;&lt;br /&gt;&lt;a name="N10357"&gt;&lt;b&gt;Listing 2. Example JarIndex INDEX.LIST file&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td class="code-outline"&gt;&lt;pre class="displaycode"&gt;JarIndex-Version: 1.0&lt;br /&gt;&lt;br /&gt;JarIndex_Main.jar&lt;br /&gt;sp&lt;br /&gt;&lt;br /&gt;JarIndex_test.jar&lt;br /&gt;Sample&lt;br /&gt;&lt;br /&gt;SampleDir/JarIndex_test1.jar&lt;br /&gt;org&lt;br /&gt;org/apache&lt;br /&gt;org/apache/xerces&lt;br /&gt;org/apache/xerces/framework&lt;br /&gt;org/apache/xerces/framework/xml4j&lt;br /&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;table width="100%" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;img src="http://www.ibm.com/i/v14/rules/blue_rule.gif" alt="" width="100%" height="1" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;table class="no-print" align="right" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr align="right"&gt;&lt;td&gt;&lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="middle"&gt;&lt;img src="http://www.ibm.com/i/v14/icons/u_bold.gif" alt="" width="16" border="0" height="16" /&gt;&lt;br /&gt;&lt;/td&gt;&lt;td valign="top" align="right"&gt;&lt;a href="http://www.ibm.com/developerworks/library/j-jar/index.html#main" class="fbox"&gt;&lt;b&gt;Back to top&lt;/b&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a name="N1035E"&gt;&lt;span class="atitle"&gt;Summary&lt;/span&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The JAR format is much more than an archive format; it has many features for improving the efficiency, security, and organization of Java applications. Because these features are built into the core platform, including the compiler and classloader, developers can leverage the power of the JAR file format to simplify and improve their development and deployment processes.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a name="N10068"&gt;&lt;span class="atitle"&gt;source: &lt;/span&gt;&lt;/a&gt;&lt;a href="http://www.ibm.com/developerworks/library/j-jar/index.html"&gt;http://www.ibm.com/developerworks/library/j-jar/index.html&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-5523921450689788816?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/5523921450689788816/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=5523921450689788816' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/5523921450689788816'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/5523921450689788816'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/12/jar-files.html' title='JAR files'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-9188891964094781873</id><published>2008-11-30T07:17:00.000-08:00</published><updated>2008-11-30T07:26:07.314-08:00</updated><title type='text'>Steve Jobs Stanford Commencement Speech 2005</title><content type='html'>source &lt;a href="http://news-service.stanford.edu/news/2005/june15/jobs-061505.html"&gt;http://news-service.stanford.edu/news/2005/june15/jobs-061505.html&lt;/a&gt;&lt;br /&gt;youtube &lt;a href="http://www.youtube.com/watch?v=D1R-jKKp3NA"&gt;http://www.youtube.com/watch?v=D1R-jKKp3NA&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div id="headline"&gt; &lt;span class="dateline"&gt;Stanford Report, June 14, 2005&lt;/span&gt; &lt;h1&gt;'You've got to find what you love,' Jobs says&lt;/h1&gt;   &lt;/div&gt;                          &lt;p&gt;&lt;i&gt;This is the text of the Commencement address by Steve Jobs, CEO of Apple Computer and of Pixar Animation Studios, delivered on June 12, 2005.&lt;/i&gt;&lt;/p&gt; &lt;p&gt;I am honored to be with you today at your commencement from one of the finest universities in the world. I never graduated from college. Truth be told, this is the closest I've ever gotten to a college graduation. Today I want to tell you three stories from my life. That's it. No big deal. Just three stories.&lt;/p&gt; &lt;p&gt;The first story is about connecting the dots.&lt;/p&gt; &lt;p&gt;I dropped out of Reed College after the first 6 months, but then stayed around as a drop-in for another 18 months or so before I really quit. So why did I drop out?&lt;/p&gt; &lt;p&gt;It started before I was born. My biological mother was a young, unwed college graduate student, and she decided to put me up for adoption. She felt very strongly that I should be adopted by college graduates, so everything was all set for me to be adopted at birth by a lawyer and his wife. Except that when I popped out they decided at the last minute that they really wanted a girl. So my parents, who were on a waiting list, got a call in the middle of the night asking: "We have an unexpected baby boy; do you want him?" They said: "Of course." My biological mother later found out that my mother had never graduated from college and that my father had never graduated from high school. She refused to sign the final adoption papers. She only relented a few months later when my parents promised that I would someday go to college.&lt;/p&gt; &lt;p&gt;And 17 years later I did go to college. But I naively chose a college that was almost as expensive as Stanford, and all of my working-class parents' savings were being spent on my college tuition. After six months, I couldn't see the value in it. I had no idea what I wanted to do with my life and no idea how college was going to help me figure it out. And here I was spending all of the money my parents had saved their entire life. So I decided to drop out and trust that it would all work out OK. It was pretty scary at the time, but looking back it was one of the best decisions I ever made. The minute I dropped out I could stop taking the required classes that didn't interest me, and begin dropping in on the ones that looked interesting.&lt;/p&gt; &lt;p&gt;It wasn't all romantic. I didn't have a dorm room, so I slept on the floor in friends' rooms, I returned coke bottles for the 5¢ deposits to buy food with, and I would walk the 7 miles across town every Sunday night to get one good meal a week at the Hare Krishna temple. I loved it. And much of what I stumbled into by following my curiosity and intuition turned out to be priceless later on. Let me give you one example:&lt;/p&gt; &lt;p&gt;Reed College at that time offered perhaps the best calligraphy instruction in the country. Throughout the campus every poster, every label on every drawer, was beautifully hand calligraphed. Because I had dropped out and didn't have to take the normal classes, I decided to take a calligraphy class to learn how to do this. I learned about serif and san serif typefaces, about varying the amount of space between different letter combinations, about what makes great typography great. It was beautiful, historical, artistically subtle in a way that science can't capture, and I found it fascinating.&lt;/p&gt; &lt;p&gt;None of this had even a hope of any practical application in my life. But ten years later, when we were designing the first Macintosh computer, it all came back to me. And we designed it all into the Mac. It was the first computer with beautiful typography. If I had never dropped in on that single course in college, the Mac would have never had multiple typefaces or proportionally spaced fonts. And since Windows just copied the Mac, its likely that no personal computer would have them. If I had never dropped out, I would have never dropped in on this calligraphy class, and personal computers might not have the wonderful typography that they do. Of course it was impossible to connect the dots looking forward when I was in college. But it was very, very clear looking backwards ten years later.&lt;/p&gt; &lt;p&gt;Again, you can't connect the dots looking forward; you can only connect them looking backwards. So you have to trust that the dots will somehow connect in your future. You have to trust in something — your gut, destiny, life, karma, whatever. This approach has never let me down, and it has made all the difference in my life.&lt;/p&gt; &lt;p&gt;My second story is about love and loss.&lt;/p&gt; &lt;p&gt;I was lucky — I found what I loved to do early in life. Woz and I started Apple in my parents garage when I was 20. We worked hard, and in 10 years Apple had grown from just the two of us in a garage into a $2 billion company with over 4000 employees. We had just released our finest creation — the Macintosh — a year earlier, and I had just turned 30. And then I got fired. How can you get fired from a company you started? Well, as Apple grew we hired someone who I thought was very talented to run the company with me, and for the first year or so things went well. But then our visions of the future began to diverge and eventually we had a falling out. When we did, our Board of Directors sided with him. So at 30 I was out. And very publicly out. What had been the focus of my entire adult life was gone, and it was devastating.&lt;/p&gt; &lt;p&gt;I really didn't know what to do for a few months. I felt that I had let the previous generation of entrepreneurs down - that I had dropped the baton as it was being passed to me. I met with David Packard and Bob Noyce and tried to apologize for screwing up so badly. I was a very public failure, and I even thought about running away from the valley. But something slowly began to dawn on me — I still loved what I did. The turn of events at Apple had not changed that one bit. I had been rejected, but I was still in love. And so I decided to start over.&lt;/p&gt; &lt;p&gt;I didn't see it then, but it turned out that getting fired from Apple was the best thing that could have ever happened to me. The heaviness of being successful was replaced by the lightness of being a beginner again, less sure about everything. It freed me to enter one of the most creative periods of my life.&lt;/p&gt; &lt;p&gt;During the next five years, I started a company named NeXT, another company named Pixar, and fell in love with an amazing woman who would become my wife. Pixar went on to create the worlds first computer animated feature film, &lt;i&gt;Toy Story&lt;/i&gt;, and is now the most successful animation studio in the world. In a remarkable turn of events, Apple bought NeXT, I returned to Apple, and the technology we developed at NeXT is at the heart of Apple's current renaissance. And Laurene and I have a wonderful family together.&lt;/p&gt; &lt;p&gt;I'm pretty sure none of this would have happened if I hadn't been fired from Apple. It was awful tasting medicine, but I guess the patient needed it. Sometimes life hits you in the head with a brick. Don't lose faith. I'm convinced that the only thing that kept me going was that I loved what I did. You've got to find what you love. And that is as true for your work as it is for your lovers. Your work is going to fill a large part of your life, and the only way to be truly satisfied is to do what you believe is great work. And the only way to do great work is to love what you do. If you haven't found it yet, keep looking. Don't settle. As with all matters of the heart, you'll know when you find it. And, like any great relationship, it just gets better and better as the years roll on. So keep looking until you find it. Don't settle.&lt;/p&gt; &lt;p&gt;My third story is about death.&lt;/p&gt; &lt;p&gt;When I was 17, I read a quote that went something like: "If you live each day as if it was your last, someday you'll most certainly be right." It made an impression on me, and since then, for the past 33 years, I have looked in the mirror every morning and asked myself: "If today were the last day of my life, would I want to do what I am about to do today?" And whenever the answer has been "No" for too many days in a row, I know I need to change something.&lt;/p&gt; &lt;p&gt;Remembering that I'll be dead soon is the most important tool I've ever encountered to help me make the big choices in life. Because almost everything — all external expectations, all pride, all fear of embarrassment or failure - these things just fall away in the face of death, leaving only what is truly important. Remembering that you are going to die is the best way I know to avoid the trap of thinking you have something to lose. You are already naked. There is no reason not to follow your heart.&lt;/p&gt; &lt;p&gt;About a year ago I was diagnosed with cancer. I had a scan at 7:30 in the morning, and it clearly showed a tumor on my pancreas. I didn't even know what a pancreas was. The doctors told me this was almost certainly a type of cancer that is incurable, and that I should expect to live no longer than three to six months. My doctor advised me to go home and get my affairs in order, which is doctor's code for prepare to die. It means to try to tell your kids everything you thought you'd have the next 10 years to tell them in just a few months. It means to make sure everything is buttoned up so that it will be as easy as possible for your family. It means to say your goodbyes.&lt;/p&gt; &lt;p&gt;I lived with that diagnosis all day. Later that evening I had a biopsy, where they stuck an endoscope down my throat, through my stomach and into my intestines, put a needle into my pancreas and got a few cells from the tumor. I was sedated, but my wife, who was there, told me that when they viewed the cells under a microscope the doctors started crying because it turned out to be a very rare form of pancreatic cancer that is curable with surgery. I had the surgery and I'm fine now.&lt;/p&gt; &lt;p&gt;This was the closest I've been to facing death, and I hope its the closest I get for a few more decades. Having lived through it, I can now say this to you with a bit more certainty than when death was a useful but purely intellectual concept:&lt;/p&gt; &lt;p&gt;No one wants to die. Even people who want to go to heaven don't want to die to get there. And yet death is the destination we all share. No one has ever escaped it. And that is as it should be, because Death is very likely the single best invention of Life. It is Life's change agent. It clears out the old to make way for the new. Right now the new is you, but someday not too long from now, you will gradually become the old and be cleared away. Sorry to be so dramatic, but it is quite true.&lt;/p&gt; &lt;p&gt;Your time is limited, so don't waste it living someone else's life. Don't be trapped by dogma — which is living with the results of other people's thinking. Don't let the noise of others' opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary.&lt;/p&gt; &lt;p&gt;When I was young, there was an amazing publication called &lt;i&gt;The Whole Earth Catalog&lt;/i&gt;, which was one of the bibles of my generation. It was created by a fellow named Stewart Brand not far from here in Menlo Park, and he brought it to life with his poetic touch. This was in the late 1960's, before personal computers and desktop publishing, so it was all made with typewriters, scissors, and polaroid cameras. It was sort of like Google in paperback form, 35 years before Google came along: it was idealistic, and overflowing with neat tools and great notions.&lt;/p&gt; &lt;p&gt;Stewart and his team put out several issues of &lt;i&gt;The Whole Earth Catalog&lt;/i&gt;, and then when it had run its course, they put out a final issue. It was the mid-1970s, and I was your age. On the back cover of their final issue was a photograph of an early morning country road, the kind you might find yourself hitchhiking on if you were so adventurous. Beneath it were the words: "Stay Hungry. Stay Foolish." It was their farewell message as they signed off. Stay Hungry. Stay Foolish. And I have always wished that for myself. And now, as you graduate to begin anew, I wish that for you.&lt;/p&gt; &lt;p&gt;Stay Hungry.  Stay Foolish.&lt;/p&gt; &lt;p&gt;Thank you all very much.&lt;/p&gt;&lt;br /&gt;source &lt;a href="http://news-service.stanford.edu/news/2005/june15/jobs-061505.html"&gt;http://news-service.stanford.edu/news/2005/june15/jobs-061505.html&lt;/a&gt;&lt;br /&gt;youtube &lt;a href="http://www.youtube.com/watch?v=D1R-jKKp3NA"&gt;http://www.youtube.com/watch?v=D1R-jKKp3NA&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In portuguese:&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-9188891964094781873?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/9188891964094781873/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=9188891964094781873' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/9188891964094781873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/9188891964094781873'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/11/discurso-de-steve-jobs.html' title='Steve Jobs Stanford Commencement Speech 2005'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-5993783507002451532</id><published>2008-11-07T09:31:00.000-08:00</published><updated>2008-11-21T11:00:40.781-08:00</updated><title type='text'>Idiomatic Expressions</title><content type='html'>- There's so much at stake. -&gt; A tanta coisa em jogo.&lt;br /&gt;- A chain is no stronger thant its weakest link.&lt;br /&gt;- the end of (one's) rope -&gt; The limit of one's patience, endurance, or resources.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.usingenglish.com/reference/idioms/"&gt;http://www.usingenglish.com/reference/idioms/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-5993783507002451532?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/5993783507002451532/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=5993783507002451532' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/5993783507002451532'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/5993783507002451532'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/11/idiomatic-expressions.html' title='Idiomatic Expressions'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-5515239234403065628</id><published>2008-11-05T12:13:00.000-08:00</published><updated>2008-11-05T12:23:00.616-08:00</updated><title type='text'>Scalability</title><content type='html'>A system whose performance improve after adding hardware, proportionally to the capacity added, is said to be a scalable system.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;small&gt;&lt;i&gt;Source:&lt;/i&gt; &lt;a href="http://en.wikipedia.org/wiki/Scalability"&gt;http://en.wikipedia.org/wiki/Scalability&lt;/a&gt;&lt;/small&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-5515239234403065628?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/5515239234403065628/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=5515239234403065628' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/5515239234403065628'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/5515239234403065628'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/11/scalability.html' title='Scalability'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-2149886267829432416</id><published>2008-10-27T08:29:00.000-07:00</published><updated>2010-05-23T10:35:43.879-07:00</updated><title type='text'>become better programming</title><content type='html'>dates in english format&lt;div&gt;&lt;br /&gt;/***********************************************/&lt;br /&gt;05/23/2010&lt;br /&gt;&lt;br /&gt;This is sometimes called hacking; in other contexts, it is called "engineering." In essence, it is the ability to build a tool when the right one is not already on hand.&lt;br /&gt;&lt;a href="http://radar.oreilly.com/archives/2007/02/pipes-and-filte.html"&gt;http://radar.oreilly.com/archives/2007/02/pipes-and-filte.html&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;/***********************************************/&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;04/04/2010&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;There is a saying that: If you wanna be a good programmer, you just program every day for two years, you will be an excellent programmer. If you want to be a world-class programmer, you can program every day for ten years, or you can&lt;/div&gt;&lt;div&gt;program for two years and take an algorithms class.&lt;/div&gt;&lt;br /&gt;MIT teacher -&gt; &lt;a href="http://www.youtube.com/watch?v=JPyuH4qXLZ0&amp;amp;feature=fvste2"&gt;http://www.youtube.com/watch?v=JPyuH4qXLZ0&amp;amp;feature=fvste2&lt;/a&gt;&lt;br /&gt;/***********************************************/&lt;br /&gt;08/01/2009&lt;br /&gt;first write what a function or whatever is supposed to do, then you implement it.&lt;br /&gt;a professor from Berkley, forgot his name.&lt;br /&gt;&lt;br /&gt;/***********************************************/&lt;br /&gt;07/21/09&lt;br /&gt;Ideally, the programmer should not need control this detail of specifying exactly how it variables are passed, just say which direction the information goes and leave the compiler to optimize it automatically, but C was designed for raw low-level programming on far less powerful computers that are standard these days so the programmer has to do it explicitly.&lt;br /&gt;source: &lt;a href="http://duramecho.com/ComputerInformation/WhyHowCppConst.html"&gt;http://duramecho.com/ComputerInformation/WhyHowCppConst.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;/***********************************************/&lt;br /&gt;07/13/09&lt;br /&gt;&lt;b&gt;The question of whether Machines Can Think... is about as relevant as the question of whether Submarines Can Swim&lt;/b&gt; -- Edsger W. Dijkstra&lt;br /&gt;/***********************************************/&lt;br /&gt;03/13/09&lt;br /&gt;&lt;br /&gt;source: &lt;a href="http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918"&gt;http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;On Wed, 5 Sep 2007, Dmitry Kakurin wrote:&lt;br /&gt;&gt;&lt;br /&gt;&gt; When I first looked at Git source code two things struck me as odd:&lt;br /&gt;&gt; 1. Pure C as opposed to C++. No idea why. Please don't talk about portability,&lt;br /&gt;&gt; it's BS.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;*YOU*&lt;/b&gt; are full of bullshit.&lt;br /&gt;&lt;br /&gt;C++ is a horrible language. It's made more horrible by the fact that a lot&lt;br /&gt;of substandard programmers use it, to the point where it's much much&lt;br /&gt;easier to generate total and utter crap with it. Quite frankly, even if&lt;br /&gt;the choice of C were to do &lt;b&gt;*nothing*&lt;/b&gt; but keep the C++ programmers out,&lt;br /&gt;that in itself would be a huge reason to use C.&lt;br /&gt;&lt;br /&gt;In other words: the choice of C is the only sane choice. I know Miles&lt;br /&gt;Bader jokingly said "to piss you off", but it's actually true. I've come&lt;br /&gt;to the conclusion that any programmer that would prefer the project to be&lt;br /&gt;in C++ over C is likely a programmer that I really &lt;b&gt;*would*&lt;/b&gt; prefer to piss&lt;br /&gt;off, so that he doesn't come and screw up any project I'm involved with.&lt;br /&gt;&lt;br /&gt;C++ leads to really really bad design choices. You invariably start using&lt;br /&gt;the "nice" library features of the language like STL and Boost and other&lt;br /&gt;total and utter crap, that may "help" you program, but causes:&lt;br /&gt;&lt;br /&gt;- infinite amounts of pain when they don't work (and anybody who tells me&lt;br /&gt;that STL and especially Boost are stable and portable is just so full&lt;br /&gt;of BS that it's not even funny)&lt;br /&gt;&lt;br /&gt;- inefficient abstracted programming models where two years down the road&lt;br /&gt;you notice that some abstraction wasn't very efficient, but now all&lt;br /&gt;your code depends on all the nice object models around it, and you&lt;br /&gt;cannot fix it without rewriting your app.&lt;br /&gt;&lt;br /&gt;In other words, the only way to do good, efficient, and system-level and&lt;br /&gt;portable C++ ends up to limit yourself to all the things that are&lt;br /&gt;basically available in C. And limiting your project to C means that people&lt;br /&gt;don't screw that up, and also means that you get a lot of programmers that&lt;br /&gt;do actually understand low-level issues and don't screw things up with any&lt;br /&gt;idiotic "object model" crap.&lt;br /&gt;&lt;br /&gt;So I'm sorry, but for something like git, where efficiency was a primary&lt;br /&gt;objective, the "advantages" of C++ is just a huge mistake. The fact that&lt;br /&gt;we also piss off people who cannot see that is just a big additional&lt;br /&gt;advantage.&lt;br /&gt;&lt;br /&gt;If you want a VCS that is written in C++, go play with Monotone. Really.&lt;br /&gt;They use a "real database". They use "nice object-oriented libraries".&lt;br /&gt;They use "nice C++ abstractions". And quite frankly, as a result of all&lt;br /&gt;these design decisions that sound so appealing to some CS people, the end&lt;br /&gt;result is a horrible and unmaintainable mess.&lt;br /&gt;&lt;br /&gt;But I'm sure you'd like it more than git.&lt;br /&gt;&lt;br /&gt;Linus&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;source: &lt;a href="http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918"&gt;http://thread.gmane.org/gmane.comp.version-control.git/57643/focus=57918&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;/***********************************************/&lt;br /&gt;02/04/09&lt;br /&gt;&lt;br /&gt;Server-side filtering is important for security, while client-side validation is important for usability.&lt;br /&gt;PHP 5 Certification Study Guide&lt;br /&gt;&lt;br /&gt;/***********************************************/&lt;br /&gt;date: 01/13/09&lt;br /&gt;&lt;br /&gt;What programming language to choose?&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.google.com/search?hl=en&amp;amp;sa=X&amp;amp;oi=spell&amp;amp;resnum=0&amp;amp;ct=result&amp;amp;cd=1&amp;amp;q=What+programming+language+to+choose%3F&amp;amp;spell=1"&gt;http://www.google.com/search?hl=en&amp;amp;sa=X&amp;amp;oi=spell&amp;amp;resnum=0&amp;amp;ct=result&amp;amp;cd=1&amp;amp;q=What+programming+language+to+choose%3F&amp;amp;spell=1&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;C++&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Speaking of the average C++ programmer, what are C++’s major advantages over its newer rivals? In other words, what makes C++ relevant today – and tomorrow?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;→ As ever: Performance, flexibility, generality, and access to hardware resources. When you encounter an application with "unusual requirements" you'll appreciate C++'s strengths compared to languages more finely tuned to a specific class of problems. &lt;p&gt;&lt;/p&gt; &lt;p&gt;Actually, the interest in C++ seems to be increasing again. For example, the C++ track at the SD conference in Santa Clara in early March was by far the largest track and significantly larger than last year (where is again was larger than the year before).&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.informit.com/articles/article.aspx?p=1192024"&gt;Bjarne Stroustrup&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;/***********************************************/&lt;br /&gt;date: 01/13/09&lt;br /&gt;source: &lt;a href="http://www.sans.org/top25errors/"&gt;http://www.sans.org/top25errors/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div id="page-title"&gt;    &lt;h1&gt;CWE/SANS TOP 25 Most Dangerous Programming Errors&lt;/h1&gt;  &lt;/div&gt; &lt;div class="column"&gt; &lt;div style="padding-bottom: 15px;"&gt; &lt;h3&gt;Experts Announce Agreement on the 25 Most Dangerous Programming Errors - And How to Fix Them&lt;br /&gt;Agreement Will Change How Organizations Buy Software.&lt;/h3&gt; Project Manager:  Bob Martin, MITRE&lt;br /&gt;Questions:  &lt;a href="mailto:top25@sans.org"&gt;top25@sans.org&lt;/a&gt; &lt;/div&gt;  &lt;p&gt;(January 12, 2009) Today in Washington, DC, experts from more than 30 US and international cyber security organizations jointly released the consensus list of the 25 most dangerous programming errors that lead to security bugs and that enable cyber espionage and cyber crime. Shockingly, most of these errors are not well understood by programmers; their avoidance is not widely taught by computer science programs; and their presence is frequently not tested by organizations developing software for sale.&lt;/p&gt;  &lt;p&gt;The impact of these errors is far reaching. Just two of them led to more than 1.5 million web site security breaches during 2008 - and those breaches cascaded onto the computers of people who visited those web sites, turning their computers into zombies.&lt;/p&gt;  &lt;p&gt;People and organizations that provided substantive input to the project are listed below. They are among the most respected security experts and they come from leading organizations ranging from Symantec and Microsoft, to DHS's National Cyber Security Division and NSA's Information Assurance Division, to OWASP and the Japanese IPA, to the University of California at Davis and Purdue University. The MITRE and the SANS Institute managed the Top 25 Errors initiative, but the impetus for this project came from the National Security Agency and financial support for MITRE's project engineers came from the US Department of Homeland Security's National Cyber Security Division. The Information Assurance Division at NSA and National Cybersecurity Division at DHS have consistently been the government leaders in working to improve the security of software purchased by the government and by the critical national infrastructure.&lt;/p&gt;  &lt;p&gt;What was remarkable about the process was how quickly all the experts came to agreement, despite some heated discussion. "There appears to be broad agreement on the programming errors," says SANS Director, Mason Brown, "Now it is time to fix them. First we need to make sure every programmer knows how to write code that is free of the Top 25 errors, and then we need to make sure every programming team has processes in place to find, fix, or avoid these problems and has the tools needed to verify their code is as free of these errors as automated tools can verify."&lt;/p&gt;  &lt;p&gt;The Office of the Director of National Intelligence expressed its support saying, "We believe that integrity of hardware and software products is a critical element of cybersecurity. Creating more secure software is a fundamental aspect of system and network security, given that the federal government and the nation's critical infrastructure depend on commercial products for business operations. The Top 25 is an important component of an overall security initiative for our country. We applaud this effort and encourage the utility of this tool through other venues such as cyber education."&lt;/p&gt;  &lt;p&gt;Until now, most guidance focused on the 'vulnerabilities' that result from programming errors. This is helpful. The Top 25, however, focuses on the actual programming errors, made by developers that create the vulnerabilities. As important, the Top 25 web site provides detailed and authoritative information on mitigation. "Now, with the Top 25, we can spend less time working with police after the house has been robbed and instead focus on getting locks on the doors before it happens." said Paul Kurtz, a principal author of the US National Strategy to Secure Cyberspace and executive director of the Software Assurance Forum for Excellence in Code (SAFECode).&lt;/p&gt;  &lt;h3&gt;What You Will Find In This Announcement:&lt;/h3&gt; &lt;ui&gt;  &lt;li&gt;&lt;a href="http://www.sans.org/top25errors/#s1"&gt;Which People and Organizations Made Substantive Contributions to the Top 25 Errors List?&lt;/a&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://www.sans.org/top25errors/#s2"&gt;How Will the Top 25 Errors Be Used?&lt;/a&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://www.sans.org/top25errors/#s3"&gt;How Important Are the Top 25 Errors?&lt;/a&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://www.sans.org/top25errors/#s4"&gt;What Errors Are Included in the Top 25?&lt;/a&gt;&lt;/li&gt;  &lt;li&gt;&lt;a href="http://www.sans.org/top25errors/#s5"&gt;Resources to Help Organizations Eliminate The Errors&lt;/a&gt;&lt;/li&gt;   &lt;h2 id="s1"&gt;Which People and Organizations Made Substantive Contributions to the Top 25 Errors List?&lt;/h2&gt; &lt;p&gt;Robert C. Seacord, CERT&lt;br /&gt;Pascal Meunier, CERIAS, Purdue University&lt;br /&gt;Matt Bishop, University of California, Davis&lt;br /&gt;Kenneth van Wyk, KRvW Associates&lt;br /&gt;Masato Terada, Information-Technology Promotion Agency (IPA), (Japan)&lt;br /&gt;Sean Barnum, Cigital, Inc.&lt;br /&gt;Mahesh Saptarshi and Cassio Goldschmidt, Symantec Corporation&lt;br /&gt;Adam Hahn, MITRE&lt;br /&gt;Jeff Williams, Aspect Security&lt;br /&gt;Carsten Eiram, Secunia&lt;br /&gt;Josh Drake, iDefense Labs at VeriSign, Inc.&lt;br /&gt;Chuck Willis, MANDIANT&lt;br /&gt;Michael Howard, Microsoft&lt;br /&gt;Bruce Lowenthal, Oracle Corporation&lt;br /&gt;Mark J. Cox, Red Hat Inc.&lt;br /&gt;Jacob West, Fortify Software&lt;br /&gt;Djenana Campara, Hatha Systems&lt;br /&gt;James Walden, Northern Kentucky University&lt;br /&gt;Frank Kim, ThinkSec&lt;br /&gt;Chris Eng and Chris Wysopal, Veracode, Inc.&lt;br /&gt;Ryan Barnett, Breach Security&lt;br /&gt;Antonio Fontes, New Access SA, (Switzerland)&lt;br /&gt;Mark Fioravanti II, Missing Link Security Inc.&lt;br /&gt;Ketan Vyas, Tata Consultancy Services (TCS)&lt;br /&gt;Lindsey Cheng, Ian Peters and Tom Burgess, Secured Sciences Group, LLC&lt;br /&gt;Hardik Parekh and Matthew Coles, RSA - Security Division of EMC Corporation&lt;br /&gt;Mouse&lt;br /&gt;Ivan Ristic&lt;br /&gt;Apple Product Security&lt;br /&gt;Software Assurance Forum for Excellence in Code (SAFECode)&lt;br /&gt;Core Security Technologies Inc.&lt;br /&gt;Depository Trust &amp;amp; Clearing Corporation (DTCC)&lt;br /&gt;The working group at the first OWASP ESAPI Summit&lt;br /&gt;National Security Agency (NSA) Information Assurance Division&lt;br /&gt;Department of Homeland Security (DHS) National Cyber Security Division&lt;/p&gt;  &lt;p&gt;Robert Martin, CWE Project Leader at MITRE heralded the effort of these contributors by saying, "It is gratifying to see the amount of collaboration and energy that all these serious, security-savvy people invested in making this list as accurate and authoritative as it can be. Very impressive!"&lt;/p&gt;  &lt;h2 id="s2"&gt;How Will the Top 25 Errors Be Used?&lt;/h2&gt; &lt;p&gt;&lt;strong&gt;The Top 25 Errors will have four major impacts:&lt;/strong&gt; &lt;/p&gt;&lt;ul style="margin-top: 0pt;"&gt;&lt;li&gt;Software buyers will be able to buy much safer software.  &lt;/li&gt;&lt;li&gt;Programmers will have tools that consistently measure the security of the software they are writing. &lt;/li&gt;&lt;li&gt;Colleges will be able to teach secure coding more confidently.  &lt;/li&gt;&lt;li&gt;Employers will be able to ensure they have programmers who can write more secure code.  &lt;/li&gt;&lt;/ul&gt;   &lt;h5&gt;First, software buyers will be able to buy much safer software.  &lt;/h5&gt; &lt;p&gt;Buyers will require that software vendors certify in writing that the code they are delivering is free of these 25 programming errors. Certification shifts responsibility to the vendor for correcting the errors and for any damage caused by those errors. The standard procurement language under development by the State of New York and other state governments already is being adjusted to use the Top 25 Errors. Over time the multi-national Common Criteria program may also adopt the Top 25 as one approach for ensuring code purchased by the US government is free of the Top 25 errors.&lt;/p&gt;  &lt;h5&gt;Second, programmers will have tools that consistently measure the security of the software they are writing. &lt;/h5&gt; &lt;p&gt;Software testing tools will use the Top 25 in their evaluations and provide scores for the level of secure coding in software being tested. In parallel with this announcement, on January 12, one of the leading software testing vendors is announcing that its software will be able to test for and report on the presence of a large fraction of the Top 25 Errors. Application development teams will use such testing software during the development process. &lt;/p&gt;  &lt;h5&gt;Colleges will be able to teach secure coding more confidently.  &lt;/h5&gt; &lt;p&gt;Colleges and others who prepare programmers will use the Top 25 Errors as a foundation for curriculum that ensures their students know how to avoid the critical programming errors. One of the colleges that participated in developing the Top 25, UC Davis, has already established a secure coding clinic where student-written software is reviewed for the key programming errors that lead to critical security vulnerabilities. The Top 25 enables the clinic to prioritize errors in its review. Other colleges are beginning to emulate the secure coding clinics.&lt;/p&gt;  &lt;h5&gt;Employers will be able to ensure they have programmers who can write more secure code.  &lt;/h5&gt; &lt;p&gt;Employers will use the Top 25 Errors list as a guide for evaluating and improving skills of programmers they hire and of outsourced programming talent. More than 100 large employers are already using a common assessment tool called the GSSP (GIAC Secure Software Programmer) to measure secure coding skills. The GSSP exams are being reviewed in an effort to fully incorporate and highlight mastery of programming knowledge needed to find and eliminate or avoid the Top 25. More data on the GSSP may be found at &lt;a href="http://www.sans-ssi.org/"&gt;http://www.sans-ssi.org/&lt;/a&gt; and organizations with at least 500 programmers may have up to 100 of those programmers? secure coding skills assessed confidentially and at no cost. Email &lt;a href="mailto:spa@sans.org"&gt;spa@sans.org&lt;/a&gt; to get that started.&lt;/p&gt;  &lt;p&gt;Courses are available that teach secure coding skills to programmers in C/C++, in Java, and in .NET languages.  Information at &lt;a href="http://www.sans-ssi.org/courses/"&gt;http://www.sans-ssi.org/courses/&lt;/a&gt;&lt;/p&gt;  &lt;h2 id="s3"&gt;How Important Are the Top 25 Errors?&lt;/h2&gt; &lt;p&gt;We asked several of the participants why they thought this effort was important enough to merit a significant amount of their time and expertise. Here are a few of their answers. More are at the end of the announcement.&lt;/p&gt; &lt;dl&gt;&lt;dt&gt;National Security Agency's Information Assurance Directorate&lt;/dt&gt;&lt;dd&gt;"The publication of a list of programming errors that enable cyber espionage and cyber crime is an important first step in managing the vulnerability of our networks and technology. There needs to be a move away from reacting to thousands of individual vulnerabilities, and to focus instead on a relatively small number of software flaws that allow vulnerabilities to occur, each with a general root cause. Such a list allows the targeting of improvements in software development practices, tools, and requirements to manage these problems earlier in the life cycle, where they can be solved on a large scale and cost-effectively."&lt;br /&gt;-Tony Sager, National Security Agency's Information Assurance Directorate&lt;/dd&gt;&lt;dt&gt;US Department of Energy:&lt;/dt&gt;&lt;dd&gt;"The CWE/SANS Top 25 effort is extremely valuable and will provide many organizations with a tangible way to begin addressing software security problems."&lt;br /&gt;- Michael Klosterman, SCADA Operations, Western Area Power Association, US Department of Energy &lt;/dd&gt;&lt;dt&gt;Depository Trust:&lt;/dt&gt;&lt;dd&gt;"The CWE-SANS Top 25 Errors is a vital tool for organizations that believe in a risk-based approach to software security enabling them to assess the specific vulnerabilities identified in their environments compared with a composite perspective of risk from industry recognized experts."&lt;br /&gt;-  Jim Routh, CISO, The Depository Trust &amp;amp; Clearing Corporation&lt;/dd&gt;&lt;dt&gt;Microsoft:&lt;/dt&gt;&lt;dd&gt;"The 2009 CWE/SANS Top 25 Programming Errors project is a great resource to help software developers identify which security vulnerabilities are the most important to understand, prevent and fix."&lt;br /&gt;- Michael Howard, Principal Security Program Manager, Security Development Lifecycle Team, Microsoft Corp.&lt;/dd&gt;&lt;dt&gt;OWASP Foundation:&lt;/dt&gt;&lt;dd&gt;"When facing a huge application portfolio that could contain many thousands of instances of over 700 different types of weaknesses, knowing where to start is a daunting task. Done right, stamping out the CWE Top 25 can not only make you significantly more secure but can cut your software development costs."&lt;br /&gt;- Jeff Williams, Aspect Security CEO and The OWASP Foundation Chair &lt;/dd&gt;&lt;dt&gt;Symantec:&lt;/dt&gt;&lt;dd&gt;"The 2009 CWE/SANS Top 25 Programming Errors reflects the kinds of issues we've seen in application software and helps provide us with actionable direction to continuously improve the security of our software."&lt;br /&gt;-  Wesley H. Higaki, Director, Software Assurance, Office of the CTO, Symantec Corporation &lt;/dd&gt;&lt;dt&gt;Software Assurance Consortium:&lt;/dt&gt;&lt;dd&gt;"As an advocate for the consumer, this is viewed as a giant step forward in providing security for all users. It increases awareness of the various levels of secure software by highlighting its effects on our daily use of all software products. The CWE/SANS Top 25 effort adds the capability to our tool box which in turn aids the SwAC in our mission to bring together Industry and Government to transform the security and dependability of all software products."&lt;br /&gt;-  Dan Wolf, Director, Software Assurance Consortium.&lt;/dd&gt;&lt;dt&gt;EMC:&lt;/dt&gt;&lt;dd&gt;"The Top 25 List puts a powerful tool into the hands of the programmers along with every person involved in designing and developing software. The simple fact that such a list now exists will allow software assurance to be practiced more effectively."&lt;br /&gt;- Dan Reddy, Consulting Product Manager, EMC Product Security Office &lt;/dd&gt;&lt;dt&gt;Purdue:&lt;/dt&gt;&lt;dd&gt;"The CWE Top 25 should be watched because targeting the most troublesome programming mistakes can potentially reduce the occurrence of vulnerabilities and our exposure at a national level, while diminishing our undesirable dependence on patches."&lt;br /&gt;- Pascal Meunier, CERIAS, Purdue University&lt;/dd&gt;&lt;dt&gt;Secunia:&lt;/dt&gt;&lt;dd&gt;"This Top 25 is without a doubt one of the most useful compilations of common coding mistakes leading to vulnerabilities in software. The list, which has been created based on feedback from many experts in the security industry, focuses on selection criteria like severity and prevalence, thus covering a broad range of the most critical errors commonly introduced in applications today. The Top 25 is compiled in a easy-to-read and entertaining language and does not only provide a good understanding of common coding mistakes, but also how to avoid them. I can therefore highly recommend this read to anyone involved in software design to ensure that they won't make the same mistakes in 2009 as they've made previously."&lt;br /&gt;- Carsten Eiram, Chief Security Specialist, Secunia. &lt;/dd&gt;&lt;dt&gt;Ken van Wyk:&lt;/dt&gt;&lt;dd&gt;"This list of programming errors should be enormously useful to the community. It serves to help us all get our collective "arms around" understanding the most common security defects in our code, just as the OWASP Top 10 helps us understand the attacks against those defects."&lt;br /&gt;- Kenneth R. van Wyk, KRvW Associates, LLC &lt;/dd&gt;&lt;dt&gt;Veracode:&lt;/dt&gt;&lt;dd&gt;"A prioritized list of security issues is the starting point to make software security practical in the business world of resource constraints and ship dates. The Top 25 list gives developers a minimum set of coding errors that must be eradicated before software is used by customers."&lt;br /&gt;- Chris Wysopal, Co-Founder and CTO of Veracode, Inc. &lt;/dd&gt;&lt;dt&gt;Core Security Technologies:&lt;/dt&gt;&lt;dd&gt;"This is the first serious attempt at building a taxonomy of software security weaknesses and flaws with an emphasis on the practical application of identifying, preventing and fixing or mitigating the issues they pose. It is a necessary and long overdue step towards creating a common language for the software development and security communities in need of a more rational way to address what are currently the most urgent and relevant software security problems."&lt;br /&gt;- Ivan Arce, CTO of Core Security Technologies Inc. &lt;/dd&gt;&lt;dt&gt;Breach Security:&lt;/dt&gt;&lt;dd&gt;"The CWE/SANS Top 25 List is an excellent tactical resource for organizations to prioritize and remediate the root causes of today's successful attacks. This should be required reading for all developers as it is a "Cliff Notes" version of essential secure coding principles."&lt;br /&gt;- Ryan C. Barnett, Director of Application Security Research, Breach Security &lt;/dd&gt;&lt;dt&gt;McAfee:&lt;/dt&gt;&lt;dd&gt;"The 2009 CWE/SANS Top 25 Programming Errors effort is right on target. By educating software developers on the most important issues and showing them how to avoid writing security bugs, this effort will help programmers correct code issues before they become security problems."&lt;br /&gt;- Kent Landfield, Director, Risk and Compliance Security Research, McAfee, Inc. &lt;/dd&gt;&lt;dt&gt;Ounce Lab:&lt;/dt&gt;&lt;dd&gt;"Let's use this list as a way to jumpstart the solutions - make 2009 a year to make things happen and solve these problems that have been around way too long. Far too many solutions exist out there to help address these all-too-common errors. Start using this list to secure your software today because if the last few years have been any indication, tomorrow is already too late."&lt;br /&gt;- Ryan Berg, Co-Founder and Chief Scientist, Ounce Labs &lt;/dd&gt;&lt;dt&gt;Grammatech:&lt;/dt&gt;&lt;dd&gt;"Bugs in software are a plague on our profession and bad for business. They are inevitable, yet understanding of which bugs are most important is often gained the hard and expensive way when they show up in the field. The CWE/SANS Top 25 effort will raise awareness of the huge variety of different kinds of defects that can occur, and will help programmers focus on those that matter most to application quality and security."&lt;br /&gt;- Paul Anderson - Vice President of Engineering, Grammatech Inc.&lt;/dd&gt;&lt;/dl&gt;      &lt;h2 id="s4"&gt;What Errors Are Included in the Top 25?&lt;/h2&gt;  &lt;h4&gt;The Top 25 Errors are listed below in three categories:&lt;/h4&gt; &lt;ul&gt;&lt;li&gt;&lt;a href="http://www.sans.org/top25errors/#cat1"&gt;Category: Insecure Interaction Between Components (9 errors)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.sans.org/top25errors/#cat2"&gt;Category: Risky Resource Management (9 errors)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.sans.org/top25errors/#cat3"&gt;Category: Porous Defenses (7 errors)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;Clicking "MORE" in any of the listings takes you to the relevant spot in the MITRE CWE site where you will find the following:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;links to the full CWE entry data,  &lt;/li&gt;&lt;li&gt;data fields for weakness prevalence and consequences,  &lt;/li&gt;&lt;li&gt;remediation cost,  &lt;/li&gt;&lt;li&gt;ease of detection,  &lt;/li&gt;&lt;li&gt;attack frequency and attacker awareness  &lt;/li&gt;&lt;li&gt;related CWE entries &lt;/li&gt;&lt;li&gt;related patterns of attack for this weakness.   &lt;/li&gt;&lt;/ul&gt;  &lt;p&gt;Each entry at the Top 25 Errors site also includes fairly extensive prevention and remediation steps that developers can take to mitigate or eliminate the weakness.&lt;/p&gt;   &lt;h3 id="cat1"&gt;CATEGORY: Insecure Interaction Between Components &lt;/h3&gt;  &lt;h4&gt;CWE-20: Improper Input Validation &lt;/h4&gt; &lt;p&gt;It's the number one killer of healthy software, so you're just asking for trouble if you don't ensure that your input conforms to expectations...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-20"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;   &lt;h4&gt;CWE-116: Improper Encoding or Escaping of Output &lt;/h4&gt; &lt;p&gt;Computers have a strange habit of doing what you say, not what you mean. Insufficient output encoding is the often-ignored sibling to poor input validation, but it is at the root of most injection-based attacks, which are all the rage these days...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-116"&gt;MORE &gt;&gt;&lt;/a&gt;&lt;/p&gt;   &lt;h4&gt;CWE-89: Failure to Preserve SQL Query Structure (aka 'SQL Injection') &lt;/h4&gt;  &lt;p&gt;If attackers can influence the SQL that you use to communicate with your database, then they can...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-89"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-79: Failure to Preserve Web Page Structure (aka 'Cross-site Scripting') &lt;/h4&gt; &lt;p&gt;Cross-site scripting (XSS) is one of the most prevalent, obstinate, and dangerous vulnerabilities in web applications...If you're not careful, attackers can...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-79"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-78: Failure to Preserve OS Command Structure (aka 'OS Command Injection') &lt;/h4&gt; &lt;p&gt;When you invoke another program on the operating system, but you allow untrusted inputs to be fed into the command string that you generate for executing the program, then you are inviting attackers...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-78"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-319: Cleartext Transmission of Sensitive Information &lt;/h4&gt; &lt;p&gt;If your software sends sensitive information across a network, such as private data or authentication credentials, that information crosses many...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-319"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-352: Cross-Site Request Forgery (CSRF) &lt;/h4&gt; &lt;p&gt;With cross-site request forgery, the attacker gets the victim to activate a request that goes to your site. Thanks to scripting and the way the web works in general, the victim...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-352"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-362: Race Condition &lt;/h4&gt; &lt;p&gt;Attackers will consciously look to exploit race conditions to cause chaos or get your application to cough up something valuable...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-362"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-209: Error Message Information Leak &lt;/h4&gt; &lt;p&gt;If you use chatty error messages, then they could disclose secrets to any attacker who dares to misuse your software. The secrets could cover a wide range of valuable data...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-209"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;   &lt;h3 id="cat2"&gt;CATEGORY: Risky Resource Management &lt;/h3&gt;  &lt;h4&gt;CWE-119: Failure to Constrain Operations within the Bounds of a Memory Buffer &lt;/h4&gt; &lt;p&gt;Buffer overflows are Mother Nature's little reminder of that law of physics that says if you try to put more stuff into a container than it can hold, you're...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-119"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-642: External Control of Critical State Data &lt;/h4&gt; &lt;p&gt;There are many ways to store user state data without the overhead of a database. Unfortunately, if you store that data in a place where an attacker can...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-642"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-73: External Control of File Name or Path&lt;/h4&gt; &lt;p&gt;When you use an outsider's input while constructing a filename, you're taking a chance. If you're not careful, an attacker could... &lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-73"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-426: Untrusted Search Path &lt;/h4&gt; &lt;p&gt;If a resource search path is under attacker control, then the attacker can modify it to point to resources of the attacker's choosing. This causes the software to access the wrong resources at the wrong time...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-426"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-94: Failure to Control Generation of Code (aka 'Code Injection') &lt;/h4&gt; &lt;p&gt;For ease of development, sometimes you can't beat using a couple lines of code to employ lots of functionality. It's even cooler when...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-94"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-494: Download of Code Without Integrity Check &lt;/h4&gt; &lt;p&gt;You don't need to be a guru to realize that if you download code and execute it, you're trusting that the source of that code isn't malicious. But attackers can perform all sorts of tricks...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-494"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-404: Improper Resource Shutdown or Release &lt;/h4&gt; &lt;p&gt;When your precious system resources have reached their end-of-life, you need to...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-404"&gt;MORE &gt;&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;CWE-665: Improper Initialization &lt;/h4&gt; &lt;p&gt;Just as you should start your day with a healthy breakfast, proper initialization helps to ensure...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-665"&gt;MORE &gt;&gt;&lt;/a&gt;&lt;/p&gt;  &lt;h4&gt;CWE-682: Incorrect Calculation &lt;/h4&gt; &lt;p&gt;When attackers have some control over the inputs that are used in numeric calculations, this weakness can lead to vulnerabilities. It could cause you to make incorrect security decisions. It might cause you to...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-682"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;   &lt;h3 id="cat3"&gt;CATEGORY: Porous Defenses &lt;/h3&gt;  &lt;h4&gt;CWE-285: Improper Access Control (Authorization) &lt;/h4&gt; &lt;p&gt;If you don't ensure that your software's users are only doing what they're allowed to, then attackers will try to exploit your improper authorization and...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-285"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-327: Use of a Broken or Risky Cryptographic Algorithm &lt;/h4&gt; &lt;p&gt;You may be tempted to develop your own encryption scheme in the hopes of making it difficult for attackers to crack. This kind of grow-your-own cryptography is a welcome sight to attackers...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-327"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-259: Hard-Coded Password &lt;/h4&gt; &lt;p&gt;Hard-coding a secret account and password into your software's authentication module is...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-259"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-732: Insecure Permission Assignment for Critical Resource &lt;/h4&gt; &lt;p&gt;If you have critical programs, data stores, or configuration files with permissions that make your resources accessible to the world - well, that's just what they'll become...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-732"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-330: Use of Insufficiently Random Values &lt;/h4&gt; &lt;p&gt;If you use security features that require good randomness, but you don't provide it, then you'll have attackers laughing all the way to the bank...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-330"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-250: Execution with Unnecessary Privileges &lt;/h4&gt; &lt;p&gt;Spider Man, the well-known comic superhero, lives by the motto "With great power comes great responsibility." Your software may need special privileges to perform certain operations, but wielding those privileges longer than necessary can be extremely risky...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-250"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;  &lt;h4&gt;CWE-602: Client-Side Enforcement of Server-Side Security &lt;/h4&gt; &lt;p&gt;Remember that underneath that fancy GUI, it's just code. Attackers can reverse engineer your client and write their own custom clients that leave out certain inconvenient features like all those pesky security controls...&lt;a target="_blank" href="http://cwe.mitre.org/top25/#CWE-602"&gt;MORE &gt;&gt;&lt;/a&gt; &lt;/p&gt;   &lt;h2 id="s5"&gt;Resources to Help Eliminate The Top 25 Errors &lt;/h2&gt;  &lt;p&gt;The TOP 25 Errors List will be updated regularly and will be posted at both the SANS and MITRE sites&lt;br /&gt;&lt;a href="http://www.sans.org/top25"&gt;www.sans.org/top25&lt;/a&gt;&lt;br /&gt;&lt;a href="http://cwe.mitre.org/top25/" target="_blank"&gt;cwe.mitre.org/top25/&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;MITRE maintains the CWE (Common Weakness Enumeration) web site, with the support of the US Department of Homeland Security's National Cyber Security Division, presenting detailed descriptions of the top 25 programming errors along with authoritative guidance for mitigating and avoiding them. That site also contains data on more than 700 additional programming errors, design errors and architecture errors that can lead to exploitable vulnerabilities. &lt;a href="http://cwe.mitre.org/" target="_blank"&gt;cwe.mitre.org/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;SANS maintains a series of assessments of secure coding skills in three languages along with certification exams that allow programmers to determine gaps in their knowledge of secure coding and allows buyers to ensure outsourced programmers have sufficient programming skills. Organizations with more than 500 programmers can assess the secure coding skills of up to 100 programmers at no cost.&lt;br /&gt;Email &lt;a href="mailto:spa@sans.org"&gt;spa@sans.org&lt;/a&gt; for details&lt;br /&gt;And see &lt;a href="http://www.sans-ssi.org/certification/"&gt;www.sans-ssi.org/certification/&lt;/a&gt; for the GSSP Blueprints  &lt;/p&gt;  &lt;p&gt;SAFECode - The Software Assurance Forum for Excellence in Code (members include EMC, Juniper, Microsoft, Nokia, SAP and Symantec) has produced two excellent publications outlining industry best practices for software assurance and providing practical advice for implementing proven methods for secure software development.&lt;br /&gt;&lt;a target="_blank" href="http://www.safecode.org/publications/SAFECode_BestPractices0208.pdf"&gt;http://www.safecode.org/publications/SAFECode_BestPractices0208.pdf&lt;/a&gt; &lt;a target="_blank" href="http://www.safecode.org/publications/SAFECode_Dev_Practices1108.pdf"&gt;http://www.safecode.org/publications/SAFECode_Dev_Practices1108.pdf&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Nearly a dozen software companies offer automated tools that test programs for these errors. SANS maintains case studies of user experience with these and other security tools at &lt;a href="http://www.sans.org/whatworks"&gt;www.sans.org/whatworks&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;New York State has produced draft procurement standards to allow companies to buy software with security baked in.&lt;/p&gt; &lt;p&gt;Draft New York State procurement language will be posted at &lt;a href="http://www.sans.org/appseccontract"&gt;www.sans.org/appseccontract&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;For additional information on any of these:&lt;br /&gt;SANS: Mason Brown, &lt;a href="mailto:mbrown@sans.org"&gt;mbrown@sans.org&lt;/a&gt;&lt;br /&gt;MITRE: Bob Martin, &lt;a href="mailto:ramartin@mitre.org"&gt;ramartin@mitre.org&lt;/a&gt;&lt;br /&gt;MITRE: Steve Christey, &lt;a href="mailto:coley@mitre.org"&gt;coley@mitre.org&lt;/a&gt;&lt;/p&gt;&lt;/ui&gt;source: &lt;a href="http://www.sans.org/top25errors/"&gt;http://www.sans.org/top25errors/&lt;/a&gt;&lt;br /&gt;date: 01/13/09&lt;br /&gt;&lt;/div&gt;/***********************************************/&lt;br /&gt;date 01/06/09&lt;br /&gt;&lt;h3&gt;Five good programming habits&lt;/h3&gt;&lt;ol&gt;&lt;li&gt;Use good naming.&lt;/li&gt;&lt;li&gt;Take smaller bites.&lt;/li&gt;&lt;li&gt;Document your code.&lt;/li&gt;&lt;li&gt;Handle error conditions.&lt;/li&gt;&lt;li&gt;Never, ever, copy and paste.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;source: &lt;a href="http://www.ibm.com/developerworks/opensource/library/os-php-5goodhabits/index.html"&gt;http://www.ibm.com/developerworks/opensource/library/os-php-5goodhabits/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;/****************************************************&lt;br /&gt;"The recruiters-who-use-grep, by the way, are ridiculed here, and for good reason. I have never met anyone who can do Scheme, Haskell, and C pointers who can't pick up Java in two days, and create better Java code than people with five years of experience in Java, but try explaining that to the average HR drone."&lt;br /&gt;http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"A big part of my job ends up being reinterpreting what people are asking for into what they really want." Ian Hickson &lt;a href="http://blogs.techrepublic.com.com/programming-and-development/?p=718"&gt;http://blogs.techrepublic.com.com/programming-and-development/?p=718&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-2149886267829432416?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/2149886267829432416/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=2149886267829432416' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2149886267829432416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2149886267829432416'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/10/become-better-programming.html' title='become better programming'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-1405953842166797937</id><published>2008-10-04T20:25:00.000-07:00</published><updated>2008-10-04T20:27:41.078-07:00</updated><title type='text'>10 alimentos para emagrecer</title><content type='html'>&lt;div id="txt-especialista-topo"&gt;      &lt;span class="titulo-coluna1"&gt;Conheça os 10 alimentos que não faltam nas dietas dos famosos&lt;/span&gt;      &lt;br /&gt;     &lt;span class="fonte-regular-arial"&gt;A nutricionista Bia Rique revela a lista que faz as celebridades emagrecerem.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="txt-regular-preto"&gt;  &lt;a href="http://www.minhavida.com.br/pesoideal/avaliacaosite.aspx" target="_self"&gt;Emagrecer&lt;/a&gt; custa caro. Calma, a gente nem está falando da força de vontade e da determinação em fechar a boca para suas delícias favoritas. A questão aqui é no bolso, mesmo: perder peso, com saúde, à base dos alimentos que vêm na cesta básica é tarefa quase impossível. Mas o investimento compensa, segundo a nutricionista Bia Rique. Com consultório na badalada clínica Ivo Pitanguy e representando a American Overseas Dietetic Association no Brasil, ela está acostumada a atender famosos e endinheirados do mundo todo. Os alimentos indispensáveis à dieta nem são assim tão caros, mas aumentam um pouco a despesa familiar , afirma Bia. Abaixo, confira as dez dicas da especialista para entrar em forma sem deixar a saúde de lado.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;1. Vegetais coloridos:&lt;/strong&gt; nada de fechar a mão na hora de ir à feira. Os vegetais são fontes de fibra, água e fitonutrientes, por isso não podem faltar à dieta , diz Bia. São recomendadas de três a cinco porções diárias por dia de vegetais, incluindo legumes e verduras na lista.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;2. Pão 100% integral:&lt;/strong&gt; abolir as massas de farinha fina é uma das primeiras medidas de qualquer dieta. Além de ajudar seu intestino a funcionar melhor, os &lt;a href="http://www.minhavida.com.br/materia.aspx?codmateria=1720" target="_self"&gt;pães integrais&lt;/a&gt; mantêm a saciedade por mais tempo, já que a digestão deles demora mais. Resultado: você come menor e emagrece.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;3. Azeite extra-virgem:&lt;/strong&gt; quem está acostumado a usar óleo toma um susto quando vê os preços dos azeites nas prateleiras. Mas não tem jeito, afinal esse tipo de gordura é aliado do seu coração, reduzindo a formação de placas (ou ateromas) nas paredes dos vasos sangüíneos. Uma maneira de economizar um pouquinho é comprar a versão virgem, um pouco mais barata, para cozinhar. A extra-virgem pode ser usada apenas no tempero de saladas e pratos que não vão ao fogo , recomenda Bia Rique.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;4. Aveia:&lt;/strong&gt; o cereal é um exemplo de fibra solúvel que não pode, jamais, ficar de fora do cardápio de quem deseja emagrecer. A &lt;a href="http://www.minhavida.com.br/materia.aspx?codmateria=1182" target="_self"&gt;aveia&lt;/a&gt; age no controle do colesterol, da glicose sangüínea e regula o funcionamento do intestino.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;5. &lt;a href="http://www.minhavida.com.br/materia.aspx?codmateria=3282" target="_self"&gt;Frutas frescas&lt;/a&gt;:&lt;/strong&gt; como nos vegetais, o segredo está nas cores. Você precisa consumir de duas a quatro porções, diariamente. Vale experimentar em dentadas ou na forma de sucos, não importa.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;6. Feijões:&lt;/strong&gt; muita gente torce o nariz para eles. Mas está aqui um dos poucos ingredientes da cesta básica que fazem a diferença no regime. Preto, mulatinho ou carioca, o feijão é fonte de proteínas e fibras, ajudando a controlar a fome.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;7. Peixes:&lt;/strong&gt; as carnes brancas são o coringa de qualquer dieta, com destaque para os &lt;a href="http://www.minhavida.com.br/materia.aspx?codmateria=1056" target="_self"&gt;peixes&lt;/a&gt;. Mas esqueça os pacotes congelados do supermercado. Você precisa consumir versões frescas, que guardam os nutrientes e têm mais substâncias benéficas. De uns tempos para cá, salmão e outros peixes de água fria estão mais baratos: é que eles têm sido cultivados em cativeiro, perdendo muitas das propriedades nutricionais que apresentam quando são pescados em seu ambiente natural.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;8. Queijo branco:&lt;/strong&gt; ele tem menos gorduras e é fonte de proteína para sua dieta, além de oferecer cálcio (mineral que, além de fortalecer os ossos, está envolvido nos mecanismos de contração muscular e regula batimentos cardíacos saudáveis).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;9. Semente de linhaça:&lt;/strong&gt; o aperitivo pode integrar seus lanches e é uma fonte poderosa de ômega-3, substância que diminui os triglicérides e o mau colesterol. Você bate bater duas colheres de sopa das sementes com sua fruta favorita, adicioná-la no iogurte ou no leite, junto à aveia.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;10. Castanhas:&lt;/strong&gt; vale a de caju, do-pará, nozes, macadâmias, amêndoas... elas são fontes das chamadas gorduras monoinsaturadas, reconhecidas por baixar os níveis do mau colesterol e aumentar os do bom (papel que o azeite também desempenha). &lt;/span&gt; &lt;div id="comboPage" style="margin: 0px 190px 0px 0px; visibility: hidden; width: 0px; height: 0px;"&gt; &lt;select style="font-size: 11px; font-family: verdana;"&gt;&lt;option&gt;1&lt;/option&gt;&lt;/select&gt; &lt;/div&gt;&lt;br /&gt;    &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://yahoo.minhavida.com.br/materias/alimentacao/Conheca+os+10+alimentos+que+nao+faltam+nas+dietas+dos+famosos.mv"&gt;http://yahoo.minhavida.com.br/materias/alimentacao/Conheca+os+10+alimentos+que+nao+faltam+nas+dietas+dos+famosos.mv&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-1405953842166797937?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/1405953842166797937/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=1405953842166797937' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/1405953842166797937'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/1405953842166797937'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/10/10-alimentos-para-emagrecer.html' title='10 alimentos para emagrecer'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-4316889749010479335</id><published>2008-09-24T05:41:00.000-07:00</published><updated>2008-09-24T06:08:40.241-07:00</updated><title type='text'>RoR -&gt; Ruby on Rails</title><content type='html'>alfredogangsta&lt;br /&gt;&lt;br /&gt;Sure, Migrations use Ruby, but you have to know what you are doing with SQL to make it work right.&lt;br /&gt;&lt;br /&gt;Rails doesn't transform people who don't know what they're doing. It still requires all sorts of... thinking.&lt;br /&gt;&lt;br /&gt;TheRockin88&lt;br /&gt;&lt;br /&gt;I think YOU must code in the language which is afordable, and if you are GOOD enough, you can do it in ASP, PHP, etc...since you focus the Objective.&lt;br /&gt;I spend my time developing solutions for my clients, both PHP (linux server) as ASP for windows.&lt;br /&gt;Call me as a DUMB, but I spend my time to EARN MONEY, not to LEARN a bad known "framework" and jump to the new "train" in Rails...LOL...TIME is Money, and my costumers dont want to know if I used PHP,ASP or ROR. They want a WORKING site!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;aiyuo&lt;br /&gt;&lt;br /&gt;its kinda dumb to compare a framework with a language. A better comparison would be Rails vs Codeigniter&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;riotiticaca&lt;br /&gt;&lt;br /&gt;RoR if 1 billion miles away to compete with PHP. These marketing strategies ain't help a lot.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;644547024430&lt;br /&gt;&lt;br /&gt;ok... so all PHP coders look like Private Pyle from Full Metal Jacket and are sarcastic as hell while all RoR coders are gay and like phallic objects [with cock rings, no doubt]&lt;br /&gt;&lt;br /&gt;damn.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;riotiticaca&lt;br /&gt;&lt;br /&gt;If you use procedural PHP and without a framework, that could be true.&lt;br /&gt;&lt;br /&gt;Just try Zend Framework in you will see why PHP is superior.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;rallyrulz&lt;br /&gt;&lt;br /&gt;haha, people are actually defending php! soo pathetic, php must die. Its not just the language that sux for so many reasons (not a true OO language, no namespaces, pathetic unicode support, extremely error prone with absolute SHIT! frameworks to go with it), but the programmers that use it are even worse, its like 1/100 php programmers actualy have a clue&lt;br /&gt;&lt;br /&gt;sirinferno&lt;br /&gt;&lt;br /&gt;yahoo, digg, wikipedia, photobucket all use php. you suck.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;guille1983&lt;br /&gt;&lt;br /&gt;With cakephp you dont need neither RoR nor learning another programming language. Besides it's not common to find a hosting provider who supports RoR. So I stay with cakephp&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;cybercow222 &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Yes, offcourse ... that`s why 99,9% of web sites run php apps, and 0,1% of them is built on pre-under-preview-beta-still-i n-dev of RoR. But, yes offcourse, everyone of us has built it`s first RoR blog or shopping chart in less than hour, and was amazed how it`s simple ... but when complicated things come on the scene, it become shiny-clear that you can`t do with it nothing more in less time ... It`s a blafemy ... RoR sucks&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-4316889749010479335?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/4316889749010479335/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=4316889749010479335' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/4316889749010479335'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/4316889749010479335'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/09/ror-ruby-on-rails.html' title='RoR -&gt; Ruby on Rails'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-2735107931963537846</id><published>2008-08-31T06:35:00.000-07:00</published><updated>2010-05-28T14:43:07.642-07:00</updated><title type='text'>just think about it</title><content type='html'>Datas em inglês&lt;br /&gt;/**********************&lt;br /&gt;05/28/2010&lt;br /&gt;&lt;br /&gt;O lugar onde alguém pensa em você, é pra lá que você deve voltar ..."&lt;br /&gt;naruto shippuden 103&lt;br /&gt;&lt;br /&gt;The place where someone think of you, it's  there that you should came back ...&lt;br /&gt;&lt;br /&gt;/**********************&lt;br /&gt;01/26/2010&lt;br /&gt;“If you talk to a man in a language he understands, that goes to his head. If you talk to him in his language, that goes to his heart.” Nelson Mandela&lt;br /&gt;******************&lt;br /&gt;10/08/2009&lt;br /&gt;The code I wrote nine months ago sucks. And I'm happy about it. ... So why am I so happy about it? Simple: if I can look back at code I had written previously and know that the code I am writing today shows significant improvement, it means that I am still learning and growing as a coder. , by &lt;a href="http://www.javaranch.com/journal/200603/Journal200603.jsp#a5"&gt;Bear Bibeault&lt;/a&gt;&lt;br /&gt;/**********************&lt;br /&gt;10/05/2009&lt;br /&gt;"WRONG" IS ONE OF THOSE CONCEPTS THAT DEPENDS ON WITNESSES.&lt;br /&gt;Scott Adams&lt;br /&gt;http://dilbert.com/strips/comic/2009-11-05/&lt;br /&gt;&lt;br /&gt;/**********************&lt;br /&gt;10/02/2009&lt;br /&gt;"There are two kinds of people, those who do the work and those who take the credit. Try to be in the first group; there is less competition there."&lt;br /&gt;Indira Gandhi&lt;br /&gt;/**********************&lt;br /&gt;&lt;span&gt;09/29/2009&lt;br /&gt;"If I'm good at one thing, it's probably staying up-to-date."&lt;br /&gt;&lt;a href="http://www.businessweek.com/magazine/content/08_27/b4091064416575_page_2.htm"&gt;Bill Gates.&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;/**********************&lt;br /&gt;&lt;span&gt;date 08/04/09&lt;br /&gt;&lt;/span&gt;&lt;span class="status-body"&gt;&lt;strong&gt;&lt;a href="http://twitter.com/dhh" class="screen-name" title="DHH"&gt;dhh&lt;/a&gt;&lt;/strong&gt;&lt;span class="entry-content"&gt;How do you figure out what your app should cost? Just ask yourself: Would I pay for this with my own credit card? &lt;a href="http://is.gd/219CY" rel="nofollow" target="_blank"&gt;http://is.gd/219CY&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;/**********************&lt;br /&gt;date 08/04/09&lt;br /&gt;&lt;span class="status-body"&gt;&lt;strong&gt;&lt;a href="http://twitter.com/KathySierra" class="screen-name" title="Kathy Sierra"&gt;KathySierra&lt;/a&gt;&lt;/strong&gt;&lt;span class="entry-content"&gt;Marketing could focus less on being "innovative" and more on being useful. (and being useful should not require innovation... just focus)&lt;/span&gt;&lt;span class="meta entry-meta"&gt;&lt;br /&gt;&lt;a href="http://twitter.com/KathySierra/status/3088820870" class="entry-date" rel="bookmark"&gt;&lt;span class="published"&gt;10:08 AM Aug 2nd&lt;/span&gt;&lt;/a&gt; &lt;span&gt;from web&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="status-body"&gt;&lt;span class="entry-content"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;br /&gt;&lt;/span&gt;/**********************&lt;br /&gt;date 03/11/09&lt;br /&gt;&lt;span&gt;The problem with beauty is that it's like being born rich and getting poorer.&lt;br /&gt;Joan Collins&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;/**********************&lt;br /&gt;date 01/30/09&lt;br /&gt;"I have not failed. I've just found 10,000 ways that won't work."&lt;br /&gt;Thomas Edison&lt;br /&gt;&lt;br /&gt;/**********************&lt;br /&gt;date 01/15/09&lt;br /&gt;"The best way to predict the future is to invent it".&lt;br /&gt;Alan kay&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/**********************&lt;br /&gt;date 01/06/08&lt;br /&gt;"A positive attitude may not solve all your problems, but it will annoy enough people to make it worth the effort."&lt;br /&gt;Herm Albright&lt;br /&gt;&lt;br /&gt;/**********************&lt;br /&gt;date 12/19/08&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;"Do not worry about your difficulties in Mathematics. I can assure you mine are still greater.&lt;/span&gt;"&lt;br /&gt;Albert Einstein&lt;br /&gt;&lt;br /&gt;/**********************&lt;br /&gt;date 12/18/08&lt;br /&gt;"There is only one boss, the customer. And he can fire everybody in the company from the chairman on down, simply by spending his money somewhere else."&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Sam_Walton"&gt;Sam Walton&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;/*********************&lt;br /&gt;&lt;br /&gt;The most important characteristic for a career success is humility.&lt;br /&gt;First of all, confidence and humility are not mutually exclusive. You can be ultra confident about your skills, but you can also understand that you don't know everything there is to know.&lt;br /&gt;&lt;br /&gt;&lt;small&gt;&lt;i&gt;Source: &lt;a href="http://blogs.techrepublic.com.com/career/?p=436&amp;amp;tag=nl.e124"&gt;http://blogs.techrepublic.com.com/career/?p=436&amp;amp;tag=nl.e124&lt;/a&gt;&lt;/i&gt;&lt;/small&gt;&lt;br /&gt;&lt;br /&gt;Nov-06-08     KingG: &lt;again, kasparov="" did="" not="" show="" clear="" superiority="" to="" karpov="" until="" well="" after="" their="" 1990=""&gt; So what? Karpov was a fantastic player. There is no shame in only being a little bit better than him. That's more than anyone else can say.&lt;br /&gt;Source: &lt;a href="http://www.chessgames.com/perl/chessgame?gid=1067246"&gt;http://www.chessgames.com/perl/chessgame?gid=1067246&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;"Feedback is the breakfast of Champions"&lt;/again,&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-2735107931963537846?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/2735107931963537846/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=2735107931963537846' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2735107931963537846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2735107931963537846'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/08/just-think-about-it.html' title='just think about it'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-7252222829794393349</id><published>2008-07-07T20:56:00.000-07:00</published><updated>2008-07-08T17:28:36.860-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='como'/><category scheme='http://www.blogger.com/atom/ns#' term='tornar'/><category scheme='http://www.blogger.com/atom/ns#' term='um'/><category scheme='http://www.blogger.com/atom/ns#' term='se'/><category scheme='http://www.blogger.com/atom/ns#' term='plano'/><category scheme='http://www.blogger.com/atom/ns#' term='rico'/><category scheme='http://www.blogger.com/atom/ns#' term='milionário'/><title type='text'>Como se tornar um milionário (Como se tornar rico)</title><content type='html'>source: &lt;a href="http://www.freemoneyfinance.com/2006/04/how_to_become_a.html" target="_blanck"&gt;Free Money Finance&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Heh, um milhão de dólares não é o que costumava ser. Mas isto é mais do que 90% de todos os lares do EUA possuem. Então quem não gostaria de ser um milionário?&lt;br /&gt;&lt;br /&gt;Este artigo da Money Central foi escrito por uma milionária e aqui ela compartilha suas dicas sobre &lt;span style="FONT-STYLE: italic;color:blue;" &gt;como se tornar milionário&lt;/span&gt;. As dicas chaves:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Faça da segurança financeira uma prioridade&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Gaste menos do que ganha&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Economize e invista regularmente&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Salde suas dívidas&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Tenha uma casa própria (ficou redundante?)&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;Dicas boas, simples, básicas e efetivas. Eu voltarei com elas em um minuto, mas vamos rever alguns outros petiscos da peça:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Se você não tem um plano, é um caminho muito fácil para perder seu caminho: gastar dinheiro com coisas que não são importantes, tomar dívidas que mais prejudicam do que ajudam, cair em desespero quando o mercado se vira contra você. Ter uma meta de longo prazo e uma visão de longo prazo são essenciais para manter seu equilílibrio.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Eu abençôo minha Era-de-depressão mãe, que cresceu pobre, sabia como beliscar um tostão e colocava alta prioridade na poupança. Ela entendeu a importância de "se pagar primeiro", então a partir do meu primeiro emprego eu tenho economizado pelo menos 10%, e freqüentemente 20%, do meu salário bruto. Ela me ensinou como usar cartão de crédito como uma conveniência, não uma desculpa para comprar coisas que eu não poderia dar-se ao luxo. Ela via as pessoas com cartão de crédito com saldo com a mesma desconfiança e descontentamento com a qual ela considerava as pessoas que não mantinham a casa arrumada.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Denovo, planos de investimento automatizados realmente ajudam. Nós investimos independente do mercado está para cima, para baixo ou para os lados. Sabemos que na longa jornada, uma carteira de ações bem diversificada bate qualquer outro tipo de investimento, mesmo se há alguns acidentes ao longo do caminho.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Outro ponto-chave: Não gaste seu &lt;a href="#401"&gt;401 (k)&lt;/a&gt; quando você deixar o emprego. Quase metade de todos os trabalhadores fazem, e isto é insano. Não é apenas os impostos e penalidades que consomem um quarto de sua retirada. Mais importante, cada R$ 1000,00 custa R$ 10.000,00 na renda da aposentadoria futura. Então reinvista seu dinheiro em uma &lt;a href="#ira"&gt;IRA&lt;/a&gt; ou no seu próximo plano do empregador.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Mas isto siginifica que você deve evitar taxas elevadas de débito e ser cauteloso sobre sua carga total de débito. Mantendo suas despesas domésticas em 25% do seu pagamento bruto, por exemplo, ajudará a assegurar que você tem fundos suficientes sobrando para financiar suas metas e ter algum divertimento por algum tempo.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Apesar dos altos e baixos, possuir uma casa tem sido por muito tempo o alicerce para a riqueza para a maioria das pessoas. Considere que o valor líquido mediano de todos os proprietários na América em 2004 foi $184,400. Para locatários foi $4,000. Entre os lares 10% mais ricos, 96,9% são donos de casa, comparado com 69,1% de todos os lares.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Nós descobrimos que é mais fácil alcançar suas metas e ter dinheiro para se divertir se seus rendimentos estão crescendo. Assim nós investimos em educação, lançamos nosso próprio negócio e buscamos novos caminhos para gerar dinheiro. Na economia dinâmica de hoje, você tem que estar pronto para aprender novas habilidades e tomar novas direções.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Finalmente e talvez mais importante: Meu marido e eu não vivemos apenas para amanhã. Nossas metas de longo prazo são importantes para nós, mas nós também devemos aproveitar a vida hoje. A conta bancária mais gorda do mundo não seria de para nós se nós não tivemos uma possibilidade de apreciar um ao outro, nossa filha, nossas vidas.  Portanto nós apreciamos nossos objetivos financeiros quando nós os conseguimos, mas nós sabemos que há mais -- muito mais -- na vida do que o dinheiro.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;a name="401"&gt;&lt;h2 style="color:blue;"&gt;401 (k)&lt;/h2&gt;&lt;/a&gt;&lt;br /&gt;O plano 401k empregador-patrocinado definindo um plano de contribuição para aposentadoria sob a seção 401(k) Internal Revenue Code (26 U.S.C. § 401(k)) dos Estados Unidos e alguns outros países. (Qual um plano parecido no Brasil?)&lt;br /&gt;&lt;br /&gt;A 401 (k) permite ao trabalhador poupar para a aposentadoria, enquanto prorrogando os impostos sobre o rendimento do dinheiro guardado e ganhos até à retirada. O trabalhador opta por ter uma parte do seu salário pago directamente, ou "diferida", em sua conta 401 (k). Em planos participante-dirigido (a opção mais comum), o trabalhador pode escolher a partir de uma série de opções de investimento, normalmente uma variedade de fundos mútuos que enfatizam ações, obrigações, títulos de mercado monetário investimentos, ou alguma combinação das anteriores. Muitas empresas "401 (k) planos de oferecer também a opção de comprar ações da empresa. O empregado pode geralmente re-alocar dinheiro investindo entre estas opções a qualquer momento. Em planos menos coumum como administrador-dirigido 401 (k), a entidade patronal nomeia trustees que decidir como os ativos do plano serão investidos.&lt;br /&gt;Source: &lt;a href="http://en.wikipedia.org/wiki/401(k)" target="_blank"&gt;wikipedia&lt;/a&gt;&lt;br /&gt;&lt;a name="ira"&gt;&lt;h2 style="color:blue;"&gt;IRA&lt;/h2&gt;&lt;/a&gt;&lt;br /&gt;Uma conta individual de aposentadoria (IRA) é uma conta de um plano de aposentadoria que fornece algumas vantagens de imposto para as economias da aposentadoria nos EUA.&lt;br /&gt;Source: &lt;a href="http://en.wikipedia.org/wiki/Individual_Retirement_Account" target="_blank"&gt;wikipedia&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-7252222829794393349?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/7252222829794393349/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=7252222829794393349' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/7252222829794393349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/7252222829794393349'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/07/como-se-tornar-um-milinrio-como-se.html' title='Como se tornar um milionário (Como se tornar rico)'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-269339013628803315</id><published>2008-05-10T10:28:00.000-07:00</published><updated>2009-05-14T10:40:50.323-07:00</updated><title type='text'>Grandes Ensinamentos</title><content type='html'>"If you see the good move, look for the better one."&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/Emanuel_Lasker"&gt;Emanuel Lasker&lt;/a&gt;&lt;br /&gt;---------------------------------------&lt;br /&gt;"Viva como se fosse morrer amanhã e aprenda como se fosse viver para sempre"&lt;br /&gt;(Frase do líder pacifista indiano Mohandas Karamchand Gandhi, cujo título, Mahatma, significa “grande alma”.)&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Bill Gate's dad&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;"My favorite axiom is: 'We are all in this together.'&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You know it's a good axiom because there are so many ways to express it. 'We are all in the same boat' is one. Benjamin Franklin said, 'We must all hang together, or assuredly we shall all hang separately'.&lt;/div&gt;&lt;div&gt;The fundamental idea here is interdependence. We simply cannot succed without the  contribution of others.&lt;/div&gt;&lt;div&gt;What are the implications of that idea? The biggest one is basic citizenship. Citizenship means that we are obligated to believe that every person matters just as much as every other person."&lt;br /&gt;&lt;br /&gt;*****************************&lt;br /&gt;8/7/2008&lt;br /&gt;TRECHO EXTRAÍDO DA FOLHA DE SÃO PAULO DOMINGO, 6 DE JULHO 2008&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;JOSÉ SIMÃO&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Bafômetro! Aceitamos casais a pé!&lt;/h2&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;Um drive-in já estendeu a faixa: "Aceitamos Casais a Pé!". E reunião de amigos para beber uma cervejinha agora é pelo Messenger. Cada um na sua casa no computador com a sua latinha! Assasinaram o happy hour! E hoje vai ter passeata. Manifesto das Mulheres Feias! Sem beber, quem vai comer a gente?!&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;E a Marta Motox? Prometeu um túnel ligando o cabeleireiro à academia. Túnel Belezura! E o Alckimin continua com aquela cara de degustador de sopa de hospital!&lt;br /&gt;&lt;br /&gt;....&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*****************************&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;"Transar é arte, gozar faz parte, engravidar é moda, assumir é que é foda!"&lt;br /&gt;&lt;br /&gt;"Casar é trocar a admiração de várias mulheres pelas críticas de uma só."&lt;br /&gt;&lt;br /&gt;"A principal diferença entre o homem e a mulher é que o pau que está entre as pernas do homem é sempre o mesmo."&lt;br /&gt;&lt;br /&gt;"Mulheres são como traduções: as boas não são fiéis, e as fiéis não são boas."&lt;br /&gt;&lt;br /&gt;"O que há em comum entre um bolo queimado, uma cerveja estourada no congelador e uma mulher grávida?&lt;br /&gt;&lt;br /&gt;Se você tivesse tirado antes, nenhum deles teria acontecido..."&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;"The human brain starts working the moment you are born and never stops until you stand up to speak in public."&lt;br /&gt;- George Jessel&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;"When you play, play hard; when you work, don't play at all."&lt;br /&gt;&lt;br /&gt;God will never throw anything at you that you can't handle. Just take it one step at a time.&lt;br /&gt;&lt;br /&gt;"For those who don't believe in themselves... Hard-work is useless."&lt;br /&gt;         Maito Gai&lt;br /&gt;&lt;br /&gt;so who's the king?&lt;br /&gt;"The unborn children who''ll grow up to be the next generation of the leaf ninja".&lt;br /&gt;    Sarutobi Asuma&lt;br /&gt;&lt;br /&gt;"... I can't force you to believe me, that's your choice.&lt;br /&gt;... people live their lives bound by what they accept as correct and true. That's how they define 'reality'.&lt;br /&gt;But what does it mean to be 'correct' or 'true'? Merely vague concepts ... Their 'reality' may all be a mirage.&lt;br /&gt;Can we consider them to simply be living in their own world, shaped by their beliefs?"&lt;br /&gt;    Uchiha Itachi&lt;br /&gt;&lt;br /&gt;"I'm in no condition to drive...Wait! I shouldn't listen to myself, I'm drunk!"&lt;br /&gt;- Homer J. Simpson&lt;br /&gt;- Theodore Roosevelt&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-269339013628803315?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/269339013628803315/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=269339013628803315' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/269339013628803315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/269339013628803315'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2008/05/grandes-ensinamentos.html' title='Grandes Ensinamentos'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-5672026603543907765.post-2738834502510582153</id><published>2007-09-07T09:29:00.000-07:00</published><updated>2008-10-04T05:48:52.463-07:00</updated><title type='text'>Naruto</title><content type='html'>&lt;strong&gt;Naruto&lt;/strong&gt; (ナルト, Naruto&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) é uma série de &lt;a title="Mangá" href="http://pt.wikipedia.org/wiki/Mang%C3%83%C2%A1"&gt;mangá&lt;/a&gt; criada por &lt;a title="Masashi Kishimoto" href="http://pt.wikipedia.org/wiki/Masashi_Kishimoto"&gt;Masashi Kishimoto&lt;/a&gt; e serializada na revista semanal &lt;a title="Shonen Jump" href="http://pt.wikipedia.org/wiki/Shonen_Jump"&gt;Shonen Jump&lt;/a&gt; desde &lt;a title="1999" href="http://pt.wikipedia.org/wiki/1999"&gt;1999&lt;/a&gt;. Recebeu uma adaptação para &lt;a title="Anime" href="http://pt.wikipedia.org/wiki/Anime"&gt;anime&lt;/a&gt; em &lt;a title="2002" href="http://pt.wikipedia.org/wiki/2002"&gt;2002&lt;/a&gt; produzida pelo &lt;a class="mw-redirect" title="Studio Pierrot" href="http://pt.wikipedia.org/wiki/Studio_Pierrot"&gt;Studio Pierrot&lt;/a&gt; e exibida pela &lt;a title="TV Tokyo" href="http://pt.wikipedia.org/wiki/TV_Tokyo"&gt;TV Tokyo&lt;/a&gt;. A série animada foi exibida até &lt;a title="Fevereiro" href="http://pt.wikipedia.org/wiki/Fevereiro"&gt;Fevereiro&lt;/a&gt; de &lt;a title="2007" href="http://pt.wikipedia.org/wiki/2007"&gt;2007&lt;/a&gt;, quando recebeu uma sequência, &lt;a title="Naruto: Shippuuden" href="http://pt.wikipedia.org/wiki/Naruto:_Shippuuden"&gt;Naruto: Shippuuden&lt;/a&gt;, correspondente à segunda parte do mangá.&lt;br /&gt;No &lt;a title="Brasil" href="http://pt.wikipedia.org/wiki/Brasil"&gt;Brasil&lt;/a&gt;, a série começou a ser exibida em &lt;a title="1 de Janeiro" href="http://pt.wikipedia.org/wiki/1_de_Janeiro"&gt;1 de Janeiro&lt;/a&gt; de 2007 no canal pago &lt;a title="Cartoon Network" href="http://pt.wikipedia.org/wiki/Cartoon_Network"&gt;Cartoon Network&lt;/a&gt;, em uma edição feita pela licenciadora &lt;a class="mw-redirect" title="Norte-americana" href="http://pt.wikipedia.org/wiki/Norte-americana"&gt;norte-americana&lt;/a&gt; &lt;a class="mw-redirect" title="VIZ Media" href="http://pt.wikipedia.org/wiki/VIZ_Media"&gt;VIZ Media&lt;/a&gt;. Na &lt;a class="mw-redirect" title="TV aberta" href="http://pt.wikipedia.org/wiki/TV_aberta"&gt;TV aberta&lt;/a&gt;, a série passou a ser exibida pelo &lt;a class="mw-redirect" title="SBT" href="http://pt.wikipedia.org/wiki/SBT"&gt;SBT&lt;/a&gt; (em uma terceira edição), em &lt;a title="3 de Julho" href="http://pt.wikipedia.org/wiki/3_de_Julho"&gt;3 de Julho&lt;/a&gt; de &lt;a title="2007" href="http://pt.wikipedia.org/wiki/2007"&gt;2007&lt;/a&gt;, através da distribuidora SATO CO. Ltda do empresário Nelson Akira Sato. O mangá é publicado pela &lt;a class="mw-redirect" title="Panini Comics" href="http://pt.wikipedia.org/wiki/Panini_Comics"&gt;Panini Comics&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Aviso&lt;/strong&gt;: Abaixo contém &lt;a title="Wikipedia:A Wikipédia contém spoilers" href="http://pt.wikipedia.org/wiki/Wikipedia:A_Wikip%C3%83%C2%A9dia_cont%C3%83%C2%A9m_spoilers"&gt;revelações sobre o enredo&lt;/a&gt; (&lt;em&gt;spoilers&lt;/em&gt;).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ranking&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;a class="mw-redirect" title="Genin" href="http://pt.wikipedia.org/wiki/Genin"&gt;Genins&lt;/a&gt;&lt;br /&gt;&lt;a class="mw-redirect" title="Shinobi" href="http://pt.wikipedia.org/wiki/Shinobi"&gt;Shinobi&lt;/a&gt; já graduado na academia ninja. A maioria dos genins utiliza técnicas básicas, grande parte delas aprendidas na academia, mas é valido lembrar que alguns Genins desenvolvem técnicas próprias, ou caso tenham, técnicas de sua linhagem sangüínea avançada.&lt;br /&gt;Normalmente são formados grupos de três Genins para serem treinados por um Jounin. Eles recebem missões muito fáceis e "chatas", como andar com os cachorros de um homem rico ou procurar um gato, resgatar um animal que fugiu ou ajudar pessoas a colher e plantar, ou até mesmo escoltar uma pessoa. Essas missões são de rank D ou C.&lt;br /&gt;&lt;br /&gt;&lt;a class="mw-redirect" title="Chunnin" href="http://pt.wikipedia.org/wiki/Chunnin"&gt;Chunnins&lt;/a&gt;&lt;br /&gt;Depois de participar do &lt;a title="Chuunin Shiken" href="http://pt.wikipedia.org/wiki/Chuunin_Shiken"&gt;Exame Chuunin&lt;/a&gt;, o Genin é julgado por sua força e inteligência pelos Kages, senhores feudais e dentre os juízes. Eles agora são qualificados para liderar um grupo de Genins durante missões extracurriculares. Eles podem ser mandados em missões sozinhos ou em grupo. Eles normalmente viajam em grupos de quatro nas missões, podendo ser de rank C ou B.&lt;br /&gt;&lt;br /&gt;&lt;a class="mw-redirect" title="Jounin" href="http://pt.wikipedia.org/wiki/Jounin"&gt;Jounins&lt;/a&gt;&lt;br /&gt;Chuunins que possuem uma inteligência e uma força extraordinária são promovidos para Jounins. Este é um nível ninja muito alto, todos os Jounins são enviados para missões mais difíceis do que as dos Chuunins, normalmente envolvendo assassinatos e infiltrações, como as missões de rank A e S. Alguns Jounins possuem uma força incalculável e algumas habilidades completamente desconhecidas, Jounins são maduros o suficiente para treinar grupos de três Genins e acompanhá-los em missões.&lt;br /&gt;&lt;br /&gt;&lt;a class="mw-redirect" title="ANBU" href="http://pt.wikipedia.org/wiki/ANBU"&gt;ANBU&lt;/a&gt;&lt;br /&gt;Ansatsu Senjutsu Tokushu Butai (暗殺戦術特殊部隊, Esquadrão Especial de Táticas e Assassinatos&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;), a elite especial shinobi, recebendo ordens diretamente do &lt;a class="mw-redirect" title="Hokage" href="http://pt.wikipedia.org/wiki/Hokage"&gt;Hokage&lt;/a&gt;. Todos os shinobis existentes na ANBU são Jounins com um altíssimo poder. Os Shinobis ANBU são normalmente enviados para capturas, assassinatos especiais, investigações secretas e sempre tem participações nas guerras.&lt;br /&gt;Ex-membros ANBU: &lt;a class="mw-redirect" title="Hatake Kakashi" href="http://pt.wikipedia.org/wiki/Hatake_Kakashi"&gt;Hatake Kakashi&lt;/a&gt;, &lt;a class="mw-redirect" title="Uchiha Itachi" href="http://pt.wikipedia.org/wiki/Uchiha_Itachi"&gt;Uchiha Itachi&lt;/a&gt;, &lt;a title="Yamato (Naruto)" href="http://pt.wikipedia.org/wiki/Yamato_(Naruto)"&gt;Yamato&lt;/a&gt; (&lt;a title="Yamato (Naruto)" href="http://pt.wikipedia.org/wiki/Yamato_(Naruto)"&gt;Tenzou&lt;/a&gt;), &lt;a class="mw-redirect" title="Morino Ibiki" href="http://pt.wikipedia.org/wiki/Morino_Ibiki"&gt;Morino Ibiki&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a class="mw-redirect" title="Nukenin" href="http://pt.wikipedia.org/wiki/Nukenin"&gt;Nukenin&lt;/a&gt;&lt;br /&gt;Ninjas que abandonaram por motivos pessoais ou traíram o seu vilarejo. Por isso, eles são marcados para serem mortos pelos Oinins (Caçadores Ninjas). A organização denominada Akatsuki é composta por 10 nukenins, cujo poder de cada integrante é comparável ao dos Kages.&lt;br /&gt;Ninjas-Rejeitados: &lt;a class="mw-redirect" title="Momochi Zabuza" href="http://pt.wikipedia.org/wiki/Momochi_Zabuza"&gt;Momochi Zabuza&lt;/a&gt; (Névoa) (Morto), &lt;a class="mw-redirect" title="Yakushi Kabuto" href="http://pt.wikipedia.org/wiki/Yakushi_Kabuto"&gt;Yakushi Kabuto&lt;/a&gt; (Konoha), &lt;a class="mw-redirect" title="Hoshigaki Kisame" href="http://pt.wikipedia.org/wiki/Hoshigaki_Kisame"&gt;Hoshigaki Kisame&lt;/a&gt; (Névoa), &lt;a class="mw-redirect" title="Uchiha Itachi" href="http://pt.wikipedia.org/wiki/Uchiha_Itachi"&gt;Uchiha Itachi&lt;/a&gt; (Konoha) (Morto), &lt;a title="Orochimaru" href="http://pt.wikipedia.org/wiki/Orochimaru"&gt;Orochimaru&lt;/a&gt; (Konoha) (Morto), &lt;a title="Sasori" href="http://pt.wikipedia.org/wiki/Sasori"&gt;Sasori&lt;/a&gt;(Areia) (Morto), &lt;a class="mw-redirect" title="Deidara" href="http://pt.wikipedia.org/wiki/Deidara"&gt;Deidara&lt;/a&gt; (Pedra) (Morto), &lt;a title="Zetsu" href="http://pt.wikipedia.org/wiki/Zetsu"&gt;Zetsu&lt;/a&gt; (Grama) &lt;a title="Kakuzu" href="http://pt.wikipedia.org/wiki/Kakuzu"&gt;Kakuzu&lt;/a&gt; (Cachoeira) (Morto), &lt;a title="Hidan" href="http://pt.wikipedia.org/wiki/Hidan"&gt;Hidan&lt;/a&gt; (Chuva) (Morto), &lt;a class="mw-redirect" title="Pein" href="http://pt.wikipedia.org/wiki/Pein"&gt;Pain&lt;/a&gt; (Chuva), &lt;a title="Konan" href="http://pt.wikipedia.org/wiki/Konan"&gt;Konan&lt;/a&gt; (Chuva), &lt;a class="mw-redirect" title="Uchiha Sasuke" href="http://pt.wikipedia.org/wiki/Uchiha_Sasuke"&gt;Uchiha Sasuke&lt;/a&gt; (Konoha), &lt;a title="Tobi" href="http://pt.wikipedia.org/wiki/Tobi"&gt;Tobi&lt;/a&gt; (Konoha)&lt;br /&gt;&lt;br /&gt;&lt;a class="mw-redirect" title="Oinin" href="http://pt.wikipedia.org/wiki/Oinin"&gt;Oinin&lt;/a&gt;&lt;br /&gt;Caçadores Ninja, também conhecidos como Ninjas rastreadores são os shinobis especializados em matar ou capturar os Ninjas-Rejeitados que fogem da vila. São shinobis extremamente inteligentes e conhecedores da estrutura corporal de um ser humano. Podem ser identificados por suas máscaras especiais (parecidas com a da ANBU). Ao encontrarem os Ninjas-Rejeitados que fogem da vila os matam para que os segredos da vila não sejam revelados a inimigos.&lt;br /&gt;Durante todo o anime, nenhum destes ninjas realmente são mostrados, mas, logo na primeira temporada Haku aparece nos trajes de um caçador e se diz um suposto Oinin.&lt;br /&gt;&lt;a id="Kages" name="Kages"&gt;&lt;/a&gt;&lt;br /&gt;&lt;a title="Kages" href="http://pt.wikipedia.org/wiki/Kages"&gt;Kages&lt;/a&gt;&lt;br /&gt;O mais poderoso Shinobi de um vilarejo. Seu poder só pode ser comparado ao de outro Kage. Sua finalidade é administrar toda vila, incluindo os shinobis dela, as missões e seus moradores. Caso haja uma guerra, o Kage sempre está disposto a dar sua vida pelo seu vilarejo.&lt;br /&gt;Kages: &lt;a title="Primeiro Hokage" href="http://pt.wikipedia.org/wiki/Primeiro_Hokage"&gt;Primeiro Hokage (Shodaime)&lt;/a&gt;, &lt;a title="Segundo Hokage" href="http://pt.wikipedia.org/wiki/Segundo_Hokage"&gt;Segundo Hokage (Nidaime)&lt;/a&gt;, &lt;a title="Terceiro Hokage" href="http://pt.wikipedia.org/wiki/Terceiro_Hokage"&gt;Sarutobi - Terceiro Hokage (Sandaime)&lt;/a&gt;, &lt;a class="mw-redirect" title="Quarto Hokage" href="http://pt.wikipedia.org/wiki/Quarto_Hokage"&gt;Minato Namikaze - Quarto Hokage (Yondaime)&lt;/a&gt;, &lt;a title="Tsunade" href="http://pt.wikipedia.org/wiki/Tsunade"&gt;Tsunade - Quinta Hokage (Godaime)&lt;/a&gt;, &lt;a class="mw-redirect" title="Quinto Kazekage" href="http://pt.wikipedia.org/wiki/Quinto_Kazekage"&gt;Sabaku no Gaara - Quinto Kazekage&lt;/a&gt; (Vila Oculta da Areia), &lt;a title="Orochimaru" href="http://pt.wikipedia.org/wiki/Orochimaru"&gt;Orochimaru - Otokage&lt;/a&gt;,(Vila oculta do Som).&lt;br /&gt;&lt;br /&gt;&lt;a class="mw-redirect" title="Jutsus" href="http://pt.wikipedia.org/wiki/Jutsus"&gt;Jutsus&lt;/a&gt;&lt;br /&gt;&lt;a title="Jutsu (Naruto)" href="http://pt.wikipedia.org/wiki/Jutsu_(Naruto)"&gt;Jutsu&lt;/a&gt; é a mística arte que um ninja usa na batalha. Para usar um jutsu um ninja precisa usar o &lt;a title="Chakra" href="http://pt.wikipedia.org/wiki/Chakra"&gt;chakra&lt;/a&gt;. Chakra vem de dois lugares: da energia do corpo nos trilhões de células e da energia espiritual e mental adquirida por meio de exercícios e experiência. Para fazer um jutsu, o ninja vai precisar usar duas energias. Fazendo um selo de mão o ninja consegue manifestar o jutsu desejado. Por causa do extensivo número de selos de mão e as diferentes combinações existem centenas de jutsus para serem usados. Baseado em qual jutsu o ninja usa, o tipo e a quantidade de chakra será diferente assim como o elemento que é usado.&lt;br /&gt;Os jutsus se dividem em três tipos:&lt;br /&gt;&lt;a title="Ninjutsu (Naruto)" href="http://pt.wikipedia.org/wiki/Ninjutsu_(Naruto)"&gt;Ninjutsu&lt;/a&gt;: É a técnica ninja mais utilizada. Baseia-se no uso de selamento com as mãos e chakra convertido em elementos, ou algo que se possa usar como um "poder ou habilidade" especial.&lt;br /&gt;&lt;a title="Taijutsu (Naruto)" href="http://pt.wikipedia.org/wiki/Taijutsu_(Naruto)"&gt;Taijutsu&lt;/a&gt;: combate corpo-a-corpo.&lt;br /&gt;&lt;a class="mw-redirect" title="Genjutsu" href="http://pt.wikipedia.org/wiki/Genjutsu"&gt;Genjutsu&lt;/a&gt;: habilidade mental usa-se para enganar, iludir ou até agredir o adversário.&lt;br /&gt;Também existem alguns jutsus especiais, os passados por meio de sangue, chamados de &lt;a title="Kekkei Genkai" href="http://pt.wikipedia.org/wiki/Kekkei_Genkai"&gt;Kekkei Genkai&lt;/a&gt;. Ainda existem os &lt;a class="mw-redirect" title="Fuuinjutsu" href="http://pt.wikipedia.org/wiki/Fuuinjutsu"&gt;Fuuinjutsu&lt;/a&gt;, &lt;a class="mw-redirect" title="Kinjutsu" href="http://pt.wikipedia.org/wiki/Kinjutsu"&gt;Kinjutsu&lt;/a&gt;, &lt;a class="mw-redirect" title="Hijutsu" href="http://pt.wikipedia.org/wiki/Hijutsu"&gt;Hijutsu&lt;/a&gt; e &lt;a title="Juin Jutsu" href="http://pt.wikipedia.org/wiki/Juin_Jutsu"&gt;Juin Jutsu&lt;/a&gt;.&lt;br /&gt;&lt;a class="mw-redirect" title="Doujutsu (Naruto)" href="http://pt.wikipedia.org/wiki/Doujutsu_(Naruto)"&gt;Doujutsu&lt;/a&gt;: Habilidades utilizadas através das pupilas/olhos. Permitem ao usuário ler vários tipos de Genjutsu, Ninjutsu e Taijutsu para antecipá-los e se defender durante uma luta, ou até mesmo copiá-los, como é o caso do Sharingan. Geralmente exclusivas de clãs com kekkei genkai.&lt;br /&gt;&lt;a title="Hijutsu (Naruto)" href="http://pt.wikipedia.org/wiki/Hijutsu_(Naruto)"&gt;Hijutsu&lt;/a&gt;: Habilidades especiais e secretas limitadas a certos indivíduos (passadas pela família) ou a clãs com linhagem avançada de sangue (kekkei genkai). Podem ser adquiridas através de transplante ou experiência genética (como aconteceu com Hatake Kakashi e Yamato, respectivamente). Esse tipo de jutsu não é classificado em nível de dificuldade por ser exclusivo de determinadas famílias.&lt;br /&gt;&lt;a title="Kinjutsu (Naruto)" href="http://pt.wikipedia.org/wiki/Kinjutsu_(Naruto)"&gt;Kinjutsu&lt;/a&gt;: É uma classificação informal para jutsus. Como o próprio nome já diz, são técnicas proibidas ou moralmente rejeitadas, geralmente por exigirem sacrifícios muito altos ou hediondos. O nível de dificuldade dessas técnicas pode variar de Rank-C a Rank-S, e podem ser de qualquer uma das três categorias principais (Ninjutsu, Genjutsu ou Taijutsu). Entretanto, poucos têm acesso aos kinjutsus.&lt;br /&gt;&lt;a title="Fuuinjutsu (Naruto)" href="http://pt.wikipedia.org/wiki/Fuuinjutsu_(Naruto)"&gt;Fuuinjutsu&lt;/a&gt;: São ninjutsus de selamento, que aprisionam espíritos, bijuus, chakra, armas e quaisquer outros seres animados ou inanimados em algo ou alguém. Versáteis, podem servir tanto para conter um demônio quanto para carregar um grande número de armas em um pergaminho, dependendo, é claro, do nível de dificuldade.&lt;br /&gt;&lt;br /&gt;&lt;a title="Sannin" href="http://pt.wikipedia.org/wiki/Sannin"&gt;Sannin&lt;/a&gt;&lt;br /&gt;Literalmente "três ninjas" em japonês (San = 3, nin = Ninja). Fortes candidatos ao cargo de Hokage são considerados "Ninjas Lendários" esta denominação "Sannin" só é aplicada aos discípulos de &lt;a title="Terceiro Hokage" href="http://pt.wikipedia.org/wiki/Terceiro_Hokage"&gt;Sarutobi&lt;/a&gt; que são: &lt;a title="Tsunade" href="http://pt.wikipedia.org/wiki/Tsunade"&gt;Tsunade&lt;/a&gt;, &lt;a title="Jiraya (Naruto)" href="http://pt.wikipedia.org/wiki/Jiraya_(Naruto)"&gt;Jiraiya&lt;/a&gt; e &lt;a title="Orochimaru" href="http://pt.wikipedia.org/wiki/Orochimaru"&gt;Orochimaru&lt;/a&gt; (este sendo um &lt;a class="mw-redirect" title="Classificação ninja (naruto)" href="http://pt.wikipedia.org/wiki/Classifica%C3%83%C2%A7%C3%83%C2%A3o_ninja_(naruto)"&gt;Nukenin&lt;/a&gt;). Os três lendários já passaram do Rank de Jounin, acima disso existiria o Kage, mas Sannin não é um Rank, é um título dado aos três. Orochimaru é considerado um Nukenin, ou seja, um traidor. O Rank de Tsunade é Hokage. O que resta para Jiraiya é ser chamado de Sennin (que significa eremita).&lt;br /&gt;Na edição 369 do mangá, foi revelado que &lt;a class="mw-redirect" title="Jiraiya" href="http://pt.wikipedia.org/wiki/Jiraiya"&gt;Jiraiya&lt;/a&gt;, &lt;a title="Tsunade" href="http://pt.wikipedia.org/wiki/Tsunade"&gt;Tsunade&lt;/a&gt; e &lt;a title="Orochimaru" href="http://pt.wikipedia.org/wiki/Orochimaru"&gt;Orochimaru&lt;/a&gt; são chamados de "Sannin lendários de Konoha", pois foram os únicos que sobreviveram em uma das batalhas contra a Vila Oculta da Chuva em um ataque feito pelo líder do vilarejo, Hanzou. Ele então os nomeou Sannin em troca de saber seus nomes, pois os considerou muito fortes e dignos de seu respeito e que só os deixou viver por esse fato.&lt;br /&gt;&lt;a title="Orochimaru" href="http://pt.wikipedia.org/wiki/Orochimaru"&gt;Orochimaru&lt;/a&gt;&lt;br /&gt;Orochimaru foi um dos 3 aprendizes do &lt;a title="Terceiro Hokage" href="http://pt.wikipedia.org/wiki/Terceiro_Hokage"&gt;Sarutobi - Terceiro Hokage&lt;/a&gt; junto com Jiraiya e Tsunade. Orochimaru sempre pensou em seu futuro como o Quarto Hokage, pois seu mestre sentia muito amor por ele. Quando Sarutobi sentiu que devia nomear um novo Hokage, Orochimaru pensou que sua hora havia chegado, mas seu mestre nomeou como Quarto Hokage Namikaze Minato discípulo de Jiraiya, pois além de ser mais forte, ele tinha mais nobreza e caráter que Orochimaru que se revoltou contra isso e fugiu. Tempos depois, no torneio Chuunin Shiken, Orochimaru aparece disfarçado para tentar se vingar do seu mestre. Ele consegue matar o Terceiro, porém perde a capacidade de usar seus jutsus, pois suas mãos foram seladas pelo Terceiro antes de sua morte.&lt;br /&gt;&lt;a class="mw-redirect" title="Jiraiya (Naruto)" href="http://pt.wikipedia.org/wiki/Jiraiya_(Naruto)"&gt;Jiraiya&lt;/a&gt;&lt;br /&gt;Jiraiya é outro ninja com nível de sannin. Sabemos que foi o sensei do Quarto Hokage e ele pega Naruto para treinar para a terceira fase do Chunnin Shiken. Assim ele ensina Naruto a invocar o poderoso &lt;a class="mw-redirect" title="Gamabunta" href="http://pt.wikipedia.org/wiki/Gamabunta"&gt;Gamabunta&lt;/a&gt; (Chamado por Naruto de Gama Oyabin "Chefe dos Sapos"), que é o mesmo que o Quarto Hokage invocou para ajudá-lo no selamento da &lt;a class="mw-redirect" title="Kyuubi" href="http://pt.wikipedia.org/wiki/Kyuubi"&gt;Kyuubi&lt;/a&gt;. No mangá, é dito que Jiraiya não tem nenhum grau de parentesco com Naruto ou Minato. Ele também é conhecido pelos seus atos mulherengos, como Ero Sennin (hermitão pervertido).&lt;br /&gt;&lt;a title="Tsunade" href="http://pt.wikipedia.org/wiki/Tsunade"&gt;Tsunade&lt;/a&gt;&lt;br /&gt;Tsunade tem em seu maior vício o jogo. Tanto que ganhou o apelido Perdedora por causa de sua péssima sorte. Uma das três sannins é neta do &lt;a title="Primeiro Hokage" href="http://pt.wikipedia.org/wiki/Primeiro_Hokage"&gt;Primeiro Hokage&lt;/a&gt;. Especializou-se em jutsu médico, criando uma regra que todo time ninja deveria ter um ninja médico, o que evitaria mortes. Seu irmão mais novo foi morto na guerra, e seu amor também. Desde então ela tem medo de sangue, e viaja pelo mundo, apostando e perdendo, junto com sua aluna &lt;a title="Shizune" href="http://pt.wikipedia.org/wiki/Shizune"&gt;Shizune&lt;/a&gt;. É tida como a maior ninja que já existiu na técnica de curar é também a &lt;a title="Tsunade" href="http://pt.wikipedia.org/wiki/Tsunade"&gt;Godaime Hokage&lt;/a&gt; de Konoha.&lt;br /&gt;&lt;br /&gt;Música de Aberturas e encerramentos&lt;br /&gt;&lt;a id="Temas_de_abertura_.28openings.29" name="Temas_de_abertura_.28openings.29"&gt;&lt;/a&gt;&lt;br /&gt;Temas de abertura (openings)&lt;br /&gt;Episodios 1 al 25: R★O★C★K★S por &lt;a class="new" title="Hound Dog (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Hound_Dog&amp;amp;action=edit&amp;amp;redlink=1"&gt;HOUND DOG&lt;/a&gt;&lt;br /&gt;Episodios 26 al 53: "Haruka Kanata" (遥か彼方, Allá, a lo lejos&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a class="mw-redirect" title="Asian Kung-fu Generation" href="http://pt.wikipedia.org/wiki/Asian_Kung-fu_Generation"&gt;Asian Kung-fu Generation&lt;/a&gt;&lt;br /&gt;Episodios 54 al 77: "Kanashimi wo Yasashisa ni" (悲しみをやさしさに, Tristeza en la ternura&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a class="new" title="Little by little (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Little_by_little&amp;amp;action=edit&amp;amp;redlink=1"&gt;little by little&lt;/a&gt;&lt;br /&gt;Episodios 78 al 103: "GO!!!" por &lt;a title="FLOW" href="http://pt.wikipedia.org/wiki/FLOW"&gt;FLOW&lt;/a&gt;&lt;br /&gt;Episodios 104 al 128: Seishun Kyōsōkyoku (青春狂想曲, Rapsodia de juventud&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a title="Sambomaster" href="http://pt.wikipedia.org/wiki/Sambomaster"&gt;Sambomaster&lt;/a&gt; (サンボマスター, Sanbomasutā&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;)&lt;br /&gt;Episodios 129 al 153: "No Boy, No Cry" (ノーボーイ・ノークライ, Nō bōi - Nō kurai&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a class="new" title="STANCE PUNKS (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=STANCE_PUNKS&amp;amp;action=edit&amp;amp;redlink=1"&gt;STANCE PUNKS&lt;/a&gt;&lt;br /&gt;Episodios 154 al 178: "Namikaze Satellite" (波風サテライト, Namikaze Sateraito&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;, Satélite del desacuerdo) por &lt;a class="new" title="Snorkel (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Snorkel&amp;amp;action=edit&amp;amp;redlink=1"&gt;Snorkel&lt;/a&gt; (シュノーケル, Shunōkeru&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;)&lt;br /&gt;Episodios 179 al 202: "Re:member" por &lt;a title="FLOW" href="http://pt.wikipedia.org/wiki/FLOW"&gt;FLOW&lt;/a&gt;&lt;br /&gt;Episodios 203 al 220: "Yura Yura" por &lt;a class="new" title="Hearts Grow (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Hearts_Grow&amp;amp;action=edit&amp;amp;redlink=1"&gt;Hearts Grow&lt;/a&gt;&lt;br /&gt;&lt;a id="Naruto_Shippuden" name="Naruto_Shippuden"&gt;&lt;/a&gt;&lt;br /&gt;Naruto Shippuden&lt;br /&gt;Episodios 1 al 30: Hero's Come Back!! por &lt;a class="new" title="Nobodyknows+ (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Nobodyknows%2B&amp;amp;action=edit&amp;amp;redlink=1"&gt;Nobodyknows+&lt;/a&gt;&lt;br /&gt;Episodios 31 al 52: The Distance por &lt;a class="new" title="Long Shot Party (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Long_Shot_Party&amp;amp;action=edit&amp;amp;redlink=1"&gt;Long Shot Party&lt;/a&gt;&lt;br /&gt;Episodios 53 al ??: BLUE BIRD por &lt;a class="new" title="Ikimono Gakari (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Ikimono_Gakari&amp;amp;action=edit&amp;amp;redlink=1"&gt;Ikimono Gakari&lt;/a&gt;&lt;br /&gt;&lt;a id="Vers.C3.A3o_Americana" name="Vers.C3.A3o_Americana"&gt;&lt;/a&gt;&lt;br /&gt;Versão Americana&lt;br /&gt;Episodios 1 al 52: Rise (n/a) Jeremy Sweet and Ian Nickus&lt;br /&gt;Episodios 53 al 77: 遥か彼方 Haruka Kanata, "Far away" Asian Kung-Fu Generation&lt;br /&gt;Episodios 78 al 104: "GO!!!" por &lt;a title="FLOW" href="http://pt.wikipedia.org/wiki/FLOW"&gt;FLOW&lt;/a&gt;&lt;br /&gt;Episodios 105 al ??: Seishun Kyōsōkyoku (青春狂想曲, Rapsodia de juventud?) por Sambomaster (サンボマスター, Sanbomasutā?)&lt;br /&gt;&lt;a id="Temas_de_encerramento_.28endings.29" name="Temas_de_encerramento_.28endings.29"&gt;&lt;/a&gt;&lt;br /&gt;Temas de encerramento (endings)&lt;br /&gt;Episodios 1 al 25: "Wind" (ワインド, Waindo&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;, Viento) por &lt;a title="Akeboshi" href="http://pt.wikipedia.org/wiki/Akeboshi"&gt;Akeboshi&lt;/a&gt; (明星, &lt;a title="Akeboshi" href="http://pt.wikipedia.org/wiki/Akeboshi"&gt;Akeboshi&lt;/a&gt;&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;)&lt;br /&gt;Episodios 26 al 51: "Harmonia" (ハルモニア, Harumonia&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a class="new" title="RYTHEM (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=RYTHEM&amp;amp;action=edit&amp;amp;redlink=1"&gt;RYTHEM&lt;/a&gt;&lt;br /&gt;Episodios 52 al 64: "Viva★rock ~Japanese side~" (ビバ★ロック~japanese side~, Biba★rokku~japanese side~&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a class="new" title="ORANGE RANGE (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=ORANGE_RANGE&amp;amp;action=edit&amp;amp;redlink=1"&gt;ORANGE RANGE&lt;/a&gt;&lt;br /&gt;Episodios 65 al 77: "ALIVE" por &lt;a class="new" title="Raiko (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Raiko&amp;amp;action=edit&amp;amp;redlink=1"&gt;Raiko&lt;/a&gt; (雷鼓, &lt;a class="new" title="Raiko (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Raiko&amp;amp;action=edit&amp;amp;redlink=1"&gt;Raiko&lt;/a&gt;&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;)&lt;br /&gt;Episodios 78 al 89: "Ima Made Nando Mo" (今まで何度も, "Hasta ahora, repetidamente"&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a title="The Mass Missile" href="http://pt.wikipedia.org/wiki/The_Mass_Missile"&gt;The Mass Missile&lt;/a&gt; (ザ・マスミサイル, Za Masumisairu&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;, El misil masivo)&lt;br /&gt;Episodios 90 al 103: "Ryūsei" (流星, Estrella fugaz&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) by &lt;a class="new" title="TiA (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=TiA&amp;amp;action=edit&amp;amp;redlink=1"&gt;TiA&lt;/a&gt;&lt;br /&gt;Episodios 104 al 115: "Mountain a Gogo two" (マウンテン・ア・ゴーゴー・ツー, Maunten-a-gōgō-tsū&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a class="new" title="Captain Stridum (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Captain_Stridum&amp;amp;action=edit&amp;amp;redlink=1"&gt;Captain Stridum&lt;/a&gt; (キャプテンストライダム, Kyaputen Sutoraidam&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;)&lt;br /&gt;Episodios 116 al 128: "Hajimete kimi to shabereta" (はじめて君としゃべった, La primera vez que charlé contigo&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a class="new" title="GagagaSP (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=GagagaSP&amp;amp;action=edit&amp;amp;redlink=1"&gt;GagagaSP&lt;/a&gt; (ガガガSP, &lt;a class="new" title="GagagaSP (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=GagagaSP&amp;amp;action=edit&amp;amp;redlink=1"&gt;GagagaSP&lt;/a&gt;&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;)&lt;br /&gt;Episodios 129 al 141: "Nakushita Kotoba" (失くした言葉, Palabras perdidas&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a class="new" title="No Regret Life (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=No_Regret_Life&amp;amp;action=edit&amp;amp;redlink=1"&gt;No Regret Life&lt;/a&gt; (ノー・リグレット、ライフ, Nō-riguretto, raifu&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;)&lt;br /&gt;Episodios 142 al 153: "Speed" (スピード, "Speed"&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a class="new" title="Analog Fish (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Analog_Fish&amp;amp;action=edit&amp;amp;redlink=1"&gt;Analog Fish&lt;/a&gt; (アナログフィッシュ, &lt;a class="new" title="Analog Fish (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Analog_Fish&amp;amp;action=edit&amp;amp;redlink=1"&gt;Analog Fish&lt;/a&gt;&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;)&lt;br /&gt;Episodios 154 al 165: "Soba ni iru kara" (そばにいるから, Porque estoy contigo&lt;a title="Ajuda:Japonês" href="http://pt.wikipedia.org/wiki/Ajuda:Japon%C3%83%C2%AAs"&gt;?&lt;/a&gt;) por &lt;a class="new" title="AMADORI (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=AMADORI&amp;amp;action=edit&amp;amp;redlink=1"&gt;AMADORI&lt;/a&gt;&lt;br /&gt;Episodios 166 al 178: "Parade" por &lt;a class="new" title="CHABA (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=CHABA&amp;amp;action=edit&amp;amp;redlink=1"&gt;CHABA&lt;/a&gt;&lt;br /&gt;Episodios 179 al 191: "Yellow Moon" por &lt;a title="Akeboshi" href="http://pt.wikipedia.org/wiki/Akeboshi"&gt;Akeboshi&lt;/a&gt;&lt;br /&gt;Episodios 192 al 202: "Pinocchio" por &lt;a class="new" title="Ore Ska Band (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Ore_Ska_Band&amp;amp;action=edit&amp;amp;redlink=1"&gt;Ore Ska Band&lt;/a&gt;&lt;br /&gt;Episodios 203 al 220: "Scenario" por &lt;a class="new" title="Saboten (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Saboten&amp;amp;action=edit&amp;amp;redlink=1"&gt;Saboten&lt;/a&gt;&lt;br /&gt;&lt;a id="Naruto_Shippuden_2" name="Naruto_Shippuden_2"&gt;&lt;/a&gt;&lt;br /&gt;Naruto Shippuden&lt;br /&gt;Episodios 1 al 18: "Shooting Star" por &lt;a class="new" title="Home Made Kazoku (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Home_Made_Kazoku&amp;amp;action=edit&amp;amp;redlink=1"&gt;Home Made Kazoku&lt;/a&gt;&lt;br /&gt;Episodios 19 al 30: "Michi ~ to you all" por &lt;a class="new" title="Aluto (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Aluto&amp;amp;action=edit&amp;amp;redlink=1"&gt;Aluto&lt;/a&gt;&lt;br /&gt;Episodios 31 al 41: "Kimi monogatari" por &lt;a class="new" title="Little by little (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=Little_by_little&amp;amp;action=edit&amp;amp;redlink=1"&gt;little by little&lt;/a&gt;&lt;br /&gt;Episodios 42 al 52: "Mezamero! Yasei" por &lt;a class="new" title="MATCHY with QUESTION? (ainda não escrito)" href="http://pt.wikipedia.org/w/index.php?title=MATCHY_with_QUESTION%3F&amp;amp;action=edit&amp;amp;redlink=1"&gt;MATCHY with QUESTION?&lt;/a&gt;&lt;br /&gt;Episodios 54 al ?? : "Sunao na Niji" por &lt;a title="Surface" href="http://pt.wikipedia.org/wiki/Surface"&gt;Surface&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a title="Akatsuki" href="http://pt.wikipedia.org/wiki/Akatsuki"&gt;Akatsuki&lt;/a&gt;&lt;br /&gt;Literalmente "Lua Vermelha" em japonês (Aka = Vermelho tsuki = Lua). É uma organização criminosa secreta composta por 10 membros, todos eles ninjas de &lt;a title="" href="http://pt.wikipedia.org/wiki/Naruto#N.C3.ADvel_S"&gt;rank S&lt;/a&gt;. Originalmente eram 10 membros, número reduzido com a saída de Orochimaru . Cada membro possui uma &lt;a title="Bandana" href="http://pt.wikipedia.org/wiki/Bandana"&gt;bandana&lt;/a&gt; de seu vilarejo original com um risco horizontal bem no meio, um anel identificando suas posições na organização, um chapéu de palha e uma roupa negra decorada com nuvens vermelhas. Cada anel possui um símbolo difrente.&lt;br /&gt;&lt;br /&gt;A tabela abaixo mostra a divisão dos membros da Akatsuki, seus respectivos deuses e anéis:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://bp1.blogger.com/_NsHMcwVxbTc/SCJ4c0xCAfI/AAAAAAAAABM/Yy-ljY0ud48/s1600-h/tabela_akatsuki.bmp"&gt;&lt;img id="BLOGGER_PHOTO_ID_5197849356534940146" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://bp1.blogger.com/_NsHMcwVxbTc/SCJ4c0xCAfI/AAAAAAAAABM/Yy-ljY0ud48/s320/tabela_akatsuki.bmp" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.nusuni.com/blog/2007/07/20/javascript-floating-div-window-with-background-fade-option/"&gt;fade window&lt;/a&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;&lt;br /&gt;end_opacity = 50; //end opacity, 25 = 25%, 50 = 50%, 100 = 100%, etc.&lt;br /&gt;increase_opacity_by = 10; //how much to increase by each time the timeout ends&lt;br /&gt;timeout = 100; //timeout in milliseconds, 0 = instant fade-out&lt;br /&gt;&lt;br /&gt;win = document.getElementById('thewindow');&lt;br /&gt;winbackground = document.getElementById('thewindowbackground');&lt;br /&gt;wincontent = document.getElementById('thewindowcontent');&lt;br /&gt;cur_opacity = 0;&lt;br /&gt;&lt;br /&gt;var timer = null;&lt;br /&gt;&lt;br /&gt;function showWindow() {&lt;br /&gt; if(timeout &gt; 0) {&lt;br /&gt;  cur_opacity = 0;&lt;br /&gt; &lt;br /&gt;  winbackground.style.opacity = cur_opacity / 100;&lt;br /&gt;  winbackground.style.filter = "alpha(opacity=" + cur_opacity + ")";&lt;br /&gt;  win.style.display = 'block';&lt;br /&gt;  wincontent.style.display = 'none';&lt;br /&gt; &lt;br /&gt;  timer = setTimeout("increase_opacity()",timeout);&lt;br /&gt; }&lt;br /&gt; else {&lt;br /&gt;  winbackground.style.opacity = end_opacity / 100;&lt;br /&gt;  winbackground.style.filter = "alpha(opacity=" + end_opacity + ")";&lt;br /&gt;  win.style.display = 'block';&lt;br /&gt;  wincontent.style.display = 'block';&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function increase_opacity() {&lt;br /&gt; cur_opacity += increase_opacity_by;&lt;br /&gt;&lt;br /&gt; winbackground.style.opacity = cur_opacity / 100;&lt;br /&gt; winbackground.style.filter = "alpha(opacity=" + cur_opacity + ")";&lt;br /&gt; &lt;br /&gt; if(cur_opacity &lt; end_opacity) {&lt;br /&gt;  timer = setTimeout("increase_opacity()",timeout);&lt;br /&gt; }&lt;br /&gt; else {&lt;br /&gt;  wincontent.style.display = 'block';&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function hideWindow() {&lt;br /&gt; win.style.display = 'none';&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;div id="thewindow" style="display: none;width: 100%;height: 100%;position: absolute;left: 0px;top: 0px;"&gt;&lt;br /&gt;&lt;div id="thewindowbackground" style="width: 100%;height: 100%;background-color: #000000;position: absolute;opacity: .5;filter: alpha(opacity=50);"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div id="thewindowcontent" style="background-color: #000000;position: absolute;left: 50%;top: 50%;width: 250px; height: 250px; margin-left: -125px;margin-top: -125px;"&gt;&lt;br /&gt;&lt;form&gt;&lt;input type="button" value="Close" onClick="hideWindow();"&gt;&lt;/form&gt;&lt;br /&gt;&lt;div style="color: #ffffff;"&gt;&lt;br /&gt;Hello!&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;form&gt;&lt;input type="button" value="Show Window" onClick="showWindow();"&gt;&lt;/form&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;*No esconderijo da Akatsuki, onde o Shukaku é removido de Gaara, é mostrado uma grande estátua, onde cada dedo da mão da estátua representa o lugar que cada anel estava anteriormente. Outra particularidade sobre os anéis é que eles só podem ser tirados dos membros após sua morte. Não se sabe o porque, mas quando Orochimaru saiu da organização levou o seu.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://pt.wikipedia.org/wiki/Naruto" target="_blank"&gt;&lt;span style="font-size:78%;"&gt;Origem: Wikipédia, a enciclopédia livre.&lt;/span&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/5672026603543907765-2738834502510582153?l=deepinanime.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://deepinanime.blogspot.com/feeds/2738834502510582153/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5672026603543907765&amp;postID=2738834502510582153' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2738834502510582153'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5672026603543907765/posts/default/2738834502510582153'/><link rel='alternate' type='text/html' href='http://deepinanime.blogspot.com/2007/09/renascer.html' title='Naruto'/><author><name>animeworld</name><uri>http://www.blogger.com/profile/01943464415107685107</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_NsHMcwVxbTc/SCJ4c0xCAfI/AAAAAAAAABM/Yy-ljY0ud48/s72-c/tabela_akatsuki.bmp' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
