Tug’s Blog

Redis, NoSQL and more…

Working on a Large XML or SOA Project: Think About ‘Separation of Concerns’

| Comments

With XML and SOA becoming mainstream in the enterprise XML operation such as Schema validations, XSL transformations are now very common. These specific operations are CPU intensive and could become a performance bottleneck when directly applied on the middleware. It could be even worst now when using SOAP based Web Services and their related WS-* standards. For example with WS-Security, XML encryption and signature is now more and more used in SOA based applications.

This is why many enterprise architects are bow looking for solutions to improve performances of XML centric applications.

One of the think we learn when developing application, and that Aspect Oriented Programming has highlighted is the concept of “separation of concerns”. It is key to keep that in mind also in global architecture in our case by separating the XML processing from the business logic. Hopefully it is most of the time done directly by the various Web Services framework you are using, you do not code the SOAP request/response, it is hidden by the Web Services framework.

However, in the current application server, the full XML treatment is made directly in the container, for example the XML Encryption is made in the same container that the place where the pure business logic is executed. So let’s find a solution to extract the most intensive XML processing into another part of the system.

Vendors have now in their catalog appliances that could do the job. The same way that today we are using SSL accelerators to deal with SSL encryption/decryption, we can put XML appliance to deal with the intensive CPU processing operation: XML validations, transformation, Ws-Security enforcing point,…

Portal Project: Time to Think About Your Social Networking Enterprise Strategy

| Comments

Most of the enterprises these days have already put in place a portal – with more or less success. These projects have started most of the time, with the goal of providing personalized information to users and communities. When working in a Portal project you probably define many objectives, that are represented from a technical point of view by the following features:

  • community and group of users
  • easy content management, allowing people to communicate and share
  • data integration of many types of data related to the information needed by each user/community.I do not see anything special there except that is exactly the same goals that what most of the Web2.0/Social Networking applications do have:
  • User management and creation of the community is something that you do on a daily basis with FaceBook and LinkedIn (and any equivalent sites). The key here is the fact that it is the user that define its own community, not an administrator that does not know “my” business that put me in a specific bucket.
  • Content Management: Blogs are very good example of communication of a single person (or team) to the rest of the enterprise, (or the rest of the world). Wikis are tools helping you to share content with other people in a very efficient way. If you are working with OpenSource you see that most of them are using a wiki to communicate with user. This is true for the documentation, but also any type of content that is related to a project.
  • Data Integration: Web 2.0 is all about RSS feeds and Mashups that are, at least today one of the most efficient way, from a user perspective, to integrate content.This is why I do believe that if today you are thinking about an enterprise portal for your organization, it is probably time to step down a little and think more about:
  • the “enterprise social networking strategy”, that is often also related to the “Web 2.0 enterprise strategy”.So some ideas to approach this:
  • create a community with some internet tools, for example start by creating a network in Facebook for your enterprise. Some if you will probably think that it is not productive for the enterprise… Hmm I have to say that it is not directly, but at least it helps people to be familiar with a new way of using the computer and the Internet. Companies I am working in or with do have their network already (Sogeti, CapGemini, IBM, Oracle, …). An example of this is the way Serena is using FaceBook as part of their intranet and as a tools to do better business. (and some people reactions to this: FaceBook Friday:Bad Idea)
  • if your challenges are around content management start by installing a Wiki in house or using an internet one. I am sure you will be surprised to see the adoption and use in your team. I have many experiences where a regular “Portal/CMS” failed regarding the “community sharing” where Wikis have been a great success.
  • if your challenges are around data integration, I will encourage you to learn more about Rest/RSS and other technologies that are used in mashups. It is true that this one is probably will need more effort from IT to provide the good content feed, but instead of giving the data already packaged in an HTML view (portlet?) do send only the XML using a proper format (RSS/ATOM) and give correct tools to the user, to see how then will be consuming it.

I see this approach more business oriented, this is empowering the business user giving them an infrastructure to select their own tools. Portal the Darwin way kind of approach.

So if you have an existing portal, or more important if you are thinking about starting a Portal project, add the “Web 2.0/Social Networking strategy” question to your plan. And to be honest, asking yourself this question about Web20/Social Network does not cost that much but could probably help yourself to satisfy your end users and customers…

Note: It is voluntarily that I am mixing up the Web 2.0 (technologies) and the social networking (behavior), since these two are intimately linked. Web 2.0 being the set of tools and technologies facilitating the social networking.

Oracle Open World 2007: Presentations Available Online

| Comments

For the first time since 2001, I was not participating at OOW… As you may know I have moved back to France and now working for a new company Sogeti. So I am quite happy to se that once again all the presentations are available for download there:

I personnaly looked at OracleAS and Java presentations, and especially the one regarding SOA, performances, security and web Services:

