December 24, 2008

Apache Virtualhost generator

Currently I've not much time to work on Wisss :-( However, I will make a tiny dsl and generator to have a virtualhost file generated (independent from Wisss, which already generate a vhost). I've already done this with a shell script but it will be more powerful and easy to ...

December 24, 2008 11:15 AM

December 10, 2008

Papyrus 1.6 is released with Acceleo !

Papyrus, one of the best OpenSource UML modeleur on the Eclipse platform has been released.

http://www.papyrusuml.org/

Papyrus includes a new killer feature : Java code generation from UML models.

And which generative engine does they choose ? Yeah ! Acceleo.

Obeo has joigned Papyrus community to help them to create this Java generator.
Of course, this generator is under EPL license.

Acceleo 2.0RC2 has been used, with some specific integration plugins like this one (for the Run... menu) :

by Etienne Juliot (noreply@blogger.com) at December 10, 2008 06:09 AM

MDE / MDA / MDSD / etc.

OMG has defined the MDA term.

But now, what a jungle !
Let's see some very simple definitions.

MDE
- Model Driven Engineering
- definition : all the process of creating softwares with a model driven approach.
- examples : it includes some metamodel based analysis, how to manage teams with MDA,
which steps are required to create a real model based software factory, ...

MDA
- Model Driven Architecture
- definition : the technical choice of tool and metamodel for all the creation of a new software
- examples : transformation models engines, separation and links between PIM/CIM/and others

MDSD
- Model Driven Software Development (also call MDD : Model Driven Development)
- definition : metamodel based tools and process for development step
- examples : source code generation (like Acceleo), PSM model based editor

DSM
- Domain Specific Modeling (and DSL : Domain Specific Language)
- definition : metamodel based modelers to design specific and semantical models
- examples : GMF based modelers, Workflow modelers, Wysiwig model based modelers

ADM
- Architecture Driven Modernization
- definition : modernize existing software with a metamodel approach
- examples : reverse engineering systems, recasting engine (like Agility)

Of course, let's do a metamodel of theses model driven definitions :

by Etienne Juliot (noreply@blogger.com) at December 10, 2008 06:09 AM

ATL 2

ATL v2 will be release very soon.
ATL is a model transformation engine based on MDA standard and Eclipse platform.
It can used for:
- interoperability between tools
- translate a model from a notation to another (for example: relational to uml)
- propose "different zooms" on a model (for example: global specification -> detailled specification -> global design -> ...)
- create any kind of bridge (for example: BPMN -> BPEL or BPMN -> SCA)

ATL 2 is provide some new exciting features:
- better completion on model elements
- virtual machin based on EMF
- better performance
- lots of bug fixes
- a clean updatesite
- integration inside Ganymede (Eclipse 3.4)
- and a new commercial support on http://www.atl-pro.com


See News and Noteworthy for more detail on ATL 2.

by Etienne Juliot (noreply@blogger.com) at December 10, 2008 06:09 AM

Acceleo 2.0 : free module for UML2 to Hibernate


For Acceleo v2.0 and launching of Acceleo Modules Farm, Obeo will release with an OpenSource license one of its commercial modules : UML2Hibernate.

I have create this module. It uses UML 2.1 models (class diagram with stereotype > >) and generates :

- DAO layer
- Entity objects
- HBM mapping
- SQL tables (3NF)
- JUnit tests
- Hibernate v3 compatible Design Patterns

It manages lots of associations :
- inheritance
- 1-1
- 1-*
- *-*
- recursive associations
- unidirectionnal and bidirectionnal associations
- ...

It will be available before the end of may. I hope you will enjoy it, and you will contribue to improve its features.
Here is the link where this module will be available : http://www.acceleo.org/pages/modules-repository/

by Etienne Juliot (noreply@blogger.com) at December 10, 2008 06:09 AM

Icon set for post-ganymede version of Eclipse SCA

Hi,

I just work on some new icons for Eclipse SCA project.
I need some comments to choose which one need to be removed or changed.

On my point of view, it will be nicer than the v1.0 version because it will better fit Eclipse UI and icons style.

New global palette:

SCA Bindings:

SCA Implementations:

SCA Interfaces:


The new tree Editor:
The graphical Designer isn't ready because it uses old style for embedded icons.
For comment, you can use this bug report.

by Etienne Juliot (noreply@blogger.com) at December 10, 2008 06:09 AM

November 26, 2008

