Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie

Flash vs Canvas for rich interaction - would you tell a student to make the jump?

Options
  • 15-05-2013 11:46am
    #1
    Registered Users Posts: 371 ✭✭


    I was at the Crafthouse meetup in Dublin last night, (it was pretty good) and during the panel discussion, an audience member said something that I'm still mulling over. The theme was that of education for industry, and among a list of things the person felt was out-dated in their course, they listed "flash, sprites and actionscript".

    Now I don't do a thing with flash, and I work with canvas now and then. Part of why that is though, is that I tend to works with things that are functional, rather than engaging. If I was trying to make something that engages young kids, I'd probably make it in flash, because, in my experience, it's a better, more optimised way of delivering rich interaction than the canvas is, and that's before you start talking about what a pain coding for canvas actually is, and how limited your options for creating elements are. Sure flash won't work on a lot of mobile or tablet devices, but a lot of more standardised web stuff is as creaky as hell on those anyway.

    The most celebrated canvas/javascript games of the moment, from what I've seen, are most of a decade behind what can be done in flash. I know games are a bit trivial, and many canvas interactions work fantastically well, but I believe it's a good example of an area where people strive to get the most out of a technology. Also, I've never opened a flash game and have it insist that I use Chrome, as some canvas-based projects have.

    I suppose if a student asked me what to do, Flash or Canvas + Javascript, I'd say "Do both, canvas is already practical for a lot of things you can do on the web, but it's a pain in the hole to work with. Flash isn't going to be around forever, but right now it's still the best thing to use for a lot of rich interaction, when it does go the way of the dodo, which it will, any IDEs which come around will likely have built on the same conventions as Flash, and ActionScript isn't a million miles away from Javascript, so the lessons you've learned working it will still have value, and it should feel like familiar territory."

    What does everyone else think?


