<?xml version="1.0" encoding="utf-8"?>
<feed version="0.3" xmlns="http://purl.org/atom/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:lang="en">
<title>Frederic Barachant&apos;s Blog</title>
<link rel="alternate" type="text/html" href="http://weblogs.java.net/blog/pepe/" />
<modified>2008-06-25T12:05:26Z</modified>
<tagline></tagline>
<id>tag:weblogs.java.net,2008:/blog/pepe/352</id>
<generator url="http://www.movabletype.org/" version="3.01D">Movable Type</generator>
<copyright>Copyright (c) 2008, pepe</copyright>
<entry>
<title>MyProject.java How cute would that be ?</title>
<link rel="alternate" type="text/html" href="http://weblogs.java.net/blog/pepe/archive/2008/06/myprojectjava_h.html" />
<modified>2008-06-25T12:05:26Z</modified>
<issued>2008-06-25T10:46:11Z</issued>
<id>tag:weblogs.java.net,2008:/blog/pepe/352.10024</id>
<created>2008-06-25T10:46:11Z</created>
<summary type="text/plain">ICANN is preparing to let companies have their own TLD. How interesting that information can be for us?</summary>
<author>
<name>pepe</name>

<email>frederic@barachant.com</email>
</author>
<dc:subject>Business</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://weblogs.java.net/blog/pepe/">
<![CDATA[<p>Liberating TLDs gives companies the opportunity to open a top level for federating and branding products, communities.<br />
I doubt microsoft ever get one, whatever.microsoft is too long and anything.msft is much too obscure.<br />
But, sun opening a .java TLD would for sure be a great opportunity for them and us. After all, sun made the move of changing sunw to java, why not getting their own TLD, now?</p>

<p>Not only this would be a branding and community distinction move, it could also be a slight revenue source.<br />
Would i pay a fee for that? Yes, sure (but don't feel obligated :) ). I would happily pay a small amount of money to be able to host my projects under nice, short and meaningful domain name. For example, swash is taken in each and every TLD and under all combinations possible. http://swash.java would make my day. Pretty much.<br />
I would get at least four to five domain names if they existed, each for one of my projects. But would i pay for a subdomain as it is currently the case for the projects under java.net? Certainly not so a general domain (let's say projects.java ) would be of limited benefit.<br />
Should those domains strictly limited to java related projects? Certainly. How to handle and regulate? I don't know, but for sure it would be necessary to be strict. Those domains ought to also be strictly handled to avoid typical domain name plagues as squatting and such.</p>

<p>Perl people have the fun to benefit of an appropriate TLD (while not one of theirs). perl.pl is the most appropriate domain name i have ever seen.<br />
</p>]]>

</content>
</entry>
<entry>
<title>Achievement and a look back.</title>
<link rel="alternate" type="text/html" href="http://weblogs.java.net/blog/pepe/archive/2008/04/achievement_and_1.html" />
<modified>2008-04-29T11:26:04Z</modified>
<issued>2008-04-29T09:59:50Z</issued>
<id>tag:weblogs.java.net,2008:/blog/pepe/352.9622</id>
<created>2008-04-29T09:59:50Z</created>
<summary type="text/plain">I recently deployed a new application to a customer&apos;s facility. Now that everything is fine there, i took a look back and watched what i did last year. One thing is sure, i could not have done it completely alone.
To resume, i love you all. Yeah, i mean it.</summary>
<author>
<name>pepe</name>

<email>frederic@barachant.com</email>
</author>
<dc:subject>Open Source</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://weblogs.java.net/blog/pepe/">
<![CDATA[<p>I entered a new company a bit over a year ago. Came back from Paris to my beloved French Riviera. Calanques, pastis and aïoli, i'm back.</p>

<p>In this company i am developing a new version of an old foxpro product which displays performance information in movie theaters. The old product -which i respect a lot- (developed in two days, sold and worked flawlessly as-is for years) had to be revamped.<br />
Company wanted a new, smart (read "sexy") display, colorful, animated, customizable, skinable, flexible. They wanted to be able to configure everything through network, never touch display machines, be able to configure all machines (potentially hundreds) from the same interface and they wanted it to be easy.<br />
At first, i had to do simple reporting, which movies were on air, in what hall, bla bla bla. It ended with a program that was able to display on multiple monitors a playlist of modules that displays completely different types of information (advertising, path to halls, synopsis of movies to come, ....). All modules had to be layered (clock over everything, for example), but everything had to be customizable, startable anytime upon simple action, independent and non-intrusive, animated, screen resolution independent, displayable in portrait or landscape independently on any monitor, ...<br />
...<br />
...<br />
So i was there with a huge list of tasks. Excited on one side, totally frightened on the other. What i had to create became no-less than <a href="http://www.scala.com/digitalsignage/index.html">scala infochannel</a>, I was pretty far from the ugly ticker they showed to me.<br />
...<br />
...<br />
...<br />
One year passed, it's spring and weather is getting better. I am at Deauville, north of France, installing my software in my first movie theater. I wanted to be there for the first customer so i got out of the office to install everything myself.<br />
I am now a bit over 110K LOC, my netbeans RCP program works very well. It displays information with java3D on up to 4 full HD monitors at around 60 fps on a roughly standard PC. Everything is as wanted, configurable through the net, easy, interactive, sexy.<br />
Customer is happy and wishes to have more displays as i leave and take train to get back to the office. I feel nice and happy of my work, life is fine.</p>

<p>Life was almost fine, in fact. My dell laptop inverter broke, which left me with a dark screen and nothing to do for hours.<br />
This is where i thought about an old song from <a href="http://en.wikipedia.org/wiki/Information_Society_(band)">information society</a>. "where would i be without IBM". This is something a friend forced me to listen once or two about a decade ago, as an introduction to a discussion on what personal computer became since i started programming, around 1983.(time flies)</p>

<p>I thought, "where would i be without Open Source?".<br />
Where would this program be if the huge list of libraries i used were not there?<br />
Let's face it, i would certainly have created an other ugly ticker.<br />
Where would most of nice and interesting programs of these days be without opensource? Almost nowhere. <br />
Force of opensource is that we, individuals and small companies can compete with multimillion budget projects. We are a strong team of millions developpers, working all the time, everywhere. Each day, libraries become better or die, this is a very active and alive ecosystem. In a very few years we became surrounded by so many good APIs for each and every thing we need that it became easy and fast to create programs of great quality.<br />
An extension of this question, of course, is "where would i be without ibm, sun, microsoft?"<br />
What would be our real force without their billions? What would even our computers look like if Microsoft were not such a dominant company?<br />
Their competition feeds us with will, their money federate us.<br />
I believe in open source, but not as a final goal. Both models need their counterpart, none being all white/all black.</p>

<p>So, here i want to send an electronic thank/kiss/hug/beer/handshake to all those that created the libs/specs for my program. You are part of my daily happiness:<br />
Java SE platform, Netbeans RCP, java3D team, java2D, ImageIO, JPA/Toplink, JCE/BouncyCastle, derby, JMF, Fobs4JMF, Com4J, glassfish, JMS, JMX, hudson, webstart, ...</p>

<p>... and of course, Sun, Ibm, even Microsoft.</p>]]>

</content>
</entry>
<entry>
<title>Interactive splined animation: first example</title>
<link rel="alternate" type="text/html" href="http://weblogs.java.net/blog/pepe/archive/2008/03/interactive_spl.html" />
<modified>2008-03-04T09:36:41Z</modified>
<issued>2008-03-03T05:45:48Z</issued>
<id>tag:weblogs.java.net,2008:/blog/pepe/352.9303</id>
<created>2008-03-03T05:45:48Z</created>
<summary type="text/plain">Splines project now has its first incarnation within swash and the example chosen is the perfect one. In a previous blog, Tim Bourdreau asked for the difference between splines project and java.awt.GeneralPath. Here i show some of the main reasons...</summary>
<author>
<name>pepe</name>

<email>frederic@barachant.com</email>
</author>
<dc:subject>Swing</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://weblogs.java.net/blog/pepe/">
<![CDATA[<p><img border="" style="margin: 5px; float: right" class="" alt="the new demo tab" src="http://weblogs.java.net/blog/pepe/archive/swash_images/swashSplinesTab.PNG" title="" />Splines project now has its first incarnation within swash and the example chosen is the perfect one.</p>

<p>In a <a href="http://weblogs.java.net/blog/pepe/archive/2008/02/splines_project.html">previous blog</a>, Tim Bourdreau asked for the difference between splines project and java.awt.GeneralPath. Here i show some of the main reasons why generalPath could not be used:</p>

<ul>
    <li>Path can be changed anytime and displayers update themselves upon modification. No hassle.</li>
    <li>Modifications on paths are very simple to operate</li>
    <li>Having seperate splines for each ordinate makes it easy to change direction of the thrown gear. Using GeneralPath would have been a nightmare.</li>
    <li>Sections of the splines are independent on each ordinate.</li>
    <li>Velocity of the gear can easily be set and changed.</li>
</ul>

<p>Demo consists of a gear that can be thrown to the wall when pressing a button. Gear bounces on bottom of the zone then on the wall and bounces back. Wall position can be changed anytime (even when animation is running, which can be funny on some cases when the gear bounces two times on wall :) ) and you will see splines being adapted in realtime.</p>

<p><br />
There are two goals in this demo; show why splines project is done like that and show how to animate within swash.</p>

<p><br />
Kudos go to the java2D and swing teams. While the animation runs at 50fps, there are no hiccups and cpu used is at 0%. Antialias is at max, and the gear rotates so it ought to take power from my old prescott and my even older ATI 9600.</p>

<p><img border="" style="margin: 5px; float: right" class="" alt="the hit logo" src="https://swash.dev.java.net/files/documents/5283/40804/logofull64.gif?p=blog007" title="" /><br />
<a href="https://swash.dev.java.net/SwashDemo.jnlp">WebStart the demo !</a><br />
<a href="https://swash.dev.java.net/">Check the project page for swash</a><br />
<a href="https://splines.dev.java.net/">Check the project page for splines</a></p>

<p></p>

<p></p>

<p><br />
</p>]]>

</content>
</entry>
<entry>
<title>Splines project on a good path</title>
<link rel="alternate" type="text/html" href="http://weblogs.java.net/blog/pepe/archive/2008/02/splines_project.html" />
<modified>2008-02-27T06:43:55Z</modified>
<issued>2008-02-27T06:43:48Z</issued>
<id>tag:weblogs.java.net,2008:/blog/pepe/352.9272</id>
<created>2008-02-27T06:43:48Z</created>
<summary type="text/plain">Splines project got published. Sources, a webstart demo using the integrated splines editor prototype (which only acts as a viewer at the moment) and a two liner example are online.</summary>
<author>
<name>pepe</name>

<email>frederic@barachant.com</email>
</author>
<dc:subject>Community: Java Tools</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://weblogs.java.net/blog/pepe/">
<![CDATA[<p><a href="https://splines.dev.java.net">Splines</a> project is my latest contribution to oss.<br />
It is aimed at helping people use, display and edit splines without too much hassle.</p>

<p>The main entity of the project is Curve, which is a list of CurseSection objects. Three types of sections can be added at the moment, but the system can accept new implementations anytime (you can already add yours).<br />
Actually implemented CurveSection types are:<br />
<li><br />
<ul>linear: a direct interpolation between previous section and current</ul><br />
<ul>cubic: a cubic spline interpolation between previous section and current</ul><br />
<ul>quadratic: a <a href="http://en.wikipedia.org/wiki/Quadratic_spline">quadratic spline</a> interpolation between previous section and current</ul><br />
</li></p>

<p>Taken from the <a href="https://splines.dev.java.net/SplinesDemo.jnlp">webstart Demo</a>, here is how i created the Curve:<br />
<pre><br />
Curve = new Curve( new LinearSection( 0, 0 ) ) );<br />
curve.addSection( new LinearSection( 1.0, 5.0 ) );<br />
curve.addSection( new QuadraticSection( 3.0, 4.0, 2, 4 ) );<br />
curve.addSection( new CubicSection( 6., 2., 4, 5, 5, 0 ) );<br />
</pre><br />
Cannot be easier.</p>

<p>and here is how i displayed the curve:<br />
<pre><br />
this.curveViewControl.setCurve( curve )<br />
</pre><br />
Once again, cannot be easier.</p>

<p>Curve and its sections can be listened for modification, curve can be serialized (listeners will not) and the whole is easy to use and fits in a very small single jar.<br />
Sections can be replaced by others, and section objects can be modified externally. Library is totally threadsafe and a curve or its sections can be used and modified from multiple threads without collisions.</p>

<p>Plans for the future are to enhance the swing component to enable pluggable editors for curves, pluggable renderers, and before all more complete refreshing after edit.</p>]]>

