PDA

View Full Version : a design question



tvfoto
10-24-2006, 05:24 PM
Hi all,

I am confused about how to design a modual flash site that make it easy for me to extend and/or remove portions of my site. I am a photographer,and I want to build a site that show case my works. I have N numbers of categories and each category contains 2 different format, horizontal & vertical. Each format will have atleast 20 photos with some kind of transition.

a) What is the most efficient way to build this site?
b) Do I build MC for each category or should I build them all as external swfs?
c) I have neve get to understand how to control the timing for all the MCs in the main time line, so if you could unclog my brain..i would very much appreciated. Say I have 1 mc with 100 frames , other has 200 frames. Is that how many frames I need to have in my main time line to place the 2 MCs and each other will have to be away from each other that many frame before one can be played after the other? Or I just create 2 frames(in the main time line) next to each otherand loaded with the 2 MCs and tell actionscript to do the timing?
d) and I do I need preloaders on every category/MC/SWF , I guess?

Thanks

Twey
10-24-2006, 06:32 PM
I am confused about how to design a modual flash siteFirstly, don't. Flash should be used to augment an HTML site, with appropriate HTML fallbacks for those browsers without Flash. To design an entire site in Flash is to make a most unpleasant blunder, although one lamentably commonly seen.
a) What is the most efficient way to build this site?Nothing you've specified above actually requires Flash. It should be quite possible to create the site using plain HTML and Javascript, and the end result should be much more accessible.
d) and I do I need preloaders on every category/MC/SWF , I guess?Alternatively, you could have a single preloader on entry. I think it would be less irritating to users to have a separate preloader for each category, though, yes.

tvfoto
10-24-2006, 06:56 PM
Twey,

I do understand all that you are saying. However, first, I was thinking of having the main contents built in flash with HTML page as the host (just like you mentioned).

Second, I dont know how css can help me with all that fx (rubberbanding, tranparency layer etc..) flash can do. That's my reason to use flash.

Third, even if CSS can do all this (and I really want to learn how to do it) f/x, I still want to know the right way to call up MC or external swf and/or when should I consider to build something as MC or external SWF and how to laythem out in the main timeline. As you all can see, I dont have formal training on all this, therefore I got bits here and there..enough to get me going but it still bothers me for not having a firm grip on the subject.

Btw,sorry for my spelling errors. I blame it on my fingers..(yeah right...:))

Twey
10-24-2006, 07:14 PM
first, I was thinking of having the main contents built in flash with HTML page as the host (just like you mentioned).Mentioned, but didn't recommend :)
Second, I dont know how css can help me with all that fx (rubberbanding, tranparency layer etc..) flash can do.CSS alone can't, but coupled with Javascript it's more than capable. Have a look at one of the many effect toolkits available, such as jQuery (http://www.jquery.com/), Prototype (http://prototype.conio.net/) (site currently down?), MooFX (http://moofx.mad4milk.net/), Scriptaculous (http://script.aculo.us/), Dōjō (http://www.dojotoolkit.org/), or Rico (http://www.openrico.org/).

BLiZZaRD
10-25-2006, 11:09 AM
I usually tend to agree with Twey in most cases, mainly because of the amount of respect I have for him and the sheer intelligence he has.

However, in this case I will agree to disagree. One of Twey's fall backs is always to use JS. and here:



Nothing you've specified above actually requires Flash. It should be quite possible to create the site using plain HTML and Javascript, and the end result should be much more accessible.

What Twey doesn't recall is a conversation we have had a while back where I showed him the reach of Flash as compared to JS. Flash versions 5 through 7 reach more computers and browsers on those computers than JavaScript does.

To me, this means that if someone has JavaScript they will have Flash, and for those few who don't, they probably only use the internet to contact their son through email and get photos of thier grandchildren, and worry much less about actually browsing to internet sites.

In another contrast, I have a web site which uses a lot of Flash. In the 14 months I have had it open to the public, I have had well over 2.08 million unique IPs come to visit, of those 2.8 million, my page pe page stats show only 284 IPs have hit the HTML only pages I made to compensate for non-flash users. As such I am currently re-doing the main pages of the site and doing away with the non-flash versions.

Some people will yell and whine that Flash is only meant to compliment HTML and other scripts, but I say BAH! Flash is a stand alone language and interface that can do anything any other language can (with limits, of course) and there should be no reason why Someone shouldn't be able to make a Flash only site, and feel comfortable about it.

That said:

a) The most efficient way would be to make an image gallery and let the user/visitor view the photos at their own pace. You can even have the 2 designs (horizontal and verticle) and let he visitor choose which one to view.

