knowledge.lapasa.net

Greater Toronto Area Flash Platform Developer Blog

FITC 06: Ben Fry Makes Sense Out Of 010101 Nonsense

TAGS: None

valence
A screenshot of Genomic Valence visualization doesn’t do justice when you can say you’ve actually witnessed the application in action on a huge projector in front of an audience whose is just wow’d out.

Presentation Title
Playing With Data

Speaker(s)
Ben Fry (Ben Fry.com, The MIT Aesthetics and Computation Group, Processing.org)

Did I Stay For The Whole Thing?
Captivated from beginning to end. And then after the presentation was done, I was captivated again.

Reason For Attending
Wanted to see what this Processing fuss is all about.

Highlights
He talked about this umbrella of Computational Information Design whose goal is to take vast amounts of low-level abstract data and sculpted it in an interactive or visually appetizing manner that will trigger an emotional response. He demonstrated this notion using very abstract binary code and rendered it into something visually concrete and cognitively tangible. It’s only when we are able to take data to a higher level that we can see the relationships within that data which if we view data in it’s raw form, it would overwhelm us.

Ben went over some of his recent experiments. We looked at the binary data found inside a ROM of an Atari-like video game that he used to play when he was growing up. He then went on to explain how he was able to emulate the game using Processing. He then bumped it up a notch by showing us the Super Mario Bros. ROM and then reassembled it into the video game we all love.

He talked about his visualization work with genetics (Genomic Cartography) which was probably way over the audience’s head. I know it was way above mind. A side-consequence of his presentation was promoting Processing, a 2d/3d graphics API for Java.

Constructive Criticisms
Very intellectually engaging speaker who I believe did a suburb job of taking the audience to the low-levels of binary and then lift them up to a bird’s eye view where the numbers become visual elements that we can better interpret. I don’t know about the other people in the crowd but I walked away with a true appreciation of the high-level tasks that I do with a computer.

Would I See This Person Talk Again?
Yes. And at the end of the presentation, I would do the same thing this one guy did at the end of it: He requested Fry to show that spinning letters sphere thing-a-ma-jig. I have to admit that I was pretty blown away by it and also the fact that it’s actually useable. Definitely a very rich user experience. Later on I found out more about it on his MIT site. There are screen shots of it

Post Event Action
Give Ben Fry’s PhD dissertation (PDF) a good read; Keep an eye out for the multi-media book he is co-writing.

FITC 06: See other reviews

Chronological Overview of The Task-Centered UI Design Process

TAGS: None

  • Identify your audience and understand the world they live in such that the interface can tie into their tasks
  • Identify concrete representative tasks that users perform in which the system must accomplish. This will make for a good initial skeleton outline
  • Conduct research on existing user interfaces and look for ways on how to improve upon them without having to blatantly plagerize. No sense in reinventing the wheel
  • Try to scribble the conceptual interface on to paper rather than hitting the computer. Heading straight to the computer forces the UI designer to commit to too many decisions early in the process; With each task conceptualized, prioritize it under a key representative task as discovered in the second step. If it fails to be significant, discard the idea. If it is very significant, consider making it a new representative task
  • Re-analyze your design by attempting to quantify some of the properties that make up the system. An example would be to count keystrokes and mental operations (decisions) for the tasks the design is intended to support. See GOMS analysis and cognitive walkthrough
  • Prototype your design! Attempt to emulate results users would expect visually
  • Test your design with a sample of your target audience. Experience has shown that the real problems occur at this phase. As the design is being tested, gather real-time feedback like video taping them to collect immediate responses to performing system tasks
  • Develop the UI system by means of an iterative process. Ensure that required objectives are met for that iteration
  • Develop the code for the UI design with the intention that certain pieces of it will change in the future. Build it using object-oriented principals so that the system can evolve with change, not fight it
  • Those who are responsible for the UI design or make contributions to it should not be kept quarantined from the rest of the system development effort. UI designers should be rotated from implementing the design to actually dealing with the target users. The idea is that surprise innovations may occur if general awareness is increased
  • The UI design cannot be designed once and be like that forever. Users will evolve and their tasks will change. Thus, be mindful that the UI may have to go through an update to address changes how users perform tasks. Designers need to stay on top of these changes

Reference
Lewis, Clayton and Rieman, John. Task-Centered User Interface Design: A Practical Introduction. Colorado, Shareware 1994

Java GUI Event Handling

TAGS: None

Java and event handling: How events are passed to user interface components, how to create event handlers, and more
By Todd Sundsted

Summary
Here’s the rundown on event handling as implemented by the abstract windowing toolkit (AWT). This article describes the Event class and explains how the Java run-time system passes events to the components that make up a user interface. It also explains how to create event handlers either by redefining the handleEvent() method in a newly derived class, or by redefining one of its helper methods.

HTML Article: http://www.javaworld.com/javaworld/jw-08-1996/jw-08-event.html

Commentary

  • Event driven messaging instead of big loop polling
  • Event dispatching classes generate Event objects that descibe details about an event
  • Event handling can be done from within the object who dispatched the event or the event object can be propagted to a higher object in the hierarchy.
  • It looks like AS3/Flex has made this a core language feature with ‘event bubbling’. In Java, this is featured only in the AWT.

GUI Dynamics - Lecture 24 - CS211 Spring 2006
by Cornell University Computer Science Department

PDF of PowerPoint
http://www.cs.cornell.edu/courses/cs211/2006sp/Lectures/…

Homepage
http://www.cs.cornell.edu/courses/cs211/

Summary
Event listeners can be implemented in 1 of 3 ways:

Listener is defined as a method of a class (personal prefered method)

  • a class has one behavior of setting up a listener to an event
  • that same class has another behavior of handling events

Listener is defined as an Inner Class (Java Only)

  • Inside the class that will perform an addEventListener(), that object has an inner class definition.
  • When the addEventListener is performed, an instance of the inner class is created where it is passed into addEventListener()
  • ActionScript to my knowledge does not have inner classes. Alternative: Can use mx.utils.delegate

Listener is defined as an Anonymous Class/Object directly as a parameter of addEventListener()

  • function object is defined inside the arguments for addEventListener().
  • great for small simple tasks but bad cause it’s hardcoding implementation.

Task-Centered User Interface Design

TAGS: None

Task-Centered User Interface Design: A Practical Introduction
by Clayton Lewis and John Rieman
Copyright ©1993, 1994

PDF Version
http://hcibib.org/tcuid/tcuid.pdf

HTML Version
http://hcibib.org/tcuid/

Motive for research
Couldn’t sleep. Wondered around the internet and found myself at U of T’s 20059 / CSC428H1F Human Computer Interaction course webpage. Great links there.

Singleton vs. Static

TAGS: None

Some links I pulled up to learn more about the topic….

http://www.artima.com/forums/flat.jsp?forum=17&thread=4795
http://www.bitchwhocodes.com/archives/2006/04/singleton_vs_st.html
http://saloon.javaranch.com/cgi-bin/ubb/ultimatebb.cgi?ubb=get_topic&f=1&t=012004

  • Author: mlapasa
  • Published: May 4th, 2006
  • Category: FITC
  • Comments: 1

FITC 06: Get Great Looking Video Minus The File Size

TAGS: None


Sorenson Squeeze 4 on2 encoding beats out of the box Flash 8 on2

Presentation Title
The Art of Encoding Video for Flash

Speaker(s)
Derrick Ypenburg (New Toronto Group, Community MX, Focus On Media)

Did I Stay For The Whole Thing?
Definitely.

Reason For Attending
I’ve worked with FLV in the past. I am working on a video side-project. I hope to do more video in the future. Looks like video for Flash is here to stay.