</content>
</entry>
<entry>
<title>Realtime Animations within matisse</title>
<link rel="alternate" type="text/html" href="http://weblogs.java.net/blog/pepe/archive/2008/02/realtime_animat.html" />
<modified>2008-02-14T06:53:30Z</modified>
<issued>2008-02-14T06:37:57Z</issued>
<id>tag:weblogs.java.net,2008:/blog/pepe/352.9199</id>
<created>2008-02-14T06:37:57Z</created>
<summary type="text/plain">A bug corrected in latest netbeans 6.1 enables swash to display its animations realtime while you edit within matisse. Great effect and good step ahead in productivity.</summary>
<author>
<name>pepe</name>

<email>frederic@barachant.com</email>
</author>
<dc:subject>Swing</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://weblogs.java.net/blog/pepe/">
<![CDATA[<p>A bug corrected in latest netbeans 6.1 enables swash to display its animations realtime while you edit withing matisse. Great effect and good step ahead in productivity.</p>

<p>Thanks goes to Tomas Pavek for that. Even if the <a href="http://www.netbeans.org/issues/show_bug.cgi?id=97272">bug report</a> was a bit old, he fixed it as soon as he got his eyes on it and i admit i really waited for it.</p>

<p>So, here is a little swik capture that shows how animated components are shown. Unfortunatly, swik goofed a bit and does not show animations correctly as they are perfectly smooth on my screen, but you will see them jerk. Bah, i'm so happy i do not really care.</p>

<p>Fun thing is that you can edit, duplicate, add components over and under animations and matisse does not matter. Everyting just animates smoothly while you setup your UI.</p>

<p>Lovely day. :)</p>

<center><OBJECT CLASSID="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" WIDTH="834" HEIGHT="599" CODEBASE="http://active.macromedia.com/flash5/cabs/swflash.cab#version=7,0,0,0">
<PARAM NAME=movie VALUE="http://frederic.barachant.com/blog/capture1.swf">
<PARAM NAME=play VALUE=false>
<PARAM NAME=loop VALUE=false>
<PARAM NAME=wmode VALUE=transparent>
<PARAM NAME=quality VALUE=low>
<EMBED SRC="http://frederic.barachant.com/blog/capture1.swf" WIDTH=834 HEIGHT=599 quality=low loop=false wmode=transparent TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash">
</EMBED>
</OBJECT></center>
<SCRIPT src='http://frederic.barachant.com/blog/capture1.js'></script>
]]>