b) Neither, you can (and should) make each photo an MC but leave them in your library and let ActionScript pull them out when needed.

c) With an image galley type application you wont have to worry about such things, however, the proper use of stop(); and gotoandplay(); will cure that.

For example your 2 MCs one with 100 frames and one with 200 frames, just place them in one single frame each. add a layer above and add a stop(); to frame 1 and another to frame 2. When loaded the frame will play the entire MC never going to frame 2 and MC2. On the last frame of MC1 you would just put _root.gotoAndPlay(2); then the time line would go to frame 2 and play that MC, etc etc

d) No, just one preloader for the entire movie, it will load all the items and images inside and play once it is ready.

djr33
10-25-2006, 01:42 PM
Graphics and html are seperate.

Basing an entire site in flash is stupid. It's slower to load, not as compatible, and just doesn't make sense.

Using flash, depending on purpose, is right.

I agree that Twey's suggesting to do things like transparency with CSS and Javascript is a bit over the top, but you also need to think about how much you need things like this.

If you want part of an image to be transparent, then use an IMAGE. Nothing more needed.

If you do, however, need complex motion and graphics, flash is almost definitely the way to go.

BUT.... add flash to a base of html, whatever the ratio thereof may be.

Twey
10-25-2006, 11:27 PM
What Twey doesn't recall is a conversation we have had a while back where I showed him the reach of Flash as compared to JS.You're right. May I have a link? Even if this is so, installation of Flash does not necessarily equate to better accessibility -- for example, screen readers have serious issues with Flash.
One of Twey's fall backs is always to use JS.Certainly not. I'll be one of the first to suggest the use of plugin content (usually Java, but still... :)) when appropriate. However, most of the things people would usually do with these methods don't require plugin content, and one must ask one's self if something that does require said plugin content should be in a web page in the first place (considering that plugin content isn't actually part of a web page).
I agree that Twey's suggesting to do things like transparency with CSS and Javascript is a bit over the topNot at all. Using one of the toolkits above, it is simplicity itself.

BLiZZaRD
10-26-2006, 10:37 AM
Yes you can have your link Twey:

http://www.dynamicdrive.com/forums/showthread.php?t=10825&page=3

Reply #27 has the links in it. :)


I am not trying to start a huge debate here, but the OP wants to show case a lot of rotating images with some splash. While screen readers are great, do they show images well at all to the blind, wether in Flash or JS or HTML? And if s/he is showcasing works for sale, is a blind person going to browse to buy?

I think the goal is to accomplsh what you want with "minimal" loss to audiences. Showing photos online and making sure the blind can "see" them is not an overly huge concern when designing.

But I ask you, sir, to show a nice splash filled image gallery that doesn't use a plug-in enabled language of some kind. All the "properly working ones" use JS or are done in Flash.

I think cross browser compatibility is important, but in certain (and often times - most) instances this is the least of worries. If that were the actual case we would need to rewrite a bajillion pages to be compatable for text only browsers, and then lose php, JS, Flash, and images all together. Might as well go back to BBS.

I am sorry, but I am not going to lose functionality or "pretty-ness" for 1 - 10% of the web enabled population.

If I was a cookie baker and sold cookies out of my house, and 90% of my revenue was generated from peanut butter cookies, I wouldn't stop making them because 3% of my customers were allergic to peanuts. I am willing, as a business owner, to lose 3% of my sales, to gain the 97%.



However, most of the things people would usually do with these methods don't require plugin content


Like what? View the page? Keeping the OP's concerns in mind, what else would one normal web viewer do with images besides look at them?

Twey
10-26-2006, 06:31 PM
That thread deals with Java and Flash, not Javascript.
I am not trying to start a huge debate here, but the OP wants to show case a lot of rotating images with some splash. While screen readers are great, do they show images well at all to the blind, wether in Flash or JS or HTML? And if s/he is showcasing works for sale, is a blind person going to browse to buy?With JS, one could offer alternative content for the screenreaders. The person could find an image of which s/he likes the sound and ask a friend to look at it -- possibly the same friend for whom s/he is purchasing the image (obviously it is fairly unlikely, although not impossible, that a blind person would buy such an image for his/her self). Also, please bear in mind that the original discussion involved a site created entirely in Flash, not simply an image gallery.
I am sorry, but I am not going to lose functionality or "pretty-ness" for 1 - 10% of the web enabled population.Which is entirely my point. If you have content that really does require plugin content, and honestly can't provide a decent fallback, then certainly, give the user appropriate warning and use it. But many of the tasks for which modern webmasters use plugins such as Flash or Java don't actually require the plugins, and as such there is no point in sacrificing accessibility for no gain, no matter how small the percentage of clientèle that may involve.
If I was a cookie baker and sold cookies out of my house, and 90% of my revenue was generated from peanut butter cookies, I wouldn't stop making them because 3% of my customers were allergic to peanuts. I am willing, as a business owner, to lose 3% of my sales, to gain the 97%.But if, for the same price (or possibly at less cost, considering bandwidth usage), you could produce something that looked, smelled, and tasted like peanuts, but didn't trigger the allergies of those 3%, would it not be a better idea to use that instead?
I think cross browser compatibility is important, but in certain (and often times - most) instances this is the least of worries. If that were the actual case we would need to rewrite a bajillion pages to be compatable for text only browsers, and then lose php, JS, Flash, and images all together. Might as well go back to BBS.The key here is graceful degradation. Certainly we shouldn't design text-only pages just because a few people use text-only browsers, but that doesn't mean that we shouldn't add a text-based fallback where there is no disadvantage except perhaps half a kilobyte extra filesize.
Like what? View the page? Keeping the OP's concerns in mind, what else would one normal web viewer do with images besides look at them?I was talking about webmasters, not users. There are webmasters who use Flash to display text, just because they can. This seems to be the sort of approach you're advising, and it is unnecessary. You're right; Flash is widespread enough that it is a viable solution for many problems, but when it's not necessary, it shouldn't be used without a fallback.

tvfoto
10-26-2006, 11:00 PM
I think we are kinda off the track a bit here. Everyone here has the points to be considered and technologies are plentiful to choose to do whatever you wanted. There are many ways to accomplish the same thing and depends on:
a) which development tools you are familar and/or want to experiment with
b) 'your' target audiences
c) the requirements of the projects. The dictation of your boss/clients.
d) the maintenance, the dynamics, the supports issues
fighting over technologies, readability, accessability etc..is just like fighting over some politic and religion vs science issues.