Back from ESE 2008 : WOW !

I'm now back to France after this great conference. Ed covered the "modeling events" quite well already but I can't prevent myself from sharing my pleasure as I'm still filled with excitement !

My overall impression on the conference is that it had many clear signs of an active, innovative and enjoying community. No doubt E4 has its role in this whole "refreshment" thing, the debates in the symposium were more than interesting and I've no doubt such good and skilled people as those involved in E4 right now will come up with a great platform. In this regard, Tom's talks were more than interesting, keeps doing the fun stuffs !


The "modeling is crap" statement has been repeated quite a few times during the various talks, Ed described and analysed such misconceptions, models will rules the world ! Resistance is futile !
More seriously, I have the feeling the message "modeling is not UML" was really getting in, thanks to Ecore and all the amazing projects under the Eclipse umbrella, you can define your own DSL and quickly develop your tooling or adapt existing tooling around that. That's being agile !

On the other side of the barrier, Eclipse is now able to compete with profesionnal UML tools thanks to Papyrus (and one a sidenote EMF Compare ;) ) This quality of tooling was only available in commercial tools before, things are changing !

Speaking about EMF Compare, I was amazed to see how many people reused this project or integrated it in their own tooling. Getting this kind of feedback is not easy, especially with the newsgroup as you mostly only get the "This stuff seems not to work" messages, ESE is a great place to meet your user base :)


Getting to ESE using the "night train" was not the best way to rest, but the modeling symposium was perfectly handed by Markus and the tiredness quickly disappeared.


Then the talks took place. High quality ones for sure ! That's a shame we have not been able to provide slots for the many good other talk submitted, let's hope we'll have more slots next year !




Summit also mean socializing ! Many people, many beer, good food, it can only lead to a nice reception :) I even hacked a bit with Sandro from the JCR management project which is really cool. How is that possible that all the guys working on models repositories are so friendly ?

I also chatted a bit with the whole Eclipse marketing effort !

Then many more talks, chats, with many other Eclipse project :) Time gets away too fast, and we were already having a last modeling beer at the Nestor hotel !

See you at EclipseCon !

by noreply@blogger.com (Cédric Brun) at November 26, 2008 06:05 AM

November 09, 2008

Minute of Papyrus Pre-Committing meeting!

Wednesday, I met the others commiters of the Eclipse Papyrus project. We have prepared an action plan to prepare the IPZilla process. As you can see a great week of work ahead! You can see the minute here:

by Jérôme at November 09, 2008 09:01 PM

November 06, 2008

How much computer scientists do you need...

To setup doors for a bathroom ?

At least 2 model driven enthousiasts + me !


































And tadaa !

Thanks again for your help guys :)


by noreply@blogger.com (Cédric Brun) at November 06, 2008 06:17 PM

October 23, 2008

One month in Obeo, The Model Driven Company!

I have been within Obeo for almost one month now. As expected, it is crazy, and exciting!

Exciting for several reasons, first because it's a new job with new challenges, and then for the followings:

  • Working at home: I begin my fifth year of work at home, with zero transport time, no tie.

I like this way of working! It's an ideal way to reconcile family life and work, we will see it when my son/daughter will be born in February :)


  • Working on Open-Source softwares: Some of you know that I have been working for the Hervé Group as Project Manager, and lately for Argia-Engineering as CTO. This latest experience was focused on software architecture, and scalability design of big e-commerce platform and MDA consulting,...

As I am an intensive user of Open standards and Open-source softwares such as GNU/Linux, Apache, Tomcat, Java, PostgreSQL, Spring, Eclipse, Ant, Ivy, Hudson,... I think that Open-Source must a win-win model. Thus, I am an active contributor to mailing-list, forum, documentation, experience sharing , bug reporting, or even more source code contribution. It is this approach that led me to interest me to severals Open-Source project like Acceleo, on which I contributed actively and became commiter. This great diving phase in the Open-Source world offers me an opportunity to capitalize in depth experience. As shifting to the Open source world became obvious in my mind, Moving to Obeo was a great opportunity for me!


Since one month, I am pleased to work on a new big Open-Source project : the new UML2 the new UML2 modeler hosted by Eclipse Foundation called Eclipse Papyrus . This big rebuild of Papyrus project (http://papyrusuml.org) is aimed at integrating several contributions on a solid and flexible BackBone. In this project, Standards is another important point, we want support and respect 100% of the OMG standards. In the first sprint to give a first version of code source for the IPZilla incubation process, we focused on implementing the Class Diagram. Thus I discover and start to use the Graphical Modeling Framework (see the first screenshot of this collective work) to improve Class Diagram:

Eclipse Papyrus Class Diagram

I promise you to communicate about this on this blog!


Yesterday, it was the Acceleo JEE Module Sprint'08. It was an opportunity to meet members of the community and define the roadmap of this module. It was as deep dive meeting, we worked on severals tracks by small team. And you can see the Minute here.


In the coming months, i think meet some famous Eclipse committers like Ed Merks,Tom Schindl,... and participate to important event like Solution Linux, eclipse DemoCamp, maybe Eclipse Summit Europe or EclipseCon ...


  • Working in an innovative and visionary team: I met the team consists of thirty persons including 4 project leaders and 8 official commiters on Eclipse projects: ATL, QVT, MTL, M2M, EMF-Compare, STP, SCA-Tools, ...

And I discovered the offer of Obeo. I known Acceleo since two or three years ago, it's a very cool technology. But it's only a portion of the Iceberg. I enjoyed to discover a big Model Driven Platform called Agility. It can help you to build complete software factories and migration factories. It provide very impressive features!

In conclusion, I just invite you to take a look to Obeo and contact me if you have any question about product portfolio.

by Jérôme at October 23, 2008 09:58 PM

June 28, 2008

Eclipse 3.4 Ganymede: News and Noteworthy by projects

Eclipse Ganymede has just been released.

Here are list of new features of modeling projects:



There are other projects (like Jet, QVT-O, ...) but there haven't a News and Noteworthy page.

by Etienne Juliot (noreply@blogger.com) at June 28, 2008 03:57 PM

June 12, 2008

Eclipse SCA 1.0

After one year of work, Eclipse SCA 1.0 is ready.

This is a new project of Eclipse STP (Soa Tool Platform) for assembly of SOA applications.
To understand the goal of SCA standard (Service Component Architecture, available here), the easiest way is to use an example:
you have one GUI component (for exemple, C# based) named "A" and it need to communicate with one business component "B" write EJB and Java and with another external component "C" written in PHP and only accessible with WebService. With SCA, you just need to declare each component, a reference (required interface) on A (declare with C# interface), and two services on B and C.
The SCA server will automaticly translate protocols and API language to ensure everybody can communicate with everybody.
In a nutshell, SCA isn't a new middleware (it rely on existing middlewares or libraries). It's like Spring, but as a specification and for any protocols and languages.


The main feature of Eclipse SCA project is a nice designer. It's used color and shape very similar of official specification and it's based on GMF. I'm one of the commiters team of this project and the leader is Stephane Drapeau.

It will be bundle inside Ganymede (Eclipse 3.4).
You can test it and read this nice tutorial.

by Etienne Juliot (noreply@blogger.com) at June 12, 2008 04:20 PM

May 28, 2008

Plone3 & Acceleo, the first step


I have work some hours on a simple plone2.5 code generator with Acceleo. It is available on the acceleo svn:

svn checkout svn://svn.forge.objectweb.org/svnroot/acceleo/trunk/modules/community/uml21/zope/plone/25/org.acceleo.module.pim.uml21.plone25/trunk

This code generator is not finished, but the way of doing is good enought to start the plone3 one. I would like here to explain the purpose of the Acceleo Generator for Plone3 i want to make.I will first explain the problems i have with ArchgenXML.

What i don’t like in AGX:

  • The license in each source file (i prefer just a license.txt file)
  • The billion tagged values (i have lost hours here)
  • The generated code itself doesn’t look like with the code i would have produced.
  • The command line
  • ArgoUML
  • All the hacks done every where to make the code compatible with two versions of Plone
  • You can’t modify a line of code generated without lost it if you re-generate your code

What i like in AGX:

  • The way you use UML (copy the model, and then do a simple class diagram, it s up)
  • The i18nized schema generated with po files
  • The generated tests
  • It works on all well known OS (linux, macos, windows)
  • Lots of documentation
  • The user code slots well thought.

For sure i want to keep all that good point for the project. So the overview of what i want:

  • Easy to install and to use
  • Running on most OS known
  • Code template easy to customize (making multiple branches of my own templates)
  • Do not generate 100% of the code by working hours in your UML diagrams
  • Be able to get an existing UML and generate only what you want

An other point: generate something only if it save your time. The best example i have is tagged values from AGX, like Searchable = 1. One tagged value for one line of code !A first advice from Cédric Brun (obeo) is to don’t fall in the modelisation of the code itself. For example doing an UML component to generate a zope component (BrowserView, adapter, …). In that case you will lost a lot of time in doing you UML diagram, and be obliged to add stereotypes (adapter, …). So to follow this advice, i have think about the idea of using Component diagram from UML, and i finally don’t want to use it, cause for me an UML component is not equal to a zope component. A UML component can be more seen as an egg. I need to think a bit more about that point, but that could be a great aspect to zope code generation.

Would we need to ‘model’ workflow and generate them according to a state diagram ? Here the point is a bit more complex. In fact you know that you need to make them to explain to your customers the need of specify workflows by UML. But the permission system in zope is specific to it, and the state diagram is not suppose to support this (in AGX we use tagged value one more time). And since we use GenericSetup to specify workflow now, the time saved by doing the state diagram for your workflow is negative. So i think we will just generate the state, but not the permissions associated, that are often explain with the diagram in a documentation. But i would like to generate the test associated with workflows. There were a good conference at Naple on that point.

Next, do we force the use of stereotypes to generate stuff or do we do as with AGX, and so force the use of ’stub’ stereotype to indicate the generator that this class is not a content type to generate. I personally prefer the first option. In that way you can take an existing UML diagram, load the plone3 profile, and said this package is an egg, this class is a ATContentType.

Well, a good demo package to do is the case of the Martin Aspeli ’s book.

Next time i will publish the UML from what i want the martin’s code to be generated.

by toutpt at May 28, 2008 07:14 AM

February 18, 2008

MDA for alfresco, Meta-Model for ECM


Today i attended to a conference about Alfresco and MDA by BlueXML. What i have discovered is a set of softwares done with Eclipse and Acceleo to generate an Alfresco project (configure the portal, make content types, …). I have been really interested in the fact they have done a new meta model derivated from UML to model an ECM project and also a GUI modeler associated with this meta-model.

That means the meta-model can also be used for Plone3. For example configuring Plone, by creating group of user, permissions, workflows, … would be stuff available if we use it. But firstly i need to test it to validate the usability of this meta model and of the modeler. All is available at BlueXML home site.

by toutpt at February 18, 2008 06:49 PM

December 11, 2007

Validation of Models with Acceleo (Part 2)

The second one (Part 2) consists in creating Acceleo services.

This solution provides additionnal functionalities in relation to the first one. Indeed, as the rules are written in Java language, you can decide that a specific rule won't overload a generic one for example...

I've created a "ValidatorServices" class which implements a mechanism to validate a model and get the report from templates, thanks to the services that it provides. The end-user has just to extend this one and to implement the "checkRules" abstract protected method in order to define his own rules.
He can use "validate", "isErrorChecking" or "isWarningChecking" services to validate his model.

But the main new feature consists in giving the possibility to use the result of the validation report and to act on the generation or not. Let's interest by this feature:

The "isErrorChecking" and "isWarningChecking" are able to notify if an error/warning at least has been detected. So, "isErrorChecking" may be used for example to forbid the generation if it returns true.

The "ValidatorServices" class manages a "singleton" behaviour in order to have only one validation launch per generation and to optimize the process.
Moreover, it manages a workaround about Acceleo architecture limitation on the instanciating of custom services between templates...

Indeed, the services don't share the same context between each template. So, let's take an example with two templates where each of them generates a file. We knows that the generation depends on the "file" parameter. Consequently, it's in this place that you have to use "isExistingError" if you want to control the generation. Not to have as many validation launches as templates which generate files, it is required to keep report in memory. To do that, the "ValidatorServices" retrieve data from a temporary file, in the temporary directory of the OS (Java environment variable). You can use a custom action to delete this file (clean data context) at the end of the generation process.
IsXXXChecking use temporary file only if it is called in different templates which generate files.

See the demo:


The main benefit of this way is to be able to cancel the generation if the validation process has thrown errors or warnings... according to your rules.
Then, it provides a flexibility for the use of the validation mechanism (priority of rules, control generation...) thanks to the Java language. So, applying a rule on a "super" meta-class and an other one on a "child" meta-class, you can decide to display the both respective messages if these rules are not checked (and not only the "child" one).

The concern is the technical heaviness of the solution which might be managed, in a more transparent way, by the acceleo core.
Then, the use of Java language involves a loss of the Acceleo features (debugging, traceability...).

by noreply@blogger.com (Cerdicus) at December 11, 2007 07:30 AM

December 10, 2007

Validation of Models with Acceleo (Part 1)

With Acceleo, you can define your own functional validation rules on a model and log messages according to them, during code generation.

I suggest different ways to define the validation rules.

The first one (Part 1) consists in creating a simple Acceleo template where each script defines a set of rules to check on a particular meta-class of the meta-model.

I've created basic java services to log messages with different severities. These messages take as parameter the condition to check (a boolean) and the text to display if this one is false.

We knows that a script may be called if the « file » parameter is setted or if an other script calls it. We also knows that this parameter is used to decide to generate or not the code and to specify where it has to be generated.
In our specific case, we want to activate rules sets without generating code. So, each script owns a « file » parameter which is a call script returning nothing and which gets the particularity to call back the right script to run the rules to apply.

You can see a demo with an example of a template in order to validate a State Machine UML2 model:


The benefit of this way is really the easiness to define the rules thanks to Acceleo Language.
The generic rules (in this example, on the « Named Elements ») apply only on the objects not concerned by a specific rule (inheriting concept).

The only concern is about using the result of the validation to decide to generate or not, for example. Here, it's not simple to do that because, in a chain, every templates which are called are not able to directly communicate between them.

by noreply@blogger.com (Cerdicus) at December 10, 2007 07:55 AM

September 07, 2007

Statechart diagram generation

As a proof of concept, we create an Acceleo generator for UML2 Statechart diagram.
This generator has been made as a TopCased work (to be include, I hope, as a built-in TopCased generator).

Here is a nice flash demo: http://www.obeo.fr/download/transfert/capture1.htm

The source code generated uses Smuc framework, but it will be easy to target any standard technology (like C, Java, ...).
Thanks to Cedric Notot for all his work on this generator and who experiment new strategies for models validation with Acceleo.

by Etienne Juliot (noreply@blogger.com) at September 07, 2007 11:26 AM

May 16, 2007

MDA vs MDSD

I will start this blog by debating on differences between MDA (Model Driven Architecture) en MDSD (Model Driven Software Development) approaches. One could see MDSD as a deprecated version of the standard MDA. But another will see that MDSD has a wider scope than MDA. So I will try to explain what MDSD embraces and what's it is useful for.


First, let's compare what we've got on both sides. For MDA :

  • Standardized by the OMG since 1999

  • Based on XMI, MOC, OCL, UML...

  • Aims at automating all transformations between models to code, suppressing the coding part

  • Driven by the Y cycle and CIMs, PIMs, PSMs and PDMs

  • Tries to define standard meta-models shared across industry domains

For MDSD :

  • Based on the ideas brought by MDA

  • Not bound to its standards : can be any meta-model like DSLs, not only UML and profiles

  • Try to promote customized DSLs answering to each need, not assuming that every body will have the same needs on a given domain

  • Use models as abstraction and still leave a place for development tasks

  • Defines its own ideas of PIMs and PDMs depending on projects or needs contexts

From the use I can see in my job,the MDA standard is more something made for the big players in the industry, whereas MDSD is a more flexible approach that can be used by a larger group of users, less attached to standards and with smaller scale needs.


To conclude, I will just say that MDSD is a pragmatic way of using MDA concepts. With the new wave of tools such as Eclipse, EMF, GMF, Acceleo..., you can use these kind of approaches on large scale projects and I would recommend anyone to have a deep look into it as it really helps to cut down software development costs !

And the quickest way to do that is to try it using Acceleo I think !


by noreply@blogger.com (Stephane LACRAMPE) at May 16, 2007 09:10 AM

May 14, 2007

EMF on Rhapsody

Have you ever see EMF with Rhapsody ?

Let's see : http://www.rhapsody.com/emf

Is that you, Ed, with the black tee shirt ?
Very good :)

by Etienne Juliot (noreply@blogger.com) at May 14, 2007 04:34 PM

May 04, 2007

My son, you will be a chief !

Students : stop to think you NEED to be a project chief to be someone !

I see lots of young IT engineers, who just come out from their high schools, and want to manage projects. Oh yeah, Excel, MS Project should be very exciting !

NO ! You can have a very good job and a very good carrier with some technical skills. IT is complex, and architecture is not easy for everybody. It's fun, there are some evolution every day, and companies needs some very good people to understand and create good architectural designs.

IT architecture is one the more interesting job I even see.

by Etienne Juliot (noreply@blogger.com) at May 04, 2007 01:06 PM

April 20, 2007

Work on Acceleo 2

Acceleo (http://www.acceleo.org) is a very impressive code generator.
I work on it since 2005 (v0.0.1 !!).

Acceleo v1.0 was born in 2006/04/01, with many features and a very good EMF and Eclipse integration.

Acceleo v2.0 will be the major evolution of Acceleo with 2 main features :
- modules generator can be deployed as real plugins
- open source modules farm


Acceleo v2.0 should be release on may 2007.

by Etienne Juliot (noreply@blogger.com) at April 20, 2007 04:54 PM

Blog new born

After an unsuccess try of creating my blog, I think this time will be the good one.
As you see, I decide to speak english.... Or try to speak english !

I will speak about :
- MDA
- IT Architecture
- Acceleo
- DSM

by Etienne Juliot (noreply@blogger.com) at April 20, 2007 04:46 PM

June 14, 2004

Mozilla 2

Voici une URL qui cause de Mozilla 2 :
http://weblogs.mozillazine.org/roadmap/archives/005689.html

On y apprend par exemple :
- python supporté dans les pages web
- javascript 2.0
- début de support d'XForms (coool)
- SVG supporté (pour moi, la plus grosse nouveauté)
- XUL 2 (et standardisé)
- xulrunner
- bien sur, utilisation de Firefox, Thunderbird, Sunbird et Nvu.

by Etienne Juliot (noreply@blogger.com) at June 14, 2004 01:10 PM

June 04, 2004

javafr.org au point mort

Il y a maintenant 1 an 1/2, j'ai acheté le nom de domaine javafr.org et j'ai commencé une maquette avec Spip pour créer un site de news dy style a19s.com ou linuxfr.org, sur Java.
Je l'avais fait hébergé par tuxfamily, mais l'histoire a voulu que tuxfamily ferme ses portes.

Depuis, je n'ai pas trouvé le temps de m'y remettre. La backend est prêt (merci spip), il reste encore le squelette des pages web à mettre au point (CSS à gogo). Il faut aussi que je remette en place la redirection DNS. En fait, j'espère qu'en maintenant ce blog, ca me donnera le courage de m'y remettre.

Si quelqu'un d'autre est partant pour l'aventure, qu'il me contacte. C'est bien plus motivant à plusieurs.

by Etienne Juliot (noreply@blogger.com) at June 04, 2004 05:13 PM

Premier pas en conteneurs légers

Je suis en train de me former aux conteneurs légers. Ca semble être un sacré changement de mentalité par rappot aux EJBs.

J'aimerai pouvoir une chaine complète modélisation des besoins -> modélisation UML -> génération code -> plugins Eclipse d'aide au dév -> résultat.
J'ai essayé :
- EMF : cela semble surtout dédié à servir de base à d'autres outils (enfin pour l'instant).
- Middlegen : partir de la base pour modéliser le métier, c'est pas trop mon truc (je préfère faire de l'orienté objet qui se mappe dans une BD plutot que l'inverse)
- XDoclet : j'aime pas trop le mélange induit par l'ajout en javadoc de tag de déploiement. Je préfère garder le Java propre. (mais je n'y suis pas fermé pour autant)

Pour les frameworks, je vais essayer :
- hibernate
- spring
- struts / jsf

Pourquoi ces choix ? Et bien parce que les EJB3 semblent prendre cette voie. Donc, autant anticipé !!

Rendez vous d'ici quelques jours (j'espère) pour mes premières impressions.

by Etienne Juliot (noreply@blogger.com) at June 04, 2004 05:04 PM

May 12, 2004

Et c'est parti

Et voici mon premier post sur mon tout nouveau Blog.
Je te souhaite bon anniversaire, pour tes 5 premières minutes !!

Je ne suis pas encore très sûr de l'utilisation que je vais en faire. J'y parlerai sûrement technique et informatique, mais ptet aussi sur des sujets annexes (comme un peu tous les blogs qu'on peut trouver sur le web).

Wait and see ... et longue vie à juliot.blogspot.com !!

by Etienne Juliot (noreply@blogger.com) at May 12, 2004 05:01 PM

Last updated:
January 06, 2009 03:00 AM
All times are UTC.