Liferay Portal / News: Recent posts

Marketplace, PACL, and Community Plugins

<p>
<span style="font-size: 12.0px; line-height: 1.5;"><img alt="" class="callout" src="http://www.liferay.com/documents/5912873/6394519/mkt.png/1300742f-bb80-4749-bdfd-ba3720efb2ac?t=1367489097041" style="width: 401.0px; height: 163.0px; margin: 8.0px; float: right;" />If you've been developing plugins for the </span><a href="http://www.liferay.com/marketplace" style="font-size: 12.0px; line-height: 1.5;">Liferay Marketplace</a><span style="font-size: 12.0px; line-height: 1.5;">, you're undoubtedly aware of the issues surrounding the development and publication process for apps. &nbsp;The main issues are around the required use of the </span><a href="http://www.liferay.com/documentation/liferay-portal/6.1/user-guide/-/ai/security-manager" style="font-size: 12.0px; line-height: 1.5;">Security Manager</a><span style="font-size: 12.0px; line-height: 1.5;"> (aka PACL), which has proven challenging to get right (or not even possible to make work, depending on the nature of the app, and the use of certain frameworks/libraries). This, plus other issues in the most recent release (such as </span><a href="http://issues.liferay.com/browse/LPS-29103" style="font-size: 12.0px; line-height: 1.5;">LPS-29103</a><span style="font-size: 12.0px; line-height: 1.5;">) has meant that many of our most valued community members have been prevented from publishing to the Marketplace through no fault of their own, and they have not been shy about letting us know of their concerns (see </span><a href="http://www.rotterdam-cs.com/blogs/-/blogs/liferay-security-manager-or-how-to-raise-a-horde-of-angry-developers" style="font-size: 12.0px; line-height: 1.5;">here</a><span style="font-size: 12.0px; line-height: 1.5;">, and <a href="http://www.liferay.com/community/forums/-/message_boards/view_message/18978400#_19_message_17554571">here</a>). I personally find it very encouraging to see such passion and constructive criticism from our community, and I'm happy to report that we're making significant changes to the Marketplace to address these concerns and make Marketplace the high quality, go-to place for Liferay apps.</span></p>
<div>
Here's what the team is working on right now:</div>
<ul>
<li>
Remove the requirement for Security Manager (aka PACL) to be enabled
<li>
<span style="font-size: 12.0px; line-height: 1.5;">Improve the &quot;Denial Reasons&quot; given when apps are rejected (usually because they fail a test case)</span>
<li>
Document the environments in which apps are tested and more clearly specify requirements for metadata
<li>
Improve the Security Manager developer experience
</ul>
<div>
The first item in particular is intended to bring back the kind of functionality we had in the legacy community plugins repository, but still ensure that the Marketplace contains quality apps that actually work as advertised (since apps will still be run through anti-virus checks and basic smoke tests). App developers will have a choice to publish their app with or without the use of PACL, and apps will be marked as such when viewed on the Marketplace. This will also make it less ambiguous for developers looking to enter the <a href="http://discover.liferay.com/Marketplace-App-Submission">Marketplace App Contest</a>&nbsp;with apps that otherwise work without PACL.&nbsp;PACL will still be required for apps offered for sale (once that feature is available).&nbsp;</div>
<div>
&nbsp;</div>
<div>
The other items relate to improving the developer experience of developing for Marketplace. We now have hundreds of apps and registered developers (not including Liferay itself) who are publishing to the Marketplace, and it's critical that the development and publishing process be as smooth, intuitive, and informative as possible. This is foremost on the team's mind, and if you have any additional feedback (besides those mentioned above), don't hesitate to make yourself heard either in the comments below, or in the <a href="http://www.liferay.com/community/forums/-/message_boards/category/10919228">Marketplace Developer forums</a>. &nbsp;<span style="font-size: 12.0px; line-height: 1.5;">We are hoping to implement these changes in the next couple of months, to resolve the difficulties with Marketplace development.</span></div>
<div>
&nbsp;</div>
<div>
As far as the PACL experience, in the next Liferay releases (for both 6.1 and 6.2) will be a new PACL policy generator tool (<a href="http://issues.liferay.com/browse/LPS-32200">LPS-32200</a>) which will vastly simplify the creation of a PACL-enabled app. If you want to test-drive it now, go grab the <a href="http://www.liferay.com/community/wiki/-/wiki/Main/BugSquad+-+Liferay+Portal+6.2+CE+Milestone+5+Testing">6.2 Milestone 5</a> build - it's fully implemented and ready for you to try out (<a href="https://github.com/liferay/liferay-docs/blob/master/devGuide/en/chapters/13-plugin-security.markdown">here's how</a>).</div>
<div>
&nbsp;</div>
<div>
Finally, I want to let you know that we (as a company) make <em>every</em> effort to listen and respond to the open source community. We don't always get everything perfect right out of the gate, and sometimes it takes a while to make a change, but please know that Liferay depends on its community to point out the good and the bad, and make corrections as necessary. This is another example of why open source and open development processes are vastly superior to the alternative.</div> link

Posted by SourceForge Robot 15 hours ago

Liferay Hamilton Office is Taking Shape