Highlights
This was an excellent presentation that focused on one main thesis and that was that it is possible to get good quality video at a low bit rate. Each step along the presentation helped reinforce this notion. Key points to remember were:

  • If you are doing more serious encoding work, you are better off using a third-party encoder other than the Adobe Flash Encoder that comes with Flash 8.
  • A lot of improvement to video quality is not done during the encoding process but by applying pre-process filters prior to encoding.
  • One must be responsible for making the video reasonably accessible. What this means is that FLV hosters must be conscious of the amount of bandwidth used. The other thing to keep in mind is that viewers who are watching video encoded with alpha channels will see their CPU usage go up 4 time more than if they were watching flv without the alpha channel.

Derrick really hit it home that you just cannot just apply a generic setting for a particular bandwidth and expect amazing results. You really have to analyze the video and inspect for things that could be improved by applying pre-process filters and adjusting encoding parameters. In this respect, he did a great job arguing that video encoding is truly an art form that is easy to understand but a challenge to master.

Constructive Criticisms
Very clear and informative delivery for someone who claimed to have little sleep. It makes me think that if his session at FITC was good, then his instruction at New Toronto Group must be even better.

Would I See This Person Talk Again?
I would. Opportunities to see speakers at this caliber don’t come for free.

Post Event Action
Get my hands on Sorenson Squeeze and start directly applying the tips and tricks I’ve learned.

FITC 06: See other reviews

FITC 06: Adobe Keynote Explains Merger Is A Win-Win

TAGS: None


Mike Downey at FITC 06 Keynote (Photo Credit: DarbyMedia)

Presentation Title
The Adobe Keynote