</content>
</entry>
<entry>
<title>On the reuse side of things</title>
<link rel="alternate" type="text/html" href="http://weblogs.java.net/blog/pepe/archive/2008/02/on_the_reuse_si.html" />
<modified>2008-02-12T10:24:24Z</modified>
<issued>2008-02-12T10:24:07Z</issued>
<id>tag:weblogs.java.net,2008:/blog/pepe/352.9182</id>
<created>2008-02-12T10:24:07Z</created>
<summary type="text/plain">Swash already had part of its code split to a seperate project, one with a pretty infamous name: preciseInternalDate.
Swash will see an other split: splines!
A good thing at the moment... but is it really?</summary>
<author>
<name>pepe</name>

<email>frederic@barachant.com</email>
</author>
<dc:subject>Programming</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://weblogs.java.net/blog/pepe/">
<![CDATA[<p><a href="https://swash.dev.java.net">Swash</a> already had part of its code split to a seperate project, one with a pretty infamous name: <a href="https://preciseinternaldate.dev.java.net">preciseInternalDate</a>.<br><br />
Swash will see an other split: <a href="https://splines.dev.java.net">splines</a>!</p>

<p>While i was finishing the splines part of swash, i said to myself that this could easily be extracted to an external package that could be useful to other projects than swash. In fact, i have other projects that would benefit from it, so even within my own projects that would be fine.<br />
Then i thought of other parts that could be useful and could be extracted. But as i was thinking deeper on what could be externalized and reused i wondered about the burden of reuse.</p>

<p>How much does it burden to be smart and fancy? When is it wrong to do it right?</p>

<p>I mean, i -more than once- grumbled over the fact that i needed activation.jar to use javaMail. What if to use one API you suddenly need to add six or eight jars? Swash actually has two jars, soon three. We are all taught the wonderful advantages of object orientation like ease of reuse, but even if not pushed to an extreme, i see it as a burden. Is it acceptable? I don't know.</p>

<p>Next thing i could export to an external lib is interpolation, but as i will soon support java3D canvases within my rendering pipeline, its jars will become somewhat a dependency of swash. (but no, i certainly do not intend to see everyone forced to install java3D. Not having it will simply not render that part of the graph). Only those two things add at least 4 jars (and native libs for java3d)<br />
Supporting inclusion of svg will also add its own pack of jars.</p>

<p>Sure, JSR-277 could solve the problem and make it transparent for developers to include anything but it's not there. And until it is really everywhere and used by everyone -which imho means years- there will be a "legacy mode" to support.</p>

<p>On an other hand, having no real central repository and no real way to handle dependencies makes it a harder decision to whether i should include the whole bang or handle their inexistence gracefully. <br />
Solution number two might turn in a coding nightmare, while solution number one will certainly add unwanted burden to swash.</p>

<p>Bubonic plague or cholera?<br />
What could be the jar count to choose between one or the other?</p>]]>