Blizzard: Can you explain a bit more on how to use action script to load my single photo (as mc) when needed. May I send you an off-line email on some "how-to-do-it" questions?

Twey & Everyone: I thank you your your comments. I think I will incorporate my flash segments of my gallery within a HTML page but that's not really what I 'd like to ask. What I really like to see is..sort like a flowchart, structure of the site with recommended technical tips & tricks, what to avoid, how the big guys(or the majority/preferred ways) do it, things in that nature.

Thanks

Twey
10-26-2006, 11:33 PM
a) which development tools you are familar and/or want to experiment withThis shouldn't be a barrier. Neither should be an issue for a commercial site.
b) 'your' target audiencesThe target audience should always be the widest range possible. This isn't a question like the one faced by stylists, where it's either one target group or another; the aim in web design is to reach as many people as possible, which will, of course, include the primary target audience.
c) the requirements of the projects. The dictation of your boss/clients.If the boss/client demands that you deliberately degrade your site, I suggest you remind them (gently, of course) of which of you was hired as the expert.
d) the maintenance, the dynamics, the supports issuesAgain, I see no contest here: Flash is less maintainable and not as well supported.
Twey & Everyone: I thank you your your comments. I think I will incorporate my flash segments of my gallery within a HTML pageI still don't understand why you're using Flash.
but that's not really what I 'd like to ask.The answers to your questions aren't always the ones you expect :)

