Thursday, August 7, 2008

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:

Tuesday, July 29, 2008

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:

Tuesday, June 17, 2008

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.

Working for open source

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.

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...

Working with visionary team and product

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.

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 tune, 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

Monday, June 2, 2008

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.

Change in transportation

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....

Change in way we do work

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...)

IT for a greener world

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.

Monday, May 26, 2008

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!

Wednesday, May 21, 2008

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 ;)

Friday, May 16, 2008

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:

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...

Thursday, May 1, 2008

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:

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

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.

Monday, April 21, 2008

Last Friday (April 18th) I was attending the launch of "eXo WebOS" in Paris. Benjamin Mestrallet, creator of eXo has started the event with a presentation of the solution and its impact on the IT.
Like any internet user, each time I see eXo Web OS and applications I am very very impressed. They have pushed very far the use of AJAX based applications to offer a complete virtualization of the OS/Desktop, not in a Virtual Machine, but simply in your favorite browser.

As you can see in this screenshot, eXo is launching in your browser, a complete desktop, where I run many applications provided by eXo: Calendar, Forum, Mail, but a also a calculator gadget attached to the desktop itself. The easiest is to try the product, go to eXoplatform site and download it.
After the presentation of the eXo new features, and vision, two customers have presented their project based on eXo Portal and Collaboration Suite:

M6. M6 is one of the major French TV channel. M6 is using eXo for their new intranet. Some of the key point that I kept from this experience:

Flexibility/Agility of the platform: M6 IT has been able, with Business&Decision, to answer end user needs in term of design/look&feel. Quite important in media industry ;)

Extensibility: in addition to the pure publishing of personalized pages, eXo has showed lot of power. Creation of new services based on the core architecture of eXo (IoC based container), or simply by creation new Groovy script to capture events in the Java Content Repository. One example of such script, is the creation of a new script to automatically resize images when they are published in the repository.

Belgium Minister of Finances, with Bull Belgium In addition to the classical portal usage of eXo. They have chosen to put in place for their 30 000 users, the brand new eXo Collaboration Suite (Mail, Calendar, Contacts) and even more exciting use the real time collaboration tools provided by eXo LiveRoom. This extension to eXo provides using a Flex based architecture exciting tools for collaborative work:

Video and Voice over IP for Web conferences

Shared Whiteboard allowing multiple people to see and modify documents and graphics

For me these tools in addition to the eXo chat (Ajax based) are really exciting, and this for many reasons:

it shows how the "Web 2.0" can really facilitate the collaborative work

eXo is a green product ;) because with the eXo CS people do not need to travel to meet and work together.

The event was closed by a very passionate Round Table, moderated by Christian Faure (Atos Origin) with Adobe (Michael Chaize), eXo (Benjamin Mestrallet), Google (Dave Armstrong), Microsoft ( Christophe Lauer), Mozzila (Tristan Nitot) and Sun (Eric Mahe) have discussed many topics around Web/Internet, Standards, Open Source, and Web OS... If you are french speaker I am inviting you to take a look to the recording of this event available on the eXo blog:

Oracle Application Server Web Services

If you are an Oracle Application Server user, you may know that it is possible to expose database resources as Web Services using the OracleAS Web Services stack. You can for example using JAX-RPC based Web Service create service on a PL/SQL stored procedure, a SQL statement and even poste message on a queue (AQ). This is available in the Web Service Assembler (wsa) tool and also JDeveloper.
At the end when you have executed the wizard, you have a complete JavaEE application ready to be deloyed. All the JDBC calls and PL type mapping are done automatically by the wizard... very neat Take a look to the Assembling Database Web Services documentation.

Here the archtecture schema of OracleAS Database Web Services:
It is important to mention that such service can leverage the WS-* support of OracleAS and any JAX-RPC handler you want to add to the service.

BPEL PM and Database Resources

In addition to a pure Java developer approach it is also possible to expose database resource as Web Service using Oracle BPEL PM, yeah... it could be overloaded, but still it is possible and very easy to do. See the chapter BPEL: Communicating with a Database

Oracle RDBMS 11 NDWS

Orale RDBMS introduced a new feature that is called: Native Oracle XML DB Web Services, that allows developer to directly expose Web Services from the DB. Take a look to the chapter Using Native Oracle XML DB Web Services.
Note that in this case you do not have any WS-* support without another technical solution that could be Oracle Web Service Manager or any other solutions (such as a SOA appliance like for example IBM dataPower)
hmm I have not used that much this feature since I have left Oracle... I wonder when Oracle will provide a OS X release that will allow me to use my computer without any VM...

Friday, March 7, 2008

Now that I am back in consulting business, I often have customers where I am not allowed to connect my Mac on the network. Annoying!!!! But this is not a big issue since now it is easy to bring you environment on a USB key.