</content>
</entry>
<entry>
<title>No javaone info here, rest your mind.</title>
<link rel="alternate" type="text/html" href="http://weblogs.java.net/blog/pepe/archive/2007/05/no_javaone_info.html" />
<modified>2008-06-24T19:17:03Z</modified>
<issued>2007-05-13T11:18:59Z</issued>
<id>tag:weblogs.java.net,2007:/blog/pepe/352.7387</id>
<created>2007-05-13T11:18:59Z</created>
<summary type="text/plain">Just a follow-up of what is going on with Swash. This post has absolutly nothing to say about javaone.</summary>
<author>
<name>pepe</name>

<email>frederic@barachant.com</email>
</author>
<dc:subject>Community: JavaDesktop</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://weblogs.java.net/blog/pepe/">
<![CDATA[Javaone is everywhere, looks like i will have to get there one time, just to know how it feels. Too bad i have to cross the ocean for this ( <em>/me dreams of an european javaone...</em> ).<br>
Here is a totally non J1 related post, for your minds to rest from that avalanche of posts, news, information of all kinds.<br>
<br>
I have been very silent for latest weeks, due to huge lack of free time.<br>
Nevertheless, there are things being prepared within the rare  bits of free time i can gather and when my day job gives me an occasion to work on domains that crosses my night job ones.<br>
<br>
I am investigating an XML file type to save timelines. This will permit the creation of an editor within netbeans to edit/save timelines in a codeless mean, all graphically.<br>
This XML will be read by a Timeline factory and give you the possibility to load different timelines with same root code. There are still things to solve with the links to swing (how do i define which JComponent of my swing program will be linked to my <em>DisplayableActor</em>? how will i know there are <em>DisplayableActor</em>s to feed? What about listeners, ...)<br>
<br>
I am also thinking about making the XML read and compilation streamable, that is, like flash, some parts of the timeline could play without all media being loaded. For this feature, an asynchrounous feeder will be created, which will add actors and media to the timeline. I would like the timeline to be detached from the feeder concept, so maybe reference to the feeder will be a timeline-level variable. There are issues to resolve, as to i would not be able to limit count of feeders to one for the timeline, which could result in inconsistencies if multiple feeders are present and need to be accessed. But, maybe it would be interesting to have multiple feeders. Analysing the timeline flow and creating tree of feeders could optimize pre-loading to a great level.<br>
<br>
I am preparing the source code for release. It is not complete, needs documentation and cleaning, but it is now working enough and i am confident enough in it for people to read it.<br>
<br>
Debugging time related programs is very difficult. I did investigate in stoppable timers within jpda/jvmti, but it seems that there are not much people in that field. Once i have enough time, i will get in that deeper.<br>
<br>
I am preparing a serie of blogs with practical examples on uses of swash, which cannot easily be solved by other solutions around. This serie will be preceded by an entry where the spirit and inners of swash will be described.<br>
An article is being prepared too, but as you can imagine, it will still take some time before it is ready.<br>
<br>
Oh, and swash can be accessed <a href="https://swash.dev.java.net">here</a>. Be sure to check its <a href="http://wiki.java.net/bin/view/Javadesktop/Swash">wiki too</a>.<br>
<br>
If you have been reading down there, i love you.<br>
<br>
<br>
I mean it.<br>]]>