Comments

  • Moderators, Education Moderators, Technology & Internet Moderators Posts: 2,588 Mod ✭✭✭✭KonFusion


    I suppose if a student asked me what to do, Flash or Canvas + Javascript, I'd say "Do both, canvas is already practical for a lot of things you can do on the web, but it's a pain in the hole to work with. Flash isn't going to be around forever, but right now...

    I agree. However I think what Emma was saying was that Flash was being taught as a tool to do basic web design(or on some courses, build entire websites), whereas it's no longer a tool that should be used for that application. Yes it's valuable to learn both, but how each should be implemented is conveyed poorly.

    There are people coming out of degree courses that still make entire websites in Flash and have no idea what web semantics are, nor are they appropriately aware of the limitations of flash.


  • Moderators, Society & Culture Moderators Posts: 9,689 Mod ✭✭✭✭stevenmu


    I'd say to go with Canvas. Flash is effectively dead, and even Adobe admit it at this point (and their design tools will now export to Canvas/Javascript). It's only a matter of time before full desktop browsers have flash disabled by default.

    Canvas can already do everything possible with flash, and if you include WebGL it's now way ahead (for e.g. the Unreal Engine 3 HTML 5 demo). And the story for Canvas will only get better and better as tools and frameworks like Kinetic.js and EaselJS mature.


  • Moderators, Education Moderators, Technology & Internet Moderators Posts: 2,588 Mod ✭✭✭✭KonFusion


    stevenmu wrote: »
    Canvas can already do everything possible with flash, and if you include WebGL it's now way ahead (for e.g. the Unreal Engine 3 HTML 5 demo). And the story for Canvas will only get better and better as tools and frameworks like Kinetic.js and EaselJS mature.

    Not only that, but if the student can get to grips with all that (and there's a fair bit of self learning involved with manipulating canvas) and they go into a job that requires flash for some reason (making ad banners or the like), learning it should be a piece of....pee.

    And then the time saved not learning flash could then be put to better use. (and don't even get me started on courses still using Dreamweaver!)

    Canvas & JS > Flash


  • Registered Users Posts: 371 ✭✭Fussgangerzone


    KonFusion wrote: »
    There are people coming out of degree courses that still make entire websites in Flash and have no idea what web semantics are, nor are they appropriately aware of the limitations of flash.

    Jesus, that is a disaster.


  • Registered Users Posts: 2,021 ✭✭✭ChRoMe


    stevenmu wrote: »
    I'd say to go with Canvas. Flash is effectively dead, and even Adobe admit it at this point (and their design tools will now export to Canvas/Javascript). It's only a matter of time before full desktop browsers have flash disabled by default.

    Canvas can already do everything possible with flash, and if you include WebGL it's now way ahead (for e.g. the Unreal Engine 3 HTML 5 demo). And the story for Canvas will only get better and better as tools and frameworks like Kinetic.js and EaselJS mature.

    Eh thats still a long long way off. Further more with everyone jumping up and down about HTML5, fact is the browser support matrix is still very much lacking.


  • Advertisement
  • Registered Users Posts: 371 ✭✭Fussgangerzone


    stevenmu wrote: »
    I'd say to go with Canvas. Flash is effectively dead, and even Adobe admit it at this point (and their design tools will now export to Canvas/Javascript). It's only a matter of time before full desktop browsers have flash disabled by default.

    Canvas can already do everything possible with flash, and if you include WebGL it's now way ahead (for e.g. the Unreal Engine 3 HTML 5 demo). And the story for Canvas will only get better and better as tools and frameworks like Kinetic.js and EaselJS mature.

    I agree that Flash is on the way out, and look forward to canvas, html and/or javascript being the dominant platform. However there is still some way to go in terms of commercial use.

    I worked on a project where everyone was being very forward thinking and part of the pitch to the client was how html5 and canvas were going to be the basis of it. Unfortunately, when it came to running the stuff, sprites were easily ten times bigger than their flash variants when we sued canvas, and hover and active states made it worse again. In the end it was lots of html and javascript, with wee flash movies for the "sparklies".

    As for canvas doing everything you can do in flash, I think that's true, but by god, will it run a lot more slowly.
    KonFusion wrote: »
    Not only that, but if the student can get to grips with all that (and there's a fair bit of self learning involved with manipulating canvas) and they go into a job that requires flash for some reason (making ad banners or the like), learning it should be a piece of....pee.

    And then the time saved not learning flash could then be put to better use. (and don't even get me started on courses still using Dreamweaver!)

    Canvas & JS > Flash

    You have some good points, and I definitely agree with the idea that canvas and js are better than flash. I suppose I'm thinking of where jobs are at the minute, and how the commercial sector, especially as it relates to agencies, still use a lot of flash. A campaign might have a version for tablets and phones, with the fancypants version still relying on Flash.

    Desktop vs mobile are still seen as different platforms to large extent, and that's pretty accepted. When it comes to canvas though, we need to get to the stage where 99% of visitors won't need to think about what browser they're using, and things load nice and quickly. I don't think it'll be too long before canvas is more widely deployed and standardised than flash is, but I think there'll be a few years (less than 3, hopefully) yet.


  • Registered Users Posts: 371 ✭✭Fussgangerzone


    ChRoMe wrote: »
    Eh thats still a long long way off. Further more with everyone jumping up and down about HTML5, fact is the browser support matrix is still very much lacking.

    That's what I've found. As for flash being disabled by default, I think Chrome was the first browser to have it enabled by default, and don't know any others, though I haven't checked.


  • Closed Accounts Posts: 7,145 ✭✭✭DonkeyStyle \o/


    I prefer working with flash/as3/flex/etc. (it's very Java-like), but Adobe's support for it is getting god damn depressing.
    Working with plain-old JS and Canvas feels awkward and bare compared to what you get as standard in flash. "Oh, that doesn't exist here, why let me just re-invent the wheel."
    Although I haven't tried any libraries for canvas, so maybe it's better than I think.


  • Registered Users Posts: 371 ✭✭Fussgangerzone


    Although I haven't tried any libraries for canvas, so maybe it's better than I think.

    So far, I've used paper.js, and it's been fairly depressing.


  • Moderators, Education Moderators, Technology & Internet Moderators Posts: 2,588 Mod ✭✭✭✭KonFusion


    Working with Flash isn't the problem. Flash still has many applications.

    The problem is the way flash is being taught is wrong. The way students are being shown how to implement flash is wrong. They're using it as a tool for something it's no longer meant to do.


  • Advertisement
  • Registered Users Posts: 371 ✭✭Fussgangerzone


    KonFusion wrote: »
    The problem is the way flash is being taught is wrong.

    Aye, if it has a place in the toolbox, it should be as a complementary technology, not a foundation.


  • Closed Accounts Posts: 7,145 ✭✭✭DonkeyStyle \o/


    Well Flex and Air speak to that application. Which is what kind of annoys me when people cheer on the decline of Flash. There's a lot more to it than the timeline and a stage full of vector graphics (I don't even use "Flash"). I think what people actually don't like are flash banner ads and whole-flash websites. Which will just be replaced by Canvas anyway, once the tools become more accessible. Maybe that's why we're not yet seeing grotesquely over the top Canvas websites, but you know there are people out there that want to make them, and software companies only too happy to sell them the software. :D
    I mean, I could do one of those swishy intros in Canvas, with a 'Click here to skip intro' button.


Advertisement