<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;DkMMSXw9fCp7ImA9WxBbEU8.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327</id><updated>2010-03-09T09:48:08.264+01:00</updated><title>Hildeberto's Blog</title><subtitle type="html">No time to make it shorter ;)</subtitle><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://www.hildeberto.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://www.hildeberto.com/" /><link rel="hub" href="http://pubsubhubbub.appspot.com/" /><link rel="next" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default?start-index=26&amp;max-results=25&amp;redirect=false&amp;v=2" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>107</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/HildebertosBlog" /><feedburner:info uri="hildebertosblog" /><entry gd:etag="W/&quot;AkAASHo5fip7ImA9WxBbEE4.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-3790659127700286856</id><published>2010-03-07T12:17:00.004+01:00</published><updated>2010-03-08T09:59:09.426+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-08T09:59:09.426+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="cejug" /><category scheme="http://www.blogger.com/atom/ns#" term="friendship" /><title>Felipe Gaúcho, You Will Be Missed</title><content type="html">How can I write about such a delicate subject? How can I find strength and inspiration in a hard moment like this one? I would summarize this post in only one word: &lt;i&gt;speechless&lt;/i&gt;, but the absence of words may let my thoughts and emotions incomplete. So, I decided to write as the words come to my mind, and they are not easy.&lt;br /&gt;
&lt;br /&gt;
I've lost a very dear friend last Friday (March 5th, 2010). His name is &lt;a href="http://www.java.net/blogs/felipegaucho/"&gt;Felipe Gaúcho&lt;/a&gt; and he had a &lt;a href="http://www.cejug.org/2010/03/06/noticia-triste-para-o-java-no-brasil-e-o-ceara/"&gt;severe heart attack&lt;/a&gt;. I've met Felipe in Fortaleza a long time ago. I don't remember precisely when, but one of his first attitudes with me was to invite me to become a &lt;a href="http://www.cejug.org"&gt;CEJUG&lt;/a&gt; Leader. I immediately accepted and I started helping him on several initiatives to make the Ceará Java Community grow up. We were together in this journey until last Friday, when he passed away. His last email to me was last Sunday, our last chat was also a week ago, and his &lt;a href="http://www.hildeberto.com/2010/02/sending-e-mails-with-javamail-on.html#comments"&gt;last comment on my blog&lt;/a&gt; was last Thursday, copying a link to his most recent post on his blog, whose content is very related with what I &lt;a href="http://www.hildeberto.com/2010/02/sending-e-mails-with-javamail-on.html"&gt;wrote&lt;/a&gt;. He is also in my list of followers, on the right, and will remain there permanently.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_GRRHKr2Yk6M/S5LjpZrnrvI/AAAAAAAABec/Ahnkip8JWbg/s1600-h/DSC_3407.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_GRRHKr2Yk6M/S5LjpZrnrvI/AAAAAAAABec/Ahnkip8JWbg/s320/DSC_3407.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
I believe that we always get a bit of the personality of our closest friends to incorporate in our own. Felipe was the one who taught to share. No matter what, no matter how, but no idea should be completely trapped into our minds. Writing ideas on papers is not enough. They should be transmitted to other people, who are real agents of transformation. Felipe not only transmitted his ideas but also motivated people to empower them. I have the same belief and I don't know anyone like him, thus I definitely learned it from him.&lt;br /&gt;
&lt;br /&gt;
Felipe was a young man with strong positions. It took time to convince him about other point of views, but he was the only one I know that once you get to change his position you will be the first one to know that. He comes back to the topic, merges points, discusses other details and goes on the direction of a better overall solution. I believe I improved my diplomacy skills discussing technology and community with him.&lt;br /&gt;
&lt;br /&gt;
He became internationally well known by his open source initiatives and his passion for the Java community.&lt;br /&gt;
&lt;b&gt;His focus&lt;/b&gt;: undergraduate students. &lt;br /&gt;
&lt;b&gt;His intention&lt;/b&gt;: prepare students to better face the challenges of the software industry. &lt;br /&gt;
&lt;b&gt;His weapon&lt;/b&gt;: Java. &lt;br /&gt;
&lt;b&gt;His strategy&lt;/b&gt;: share learned lessons from the development of open source projects.&lt;br /&gt;
&lt;b&gt;His hope&lt;/b&gt;: improve the quality of undergraduate courses in Brazil.&lt;br /&gt;
&lt;br /&gt;
In a situation like this, when a young life is interrupted so abruptly, we start thinking how fragile life is. In any case, death is always shocking and touching, but when a person with a closer age dies we get to think about our own existence, how life is short, and how important is every minute breathing.&lt;br /&gt;
&lt;br /&gt;
Rest in peace Felipe. Your family will be constantly comforted by God and You remain in our hearts.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-3790659127700286856?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/3GqriX3EDmQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/3790659127700286856/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2010/03/felipe-gaucho-you-will-be-missed.html#comment-form" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/3790659127700286856?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/3790659127700286856?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/3GqriX3EDmQ/felipe-gaucho-you-will-be-missed.html" title="Felipe Gaúcho, You Will Be Missed" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_GRRHKr2Yk6M/S5LjpZrnrvI/AAAAAAAABec/Ahnkip8JWbg/s72-c/DSC_3407.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total><feedburner:origLink>http://www.hildeberto.com/2010/03/felipe-gaucho-you-will-be-missed.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUIMSH05fSp7ImA9WxBUGEo.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-6487711109738210811</id><published>2010-03-05T14:40:00.006+01:00</published><updated>2010-03-06T12:06:29.325+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-06T12:06:29.325+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="e-commerce" /><category scheme="http://www.blogger.com/atom/ns#" term="ecology" /><category scheme="http://www.blogger.com/atom/ns#" term="literature" /><title>Definitely e-Books</title><content type="html">I have a lot of books. Really! I love books. I buy them because I need but sometimes just for the pleasure of having them. They are interesting but they are also so beautifully organized on my bookshelf. 8) But I feel deep inside that there is something wrong with it.&lt;br /&gt;
&lt;br /&gt;
What am I gonna do when the time to leave Belgium comes? I'm inclined to donate most of my books, but how? to whom? I will think about it, but you can also suggest something on the  comments below. By the way, one thing that I've learned was: &lt;b&gt;before buying something, consider when the time to discard it finally comes&lt;/b&gt;. Might it be some sort of headache for you in the future?&lt;br /&gt;
&lt;br /&gt;
Besides the space and weight issues, there is also the ecological one. Books are made of paper, paper is made of cellulose, cellulose is mostly extracted from the wood, wood is synonymous of tree and trees are one of the main agents of carbon absorption, besides their role on the soil stability and humidity control.&lt;br /&gt;
&lt;br /&gt;
Considering these important reasons, I decided to prioritize the acquisition of eBooks (eletronic books) because they don't have weight, don't require physical space, the unitary impact on the nature is not so relevant, and the facility to transport, browse and search information makes it worth.&lt;br /&gt;
&lt;br /&gt;
&lt;iframe src="http://rcm.amazon.com/e/cm?t=c03ce-20&amp;o=1&amp;p=8&amp;l=bpl&amp;asins=B0015T963C&amp;fc1=000000&amp;IS2=1&amp;lt1=_blank&amp;m=amazon&amp;lc1=0000FF&amp;bc1=000000&amp;bg1=FFFFFF&amp;f=ifr" style="align:left;padding-top:5px;width:131px;height:245px;padding-right:10px;"align="left" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;Leaving aside the physical beauty, I bought some technical eBooks from &lt;a href="http://www.oreilly.com"&gt;O'Reilly&lt;/a&gt; , &lt;a href="http://www.apress.com/"&gt;Apress&lt;/a&gt; and &lt;a href="http://www.packtpub.com/"&gt;Packt Publishing&lt;/a&gt;, but there are also &lt;a href="http://www.pragprog.com/"&gt;The Pragmatic Bookshelf&lt;/a&gt; and the Amazon collection for the Kindle device. Many other publishers didn't start offering eBooks yet but it is a matter of time.&lt;br /&gt;
&lt;br /&gt;
Buying eBooks directly from the publisher seems to be a good deal. I bought the book &lt;a href="http://oreilly.com/catalog/9780596158057/"&gt;Restful Java with JAX-RS&lt;/a&gt; for $31.99 while the printed copy costs $39.99, saving $8. But the saving amount would be even higher when considering the shipping cost. On the other hand, the Kindle store doesn't offer a big discount on the Kindle version of a book. For instance, the paper version of the book &lt;a href="http://www.amazon.com/Effective-Programming-Language-Guide-ebook/dp/B000OZ0N5I/ref=sr_1_3?ie=UTF8&amp;m=A36UWAQAV1U1MD&amp;s=digital-text&amp;qid=1267794961&amp;sr=1-3"&gt;Effective Java&lt;/a&gt; is sold for $35.11 and the Kindle version is offered for 38.64, a surprising higher price for a digital version, but still better due to the shipping cost.&lt;br /&gt;
&lt;br /&gt;
I don't have a Kindle yet, but I'm planning to buy one or any other similar product. My main concern today is to buy books that can be used in my future book reader. For that, I'm avoiding to buy books with password protection. For instance, when opening books from Apress, the Acrobat Reader asks for a password key, which is provided at the moment of the acquisition. Better not forget this key, otherwise... :D&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-6487711109738210811?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/H8IHOe2THAE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/6487711109738210811/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2010/03/definitively-e-books.html#comment-form" title="3 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6487711109738210811?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6487711109738210811?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/H8IHOe2THAE/definitively-e-books.html" title="Definitely e-Books" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">3</thr:total><feedburner:origLink>http://www.hildeberto.com/2010/03/definitively-e-books.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkABRHcycCp7ImA9WxBUFk0.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-8807425183539471789</id><published>2010-03-03T09:19:00.002+01:00</published><updated>2010-03-03T09:25:55.998+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-03-03T09:25:55.998+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="blog" /><category scheme="http://www.blogger.com/atom/ns#" term="europe" /><category scheme="http://www.blogger.com/atom/ns#" term="culture" /><category scheme="http://www.blogger.com/atom/ns#" term="web" /><title>You Know What? I Love My Blog</title><content type="html">During some procrastination time that I gave to myself last night, I've spent some time exploring all posts that I have published on my blog since 2007. I'm talking about 105 posts, an average of 4 per month, which is not that much in comparison to other more popular blogs, but at least I've been quite regular over the years.&lt;br /&gt;
&lt;br /&gt;
All these posts tell a lot about my research time in Belgium, thoughts, wishes, ideas, opinions, and many more. It's so amazing the amount of experiences that I've shared with you, the feedback that some of you shared with me. Yeah! For me, post's comments are the best part of this blog.&lt;br /&gt;
&lt;br /&gt;
I remember how happy I was when my blog was 1 year old with almost 300 unique visitors per month. I thought: “Wow! 300 different people reading my ideas! It's a lot of people!”. I wouldn't expect that 2 years later I would have more than 1.400 unique visitors per month. Today, I'm having the same thought I had 2 years ago, since 1.400 visitors is a lot of people too ;). But I know that some of you are laughing because it is still a small number in comparison with other popular blogs, but I'm proud of each one of my visitors, mainly the 450 ones that come here more than once every month.&lt;br /&gt;
&lt;br /&gt;
I wish I could share more with you here because each post represents only 20% of the full experience that I have got writing it. Actually, I don't have any profit from here, making it more like a hobby than a responsibility. I even tried putting some Google advertizing on the right, but I've got only 3 clicks during these 6 months of exposure, which means absolutely nothing :D. What make it worth is the possibility to talk to my self, to talk to you like in a restaurant and the feedback I receive when I write technical articles, mostly solving basic problems that annoy a lot of people, and I receive comments from all over the world thanking for the solution I have proposed.&lt;br /&gt;
&lt;br /&gt;
Now, I would like to conclude with a attempt of poem that stays in the subconscious of this blog:&lt;br /&gt;
&lt;blockquote&gt;&lt;b&gt;I might regret but I don't&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
“&lt;i&gt;I might regret doing things not related to my work just to solve other people's problem, but I don't because those things taught me many other things that I didn't expect to learn.&lt;br /&gt;
&lt;br /&gt;
I might regret starting my research so late, but I don't because pressure is also part of the game.&lt;br /&gt;
&lt;br /&gt;
I might regret allowing my love to spend several weeks far from home, but I don't because it would be very selfish, these trips are great for her carrier, and I admire her achievements.&lt;br /&gt;
&lt;br /&gt;
I might regret losing contact with some friends that I've made here, but I don't because they proved to be more selfish than the friendly acceptable.&lt;br /&gt;
&lt;br /&gt;
I might regret drinking and eating too much some times, but I don't because Belgium has the best beers in the world, Europe has the best cuisine and I won't be here for so long.&lt;br /&gt;
&lt;br /&gt;
I might regret giving up of opening a business in Europe, but I don't because what I'm planning now will help a lot more people than I was planning to help before.&lt;br /&gt;
&lt;br /&gt;
Last but not least, I might regret to be too much optimistic even not archiving many wishes I had, but I don't because so many miracles have happened in my life, proving that optimism brings most of my wishes and what it doesn't bring I also gain in terms of lessons learned.&lt;/i&gt;”&lt;/blockquote&gt;Thank you for your visit(s)!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-8807425183539471789?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/tBSP6ccrzBA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/8807425183539471789/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2010/03/you-know-what-i-love-my-blog.html#comment-form" title="5 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/8807425183539471789?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/8807425183539471789?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/tBSP6ccrzBA/you-know-what-i-love-my-blog.html" title="You Know What? I Love My Blog" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">5</thr:total><feedburner:origLink>http://www.hildeberto.com/2010/03/you-know-what-i-love-my-blog.html</feedburner:origLink></entry><entry gd:etag="W/&quot;AkYDRHw7eyp7ImA9WxBUEkU.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-6669556467264444425</id><published>2010-02-27T00:38:00.003+01:00</published><updated>2010-02-27T17:29:35.203+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-27T17:29:35.203+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="enterprise application" /><category scheme="http://www.blogger.com/atom/ns#" term="software architecture" /><title>Sending E-mails with JavaMail on Glassfish V3</title><content type="html">One of the main advantages of using an application server like Glassfish is to keep your application free of complex code, such as 1) manual control of database transactions; 2) database access configuration; 3) security authentication and authorization; 4) sending and receiving e-mail messages, among many other complexities that are non-functional requirements, consuming the time we would be spending on functional&amp;nbsp;requirements.&lt;br /&gt;
&lt;br /&gt;
In my opinion, an important differential of &lt;a href="http://glassfish.dev.java.net/"&gt;Glassfish V3&lt;/a&gt; is its very rich and complete administration console. It is easy to use and to learn, which is, in my opinion, one of the most important competitive advantages, since it contributes to reduce the maintenance cost, a constant headache for system administrators. We have used the administrative console in a &lt;a href="http://www.hildeberto.com/2010/02/creating-connection-pool-to-postgresql.html"&gt;previous post&lt;/a&gt; to configure a database connection to PostgreSQL. &lt;b&gt;Now, we are going to use it again in order to configure a JavaMail resource for applications that aim to send emails&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
Follow the steps below:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;enter in the administrative console (http://[server-name]:4848/).&lt;/li&gt;
&lt;li&gt;go to &lt;i&gt;Resources / JavaMail Sessions&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;create a new JavaMail session and set the following mandatory properties:&lt;br /&gt;
&lt;i&gt;JNDI Name&lt;/i&gt;: mail/[email-account-name]&lt;br /&gt;
&lt;i&gt;Mail Host&lt;/i&gt;: [smtp-server-address]&lt;br /&gt;
&lt;i&gt;Default User&lt;/i&gt;: the username to authenticate on the smtp server&lt;br /&gt;
&lt;i&gt;Default Return Address&lt;/i&gt;: the address used by recipients to reply the message. Some servers require that this address should be the one used by the authenticated user to access his mailbox.&lt;/li&gt;
&lt;/ol&gt;If the server doesn't request secure authentication, then the three steps above are enough to start using the new JavaMail session, but a server without secure authentication is a very rare case nowadays. You will certainly need to inform a password to login on the smtp server. In most cases, the server administrator also changes the default port of the smtp server, which forces us to explicitly inform the correct port. For these special needs we can use additional properties in the JavaMail session. Follow the steps below:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;Still on the JavaMail session form, go to the &lt;i&gt;Additional Properties&lt;/i&gt; section and add 3 more properties, which are:&lt;br /&gt;
&lt;i&gt;mail.smtp.port&lt;/i&gt;: [port-number]&lt;br /&gt;
&lt;i&gt;mail.smtp.auth&lt;/i&gt;: true&lt;br /&gt;
&lt;i&gt;mail.smtp.password&lt;/i&gt;: ****** ;)&lt;/li&gt;
&lt;li&gt;Click on &lt;i&gt;Save&lt;/i&gt; to create the JavaMail session.&lt;/li&gt;
&lt;/ol&gt;The last step is how to use this new JavaMail session in our applications to send emails. Using the JNDI name, we are going to inject the JavaMail session in a Java class, which could be a POJO of a pure web application, an EJB Session Bean, or any other type of class. See the code below for details:&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-family: Courier, monospace; font-size: 11px;"&gt;public class UserAccountBsn {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;@Resource(name = "mail/[email-account-name]")&lt;br /&gt;
&amp;nbsp;&amp;nbsp;private Session mailSession;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;public void sendMessage(UserAccount userAccount) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Message msg = new MimeMessage(mailSession);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;try {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;msg.setSubject("[app] Email Alert");&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;msg.setRecipient(RecipientType.TO,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;new InternetAddress(userAccount.getEmail(),&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;userAccount.toString()));&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;msg.setText("Hello "+ userAccount.getName());&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Transport.send(msg);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;catch(MessagingException me) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// manage exception&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;catch(UnsupportedEncodingException uee) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;// manage exception&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
&amp;nbsp;&amp;nbsp;}&lt;br /&gt;
}&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
The @Resource annotation receives the JNDI name of the JavaMail session and injects an instance of the session in the variable &lt;i&gt;mailSession&lt;/i&gt;. This variable is used within the &lt;i&gt;sendMessage&lt;/i&gt; method to create a new &lt;i&gt;MimeMessage&lt;/i&gt;. The content of the message is built and finally sent to the recipient by the method &lt;i&gt;Transport.send&lt;/i&gt;. The method receives as parameter an entity class representing an user registered on the application. It is so simple, isn't it? ;)&lt;br /&gt;
&lt;br /&gt;
Using this feature, we avoid any additional implementation to add those parameters hardcoded or parameterized, saving a lot of time, simplifying the maintenance of the applications, and reusing existing resources naturally shared by the container.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_GRRHKr2Yk6M/S4hcYNr8r8I/AAAAAAAABeU/iFWqQBEPrbc/s1600-h/dilbert-email.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="142" src="http://3.bp.blogspot.com/_GRRHKr2Yk6M/S4hcYNr8r8I/AAAAAAAABeU/iFWqQBEPrbc/s400/dilbert-email.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-6669556467264444425?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/QVXqCaV1MZw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/6669556467264444425/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2010/02/sending-e-mails-with-javamail-on.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6669556467264444425?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6669556467264444425?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/QVXqCaV1MZw/sending-e-mails-with-javamail-on.html" title="Sending E-mails with JavaMail on Glassfish V3" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_GRRHKr2Yk6M/S4hcYNr8r8I/AAAAAAAABeU/iFWqQBEPrbc/s72-c/dilbert-email.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://www.hildeberto.com/2010/02/sending-e-mails-with-javamail-on.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUECRXk4fSp7ImA9WxBUEkU.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-7520820990530681854</id><published>2010-02-26T10:32:00.005+01:00</published><updated>2010-02-27T17:21:04.735+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-27T17:21:04.735+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="open source" /><category scheme="http://www.blogger.com/atom/ns#" term="enterprise application" /><category scheme="http://www.blogger.com/atom/ns#" term="database" /><title>Creating a Connection Pool to PostgreSQL on Glassfish V3</title><content type="html">I recently created a new connection pool to PostgreSQL on Glassfish and I would like to share the steps I followed with you. Obviously, you need &lt;a href="http://www.postgresql.org/"&gt;PostgreSQL&lt;/a&gt; and &lt;a href="http://glassfish.dev.java.net/"&gt;Glassfish&lt;/a&gt; installed on your machine and a database already created in PostgreSQL. If you didn't configure your new PostgreSQL installation yet, follow the steps I described at this &lt;a href="http://www.hildeberto.com/2007/12/before-starting-to-work-with-postgresql.html"&gt;previous post&lt;/a&gt; and come back here to continue with the connection pool. The necessary steps are:&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;We need the PostgreSQL JDBC Driver, since Glassfish and its deployed applications are writen in Java. Drivers are available for download at &lt;a href="http://jdbc.postgresql.org/" target="_blank"&gt;http://jdbc.postgresql.org&lt;/a&gt;. For this experiment choose the JDBC4 driver.&lt;/li&gt;
&lt;li&gt;Download the driver file &lt;i&gt;postgresql-&amp;lt;version&amp;gt;.jdbc4.jar&lt;/i&gt; and copy it to the diretory &lt;i&gt;[glassfish_home]/glassfish/domains/domain1/lib/&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;Restart Glassfish in order to make it load the new database driver. I thought that adopting an OSGI architecture Glassfish would never need restarts again, but I was wrong. At least, the restarting process is faster than V2.&lt;/li&gt;
&lt;li&gt;Enter in the administration console and go to &lt;i&gt;Resources/JDBC/Connection Pools&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;Create a new connection pool with the name &lt;i&gt;[database_name]Pool&lt;/i&gt;, select the resource type &lt;i&gt;javax.sql.ConnectionPoolDataSource&lt;/i&gt;, select the database vendor &lt;i&gt;PostgreSQL&lt;/i&gt; and click next.&lt;/li&gt;
&lt;li&gt;Select the datasource classname &lt;i&gt;org.portgresql.ds.PGConnectionPoolDataSource&lt;/i&gt; and inform the following additional properties:&lt;br /&gt;
&lt;i&gt;DatabaseName=[database-name]&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;Password=*******&lt;/i&gt; ;)&lt;br /&gt;
&lt;i&gt;PortNumber=5432&lt;/i&gt; (this is the default port but make sure that you are using the correct one)&lt;br /&gt;
&lt;i&gt;ServerName=[server-name|ip]&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;User=&amp;lt;database-username&amp;gt;&lt;/i&gt;&lt;/li&gt;
&lt;li&gt;Click &lt;i&gt;Finish&lt;/i&gt; to save the new connection pool.&lt;/li&gt;
&lt;li&gt;Go to the list of connection pools again and select the new one that you just created.&lt;/li&gt;
&lt;li&gt;Click on &lt;i&gt;Ping&lt;/i&gt; to check if the connection was correctly configured. The message "Ping Succeeded" means that the connection is working fine.&lt;/li&gt;
&lt;li&gt;In order to be able to use this connection pool in JEE applications, we have to create a JNDI name for it. Go to &lt;i&gt;Resources/JDBC/JDBC Resources&lt;/i&gt;.&lt;/li&gt;
&lt;li&gt;Click on &lt;i&gt;New&lt;/i&gt; and set the JNDI Name &lt;i&gt;jdbc/[database_name]&lt;/i&gt;, select the connection pool created above and click &lt;i&gt;Ok&lt;/i&gt; to finish. This JNDI name will be used by applications to access the PostgreSQL database.&lt;/li&gt;
&lt;/ol&gt;These instructions may work with Glassfish V2 as well, since its database configuration is quite similar.&lt;br /&gt;
&lt;br /&gt;
I'm being very specific in terms of chosen technologies, but if you have a slightly different configuration and these steps are not working yet, please comment your issues below, describing also your current configuration/context. Maybe, we can figure it out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-7520820990530681854?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/dmE5JGgxdPI" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/7520820990530681854/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2010/02/creating-connection-pool-to-postgresql.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/7520820990530681854?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/7520820990530681854?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/dmE5JGgxdPI/creating-connection-pool-to-postgresql.html" title="Creating a Connection Pool to PostgreSQL on Glassfish V3" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2010/02/creating-connection-pool-to-postgresql.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DE4BQXYyfyp7ImA9WxBVGEo.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-4229279809967386791</id><published>2010-02-22T23:05:00.002+01:00</published><updated>2010-02-22T23:15:50.897+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-22T23:15:50.897+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="culture" /><category scheme="http://www.blogger.com/atom/ns#" term="culinary" /><title>Jamie Oliver for the Peace Nobel Prize</title><content type="html">Last year Mr. Obama won the Peace Nobel Prize. There was a lot of controversy about this prize because the president of the United States didn't do anything concrete to bring peace to the world. I, particularly, didn't like the Nobel commission's choice for this prize. So, in order to fix this hasty decision, I would like to suggest a name for 2010: &lt;a href="http://www.jamieoliver.com/"&gt;Jamie Oliver&lt;/a&gt;, the famous British chef! What???&lt;br /&gt;
&lt;br /&gt;
Jamie figured out that he can actually change the world by changing people's eating habits. His mission statement seems really touching, inspiring and reachable actually. &lt;br /&gt;
&lt;blockquote&gt;“I wish for your help to create a strong, sustainable movement to educate every child about food, inspire families to cook again and empower people everywhere to fight obesity.”&lt;/blockquote&gt;&lt;br /&gt;
Doing this, Jamie could save millions of lives all over the world reducing the obesity statistics and, consequently, making people feel really happy for doing something definitively useful, which is: feed people. Watch his message in this video below. It is more than convincing, it's touching.&lt;br /&gt;
&lt;br /&gt;
&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/jIwrV5e6fMY&amp;hl=en_US&amp;fs=1&amp;color1=0x2b405b&amp;color2=0x6b8ab6"&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/jIwrV5e6fMY&amp;hl=en_US&amp;fs=1&amp;color1=0x2b405b&amp;color2=0x6b8ab6" 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;
You may think I'm exaggerating, but I'm not. I'm 31 years old and I started to cook at 30, less than 1 year ago. I know by a matter of fact what Jamie is trying to say. I know how good cooking means for mental health :D. If you have a family to care about and you go to the kitchen with the mission to feed them, you see exactly your importance in other people's life cycle in the simplest way possible. That's why cooking is worth experiencing.&lt;br /&gt;
&lt;br /&gt;
These two pictures below show two of Jamie's recipes that we have made at home and they are simply amazing.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_GRRHKr2Yk6M/S4L_ZXj--oI/AAAAAAAABdw/_kpMOQXc-dw/s1600-h/6828_161111613822_609678822_2929828_8122740_n.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_GRRHKr2Yk6M/S4L_ZXj--oI/AAAAAAAABdw/_kpMOQXc-dw/s320/6828_161111613822_609678822_2929828_8122740_n.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;Poulet et Poireaux Stroganoff&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_GRRHKr2Yk6M/S4L_bzz2-JI/AAAAAAAABd4/qtSER6TtYKc/s1600-h/20053_304780003822_609678822_3640497_3458526_n.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_GRRHKr2Yk6M/S4L_bzz2-JI/AAAAAAAABd4/qtSER6TtYKc/s320/20053_304780003822_609678822_3640497_3458526_n.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;Côtelettes D'Agneau Grillées Avec Une Riche Salsa&lt;br /&gt;
&lt;br /&gt;
Look at the details about Jamie's plan &lt;a href="http://www.tedprize.org/jamie-oliver/"&gt;here&lt;/a&gt; and start helping him to accomplish this by just spreading the wonderful art of cooking. If somehow you are not motivated enough, watch the movie &lt;a href="http://www.sonypictures.com/homevideo/julieandjulia/"&gt;Julie &amp;amp; Julia&lt;/a&gt; and you will be sufficiently motivated. Trust me! ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-4229279809967386791?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/eKDcORntuDs" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/4229279809967386791/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2010/02/jamie-oliver-for-peace-nobel-prize.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/4229279809967386791?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/4229279809967386791?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/eKDcORntuDs/jamie-oliver-for-peace-nobel-prize.html" title="Jamie Oliver for the Peace Nobel Prize" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_GRRHKr2Yk6M/S4L_ZXj--oI/AAAAAAAABdw/_kpMOQXc-dw/s72-c/6828_161111613822_609678822_2929828_8122740_n.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2010/02/jamie-oliver-for-peace-nobel-prize.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0QBRXY_eCp7ImA9WxBWF00.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-7429045601572740733</id><published>2010-02-09T10:39:00.002+01:00</published><updated>2010-02-09T10:55:54.840+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-09T10:55:54.840+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="open source" /><category scheme="http://www.blogger.com/atom/ns#" term="strategy" /><category scheme="http://www.blogger.com/atom/ns#" term="web" /><title>Did Oracle Regret about Kenai Ultimatum?</title><content type="html">All Kenai Project Leaders received a message from Oracle trying to explain a possible misunderstanding about the message they transmitted before. From my understanding there is no misunderstanding, but a change of plans due to the community reaction. Take a look at the open letter below:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;Gentlepeople,&lt;br /&gt;
&lt;br /&gt;
In an effort to get information out to the Kenai community quickly, while trying to manage the integration of our two companies, I think we did a poor job at communicating our plans for Kenai.com to you. I would like to remedy that now. Our strategy is simple. We don't believe it makes sense to continue investing in multiple hosted development sites that are basically doing the same thing. Our plan is to shut down kenai.com and focus our efforts on java.net as the hosted development community. We are in the process of migrating java.net to the kenai technology. This means that any project currently hosted on kenai.com will be able to continue as you are on java.net. We are still working out the technical details, but the goal is to make this migration as seamless as possible for the current kenai.com projects. So in the meantime I suggest that you stay put on kenai.com and let us work through the details and get back to you later this month.&lt;br /&gt;
&lt;br /&gt;
Thanks for your feedback and patience.&lt;br /&gt;
&lt;br /&gt;
Ted Farrell&lt;br /&gt;
Oracle Corporation&lt;br /&gt;
Reference: &lt;a href="http://blogs.sun.com/projectkenai/entry/the_future_of_kenai_com"&gt;http://blogs.sun.com/projectkenai/entry/the_future_of_kenai_com&lt;/a&gt;&lt;/blockquote&gt;&lt;br /&gt;
That's pretty good! It is the first signal that Oracle is willing to listen to the community. I'm happy with that because it was a constructive decision, good for both sides. However, a question remains: Will current java.net projects migrate to Kenai infrastructure or will Kenai projects migrate to java.net infrastructure? I'm asking that because the Kenai infrastructure is far better. A migration to java.net infrastructure is actually a downgrade.&lt;br /&gt;
&lt;br /&gt;
It seems we have to wait until the end of February to finally get an answer. I can't wait for that! ;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-7429045601572740733?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/TceYw971T7k" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/7429045601572740733/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2010/02/did-oracle-regret-about-kenai-ultimatum.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/7429045601572740733?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/7429045601572740733?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/TceYw971T7k/did-oracle-regret-about-kenai-ultimatum.html" title="Did Oracle Regret about Kenai Ultimatum?" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2010/02/did-oracle-regret-about-kenai-ultimatum.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEIDQ309eip7ImA9WxBWFUk.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-2290527915103038598</id><published>2010-02-07T11:10:00.002+01:00</published><updated>2010-02-07T13:42:52.362+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-07T13:42:52.362+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="open source" /><category scheme="http://www.blogger.com/atom/ns#" term="strategy" /><category scheme="http://www.blogger.com/atom/ns#" term="enterprise application" /><category scheme="http://www.blogger.com/atom/ns#" term="operational system" /><category scheme="http://www.blogger.com/atom/ns#" term="web" /><category scheme="http://www.blogger.com/atom/ns#" term="database" /><title>Good Ideas for Kenai That Somebody Else Should be Doing Instead</title><content type="html">As you &lt;a href="http://www.hildeberto.com/2010/02/end-of-kenai-oracle-1-x-0-community.html"&gt;already know&lt;/a&gt;, Oracle is planning to deactivate Kenai for community developers. Yes, it is sad but let's move on and spread our code before it is destroyed. It is also time to make public some ideas I've been sharing with Sun's folks last year. I have criticized Oracle for some decisions they have made, that's true, but I don't want to criticize and shut up. I have to propose something better and realistic to show that they are lazy thinkers, growing by buying other people's innovation, not actually doing their own.&lt;br /&gt;
&lt;br /&gt;
I want to discuss 2 ideas. Each one solves a particular need of entrepreneur developers.&lt;br /&gt;
&lt;ol&gt;&lt;li&gt;&lt;b&gt;I need integrated services to manage my software project and also to deploy it&lt;/b&gt;: It would be a mix of &lt;a href="http://sourceforge.net/"&gt;SourceForge&lt;/a&gt; with &lt;a href="http://aws.amazon.com/ec2/"&gt;Amazon EC2&lt;/a&gt;, or &lt;a href="http://www.assembla.com/"&gt;Assembla&lt;/a&gt; with &lt;a href="http://code.google.com/appengine/"&gt;Google App Engine&lt;/a&gt;. Once my code is committed to the server and an integration test is performed, then my application would be automatically deployed in a server. Today, we need at least two different service providers to make it happen and it means more&amp;nbsp;bureaucracy&amp;nbsp;and waste of time. If Oracle or RedHat adopts something like this, the payment for such services would&amp;nbsp;financially&amp;nbsp;support their open-source projects, such as &lt;a href="http://www.opensolaris.org/"&gt;OpenSolaris&lt;/a&gt;, &lt;a href="https://glassfish.dev.java.net/"&gt;Glassfish&lt;/a&gt;, &lt;a href="http://jboss.org/"&gt;JBoss&lt;/a&gt; and &lt;a href="http://www.mysql.com/"&gt;MySQL&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;I'm an expert in my own open-source product, but I need help with its infrastructure&lt;/b&gt;: I have a complex and large JEE5 application and my expertise allows me to provide good support in terms of application features and bug fixing. As a matter of fact, my application is using Glassfish as application server and MySQL as database. However, all I know about these technologies are enough to develop and deploy the application. If a critical error occurs, avoiding the application to run because of an external and unexpected problem, probably my own knowledge is not enough. In order to solve that, Oracle or RedHat would make a partnership with developers, providing services that complements developer's services. Considering RedHat, the customer would pay directly to them for the services and RedHat would transfer part of the payment to the developer, who provided part of the service too. With this deal, every developer becomes a potential retailer of RedHat's services. That's one more solution to increase investments on open-source projects.&lt;/li&gt;
&lt;/ol&gt;&lt;div&gt;Both ideas above were explained to Sun engineers &lt;a href="http://www.hildeberto.com/2009/04/sun-slogan-i-must-have-forgotten.html"&gt;some months ago&lt;/a&gt;&amp;nbsp;(At the time I was thinking that IBM would by Sun :D). &amp;nbsp;To sell open source products, companies should innovate, however Sun was good when innovating their products, but not their selling and services processes. These parts of their business were always traditional. RedHat, on the other hand, has far better selling and services processes for their open source products than Sun because they are agile, have simple procedures and minimal distance between the customer and the specialist. That's why they are one of the only companies &lt;a href="http://www.infoworld.com/d/open-source/dont-worry-about-red-hats-2009-profit-decline-704"&gt;to get profit from open-source&lt;/a&gt;.&lt;/div&gt;&lt;br /&gt;
Companies that already offer software project management (track system, version control, wiki, etc.), such as &lt;a href="http://www.atlassian.com/"&gt;Atlassian&lt;/a&gt;,&amp;nbsp;&lt;a href="http://www.open.collab.net/"&gt;Collabnet&lt;/a&gt;,&amp;nbsp;&lt;a href="http://code.google.com/"&gt;Google&lt;/a&gt; or even Oracle with &lt;a href="http://www.kenai.com/"&gt;Kenai&lt;/a&gt;,&amp;nbsp;have strategic advantage because they already have something done, with large experience on it. I only wish&amp;nbsp;that people out there get this idea and make it happen. This is not what I love to do, so I won't&amp;nbsp;appropriately&amp;nbsp;exploit it. But I'm confident that these are good ideas and I hope to blog about any future service that provides such features and I'm probably going to be one of the first customers of the pioneer.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_GRRHKr2Yk6M/S26RhJmWcoI/AAAAAAAABc4/kOg_V4JACE8/s1600-h/dilbert-cloud.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="123" src="http://3.bp.blogspot.com/_GRRHKr2Yk6M/S26RhJmWcoI/AAAAAAAABc4/kOg_V4JACE8/s400/dilbert-cloud.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-2290527915103038598?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/yR93EylTVAQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/2290527915103038598/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2010/02/good-idea-for-kenai-that-somebody-else.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/2290527915103038598?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/2290527915103038598?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/yR93EylTVAQ/good-idea-for-kenai-that-somebody-else.html" title="Good Ideas for Kenai That Somebody Else Should be Doing Instead" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_GRRHKr2Yk6M/S26RhJmWcoI/AAAAAAAABc4/kOg_V4JACE8/s72-c/dilbert-cloud.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2010/02/good-idea-for-kenai-that-somebody-else.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D04MRHg_fSp7ImA9WxBWFUk.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-7080490607761700314</id><published>2010-02-03T15:29:00.002+01:00</published><updated>2010-02-07T13:33:05.645+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-07T13:33:05.645+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="open source" /><category scheme="http://www.blogger.com/atom/ns#" term="strategy" /><title>The End of Kenai: Oracle (1) x (0) Community</title><content type="html">I'm very disappointed with Oracle about Kenai's discontinuation. SUN was working to provide a better service for the community, besides solving their own internal development management. But now, Oracle changes the rules, saying implicitly that the community doesn't deserve that, but a simpler, less integrated, difficult to manage platform, which is java.net.&lt;br /&gt;
&lt;br /&gt;
The beginning Oracle's relationship with the Java Community was not that easy. To celebrate the transition, they started giving us more work to do (move our projects as soon as possible from Kenai to anywhere else) besides the work we already have to perform in our open-source projects.&lt;br /&gt;
&lt;br /&gt;
Using a bit of intelligence, Oracle would propose to keep the Kenai platform with the community, because the trademark is already well known among us, and creating an internal instance of Kenai, with a sub-domain or even with another name, since the name "Kenai" doesn't make any difference internally. Also, it's easier for a database company to divide internal projects from community projects than forcing thousands of people to leave Kenai. The cost to keep Kenai working for the community is ridiculous for Oracle.&lt;br /&gt;
&lt;br /&gt;
Oracle should remember, or even learn, that we spend a considerable time of our lives convincing people to use their, now new, products. We even teach people how to use those products. You know, without people with expertise around a product, it cannot be consolidated in a certain geographic region. We also generate a lot of knowledge around our groups that influence local software companies to choose the technologies we have been struggling to learn. So, we have generated a lot of business for those who work with us and give us a good support and recognition.&lt;br /&gt;
&lt;br /&gt;
So far, just words coming from Oracle. Words just saying that nothing worse is going to happen besides some projects they already have eliminated. Some positive words full of promises and empty of actions. I'm not willing to keep listening to excuses or explanations. I'm willing to continue promoting new Oracle's products. But, what can Oracle do to make it happen in the best way possible, even better than before?&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_GRRHKr2Yk6M/S2mH9NUuT9I/AAAAAAAABcw/ZM47um5TXMg/s1600-h/dilbert.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="137" src="http://2.bp.blogspot.com/_GRRHKr2Yk6M/S2mH9NUuT9I/AAAAAAAABcw/ZM47um5TXMg/s400/dilbert.gif" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-7080490607761700314?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/Y6_NTUTXM8g" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/7080490607761700314/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2010/02/end-of-kenai-oracle-1-x-0-community.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/7080490607761700314?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/7080490607761700314?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/Y6_NTUTXM8g/end-of-kenai-oracle-1-x-0-community.html" title="The End of Kenai: Oracle (1) x (0) Community" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_GRRHKr2Yk6M/S2mH9NUuT9I/AAAAAAAABcw/ZM47um5TXMg/s72-c/dilbert.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2010/02/end-of-kenai-oracle-1-x-0-community.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkcDRXk-fSp7ImA9WxBWFUk.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-9213193745854726149</id><published>2009-12-12T08:19:00.001+01:00</published><updated>2010-02-07T13:01:14.755+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-02-07T13:01:14.755+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="javafx" /><category scheme="http://www.blogger.com/atom/ns#" term="web" /><title>Finally a JavaFX Application in Production Out There</title><content type="html">For the first time ever, I finally saw a JavaFX application in production. I received this news from someone I'm following on Twitter. Check it out and come back for my comments:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.vancouver2010.com/olympic-medals/geo-view/" target="_blank"&gt;http://www.vancouver2010.com/olympic-medals/geo-view/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
This is the website of the 2010 Winter Games that will be held in Vancouver, Canada. Looking at the center of the figure, you can see a Java logo, indicating that an applet is loading and soon a JavaFX application is going to load in that area. Well, this was the good news. Let's go to the bad ones.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SyM-W9SDp9I/AAAAAAAABck/vMK414ac6Q4/s1600-h/vancouver-website.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SyM-W9SDp9I/AAAAAAAABck/vMK414ac6Q4/s320/vancouver-website.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
The JavaFX applet takes sometime to load, even for me who has a 4MB/Sec connection at home. But this is not actually a problem. The problem is that users has no idea of how long they still have to wait. The Java logo animation is cute, but totally useless. A good approach is to show the progress of the download, a percentage figure very common in thousands of Flash applications.&lt;br /&gt;
&lt;br /&gt;
When the applet finishes loading, look at the top-right and see the JavaFx logo. Come on! Why? It seems to me that they used JavaFx instead of other technologies because SUN sponsored the development of the applet. Is there any channel at SUN where I can ask them to develop an applet for me? I need it too. Or maybe the developer is so passionate about JavaFx that he put the JavaFx logo there and nobody said anything. That's great! JavaFx is unanimous. :P&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-9213193745854726149?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/frc_qsGPNKc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/9213193745854726149/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/12/finally-javafx-application-in.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/9213193745854726149?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/9213193745854726149?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/frc_qsGPNKc/finally-javafx-application-in.html" title="Finally a JavaFX Application in Production Out There" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SyM-W9SDp9I/AAAAAAAABck/vMK414ac6Q4/s72-c/vancouver-website.png" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/12/finally-javafx-application-in.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUEEQn0zcSp7ImA9WxNaEEo.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-8076017247564276118</id><published>2009-11-24T15:40:00.000+01:00</published><updated>2009-11-24T15:40:03.389+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-24T15:40:03.389+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="conference" /><category scheme="http://www.blogger.com/atom/ns#" term="research" /><category scheme="http://www.blogger.com/atom/ns#" term="movie" /><title>ICMI'09 Video</title><content type="html">In addition to the experience reported at "&lt;a href="http://www.hildeberto.com/2009/11/icmi-mlmi-2009-at-mit.html"&gt;ICMI-MLMI 2009 at MIT&lt;/a&gt;" and "&lt;a href="http://www.hildeberto.com/2009/11/discussion-about-context-during-ucvp.html"&gt;Discussion about Context during the UCVP Workshop&lt;/a&gt;", I'm publishing a video showing the visual experience of the ICMI'09 at MIT Media Lab.&lt;br /&gt;
&lt;br /&gt;
&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/KCzSB_qBx0U&amp;hl=en_US&amp;fs=1&amp;"&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/KCzSB_qBx0U&amp;hl=en_US&amp;fs=1&amp;" 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;
Publishing this video, I wish to motivate myself, my colleagues and thank UCL/TELE Lab for this opportunity. It is supposed to be just one more conference, one more place, one more line in my CV, but it is more than all of that. As a simple person, of course, I add an enormous value to this experience and this is a way I found to share what inspired me there.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-8076017247564276118?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/GBJAw_fZrvQ" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/8076017247564276118/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/11/icmi09-video.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/8076017247564276118?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/8076017247564276118?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/GBJAw_fZrvQ/icmi09-video.html" title="ICMI'09 Video" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/11/icmi09-video.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEIHRnc7eCp7ImA9WxNbGUQ.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-2900056444620693482</id><published>2009-11-23T17:41:00.004+01:00</published><updated>2009-11-23T18:15:37.900+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-23T18:15:37.900+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="cejug" /><category scheme="http://www.blogger.com/atom/ns#" term="java" /><title>CEJUG's New J Faces</title><content type="html">&lt;div&gt;If we compare the current moment of &lt;a href="http://www.cejug.org/"&gt;CEJUG&lt;/a&gt; with its first semester in 2009, we would say that the group came back to its old good shape. We have been very active during the last months, thanks to a restructuring process which started in July and since that time it has produced a positive impact on the local Java community. However, this restructuring wouldn't be possible without the direct collaboration of the community. They took the initiative, got mobilised with the coordinators, and became committed to a serious project for the whole community.&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;We have been repetitively thankful to this group of volunteers in many opportunities, including during last CEJUG's anniversary. Now it's the time to officially recognise them, not only by the leadership team, but for the whole local Java community, who was directly or indirectly impacted. This team was co-responsible for all events we organised since last August and other events this year that are still under negotiation and planning at the moment. They also looked for sponsorship to make 100% of CEJUG's actions possible, for souvenirs to grant our guests and many other things.&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;The official recognition made by the leadership team was unanimous and we have promoted the following CEJUG's members:&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;b&gt;&lt;a href="http://renearaujo.blogspot.com/"&gt;René Araújo&lt;/a&gt;&lt;/b&gt; becomes JUG Leader in recognition to the voluntary work that he has been doing for the JUG, not only recently, but in several other opportunities during the last years. René is tireless when supporting CEJUG's initiatives. He will join the current team of Jug Leaders composed of Silveira Neto, Rafael Carneiro and Hildeberto Mendonça and also be committed with a voluntary work in benefit of the group indefinitely.&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;b&gt;&lt;a href="http://www.paulojdev.com.br/"&gt;Paulo Júnior&lt;/a&gt;&lt;/b&gt; becomes events coordinator, role previously assumed by Rafael Carneiro, in recognition of his initiative to leverage the monthly events after a long interruption. He is already managing events since August and he will continue doing that, calling speakers, defining the calendar, negotiating venues and sponsorships, among other responsibilities.&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;b&gt;Gregory Fontenele&lt;/b&gt; becomes responsible for the CEJUG Certified program and also for the CEJUG Shop in recognition to his great contribution to the last CEJUG's initiatives. Gregory will negotiate sponsorship, promote and reward CEJUG members with vouchers. For the shop, he will organize the order and delivery of t-shirts.&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;b&gt;Thiago Sá&lt;/b&gt; becomes responsible for the Java Emissary program&amp;nbsp;(literally translated)&amp;nbsp;thanks to his experience on the SUN Campus Ambassador program and in recognition to his collaboration on the last CEJUG initiatives. Thiago will coordinate a network of entrepreneurs undergraduate students who will promote CEJUG in their respective universities.&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;b&gt;&lt;a href="http://www.franciscobarroso.blogspot.com/"&gt;Francisco Barroso&lt;/a&gt;&lt;/b&gt; becomes CEJUG supporter, a recognition lower than what he actually deserves, but he has demonstrated his greatness as a person by refusing a more important distinction offered by the leadership team. Francisco is committed to support all CEJUG's initiatives, helping according to his availability.&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div&gt;&lt;b&gt;&lt;a href="http://weblogs.java.net/blog/felipegaucho/"&gt;Felipe Gaúcho&lt;/a&gt;&lt;/b&gt; becomes a JUG Adviser in recognition to several years of dedication and great achievements for the CEJUG community. Felipe is also responsible for the Java University Award program, which is in its third edition and it is fully sponsored by local companies and supported by the local government and academy. Felipe is not only part of CEJUG's history but he is also helping to design the next steps of the group.&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
All these activities are a big challenge to these new volunteers. That's why we have to support and remember them for what they did, not for what they didn't do. Even with ups and downs the CEJUG community always comes back stronger and stronger, and you, even without realizing it, are a better developer because of it.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_GRRHKr2Yk6M/Swq7FiSxokI/AAAAAAAABbE/yxmvvq1r_Aw/s1600/2408150459_7e59ee3b89.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_GRRHKr2Yk6M/Swq7FiSxokI/AAAAAAAABbE/yxmvvq1r_Aw/s400/2408150459_7e59ee3b89.jpg" /&gt;&lt;/a&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/1281882577011517327-2900056444620693482?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/OkmwmXA1k-A" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/2900056444620693482/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/11/cejugs-new-faces.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/2900056444620693482?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/2900056444620693482?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/OkmwmXA1k-A/cejugs-new-faces.html" title="CEJUG's New J Faces" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_GRRHKr2Yk6M/Swq7FiSxokI/AAAAAAAABbE/yxmvvq1r_Aw/s72-c/2408150459_7e59ee3b89.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/11/cejugs-new-faces.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEcHSXk9eCp7ImA9WxNbF0w.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-3723783834511314564</id><published>2009-11-19T23:53:00.005+01:00</published><updated>2009-11-20T12:20:38.760+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-20T12:20:38.760+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="strategy" /><category scheme="http://www.blogger.com/atom/ns#" term="research" /><category scheme="http://www.blogger.com/atom/ns#" term="workspace" /><title>For a Better Lab</title><content type="html">My current research experience has taught me some lessons that I would like to share with my readers. For some reason, I had an incredible wish to write about it today and I'm doing it now after getting some inspiration from some Belgian beers.&lt;br /&gt;
&lt;br /&gt;
The point is, how to create a creative environment where people feel really comfortable and motivated to conceive, develop, disseminate and exploit their ideas? I listed below what I believe that could make a research even better, pleasant and productive.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;span style="color: blue;"&gt;Research is made by people, not by machines&lt;/span&gt;: at least in the area of technology we all work&amp;nbsp;heavily with computers, but all what computers can do is to follow our own instructions, nothing else.&amp;nbsp;So, a research cannot be good enough if it doesn't consider a human or an environmental perspective. So, if you make a bunch of calculations to prove some concept and you don't consider the impact of that proof on people's lives or the environment where the research is inserted, then your research will be less convincing. I don't have enough&amp;nbsp;space&amp;nbsp;to give examples here, but you can test my theory by commenting this post with your questions.&lt;/li&gt;
&lt;li&gt;&lt;span style="color: blue;"&gt;Being concentrated means being together&lt;/span&gt;: sometimes we want to stay alone to get concentrated and have something done. This is totally valid, but the best way to be concentrated is being forced to be concentrated by the presence of other members of your team, if you have a team, of course. These days, there are so many ways to get distracted, reading news, twittering, following friends' lives on Facebook, that a lonely work could be twice&amp;nbsp;unproductive than a&amp;nbsp;cooperative&amp;nbsp;work. Don't be sure that you are doing something together with other people just because you all are in the same research project. Projects can force people to work together and the benefits of being together is only achievable by wishing it.&lt;/li&gt;
&lt;li&gt;&lt;span style="color: blue;"&gt;&lt;span style="color: black; font-family: Arial, sans-serif; font-size: 19px; line-height: 25px;"&gt;&lt;/span&gt;Better than publishing is to be referenced&lt;/span&gt;: the effort to publish a paper in a good conference or periodic is substantial. We all know that. But the hardest&amp;nbsp;achievement is to have your work referenced by the scientific community. A reference is a recognition that your work exists and had some impact, positive or negative, on somebody else's work. References are also an important indicator of relevance for journals, magazines, conferences and even universities. In the context of a lab, I would say that the best way to get the first references to your work is disseminating your own research in the lab, let people know details about it, and visualize how your solution can be also a solution for other problems in the lab. Usually, researches in the same lab are closely related, increasing the probability that a work can help other works around. Perhaps, some level of envy can be a barrier at the beginning, but you can manage it by taking the initiative of referencing their research first.&lt;/li&gt;
&lt;li&gt;&lt;span style="color: blue;"&gt;Knowledge management&lt;/span&gt;: a lab without knowledge management is like a brain without memory. It reasons many times about the same thing with minor evolution. In fact, companies, that usually don't dedicate most of their time on innovation, are implementing complex and expensive knowledge management solutions. Why labs, where creativity and innovation are the raw material of production, don't do the same? They should. What researchers produce should be easily found and linked with other works. Other researchers should be able to comment on other people's work, recommend further references, suggest improvements, etc. When people bring&amp;nbsp;proceedings from conferences, the whole lab has the right to freely access these resources, but without a knowledge management approach, these innocent gestures are simply forgotten.&lt;/li&gt;
&lt;li&gt;&lt;span style="color: blue;"&gt;Knowledge sharing&lt;/span&gt;: are you afraid to share your ideas in the lab, afraid that people can steal them? Have you considered that your research conclusions might be wrong and the time you spent proving that the wrong is right is twice bigger than discussing your ideas with others and maybe do a shared work with them? Four or more hands produce more than two. So, when you present&amp;nbsp;your work in an internal seminar, make sure that it is a pleasure not an obligation and you are actually looking for contributors, not being free from tough questions.&lt;/li&gt;
&lt;li&gt;&lt;span style="color: blue;"&gt;There are real scientific contributions between the edges of two or more projects&lt;/span&gt;: projects are usually focused on a certain problem or a category of problems, but there is no doubt that the results of a project can produce considerable contributions to other projects. So, it's a sort of blindness when projects just follow their natural course and do not spread a wave of benefits for all other projects around.&lt;/li&gt;
&lt;li&gt;&lt;span style="color: blue;"&gt;Write alone and write less&lt;/span&gt;: if you are desperate about the progress of your research, be sure that one of the causes for this feeling is the fact that you are working mostly alone on your goals. So, find a way to get contribution by contributing for other people's work.&lt;/li&gt;
&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SwWvkZQL5LI/AAAAAAAABaM/2y2zqPKXVZ4/s1600/phd070609s.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SwWvkZQL5LI/AAAAAAAABaM/2y2zqPKXVZ4/s400/phd070609s.gif" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
That's it! Be my guest and comment this post because I'm very curious about your opinion. ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-3723783834511314564?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/ZBdW5ix3NP0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/3723783834511314564/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/11/for-better-lab.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/3723783834511314564?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/3723783834511314564?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/ZBdW5ix3NP0/for-better-lab.html" title="For a Better Lab" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SwWvkZQL5LI/AAAAAAAABaM/2y2zqPKXVZ4/s72-c/phd070609s.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/11/for-better-lab.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ck4HSXwzcSp7ImA9WxNbFkg.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-2203241925497941834</id><published>2009-11-19T18:11:00.001+01:00</published><updated>2009-11-19T18:15:38.289+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-19T18:15:38.289+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="cejug" /><category scheme="http://www.blogger.com/atom/ns#" term="conference" /><category scheme="http://www.blogger.com/atom/ns#" term="europe" /><title>Devoxx is a Very Professional Conference</title><content type="html">This week I attended, once again, the &lt;a href="http://www.devoxx.com/"&gt;Devoxx&lt;/a&gt; Conference in Antwerp, Belgium. This time I had the opportunity to give a talk there about a &lt;a href="http://www.usi4biz.com/"&gt;software project&lt;/a&gt; that I'm working on. Of course, it was a greeeat experience! I have to say that this one was the most professional infra-structure I ever had to give a talk. Amazing! So, congratulations for the whole Devoxx'09 team including organizers, technicians, assistants and others who made our sessions so&amp;nbsp;comfortable, professional and attractive (yeah, I also had my biggest audience ;-) ).&lt;br /&gt;
&lt;br /&gt;
The subject of the talk is not in the scope of this blog, but you can learn more about it in another blog that I contribute to. Here, I'm going to share only the nicest picture of myself in conferences. :D hehehe. Many thanks for the professional photographer there. All the rest you can check out &lt;a href="http://usi4biz.com/2009/11/19/linking-business-processes-and-user-interfaces-at-devoxx09/"&gt;here&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_GRRHKr2Yk6M/SwV7pEweRjI/AAAAAAAABaE/OcajLTWyyyQ/s1600/12937_178201023822_609678822_3082889_6793108_n.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_GRRHKr2Yk6M/SwV7pEweRjI/AAAAAAAABaE/OcajLTWyyyQ/s400/12937_178201023822_609678822_3082889_6793108_n.jpg" /&gt;&lt;/a&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/1281882577011517327-2203241925497941834?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/0MP8HJPILPY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/2203241925497941834/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/11/devoxx-is-very-professional-conference.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/2203241925497941834?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/2203241925497941834?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/0MP8HJPILPY/devoxx-is-very-professional-conference.html" title="Devoxx is a Very Professional Conference" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_GRRHKr2Yk6M/SwV7pEweRjI/AAAAAAAABaE/OcajLTWyyyQ/s72-c/12937_178201023822_609678822_3082889_6793108_n.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/11/devoxx-is-very-professional-conference.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUEFQng8fyp7ImA9WxNUFkw.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-5828349950080885199</id><published>2009-11-07T02:54:00.004+01:00</published><updated>2009-11-07T19:13:33.677+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-07T19:13:33.677+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="conference" /><category scheme="http://www.blogger.com/atom/ns#" term="research" /><title>Discussion about Context during the UCVP Workshop</title><content type="html">The 4th and 5th days of the &lt;a href="http://www.hildeberto.com/2009/11/icmi-mlmi-2009-at-mit.html"&gt;ICMI-MLMI 2009&lt;/a&gt; was dedicated to thematic workshops. On the 4th day I attended the &lt;a href="http://hmi.ewi.utwente.nl/ucvp09"&gt;Workshop on Use of Context in Vision Processing&lt;/a&gt; (UCVP), which was an opportunity for observing recent works on employing contextual information in problems of &lt;a href="http://en.wikipedia.org/wiki/Computer_vision"&gt;Computer Vision&lt;/a&gt;. There were very good talks all over the day, but what really interested me was a half-hour discussion about "Context" at the end of the workshop.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_GRRHKr2Yk6M/SvRI5gbUzAI/AAAAAAAABYM/Q2rJ2ei_hDY/s1600-h/DSC02571.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_GRRHKr2Yk6M/SvRI5gbUzAI/AAAAAAAABYM/Q2rJ2ei_hDY/s400/DSC02571.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;UCVP workshop venue&lt;/i&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
At the second floor of the MIT Media Lab, we were freely discussing about why context is important and how it can improve computer vision. The point about context is that if you don't have one, then either your problem is really big or you can solve many problems with a single solution. So, people are used to define a context in order to get results, which is a primary concern of financed research projects, where most of us are&amp;nbsp;allocated on. The independence of context usually comes from attempts to reuse results from previous context-aware works on new projects focused on new contexts. Gradually, the original research becomes more and more generic until it achieves a balanced level of acceptance.&lt;br /&gt;
&lt;br /&gt;
Let me give you an example of a context-aware (context-dependent) research. The work of&amp;nbsp;Stefanie Tellex and&amp;nbsp;Deb Roy, entitled "Grounding Spatial Prepositions for Video Search", was presented during the conference and it considers a database of videos, recorded with a fish eyes camera, showing the routine of a family in a kitchen during some months. They track people and also record what they say to perform a set of experiments. Of course, the experiments are all related to people moving and talking in the kitchen. If they change to a different environment, like a meeting room, the results would change considerably. They cannot even guarantee that their current implementation will work in a different environment. It could be evaluated in other projects and some&amp;nbsp;adjustments on the direction of generalization could be necessary, but still keeping the compatibility with the previous context.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_GRRHKr2Yk6M/SvRWrKGQKqI/AAAAAAAABYU/ixRNd1JqZow/s1600-h/DSC02533-1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_GRRHKr2Yk6M/SvRWrKGQKqI/AAAAAAAABYU/ixRNd1JqZow/s400/DSC02533-1.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;Demo of the domestic surveillance database&lt;/i&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
Now, an example of a context-unaware (context-independent) research. Antonio Torralba, Rob Fergus, and William T. Freeman have been working on the &lt;a href="http://people.csail.mit.edu/torralba/tinyimages/"&gt;LabelMe&lt;/a&gt; project, a large database of images, with around 80 million tiny images randomly found on the internet. Anyone visiting the LabelMe website can select objects that they recognize and label it with the name of the object. It helps to improve the performance of object recognition algorithms independent of the context. So, they are not studying a specific kind of context, but creating a general solution for several situations of object recognition.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_GRRHKr2Yk6M/SvRwUgZIpXI/AAAAAAAABYc/NTU7Gjz7Vg4/s1600-h/80-million-tiny-images.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/_GRRHKr2Yk6M/SvRwUgZIpXI/AAAAAAAABYc/NTU7Gjz7Vg4/s400/80-million-tiny-images.png" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;Website of the &lt;/i&gt;&lt;a href="http://people.csail.mit.edu/torralba/tinyimages/"&gt;&lt;i&gt;LabelMe&lt;/i&gt;&lt;/a&gt;&lt;i&gt; project&lt;/i&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
What is still confusing for me is that sometimes people mix (or I mix) context and domain. For me, these are two different things, not totally different but differentiable. To make my point clear, let me describe a situation: Imagine a meeting room in a company where directors talk about the strategy of the company. When people go to a meeting at this room we have a contextual situation going on. All concepts within this situation are part of the domain too. But, what about the subjects people are discussing during the meeting? Is it part of the context or is it exclusively part of the domain?&lt;br /&gt;
&lt;br /&gt;
According to the&amp;nbsp;&lt;a href="http://wordnet.princeton.edu/"&gt;WordNet database&lt;/a&gt;,&amp;nbsp;&lt;b&gt;&lt;i&gt;context&lt;/i&gt;&lt;/b&gt;&amp;nbsp;is a set of facts or circumstances that surround a situation or event; and&amp;nbsp;&lt;b&gt;&lt;i&gt;domain&amp;nbsp;&lt;/i&gt;&lt;/b&gt;is the content of a particular field of knowledge. Domain seems to embrace context in the sense that it can describe the whole context. According to these definitions, what people talk at the moment is part of the context, but all subjects that people can possibly talk about their business are part of the domain, which should also be considered on the scientific experiments.&lt;br /&gt;
&lt;br /&gt;
So, going back to context-awareness and context-unawareness, are we talking about context or domain? Is it context-aware or domain-aware? Context-unaware or domain-unaware? I never heard of domain-awareness/unawareness, but a lot of context-aware/unaware. How can we keep using the term "context" and still consider what people know but not necessarily say? Open question. Let's think about it ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-5828349950080885199?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/d_7Yb1ARQ_Y" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/5828349950080885199/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/11/discussion-about-context-during-ucvp.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/5828349950080885199?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/5828349950080885199?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/d_7Yb1ARQ_Y/discussion-about-context-during-ucvp.html" title="Discussion about Context during the UCVP Workshop" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_GRRHKr2Yk6M/SvRI5gbUzAI/AAAAAAAABYM/Q2rJ2ei_hDY/s72-c/DSC02571.JPG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/11/discussion-about-context-during-ucvp.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUMDR3k_eSp7ImA9WxNUE0U.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-6442892946345644394</id><published>2009-11-04T16:52:00.006+01:00</published><updated>2009-11-05T03:17:56.741+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-05T03:17:56.741+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="conference" /><category scheme="http://www.blogger.com/atom/ns#" term="research" /><category scheme="http://www.blogger.com/atom/ns#" term="meanings4fusion" /><category scheme="http://www.blogger.com/atom/ns#" term="user interface" /><title>ICMI-MLMI 2009 at MIT</title><content type="html">I'm visiting Boston, USA, right now to attend the Eleventh International Conference on Multimodal Interfaces and the Sixth Workshop on Machine Learning for Multimodal Interaction - &lt;a href="http://icmi2009.acm.org/"&gt;ICMI-MLMI 2009&lt;/a&gt;. This is the most important conference on the field of Multimodal Interaction, which is one of my PhD's case studies.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SvGCWJEQOMI/AAAAAAAABVM/5CYBEXcTJvk/s1600-h/DSC02514.JPG" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SvGCWJEQOMI/AAAAAAAABVM/5CYBEXcTJvk/s320/DSC02514.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;Yesterday I made my presentation entitled "A Fusion Framework for Multimodal Interactive&lt;br /&gt;
Applications", which is one of the applications of my PhD research. I never spent time in this blog to explain what is multimodal interaction and neither multimodal fusion, but let me do it shortly now: &lt;b&gt;multimodal interaction&lt;/b&gt; is the possibility to interact with systems using more than one modality (vision, auditory, touching, etc.) and each modality has a different or complementary influence on the interaction. For example: an text processing software that supports keyboard and also speech recognition as ways to input text. &lt;b&gt;Multimodal fusion&lt;/b&gt; is the possibility to use information from two or more modalities, in order to improve a less precise modality or realise more complex meanings by combining data from those modalities. For example: to get better results on speech recognition, a vision system could be used to perform lips reading, improving the probability that a certain word was said in case of uncertainty.&lt;br /&gt;
&lt;br /&gt;
Well, my presentation was good and their questions were tough but they were satisfied with my answers and some of them even sent emails in private, asking for the presentation. I would say that this was the toughest audience that I've ever had. A conference at MIT normally attracts many big names in the field of multimodal interaction. The environment is really appropriate (and magic) to discuss about research and innovation. This year the conference had a big emphasis on robotics, with exciting demos and impressive results on interaction and learning with humans. We also had the chance to make a tour through the lab, visiting different projects and watching live demonstrations (some pictures below).&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_GRRHKr2Yk6M/SvGdTLX-TjI/AAAAAAAABVs/t1MDQceBCTU/s1600-h/DSC02500.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_GRRHKr2Yk6M/SvGdTLX-TjI/AAAAAAAABVs/t1MDQceBCTU/s320/DSC02500.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;One of the dozens of rooms in the MIT Media Lab&lt;/i&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_GRRHKr2Yk6M/SvGdplwkh_I/AAAAAAAABV0/41UTmuMK0HM/s1600-h/DSC02526.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_GRRHKr2Yk6M/SvGdplwkh_I/AAAAAAAABV0/41UTmuMK0HM/s320/DSC02526.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;i&gt;Social and emotional interaction with a child robot&lt;/i&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
The experience of visiting the &lt;a href="http://www.media.mit.edu/"&gt;MIT Media Lab&lt;/a&gt; was unique. This is a space where people are totally free to create even if ideas sound totally ridiculous. At the end, they find a way to exploit those ideas. It shows that, sometimes, real problems can also block people's creativity and great ideas also come from nowhere.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-6442892946345644394?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/5fN2xr_Osn8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/6442892946345644394/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/11/icmi-mlmi-2009-at-mit.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6442892946345644394?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6442892946345644394?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/5fN2xr_Osn8/icmi-mlmi-2009-at-mit.html" title="ICMI-MLMI 2009 at MIT" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SvGCWJEQOMI/AAAAAAAABVM/5CYBEXcTJvk/s72-c/DSC02514.JPG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/11/icmi-mlmi-2009-at-mit.html</feedburner:origLink></entry><entry gd:etag="W/&quot;A0QBRHw8fCp7ImA9WxNUEEw.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-6731401727128225697</id><published>2009-10-31T21:02:00.000+01:00</published><updated>2009-10-31T21:02:35.274+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-31T21:02:35.274+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="conference" /><category scheme="http://www.blogger.com/atom/ns#" term="trip" /><category scheme="http://www.blogger.com/atom/ns#" term="research" /><category scheme="http://www.blogger.com/atom/ns#" term="software engineering" /><title>What about my PhD?</title><content type="html">My PhD is something that was not planned but it is happening. The full story about how I got into it is too long and too complicated, but to summarise, it was a consequence of some good results I got at work, which gave a good confidence to my adviser to put me in. I couldn't say "no" because the opportunity to do a PhD in a prestigious university like &lt;a href="http://www.uclouvain.be/"&gt;UCL&lt;/a&gt; was really good.&lt;br /&gt;
&lt;br /&gt;
For a guy who had a long experience in the corporate world, the decision to do a PhD was really tough. I don't have the practice and the personality of a researcher, but as an entrepreneur, I like to take risks and face challenges and a PhD is definitively a challenge. Surprisingly, it is working well. I didn't expect that because the way the research environment works is pretty different and I had to get used to it.&lt;br /&gt;
&lt;br /&gt;
A week ago I did my PhD confirmation, which is a kind of acceptance of the work performed so far. I had to present my research to an internal committee composed of local full professors. Besides the feeling of uncertainty, everything went well and they approved my research. In some sense, I was expecting such approval, but I didn't expected that it would come without any serious remarks. I'm almost sure that it was a consequence of the publications I've been doing. Since other scientific committees had a look on the work before, then nothing very disparate would come out from the confirmation committee at that moment.&lt;br /&gt;
&lt;br /&gt;
Of course, a positive feedback is a great motivation to continue my research, but nothing is compared to a bunch of opportunities brought by the PhD student status. Some of these opportunities were actually a dream for many computer science students (mainly those who don't live in the US, of course). Last summer, I presented my research in a PhD Consortium hosted by the &lt;a href="http://www.cmu.edu/index.shtml"&gt;Carnegie Mellon University&lt;/a&gt; (CMU). Definitively a dream for me because the Java programming language was created and evolved by people who graduated in that university. The prestigious Software Engineering Institute (&lt;a href="http://www.sei.cmu.edu/"&gt;SEI&lt;/a&gt;) is located there and it was responsible for one of the biggest revolution on the software engineering field with the creation of the &lt;a href="http://www.sei.cmu.edu/cmmi/index.cfm"&gt;CMMI&lt;/a&gt; (Capability Maturity Model Integration), a process improvement approach used by several companies worldwide to prove they are ready to perform complex software projects under restricted constraints of cost, resources and time. Not least, the CMU School of Computer Science was also the lab of &lt;a href="http://download.srv.cs.cmu.edu/%7Epausch/"&gt;Randy Pausch&lt;/a&gt;, a computer graphics researcher who passed away because of a pancreatic cancer, but before that, he left a vast contribution on his field and also created a project called Alice to teach programming to children. His testimony is published on the book &lt;a href="http://www.thelastlecture.com/"&gt;The Last Lecture&lt;/a&gt; (a must read).&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_GRRHKr2Yk6M/SuyGXI8w3VI/AAAAAAAABTk/r8CMI5gMC9c/s1600-h/DSC01958.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_GRRHKr2Yk6M/SuyGXI8w3VI/AAAAAAAABTk/r8CMI5gMC9c/s400/DSC01958.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
Fortunately, CMU was not the last big dream to come true during my PhD. Tomorrow, I'm going to Boston to present my work in a conference at &lt;a href="http://web.mit.edu/"&gt;MIT&lt;/a&gt; (Massachusetts Institute of Technology). Wow! Yeah! Difficult to believe, but it is real. I can't wait to blog about this experience here. ;-)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-6731401727128225697?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/iq9KoWGVu58" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/6731401727128225697/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/10/what-about-my-phd.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6731401727128225697?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6731401727128225697?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/iq9KoWGVu58/what-about-my-phd.html" title="What about my PhD?" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_GRRHKr2Yk6M/SuyGXI8w3VI/AAAAAAAABTk/r8CMI5gMC9c/s72-c/DSC01958.JPG" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/10/what-about-my-phd.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DkMBQ3k-eCp7ImA9WxNXGEs.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-225619189414029024</id><published>2009-10-06T22:27:00.009+02:00</published><updated>2009-10-06T23:27:32.750+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-06T23:27:32.750+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="enterprise application" /><category scheme="http://www.blogger.com/atom/ns#" term="software architecture" /><category scheme="http://www.blogger.com/atom/ns#" term="web" /><title>Preparing Glassfish V2 for JSF 2.0</title><content type="html">I'm planning to migrate the web client of a JEE application from Apache Struts to JSF in order to reduce the complexity of the implementation and the number of required libraries. These libraries make the distribution package (ear) a giant file of 10MB, too much for a web application. :P However, since I don't like JSF version 1.2 because of several design issues, I decided to wait a bit more for a stable release of JSF 2.0. I think I'm waiting too much :(. The first time I saw a presentation about JSF 2.0 was in December 2008, during the last edition of JavaPolis (now Devoxx), and since that time I haven't seen any application server in its production release already available for this last JSF version.&lt;br /&gt;&lt;br /&gt;Then I decided to make a little search on Google and I could find that JSF 2.0 RC can be configured to run on Glassfish V2/.1 without any complex step. Following the instructions of &lt;a href="https://javaserverfaces.dev.java.net/nonav/rlnotes/2.0.0/releasenotes.html"&gt;this page&lt;/a&gt;, I performed the following steps:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;download the Mojarra 2.0.0 RC binary bundle from this &lt;a href="https://javaserverfaces.dev.java.net/servlets/ProjectDocumentList?folderID=11662"&gt;webpage&lt;/a&gt;;&lt;/li&gt;&lt;li&gt;backup your existing jsf-impl.jar found in GF_HOME/lib;&lt;/li&gt;&lt;li&gt;copy the new jsf-api.jar and jsf-impl.jar to GF_HOME/lib;&lt;/li&gt;&lt;li&gt;edit your GF_HOME/domains/[domain-name]/config/domain.xml and add (or update the existing classpath-prefix) 'classpath-prefix="${com.sun.aas.installRoot}/lib/jsf-api.jar" to the &lt;java-config&gt; tag;&lt;/li&gt;&lt;li&gt;&lt;domain-name&gt;restart your server.&lt;/domain-name&gt;&lt;/li&gt;&lt;/ol&gt;On your domain configuration file, domain.xml, set the classpath-prefix parameter as the example below:&lt;br /&gt;&lt;pre style="font-family:courier;font-size: 11px;"&gt;&lt;br /&gt;&amp;#60;java-config&lt;br /&gt;  classpath-prefix="${com.sun.aas.installRoot}/lib/jsf-api.jar"&lt;br /&gt;  classpath-suffix="" ... &amp;#62;&lt;br /&gt;  ...&lt;br /&gt;  ...&lt;br /&gt;&amp;#60;/java-config&amp;#62;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Probably, you won't find the classpath-prefix parameter there, so there is no problem if you add it. ;) To check whether it is running correctly, open the Glassfish Admin Console (http://localhost:4848/), which is a JSF application, and see if it is running normally. The following line will be printed on the application server log file (server.log) when starting the JSF application:&lt;br /&gt;&lt;pre style="font-family:courier;font-size: 11px;"&gt;&lt;br /&gt;Initializing Mojarra 2.0.0 (RC b16) for context ''&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;That's all! I'm not sure if it is enough. I'm going to start the migration in the next days. If I find issues during the process, I will come here to report them in details. I just hope that, when I finish this implementation, the market will finally offer an application server supporting JSF 2.0 by default.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-225619189414029024?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/vpKv0S_Pp6c" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/225619189414029024/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/10/preparing-glassfish-v2-for-jsf-20.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/225619189414029024?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/225619189414029024?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/vpKv0S_Pp6c/preparing-glassfish-v2-for-jsf-20.html" title="Preparing Glassfish V2 for JSF 2.0" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/10/preparing-glassfish-v2-for-jsf-20.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0IBQH49fSp7ImA9WxNaEEw.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-5526628005758448332</id><published>2009-09-09T21:38:00.002+02:00</published><updated>2009-11-23T23:32:31.065+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-23T23:32:31.065+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="cejug" /><category scheme="http://www.blogger.com/atom/ns#" term="café com tapioca" /><title>CEJUG's 7th Anniversary</title><content type="html">I'm very glad to announce here &lt;a href="http://www.cafecomtapioca.com/"&gt;CEJUG's 7th Anniversary&lt;/a&gt;, supporting the event team with the national and international dissemination. It is supposed to be one of the biggest JUG's conference in Brazil thanks to the entrepreneurship of CEJUG's leaders and collaborators. In a very short period of time, they are doing a great job to make everything happen on September 19th, at &lt;a href="http://www.fa7.edu.br/"&gt;FA7&lt;/a&gt;, a local university that provides great support for many of &lt;a href="http://www.cejug.org/"&gt;CEJUG's initiatives&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.cafecomtapioca.com/"&gt;&lt;img alt="" class="alignnone size-full wp-image-180" height="192" src="http://wp.oktiva.com.br/cafe-com-tapioca/files/2009/09/button_animado.gif" title="Visite o site do Café com Tapioca" width="192" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
More information about the event can be found at &lt;a href="http://www.cafecomtapioca.com/"&gt;http://www.cafecomtapioca.com&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
Watch a video specially produced to promote this event:&lt;br /&gt;
&lt;br /&gt;
&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/AjZgx_i85q0&amp;hl=en_US&amp;fs=1&amp;rel=0"&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/AjZgx_i85q0&amp;hl=en_US&amp;fs=1&amp;rel=0" 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/1281882577011517327-5526628005758448332?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/iOX5Eh7Lu0M" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/5526628005758448332/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/09/cejugs-7th-anniversary.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/5526628005758448332?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/5526628005758448332?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/iOX5Eh7Lu0M/cejugs-7th-anniversary.html" title="CEJUG's 7th Anniversary" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/09/cejugs-7th-anniversary.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEcBSXY-eyp7ImA9WxNTGUo.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-6141978178841752778</id><published>2009-08-15T17:07:00.006+02:00</published><updated>2009-08-22T22:14:18.853+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-22T22:14:18.853+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="cejug" /><title>JUG Leader Again</title><content type="html">First of all, I'm back to my blog after some days of writing vacations. I've accumulated a lot to tell you here and I plan to do it slowly and without any chronological order. This restart as a blog writer is naturally zen, nothing in a hurry and getting back to the normality in a couple of days. So, I decided to start with my experience of going back to the &lt;a href="http://www.cejug.org"&gt;CEJUG&lt;/a&gt; administration.&lt;br /&gt;&lt;br /&gt;As I wrote &lt;a href="http://www.hildeberto.com/search/label/cejug"&gt;many times&lt;/a&gt;, CEJUG is a &lt;a href="http://java.sun.com/community/usergroups/"&gt;Java User Group&lt;/a&gt; of my state in Brazil. I left the administration in January of this year, when I was overloaded by several projects and I couldn't take care of everything at the same time.&lt;br /&gt;&lt;br /&gt;However, at the end of May I finished some projects, getting some free time, then I decided to subscribe in the CEJUG mailing list again, just collaborating with technical discussions. I realized some administrative problems going on and I knew I could help somehow. Then I asked the counsel to get involved, they accepted and I started managing the mailing list. Contributing for the organization of my JUG was so valuable for me that I decided to get more responsibility and I consulted the community about the possibility to go back to the CEJUG administration and be JUG Leader again. They approved my request and now I'm gradually organizing many pending tasks.&lt;br /&gt;&lt;br /&gt;This time, we are getting more involvement from the community, which are directly helping on many important tasks. We also got great news in August that &lt;a href="http://www.rafaelcarneiro.net/blog/"&gt;Rafael Carneiro&lt;/a&gt; decided to join the CEJUG leadership again, after several months dedicated to personal projects. He was responsible for the great series of events promoted by CEJUG during 2007 and 2008, transforming CEJUG in one of the most active JUGs in Brazil. We aim to find new leaders to keep the CEJUG community very active for many years.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-6141978178841752778?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/XJ5Z9u0YmYk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/6141978178841752778/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/08/jug-leader-again.html#comment-form" title="1 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6141978178841752778?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6141978178841752778?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/XJ5Z9u0YmYk/jug-leader-again.html" title="JUG Leader Again" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/08/jug-leader-again.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUEHSHg5eCp7ImA9WxJVEk8.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-3509063882080427874</id><published>2009-06-28T23:00:00.003+02:00</published><updated>2009-06-29T00:20:39.620+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-29T00:20:39.620+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="research" /><category scheme="http://www.blogger.com/atom/ns#" term="user interface" /><title>User-centered Design Helping Java Programmers</title><content type="html">In general, analysts and programmers spend time taking care of user interfaces but researchers at Carnegie Mellon University's &lt;a href="http://www.cs.cmu.edu/"&gt;School of Computer Science&lt;/a&gt; decided to focus on the user experience of those analysts and programmers instead. They developed the tools &lt;a href="http://edelstein.pebbles.cs.cmu.edu/jadeite/"&gt;Jadeite&lt;/a&gt; and &lt;a href="http://edelstein.pebbles.cs.cmu.edu/apatite/"&gt;Apatite&lt;/a&gt; which are intended to help Java developers exploring the language API (Application Programming Interface) using human-centered design techniques.&lt;br /&gt;&lt;br /&gt;A basic feature of the Jadeite tool is to collaboratively improve the Java API by allowing developers to suggest modifications according to their needs. For instance, if you think that a class doesn't have a method you were expecting or a parameter missing in a method signature then you are allowed to add them as you wish. This feature may help API designers to improve their libraries but programmers may still miss the implementation of those modifications, of course. The tool also increases the size of the font according to the frequency of use. This frequency is based on the number of Google hits, the crowdsource which well represents what most of people are doing. I think it is useful to help developers to decide what to use from the API, since most people are using these possible choices too.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_GRRHKr2Yk6M/SkfHpbtrAxI/AAAAAAAABDg/TXV8fqKmrcU/s1600-h/jadeite.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 363px;" src="http://2.bp.blogspot.com/_GRRHKr2Yk6M/SkfHpbtrAxI/AAAAAAAABDg/TXV8fqKmrcU/s400/jadeite.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5352466196781007634" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The Apatite tool takes a different approach, allowing programmers to browse APIs by association, which helps them to see packages, classes and methods that tend to go with each other. It also uses statistics about the popularity of each item to provide weighted views of the most relevant items, representing them as a cloud of tags.&lt;br /&gt;&lt;br /&gt;To get more information visit &lt;a href="http://www.cmu.edu/news/archive/2009/June/june17_javatools.shtml"&gt;http://www.cmu.edu/news/archive/2009/June/june17_javatools.shtml&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-3509063882080427874?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/jHl882lPEok" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/3509063882080427874/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/06/user-centered-design-helping-java.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/3509063882080427874?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/3509063882080427874?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/jHl882lPEok/user-centered-design-helping-java.html" title="User-centered Design Helping Java Programmers" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_GRRHKr2Yk6M/SkfHpbtrAxI/AAAAAAAABDg/TXV8fqKmrcU/s72-c/jadeite.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/06/user-centered-design-helping-java.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cCRnszcCp7ImA9WxNUFU8.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-5563660132376170632</id><published>2009-06-17T11:00:00.003+02:00</published><updated>2009-11-06T17:31:07.588+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-06T17:31:07.588+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="strategy" /><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="javafx" /><title>Has JavaFX a Strategy?</title><content type="html">Some time ago I was a bit severe with Sun Microsystems &lt;a href="http://www.hildeberto.com/2009/04/sun-slogan-i-must-have-forgotten.html"&gt;here&lt;/a&gt;. Now I don't care anymore because Sun is Oracle and Oracle for me is a database, not a company. I never stopped to think about Oracle's stocks, or Oracle's acquisitions, or even the Oracle support for the Java platform, which sucks! But I was always worried about SUN, criticizing and praising as an independent observer. I did that because I admired the work that SUN has been doing on the Java Platform and the proximity the community has to Sun's top engineers. Even criticizing, it doesn't mean I don't like Sun. On the contrary. I do care about them in the pure essence of carefulness, as &lt;a href="http://download.srv.cs.cmu.edu/~pausch/"&gt;Randy Pausch&lt;/a&gt; stated in his book, transcribing the words of his football coach:&lt;br /&gt;
&lt;blockquote&gt;"&lt;span style="font-style: italic;"&gt;- When you are doing something badly and no one’s bothering to tell you anymore, that’s a very bad place to be. Your critics are the ones still telling you they love you and care.&lt;/span&gt;"&lt;br /&gt;
&lt;/blockquote&gt;&lt;br /&gt;
Sometimes we don't like to listen to critics and advises from our friends, but this is actually the best proof that they are really our friends. But people at Sun didn't understand that and they came to me, in defense of Sun, to reply the post I've mentioned above. A top Sun's engineer wrote to me:&lt;br /&gt;
&lt;blockquote&gt;"&lt;span style="font-style: italic;"&gt;Any big company consists of people. Different people. Companies also have ups and downs. Does your current point of view make sense? Absolutely. But it's not the only one. I can tell you something that it's hard to argue with: Sun is very good at executing long term projects. Look at Java and Solaris.&lt;/span&gt;"&lt;br /&gt;
&lt;/blockquote&gt;&lt;br /&gt;
And then I replied to his message:&lt;br /&gt;
&lt;blockquote&gt;"&lt;span style="font-style: italic;"&gt;I'm completely sure that SUN is good. I have been working with SUN technology since 1998. I've never touched a .NET code. All my projects, costumers, students are Java oriented. This is possible because SUN is good. But do you believe that these long term projects that you mentioned can solve SUN's lack of profit? Java is not service, but marketing for SUN. Solaris is service, but less than 5% of them. Is JavaFX also a long term project? It was developed in a hurry! I wonder for what I can use it in my professional life. Should I rewrite my web and swing applications? No way! Don't you think that the fastest way to spread the JavaFX adoption is allowing the improvement of existing applications? Why to spend a lot of resources to drag an applet from the browser to the desktop if we need the network anyway? More space? Develop just small applications? I would give more priority to hide the Java logo from the final user, or at least allow its customization, because an advantage of the flash technology is that it is so imperceptible and the final user doesn't even realize that he is using that technology. You have no idea how it is important for the user interaction. Take a look out there, almost nobody sees this Java logo animation. Why people should start to see it from now on? Imagine websites like big portals. They have dozens of flash animations. Imagine how uncomfortable is to see dozens of Java logos.&lt;/span&gt;"&lt;br /&gt;
&lt;/blockquote&gt;&lt;br /&gt;
Since we can use other programming languages (Scala, Python, Ruby, and Grove) to develop our applications on the Java Platform, why not execute JavaFX script in our existing applications too? For instance: I need to develop a special animation in my application and doing it using threads and pure Java AWT will consume a lot of time. If the JavaFX team had prioritized the execution of their scripts in existing Java applications, I would save a lot of time doing this task using JavaFX. What they did was exactly the contrary. They allowed JavaFX scripts to reuse existing Java classes, which is useful only for new projects or features out of the existing contexts. It reminds me of an interesting sentence: "Who was born first: the egg or the chicken?"&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SjlXxc_vDlI/AAAAAAAABDY/UG7MZ-pAeoY/s1600-h/dilbert-js-joke.gif" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5348402539587898962" src="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SjlXxc_vDlI/AAAAAAAABDY/UG7MZ-pAeoY/s400/dilbert-js-joke.gif" style="cursor: hand; cursor: pointer; height: 141px; width: 400px;" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Yes, I'm criticizing SUN again. Maybe, this is my last chance to do it before the expected announcement of the completed fusion between SUN and Oracle. I hope Oracle gets the point here and does something to fulfill the expectations of most Java Developers. If I feel things getting better, in the right path, I will keep my support as I have been doing. Otherwise, I will be excited to evaluate and definitively adopt other platforms as I have been thinking about.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-5563660132376170632?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/Mn1JziLTpv4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/5563660132376170632/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/06/has-javafx-strategy.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/5563660132376170632?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/5563660132376170632?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/Mn1JziLTpv4/has-javafx-strategy.html" title="Has JavaFX a Strategy?" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_GRRHKr2Yk6M/SjlXxc_vDlI/AAAAAAAABDY/UG7MZ-pAeoY/s72-c/dilbert-js-joke.gif" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/06/has-javafx-strategy.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cNQHszfSp7ImA9WxNUFU8.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-6055531046905938012</id><published>2009-06-11T20:38:00.007+02:00</published><updated>2009-11-06T17:31:31.585+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-06T17:31:31.585+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="cejug" /><category scheme="http://www.blogger.com/atom/ns#" term="java" /><category scheme="http://www.blogger.com/atom/ns#" term="conference" /><title>Java: My Past, Present, and Future</title><content type="html">Last week San Francisco hosted the last edition of &lt;a href="http://java.sun.com/javaone/"&gt;JavaOne&lt;/a&gt; under the responsibility of Sun Microsystem. From now on, &lt;a href="http://www.oracle.com/"&gt;Oracle&lt;/a&gt; owns Sun and all its technologies. They promised to invest more and more on the Java platform and all related technologies. Oracle is a powerful company and this new juncture makes me relax and keep believing that my present and future are definitively Java-oriented.&lt;br /&gt;
&lt;br /&gt;
I started working with Java in 1998, eleven years ago, developing applets to exploit data about criminality in my &lt;a href="http://en.wikipedia.org/wiki/Fortaleza"&gt;city&lt;/a&gt; and about the volume of water in the main lakes of my &lt;a href="http://en.wikipedia.org/wiki/Cear%C3%A1"&gt;state&lt;/a&gt;. This work was really exciting because it introduced me to this nice language and also because I had to learn it by myself through the Internet and buying books from Amazon, since no course was available at that time and no book wad been written in Portuguese yet. I started using the JDK 1.1.4 which was really basic in comparison with what is available today but very useful to plot graphical data using the awt graphics library.&lt;br /&gt;
&lt;br /&gt;
I've learned from that first experience that Java is not a complex language, but the object-oriented paradigm is really difficult to learn when the developer is used to work with the functional paradigm. The languages I've learned before were Pascal, Delphi, Visual Basic and C. None of them were purely object-oriented, so I had the freedom to code as I wanted. Learning Java, a 99% object-oriented language (1% of primitive types), I realized that my programs had much more code than my algorithms actually demanded. On the other hand, even with more code, these programs became more readable and with a better abstract representation. A class, for instance, represents an element of the real world, like a book, a house, a product, a video, a category, a group or anything else, concrete or abstract. Each class is composed of its properties, represented by attributes, and behavior, represented by methods. If you have an algorithm to implement, you will do it inside one of more methods, writing it as a behavior of the class. The problem is how to do it in a way that the abstraction is consistent with the algorithm and vice versa.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://1.bp.blogspot.com/_GRRHKr2Yk6M/SjF6wICJuGI/AAAAAAAABDQ/UVn8kjYs608/s1600-h/java_books.jpg" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5346189199874308194" src="http://1.bp.blogspot.com/_GRRHKr2Yk6M/SjF6wICJuGI/AAAAAAAABDQ/UVn8kjYs608/s400/java_books.jpg" style="cursor: hand; cursor: pointer; height: 161px; width: 400px;" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
For those who are learning Java and didn't get my point yet, it's time to dedicate more time for it. Java is a powerful language, it can solve most computational problems and it's the most adopted programming language by far, almost unanimous in all computer science courses of universities around the world. So, it is the right choice, but it demands dedication, persistence and creativity to get the work done.&lt;br /&gt;
&lt;br /&gt;
I had 4 years of experience teaching Java for hundreds of people and I'm absolutely convinced that it is not possible to learn Java alone or just attending Java classes. It's veeery important to join a community of developers and exchange knowledge with them. They will share with you what they've learned and you will reinforce your knowledge teaching other people too. This is the main role of Java User Groups (JUG) and it is also the main success factor of these groups. As a former Jug leader (&lt;a href="http://www.cejug.org/"&gt;CEJUG&lt;/a&gt;), I know what I'm talking about ;).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-6055531046905938012?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/6lzOfZ6XXZc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/6055531046905938012/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/06/java-my-past-present-and-future.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6055531046905938012?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/6055531046905938012?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/6lzOfZ6XXZc/java-my-past-present-and-future.html" title="Java: My Past, Present, and Future" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_GRRHKr2Yk6M/SjF6wICJuGI/AAAAAAAABDQ/UVn8kjYs608/s72-c/java_books.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/06/java-my-past-present-and-future.html</feedburner:origLink></entry><entry gd:etag="W/&quot;Ak4DQn8_eip7ImA9WxJVE0k.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-1100251050349234316</id><published>2009-06-10T19:00:00.003+02:00</published><updated>2009-06-30T10:02:53.142+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-30T10:02:53.142+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="europe" /><category scheme="http://www.blogger.com/atom/ns#" term="culture" /><category scheme="http://www.blogger.com/atom/ns#" term="culinary" /><title>Not a Single Protein Lost</title><content type="html">One of the things I really miss from Brazil is the Japanese food! - WHAT??!! Japanese food in Brazil?! :O - I'm serious! At least in my city, there are dozens of Japanese restaurants offering all kinds of Japanese food. They started around 10..12 years ago and we all thought that they would stay opened for a while only, since they were offering raw food for a culture of well cooked meal, but they have consolidated and expanded business through the years.&lt;br /&gt;&lt;br /&gt;When we lived there, we went to Japanese restaurants at least 2 times a month to eat something like the picture below. A sushi boat with 42 peaces. It is too much, I know, but a small portion always lets us wishing for more.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_GRRHKr2Yk6M/Si_htAgBDII/AAAAAAAABDI/w5xV66YXl08/s1600-h/Sushi-barco.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 300px; height: 186px;" src="http://3.bp.blogspot.com/_GRRHKr2Yk6M/Si_htAgBDII/AAAAAAAABDI/w5xV66YXl08/s400/Sushi-barco.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5345739446056717442" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;For our surprise, some friends in Belgium invited us to a Japanese dinner. Wow! I couldn't believe that we were going to eat something we hadn't eaten for years! I think I was the first to confirm the invitation. This emotion was equivalent to the one I had in Portugal when I went to a &lt;a href="http://en.wikipedia.org/wiki/Churrascaria"&gt;churrascaria&lt;/a&gt; (a restaurant specialized in Brazilian barbecue), to taste different kinds of meats from Brazil.&lt;br /&gt;&lt;br /&gt;The dinner was AWESOME! Delicious! So good like the ones I ate before. We also helped, preparing some &lt;a href="http://www.hildeberto.com/2009/06/not-exactly-recipe-of-caipirinha.html"&gt;caipirinhas&lt;/a&gt; and people really enjoyed it (at least, they asked for more!) We would like to thank our friends one more time for these great moments, which also brought great memories. I made the video below to register the occasion. ;)&lt;br /&gt;&lt;br /&gt;&lt;object width="400" height="332" class="BLOG_video_class" id="BLOG_video-e3151cb376860526" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.blogger.com/img/videoplayer.swf?videoUrl=http%3A%2F%2Fv17.nonxt4.googlevideo.com%2Fvideoplayback%3Fid%3De3151cb376860526%26itag%3D5%26begin%3D0%26len%3D86400000%26app%3Dblogger%26et%3Dplay%26el%3DEMBEDDED%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1270272116%26sparams%3Did%252Citag%252Cip%252Cipbits%252Cexpire%26signature%3D200BF3492313B94DDEFB5235305AEB39270D86E4.849ECD111A99AA833C3DFB0D435B3DC0CF84D028%26key%3Dck1&amp;amp;thumbnailUrl=http%3A%2F%2Fvideo.google.com%2FThumbnailServer2%3Fapp%3Dblogger%26contentid%3De3151cb376860526%26offsetms%3D5000%26itag%3Dw320%26sigh%3DG5qleipYBVCFqvzik4AZnsuoDPY&amp;amp;messagesUrl=video.google.com%2FFlashUiStrings.xlb%3Fframe%3Dflashstrings%26hl%3Den&amp;amp;nogvlm=1"&gt;
&lt;param name="bgcolor" value="#FFFFFF"&gt;
&lt;embed width="400" height="332" src="http://www.blogger.com/img/videoplayer.swf?videoUrl=http%3A%2F%2Fv17.nonxt4.googlevideo.com%2Fvideoplayback%3Fid%3De3151cb376860526%26itag%3D5%26begin%3D0%26len%3D86400000%26app%3Dblogger%26et%3Dplay%26el%3DEMBEDDED%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1270272116%26sparams%3Did%252Citag%252Cip%252Cipbits%252Cexpire%26signature%3D200BF3492313B94DDEFB5235305AEB39270D86E4.849ECD111A99AA833C3DFB0D435B3DC0CF84D028%26key%3Dck1&amp;amp;thumbnailUrl=http%3A%2F%2Fvideo.google.com%2FThumbnailServer2%3Fapp%3Dblogger%26contentid%3De3151cb376860526%26offsetms%3D5000%26itag%3Dw320%26sigh%3DG5qleipYBVCFqvzik4AZnsuoDPY&amp;amp;messagesUrl=video.google.com%2FFlashUiStrings.xlb%3Fframe%3Dflashstrings%26hl%3Den&amp;amp;nogvlm=1" type="application/x-shockwave-flash"&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/1281882577011517327-1100251050349234316?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/5nhcoKfD6Zk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/1100251050349234316/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/06/not-single-protein-lost.html#comment-form" title="0 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/1100251050349234316?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/1100251050349234316?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/5nhcoKfD6Zk/not-single-protein-lost.html" title="Not a Single Protein Lost" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_GRRHKr2Yk6M/Si_htAgBDII/AAAAAAAABDI/w5xV66YXl08/s72-c/Sushi-barco.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/06/not-single-protein-lost.html</feedburner:origLink><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="enclosure" href="http://feedproxy.google.com/~r/HildebertosBlog/~5/9R-PZrJNfFE/video-play.mp4" length="0" type="video/mp4" /><feedburner:origEnclosureLink>http://www.blogger.com/video-play.mp4?contentId=e3151cb376860526&amp;type=video%2Fmp4</feedburner:origEnclosureLink></entry><entry gd:etag="W/&quot;DEcERncyeyp7ImA9WxJXFEg.&quot;"><id>tag:blogger.com,1999:blog-1281882577011517327.post-826832667219733067</id><published>2009-06-08T12:00:00.001+02:00</published><updated>2009-06-08T12:13:27.993+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-06-08T12:13:27.993+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="europe" /><category scheme="http://www.blogger.com/atom/ns#" term="culture" /><category scheme="http://www.blogger.com/atom/ns#" term="culinary" /><title>Not Exactly a Recipe of Caipirinha</title><content type="html">If there is one thing that represents well the Brazilian soul and culture, this thing is our most known drink: &lt;a href="http://en.wikipedia.org/wiki/Caipirinha"&gt;caipirinha&lt;/a&gt;! There is nothing really special in the recipe of this drink to make it so unique. You just need sugar, lemons, and &lt;a href="http://en.wikipedia.org/wiki/Cachaça"&gt;cachaça&lt;/a&gt; and mix them, pressing all the ingredients with a wooden bat in a common glass or improvising somehow with clean hands. &lt;br /&gt;&lt;br /&gt;The secret is the quantity of each ingredient and this quantity is totally subjective, managed by the heart of the bartender. Look at &lt;a href="http://www.usatoday.com/travel/destinations/2007-02-15-brazil-cachaca_x.htm"&gt;these guys&lt;/a&gt;. The caipirinha they prepare must be great, but not because they have experience doing that, but because of their feelings represented by an authentic smile :). The meaning of this feeling is simple: "I want you happy and feeling good as I am, so I'm going to improve your mood through this caipirinha". It is not actually said, but felt. You feel your mood changing when you start to drink it and you can be sure about that when you ask for a second one.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_GRRHKr2Yk6M/Siw-KqmekyI/AAAAAAAABDA/Vxj0ueRjADc/s1600-h/caipirinha-2.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 396px;" src="http://3.bp.blogspot.com/_GRRHKr2Yk6M/Siw-KqmekyI/AAAAAAAABDA/Vxj0ueRjADc/s400/caipirinha-2.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5344715210737226530" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The main ingredient of caipirinha is cachaça. It is a traditional strong drink from Brazil, around 40% of alcohol. Of course you have all the freedom to drink it as you wish, but you will miss the Brazilian spirit if you drink it pure or alone. Why can't you drink it pure? Because it is too strong and you will not find happiness, but the floor. Why can't you drink it alone? Because you cannot find happiness alone. So, every time I give a bottle of cachaça as a gift I always advice: "This bottle is yours but never ever drink it alone.". People don't understand, but I insist without any further explanation. Now, I finally decided to explain it here.&lt;br /&gt;&lt;br /&gt;The recipe of caipirinha mixes sugar with cachaça, reducing the alcohol effect to the body. Drinking it with friends will make you happy, everybody happy and their happiness will come back to you in double.&lt;br /&gt;&lt;br /&gt;So, if you received a bottle of cachaça as a gift or you bought one, follow my advice: wait for a moment of good mood, invite some friends and use any recipe available on the internet. It doesn't matter. What matters is how good you want to make your friends feel.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1281882577011517327-826832667219733067?l=www.hildeberto.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/HildebertosBlog/~4/thASc7IFBmM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://www.hildeberto.com/feeds/826832667219733067/comments/default" title="Post Comments" /><link rel="replies" type="text/html" href="http://www.hildeberto.com/2009/06/not-exactly-recipe-of-caipirinha.html#comment-form" title="2 Comments" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/826832667219733067?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/1281882577011517327/posts/default/826832667219733067?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/HildebertosBlog/~3/thASc7IFBmM/not-exactly-recipe-of-caipirinha.html" title="Not Exactly a Recipe of Caipirinha" /><author><name>Hildeberto Mendonça</name><uri>http://www.blogger.com/profile/00241544229335976181</uri><email>noreply@blogger.com</email><gd:extendedProperty name="OpenSocialUserId" value="15073830742837150342" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_GRRHKr2Yk6M/Siw-KqmekyI/AAAAAAAABDA/Vxj0ueRjADc/s72-c/caipirinha-2.jpg" height="72" width="72" /><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">2</thr:total><feedburner:origLink>http://www.hildeberto.com/2009/06/not-exactly-recipe-of-caipirinha.html</feedburner:origLink></entry></feed>