</content>
</entry>
<entry>
<title>Does it have to be nice?</title>
<link rel="alternate" type="text/html" href="http://weblogs.java.net/blog/pepe/archive/2007/03/does_it_have_to.html" />
<modified>2008-06-24T19:17:03Z</modified>
<issued>2007-03-19T13:02:22Z</issued>
<id>tag:weblogs.java.net,2007:/blog/pepe/352.6850</id>
<created>2007-03-19T13:02:22Z</created>
<summary type="text/plain">Are programmers able to distinguish an API from the marketing? Do they need to have shine to get interested in something?</summary>
<author>
<name>pepe</name>

<email>frederic@barachant.com</email>
</author>
<dc:subject>Programming</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://weblogs.java.net/blog/pepe/">
<![CDATA[As a programmer and somewhat graphist, i tend to make things nice, or at least i take time to work a bit on presentation.<br>
But should i?<br><br>
It is always better, in my opinion, to present even the slightest example with a little image but, when is that presentation distracting from the technological point of view, or in the opposite when is the presentation hiding flaws of an API?<br>
Is it better to present something in a basic form, so that people can concentrate on what you say, or impress them with a shiny-blinking demo, then let them enter the technical part? How to be sure that they will not draw false conclusions from one or other kind of presentation?<br>
<br>
Last week, i did read the <a href="http://java.sun.com/developer/technicalArticles/J2EE/petstore/">petstore 2.0 article</a>. Then, i went to the live demo to check the result.<br>
To be honest, i first thought that there was a css problem, that it did not load and what i was watching was the 'pure' version of the website. So, i opened firebug (fabulous firefox extention, by the way) and checked for that. Unfortunatly, there was nothing wrong with the demo code.<br>
Then, well, i thought that the demo was plain ugly and i really did not understand why they left such a thing online, that ought to be used as an example for people application. Examples ought to give people some kind of envy. Envy to do the same, envy to do better, envy to use. That example just gave me a weird sensation of a cheap amateur puzzle.<br>
<br>
But, maybe i am wrong which is why i am questionning. I did read the article and did not even took care to look at the included screenshots, so it seems obvious that non technical part did not bother me.<br><br>
Is shine needed? When does it blind, or when does it attract? Does no shine repel?]]>