<p>
Over the past several years, our North American Sales and Customer Experience Management team has grown at a tremendous rate. &nbsp;We have team members in New York, Illinois, California, Minnesota, Texas and Florida, but the majority of our team is based in the greater-Cincinnati area. &nbsp;To that end, It has become increasingly important for us to have a central location to meet and work together. &nbsp;</p>
<p>
In October of 2012, we&nbsp;<a href="http://www.journal-news.com/news/news/new-company-coming-to-downtown-hamilton/nSgkM/" target="_blank">announced</a> that Liferay has chosen to open its North American Sales Office in Hamilton, Ohio. &nbsp;&nbsp;Liferay makes a point to heavily invest in the areas and communities in which we do business, and as time goes on, I will write a series of posts which will serve to introduce you to the <a href="http://www.hamilton-city.org/Modules/ShowDocument.aspx?documentid=5262" target="_blank">many good things happening in Hamilton</a> along with the different ways Liferay will be partnering with the community.</p>
<p>
That's not what this post is about, though. &nbsp;This post is to answer the &quot;How's the office coming?&quot; question I keep getting from the community, Liferay team, partners and customers.</p>
<p>
It's going well! &nbsp;The office is under construction, and we will be located on the second floor of the <a href="http://buildingsofnote.blogspot.com/2013/03/dixon-globe-opera-house-robinson.html" target="_blank">Robinson-Schwenn Building</a> in the heart of downtown. &nbsp;The Robinson-Schwenn Building was built in 1866 and has been everything from an opera house to a department store and now hosts an expansion of <a href="http://www.regionals.miamioh.edu" target="_blank">Miami University</a>, a <a href="http://truewestcoffee.com" target="_blank">coffee shop</a>, and a law library. &nbsp;Be sure to visit <a href="http://buildingsofnote.blogspot.com/2013/03/dixon-globe-opera-house-robinson.html" target="_blank">Buildings of Note</a> for some beautiful photos of the building.</p>
<p>
<img src="http://4.bp.blogspot.com/-CrWwsHWfa5g/UVi1uOp-YdI/AAAAAAAADJM/K-De4_nfw3w/s640/Globe+Theater+-+Hamilton+051+-+Copy+-+Copy.JPG" style="width: 400.0px; height: 338.0px;" /><br />
(Photo from&nbsp;<a href="http://buildingsofnote.blogspot.com">http://buildingsofnote.blogspot.com</a>)</p>
<p>
Opening an office an office is no small endeavor, and we have been blessed to work with Cindy and Michael Dingeldein from the Community Design Alliance. &nbsp;They have created with the architectural and design components of our project and have helped ensure that our new space will be nothing less than beautiful and functional (much more on that in a future post).</p>
<p>
So, how is the construction coming? &nbsp;Quite well, and we expect to be moving in by the last week of May. &nbsp;</p>
<p>
&nbsp;</p>
<br />
<div>
<p>
<img alt="" src="http://www.liferay.com/documents/26073/24237383/IMG_2550.JPG/0d749010-2ae2-4801-bb49-134ebc34c9ac?t=1367426048000" style="width: 400.0px; height: 299.0px;" /></p>
<p>
<img alt="" src="http://www.liferay.com/documents/26073/24237383/IMG_2548.JPG/02529b80-0f65-4d35-bf55-fff22a0509ce?t=1367426048000" style="width: 400.0px; height: 299.0px;" /></p>
<p>
Our first Sales bootcamp in January.</p>
<p>
<img alt="" src="http://www.liferay.com/documents/26073/24237383/IMG_2546.jpg/2160d59e-5f84-4245-8026-5d7d8e18dc9f?t=1367426049000" style="width: 400.0px; height: 535.0px;" /></p>
<p>
Dinner with Hamilton City Leaders, Brandon Saurber and Jody Gunderson, at <a href="http://www.ryanstavern.com" target="_blank">Ryan's Tavern</a> -- an Irish pub conveniently located in the next building...&nbsp;<img alt="smiley" height="20" src="http://cdn.www.liferay.com/html/js/editor/ckeditor/plugins/smiley/images/regular_smile.gif" title="smiley" width="20" /></p>
<p>
<img alt="" src="http://www.liferay.com/documents/26073/24237383/IMG_2543.JPG/cbdf471c-25f1-4ee8-a931-e2f1d83d9911?t=1367426049000" style="width: 400.0px; height: 299.0px;" /></p>
</div>
<div>
Liferay's New York-based Senior Account Executive working out of the current Hamilton office -- my house. &nbsp;Note that my dog, Nashville, will be joining us at the new office.</div>
<p>
&nbsp;</p>
<p>
&nbsp;</p>
<p>
<img alt="" src="http://www.liferay.com/documents/26073/24237383/IMG_2914.jpg/e1d1ec8f-b6ad-4ce1-a349-86774e5ad529?t=1367426045000" style="width: 400.0px; height: 299.0px;" /></p>
<p>
My office and shared office.</p>
<p>
<img alt="" src="http://www.liferay.com/documents/26073/24237383/IMG_2916.jpg/3cc60b85-5ad7-455f-b37a-37c7898e9b9d?t=1367426045000" style="width: 400.0px; height: 299.0px;" /></p>
<p>
The large windows let in plenty of natural light.</p>
<p>
<img alt="" src="http://www.liferay.com/documents/26073/24237383/IMG_2976.jpg/3886ff97-392f-4585-a272-072704610399?t=1367426046000" style="width: 400.0px; height: 299.0px;" /></p>
<p>
Painting has begun. &nbsp;Behind the blue wall will be the &quot;Rumpus Room.&quot;</p>
<p>
<img alt="" src="http://www.liferay.com/documents/26073/24237383/IMG_2978.jpg/a9c0369a-855b-4088-a7c2-f8f260fce0f2?t=1367426046000" style="width: 400.0px; height: 299.0px;" /></p>
<p>
Door frames are getting ready to go in.</p>
<p>
<img alt="" src="http://www.liferay.com/documents/26073/24237383/IMG_2980.jpg/6d2eddbe-a7c7-4853-8fe7-c0218eaf58ae?t=1367426047000" style="width: 400.0px; height: 299.0px;" /></p>
<p>
Conference rooms, offices and a large shared work area.</p>
<p>
&nbsp;</p>
<p>
So, that is where things stand now. &nbsp;The carpet will be going in this week, and we are planning an official grand opening celebration at the end of the month. &nbsp;Stay tuned for more news, updates and photos.</p>
<p>
If you'd like to learn more about Hamilton,<a href="http://youtu.be/RuRTrWNZgbA" target="_blank"> check out the 2012 State of the City Address</a>. &nbsp;The Liferay announcement occurs at 31:50.</p>
<p>
&nbsp;</p>
<p>
&nbsp;</p> link

Posted by SourceForge Robot 1 day ago

Liferay + TIBCO!

<p>
<a href="http://www.cmswire.com/cms/information-management/enterprise-portal-liferay-partners-with-tibco-software-for-lower-cost-backend-integration-020698.php">Enterprise Portal Liferay Partners with TIBCO Software for Lower Cost Back-End Integration</a></p> link

Posted by SourceForge Robot 2 days ago

Desencuentros entre un irreverente icono y una reflexiva etiqueta

<p>
<span style="font-size: 20.0px; line-height: 26.0px;"><span style="color: rgb(80,198,221);">En Liferay nos encontramos inmersos en la redefinici&oacute;n de algunos conceptos UX, y ello nos ha permitido comprobar de primera mano, la controversia que a&uacute;n se mantiene latente, entre los lenguajes fundamentales (imagen y escritura).</span></span></p>
<p>
<span style="font-size: 16.0px;"><span style="color: rgb(133,139,140); line-height: 20.0px;">Llevamos varios meses trabajando en nuevos patrones de interacci&oacute;n, en un nuevo redise&ntilde;o visual, y en la utilizaci&oacute;n de nuevas metodolog&iacute;as asociadas a la forma en la que exploramos y descubrimos c&oacute;mo mejorar la Experiencia de Usuario (<strong>UX</strong>) en <strong>Liferay</strong>. Por ello, <strong>Jorge Ferrer (VP Engineering)</strong>,<strong> Nate Cavanaugh (Director UI)</strong> y yo como Dise&ntilde;ador UX estuvimos discutiendo (los 3 ten&iacute;amos el mismo criterio) sobre cual era la mejor forma de afrontar una parte importante del futuro redise&ntilde;o (los iconos).</span></span></p>
<p>
<img alt="" src="http://www.liferay.com/documents/15796801/0/suns3.png/4f999401-e360-40be-ac1c-a6909e696b84?t=1366093635887" style="line-height: 1.5; width: 665.0px; height: 267.0px;" /></p>
<p>
<span style="line-height: 1.5; color: rgb(105,105,105);"><span style="font-size: 14.0px;">Esto fue motivo de b&uacute;squeda de informaci&oacute;n, de estudios y mockups As&iacute; llegamos a un post de <a href="http://bokardo.com/archives/labels-always-win/">Joshua Porter</a> (@bokardo) y sus respuestas a art&iacute;culos de otros cracks (<a href="http://layervault.tumblr.com/post/42361566927/progressive-reduction">Layervault</a>). Estas lecturas son realmente interesantes, y os recomiendo su lectura, como prefacio a este art&iacute;culo. Este texto no trata de dar luz a una serie de pol&iacute;ticas de comportamiento, sino m&aacute;s bien encontrar una ra&iacute;z hist&oacute;rica a la que poder adherir las m&eacute;tricas resultantes de nuestros tests, desde un punto de vista muy personal. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">Icono versus Etiqueta: Una discusi&oacute;n con miles de a&ntilde;os.</span></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Cuando dise&ntilde;amos <strong>GUI</strong>, a menudo nos encontramos en una encrucijada que nos lastra desde tiempos inmemoriales. Y cuando me refiero a &ldquo;tiempos inmemoriales&rdquo;, no hago referencia a cuando <strong>Sir Tim Berners</strong> Lee invent&oacute; &ldquo;The Web&rdquo;, quiero decir a varios cientos y miles de a&ntilde;os atr&aacute;s. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Existen indicios de que el hombre empez&oacute; la representaci&oacute;n de formas hace como unos <strong>40.000 a&ntilde;os</strong> de antig&uuml;edad, es decir, durante la &uacute;ltima glaciaci&oacute;n. Sin embargo, los primeros sistema de escritura se originaron a finales del <strong>4.000 a.C</strong>. Dichos or&iacute;genes se basan en sistemas de protoescrituras, los cuales tardaron varios cientos de a&ntilde;os m&aacute;s en consolidarse como &ldquo;hacedores&rdquo; de contexto. Esta diferencia temporal nos la define magistralmente el genial <strong>Joan Costa </strong>&ldquo;....hay pues una considerable distancia temporal entre el nacimiento de la imagen fija y el pensamiento escrito&rdquo;.</span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Desde los 2.000 caracteres de la escritura pictogr&aacute;fica Sum&eacute;ria a los <strong>22 signos del alfabeto fenicio</strong>, se han dado pasos hacia una aceptaci&oacute;n generalizada de la imagen sobre el signo. No debemos olvidar que el sentimiento de placer e incluso de puro disfrute visual, es la sensaci&oacute;n que mejor describe lo que percibimos cuando visualizamos una imagen. Algo totalmente distinto al instinto evocador o decodificador de la uni&oacute;n casi subliminal de caracteres que generan un recuerdo, en favor del pensamiento y un todo m&aacute;s figurativo. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Ya en el siglo <strong>XX</strong> (1970) fueron dise&ntilde;ados los primeros iconos, desarrollados por <strong>Xerox PARC</strong>, inicialmente se dise&ntilde;aron con la esperanza de que a los usuarios les resultase m&aacute;s f&aacute;cil el uso de los ordenadores. Pero fue <strong>David Canfield Smith</strong> (empleado de Xerox) quien defini&oacute; el t&eacute;rmino icono cuando se refer&iacute;an a ese tipo de grafismos. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Posteriormente los sistemas operativos de empresas como <strong>Microsoft</strong> o <strong>Apple</strong>, popularizaron y estandarizaron el uso de los iconos en las GUI. </span></span></p>
<p>
<img alt="" src="http://www.liferay.com/documents/15796801/0/image00.png/6cdcf8ae-321e-48b2-b8ec-0b8551fcf5ff?t=1366094091747" style="width: 720.0px; height: 600.0px;" /></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">La relaci&oacute;n asociativa entre la formula de texto o imagen, o texto+imagen, se fundamenta en las diferencias hist&oacute;ricas entre los lenguajes gr&aacute;ficos fundamentales (la imagen y lo escrito). Siempre hemos estudiado y disfrutado de la relaci&oacute;n de dependencia antagonista del Arte y la Literatura, ilustraci&oacute;n o pintura y escritura. A fin de cuentas siempre ha existido esa especial &ldquo;rivalidad&rdquo; entre lo estrictamente asociado a las percepciones asociadas a las im&aacute;genes o la transformaci&oacute;n subliminal o decodificaci&oacute;n de una sucesi&oacute;n de caracteres que de por s&iacute; carecen de significado y que en conjunto se ligan a recuerdos, sensaciones y percepciones o conceptos. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Durante mucho tiempo la relaci&oacute;n entre lo ic&oacute;nico y lo escrito ha sido competencia de grafistas y tiene su representaci&oacute;n en el t&eacute;rmino funcional, <strong>Lenguaje Bimedia (imagen-texto)</strong>. El dise&ntilde;o gr&aacute;fico, no es sino la representaci&oacute;n ling&uuml;&iacute;stica y funcional de la fusi&oacute;n de la creatividad, interacciones, sensaciones y asociaciones entre los lenguajes fundamentales (la imagen y lo escrito). </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Ahora mismo nos encontramos inmersos en una &eacute;poca en la que predominan los componentes visuales a los textuales. Estudiamos an&aacute;lisis basados en comportamientos, interacciones con la conducta de los usuarios, sus necesidades e incluso el ambiguo valor de lo cre&iacute;ble e incluso respetable. La utilizaci&oacute;n del grafismo ic&oacute;nico, lastrando el importante papel que conjuga la escritura, quiebra el falso &ldquo;<strong>Status Quo</strong>&rdquo; que equilibra la necesidad real de los usuarios y lo que nosotros como dise&ntilde;adores queremos dise&ntilde;ar. No, no caigamos en la tentaci&oacute;n de indicar, que el usuario, ya aprender&aacute;, ya se enterara, o que cuando sepa utilizar la herramienta dentro de un tiempo, entender&aacute; el significado de ese icono o acci&oacute;n. Partamos de la base que un icono solo se ve, no puede explicar ni argumentar cu&aacute;l es su cometido, es inherente de su contexto, y es hu&eacute;rfano de nacimiento por ausencia de mensaje. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Seguro que a estas alturas, ya hay gente que est&aacute; buscando en su memoria retrospectiva algunos casos que amparen estas l&iacute;neas, sino reflexiones sobre iconos con los que est&aacute; acostumbrado a trabajar, <strong>GMAIL</strong>? genial, son muy muy buenos, pero antes de que alguien diga tres veces <strong>Nielsen</strong>, <strong>Nielsen</strong>, <strong>Nielsen</strong>......., reflexionemos desde un punto de vista basado en procedimiento te&oacute;ricos, o mejor dicho en procedimientos hist&oacute;rico-te&oacute;ricos, que suena como m&aacute;s rimbombante. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Nos olvidamos en demas&iacute;a de algunos de los criterios que nos definieron en nuestra autodidacta ense&ntilde;anza al principio de los tiempos: credibilidad y el menor tiempo posible de aprendizaje. Dicha curva de aprendizaje de un producto, es directamente proporcional a la facilidad de uso de un producto, mientras mayor sea la curva de aprendizaje, menor ser&aacute; el indicativo de experiencia positiva en el. Es cierto que la curva de aprendizaje siempre aparece como indicativo cuando procedemos a estudios de <strong>UX</strong> en comportamientos de relaciones con interfaces, pero es algo que solemos obviar cuando se trata de algunos de nuestros proyectos como <strong>UX Designers</strong>, pero que requerimos hasta la saciedad cuando criticamos (perd&oacute;n, &ldquo;analizamos&rdquo;) los productos en los que otros profesionales han trabajado. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">Hablando de GOOGLE</span></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">A finales de 2011, Gmail decidi&oacute; darle una vuelta de tuerca a su interfaz. Apost&oacute; por iconos en lugar de informaci&oacute;n textual. Eso gener&oacute; un aluvi&oacute;n de de opiniones de lo m&aacute;s variado, abanderados de la usabilidad que ve&iacute;an como se traspasaba la delgada l&iacute;nea entre lo ic&oacute;nico y textual a lo ic&oacute;nico y casi abstracto. A decir verdad, existen algunos iconos que a primera vista (pasado bastante tiempo de su cambio) me chocaron frontalmente, sobre mis ideas preconcebidas (h&aacute;bitos de uso, que podr&iacute;a llamarse). </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">En la siguiente imagen se aprecia la barra de iconos activa, tras las selecci&oacute;n de un mail. podemos apreciar como el tooltip que se genera, se integra perfectamente en el dise&ntilde;o, y a mi modo de ver no genera demasiado ruido. Sin embargo la cantidad de opiniones en contra, motivo a Google a poner una opci&oacute;n de conmutar &ldquo;Icons or Text&rdquo;.</span></span></p>
<p>
&nbsp;</p>
<p>
<img alt="" src="http://www.liferay.com/documents/15796801/0/image02.png/1d0f99c0-f594-4c49-acee-83a164a6ad78?t=1366094323707" style="width: 591.0px; height: 575.0px;" /></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Fue una buena decisi&oacute;n? a mi modo de ver, No. Personalmente y por encima de cualquier tipo de comentario basado en simples conjeturas, creo que hubiera sido m&aacute;s acertado otorgar la posibilidad al usuario de conmutar entre: &ldquo;Icons, Icon with Text and Text&rdquo;. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">Clasificaciones</span></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Los iconos han sido utilizados desde el principio de la creaci&oacute;n de los ordenadores (Xerox PARC), para identificar abstractamente determinadas acciones, para minimizar el peso, para reducir la necesidad de lectura, necesitan menos espacio, en incluso consiguen algo realmente necesario en el caos actual de convenciones asociadas a las diferentes terminolog&iacute;as de cada idioma: hace los interfaces m&aacute;s internacionales. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Por ejemplo: &ldquo;Borrar&rdquo; deber&iacute;a ser igual aqu&iacute; en <strong>Madrid</strong>, que en Nairobi, que en <strong>Los Angeles</strong>, o al menos deberia ser asi......</span></span></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Para poder estandarizar un icono, primero deber&iacute;amos poderlos clasificar. Seg&uacute;n (Blattner 1989) podemos catalogarlos o clasificarlos en <strong>Representativos</strong>, <strong>Abstractos</strong> y <strong>Semi - Abstractos</strong>.</span></span></p>
<ul>
<li>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>Representativos</strong>: Objetos simples y operaciones muy familiares y habituales a los usuarios. Por ejemplo: el icono de una goma de borrar, esta constituido como estandar de Facto de Borrar, implicando una acci&oacute;n com&uacute;n.</span></span>
<li>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>Abstracto</strong>: Figuras geom&eacute;tricas o s&iacute;mbolos gr&aacute;ficos. Por ejemplo: La utilizaci&oacute;n del car&aacute;cter &ldquo;?&rdquo; implica asociaci&oacute;n con preguntas, ayuda, faqs, etc.... </span></span>
<li>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>Semi-abstracto</strong>: Es la clasificaci&oacute;n entre la representaci&oacute;n pict&oacute;rica y el s&iacute;mbolo abstracto. Por ejemplo: el icono con un signo (+), que implica creaci&oacute;n o adici&oacute;n de un nuevo documento. </span></span>
</ul>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">Leclerc y los estudios experimentales</span></span></p>
<p>
<span style="font-size: 14.0px; color: rgb(133,139,140); line-height: 1.5;">El conocimiento de este &ldquo;folleto&rdquo; y sus consideraciones me permiti&oacute; transformar dicha prueba en una buena herramienta evaluativa para iconos y etiquetas. Si un usuario o un target de usuarios podian conseguir m&eacute;tricas considerables en este experimento, me daba un buen zurr&oacute;n de motivos para documentar la pol&iacute;tica a implementar.</span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Recuerdo que la primera vez que utilice dicha prueba fue a ra&iacute;z de un proyecto para un software de ense&ntilde;anza. Los iconos con los que el cliente quer&iacute;a que trabajasemos, pose&iacute;an una legibilidad penosa, por ello quisimos asegurarnos que los usuarios comprendian el significado de todos ellos. La utilizaci&oacute;n de esa familia de iconos llevaba como restricci&oacute;n que no debiamos a&ntilde;adirle ninguna etiqueta textual. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Prepar&eacute; una serie de pruebas, basadas sobre una muestra real de 100 usuarios (divididos en 4 grupos de 25 para cada tira), a los que les mostraba una serie de iconos sobre los que alberg&aacute;bamos algunas dudas, con reducciones de entre un 30% a un 60% del tama&ntilde;o original, y al &uacute;ltimo grupo le daba las mismas reducciones pero agregandole las etiquetas (1 sola palabra) y su correspondiente reducci&oacute;n.<img alt="" src="http://www.liferay.com/documents/15796801/0/iconos.gif/3f024010-a1b0-447d-8d0d-d24d9302bc01?t=1366362164183" style="width: 510.0px; height: 518.0px;" /> </span></span></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">* En esta imagen se utiliza glyphicons.com para representar los iconos motivo de las pruebas. Los iconos (contexto) aqu&iacute; representados si son los originales y los valores Yes y No indican los resultados de las personas que identificaron correctamente el signficado del icono en todas su variantes. Para que el estudio tuviese una dimensi&oacute;n real, decidimos dividir los 100 usuarios en 4 grupos de 25 cada uno, y requerirles su opini&oacute;n sobre ellos. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">&iquest;Que descubrimos? </span></span></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Si nos fijamos en la &uacute;ltima l&iacute;nea (imagen anterior) podemos apreciar c&oacute;mo a pesar del reducido tama&ntilde;o del icono, y el seccionamiento de la etiqueta, se produjeron las m&eacute;tricas m&aacute;s altas y positivas de toda la prueba.</span></span></p>
<ul>
<li>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>El usuario adivina m&aacute;s que lee.</strong>&nbsp;</span></span><br />
<span style="font-size: 14.0px; color: rgb(133,139,140); line-height: 1.5;"> Vislumbra el significado de una palabra con solo leer la parte superior de una palabra, es una lectura r&aacute;pida basada en una fijaci&oacute;n y en su correspondiente decodificaci&oacute;n de caracteres. La observaci&oacute;n de los patrones de visualizaci&oacute;n de los usuarios (no disponiamos de infraestructura para test de Eyetracking), nos indic&oacute; que en determinados usuarios las fijaciones se suced&iacute;an entre el icono (parte de &eacute;l) y el texto. Tambi&eacute;n llegamos a la conclusi&oacute;n al igual que comprobamos en otros estudios, teor&iacute;as y libros sobre el tema (Joan Costa), que en caso de no poder descifrar un car&aacute;cter en una palabra, el usuario la obvia y utiliza la cadena anterior y la posterior para descubrirla (adivinarla). </span>
<li>
<strong style="font-size: 14.0px; color: rgb(133,139,140); line-height: 1.5;">Icono mejor con etiqueta</strong><br />
<span style="font-size: 14.0px; color: rgb(133,139,140); line-height: 1.5;">La suma de etiqueta e icono consigue valores cercanos 100% de resultados positivos. </span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>El tama&ntilde;o es importante, muy importante para los usuarios. </strong></span></span><br />
<span style="font-size: 14.0px; color: rgb(133,139,140); line-height: 1.5;">La reducci&oacute;n de un icono sin etiqueta implica una relaci&oacute;n directamente proporcional de reconocimiento negativo al tama&ntilde;o original. </span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>Incorrecta Clasificaci&oacute;n</strong></span></span><br />
<span style="line-height: 1.5; color: rgb(133,139,140);"><span style="font-size: 14.0px;">Nos equivocamos en como pens&aacute;bamos que deb&iacute;amos clasificar algunos de los iconos con los que experimentabamos. Algo universal que el tiempo me ha regalado, es que las preclasificaciones con las que venimos de serie (ense&ntilde;anza), generalmente o mejor dicho raramente se corresponde con la realidad diaria.&nbsp;</span></span><a href="http://portfolio.educ.kent.edu/daltone/cmc2/articles/jp_use%20of%20icon%20labels_wiedenbeck.pdf"><span style="font-size: 14.0px; color: rgb(133,139,140); line-height: 1.5;">Reference</span></a>
</ul>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong><u>En etapas iniciales de uso de un interfaz los iconos sin etiquetas funcionan realmente mal.</u></strong></span></span></p>
<p>
&nbsp;</p>
<p>
<span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">Gran finale.....</span></p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Generalmente los iconos generalmente se reconocen con mayor rapidez, a pesar del anterior experimento Leclerc. La utilizaci&oacute;n de iconos genera que el usuario necesita prestar menos atenci&oacute;n a dicha tarea y pueda concentrarse cognitivamente en la tarea que realmente espera conseguir en ese paso del interfaz (tarea principal).</span></p>
<p>
&nbsp;</p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">La raz&oacute;n es que tal y como sumarizamos anteriormente, la acci&oacute;n cognitiva del desciframiento de caracteres (lectura de la escritura) es a priori tediosa, y aunque nos pueda producir cierto sentimiento de placer, este sentimiento se acrecienta cuando hablamos de im&aacute;genes, pictos..... </span></p>
<p>
&nbsp;</p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Por supuesto siempre y cuando el icono o imagen no necesiten de una resoluci&oacute;n de su significado que impliquen altas dosis de desciframiento cognitivo. </span></p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Los iconos pueden generar un efecto (con la utilizaci&oacute;n) de creaci&oacute;n de est&aacute;ndar de facto en el usuario, que le ayuden a minimizar la curva de aprendizaje y les genere una serie de &ldquo;apuntes&rdquo; en su memoria a largo plazo. </span></p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Existen otras interpretaciones y discusiones bizantinas que podr&iacute;an dar m&aacute;s &ldquo;madera&rdquo; a estos puntos..... </span></p>
<ul>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Los iconos necesitan de un menor espacio a la hora de representar una acci&oacute;n. En innumerables ocasiones la acci&oacute;n escrita puede contener varias palabras. .</span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">En etapas iniciales de uso de un interfaz los iconos sin etiquetas funcionan realmente mal.</span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Los usuarios que no est&aacute;n acostumbrados a utilizar un producto, suelen tener m&aacute;s predisposici&oacute;n a necesitar icono+etiqueta. </span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Si bien en determinados productos se utiliza un componente de &ldquo;escalabilidad&rdquo; o &ldquo;Progressive reduction&rdquo;, me inclino a pensar que solo podemos llevar a cabo esta acci&oacute;n cuando se trata de iconos establecidos como est&aacute;ndar.</span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Los usuarios cada vez est&aacute;n m&aacute;s familiarizados con la utilizaci&oacute;n de interfaces gr&aacute;ficas, y sobre todo eliminando toda indicaci&oacute;n textual. Esto no significa que se establezca como un mandamiento, pero si es cierto que el tiempo invertido en descifrar iconos de una determinada APP, ser&aacute; proporcionalmente inversa a la posterior carga cognitiva necesaria para descifrar un icono similar cuando cambie a otra aplicaci&oacute;n similar. </span>
</ul>
<p>
&nbsp;</p>
<p>
<span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">References</span></p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">* <strong>BEHAVIOUR &amp; INFORMATION TECHNOLOGY, </strong>1999, VOL. 18, NO. 2, 68 &plusmn; 82 The use of icons and labels <strong>SUSAN WIEDENBECK</strong> Faculty of Computer Science, Dalhousie University, Halifax, Nova Scotia, Canada B3J 2X4</span></p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">* <strong>Dise&ntilde;ar para los ojos </strong>I.S.B.N. 978-84-611-8137-7 <strong>JOAN COSTA</strong></span></p> link

Posted by SourceForge Robot 7 days ago

Disagreements between a disrespectful icon and a reflexive label

<p>
<span style="font-size: 20.0px; line-height: 26.0px;"><span style="color: rgb(80,198,221);">In Liferay we are engaged in redefining some UX concepts, and this has allowed us to experience at first hand, the controversy that is still latent, between the fundamental languages ​​(image and writing).</span></span></p>
<p>
<span style="font-size: 16.0px;"><span style="color: rgb(133,139,140); line-height: 20.0px;">We are working several months on new patterns of interaction, a new visual redesign, and the use of new methodologies associated with the way in which we explore and discover how to improve user experience (UX) in Liferay. For that reason, <strong>Jorge Ferrer (VP Engineering)</strong>, <strong>Nate Cavanaugh (Director UI)</strong> and I as UX Designer, were discussing (all 3 had the same criteria) about what was the best way to tackle an important part of the future redesign (icons). </span></span></p>
<p>
<img alt="" src="http://www.liferay.com/documents/15796801/0/suns3.png/4f999401-e360-40be-ac1c-a6909e696b84?t=1366093635887" style="line-height: 1.5; width: 665.0px; height: 267.0px;" /></p>
<p>
<span style="line-height: 1.5; color: rgb(105,105,105);"><span style="font-size: 14.0px;">This motivated the search for information, studies and mockups. And we arrived to a post of my idolized <a href="http://bokardo.com/archives/labels-always-win/">Joshua Porter</a> (@bokardo) and its response to an article of other cracks such as (<a href="http://layervault.tumblr.com/post/42361566927/progressive-reduction">Layervault</a>). These readings are really interesting, and I recommend reading it, as a preface to this article. This text is not about to release to a set of behavior policies, but rather to find historical roots that can adhere to the resulting metrics of our tests, from a very personal perspective. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">Icon versus Tag: A discussion with thousands of years.</span></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">When we design <strong>GUI</strong>, we often find ourselves at a crossroads that hampers us from time immemorial. And when I refer to &quot;time immemorial&quot;, I am not referring to when <strong>Sir Tim Berners Lee</strong> invented &quot;The Web&quot;, I mean hundreds and thousands of years ago.</span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">There are indications that the man began representing forms <strong>40,000</strong> years ago, that is, during the last glaciation. However, the first writing system originated in late <strong>4.000</strong> BC.These origins are based on protoescrituras systems, which still take several hundred of years to establish itself as &quot;makers&quot; of context. The great <strong>Joan Costa</strong> defines us this temporary difference brilliantly &quot;.... there is thus a considerable temporal distance between the birth of the fixed image and written thought&quot;. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Since the 2,000 characters of Sumerian pictographic writing to the <strong>22 signs of the Phoenician alphabet</strong>, have taken steps toward widespread acceptance of the image on the sign. We must not forget that the feeling of pleasure and even pure visual enjoyment, is the feeling that best describes what we perceive when viewing an image. Something completely different to the evocative or decoder instinct of the almost subliminal union of characters that generate a memory, for thought and a whole more figurative. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Already in the<strong> 20TH century</strong> (1970) the first icons were designed, developed by <strong>Xerox PARC</strong>, initially designed in the hope that users could more easily use computers. But it was <strong>David Canfield Smith</strong> (employee of <strong>Xerox</strong>) who defined the term icon when they referred to this type of graphics. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Later operating systems from companies like <strong>Microsoft</strong> or <strong>Apple</strong>, popularized and standardized the use of icons in the <strong>GUI</strong>. </span></span></p>
<p>
<img alt="" src="http://www.liferay.com/documents/15796801/0/image00.png/6cdcf8ae-321e-48b2-b8ec-0b8551fcf5ff?t=1366094091747" style="width: 720.0px; height: 600.0px;" /></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">The associative relationship between the formula text or image, or text + image, is based on the historical differences between the <strong>fundamental graphical languages ​​(the image and the written)</strong>. We have always enjoyed and studied the antagonistic relationship of Art and Literature, illustration or painting and writing. After all, there has always been that special &quot;rivalry&quot; between what is associated with the perceptions associated with the images or the subliminal processing or decoding of a succession of characters which themselves are meaningless and that together are linked to memories, sensations and perceptions or concepts. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">For a long time the relationship between the iconic and the written has been responsability of the graphic artists and is represented in the functional term <strong>language bi-media (image-text)</strong>. Graphic design is not but the linguistic and functional representation of the fusion of creativity, interactions, sensations and associations between fundamental languages ​​(the image and the written). </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Right now we find ourselves in an era dominated by the textual visual components. We study analyses based on behaviors, interactions of the users, their needs and even the ambiguous value of credible and even respectable. The use of iconic graphics, burdening the important role that combines writing, bankruptcy false &ldquo;Status Quo&rdquo; that balances the need and what we want to design. No, do not fall into the temptation to indicate that the user,will learn already, already know, or that when you know to use the tool within a time, understood the meaning of that icon or action. We assume that an icon is just for seeing, can not explain or argue what is its mission, is inherent in its context, and is an orphan of birth for lack of message. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Sure there are already people are looking for in their retrospective memory some cases that protect these lines, reflections on icons that are used to working, <strong>GMAIL</strong>? great, are very very good, but until someone says three times <strong>Nielsen</strong>, <strong>Nielsen</strong>, <strong>Nielsen</strong>..., reflect from a point of view based on theoretical procedure, or rather historical-theoretical procedures, which sounds as more bombastic. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">We forget too much of some of the criteria we defined in our self-taught teaching at the beginning of time: credibility and the shortest possible learning time. The learning curve of a product, is directly proportional to the ease of use of a product, the greater the learning curve, the lesser will be the indicative of positive experience in the. It is true that learning always curve as indicative as we proceed to UX studies on behaviors of relationships with interfaces, but is something we tend to ignore when it comes to some of our projects as a <strong>UX Designer</strong>, but need over and over again when we criticize (sorry, &quot;Analyze&quot;) products in which other professionals have worked. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">Talking about GOOGLE and its UX.</span></p>
<p>
<span style="font-size: 14.0px; color: rgb(133,139,140); line-height: 1.5;">At the end of 2011, Google decided to give another turn of the screw to its interface. They laid for icons instead of textual information. That generated plenty of opinions in a very different way, Representatives of the usability thought about trespassing the thin line between the iconic and textual to the iconic and almost abstract. In my opinion, there are some icons in a first view (it is a long time ago from this change) that shock my preconceived ideas frontally (habits of use, we could call them).</span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">In the following image, we could appreciate the icons&rsquo; bar active, after selecting a mail. We can appreciate how the tooltip generated, is integrated in the design perfectly, and in my point of view, it does not generate too much noise. However, the opinions against this, made <strong>Google</strong> to add an option to change &ldquo;Icons or Text&rdquo;. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">In the following image, we could appreciate the icons&rsquo; bar active, after selecting a mail. We can appreciate how the tooltip generated, is integrated in the design perfectly, and in my point of view, it does not generate too much noise. However, the opinions against this, made <strong>Google</strong> to add an option to change &ldquo;Icons or Text&rdquo;. </span></span></p>
<p>
<img alt="" src="http://www.liferay.com/documents/15796801/0/image02.png/1d0f99c0-f594-4c49-acee-83a164a6ad78?t=1366094323707" style="width: 591.0px; height: 575.0px;" /></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">Was it a good decision? No, in my opinion. Personally and over any type of comment based on conjectures, I think it was more accurate offer the possibility to the user to change between &ldquo;Icons, Icon with Text and Text&rdquo;. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">Classifications</span></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">The icons have been used from the beginning of the computers&rsquo; creation (<strong>Xerox PARC</strong>), to identify different actions abstractly, to minimize the weight, to reduce the need to read, they need less space, and they get something really needed in the actual chaos of associated conventions to the different terminologies of each language: they do more international the interfaces.</span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">For instance: &ldquo;Erase&rdquo; must be the same here in <strong>Madrid</strong>, than in <strong>Nairobi</strong>, in <strong>Los Angeles</strong>, or at least it must be so...</span></span> <span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">In order to standard an icon, first of all, we should permit their classification. According to Blattner 1989, we can list or classify them in Representatives, Abstracts and Semi-Abstracts.</span></span></p>
<p>
&nbsp;</p>
<ul>
<li>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>Representatives</strong>: Simple objects and very familiar and habitual operations to the users. For instance, the rubber icon, is constituted as a standard de facto for erasing, implying an usual action.&nbsp;</span></span>
<li>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>Abstract</strong>: Geometric figures or graphic symbols. For instance: the use of &ldquo;?&rdquo; symbol implies association with questions, help, faqs, etc...&nbsp;</span></span>
<li>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>Semi-abstract</strong>: It is the classification between the pictorial representation and the abstract symbol. For instance: the icon with a sign (+), implies the creation or addition for a new document. </span></span>
</ul>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">A bit of History and research: Leclerc and the experimental studies.</span></span></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>Leclerc</strong> realized around mid 19th century, a leaflet in which he shows with some guidelines how to reduce the costs in the documents&rsquo; print, for that he gave some indications based in the way to read the words. He argued saying the users can read and give sense to a word only reading its upper level, he told it could be reduced shorten the word in its base in percentage over 50%. This generated a reduction in paper and ink, and its saving in the statal money. The knowledge of this &ldquo;leaflet&rdquo; and its considerations allowed me to transform that prove in a good evaluative tool for icons and labels. If an user or target of users could get considerable metrics in this experiment, it gave me a lot of motives to document the policy to implement. </span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">I remember the first time I used this test: It was due to a project for a learning software. The customer wanted to work with icons with an awful readability, for that we wanted to assure the users understood the meaning of all of them. The use of that family of icons carried as restriction that we must not add any textual label.</span></span></p>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">I prepared some tests, based in a real test for 100 users (divided in 4 groups with 25 for every test), and we showed them a list of icons over which we had some doubts, with reductions between 30% and 60% of the original size, and to the last group I gave them the same reductions but adding the labels (only one word) and its appropriate reduction.<img alt="" src="http://www.liferay.com/documents/15796801/0/iconos.gif/3f024010-a1b0-447d-8d0d-d24d9302bc01?t=1366362164183" style="width: 510.0px; height: 518.0px;" /> </span></span></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">* In this image is used glyphicons.com to represent the icons for the tests. The icons (context) here represented are the original and the values Yes and No show the results for the people that identify in a right way the meaning of the icon in all the variants. To give the study a real dimension, we decided to divide 100 users in 4 groups with 25 each one, and require their opinions about them.</span></span></p>
<p>
&nbsp;</p>
<p>
<strong><span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">What do we discover?</span></span>&nbsp;</strong></p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;">If we pay attention to the last line (previous image), we can appreciate how despite the small size of the icon, and the section of the label, they brought the higher and more positive metrics in the test. </span></span></p>
<ul>
<li>
<span style="color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>The user guess more than he reads.</strong>&nbsp;</span></span><br />
<span style="font-size: 14.0px; color: rgb(133,139,140); line-height: 1.5;">He glimpses the meaning of a word only reading the upper side of it. It is a fast read based on a fixation and its correspondent characters&rsquo; decodification. The observation of the patterns of visualization of the users (we didn&rsquo;t have the infrastructure for tests of Eyetracking), showed us that in certain users the fixations happened between the icon (part of i) and the text. We also conclude as we prove in other studies, theories and books about this theme (Joan Costa), that in the case of not decoding a character in a word, the user obviates it and uses the previous and posterior chain to discover it (guess it).</span>
<li>
<strong style="font-size: 14.0px; color: rgb(133,139,140); line-height: 1.5;">Best an Icon with label&nbsp;</strong><br />
<span style="font-size: 14.0px; color: rgb(133,139,140); line-height: 1.5;">The add of label and icon gets values close to 100% in positive results.</span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>The size is important, very important for the users.&nbsp;</strong></span></span><br />
<span style="font-size: 14.0px; color: rgb(133,139,140); line-height: 1.5;">The same icon a bit smaller and unlabeled proportionality generates a negative acknowledgment to the small size.</span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140);"><span style="font-size: 14.0px;"><strong>Incorrect Classification&nbsp;</strong></span></span><br />
<span style="line-height: 1.5; color: rgb(133,139,140);"><span style="font-size: 14.0px;">We failed in how we thought we must classify some of the test&rsquo;s icons. Something universal the time has given me, is that the preclassifcations we come in our owns (learning), generally or, best said, strangely correspond with the daily reality.<br />
<a href="http://portfolio.educ.kent.edu/daltone/cmc2/articles/jp_use%20of%20icon%20labels_wiedenbeck.pdf">Reference</a>&nbsp;</span></span>
</ul>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">Gran finale.....</span></span><span style="line-height: 1.5;">&nbsp;</span></p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Usually, the icons are recognized faster, despite previous experiment by Leclerc. The use of the icons generates the user needs to pay less attention to that task and can concentrate cognitively in the task that really hopes to get in that interface over (main task). </span></p>
<p>
&nbsp;</p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">The reason is that, as we argued previously, the cognitive action of decoding the characters (reading the writing) is firstly boring, and although it could provoke us a pleasure feeling, this feeling increases when we talk about images, pictos, &hellip; </span></p>
<p>
&nbsp;</p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Of course, if the icon or image does not need a resolution of its meaning implying important parts of cognitive decoding.</span></p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">The icons can generate an effect (with the use) of creation of standard in fact in the user, that helps him to minimize the learning curve and generates a list of &ldquo;notes&rdquo; in his memory in a long term. </span></p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Other interpretations and byzantine discussions exist, that could bring &ldquo;more wood&rdquo; to these points...</span></p>
<ul>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">The icons need less space to represent an action. In several times, the writing action can contain different words. </span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">In early stages of an interface using icons without labels work really bad.</span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">The users not accustomed to use a product, use to be predisposed to need icon + label.</span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Although in some products is used a component of &ldquo;scalability&rdquo; or &ldquo;Progressive reduction&rdquo;, I tend to think that we can only carry out this action when we use icons established as standard.</span>
<li>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">Increasingly, the users are more familiarized with the use of graphics interfaces, and overall, deleting any textual indication. This does not mean to establish like a commandment, but it is true that time invested in decoding icons in a certain APP, will be proportionally inverse to the later cognitive charge need to decode a similar icon when he changes to a similar application.</span>
</ul>
<p>
&nbsp;</p>
<p>
<span style="color: rgb(133,139,140);"><span style="font-size: 18.0px; color: rgb(88,88,88); line-height: 20.0px;">References</span></span></p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">* <strong>BEHAVIOUR &amp; INFORMATION TECHNOLOGY</strong>, 1999, VOL. 18, NO. 2, 68 &plusmn; 82 The use of icons and labels SUSAN WIEDENBECK Faculty of Computer Science, Dalhousie University, Halifax, Nova Scotia, Canada B3J 2X4</span></p>
<p>
<span style="line-height: 1.5; color: rgb(133,139,140); line-height: 1.5; font-size: 14.0px;">* <strong>Dise&ntilde;ar para los ojos </strong> I.S.B.N. 978-84-611-8137-7 <strong>JOAN COSTA</strong></span></p> link

