Amen brother! Sing it!
Printable View
Amen brother! Sing it!
Could have told you that on page 3 ;).Quote:
As to this thread, it is all getting a bit pointless now. I think everyone who's got a view has said it, and now it's just a case of repeating it over and over in the vain hope that people in the other camp suddenly click and go "Oh yeah, you're right".
Quote:
I don't go into these conversation expecting anything is going to be resolved. I assume most people will leave the conversation with the same views they came in with. However, as with most ****batory exercises, it is not really producing anything in the end that is the concern .
I did exactly the same as Kortex one post before him on that particular page...
ah well, i'll chip in 2 cents.
i like as3 more. it takes longer to develop things. but if a bit of added complexity in working out some code is the price to pay for all that extra speed and functionality, then its worth it in my opinion.
if there was such a thing as a player with flashes install base, and graphics capabilities, that forced you to code in an obscure form of assembly language to go even faster, then i bet me and plenty of other pixel pushers would switch over night.
EDIT..
on the other hand, if you use flash for other reasons like fast and beautiful content creation, then i can understand why you wouldnt bother with as3.
i thought of an interesting example...
its the same as using...
...instead of...Code:if( x < 0) x=-x;
x >> 0;
x++;
x++;
x++;
the second piece of code makes way more sense, is easy to debug, and write, but doesn't do as good a job as the first.Code:x = Math.abs(x);
x = Math.floor(x);
x = x + 3;
but if everyone was forced to code in the style of the first chunk, then a lot of people would switch to silverlight, as for most purposes its probably unnecessary, and a complete pain in the ass to work out.
to each their own. but as long as flash keeps its install base then most people from both parties will jump through whatever hoops it takes to get their content out there!
:-)
That's a quote from one of those guys in Mike Chambers' article. Funny he quotes that when Adobe removed all those non-standard features from AS3 that made everybody's life easier. Looks like Adobe is working against its own self-interest.Quote:
Non-standard features are the future, and suggesting that they are somehow “bad” is to work against your own self-interest.
AS3 is not that complicated, but a lot of people don't want to bother, especially when in 90% of cases you'll end up with longer development time and absolutely no benefits to show for it.
" Hey Mr. Client!! I have to charge you a couple of $1000 extra, but you get this cool " Built with AS3" logo to stick in the corner of your game.
The whole not getting the Ecmascript 4 spec accepted as standard thing is very interesting.
Look at Adobe and all Adobe friendly bloggers. What´s the general view there?
Things in the vein of these things get said and repeated often:
Big evil MS blocked getting it accepted as standard. The parties blocking this are only doing so to block innovation on the web!!! Standards are important. But yes, we will continue to innovate!!!
Come, on, gimme a break!
Let´s have a quick look at the history there: AS1;Flash 6: Flash´s scripting language had evolved till there, had become considerably closer to javascript, many people in the "serious" programming world working in java or C++ laughed, didn´t take flash´s AS serious as programming language, but with time they had to accept that the possibility to combine code and media with ease and flexibility like in few to no other environments allowed to rapidly create nice results not possible in java or C++ in a comparable timeframe.
Flash continued its success story.
Fast forward to today: Adobe obviously wanted to attract way more of the "serious" programmers and get AS respected as serious language, many changes were made then. Thanks to AS3 and the way the newer player/interpreter,GC etc work combining non code generated media with codeside has turned into way more work and has become more time intensive . Thanks to the changes in language flash´s AS is becoming more and more a Java wannabe clone.
So again, Innovation?!? Where´s the innovation in turning AS into a Java clone?!?
The reality is Adobe wants to turn Ecmascript/AS more and more into a Java clone and well, while some more used to Java like workflow like it, many many others obviously don´t like that.
First it was more and more people from the flash community moaning, now The Ecmascript 4 suggested spec was declined by a big group of decission makers.
Its understandable Adobe tries to sell their loss in the most positive way possible but yeah, saying "we want to innovate, the others block that" type things while you reduce more and more what made flash innovative and at the same time copy more and more of another language and forced workflow?
Laughable.
Totally agree. Perhaps this is Macromedia/Adobe difference? with Macromedia being happier to have "non" standard er standards for their language while Adobe is all about appealing to "real" programmers? which has alienated a large proportion of their fan base.Quote:
Originally Posted by tomsamson
But what you said it absolutely correct when you highlighted being able to combine media and code easily. That's exactly why I liked Flash. Before Flash I was using C++ and direct X 6, and while there were libraries lying around that made things easier it was still a pain in the ass to get it to do basic things, without having to spend (waste) time on setting the code up in the right way, complying with certain standards to get everything to work together, sound familiar? :), then I saw Flash, and instantly I recognised that this program was an evolution in software development, because so many of the things that were difficult to do before in a more "standard" development enviroment, were now a breeze to do in Flash (and this is even the old Flash 5). Fast forward to AS3 and they have gone right back to the old ways of doing things, and they have lost the one thing that marked Flash out as a step forward....and that is to allow creative people to be able to create with a COBINATION of visuals and programming, that's the future, otherwise we might as well all go back to programming assembley language!
While i agree with pretty much all of the rest of your post and from talking with many other flash platform content creators i know that many share your view , i think you got something wrong in your very first paragraph, this here:
"
Perhaps this is Macromedia/Adobe difference? with Macromedia being happier to have "non" standard er standards for their language while Adobe is all about appealing to "real" programmers? which has alienated a large proportion of their fan base.
"
This is not right like that, the whole change of mindset and change in focus for the flash platform already happened under the Macromedia leadership, Adobe is "only" continuing this path.
I think it is important to get this right, its good to get right to the emerging point of the problem in history, know why and when it happened and what all since then is wrong to be able to state the wishes for changes in the future well.
Example: Many people say they were fine with the fflash language/way of doing things pre AS3 but now hate the way things should be done with AS3/the F9 player.
This would imply that people loved AS2, which could make Adobe wonder because AS2 workflow was already the first (laughable) step towards AS3 workflow (although during export it was compiled back down to AS1 workflow).
When i talk with people disliking AS3/F9 player´s workflow after a while it usually turns out that they liked working with AS1, Flash 6 version most and usually even in flash 7 with AS2 export did most of their stuff in AS1 syntax/coding manner.
So to me the emerging keypoints for the "new" praised workflow (more and more becoming cloned java workflow) are these:
-all good and fine till Flash 6 evolution (including it), with Flash 6 codeside and art creation side featureset of flash had evolved so much that one was able to make way more applicaiton types a reality. The language was also not non standards following really, it followed the Ecmascript standard and was to a big part the same as the back then standard conform javascript version spec.
-Although one could create way more things in nice way in flash 6 (than in older versions), the flash ide´s code editor was way outdated and limited compared to other coding tools, many flash users moaned about that and seperate freeware coding tools popped up more and more in the community.
-Jakob Nielsen and other such guys talking publicly against flash, talking about usability issues with apps made in it, focus on the wow factor rather than usability etc
-Flash had gotten more and more attention in the designer and programmer world but programmers coming more from C++/Java background didn´t like the language and workflow in flash IDE and wouldn´t take flash seriously or consider switching over to it happily until the language/workflow was changed
So yeah, in my eyes these are some of the keypoints that made Macromedia back then think about putting more of a (java/C++ used) programmer centric workflow and language going there.
This then had first big impact with Flash MX 2004 (Flash 7 ), examples: Introduction of AS2, components whose content could not be edited in the Flash ide anymore and several other such things.
AS2 should lead to codeside application design closer to Java but with the Flash IDE´s laughable code editor it wasn´t propperly usable so the seperate coding tools continued their winning streak, among those the most popular among developers solution: FDT plugin in Eclipse allowing coding in Eclipse, that combined with several other tools,plugins and a custom compiler and hey, there was already a toolset and workflow going sorta in the direction making Java developers happy and well,for all others at least giving em some propper coding tools.
-That was realized of course by Macromedia and they surely thought, hey,we can make an Elipse based coding tool,too!
There were of course other important points there which i didn´t mention all to not write even way longer, but yeah.
I feel like now the stance of Adobe and many in the Flash/Flex developer community (who stepwise adopted the workflows of newer versions) is that they think they did pretty much all great,those who don´t like the AS3/F9 player´s forced workflow just aren´t ready or evolved enough as programmers yet, they will get it maybe with time or fall behind getting outdated.
They seem to not get that programming languages besides AS mostly evolved towards beeing higher level languages, less lines of code lead to more functionality, the compiler picks up more "faults" of the developer, more of the ressource managment work is done automatically in the background.
With flash´s language and player evolution its going the opposite direction, because it started with most high level modern workflow and is now more and more adopting older language/workflow manners.
When one talks against AS3 or the workflow forced thanks to it combined with the new player version one is by some automatically disregarded as developer, as in "you just don´t get it"
Well, then i each time sadly have to bring up unity3D which basically evolved in the way flash should have.
Way,way,way better performance is achieved thanks to propper hardware acceleration, not by forcing the developer to work in ever lower level ways.
One can code in 3 languages and even mix several within one project.
You can for example code in Javascript (very close to AS1) and/or code in C# (way closer to AS3) and even combine both in the same project.
No matter which you use performance is always dramatically better than in flash.
So yeah, those who like coding ever lower level ways and seeing how it takes longer and longer that way to get the same things done should best go to haxe and code close to pure assembly ways to get sorta flash content with a laughable tidbit better performance for in return way longer dev time,have fun.
Afer doing a few projects in AS3/F9 player workflow i think that´s a waste of time and meanwhile i´d rather make AS1 content in flash and that means content that runs fine in flash that way and is quick to create and for things that make no sense to make in flash due to performance reasons i´d work in unity3D instead of beeing fooled into believing one has to code in lower and lower level ways to get any propper perofrmance at all.
dude, seriously, that is mammoth
Hi all,
Not that I have a huge history coding in Flash, many of you were present when I got my start even.
But I have to agree mostly with things Malee has said, I enjoy having AS3 as an option for larger projects, it really makes my code clean, makes sharing parts and working with a team easier.
I also enjoy the new event system I think the most.
The greatest thing to me about flash right now is that I can wip out as1-2 software quickly if need be, but I also have the option to really be proper and use as3.
just my 2 cents.
edit: I just wanted to add that alot of teh things people complain about, as far as the easy things like getnexthighestdepth remove or attachmovieclip, and things like this are really not that much more difficult, I wrote my as3 classes for these months ago, and now use them in every project.
Pretty much the same thing malee has been saying, if you take the time to write classes to do most of the "simple" things done in as2 it wont take long bfore writing in as3 is just as easy as 2, because you have most of your operations already written
I don't remember how to code in AS2, but I remember that it was bad.
Funnily enough I've just started a new project today and I'm using as2 as it's a really tight turnaround.
Void and _alpha is catching me out every time. Delegate seems really clunky now, and when I first started in as3 mc.removeEventListener(event) seemed insane compared to delete mc.onEnterFrame, but the old way feels kinda dirty now.
Funny how new things make old things that you thought were still good, seem not ( Like old trainers ).
Squize.
Like old girlfriends.Quote:
Originally Posted by Squize
I was doing something with as2 a few days ago too and the way the keylistener worked was just so strange.
Can anyone actually say they liked the way it's done in as 2 more? Using some weird static methods of some Key class and making the listener an Object?
var keyListener:Object = new Object();
Key.addListener(keyListener);
keyListener.onKeyUp = function() {
if (Key.getCode() == 32) {
trace('pressed a key!');
}
}
vs
addEventListener(KeyboardEvent.KEY_UP, onKeyUp);
private function onKeyUp(e:Event):void{
if(e.keyCode == 32){
trace('key pressed');
}
}
not much love for AS2 in this thread I think! :)....well I'm still using AS2, because I don't have time to get into (or get stuck with) AS3, I think I might try the big change over at Xmas, and fingers crossed all the games I do next year will be AS3. Code I'm always doing is this..
or..Code:var myMC:MovieClip = mc.attachMovie("clip", "helloMC", 1);
myMC._x = 100;
myMC._y = 100;
myMC.gotoAndStop("someFrame");
myMC.onEnterFrame = mcFunction;
how would both those simple bits of AS2 code be done in AS3?Code:myBtn.onRelease = function(){
_root.doSomething();
}
mostly though the thing that bothers me about AS3 is what with all this standards business going on, what's going to happen next? I really really can't afford to spend a month learning AS3 and then they go and change everything again.
Code:var myMC:MovieClip = mc.addChild( new Clip() );
myMC.x = 100;
myMC.y = 100;
myMC.gotoAndStop("someFrame");
myMC.addEventListener(Event.ENTER_FRAME, mcFunction);
or cleaner:Code:myBtn.addEventListener(MouseEvent.MOUSE_UP, function(evt:MouseEvent):void { _root.doSomething() });
Code:function mousePress(evt:MouseEvent):void {
_root.doSomething();
}
myBtn.addEventListener(MouseEvent.MOUSE_UP, mousePress);
I personally use AS2 least nowadays. In AS3 i dislike that more lines of code are required to write pretty much anything, that one has to write quick access/control classes/usual methods/statics etc oneself,buggy movieclip control,buggy GC and loading/unloading handling seperate swfs while cleaner in code setup not as versatile and well working as in flash 6 AS1.
It has advantages in performance and clean code structuring though so yeah, there is some use for it (A i said before in most of those use cases i´d rather use something else than flash though to get any really good performance).
AS1 is cool to me because it allows to get results way faster thanks to requiring less coding and debugging time for the same thing next to some other nice sides.
AS2 is the bastard mixture of both, not fully the one nor the other and so it lacks most upsides of both so i have least use for that.
I also have the feeling that many others who talk negatively about AS3 and say they liked AS2 more actually mean AS1 but i think i already said that here.
thanks for the clarification, that seems straight forward enough, but it's the whole event listener thing that I need to get my head around.Quote:
Originally Posted by mr_malee
So what's everyones prediction of where this is all going next? I don't mean what you would like to happen to the player and AS3 but what you think WILL happen.
Before the recent Ecmascript debacle i´d say its totally sure that Adobe will continue on this path (of getting closer to Java in language and workflow).
Now that their suggested spec was declined its not that easy to tell right now. We´ll have to wait and see if they stick more closely towards what the standards commitee settles on or continue their mentality of being "innovative" in copying java more and more.
Similar things could be said about javascript specs/variations in browsers:
Adobe made the VM and other things available in open source to mozilla etc in hope those would adopt as many things as possible and that way making the language/spec type they go for become the defacto standard with time thanks to beeing used by more than just the flash platform.
But now the spec was declined so its not sure mozilla will actually stick to picking up what Adobe likes em to.
Also now the Google browser Chrome came up which has its own JS virtual machine so again not using what Adobe would like most and regarding the nice first batch of positive feedback Chrome received and the immense force of google to position something new well in the market it could easily happen that their browser quickly surpasses firefox as the most used browser next to IE.
So yeah, lots going on there recently, as i said we´ll have to wait and see how that plays out over the next year.
All these news will probably not affect Flash 10 a lot anymore so it will be more interesting to see what happens after that.
And whats even sweeter is being able to add the listenr to a container and it effect all children, instead of havign to add a listener to each object in as2Quote:
myBtn.addEventListener(MouseEvent.MOUSE_UP, function(evt:MouseEvent):void { _root.doSomething() });