First things first. the mighty copy-paste from wiki:
Art is the product or process of deliberately arranging symbolic elements in a way that influences and affects one or more of the senses, emotions, and intellect.
i was wondering, is there a possibility to use ActionScript and the flash platform as a tool for creating something that has an aesthetic effect upon the above? the question might be extended to any programing language, script, high or low level.
eyesight and hearing are the two most important senses. we use these at up to an abusive level now days. manifesting in an excess of advertising, low grade pop music, movies that have nothing to say, but all of them achieve the goal of some demographic groups to identify themselves with. most of them are making lesser persons from people.
there is no question that images and sounds have an effect. and now i can safely say that both can be created and manipulated out of thin air using nothing but computer language. but why now? simply because computers and code got sophisticated enough and easy enough to come close to the ease and sophistication of plucking a string. further more, the quality of the resulting sound is high enough to leave an imprint in one’s mind. note that AS3 since flash player 10 can directly manipulate sound data, it has become fast enough to do so.
i don’t get into images. everyone knows the peaceful bliss one feels if it glazes upon the frames a fractal animation. or the programmers joy when something is finally moving in a straight line.
now here we have a problem! and a huge one. 90% of our users never even let the idea cross their mind how many thinking, vision, hard work goes into something as simple as a select box (coded from scratch, that is). and that is very simple compared to the problems we face daily. having a woman sit down on a chair and working your way trough composition and details just doesn’t compare. a skillful artist might create a painting that in his eyes appears perfect. a skillful programmer is almost disappointed every time a project is finished. a lifetime of battle against imperfection. ‘n what a battle! if our tool changes more times a year then our underwear.
from my opinion, this is almost inevitable. if you do a thing, a small but purposeful thing that the user has never saw and heard, you have all the chance to trigger an emotion. here is where flash is at it’s best. it has all the necessary tools for creating really interesting stuff. i am not talking about 3D. 3D is useless when it comes to UI. doesn’t have to be excursively visual. if you do a hipperoptimized code that manipulates huge amount of data in a blink of an eye, it also can run shivers down the spine, (on the one’s that does have the capability to understand the feet) especially if you pop a message with the numbers.
all the potential effects are there. unfortunately very few of us care. we look back, we analyze the initial purpose, we test the build and we say it is good. no! it’s not! i refuse to bowl down to a rigid society governed by OS buttons and windows. refuse linear animations. refuse the synchronous. refuse practices given by people with 500 lines in their portfolio. do yourself a favor start writing poetry, simply because you can.
the big example
technically speaking iPhone is a big round 0 (zero) compared to other devices. juts a shadow of it’s PR campaign. a toy on an age old unix machine. but despite the tons of technological and feature shortcomings it’s software in itself is an artistic masterpiece. it was designed around the user, not the carrier, not apple, not nothing. also need to mention that the response of the UI was also making even the simplest of phones blush.
advice for the future
- allays dissociate UI functions from data functions. don’t make the user wait for a response if it’s more then 50ms. stuff in some loading animation somewhere while data is in transit, twisting and morphing.
- – if it’s possible let the user do something while data is being processed.
- handle and explain all possible errors after eliminating the ones, that you can handle without the user’s intervention, and not interfere with the purpose of the app. don’t trow up something like “critical, fatal, system error” ie: don’t spook the user. a good old (not that old) “whoops, we kinda lost the connection (or something)” is a thousand times better. error popups are the one place where you don’t have to be diplomatic, or even serious.
- every single transaction should have a few milliseconds animation. whether it’s a button or a context menu, doesn’t matter. let it flow. even if you build a dead serious space shuttle, hide it, give the impression of ease. make people feel comfortable even while they are deleting millions of bank accounts at a stroke.
- give away WOWs not WTFs.
everyone knows how to manipulate data fast and efficiently. there is distributed processing, state machines, chaining, … but keep in mind that no person will look at the threads in your canvas. the picture is what matters most.