Posted by SourceForge Robot 7 days ago

Using Gist in Liferay blog

<p>
All credit goes to <a href="http://www.liferay.com/c/my_sites/view?groupId=5912873&amp;privateLayout=0"><span class="user-name">James Falkner</span></a><img alt="smiley" height="20" src="http://cdn.www.liferay.com/html/js/editor/ckeditor/plugins/smiley/images/regular_smile.gif" title="smiley" width="20" /></p>
<p>
Steps given by James:</p>
<p>
</p>
<div class="portlet-msg-info">
Note 1: The Gist is not viewable in &quot;Preview&quot;.</div>
<div class="portlet-msg-info">
Note 2: The CSS on Liferay site ates all the indents in Gist because of the following:</div>
<p>
</p>
<p>
<strong>To fix the indents, simply insert the following CSS in your blog entry in &quot;Source&quot; view:</strong></p>
<p>
</p> link

Posted by SourceForge Robot 2013-04-24

Using Gist in Liferay Community Blogs

<p>
All credit goes to <a href="http://www.liferay.com/c/my_sites/view?groupId=5912873&amp;privateLayout=0"><span class="user-name">James Falkner</span></a><img alt="smiley" height="20" src="http://cdn.www.liferay.com/html/js/editor/ckeditor/plugins/smiley/images/regular_smile.gif" title="smiley" width="20" /></p>
<p>
Steps given by James:</p>
<p>
</p>
<div class="portlet-msg-info">
Note 1: The Gist is not viewable in &quot;Preview&quot;.</div>
<div class="portlet-msg-info">
Note 2: The CSS on Liferay site ate all the indents in Gist because of the following in Liferay CSS:</div>
<p>
</p>
<p>
<strong>To fix the indents, simply insert the following CSS in your blog entry in &quot;Source&quot; view:</strong></p>
<p>
</p> link

Posted by SourceForge Robot 2013-04-24

Make Video Page Look Like Youtube Using Structure and template

<p>
Hello Guys&nbsp;</p>
<p>
For That We have To make two structure abnd template&nbsp;</p>
<p>
One For Add Video And Another is for Display Video</p>
<p>
1) addVideo Strucutre and template</p>
<p>
open Youtube and copy video url which you want to add and paste in textbox in structure then publish</p>
<p>
Structure for add video</p>
<p>
<img alt="" src="http://www.liferay.com/documents/11857173/0/strcuture.PNG/7febfe51-a7ec-475d-a55c-553baf0d1a60?t=1366718297786" style="width: 727.0px; height: 201.0px;" /></p>
<p>
Template Code For add Video</p>
<p>
&nbsp;</p>
<div>
#set($foo=$Video-URL.getData())</div>
<div>
#set($n=$foo.split(&quot;v=&quot;).get(1))</div>
<div>
&lt;div id=&quot;web-video&quot;&gt;</div>
<div>
&lt;iframe width=&quot;500&quot; height=&quot;300&quot; src=&quot;http://www.youtube.com/embed/$n?feature=player_detailpage&quot; frameborder=&quot;0&quot; allowfullscreen&gt;&lt;/iframe&gt;</div>
<div>
&lt;/div&gt;</div>
<div>
<span style="line-height: 1.5;">&lt;div id=&quot;video-discription&quot;&gt;</span></div>
<div>
$Discription.getData()</div>
<div>
&lt;/div&gt;</div>
<div>
&nbsp;</div>
<div>
2) &nbsp;Display all Video using company id</div>
<div>
&nbsp;</div>
<div>
Only Template is require to display video ,so used blank structure .</div>
<div>
&nbsp;</div>
<div>
Template code:</div>
<div>
&nbsp;</div>
<div>
<div>
#set ($journalArticleLocalService = $serviceLocator.findService('com.liferay.portlet.journal.service.JournalArticleLocalService'))</div>
<div>
#set ($UserLocalService = $serviceLocator.findService('com.liferay.portal.service.UserLocalService'))</div>
<div>
#set ($companyId = $getterUtil.getLong($request.theme-display.company-id))</div>
<div>
&nbsp;</div>
<div>
#set ($curArticle = $journalArticleLocalService.getCompanyArticles($companyId,0,-1,-1))</div>
<div>
#set($arc=$journalArticleLocalService.getCompanyArticlesCount($companyId,0))</div>
<div>
#set ($ExpandoValueService= $serviceLocator.findService(&quot;com.liferay.portlet.expando.service.ExpandoValueLocalService&quot;))</div>
<div>
<span style="line-height: 1.5;">#set ($targetPortletID = &quot;56&quot;)</span></div>
<div>
<span style="line-height: 1.5;">&nbsp;&lt;div &nbsp;class=&quot;video-list&quot;&gt;</span></div>
<div>
&lt;ul&gt;</div>
<div>
<span style="line-height: 1.5;">#set ($counter = 0)</span></div>
<div>
#set($by=10)</div>
<div>
#foreach ($article in $curArticle)</div>
<div>
#set($arc = $arc - 1)</div>
<div>
#set($article=$curArticle.get($arc))</div>
<div>
#if($journalArticleLocalService.isLatestVersion($article.getGroupId(),$article.articleId,$article.getVersion()))</div>
<div>
#set ($articleUrl = &quot;/widget/videos/-/journal_content/&quot; + $targetPortletID + &quot;/&quot; + $article.groupId + &nbsp;&quot;/&quot; + $article.articleId)</div>
<div>
#set ($document = $saxReaderUtil.read($article.getContent()))</div>
<div>
#set ($title = $document.valueOf(&quot;//dynamic-element[@name='Video-URL']/dynamic-content/text()&quot;))</div>
<div>
#if($title!=&quot;&quot;)</div>
<div>
&nbsp;</div>
<div>
#set($n=$title.split(&quot;v=&quot;).get(1))</div>
<div>
#set($userx = $UserLocalService.getUser($article.getUserId())) &nbsp;</div>
<div>
#set($Degree=$ExpandoValueService.getValue($companyId,&quot;com.liferay.portal.model.User&quot;,&quot;CUSTOM_FIELDS&quot;,&quot;Degree&quot;,$article.getUserId()))</div>
<div>
#set($Specialty=$ExpandoValueService.getValue($companyId,&quot;com.liferay.portal.model.User&quot;,&quot;CUSTOM_FIELDS&quot;,&quot;Specialty&quot;,$article.getUserId()))</div>
<div>
#set($Prefix=$ExpandoValueService.getValue($companyId,&quot;com.liferay.portal.model.User&quot;,&quot;CUSTOM_FIELDS&quot;,&quot;Prefix&quot;,$article.getUserId()))</div>
<div>
&nbsp;&lt;li class=&quot;videoli&quot; style=&quot;list-style: none;width:330px;border-bottom: 1px solid #DDD;min-height:150px;&quot;&gt; &nbsp;&nbsp;</div>
<div>
&nbsp;&lt;a href=&quot;${articleUrl}&quot; target=&quot;video&quot;&gt;&lt;img src=&quot;http://img.youtube.com/vi/$n/default.jpg&quot; style=&quot;float: left;</div>
<div>
padding-right: 20px;</div>
<div>
width:140px;&quot;&gt;&lt;/a&gt;</div>
<div>
&nbsp; &nbsp; &nbsp;&lt;h4&gt; $article.getUrlTitle() &lt;/h4&gt;</div>
<div>
&nbsp; &nbsp; &nbsp;&lt;a href = &quot;/web/$userx.getScreenName()&quot;&gt;</div>
<div>
&nbsp; &nbsp; &nbsp;$userx.getFirstName() $userx.getLastName() &nbsp;&lt;/a&gt; &lt;/br&gt;</div>
<div>
&nbsp; &nbsp; &nbsp;$Degree.getData() &lt;/br&gt;</div>
<div>
&nbsp; &nbsp; &nbsp;$Specialty.getData()</div>
<div>
&nbsp; &nbsp; &nbsp;</div>
<div>
&nbsp; &lt;/li&gt;&nbsp;</div>
<div>
#set ($counter = $counter + 1)</div>
<div>
#if($counter==$by)</div>
<div>
&nbsp; #if($by&gt;50)</div>
<div>
&nbsp; &nbsp;#break</div>
<div>
&nbsp; #end</div>
<div>
<span style="line-height: 1.5;">&nbsp; @page_break@</span></div>
<div>
<span style="line-height: 1.5;">#set($by=$counter+2)</span></div>
<div>
#end</div>
<div>
<span style="line-height: 1.5;">#end</span></div>
<div>
#end</div>
<div>
#end</div>
<div>
<span style="line-height: 1.5;">&lt;/ul&gt;</span></div>
<div>
&nbsp;</div>
<div>
<span style="font-size: 14.0px;"><strong>I implemented this code at&nbsp;<a href="http://liferay.medicalassociation.in/videos" style="line-height: 1.5;">http://liferay.medicalassociation.in/videos</a>&nbsp; Visit For Better Understanding .</strong></span></div>
<div>
&nbsp;</div>
<div>
&nbsp;</div>
</div>
<div>
&nbsp;</div>
<div>
&nbsp;</div>
<div>
&nbsp;</div> link

