When working on software design, UI Mockups are quite important and Patrice, colleague of mine at eXo has pointed me to a very cool tool to use when you have to quickly do a mockup, and work with the dev team in an iterative fashion: This tool is "Balsamiq Mockup". Here an example of mockup realized with Balsamiq:
Also if you read more about the tool, you can see that it has native integration with others tools such as JIRA, so cool to be able to integrate a mockup easily when defining a new item...
Take a look to this screencast explaining the basic features and use of the product:
Another interesting tool is the online white board "DabbleBoard" that allows user to quickly create and share graphs, ideas, ... A very cool feature of this tool is the automatic recognition of shapes. The best way to understand, is simply to see it in action:
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="viddler" height="342" width="437"> <param name="movie" value="http://www.viddler.com//simple_on_site/a95e1956" /> <param name="allowScriptAccess" value="always"><param name="allowFullScreen" value="true"/> <embed src="http://www.viddler.com//simple_on_site/a95e1956" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" name="viddler" height="342" width="437"> </embed></object>
I have been within eXo Platform for almost 2 months now.. As expected, it is crazy, and exciting. This is why I did not have lot of time to blog... Ideas are here, just time is not... So here a very quick post on my current work...
We have been releasing new releases of products (Portal/Portlet Container, Collaboration Suite), deliver a training on eXo Portal, writing docs, articles, and many other exciting things... One of them is this nice example of integration of GWT Google Gadget in eXo WebOS.
During this period, when I was not working with customers, prospects and partners, I have learned a lot about one of the most exciting and powerful features: eXo ECM coupled with eXo Portal/WebOS. eXo exposed using a powerful UI, and set of API, its JavaContent Repository on which you can build powerful sites/portal using eXo templating engine... and one other cool thing, at least for me, is the fact that most of the programming that you do, including rich Ajax based application is done using Groovy. (using GroovyServer Pages)... More to come about eXo features on this blog, but the best place to be is to follow our company/project blog at http://blog.exoplatform.org, where all the team is presenting new features, and events of the eXo community...
Also, I have created, with Sebastien Roul a JUG in Nantes, here some information for French people:
I am very excited to say that this week is my first week as an employee of eXo Platorm. Excited for many reasons.... I'll pass on the excitement of a new job, we are all excited about that... So what are the others reasons:
- working for open source
- be part of a visionary team/product.
Some of you know that I have been working for Oracle from 1999 to 2007, and lately for Sogeti (Cap Gemini Group) that is one of the biggest IBM's partner... So moving to eXo Platform an open source company is definitively a big shift for me. Anyway, I was looking for more “agile” working environment....
I am pleased to work for a product where users can follow on a daily basis what is the exact status of the different features, not from marketing slides but directly from the source trunk... But also where any user can influence the product either by providing direct feedback to the developers using mailing lists, tracking tools and wikis; even more if they want to participate to the development itself.
So being open source, will avoid some kind of lock-in, but this is not the only point: standards is another important point. eXo Platform, since its first release in 2003, has been great about defining, supporting and implementing standards. So eXo Portal is a great implementation of a JSR-168 portlet container, and it is today also one of the first portal and portlet container supporting the new JSR-286 Java Portlet API. In addition to the Java Portlet API support, it is also possible to consume remote portlet using WSRP 1&2. As you can see eXo Portal is a great solution to implement and integrate an enterprise portal based on standards. In addition to portal standard, eXo is also providing a powerful ECM that is based on a Java Content Repostory (JCR/JSR-170) implementation.
Based on the fact that eXo is open source and support industry standard it is a great tool to use; and it has been chosen by some other projects for example:
- NovaForge: an innovative Forge platform that aggregates and glue several Open Source tools used for Software Developments such as SVN repositories, Bug trackers, Continuous build… It used eXo WebOS and ECM to provide a single access points to all the resources as you can see in the following screenshot.
!(http://farm4.static.flickr.com/3087/2586150929_85d1f80644_m.jpg Novaforge and eXo WeboS )
- Bonita: is an open source workflow and BPM that is using eXo WebOS to expose its console, as you can see in the following screenshot
You also have other softwares that are using various part of the product from te JCR to the Portlet Container... it depends a lot of your needs...
eXo Platform is a lot more than en enterprise portal. The core architecture of eXo is based on an internal SOA built at the top of an IoC container (Pico Container). This architecture has been leveraged in many point to expose new services and assemble all the components of the eXo Platform suite.
Let's take a quick look to the components of eXo Platform:
- eXo Portal 2.0: create and publish your portal using a simple and powerful Ajax based user interface
- eXo ECM 2.0: manage all your digital assets that are stored in the JCR, and expose them using many protocols (WebDac, FTP, CIFS, ...)* eXo CS 1.0: collaborate inside and outside your enterprise using shared calendars, WebMail, Forums and Contact Management
- eXo WebOS 1.0: virtualize your desktop in this revolutionary user interface, where you can expose portlets and widgets and run any Web applications.
In addition to these component that are available today in the eXo Ultimate distribution or as stand alone solution, you can see in the source trunk:
- LiveRoom: a Web based real time collaborative tools allowing shared whiteboard, visioconference/VoIP using once again your browser, (in fact we have been implementing it using Flash/Flex)
- WCM: Web CMS System that is extending the ECM to facilitate Web site publishing.
- and many other features...
One last example of the vision of the eXo Platform is the fact that all services could be exposed either as REST Services using the JSR-311(JAX-RS) or as SOAP Services using the JSR-181 (Annotations based services).
One of the feature that I am currently watching closely is the implementation and support of Open Social standard, that allows easy integration of "social-applications" with other very hot subjects for the “Enterprise 2.0” such as social networks, mashups and so on...
Stay tuned, and take the time to download and install eXo Platform...
As a closure, I just invite you to take a look to eXo and contact me if you have any question about the product or if you have.
We are all badly impacted with the price of oil. Yeah it really expensive, now people is the US have a gas that is as expensive as France's prices, shocking! ;).
Anyway, I do not want to talk about cars and gas, but really on the good effect of the expensive oil. I do believe that expensive oil has good impacts, not for my bank account but for the "planet", and may be indirectly for software industry.
First of all, we are all forced to try to save gaz/enegy to save money. So people are thinking more about alternative to "individual car driving": carpooling, public transportations are more often used these days. I addition, people are using public bikes that you can find more and more in cities now. Nantes, where I live has launched its new program "Bicloo". So not only people are changing but I am sure industrials will also adapt to this offering greener alternative to oil for transportation. Personally, I would like to buy a cheap electric car to be able to go in the city, at least to reach the various Park&Ride points. I have to say that I really like the Google RecharcheIT initiative, that is used to charge plug-in hybrid cars... This is enough for the "transportation" and cars....
I believe also that expensive oil will have an impact on the way we do work: we must try to avoid traveling all the time. Some work could be done just using the Internet and good collaborative tools. When most of a work is about: reading mail, phone talks, and meetings all these activities could be done using "IT" isn't?
I used to work from home a lot when I was working for Oracle HQ from France: the working kit is quite simple and not that expensive: laptop, fast Internet connection, VoIP phone, VPN and a Collaborative Suite (webmail, shared calendar, web conference tools, social networks, ...). Using this simple set of tools I was as productive as any employee but without traveling that much. I do not say that we should all work from home or smal local office, but we should try to do it. And limit our endless travels, that burns so much energy for CO2.... Yes all the IT is also consuming energy, but I do believe that it is probably easy to make IT industry "greener" than car industry... (I might be wrong...), but still at the office we will use computers/IT anyway..
So many of the software vendor are offering tools to make us more productive using the "network as the computer" -we all remember this-. One example of tools that in fact is "greener" is eXo Platform. eXo provides all the tools for collaborative work: personalized portal, webmail, chat, shared calendar, ... and soon LiveRoom that is the Web conference/VoIP solution integrated to your navigator (Flex based application). In addition to this, users can also virtualized their desktop using eXo WebOS, and access his work environment from everywhere... I know that other solutions are available on the market, from various vendors such as Oracle, IBM, Microsoft, I have chosen eXo first of all it is an open source project where any user can participate at least by asking from requirements proposing ideas, but also and mainly because its offering is based on industry standards that will help integration to any existing IT systems. (... and also because I am currently working closely with the eXo team...)
In conlusion, we, IT folks can I have some impact on the environment by helping people to be more effective when doing remote work, avoiding useless commute... Clearly, the technologies are avaiable today to help us, to work efficiently from home or "virtual offices" the main constraints are coming from enterprise/management culture.
Like many of you I am following TechCrunch, and one of the latest post was quite "amazing":
- see the Twitter! post from Michael Arrigton.More than the post itself, the comments that this single word generated is quite funny: so far we have 291 comments... As you can guess I have not read (all of) them... But something is interesting, you can see that many people have used Seesmic to drop a video comment.
I have to say that I am quite impressed by the large number of comments that have been made using Seesmic. Bravo to Loic Lemeur's vision for this tools... This is simply the new and easy way to really do the "read/write" Web, I should say "record/watch" Web.
One thing is still bothering me, how to I find interesting content that is saved using Seesmic?
Yes, I can use social features to subscribe to people that are sharing similar center of interest. But I cannot find any folksonomy on Seesmic, am I missing it, or it is just not available yet?
Or let's dream and imagine than Web search/index engine will be able to index these video content to help me to find interesting content -may be this exists but I have not found it yet-. Loic, is it your next big feature to transform Seesmic in the next killer app?
So far I do not have the feeling that I missed anything -watch the comments and you will understand-, but it looks like people love to use the video to discuss/share with others, and I can understand why... We have moved from technical tools: Complex Web Authoring Platform, to easy Blog publishing, to pure video recording tool, so very easy indeed. I can imagine my mother posting a comment to a blog or video now... thanks to Seesmic!
Lately, I have been presenting Web 2.0 tools to my coworkers, and explaining how it could be used to improve the way we do "things" (especially business). Here a list of some of the tools I am talking about blogs, wikis, second life, social networking/bookmarking/tagging/rating,, facebook, friendfeed, youtube, seesmic, feeddo, flock and many others depending of the questions and the mood of the moment...
One of the tool that I love to present is Twitter... and now I have an good example of why we all need to be on Twitter ;)
Thanks to Justin from Twitter...
Andres and Guillaume have posted on the Groovy Users list the pointers to many (if not all) the Groovy and Grails sessions of JavaOne 2008... You want to learn more, this is a great opportunity to do it so:
Thanks to all of the authors... I would love to be there watching these session live... This post is the opportunity also to point you to this video from InfoQ of Jason Rudolph doing a very nice introduction to Grails during last year QCon conference...
Yesterday, I have been surprised when I saw the following announcement:
- Sun Microsystems Joins Liferay Open Source Community / Sun's new Web platform to leverage core elements of Liferay Portal 5.0.One interesting thing is Brian Chan's blog entry about Liferay and Sun explaining how they have been working together so far... to fill the limitations of each other solutions.
So today what does that means? Liferay is leveraging the development power of Sun to implements standards (for example JSR-286). I have always been frustrated by the lack of standard support and 'real' innovation in Liferay (compare to its competitors such as eXo Platform, and Jboss for example). In the other hand Sun will leverage the "tiny Liferay product" killing its own solution. Sun's portal is really to big without that benefits for developers/users (compare to its competitors, BEA,IBM, Oracle for example).
So what's the next step for this partnership? If Sun wants to push a real portal offering, it can only finish by a full acquisition of Liferay... even if it is stated that it is not the plan.
Let's wait and see how this "WebSynergy" goes... However one thing is cool, it will put more visibility on Enteprise Portals. With all the Web 2.0 stuff: social computing, mashups, collaborative works/intelligence, the need for "Enterprise Portal" (I should add a 2.0) is back stronger than before...
I have attended or presented at JavaOne for the last 6 years when I was living in the SF Bay Area... But this year I won't be in San Francisco for JavaOne. As you can guess, I am sad about that... However, I still look at the schedule and events, and here what I would like to do:
- Groovy/Grails meetup organized by G2One and NFJS
- Sun and Oracle General Sessions: Tuesday, Wednesday and Friday at 8:30am. I am particularly interested to see the Oracle's one talk about the Oracle/BEA deal... May be we will be able to learn more about the products roadmap
- TS-6050 - Comparing JRuby and Groovy
- TS-5274 - Groovy on a Cloud: Testing Java EE Platform Applications on Amazon EC2
- BOF-5102 - Cooking Your Own Groovy Builder: A Step Forward into Domain-Specific Languages
- TS-5793 - Groovy and Grails: Changing the Landscape of Java EE Platform Patterns
- BOF-5101 - Boosting Your Testing Productivity with Groovy
- TS-5764 - Grails in Depth
- TS-6298 - Designing Graphical Model-Driven Applications: Lego MindStorm ... long time that I have not programmed/designed with my Legos...
- BOF-4888 - Taming the Leopard: Extending OS X the Java Technology Way: would be great to see my ex-coworker talking about OS X and Java.. John and Tim are terrific developers
- BOF-6400 - The Future of Guice. even if I have not used (yet) this API from Google I have been a big fan of Bob's work
- TS-5657 - JavaFX Technology: Bring the Web with You--Multiple Interfaces to Games, Chat, and More
- TS-4817 - The Java Platform Portlet Specification 2.0 (JSR 286)
- TS-5343 - Enterprise JavaBeans (EJB) 3.1 Technology. As I am pushing more and more customer to use the standard JPA.. would be great to learn more about the next release of EJB
- TS-6169 - Spring Framework 2.5: New and Notable... would like to see what will be said about SpringAppServer
- TS-6072 - Advanced Enterprise Debugging Techniques
- BOF-5634 - Java EE Platform Connector Architecture 1.6 Overview. I have been using J2CA a lot lately when dealing with SOA in large IT department... So quite cool to have an update on this spec.
- TS-5318 - Dealing with Asynchronicity in Java Technology-Based Web Services. A feature in the WS Stack that I have been pushing a lot...
- TS-5616 - JSR 303: From a World of Constraints to Constrain the World
- TS-6339 - Top 10 Patterns for Scaling Out Java Technology-Based Applications
- TS-5706 - SCA and Java Platform, Enterprise Edition (Java EE Platform): Integration Inside
- BOF-5495 - Untangling the Asynchronous Web
- TS-5425 - JAX-RS: The Java API for RESTful Web Services
- LAB-4500LT - Develop AJAX Based Portlets With OpenPortal and GWT
- TS-6574 - How to Implement Your Own OpenSocial Container on the Java Platform
- TS-6807 - What’s New in Ajax
- BOF-5661 - Comet: The Rise of Highly Interactive Web Sites
- BOF-4922 - Writing Real-Time Web Applications, Using Google Web Toolkit and Comet
- TS-5870 - The Best of Both Worlds with Java™ Business Integration and Service Component Architecture
- TS-5152 - Overview of the JavaFX Script Programming Language
- TS-5572 - Groovy, the Red Pill: Metaprogramming--How to Blow the Mind of Developers on the Java Platform
- TS-5815 - Going Mobile with JavaFX Script Technology, Groovy, and Google Android
- TS-5535 - Tying Java Technologies Together the RESTful Way
I have probably selected many conflicting sessions, not really an issue since I am not going there. That said, this year again JavaOne looks quite exciting and a lot of content again around Scripting Languages and Framework; Web2.0 related technologies and SOA.
I hope that I will be there for the 2009 one ;)