Rico 2.0 rc1 released

Rico 2.0 release candidate 1 has been released. The zip file is available on SourceForge:

http://sourceforge.net/projects/openrico/

Matt Brown - Rico Committer

This is a much belated welcome to Matt Brown into the Rico team as a core contributer.

Matt has done some great work extending the LiveGrid, adding new components, and helping get the momentum back into Rico 2.0.

Thanks and welcome Matt.

Current Build 53 Available

current_buld is updated.

Includes many bug fixes and updated html example code
Next update will include additional component examples along with some new content transition effects.

Update: Ealier downloads may have received an older cached version. Confirm that the Ricobase.js has version current_build-53 specified.

Shrinking Accordion Size

If you have been watching the current_build, you will have noticed that the accordion is getting smaller and smaller.

The original version from 1.1 was over 200 lines of js code. The first version we put into our partial 2.0 build was not much over 50 lines. The latest version consists of two methods with a single line of code each. This shrinkage of size is contributed to the behaviors that are being abstracted out to allow easier construction of custom components (btw, the latest version is better at managing nested contents on IE and Firefox).

As more content gets added to the 2.0 build, you will see more emphasis in these behaviors. We will be showing how to use these to build custom components as well as how the behaviors can be used on a page where a component might be too heavy handed.

Firebug

I you are doing javascript (which is my assumption if you are reading this blog ;) ) and not using Firebug yet, then quickly introduce yourself to it.
Here is a great and timely article to get you started.  I have been using Firebug for a while now and learned some new stuff. Cool!
And here is another good article.

Firebug is the tool that I recommend to anyone that is having problems with their javascript. It is also awesome for debugging Ajax code - you can trace the Ajax calls and inspect their impact on the DOM model as well as do detailed debugging.

So, if you are not using Firebug, why not?

Current Build - Available Again, but…

The current_build download will now be available.

We will be using the current_build to get feedback on portions of the new behaviors of Rico 2.0. It will not represent the complete library and will not have all the Rico 1.1 behaviors until we get ready for the alpha release.

For now, you can check out a cool new Accordion with new Animation and PanelManager classes. And best of all, examples are included in this and future downloads.

Future Direction

I will be talking about the future direction for Rico over my next few posts. Here is what I plan on covering.

    1. Goals
    2. Rico’s Future With Other Javascript Libraries
    3. Upcoming Behaviors and Features
        I would love to hear others thoughts as I start posting these.

        OK, lets start with the general goals.

        Goal 1 - Stay out of the web developers way.
        I think this is very important area that Rico can provide a lot of value. The integration with Rico should be simple and should not cause the developer to change their entire web app.

        Goal 2 - Keep it simple.
        This is a bit obvious, but I thought it to be worth repeating. I want to err on the side of being too simple of an interface and add those things that are really needed. Rico will focus on helping with the real needs. It will not try to be a kitchen sink.

        Goal 3 - Pleasure to use.
        The developer should have both a joyful and yet brief usage of Rico. It should not take long to get the desired behaviors and yet should be a joy
        to work with.

        Goal 4 - Should work well with the simplest of technologies.
        Rico should not try to replace the act of creating html and css. It should simply enhance the experience.

        Goal 5 - Should be easy to expand.
        This is an area that 1.1 is a bit weak in. The library should be simpler to expand without having to rip and tear.

        Goal 6 - Should be inovative.
        Well duh… However, I really feel that there is a lot of value for Rico to be a platform for exploring rich interaction øf content on the web. It will not be ‘just another widget library’ duplicating the desktop. Rico will continue to have unique behaviors that will push the envelope.

        Goal 7 - Should complement not compete.
        This should be evident based on the other goals, but I think it is worth repeating.

      Prototyping the future

      Well its my first post on the openRico blog, so let me introduce myself, I’m Ross Lawley, one of the developers, I joined the project late last summer - after the majority of its functionality had already been released.

      I asked to join because I was using the library and hacking it to my own needs, and I thought “why not submit back? then my changes will be available in future editions”. The benefits of this have been bi-directional, I have improved some code and my code has been improved upon! So if you’re in the same situtation and want to help with openRico then contact us, submit bugs (and fixes if you got them ;) ), write documentation, help others in the forums, etc.

      Anyway, down to business, over at encytemedia, Justin Palmer has recently posted a great article describing another new feature of the Prototype library that we will see in Prototype 1.5. Its a good read so check it out! In summary, it means if you have an Element method that returns itself, you can chain functions together. Some of the best concepts are simple! This was one of the very appealing aspects of the JQuery library.

      What does this mean for openRico? It means in the future we will be able to chain events together with less code, increasing the power of the library. For example, say I wanted to round the corners of myDemoDiv and then fade it - wouldn’t it be handy to apply it straight to the element like so:

      $(‘myDemoDiv’).Round(’roundMeClass’).FadeTo(0.2, 500, 10);

      It means less code but there may be problems in the future with namespace collisions with different libraries extending the Element object with the same method names. However, using a naming convention will prevent that.

      That’s all good - but say you want to round and fade many elements on a page - and you don’t want to repeat the same code over and over. Another new addition to Prototype Selector magic comes to the rescue - here we are applying the round and fades to all divs with the roundAndFade class:

      $$(‘div.roundAndFade).each(Element.Round(’roundMeClass’).FadeTo(0.2, 500, 10));

      Again these style selectors have been around for a while, the Prototype based behaviour library gave us the power from an early stage, but all this does mean that openRico can inherit the benefits of the increasingly feature packed prototype.

      I can’t say that the above code samples will be work in openRico2, but as development of openRico2 starts to move from conceptual ideas to prototypes, expect to see the latest Javascript techniques and goodness incorporated into the code base to ensure the codebase is clean, flexible and above all powerful.

      I’ll leave it to Richard to blog about the future direction of openRico, all I’ll say its direction is based upon innovation rather then reinvention…

      Use of ‘current-build’ download

      Over the next couple of weeks, we will start using the ‘current-build’ for posting snippets of Rico 2.0. However, it will not represent the entire library (due to integration work in progress…). So, be warned that current-build will not work as a replacement for the Rico library for a while.

      And, no, nothing is there yet… (I will give you a heads up)

      Rico 1.1.2 bug fix release

      The Rico 1.1.2 version is posted on the download page and includes a fix for the accordion panel overflow problem.

      BTW, I am working on the new Accordion for Rico 2.0. I hope to give a quick update on the new API within the next week.

      Next Page »
      1