djr33
10-26-2006, 11:40 PM
Overuse of flash is awful.
Only use flash when you absolutely need to.

But... you need to when you want something graphic or interactive, in many cases.

But... even then, PLEASE don't design the whole site in flash... just do the chunks that need to be flash, even if it's mostly the chunks of flash that are there, and just a table housing the flash, it still makes sense. That's an extreme example, though. The more you can do with just html, the better.

Twey
10-26-2006, 11:46 PM
But... you need to when you want something graphic or interactive, in many cases.Many cases, yes, but not nearly as many cases as people seem to think. More specifically, not in this case. I think that was rather the point.

BLiZZaRD
10-27-2006, 09:14 AM
Yes Twey, the OP was talking about a Flash site, but the only content was for images. I completley agree one should try to offer fall backs for those without Flash, but as stated if a user doesn't have Flash, they will be less likely to have Java or JS enabled. As all 3 are now installed with the browser, at least the most common ones.

Which was my entire point as well, if images are the focus of your site, you can't have a text only fall back, and with images, I personally feel that displaying them in Flash is much easier than coding CSS and JS and anything else that would need to be done. Especially if the web designer knows their way around Flash already, instead of trying to learn new languages for a simple task.

@tvfoto of course you can email me. For spam purposes I wont post it here, but it is in my profile or you can PM me for other options :D

Twey
10-27-2006, 10:28 AM
As all 3 are now installed with the browser, at least the most common ones.Flash is only installed with IE, as far as I know.
I personally feel that displaying them in Flash is much easier than coding CSS and JS and anything else that would need to be done.This is the myth I'm trying to dispel here :)
Especially if the web designer knows their way around Flash already, instead of trying to learn new languages for a simple task.Every decent webmaster (which the OP evidently is, if considering designing a commercial site) knows JS. It's one of the three fundamental languages of the Web.

BLiZZaRD
10-27-2006, 10:43 AM
So then I am NOT a decent web designer, as I don't know ANY language, except HTML and some very basic CSS? I can't even spell JS let alone use it, and PHP is far too left field.

but 2 million unique IPs to my site in the first 12 months with an average visit time of over 10 minutes per? Something must be right....


anyway tvfoto Check out this link (http://www.flashkit.com/tutorials/Dynamic_Content/The_Ulti-Joachim_-800/index.php) for a step by step tutorial on a very nice and customizable Image slide show/ gallery. :D

Twey
10-27-2006, 12:02 PM
So then I am NOT a decent web designer, as I don't know ANY language, except HTML and some very basic CSS? I can't even spell JS let alone use it, and PHP is far too left field.You should definitely look into learning. The "three fundamental languages" I mentioned are HTML, CSS and JS, although a server-side language is very helpful, and vital for some types of sites. You can get by without JS, especially with the aid of something like Flash, but you'll experience a lot of problems when you try to use Flash (for example) for things where other languages would do better. As the saying goes, when your only tool is a hammer, all problems look like nails.

On a more positive note, if you're familiar with ActionScript, Javascript should be no problem.

BLiZZaRD
10-27-2006, 01:02 PM
Oh, I don't doubt your intentions here at all Twey, and believe you me I AM trying to learn languages. JS is included, along with PHP and JAVA and BASIC and a few select others, as well as finally trying to get a grip on *n?x (which I have come a LOOOONNNGGG way in doing, with some thanks to you ;) )

My main argument here, and not really an argument but another blind opinion, is that what the OP wanted was done in the way he asked for help.

Yes, he mentioned a Flash site, but that is like calling a stew a soup. Technically it is a soup, much like my site can be considered a "Flash Site" My first 2 pages are 98% flash, and I have Flash only games as other sporatic Flash pages. Over all my site is pure HTML and PHP, but I can call it a Flash site based on its general content.

So taking that comment from the OP with a grain of salt, and seeing as he posted in the Flash thread, I assumed s/he wanted a Flash answer for the image problem. The OP mentioned no knowledge of JS, JAVA, or any other language, but showed some knowledge of AS and Flash.

I was arguing that already knowing AS and how to get around in Flash would be easier on HIM/HER rather than the end user. And with the reach of Flash in todays web browsers, the use of Flash should not be limited.

Rather than saying JS would be easier than Flash to accomplish the same thing, I said I don't think this is true. Perhaps for you, sir, it would be, but for those like myself, I know Flash, but not JS, so to do this type of image gallery thing I could spend a few hours in Flash and build something final, OR I could spend a few days learning JS first and then attempt to build something with that.

When most people are asking for something they either have a deadline or they want it now anyway. Using a medium you already know is going to be easier to get the desired results. :)

