RE: ...just took 60+ seconds to load Hello World in Flex!

2004-04-10 Thread Samuel R. Neff
Christian answered the underlying question better than I was able to...
preloader is easily customized via application tag attributes.However, as
to reading AS...

Flex includes a bytecode decompiler.I just realized it's not documented
and not set up but here's instructions.

 
Add the following code to your web.xml file:

servlet
servlet-nameSWFViewerServlet/servlet-name
display-nameSWF Viewer (Decompiler) Servlet/display-name
servlet-classflex.bootstrap.BootstrapServlet/servlet-class
init-param
param-nameservlet.class/param-name
param-valueflex.tools.SWFViewerServlet/param-value
/init-param
/servlet

 servlet-mapping
servlet-nameSWFViewerServlet/servlet-name
url-pattern/SWFViewer/url-pattern
 /servlet-mapping

Then you can decompile a SWF that resides on the server using a URL like
this:

http://127.0.0.1:8100/flex/SWFViewer?file=/tst/ShowVersion.swf

and it will give you output like this:

!-- ?xml version=1.0 encoding=UTF-8? --
swf xmlns='http://macromedia/2003/swfx' version='7' framerate='24'
size='1x7500' compressed='true' 
!-- framecount=2 length=390584 --
ScriptLimits scriptRecursionLimit='1000' scriptTimeLimit='60'/
SetBackgroundColor color='#FF'/
ProductInfo product='Macromedia Flex for J2EE' edition='Developer
Edition' version='1.0' build='0' compileDate='3/4/04 6:16 PM'/
DefineSprite id='1'
 !-- sprite framecount=1 --
 ShowFrame/
/DefineSprite

DefineSprite id='2'
 !-- sprite framecount=0 --
/DefineSprite
ExportAssets
 Export idref='1' name='mx.preloaders.DownloadProgressBar' /
