Monday, June 22, 2009

New .NET Floating Clock in the RIA Demo

Last week the Magic Software's .NET RIA Demo was upgraded to uniPaaS V1.8 and already was enhanced with a few .NET integration examples, showing mostly .NET controls.

The RIA Demo now has another .NET integration example showing the integration of a .NET assembly that displays a .NET form.

The example is a simple one displaying a floating clock. From the uniPaaS form you can control the visibility of the clock'c form and its opacity.

The following images demonstrate two levels of opacity controlled from the uniPaaS demo window (the clock floats above the window's title):

You can also drag the clock display by pressing the mouse button on any of the digits and moving the mouse pointer anywhere on your desktop.

Wednesday, June 17, 2009

UniPaaSão Mobilizão

Bookmark and Share

I know no Portuguese, but I love the way this language sounds and how many words have this cool long ending of "ão", like coração (Heart).

I very much liked the new post on YouTube featuring uniPaaS mobile RIA demo the way it was demonstrated to a large Brazilian audience by my esteemed colleague Helio Diamant.
I hardly understood anything Helio said but indeed a picture is worth a thousand words and more so a movie clip.

It was very encouraging to see how well the application performed considering the lame machine the server process runs on at Magic Software HQ building, on the other side of the globe.

Well done Helio :-)

Wednesday, June 10, 2009

Understanding the Richness of RIA

Bookmark and Share
A Cool Presenter
I just finished viewing a presentation of Jamie Cool, a Program Manager at Microsoft Corporation, that took place in the Professional Developers Conference of October 2008 (PDF2008).

The title of the presentation is "Microsoft Silverlight: Building Business Focused Applications" so it was very interesting for me to examine how SIlverlight deals with the requirements of developing business applications.

I must say that I was quite surprised by the introduction of Jamie Cool to the nature of RIA when it comes to business application. That was of course after his introduction of himself talking about how cool is last name is which is indeed "Cool".

When I say 'Rich Experience'...
The interpretation of Richness part of RIA differs in different contexts of use. Many think that elaborated graphical elements & design capabilities, animation, and video & audio streaming constitute the required Richness of RIA.
This is true when it comes to commercial, social, or gaming related applications. But this is not the case when it comes to business applications.
Also Jamie Cool himself, a SIlverlight evangelist, could make the required distinction between the contexts of use, and here is his definition of Rich Internet Applications:

"If we're gonna be talking about business application, let's talk about what do they need. And what do they need that can make Silverlight a good platform for them. Well, you know, the first thing they need are 'Rich Experiences'. When I say 'Rich Experience' I don't mean, you know, buttons shaped like fishes, or things spinning around or the, you know, ultimate animation. What I really mean is "interactive UI". Odds are you're applications has a bunch of data in it. You need users to be able to manipulate that quickly without having to constant refreshes. Without having to do multiple clicks to accomplish a task. You need a very interactive compelling UI for that type of scenario." (Time mark 00:03:10)

You can hear this part yourself (excerpt taken from the above link

In this respect Jamie is right on the money in describing the Richness business applications require. However judging by the cumbersome development paradigm Silverlight offers compared to uniPaaS, I am not sure that Silverlight is a good platform for business applications, as Jamie suggests.

RIA Slide taken from Cool's presentation

That's 3GL for Ya
When you will get to Time mark 00:10:30 in the presentation, you can check out the complexity Silverlight presents to accomplish data display. As it was always the case, there is a kind of pride in 3GLs, such as ASP.NET and Silverlight, of the myriad options a programmer has and needs to pick from. The liberty of technological choices stands at the heart of all 3GL's complexity.
uniPaaS productivity approach suggests that you do not need to pick any technology to accomplish your data transmission. Just define the data you want to use, and it will be transmitted automatically for you. The most appropriate technology was already selected.

Dealing at the level of sockets, WCF Duplex, Direct HTTP requests, REST, XML structures is great technological fun, but organizations need their projects to be delivered on time and on budget. Deliver your project before schedule and then have a lot of fun time exploring technologies.

The great Distance between Just Displaying Data to Actually Doing Something
The code required to just display data on the browser is not trivial, also in Silverlight. The worst part of it is that the gap between the data display to data input, validation, server update, business rules employment, and elaborated data entry UI, is substantial. Take your time to go over this presentation to get a sense of how much script and code are required to produce the basic functions of a business application (Scrolling, Paging, Filtering) that are so trivial to accomplish in uniPaaS.

It is even more amazing to see that business application development principles that are integral part of uniPaaS ever since its predecessors, such as field validation settings, are presented on October 2008 as the future plans for Silverlight.

Client code and Server code – Unite !!!
Silverlight is indeed making progress in enabling the client code to hook and access the application server code. But still the paradigm suggests separated development of the two entities, which are on the one hand tightly coupled, not leaving room for future replacement of one of the tiers, and on the other still keeping the cumbersome development of the two separated code entities.
uniPaaS offering the required business application richness and a unitary development paradigm is definitely the right tool for the job.

Dressing up for the Occasion
Now, don't get me wrong, Silverlight is extra cool. With it you can produce really breathtaking UI. But as Jamie said, your business applications require a different kind of UI. Using Silverlight or Flash for your business applications is like wearing your best tuxedo or evening gown to the office – every day of the week. If you are going to work, just put on a normal suit, or in some parts of the world (like the one I am coming from) just put on your jeans and T-shirt and spend more time working than dressing up.

Now that we understand what sort of UI we need, then why invest valuable time in coding client module and server modules as Silvelight does. Why not do the same with less. Do the same with uniPaaS.

P.S. - Time for RIBA
I do believe that it is high time for a new IT acronym to be introduced – RIBA – Rich Internet Business Application.

Bookmark and Share

Tuesday, June 2, 2009

uniPaaS RIA Vs. Adobe Flex – Doing The Same with Less

Bookmark and Share
I know no Portuguese, but I love the way this language sounds and how many words have this cool long ending of "ão", like coração (Heart).
Browsing through competitors web sites and blogs in order to get better understanding of their offering I came upon a sample for flash based RIA and I was quite amazed with the amount of code and hassle one needs to go through to produce a very simple task in Flash compared to straight-forward manner of achieving the same functionality in uniPaaS RIA.

This introduction level example of Adobe perfectly illustrates the complexity imposed by the use of diverse technologies for implementing RIA, where the development is based on separated client and server side technologies. The Adobe flex example shows how even for the simplest task one needs to break the task requirement into 3 parts:

1. Client Side Logic
2. Server Side Logic
3. Client\Server Communication

Implementing the same example in uniPaaS RIA shows how the implementation is greatly simplified having a unitary technology and development paradigm.

Compared to the more than 50 lines of code required in Adobe Flex, uniPaaS RIA achieves the same with 6 lines of operations and 6 expression rules. And this is for the simplest task.

View the following online presentation to see all screens and code of both Adobe Flex and uniPaaS (It is recommended to view it in Full Screen mode).

You can also view the presentaion at Zoho

Why waste valuable time and effort where you can achieve the same result with much less work.