Posted by SourceForge Robot 2013-04-23

Vaadin Liferay Development...

<p>
<em><strong>NOTE: The following blog post is about Vaadin 6 and Liferay. &nbsp;I'll be doing future posts on Vaadin 7, but for now I recommend sticking with Vaadin 6 in Liferay.</strong></em></p>
<p>
&nbsp;</p>
<h2>
Introduction</h2>
<p>
About two years ago, I noticed the Liferay IDE allowed for the creation of a new type of portlet based on Vaadin. &nbsp;Curious, I did some research and found I could create Liferay portlets based upon the <a href="http://www.vaadin.com">Vaadin Framework</a>.</p>
<p>
According to the Vaadin FAQ, Vaadin <span style="font-size: 12.0px;">(<span style="color: rgb(70,68,64); font-family: Arial , Helvetica , Tahoma , Verdana , sans-serif; background-color: rgb(255,255,255);">&quot;Vaadin&quot; sounds like vuh-din, emphasis on first syllable, the long 'a':s sound like the 'a' in &quot;ago&quot;</span>)</span>&nbsp;<span style="font-size: 12.0px;"><span>is a Java web application framework. It is designed for creating rich and interactive applications that run in the browser, without any plugins. A server-driven architecture together with reusable component model is used to simplify programming of applications and for better web application security. No HTML, XML or JavaScript necessary and all Java libraries and tools are at your disposal.</span></span></p>
<p>
Translation is that it's a framework that you do most of your development in Java and, since it is based on the GWT, runs mostly in the client browser and uses lots of AJAX to communicate with the backend.</p>
<p>
It's not a flashy framework in that it's not really designed to support lots of browser eye-candy. &nbsp;It is, however, very well suited for enterprise development where you want to support forms, tables, and other basic widgets to create real and responsive enterprise applications.</p>
<h2>
<span style="font-size: 12.0px; font-weight: normal; line-height: 1.5;">Unfortunately, the wizard in the Liferay IDE was the only info I found on creating Vaadin portlets. &nbsp;I couldn't find a real developer guide, didn't understand some of the requirements from the Vaadin website, and I basically struggled through the development of an initial Vaadin portlet.</span></h2>
<p>
So this blog post is going to help explain Vaadin in Liferay and what you'll need to use to become an effective Vaadin portlet developer.</p>
<h2>
<span style="line-height: 1.5;">Terminology</span></h2>
<h4>
<span style="line-height: 1.5;">Widgets</span></h4>
<p>
<span style="line-height: 1.5;">These are the UI elements that are rendered in the browser. &nbsp;Vaadin includes support for a basic set of UI widgets and include buttons, checkboxes, option groups, tables, trees, labels, text fields, etc.</span></p>
<p>
<span style="line-height: 1.5;">Widgets have two aspects: the server side code and the client side code. &nbsp;The server side widget is referred to as a Component. &nbsp;Components are instantiated, configured, and added to define what the client side will represent. &nbsp;The client side code is in Javascript and is generated using GWT to compile the Java code for the components into the javascript version for the client side.</span></p>
<h4>
<span style="line-height: 1.5;">Widgetset</span></h4>
<p>
A widgetset is the set of compiled javascript for all of the widgets that are used in the Vaadin application.</p>
<p>
Widgetsets have names. &nbsp;The widgetset name is a Java class-like name complete with a package path, i.e. com.vaadin.portal.gwt.PortalDefaultWidgetSet. &nbsp;There's actually a corresponding file in the classpath at the location defined by the widgetset name with the extension &quot;.gwt.xml&quot;, and this file defines the widgetset and all included modules. &nbsp;The com/vaadin/portal/gwt/PortalDefaultWidgetSet.gwt.xml file is read by the GWT compiler to compile the widgetset used on the client side.</p>
<p>
<span style="line-height: 1.5;">A Vaadin application requires a correctly compiled widgetset for the Vaadin version used in the application to render the client side correctly.</span></p>
<h4>
<span style="line-height: 1.5;">Theme</span></h4>
<p>
<span style="line-height: 1.5;">Vaadin widgets are rendered in the browser using a theme. &nbsp;Vaadin ships with a number of themes out of the box, including a theme named &quot;liferay&quot; which is based on the standard Liferay classic theme in blue.</span></p>
<p>
<span style="line-height: 1.5;">Custom themes are created by writing CSS. &nbsp;Sounds pretty simple, but can be quite complex. &nbsp;Every widget has it's own classes automatically added to them, and the components can have classes added to them in the Java code (components have an addStyleName() method to add a CSS class to the component, yes I know it's misnamed, but I think they were trying to avoid confusion with Java classes).</span></p>
<h4>
<span style="line-height: 1.5;">Add-Ons</span></h4>
<p>
Vaadin Add-Ons are supplemental widgets that can be added to a Vaadin application to add new widgets that can be used in the application. &nbsp;For example, there are Add-Ons to provide integration with charting packages, new layouts, extended core widgets that provide additional functionality, etc.</p>
<p>
When an Add-On is added to a Vaadin application, the widgetset must be recompiled to create the complete widgetset for the application. &nbsp;If the widgetset is not recompiled, the server side will have the code for the component (so you the developer can create, configure, and add the component), but the client side will not be able to render the widget.</p>
<p>
Add-Ons can be found in the <a href="http://vaadin.com/directory">Vaadin Add-On Directory</a>.</p>
<h2>
Vaadin in Liferay</h2>
<p>
The Vaadin website covers Vaadin as servlets in great detail, and touches on Vaadin portlets somewhat, but there are some things about using Vaadin in Liferay that are important to keep in mind...</p>
<h4>
The Widgetset</h4>
<p>
Vaadin portlets use a single, shared widgetset. &nbsp;This widgetset is normally com.vaadin.portal.gwt.PortalDefaultWidgetSet, but it can be changed by setting the &quot;vaadin.widgetset&quot; property in portal-ext.properties.</p>
<p>
The single widgetset is used by all Vaadin portlets deployed in the portal, so the widgetset must contain all of the Add-Ons used by any single Vaadin portlet. &nbsp;Have a single Vaadin portlet that uses, say, the Refresher Add-On? &nbsp;It must be in the widgetset for all portlets.</p>
<h4>
The Theme</h4>
<p>
Vaadin portlets will, by default, use a single, shared theme. &nbsp;This is actually a good thing because it will make your Vaadin portlets look consistent across the portal.</p>
<p>
The default portal theme is &quot;liferay&quot;, but it can be changed by setting the &quot;vaadin.theme&quot; property in portal-ext.properties.</p>
<h4>
The Add-Ons</h4>
<p>
Add-Ons must be deployed into Liferay's WEB-INF/lib directory. &nbsp;This is the only directory that will be used to compile the widgetset (details coming shortly), so this is where they must go. Vaadin portlets that use the Add-On(s) will use the liferay-plugin-package.properties file to define a dependency on the portal's jar.</p>
<h4>
The Resources</h4>
<p>
The compiled widgetset and the theme files represent all of the static files (resources) that Vaadin portlets will be using. &nbsp;These files are always part of the Liferay ROOT web application, and will normally be available as /html/VAADIN/... &nbsp;Vaadin will automatically be looking for the VAADIN directory to get the static resources, and this directory is found in the &quot;/html&quot; path, but this can be changed by setting the &quot;vaadin.resources.path&quot; property in portal-ext.properties. &nbsp;<strong>NOTE:</strong> The resources path must be part of the ROOT application and must be in an accessible path for the client browser, as the browser will be submitting HTTP requests to get the static resources.</p>
<h2>
Vaadin Control Panel</h2>
<p>
All Liferay instances that will be using Vaadin in their portlets must add the Vaadin Control Panel. &nbsp;It's not included in Liferay by default, but your ability to leverage Vaadin in the portal will be severely limited without it.</p>
<p>
There are two key functions that the Vaadin Control Panel provides:</p>
<ul>
<li>
The ability to change Vaadin versions on the fly.
<li>
The ability to compile the portal's single, shared widgetset.
</ul>
<p>
The Vaadin Control Panel for Liferay is a portlet that provides a new control panel for Vaadin. &nbsp;It can be downloaded from the Add-On directory <a href="https://vaadin.com/directory#addon/vaadin-control-panel-for-liferay:vaadin">here</a>.</p>
<p>
Download the portlet and drop it into the deploy directory, and Liferay should deploy it. &nbsp;Note that the control panel portlet does not adhere to Liferay's packaging requirements (it's missing the crucial liferay-plugin-package.properties file), so it may complain about it during deployment, but should still be functional. &nbsp;You may or may not need to restart your application container post-deployment (I have seen it deploy successfully and be available, but also have seen cases where a restart is necessary).</p>
<p>
When you go to the control panel, you'll have a new entry at the bottom of the Portal section named &quot;Vaadin&quot;.</p>
<p>
The interface is rather simplistic:</p>
<p>
<img alt="Vaadin 6 Control Panel" src="http://www.liferay.com/documents/26528/0/vaadin-control-panel2.png/b16a7399-dd46-4f04-bdfe-4ac33c8fbc07?t=1366484442348" style="width: 726.0px; height: 597.0px;" /></p>
<p>
The first thing to notice is the &quot;Change Version&quot; link at the top of the file. &nbsp;Liferay by default comes with a fairly old version of Vaadin. &nbsp;You're going to want to change your version of Vaadin in the portal to the latest version as soon as possible.</p>
<p>
The next thing to notice is the &quot;Select Add-ons&quot; checkboxes. &nbsp;When you download an Add-On, you'll have a jar file that contains the Add-On code. &nbsp;The jar file must be put into Liferay's WEB-INF/lib directory. &nbsp;You can see the path where the jar file must go in the filesystem.</p>
<p>
The checkboxes here allow you to select and deselect Add-Ons that will be included in the widgetset compile.</p>
<p>
The last thing to notice is the &quot;Compile Widget Set&quot; button. &nbsp;When you change the Vaadin version or when you enable/disable Vaadin Add-Ons, you <strong>MUST</strong> recompile the widgetset using this button. &nbsp;Failure to do so will result in errors on the client side.</p>
<p>
When you hit the &quot;Compile Widget Set&quot; button, a bunch of stuff will scroll in the &quot;Output Console&quot; section of the window. &nbsp;This is the output of the GWT widgetset compiler. &nbsp;In most cases you should get a successful result at the end of the compile. &nbsp;If you get errors in the window, I would search the Vaadin forums for a match or try posting to the Vaadin or Liferay forums.</p>
<h2>
Issues Upgrading Vaadin in Liferay</h2>
<p>
The Vaadin Control Panel makes changing Vaadin versions really easy, but it does not handle the upgrade completely...</p>
<p>
The Vaadin Control Panel only changes the version of the vaadin.jar in Liferay, but does not deal with the Vaadin themes. &nbsp;Vaadin themes are released for each Vaadin release, and the themes contain bug fixes also.</p>
<p>
Vaadin provides a special download for Liferay users, the Vaadin 6 Liferay Update Package. &nbsp;This download will include the precompiled widgetsets (that you won't use since you're compiling your widgetset using the Vaadin Control Panel) and the updated themes. &nbsp;You'll want to extract the themes directory from the download and copy it up to the Vaadin resources directory (default would be ROOT/html/VAADIN directory). &nbsp;I actually deploy this locally using a JSP hook plugin (create a JSP hook plugin, put the new themes directory in the hook plugin, build and deploy to let Liferay handle the updating of the ROOT webapp).</p>
<h2>
Conclusion</h2>
<p>
Well, that about covers administrating Vaadin in Liferay. &nbsp;My next blog post will cover developing Vaadin portlets...</p>
<p>
&nbsp;</p> link