/ExportAssets
DoInitAction idref='2'
 ![CDATA[
cpool [206]
push '_global'
get
push 'mx'
getmem
if L0
push '_global'
get
push 'mx'
push 0.0
push 'Object'
newobj
setmem
L0:
pop

and on and on and on.:-)

Of course you never ever want to do this on a server that's publically
accessible.Maybe that's why it's not documented.

Best regards,

Sam


Blog http://www.rewindlife.com
TeamMM http://www.macromedia.com/go/team 


 -Original Message-
 From: Dick Applebaum [mailto:[EMAIL PROTECTED] 
 Sent: Friday, April 09, 2004 7:00 AM
 To: CF-Talk
 Subject: Re: ...just took 60+ seconds to load Hello World in Flex!
 
 On Apr 9, 2004, at 1:04 AM, Samuel R. Neff wrote:
 
 I don't know of any way to get rid of the loading message.If you 
  look at
 the AS code generated by a Flex app, the loading thing is 
 generated 
  by the
 compiler on the _root timeline of the generated SWF.It 
 doesn't even 
  come
 from one of the components (it is a component, but it's kicked off 
  from the
 timeline).Maybe there's an option somewhere though.
 
 
 
 How do you look at the AS code generated by a Flex app?
 
 TIA
 
 Dick
 [Todays Threads] 
 [This Message] 
 [Subscription] 
 [Fast Unsubscribe] 
 [User Settings]




Re: ...just took 60+ seconds to load Hello World in Flex!

2004-04-10 Thread Christian Cantrell
On Apr 9, 2004, at 4:04 AM, Samuel R. Neff wrote:

The overhead will be addressed as soon as Flex supports runtime shared
libraries.  With this then the classes only have to be downloaded 
 once.  I
would say that RSL are critical to the success of Flex, but it's 
 really
strange they weren't made a high-enough priority to be included in 
 1.0.  I'd
expect to see them in a 1.x or at least a 2.0 release.

BTW, runtime shared libraries are on the Flex Roadmap.From the Flex 
Technology White Paper:

In the core technology, Macromedia will continue to add features in 
the short and longer term. In the short term, users will benefit from 
features like runtime shared libraries, component templates, and 
additional themes...

You can find the entire white paper here:

http://macromedia.com/go/flex_tech_wp

Christian
 [Todays Threads] 
 [This Message] 
 [Subscription] 
 [Fast Unsubscribe] 
 [User Settings]




RE: ...just took 60+ seconds to load Hello World in Flex!

2004-04-09 Thread Samuel R. Neff
We're developing a set of commercial charting components for Flash and for
Flex--we actually demoed them last November at MAX.Hence the familiarity.

I don't know of any way to get rid of the loading message.If you look at
the AS code generated by a Flex app, the loading thing is generated by the
compiler on the _root timeline of the generated SWF.It doesn't even come
from one of the components (it is a component, but it's kicked off from the
timeline).Maybe there's an option somewhere though.

The overhead will be addressed as soon as Flex supports runtime shared
libraries.With this then the classes only have to be downloaded once.I
would say that RSL are critical to the success of Flex, but it's really
strange they weren't made a high-enough priority to be included in 1.0.I'd
expect to see them in a 1.x or at least a 2.0 release.

I also don't expect to see more than a handful of companies actually go into
production with Flex 1.0.The price will keep it to only the largest
companies (my company excluded) and the expected development timelines are
for medium to long term projects.How many people do you know would bet a
half million dollar project on a 1.0 product?That's the price point you're
looking at for ROI over the purchase price of Flex (keeping in mind that
large products typically have more CPU's and $12,000 is just the starting
price).

Sam


Blog http://www.rewindlife.com
TeamMM http://www.macromedia.com/go/team 


 -Original Message-
 From: Dick Applebaum [mailto:[EMAIL PROTECTED] 
 Sent: Thursday, April 08, 2004 11:25 PM
 To: CF-Talk
 Subject: Re: ...just took 60+ seconds to load Hello World in Flex!
 
 On Apr 8, 2004, at 7:41 PM, Samuel R. Neff wrote:
 
 The second run should be significantly faster, but still a 
 lot slower 
  than a
 Flash Hello World app since every app will have the 
 130kb of Flex 
  base
 classes.
 
 
 
 Sam
 
 You seem to have a lot of Flex experience.
 
 Is this just a Newness of Flex thing?I hope that as Flex matures 
 that repackaging (whatever) will reduce the default overhead of using 
 Flex.
 
 btw, is there a way to get rid of the loading message that appears 
 with the rendering of each FlexFlash page?
 
 New to Flex but trying to learn!
 
 TIA
 
 Dick

 [Todays Threads] 
 [This Message] 
 [Subscription] 
 [Fast Unsubscribe] 
 [User Settings]




Re: ...just took 60+ seconds to load Hello World in Flex!

2004-04-09 Thread Dick Applebaum
On Apr 9, 2004, at 1:04 AM, Samuel R. Neff wrote:

I don't know of any way to get rid of the loading message.  If you 
 look at
the AS code generated by a Flex app, the loading thing is generated 
 by the
compiler on the _root timeline of the generated SWF.  It doesn't even 
 come
from one of the components (it is a component, but it's kicked off 
 from the
timeline).  Maybe there's an option somewhere though.



How do you look at the AS code generated by a Flex app?

TIA

Dick
 [Todays Threads] 
 [This Message] 
 [Subscription] 
 [Fast Unsubscribe] 
 [User Settings]




Re: ...just took 60+ seconds to load Hello World in Flex!

2004-04-09 Thread Christian Cantrell
On Apr 8, 2004, at 11:25 PM, Dick Applebaum wrote:

btw, is there a way to get rid of the loading message that appears
with the rendering of each FlexFlash page?

You can set the usePreloader attribute of the Application tag to false 
like this:

mx:Application xmlns:mx=http://www.macromedia.com/2003/mxml 
usePreloader=false

You can also customize it using the preloader attribute.

Christian
 [Todays Threads] 
 [This Message] 
 [Subscription] 
 [Fast Unsubscribe] 
 [User Settings]




Re: ...just took 60+ seconds to load Hello World in Flex!

2004-04-09 Thread Christian Cantrell
On Apr 8, 2004, at 10:41 PM, Samuel R. Neff wrote:

The second run should be significantly faster, but still a lot slower 
 than a
Flash Hello World app since every app will have the 130kb of Flex 
 base
classes.

Small applications requiring little interaction can still benefit from 
the look and functionality that Flex provides, but as Sam points out, 
they are going to be significantly larger than their Flash or HTML 
equivalents.Medium to large applications, however, which are more 
interactive, start to benefit very quickly from a bandwidth perspective 
from the Flex application model.It's not unusual for pages on sites 
like Amazon or eBay to be anywhere from 60K to 90K in size, not 
counting external assets like images, style sheets, scripts, etc.It 
only takes one or two clicks before you are actually saving significant 
amounts of bandwidth with Flex.

Christian
 [Todays Threads] 
 [This Message] 
 [Subscription] 
 [Fast Unsubscribe] 
 [User Settings]




RE: ...just took 60+ seconds to load Hello World in Flex!

2004-04-09 Thread Samuel R. Neff
Yes, I was probably too negative in my earlier post.A Flex app will
generally save bandwidth when comparing the whole app to an equivalent HTML
app, but will be larger compared to the equivalent Flash app, and most
importantly, larger than necessary due to current lack of RSL or ability to
specify classes that will be available dynamically at run-time.

Of course Flex is not made for Hello World apps and the 130kb startup size
stays at just 130 for a while even when you load up a bunch of components as
they reuse a lot of code.In my experience a typical real-world Flex app
will be 200-400kb.

Sam

 -Original Message-
 From: Christian Cantrell [mailto:[EMAIL PROTECTED] 
 Sent: Friday, April 09, 2004 10:30 AM
 To: CF-Talk
 Subject: Re: ...just took 60+ seconds to load Hello World in Flex!
 
 On Apr 8, 2004, at 10:41 PM, Samuel R. Neff wrote:
 
 The second run should be significantly faster, but still a 
 lot slower 
  than a
 Flash Hello World app since every app will have the 
 130kb of Flex 
  base
 classes.
 
 Small applications requiring little interaction can still 
 benefit from 
 the look and functionality that Flex provides, but as Sam points out, 
 they are going to be significantly larger than their Flash or HTML 
 equivalents.Medium to large applications, however, which are more 
 interactive, start to benefit very quickly from a bandwidth 
 perspective 
 from the Flex application model.It's not unusual for pages on sites 
 like Amazon or eBay to be anywhere from 60K to 90K in size, not 
 counting external assets like images, style sheets, scripts, etc.It 
 only takes one or two clicks before you are actually saving 
 significant 
 amounts of bandwidth with Flex.
 
 Christian
 [Todays Threads] 
 [This Message] 
 [Subscription] 
 [Fast Unsubscribe] 
 [User Settings]




RE: ...just took 60+ seconds to load Hello World in Flex!

2004-04-08 Thread Samuel R. Neff
The first run requires compilation which is very slow.A client is never
meant to see compilation (although I don't think it includes any pre-built
pre-compiler other than the off-line MXMLC).

The second run should be significantly faster, but still a lot slower than a
Flash Hello World app since every app will have the 130kb of Flex base
classes.

Sam


Blog http://www.rewindlife.com
TeamMM http://www.macromedia.com/go/team 


 -Original Message-
 From: Abraham Vionas [mailto:[EMAIL PROTECTED] 
 Sent: Thursday, April 08, 2004 3:22 PM
 To: CF-Talk
 Subject: ...just took 60+ seconds to load Hello World in Flex!
 
 Actually, it's at least 30 seconds - and it just took over a 
 minute to load
 my first Flex Hello World application.
 
 There's no way it's supposed to be like that. 
 
_
 
 From: Abraham Vionas [mailto:[EMAIL PROTECTED] 
 Sent: Thursday, April 08, 2004 12:54 PM
 To: CF-Talk
 Subject: anyone have any ideas why I have 10-30 second Flex 
 load times?
 
 It *is* the first run of the application, but it doesn't seem 
 to get any
 better - and we're talking about the sample applications. In 
 fact, they run
 quicker off the Macromedia site then they do locally on my 
 comp. Any ideas?

 [Todays Threads] 
 [This Message] 
 [Subscription] 
 [Fast Unsubscribe] 
 [User Settings]




Re: ...just took 60+ seconds to load Hello World in Flex!

2004-04-08 Thread Dick Applebaum
On Apr 8, 2004, at 7:41 PM, Samuel R. Neff wrote:

The second run should be significantly faster, but still a lot slower 
 than a
Flash Hello World app since every app will have the 130kb of Flex 
 base
classes.



Sam

You seem to have a lot of Flex experience.

Is this just a Newness of Flex thing?I hope that as Flex matures 
that repackaging (whatever) will reduce the default overhead of using 
Flex.

btw, is there a way to get rid of the loading message that appears 
with the rendering of each FlexFlash page?

New to Flex but trying to learn!

TIA

Dick
 [Todays Threads] 
 [This Message] 
 [Subscription] 
 [Fast Unsubscribe] 
 [User Settings]