Flash and Open Source
Anders Schneiderman asks: "I'm involved in a project that's planning to create open source toys for educating people around complicated policy questions (e.g., policy on prescription drugs). We'd really like to use Flash as our main language, but we're concerned about the fact that the major Flash development tools cost $500--more than some of the community group folks we want to involve can afford. I took a look at Sourceforge, and while there are plenty of projects that offer ways to create Flash for free, there didn't seem to be any v.1 general development tools. Did I miss something? If you want to build Flash and you don't want to pay $500, how do you do it (aside from copying somebody else's, which as Bill Gates told us is just bad, bad, bad)? And if there aren't any powerful open source tools for it, any thoughts on why?"
This is a problem I've hit before. Unfortunately the open source community hasnt produced any Flash development tools since many users of OSS are anti-flash. This is mainly due to the fact that no matter how glitzy, Flash is still not supported by the W3C as an accepted internet standard. Plus PHP works wonders with graphics. Nevertheless, maybe it's time we asked Macromedia to help us out??
Have you ever actually used Lingo? It is a "natural english" programming language, and to anyone who has programmed "for real" it is a total nightmare. I would suggest you use some other method to conviegh you information, while Flash is pretty and all it is a quite honestly schlock. Maybe a little more info on what, how, and to whom you want to get information too, so we can better advise you.
It is regretable that Macromedia haven't either supported alternative OSs or even released an OSS flash player. However, if you wanted to produce multimedia content for the web, what other options are available? The only thing currently available thats even comparable is Shockwave and most Flash users wouldn't consider touching that.
Even when browser developers start supporting the open SVG standard the questioner will still find himself with the same problem because SVG just specifies a vector format to display static images. Animation can be achieved my means of Javascript (yeh, I know you probably don't like that either) manipulating the DOM. Even so, few multimedia authors want to write Javascript.
If you look at the huge number of projects listed on SourceForge or Freshmeat you will see very few that involve rich graphical user interfaces like the Flash developer environment. We all agree that free software developers are as smart as commercial developers (many of them are the same people just working in their spare time). The lack of multimedia development tools in the 'free' arena is really down to the fact that they are a bitch to write and people that are developing software for fun would rather write something that is useful to *them*.
The problem with the educational version of Macromedia's Flash and Shockwave is it pastes a "This is an education product" tag on everything you create. Granted you could hack that out, but I don't think doing so is exactly legal.
Yes, but how secure is it? Java is arguably slow because it goes to great lengths to define and manage untrusted code. If any turing-complete language like flash is used (note that javascript uses a restricted function call model, and, therefore, is possibly provably secure), we typically want to see some guarantees. I find it surprising that folks haven't dug deeper into flash vulnerabilities (I am sure there are tons of them; even java, with its well-defined vm+runtime, class, and security definitions had security issues). Sun and others don't seem to push the original safe mobile-code benefits of java anymore probably because java is currently finding its niche in server-side environments where mobile code and byte-interpretor performance are probably not an issue (because one can always use jit's, can trust server's own code, etc.). Currently, flash seems to have found its niche as a replacement for animated gif's, and I am very scary about the security implications.
Pocket Animator is an open source Flash animation tool built for the Pocket PC in MFC (It shouldn't be too hard to port it to desktop Windows)
http://sourceforge.net/projects/animator/
Check OpenSWF for more Flash projects
http://www.openswf.org/
Or there's SVG...
Beez is an open source SVG animator written in Delphi
http://sourceforge.net/projects/beez/
I see some people posting here saying "oh, don't develop for Flash; nobody bothers to install those plugins". Well, I was curious myself, so a quick Google search turned up this: (from a Whitepaper on Macromedia's website(!), but the NPD Research numbers should be easily confirmable)
"In December 2001, NPD Research, the parent company of MediaMetrix, conducted a study to determine what percentage of Web browsers have Macromedia Flash preinstalled. The results show that 98.3% of Web users can experience Macromedia Flash content without having to download and install a player."
Take it for what it's worth. Seems amazingly high to me though.
well... SVG is just another ogg-vorbis (ie - no one outside of slashdot has heard of it or has the plugin installed).
And Java requires programming. Flash (unfortunately?) lets anyone design an animation. Heck, there are a lot of 3rd party commercial applications that will make animated text graphics or buttons. It's a modern day HyperCard.
A comparable flash tool to Macromedia's would be about as much work as an Illustrator clone before you added all the animation stuff. And all the while Macromedia could just change the swf format and/or introduce subtle incompatibilities in the player. (Though control of the standard may have changed recently, I stopped keeping track.)
There are various free software packages that do interesting things with vector graphics. I forgot what Killustrator changed its name to, but I think it could output static swfs. Autotrace (free, does about the same thing as Adobe Streamline) definitely can (I wrote the first version of the swf output). Then there's Ming, which can be used with several languages to output swf. But you've probably already come across most of these.
But if you're looking for a fully-featured swf authoring packages, just give up and nick Macromedia's, or hassle them for charity copies or something, coz otherwise you're SOL.
-- Proud descendant of semi-nomadic cattle-herders.
Now that I drove that home, on with my story:
Macromedia did try to open up the Flash 4 format so that other people could create software compatible with it. And in fact, LiveMotion was Adobe's entry into that market.
This was Flash 4, though. They're now essentially up to Flash MX (read: 6), and the spec has grown significantly since then. The first big change was scripting from 4 => 5, and while I have no idea what they added from 5 => MX, but I'm sure it's sizeable. (Memo to myself: look into it, consider upgrading just because it might be fun to try some animation.)
Remember, once again, that Macromedia makes the player plug-in, and if you base a site on Flash, you're still going to be at their mercy no matter whose development tools you use. And if you use someone else's tools, they may not keep up with Macromedia's changes.
Now, it's doubtful that they'll do anything to break an animation when viewed through an older plug-in or browser, but there may be side-effects, and they will affect both usability and user perceptions of your site.
Yes, I'll admit, this argument smacks of FUD, but sometimes the unthinkable happens.
Barring my qualms against it, I'll side with everyone else who answered so far and recommend not using Flash to build a website because it can prevent normal navigation, SWFs can take a long time to play over slow connections (I'm still stuck on a 56K dialup--I know from whence I speak), and as of Flash 5, Macromedia's authoring environment had some seriously "avant-garde" (read: bad) user interface design philosophies. There are those who believe [really C|net news] the Flash-based web is not necessarily a good idea.
The load speeds and display times could be the biggest issue, since web surfers have notoriously short attention spans.
But that's just my opinion, as always. The salt shaker is to the left; take as many grains as you need.
You cannot truly appreciate Dilbert until you read it in the original Klingon.
Apparently, the person who submitted the story was appalled at the costs of developing in Macromedia Flash tools, and wanted to find something that was free.
It seems that person, however, did not wish to look at the source of whatever program he was going to use... he just wanted to have something that was free for use.
This is the problem with Open Source AND Free Software. While Open Source software is a nice idea in some respects, it seems that everyone thinks Open Source is another word for free. It's not. Plus, you can derive a lot of benefits from selling commercial software that is Open Source... unless you have low-lifes out there that will compile the source and use the resulting commercial software at no charge. Judging from what computer geeks do with commercial MUSIC, it's not hard to imagine.
And let's not forget the most sickening part of this all: this guy wants to use free software as a development tool in a commercial/business environment. Or, basically, profit off of someone else's hard work without having to put in any effort or support into the author's cause in a meaningful way. (come on, did you even think that this guy's company would send the author a thank-you card?) And there's absolutely no way in hell that there's any logical consistency in writing free software for business use.
And you want us to PAY for this crap?
No he's right, flash does suck.
There isn't suitable user control of flash. flash is used in annoying ways(think ads) on many sites and isn't easy to enable/disable in any browser I've seen. If I had the control to only display the last frame of animation and disable frivolous and visually distracting events I could tolerate having the flash plug-in installed.
As near as I can tell flash use is never appropriate for a general use website because it lacks accessability settings and has a tedious enable/disable procedure. To me, that constitutes sucking.
By not making me install the plugin and then close my browser when I'm done flash free sites are doing me a big favor.
Since my web pages contain enormous amounts of text and are largely based on my hobby photography, interests in video and the like, they are really best viewed with graphical browsers.
:-(. Oops.
Most graphical interface designs, no matter how designed, have little to no mercy on text browsers. I would be better off having:
In a hurry? Text mode | Search [ ]
(flash page)
That might serve everyone effectively. I really need to put my sprawling pages in a database, but I just don't have the time. My other problem is that my pages are all formatted differently - there should be something that ties them together. But again, time's a huge problem.
I should consider server side includes, I suppose.
At any rate, I really should do something soon, since the only way to properly view my main page right now is Netscape 4
D
>No, blame the tool. When you author in HTML, you don't need to do anything to get that >functionality. In Flash, it's another item on the TODO list.
:
Riiight... Maybe I should throw out my computer too huh? Since it doesn't write the software for me, instead it's left it on the TODO list...
You obviously have no concept of Object Orientated coding, which is a shame because there is one important point to learn from it
NEVER do something multiple times if you can do it once and forget about it.
Obviously, you have to do it once in the first place (you can't just "throw away the computer") but hey - the fact that your using a computer means you at least partly understand the concept - I mean, you don't use a seperate machine for email, web browsing text, web browsing flash, web browsing XML, web browsing pictures, web browsing hyperlinked sites, web browsing... (etc. etc. etc...) do you?
Put the functionality into flash ONCE, and forget about it. Rather than have EVERY SINGLE author who ever makes a flash movie have to WASTE HIS TIME putting it in.
You might check with Macromedia, I'm a teacher, and as a teacher I bought Flash MX (It's the new version, the successor to Flash 5. The user interface is much more refined) for $99 USD. They may be willing to swing such a deal for non-profit groups.
On the Plus side:
Flash MX allows Flash files to be indexed on search engines, has accessibility features for vision impaired and handicapped users.
If used well, I don't think there is anything that can beat it for what it does. It's the most commonly used special feature plug-in around and most browsers can view Flash files (According to Macromedia's figures, 98% of all Internet users have the Flash plug-in installed).
File sizes need not be large at all, Flash uses vector graphics rather than raster graphics to save time on downloads (at the expense of CPU cycles on the user machine...the processing power needed to display vector graphics is somewhat higher than displaying raster graphics such as jpeg, gif and png images).
Despite what is being said in reply to your question, not everyone on the internet is an open-source fanatic that avoids Flash for ethical reasons. I would say a very miniscule percentage, and not likely within the scope of your target audience (to the upcoming firestormers, flame me, bake me, scorch me, but it's ture).
Using Flash on a website is not, be definition, bad design. Commerical designers the world over use it extensively, and for a reason.
On the Downside:
Flash has a steep learning cure. It isn't quite vertical, but it's pretty close to it at first. If you're used to vector graphics programs, that will help somewhat. Once you've learned how to draw and animate shapes, text and objects in Flash, you will discover that you have not even begun to scratch the surface, Actionscript is next, and it's enormously powerful. You will need to read several books on both Flash and Actionscript to come to grips with the full potential of the medium, also a good deal of time and practice to master it.
If someone in your group is passionately interested in learning the tool, and creating a great website with it, go for it...but he or she will be outlaying a fair amount of money and time on books and practice. I'll wager they'll get a kick out of it, and in time produce splended results, but Flash can be quite intimidating at first...if not to say opaque and inscrutable. This isn't Powerpoint! I think any tool you use will ultimately require a lot of study however.
Personally, I use it to give presentations to my students on many topics. I have one of my classroom computers hooked up to a very large presentation monitor, but I don't do very much webdesign with it at the moment, although I am making three or four sites using it, they are secondary to my current purpose. For the future, I'm looking toward web-based exercises and testing applications. I use it in place of many other programs, and I use it almost constantly. I've read a couple of books on it, and am reading three more (now mostly dealing with actionscript). I swear by it, but for what I'm doing, it so much more than adaquately fills my needs. It's overkill for me, but overkill is the American way, isn't it?
HTML itself takes quite a bit of education in good webdesign, even if you're using a WYSIWYG HTML editor, so some education is going to be necessary whatever you do.
Are there alternatives to Flash? Adobe's LiveMotion 2 looks interesting...and it will handle Flash SWF format files...but I don't think its userbase is nearly as large, and I feel you're probably better off just using Flash to make Flash files in the end. It does cost USD $199 however (introductiory price).
Adobe and many others are developing SVG, which are scalable vector graphics in XML, and they will do many of the things Flash can do...but I doubt if the SVG plugin is very commonly used at all at the moment. Check it out at www.w3.org/Graphics/SVG/Overview.htm8
This site contains links to many other articles on the subject, and I think it bears a lot of promise for the future of the web.
I'd vote for Flash, myself, but you're not going to get immediate results from it. I do have high praise for the product, but whatever medium you choose, you're going to have to do the hard work of mastering it. Flash is a means to this end, and then some.
Vince Frost
chente@attbi.com
>No, blame the tool. When you author in HTML, you don't need to do anything to get that functionality. In Flash, it's another item on the TODO list.
Unfortunatly this is simply a limitation of any technology that gives this level of control to the developer. People use flash precisely because it lets them do things like run animations/programs in the web page. If you have some sort of fast changing graphic (for instance a game/educational software) what is "back." The programmer needs to explicitly tell flash how to go back precisely because it has that extra power (if you don't believe this ask the question "why doesn't x-windows have a back button". Flash gives you similar power to an x-windows app.
Searching is similar. Quite simply if you want to display graphic images (which are often buttons or words) you need to tell the program how to do a search otherwise it isn't very usefull.
Of course flash effects can be arbitrarily resizeable. This is the same reason x-windows programs can't simply be resized, it doesn't always make sense. Flash is meant to be used primarily for graphic intensive operations. Its strength is precisely the fact that it lets the author control precisely how the output looks on the computer.
Quite simply all of these are disadvatages of giving the author such a high degree of control over the output. I am not claiming flash is as well designed as possible (maybe it could have more features to encourage authors to add these userfriendly features) however these are all issues endemic to any tool which addresses flashes needs. In fact flash is remarkably good at replicating the same results on differnt platforms.
It mostly seems that your problem is that people often implement flash for the wrong purposes. HTML is better for informational content b/c it has search builtin (esp if you aren't going to bother to implement it yourself). This is no more flashes fault than it is perl's fault that your ray tracer written in perl is too slow.
It is really unfortunate that I know of no good free flash development tools
If you liked this thought maybe you would find my blog nice too: