some stuff about languages and web dev. Re: OT: Silverlight - Comments?

Andre Garzia andre at andregarzia.com
Thu Jul 19 11:56:56 EDT 2007


Viktoras,
I think you're mistaken, silverlight is an alternative to flash so it's main
point is to allow interactive vector animation. The language used for
programming silverlight is not important, the important part is the feature
set that will be bundled. The strongest point about Flash is not
ActionScript (or whatever they call it) but the fact that it is present
everywhere and that it allows good interactive animations.

This new focus on AJAX (which is not only javascript), Flash and Silverlight
is a step back in computing. We make our powerful desktops nothing but
terminals, why I need a Core 2 Duo machine to browse the web? In the other
hand, we need even more powerful servers and network infrastructure. If
cogent and level3 disconnect you can expect a lot of web apps failing for
example. All this if we're just paying attention to the "under the plate"
part of this new trend, if we look into "the food being served", which is
the web apps, may they be flash, silverlight, Air or AJAX based, we have the
same problem. Browsers can't do user interface controls right, they were not
meant for that. Of course you can spend a lot of time and tweek your flash
interface to be right, but this ignores that behind the flash and the
browser there's a whole operating system with UI Libraries and services that
could just be used.

People are putting all their strengh behind web applications. It is a new
bubble, it will explode sooner or later. Lot's been said about language X or
Y and how easy is to deliver quality web apps with them but if you look
further you'll see that the language is not providing anything, the cool
factor is provided by bundled libraries. So in the end, you conclude that
the language is not important, if the language features were important
nobody would be coding in ASP. What wins situations like that is the
features and integrations with web technology. People often overlooks this.
This is the reason WebObjects was popular and why java applictions servers
are popular too. To be succesful in the web, in my humbe opinion, you need:

- Scalable technology -
making it work for 10 connected users is easy, making it work for thousands
is harder. An engine that allows easy load balancing and makes easier to
distribute resources and instances among different servers is a must (this
is needed for enterprise customers).

- Split between Data and Presentations -
programmers can't design, designers can't code. Only Scott Rossi, Chipp and
Tereza can do both.

Splitting data from presentation is very easy, you just yell: "you,
presentation, go to your corner! You, data, go to the other corner! now both
of you think what you've done.".

The hard part is making it easy to share stuff between presentation layer
and data layer. You need to provide minimal conditionals for the
presentation layer so that it can inspect the data and decide what is the
best presentation for it. You need to allow push requests from both ends so
that presentation is able to request updated data and that if data changes
without presentation noticing it, this data can be pushed. In web apps this
means AJAX with lots of javascripts.

- The Web is your Friend -
Don't keep reinventing the wheel every time. The HTTP protocol is very
flexible and allows to easily transfer pieces of data and metadata with
ease. Even Second Life uses HTTP to transfer objects around. Use and embrace
web standards as integral parts of your engine. Make it dumb easy to work
with ftp, email, http, nntp, soap and whatever.

The keystone of this task is to provide native syntax. For example in REBOL
to send an email is as easy as:


   send "this is a test" to "andre at andregarzia.com"

Native Syntax makes it appear as if your language was made to work with
those objects from the start, like you had a plan. In the case of Runtime
Revolution this is a must, we need to keep fliping our minds around stuff
like "this is a built-in rev stuff, native syntax, now this is Ken libraries
was it a function or a handler?"

After making native syntax work, you need some kind of serialization or
representation of your engine data as the web stuff we're talking about, so
that you can pack stuff and send it around without creating your own
code/decode method.

Any language implementing the above steps is on a better position for
winning this bubble race. The aim is that those features lead to elegance
and allows the developer to have a clear mind when coding because it avoid
hacks and contexts switches such as when you need to think in terms of
functions when using a library or in terms of english-like syntax when
working with transcript, or hacks to make things scale.

I think that the first language to make web development a clear and elegant
task instead of the mess it is right now will surely win.

andre


On 7/19/07, viktoras didziulis <viktoras at ekoinf.net> wrote:
>
> for me it seems more like enhancement of browser-side scripting
> capabilities. Formerly MS Explorer was limited with jscript and
> VBscript. With silverlight one can use Javascript (well, now they call
> it AJAX...), Python, Ruby, whatever else for client-side scripting. I
> remember Netscape allowed scripting in both Javascript and Perl
> (perlscript) already in the second half of the XXth century ;-).
>
> Viktoras
>
> Stephen Barncard wrote:
> > Well, they have a mac plugin...but it crashed twice. It <is> a beta.
> > My question is...
> >
> > WHY...yet another video 'standard'? Hasn't this all been done?
> >
> >> Micro$oft: Silverlight... pretty cool!
> >>
> >> Wish it were Revolution!
> >>
> >>
> >> _______________________________________________
> >> use-revolution mailing list
> >> use-revolution at lists.runrev.com
> >> Please visit this url to subscribe, unsubscribe and manage your
> >> subscription preferences:
> >> http://lists.runrev.com/mailman/listinfo/use-revolution
> >
> >
>
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>



More information about the use-livecode mailing list