XWikey: my wiki on a key

On a daily business, I have installed my personal XWiki on my 2Gb USB Key, and a JDK (for windows, on OSX I am using the default one). So with this solutions I have my personal CMS, Website and applications with me, and I can use it from any computer available. I work on any site, any meeting room directly on my Wiki even when I am not connected. I am using a packaged Entprise XWiki that comes with Jetty and HSQL, so it is a complete and self contained environment. I just changed the start and stop scripts to point to the JDK that is on the key. Nothing exceptional here, but it is very useful.

Others portable applications

I know that a Wiki is not enough most of the time to " bring your life with you", and you may want more, such as Open Office, Mail and Web clients, ... Some of the packages you can use:

Monday, February 11, 2008

A friend of mine asked me some questions about Oracle and acquisitions. He could not, remember all of them and when they occurred...
If you have the same questions take a look to the Oracle Acquisition page on Oracle.com since 2005:

Some others are probably missing since in 2003/2004, Collaxa was acquired by Oracle. If you do not remember Collaxa was the first release of the BPEL Process Manager.
You can also take a look to a part of the site that I like that is the Oracle's history.

Saturday, February 2, 2008

By default Oracle Web Service client is sending the SOAP messages using an UTF-8 encoding. This is the recommendation of WS-I Basic Profile. To be exact it says UTF-8 or UTF-16.

It is quite simple to change this encoding...
First you have to know that the JAX-RPC container will return the same character encoding than the one that is received. To change the character encoding, you just need to set the ClientConstants.CHARACTER_SET_ENCODING to the value you want to use. Here some simple client code:
Stub stub = (Stub)myPort.getPort();stub._setProperty(oracle.webservices.ClientConstants.CHARACTER_SET_ENCODING, "UTF-16");

Most of the Web Services stacks are offering the same kind of utility to do that, for example here the property you must set to do the same in IBM's JAX-RPC implementation:
com.ibm.wsspi.webservices.Constants.MESSAGE_CHARACTER_SET_ENCODING.

Monday, January 28, 2008

Last week, more than 400 people of Sogeti group were meeting at Les Fontaines, for the annual KickOff. It was for me the first big event since I have joined this company last October.

Les Fontaines, is the training/conference center of the Cap Gemini Group located 30mn from Paris. I have to say that it is really a great place. Click on the Les Fontaines to see what I mean...

First of all it was a great experience to meet my colleagues from all over the world , Sogeti is a company of 16,000+ people, all over Europe, in the USA and India. The main theme of this 2008 Kickoff was "Web 2.0", the reason why I was invited indeed. If most of the technical people are using internally and externally Web 2.0 tools such as wikis, blogs, ims, .. It was important to have during this kickoff an "overall" brainstorming about the use of this tools for the group, but also how we can leverage of knowledge to help customers to be more efficient in their business.

As part of this theme our marketing folks have invited external speakers:

Rolf Jensen : talking about the Dream Society, explaining that the next step for business is to add an emotional aspect into it, to add value... I am a emotional person, and I can tell that I am buying Rolf's idea, and like most of Apple fan you can tell how important are the emotions to do business...

Rod Bekstrom, co-author of the well known book "The Starfish and The Spider" focusing on the fact an company must shift from a centralized organization to a decentralized one. You can listen to the presentation online on Rod's site.. I have to say that I soon as I have finished my current readings (RestFul Web Services-O'Reillys & Get Things Done) I will order this book. I really found some inspiration in Rod presentation, and his ideas could be immediately put in place in your organization or at your customer site.

Last but not least, Nick Donofrio, EVP Technology and Innovation, talked about the important of innovation for the enterprise, and how we do not control the changes but we should adapt to it in a productive manner to stay at the top.

However, I would have loved to see Francois Nonnemacher on the stage too since I had the opportunity to see him talking about Web 2.0/Social Computing for the enterprise and he is terrific... and also because as far as I know he has worked at Cap Gemini few years back

I really enjoyed all these presentations, in addition to the one that I have cited, we had many Sogeti's speakers including Sogeti CTO Michiel Boreel.

Wednesday, January 23, 2008

You have probably heard about IBM ProjectZero, this "incubator"project from IBM pushing a new way of building, assemble and run Web applications. I won't talk about the technology in this post, it will come later, but just comment about the way this project is developped: a Community-Driven Commercial Development process.

The idea behind this "process" is to apply to a commercial software, ideas that are common in free software. As you see I am not talking about "open source" since Project Zero is open source, it is really about the way a "commercial" software is built...

If you take a look to the "About" page of ProjectZero you can learn more about this process/ideas. Some key points:

the development team, mainly IBM folks, want feedback, insight, suggestions, and criticism from the community. So we as the community can really be involved in the product in a stage where it is usually inside IBM labs without any visibility for non IBM employee... This is quite exciting to see that we can really discuss with the development team as they do the product, and we can see the product evolving based on "real" customer requirements/comments.

so as "future" user of the production release I can discuss the features. As a developer of the "current" development release I can participate to the future product.

So what you may be tempted to say, especially if you are a lot involved in open source and free projects, but you have to admit that it is quite a switch for commercial product.Project Zero is not the only project that is using this approach Jazz from the rational team is also on this model.

In the same time if we consider, GlassFish, we do have more or less an equivalent, that is the JavaEE RI and the Sun Application Server... but here on Jazz or Project zero it is really happening on a brand new product that is not a reference implementation but new products part of a commercial R&D lab...

I am still a little confused to see what will be the license when release 1.0 goes out... Just wait and see.. hmm sorry I should say "just participate and see".

Tuesday, January 22, 2008

I have just created a poll -see leftbar- asking to list the different tools you are using for business. In fact I would like to have some feedback of you use of Wiki, Blogs, Instant Messaging on you daily job.

Myself I am using all of this for work:

Internal and external communication with Wikis

My blog that you are currently reading

Chat, I use probably more the chat than phone these days (thanks to http://meebo.com when I cannot connect with a rich client)

Social Networking: I am not necessarily talking about big sites like LinkedIn/Facebook but more internal sites. For example, back at Oracle we had access to an internal Social Network site, that is now exposed at http://mix.oracle.com, and now at Sogeti, in the Cap Gemini group we do also have internal social networks.

The idea behind this post/poll is to be able to discuss, with customers around Web 2.0 tools adoption in the enterprise. So do not hesitate to post a comment describing the tools and how you are using them for business.
Thanks for your vote ;)

Friday, January 18, 2008

With the latest big news around Oracle-BEA and SUN-MySQL deals I have missed an interesting article on Infoq with the following title:
- Request: Sun, Drop Support for JRuby
I have to say that I do agree with Craig Wickesser asking Sun to Drop Support for JRuby.

Syntax Matters?

Yes syntax matters, not only for the "beauty" of it, but also because of the investment that enterprises have made into it. We should not force people to completely remodel their brain all the time, for no gain.

I love Groovy language, and one of the main reason is because it gives me the most bang for my buck. Java people can immediately catchup with the syntax, and step by step leverage powerful features available by dynamic languages and domain specific languages. I was hoping to see a great adoption by SUN... It is one thing to support scripting with the JSR-223, but SUN has to "endorse" a scripting, and from what could be seen today it is not Groovy nor Javascript. When we see all the marketing noise it is Ruby with JRuby... And I do not think that is necessary good for the Java platform.

Do not get me wrong, I think that is a great idea, and need for Java to be able to execute many languages, for example we see a lot of IBM WAS and BEA WL administrator using Python to administer their application server instance with Jython. But once again the "default" one should be close to Java and integrate with it as close as possible to reduce the impact on scalability and performances, and I do think that Groovy did a great job on these topics.

What about RubyOnRails?
I am not a RoR expert, far far away from it, but I have learned it, and developed small applications with it, and I have to say that I love this framework. And I am sure that like many Java developers that used RoR, I was thinking: "If only I had the same productivity in my favorite platform: J2EE...".

I was not expecting to run RoR application as-it-is, but more hoping that JavaEE will learn from RoR to simplify development... And... somebody did it, with Grails. Grails takes inspiration from RoR, but in a "real" JavaEE environment, since it leverages key pieces of the current Java applications such as Hibernate and Spring, using the power of Groovy to glue all this together.

In conclusion...

I do not know for you but yes I do think that SUN should drop support for JRuby, and in place push a language more natural for existing Java Developers, I vote for Groovy. In addition to the language itself, I also expect the JavaEE EG to provide a more productive way of developing "simple" Web applications. This is where I see Grails coming in the picture, but many other framework could do the job, taking advantage of some interesting concepts of RoR...

As Rick says, I (we?) am not looking for a Revolution but for an Evolution.

Friday, January 4, 2008

Disclaimer: you do probably already know all these sites if you are like me spending lot of time on the Internet... (too much time?) But still, some people could be interested, like the customer I have been working with lately...

During a presentation to a customer around Web 2.0 and Social Networking, which sites do I use myself and why they could be interested for customer and their business.... So I really quickly write up this list, and just want to share it here...

I use these site as consumer, but these services are more and more important in customer business, and will be part of our job as developer/integrator.

Hmm, when you see this list you can tell that I am a very happy Google user, and I have not talk about the other services that I use from Google: Gmail, GTalk, Analytics, Notebooks, and obviously the search...