</content>
</entry>
<entry>
<title>swash: second milestone and new demo</title>
<link rel="alternate" type="text/html" href="http://weblogs.java.net/blog/pepe/archive/2007/03/swash_second_mi.html" />
<modified>2008-06-24T19:17:03Z</modified>
<issued>2007-03-14T22:03:02Z</issued>
<id>tag:weblogs.java.net,2007:/blog/pepe/352.6820</id>
<created>2007-03-14T22:03:02Z</created>
<summary type="text/plain">Swash, my latest animation oriented API now has the feature that makes it ready for big things. After long and hard work, i can now have multiple timelines to show within the same display and this will change everything to it.</summary>
<author>
<name>pepe</name>

<email>frederic@barachant.com</email>
</author>
<dc:subject>Community: JavaDesktop</dc:subject>
<content type="text/html" mode="escaped" xml:lang="en" xml:base="http://weblogs.java.net/blog/pepe/">
<![CDATA[Wow, time flies.<br>
I started <a href="https://swash.dev.java.net">swash</a> over one year ago and now the baby can walk. Not only it walks, but the second version of the webstart showcase makes it almost run.<br>
Oh, that was not one year full, i often took big breaks, but it is here. It finally came smoother than i expected, but still worse than it could have been in a perfect world.<br>
<br>
Before i really started talking about my project, i wanted it to be able to offer a wide enough range of functionalities, and over all, i wanted it to be able to theoratically compete with flash on the animation part, but also with the ability to perfectly integrate within swing.<br>
And it really came out in a great shape. Not only i can have an unlimited animations scheduled by a single thread, relatively simple and concise class count, but the layering system is globally extremely cool too. Next steps, besides adding xml timeline format and doing the netbeans editor will be pluggable non-mutable modifiers, svg support, image animation support, 3D support, sound, and more pixel filters and effects. <br>
<br>
I am pretty happy, i admit. Oh, not because of the step accomplished, but because of the ones to come. <br>
Now, it is time to make it display and animate better things than rotating bitmaps. Time to make useful things.<br>
<br>
Java on the desktop is getting better each day and my days are getting  just as well...<br>
... and that is just proportional to the shortness of my nights.<br>]]>

</content>
</entry>

</feed>