Twey
10-27-2006, 02:15 PM
I was, of course, working from the assumption that the levels of knowledge of Flash and JS are equal, and I quite agree with you that if a deadline arises, it may occasionally be necessary to use only that with which the developer is familiar. However, I was saying that this was not a good idea, and was asking the OP exactly why s/he was doing it in this case. If told that Flash was the only language with which s/he felt comfortable, and that s/he had a deadline which prevented him/her from learning to do the site properly, I would have posted some links to JS tutorials for later perusal and bowed out. However, s/he has still provided no reason as to why s/he is using this method, which leads me to the unpleasant conclusion (and please, tvfoto, do pardon the implied insult to your intelligence if this is not the case) that s/he is using Flash simply because s/he can, or because s/he thinks it intrinsically better suited for this task. Thus, I was attempting to explain why the former is not a good idea, and why the latter is untrue, as well as providing suitable alternatives.
I assumed s/he wanted a Flash answer for the image problem.I am certain s/he did. However, unfortunately, the answer for which the OP asks isn't always the one that needs to be given :)
I could spend a few days learning JSOh, I doubt that. Both JS and AS are profiles of EMCAScript, so I should imagine that learning one with prior knowledge of the other would merely be a case of memorising some objects.
I know Flash, but not JSAgain without insult intended, and sheerly out of curiosity, why did you choose this path? Most web designers would learn the better-supported (and built-in) language first, then move on to the plugin content later. Did you do some Flash-based development for a platform other than the Web at some point?
JS is included, along with PHP and JAVA and BASIC and a few select othersMy advice would be to stick to a single language until you are very familiar with it. Javascript doesn't count here, since to all intents and purposes (in my opinion) you already know the better part of it by association with ActionScript. I would suggest going in-depth with Java, which I find very simple and logical, and thus an ideal first language. BASIC should rightfully be dead :) I've yet to see a useful implementation of BASIC or its derived languages (on modern systems) outside application-specific embedding.

BLiZZaRD
10-27-2006, 02:32 PM
I think, to answer your questions as honestly as possible, that it really depends on the "type" of learner.

I am artistic in nature, and I learn better by "seeing" my efforts.

I got into Flash when I found it back in it's early stages. I was a early teen and the internet was nothing to me, Netscape was the only browser I knew about and I only went to one site (riddler.com LMAO)

I downloaded the Flash trial and watched the "hot to tween" tutorial that came with it. I then made a little movie with a stick man walking to the center and being smashed with a huge rock. I fell in love with it then.

At that point even AS was a mute point. AS 1.0 (for me) did nothing. Later as Flash advanced and I advanced, I started seeing how AS could do the same things as frame by frame aniimation, so I could draw one rock, and use AS to make 40 rocks. This from where I was used to drawing the 40 rocks.