Some other presentations that I would like to read/see:

  • Java EE/Java SE/Java Authorization Contract for Containers (JACC) Security in a Nutshell
  • A New Approach to Diagnosing Java Application Performance
  • Next-Generation Web Services Infrastructure and Interoperability
  • Performance Management for SOA Applications

And I will take more time do read some others…

Guillaume Laforge Interview on JavaLobby

| Comments

I am sure you have seen it before, but just in case… Geertjan from JavaLobby has interviewed yesterday Guillaume, in case you do not know.. Guillaume is the Project Leader of the Groovy project and co-founder of the G2One company.

Interview: What’s so groovy about Groovy?.

In case you have not look at it, G2One is offering many services around Groovy and Grails … directly from the source since Guillaume, and Graeme Rocher are working there… So if you need any help on these nice technologies do not hesitate….

The Good and Bad of PLC Ethernet… In Hotels

| Comments

I am traveling visiting partner and pleased to see that I have internet access in my room. Unfortunately it is not Wifi access but not that bad, but with PLC (Power line communication)…

So I take my PLC Adapator at the concierge. Plug it in my room and start to surf the web. Performance is good… Now I am looking for another electric plug for my MacBook AC… oh maaaan! I cannot find any other free plug.. except in the bathroom. This is really annoying and stupid… Sorry for this little post about a small and annoying experience.. alone in my PLC bedroom.

Paris ‘SOA Forum’ Feedback; and Little Comments About SOA Projects

| Comments

This week I have attended a SOA conference in Paris the SOA Forum. (I was not there in 2006). This event is not a technical event targeted towards developers but mainly oriented for IT managers and decision makers. This day was well attended, around 200 people. The content and more important the questions and round tables provide a good snapshot of how SOA is adopted.

If last year, based on comments that I can get, the message was “What & Why SOA?” this year I have the feeling that most of the audience was really familiarized with the SOA concepts -as I said earlier it is not a technical conference- and now they are more asking “How and When SOA?”. Lot of discussions were about how to I start the projects, since in many case the SOA will impact the whole IT, and even more the full enterprise.

Derek Sivers’s Blog: 7 Reasons I Switched Back to PHP After 2 Years on Rails

| Comments

The new post on the Ruby section of O’Reilly authored by Derek Sivers is quite interesting, starting with the title:

  • 7 reasons I switched back to PHP after 2 years on RailsI am far away of being a PHP expert, or even a Ruby one, but I have the impression that I could post a similar title with Java instead of PHP. If this is true that Java EE could look a little complex for a start -this is probably less true today with the new JavaEE simplifications-. Yes… when you compare Rails and Java alone it is more complex but we should not forget that Java is now more a platform than a simple programming language. And many developers and companies have built very productive solution on this platform.

Since I am talking about Ruby on Rails here, it is important to mention again Grails and Groovy that provide on the Java platform a simple and productive way to develop applications, and time to get back to the different reasons mentioned by Derek in his post:

1 - “IS THERE ANYTHING RAILS/RUBY CAN DO THAT PHP JAVA CAN’T DO? … (thinking)… NO.”

I believe that we will all agree on the fact that you can do anything you want in Java; Web applications, mobile applications, operating systems, rdbms, … the only limit is your brain! -and your skills ;) -

2 - OUR ENTIRE COMPANY’S STUFF WAS IN PHP JAVA: DON’T UNDERESTIMATE INTEGRATION

I think this is one of the key point here. Enterprise is using JavaEE a lot and it is part of the IT, moving to another technology will be expensive even if development is faster. In addition, the developers, administrators are used to develop and manage Java based applications.

And I do not want to talk about how complex it could be when you are building a Rails application on an existing database, designed from a pure Entity/Relation methodology….

3, 4 5 - I have nothing special to say here…

6 - I LOVE SQL

I still see a lot of developers using SQL directly in Java programs. The nice thing about Java is the fact that based on your skills and what you like to do you can choose the way you want to access the database, simple SQL, powerful O-R Mappings, …

7 - PROGRAMMING LANGUAGES ARE LIKE GIRLFRIENDS: THE NEW ONE IS BETTER BECAUSE YOU ARE BETTER

I love this reason, but nothing special to say, I let you read the original post.

As you can see from the number of comments in Derek’s blog -no times to read all of them- this entry generates lot of reactions.

IDTVG and Co: How to Merge Meetic and Expedia

| Comments

With all the Web 2.0/Social Networking noise we are all used to “virtually socialize”, but now you can use it to do more and improve the quality of your trips.

The site IDTGV and Co (only in French so far) allows you to enter your profile and hobbies. Then when you do a reservation for the TGV (high speed train) you can match it up with other travelers. I have not tried this service yet since I am mainly traveling in the north of France but I will for sure try it as soon as I can…. Let me know if you have tested it.