Posted by SourceForge Robot 2013-04-20

Service Builder Presentation Info

<p>
So I received bunch of emails on Service Builder after my webinar last month... &nbsp;Thought I'd write up a blog entry that will end up in the search engines and hopefully lead folks here to get to the details...</p>
<p>
Anyway, the recorded presentation is available on the <a href="http://www.liferay.com/events/web-events">Liferay LIVE Web Events page</a>. &nbsp;You can listen to the whole presentation and watch as my demo fails during the presentation... &nbsp;<img alt="wink" height="20" src="http://cdn.www.liferay.com/html/js/editor/ckeditor/plugins/smiley/images/wink_smile.gif" title="wink" width="20" /></p>
<p>
All of the projects used for demo are actually available in <a href="http://www.liferay.com/community/forums/-/message_boards/message/22561833">this forum post</a> in the second message of the thread.</p>
<p>
Now for the keywords that will get you here...</p>
<p>
The presentation covers how to do some basic Service Builder functions, but also features:</p>
<ul>
<li>
one-to-many relationship handling.
<li>
many-to-many relationship handling.
<li>
accessing an external (non-Liferay) database.
<li>
using 'fake' (non-database-backed entities) to build shared code modules using Service Builder.
<li>
Vaadin and Service Builder integration.
</ul>
<p>
&nbsp;</p> link

Posted by SourceForge Robot 2013-04-20