I have practical applications for Flash, such as games and menus, and I draw what I see in my head, then apply the AS to the images I have just created. For me, AS means I can see my results in a matter of minutes.

I have tried the same with JS but it is all a blank page in notepad waiting for code. I don't have a "practical" use for it (as far as game design, etc) and therefore have no real basis to test scripts and code snippets on.

So I end up with a page full of code and wonder what it does. The graphical element of Flash is what does it.

Also the fact that I can click on an image and put code on THAT image and ONLY where I want it to do something, where, with JS I have to declare all my variables in one spot, call them over here, etc etc. I guess I mean my "code" doesn't have to be pretty, it just has to be there. I can also have "conflicting" codes on the same thing and as long as I use each the way it was intended it will work without error.

I was already deep into Flash, making little desktop games and videos long before I truly discovered the internet.

I have no formal training on anything to do with computers. I was given an IBM 8088 when I was 12 with an external Haynes 2400 modem and a notebook full of BBS numbers. Everything I know to this point is self taught and I only realize there is a problem when something doesn't work, or stops working, and I have to go and figure out how to fix it myself, using forums like this and Google. Or the old take-it-apart-and-blow-on-it method.

This type of "self-tutoring" has carried over to my web design. I know it's not right, and I really do try to learn the languages, but its not that simple for me, to just pick up a book, or go to a web site and just start doing it. I can look at a full page of AS and pretty much tell you whats going on in the movie without ever seeing a graphic, but make that code JS and I couldn't even tell you what language it was written in. I am just weird I guess :D

And as far as JS and Flash differences, I don't see it as merely memorizing objects, although I am positive SOME of it is (like OOP) but then I haven't gotten too deep into OOP either. I think it is a more physical and (un?) logical placement of the scripts that makes AS easier than JS to follow and understand.

Twey
10-27-2006, 02:49 PM
I have no formal training on anything to do with computers.Nor do I :)
I only realize there is a problem when something doesn't workThat, for me, is why the Internet is such a great learning resource. Books and experimentation are all very well, but on the Internet, if one does something that's technically right, but just not "nice" (usually meaning it's going to have problems later on), people correct you -- I owe a lot of my knowledge of JS to people like jscheuer1 and mwinter here on the forums, which isn't to say that they've taught me everything, but that they point out where things are "not nice" and make me curious about the "pretty" way of doing it :) That, for me, is the only way to achieve a sense of what's "beautiful" in programming. Like mathematical beauty, beauty in programming is very hard to define, although people have tried (terseness, clarity, lack of repetition, efficiency, adaptability, flexibility, portability...) but the only way to get a real feel for what it is is to learn by example what's right and what's wrong, like a colour (it's impossible to explain what yellow is so that someone, when presented with yellow, could recognise it; all one can do is to point out examples of what is and isn't yellow, and the person can then distinguish yellow for themselves, even if the yellow isn't the precise shades of yellow that the instructor has pointed out for them). As such, there's a kind of art in non-graphical languages too, and one can get the same kind of rapport with the code that you achieve by looking at pictures of what the code is doing. You just have to get a sense for it.
I don't have a "practical" use for it (as far as game design, etc) and therefore have no real basis to test scripts and code snippets on.The obvious response is to find a use :) That's another thing forums and chatrooms are good for: people have problems, and problems require a solution. Sometimes the solution becomes very popular, sometimes it doesn't, but the hardest part of designing anything (on- or offline, I'm sure you'll agree) is finding inspiration, and that's what people's problems provide.

BLiZZaRD
10-27-2006, 03:43 PM
That I try to do. Graphical things just come easier/faster for me. With the myriad of other things in my life right now I just can't find the time to sit down with a book and try things.

Ever wish you could just quit work and stay at home to play on the computer all day?

Twey
10-27-2006, 04:46 PM
I suppose I'm lucky here in that my work, when I get it, tends to consist of doing just that :)

BLiZZaRD
10-28-2006, 12:48 AM
Well, if I can sell this script my agent is shopping around I might be able to do just that as well :D