Speaker(s)
Mike Downey (http://weblogs.macromedia.com/md);
Mike Chambers (http://weblogs.macromedia.com/mesh)
Sho Kuwamoto (http://kuwamoto.org)
Adobe mobile guy

Did I Stay For The Whole Thing?
Yes.

Reason For Attending
I attended this because I didn’t get a chance to attend the Adobe Q and A earlier in the morning.

Highlights
Watched a video of a bunch of people pop’n bottles saying Thank God for the Adobe and Macromedia merger. I was like scratching my head thinking why?

It’s my belief that buying out competition will give less choice to consumers. Furthermore, I am one of millions of content-consuming people who get annoyed when you inadvertently click on a PDF link where the Adobe PDF Reader consumes all my resources and time as it tries to load.

However being the selfish ActionScripter I am, I totally neglected to acknowledge that the merger has great merit for those content producers who use Adobe and Macromedia products on a daily basis.

One sample workflow was getting a chroma key’d video in After Effects into Flash. The green background in the video was replaced with an alpha channel and then it was exported to FLV. In Flash, the FLV is run against the stage which at runtime, the man is seamlessly imported into main movie which acted as a dynamic virtual set. If you have had experienced the hardships of doing things like this in the past, you cannot help but be in awe how easy it was to perform this task.

Future workflows hinted at the Keynote were Photoshop files maintaining their layer hierarchy and properties when imported into Flash. I think once that is ironed out, that would be pretty cool.

Another highlight was the FlashLite2 Mobile demo. Yes, the tools are very nice but they’re useless from a Canadian perspective because data services over cellular networks are not affordable to the masses. From what I understand, the biggest markets for mobile application and game development is in Japan and India because their carriers offer better deals on data.

Sho put on a quick Flex demo putting an dynamic Mp3 player together. The demo had a glitch in compiling the right swf. I was quick to forgive because we all understand it’s beta software. The MXML Mp3 player app was so simple that it’s easy to take for granted how much code is mid-level code (AS3) is abstracted away from the developer. I talked to him earlier in the morning between sessions and he was very friendly and approachable.

There was an Apollo demo but I wasn’t particularly blown away but that’s because it hasn’t hit Alpha. My first impression was that it looks like Flex running inside a 3rd-party Flash projector like ZINC or Northcode.

Constructive Criticisms
Nothing new I hadn’t heard about from mailing list and other sources. The photoshop workflow is very nice.

Would I See This Person Talk Again?
Highly likely as the work these guys do lay the foundation for what other developers and designers will do in the future.

Post Event Action
I would love to sit down and play with After Effects but I can only do so much. Studying the Flex API on the morning and evening train commute has taken precedence. Flash mobile in Canada has been nothing but a disappointment. For now, I’m just gonna put my hands on my hips and wait for this mobile app explosion to happen on Rogers, Bell, and Telus.

FITC 06: See other reviews

FITC 06: Open Your Mind To Open Source Flash

TAGS: None

OS Flash Logo

Presentation Title
The Open Source Flash Revolution

Speaker(s)
Aral Balkan (flashant.com, London MMUG)

Did I stay for the whole thing?
Yes.

Reason for Attending
I’ve always found open source development intriguing. I have a tremendous respect for OS (open source) contributors because they don’t code for monetary gain. They code for the passion of it. They also code to evolve the software by opening it up to other developers.

Highlights
Learned about OS tools that are out there other than AMES, FlashDevelop, AMFPHP. Will try to attempt to get MTASC into my work workflow. I am already using it for the odd personal project. One of things that will be deeply embedded in my mind because of this sesion is the reason why the commercial MMC is slow than MTASC. I took for granted that the Flash IDE is slow in that it compiles the graphics and then it compiles the code. Contrast this with MTASC in that if that provided that graphics remain the same, it is only the code that recompiles.

Constructive Criticisms
There was a lot to cover in such a short amount of time and things became rushed. One thing I have to say about the problem promoting open source is that the fact that it is “free and very cool” overshadows the actual need the software is trying to address. For the beginner OS tool user, they need to have the context explained in a transparent manner why would one choose to go with an OS tool over the commercial version. The reason why I am saying this is that something like AMES/FAME should be evangelized to application developers who use Flash. In a multi-platform environment where CVS, Unit Tests, ANT-like build scripts, and team-based development are the norm, OS tools as such have a lot to offer. Correctly me if I am wrong but I think applying Eclipse to anything else is overkill. I am placing too much emphasis on the Eclipse stuff but Aral did spend most of the time breaking down AMES.

Would I See This Person Talk Again?
Yeah, for sure. There are very few out spoken Flash developers in the Toronto user group, Flash In TO. London is lucky to have someone at the forefront of promoting OS Flash and informing other Flash people that we have options.

Post Event Action
Fiddle around with AMFPHP even though I’m kinda happy with old fashion URL Encoded HTTP Methods. Session notes is actually the entire http://osflash.org/ website.

FITC 06: See other reviews

FITC 06: Festival Definitely Opened My Eyes

TAGS: None

For the most part, the festival was good. Some of it…well…was simply not for me. I have a lot to say that is positive about the event. I’ll be staggering the review posts (hopefully) on a daily basis because I’d lose an entire day if I posted all my thoughts at once.

The following list are the sessions I attended (or indicated in detail otherwise) that I will be doing a review:

Adobe Keynote
Panel

ActionScript 3: How low can we go?
By: Darron J Schall

Behaviors and AI Simulations (in digital creatures)
By: Gary Stasiuk

Building Multi-User SWF Applications for Breeze Meeting
By: Nigel Pegg

Canada’s choice: Copyright Law and the Internet
By: David Fewer

Converging Media: Cross-platforms for the People
Panel

Flashup the world (with Yahoo!’s Map API)
By: Chuck Freedman, Dan Theurer

How and What of Geoff McFetridge
By: Geoff McFetridge

Introduction to Flex 2.0
By: Chafic Kazoun

Living and Working
By: Phillip Kerman

Magic, Deception and The Data Experience.
By: Dan LaCivita

Multiplayer Game Programming Fundamentals
By: Jobe Makar

Playing With Data
By: Ben Fry

Signature and evolution in Motion Design
By: Rogier Hendriks, Kasper Verweij

Techniques for Accessible Flash Design
By: Bob Regan

The Art of Encoding Video for Flash
By: Derrick Ypenburg

The Open Source Flash Revolution
By: Aral Balkan

Writing Your Way to the Top
By: Snow Dowd, Robert Reinhardt

© 2009 knowledge.lapasa.net. All Rights Reserved.

This blog is powered by Wordpress and Magatheme by Bryan Helmig.