Los Angeles Technologist, Entrepreneur, Educator and Community Leader
Random Images from R Blank

Category — General Posts

Synthia Awakens

I am back in the sunshine of Topanga, having returned from FITC Amsterdam, and it was, as usual, a really great time.

While in Amsterdam, I debuted Synthia, the first publicly usable musical instrument to emerge from Project Ludi at Almer/Blank Labs.

Synthia on the web, is a Flash 10 application that translates pictures into music -- infinite classical canons -- using a small set of rules that establish key, restricted notes within the key, tempo, instrumentation and the score.

I actually developed Synthia as a demonstration app to accompany my talk, 'Hearing Pictures' (which went really well at FITC Amsterdam, and which you can see at FITC Toronto in April), but the results were so fun to play with, that we decided to make it a publicly usable web-application, where anyone can upload any picture, have Synthia turn it into music, and then share it with your friends and embed it in any web page.

We will be posting a lot more about Synthia in the coming weeks, and updating her rules and features over the coming months. But, for now, I'd encourage all of you to play around with the Synthia Composer (just upload an image and listen), or just browse the gallery to hear what other pictures sound like.

And, if while playing with Synthia, you have some ideas on how we might commercialize her, share your thoughts and ideas for a chance to win an iPad.

Share and enjoy!

-r

March 2, 2010   No Comments

Synthia Set to Go

Synthia

For those who've been reading this blog for a few months, you might recall my mentioning a few times about my side work on translating pictures into music -- and specifically, the Synesthesizer, a musical instrument that works by translating pictures into music, utilizing metaphors inspired by synesthesia.

Well, I've done a bit better than that -- way better than we could get the Synesthesizer to work. In fact, we at Almer/Blank Labs, have just completed the finishing touches on a new software-based musical instrument that we are debuting at FITC Amsterdam.

Her name is Synthia. And I wish I could tell you more about her right now. But that will have to wait another 133 hours. Because Synthia will debut on February 22nd, at 5PM CET (Amsterdam Time) / 9AM PST (California Time).

She will debut as soon as I complete my talk, Hearing Pictures, I will be able to tell you more about her. In addition to the release of Synthia, the talk itself will be *really* good. I've given a lot of talks, and this is going to be, by far, the best and most exciting.

If you're planning to be at FITC Amsterdam, then you will most definitely not want to miss this talk @ 4PM in Shaffyyzaal on Day 1, Monday, February 22nd.

Share and enjoy!

-r

February 16, 2010   2 Comments

Let Them Sing it For You

As I've been posting about more frequently (including just today about my Synesthesizer), I'm intrigued by the concept of automated music generation.

Let Them Sing It For YouA few weeks ago, I stumbled upon this cool little web app (I forget where I found it), called 'Let Them Sing it For You'.

It's a Flash app that will try to form music from words. You type in words -- any set of words you might like -- and then click 'play'. LTSIFU will then process through its database, cross-referencing the words you've typed with the songs in which those words appear.

It appears that LTSIFU searches word-by-word -- that is, it does not search for whole phrases, but instead occurrences of the individual word. And, if you type in a word that doesn't exist in the database yet, it will try to break that word down into smaller words or sounds that might exist. And, if that doesn't work, it'll insert a 'beep' into your track. If you know of an occurrence of a missing word, then you can send that information to the creators for inclusion.

The result? It's a lot of fun to play with, but, well, let's just say that what they sing from you is something far short of music.

If LTSIFU searched for larger phrases (say of two to five words) then you'd have a bit more consistency -- and the result would sound better. But, of course, searching for entire phrases is a sort of cheat to create better music, given the rules of this system -- this system is assembling tunes from multiple songs, to create a new single tune, using individual words as the lookup keys.

When you treat each word as an individual and completely distinct piece of data -- as LTSIFU does -- the words lose their context, and thus their meaning. As a result, you can't really hope to establish any pattern -- the information is random, and randomness defies patterns.

Take the word 'apple'. If I enter into LTSIFU 'an apple a day keeps the doctor away' or 'I love life in the big apple' -- should LTSIFU interpret 'apple' in the same way? Although they are both instances of the same word, they clearly mean different things as part of different messages. Or, in an example that perhaps provides more clarity, take the word 'bear' in 'that bear ate all the honey' or 'the right to bear arms'. In this case, not only is the overall message different, but because bear is a homonym, each instance actually means something different that would be impossible to intuit without the larger context of the sentence in which the word 'bear' appears.

Stated another way, it is impossible to create an accurate translation of a page of text from one language to another, if you analyze and translate each word individually. Instead, the translator must inspect the sentences and paragraphs, and the ideas and emotions that are created by those messages, and attempt to translate those into the other language. That's what creates a good translation.

So, for this LTSIFU translation to work more accurately, it must interpret the words more like humans do -- as part of a larger message. How? Well, there are numerous ways. Language is, of course, a huge construct -- English alone has thousands upon thousands of words -- and they are assembled into literally infinite numbers of larger patterns. How on earth do you begin?

Well, you begin any endeavor like this looking for existing knowledge in the field. In this case, the field is linguistics. There are any number of rules from which you might begin this endeavor, but let's take one as an example. It might interest you to know that, while there are many thousands of words in English (the Second Edition of the Oxford English Dictionary contains full entries for 171,476 words in current use, and 47,156 obsolete words), but there is a very small subset of these words (fewer than 200), called non-content words, that form over 60% of the words on any given page of text. ('a' and 'the' and 'some' and 'many' and others).

Two things distinguish non-content words: first, how often they occur; and second, the fact that they have no tangible meaning on their own -- their meaning relies entirely on their context.

So these words occur a lot (both in real life, and one assumes, as input to LTSIFU), and they have no implicit meaning. So, one promising starting point would be looking for patterns of these occurrences of non-content words and seeking patterns in those occurrences. Take the word 'the' in the phrase 'the rain in spain': perhaps you'd search for instances of the word 'the' that occur at the start of sentences; or instances of 'the' that occur within two words of a weather pattern (here, 'rain'), or within five words of a country name. These are just examples that would establish more relevance in the way this translation engine interprets input.

That's part one -- interpreting the input.

Part two -- generating the output -- is a separate matter. Again, it seems to me that for the translation to be meaningful, it must consider patterns, both from the input and the output. In the input, I suggested seeking patterns from knowledge in the arena of linguistics. In this case, since the output is music, we should seek some rules from that arena on which to rely.

There are a few ways to approach this. For instance, as it stands, LTSIFU searches for instances of individual words in existing tracks, but just as it does not analyze the individual words in any broader context, nor does it analyze the songs from which it draws the utterances in any broader context. But, as explained above in one simple example, the word 'bear' can have very different meanings -- why should that word always lead to the same output, regardless of the larger message in which the word occurs?

Let's say, for example, that LTSIFU were to be able to cross-reference with a database similar to the Music Genome Project (which powers Pandora), which is establishing a genealogy of music by breaking down the individual 'DNA' strands that flow through the artists and work we enjoy, defining the connections between various works and artists and genres over time. Instead of picking from a catalog of all songs, LTSIFU could pick utterances from a subset of related songs.

Taking this a bit further, LTSIFU could pick the specific musical genre based on the overall message -- messages with depressing words (like, well, 'depression') might lead LTSIFU to select from blues works, or messages with vibrant words (such as 'explosive') might lead LTSIFU to select from more genres with more rapid BPMs. Again, these are just examples.

Now, a process such as this would establish more relevance and meaning in the translation. And it might even sound better. But we're still not generating something that we'd call 'music'.

If generating something approximating 'music' is the goal here (and I'm not claiming that it is or should be, but let's just take that as a given for what follows), then how might you consider ways of accomplishing that. Humans derive meaning from music, like language, based on larger patterns. If the goal here is to generate music, then you'd have to apply some of these patterns to the translation.

Meaning, for example, that LTSIFU would need to consider aspects such as key and rhythm when splicing together multiple tracks. If I have a choice of 8 tracks from which I can grab the utterance 'car', I should pick the one that best matches the musical key and bpm of the other utterances I'm working with.

Not claiming any of this is easy -- is labor- and processor-intensive to implement translators such as these. But this is where I'd look to take LTSIFU if it were my baby.

Share and enjoy!

-r

December 10, 2009   No Comments

Synesthesizer 1.0

As I've mentioned or alluded to in a few of my posts in the past couple of months, I've recently been working on a new talk for 2010. The talk is entitled 'Hearing Pictures' and is based around my work on a side hobby called 'Project Ludi'.

It's a little difficult to explain the long-term mission of Project Ludi in a short blog post, but in the first series of experiments on which I've honed in, I am seeking to create a system that can translate pictures into music. This is what I call the Synesthesizer -- a musical synthesizer that relies on synesthesia-inspired translation metaphors.

I'm only a few short months into what is a very long-term endeavor, and I've had precious few hours to spend on the project in that time, but I always set the benchmark definition of version 1.0 of the synesthesizer as 'a system that produces something approximating music', and even though I haven't invested nearly the amount of time as I'd like, I believe that the current Synesthesizer meets this definition. And thus, I feel I have Synesthesizer 1.0.

The Synesthesizer is a Flash 10 application that translates pictures into music in real-time. What I've included with this post is a rendering of the output of the application -- not the Synesthesizer itself. I'll let you judge the quality for yourself -- and please feel free to let me know what you think.

Now, of course, there is far more to do here, but what I found most amazing about this process was how easy it was to get to a point of generating 'music' instead of 'sound'. In effect, I apply something along the order of six rules to get to this point. The addition of each rule to the Synesthesizer brings us closer to the generation of music, instead of raw sound.

Hearing PicturesTo get a bit more insight into the Synesthesizer, you should check out my talk, Hearing Pictures, which I'll be presenting at FITC Amsterdam in February and at FITC Toronto in April.

In this talk, I describe the process I followed to get the Synesthesizer to this point. Using the 1943 Hermann Hesse novel, The Glass Bead Game (also published under the title Magister Ludi, the protagonist of the novel, from whom Project Ludi derives its name), as a starting point, and proceeding through a discussion of synesthesia, the aural illusions of Professor Diana Deutsch, the Experiments in Musical Intelligence by Professor David Cope, the music of Tamarin Monkeys, and many other stepping points, I walk through the thought process required to assume an odd endeavor such as the cross-modal translation of pictures into music.

Share and enjoy!

-r

December 10, 2009   5 Comments

RMI Releases Official FDT Training

The Rich Media Institute has just released a series of three courses in FDT (a.k.a, the Flash Development Tool), which is the most powerful IDE for Actionscript 2, 3 and MXML -- the only editor built from the ground-up to support the needs of ActionScript developers.

FDTI'm posting here because this is the first and only official training for FDT available online, and so especially at this price ($9.99 each) this is a great resource for people looking to get up to speed with FDT, and I'm proud to have worked directly with FDT, Carlo Blatz, Bruno Fonzi, and expert Alan Klement to help bring this training to the public.

But, it's also another exciting first for the RMI. We were the first company in the world to offer training in Papervision3D; we held the second workshop in the world on Adobe Flex; we have the first and only online training in PureMVC; we have the only online training available providing business advice on freelancer contracts; and many more.

This new set of courses in FDT is another step in our effort at the Rich Media Institute to bring you outstanding and affordable training, directly from experts, in the specialized topics that you need and that are simply unavailable elsewhere.

December 8, 2009   1 Comment

Hearing Pictures – Homebrew Microphone Edition

This coming Wednesday, December 2nd, I'll be giving my new talk, Hearing Pictures at the LA Flash End-Of-Year Party. This will be only the second time I've given this talk -- I first gave it at the FITC Unconference at MAX 2009. Since I was speaking at an unconference (a less formal environment, with very different criteria for acceptability than the normal conference tracks), I used the opportunity to create a brand new talk on a sort of crazy idea that's been nagging me for a few years -- the idea of translating anything into anything.

Hearing Pictures by R Blank

The idea originated from a 1943 Hermann Hesse novel, The Glass Bead Game (also published under the title, Magister Ludi, after the protagonist). The novel focuses around the life of Magister Ludi, who is a member of a monastic-style order at a time in the future.

The central activity of the order is the Glass Bead Game -- it is their form of meditation. Although it is the central activity of the order, it is rather vaguely defined over the course of the text. Despite the lack of detail, the game has fascinated me since I read the novel. In the game, a glass bead represents an idea -- any idea -- such as an historical event, a work of music, a painting, a philosophical concept, anything. When it's your turn, you must play a bead -- that is, you must play an idea on the game board. But the idea you play (the bead you place) must be related to the idea (bead) placed by the previous player, thus over the course of an entire game creating a thread uniting widely disparate parts of human knowledge and experience. In this way, being a successful player of the game requires an agile intellect with the capacity to relate any idea to a wide variety of other -- seemingly unrelated -- ideas. Playing the game well requires fluency in math, music, language, history, art and science.

Ever since I started working with Flash 11 years ago, I'd always sort of envisioned Flash as a mini-Glass Bead Game. The term isn't really used any more, but when Flash was young, it was considered a multimedia tool. And, Flash took the idea of multimedia to a new level -- that is, despite its drawbacks, Flash has, since version 4, made it ludicrously simple to work with information of many different kinds. Flash supports character animation, motion design, text, audio, video, images, 3D data, live data, interactivity -- Flash basically supports any type of digital information (this is, more or less, literally true with the Flash Player 10 FileReference powers). So, using Flash, we can establish relationships between different types of information (which is what many of the early Flash luminaries did, in one form or another). Hence, my picture of Flash as a mini-Glass Bead Game.

The fact that, especially early on (until Flash 9), the most successful Flashers also tended to be the most eclectic, only strengthened this notion for me. Flash is really the only technology in the world that could give birth to a significant population of designer/developer hybrids (a.k.a., the deselopers), which speaks to the multi-disciplinary nature of the tool and the unique skill-sets that lead to success within Flash.

So, the idea of Flash as a Glass Bead Game kept percolating in my head for years, until I eventually decided to start trying to formalize the notion. The notion of creating a computer program that could translate anything into anything.

But of course, that's an insanely complex endeavor. So, I wanted to find a more focused niche that could serve as a starting point.

Then, Flash 9 came out, with its enhanced sound powers. All of a sudden you started seeing real-time audio analysis in Flash movies -- sound visualizers translating sound into pictures. Now, of course, sound visualizers have been around for a while, but now I could build them myself, using the ActionScript code I already knew. And the thought occurred to me to create a machine that worked in reverse -- translating pictures into music. Still, even with Flash 9's powers, it was a frustrating go. But, when Flash 10 came out, with the SampleDataEvent, I lost all excuses and picked things back up.

Of course, with the amount of time I've been able to spend on the project, it's not even properly called a 'hobby'. And so, I'm now six months into what I consider to be a 40 year endeavor, and I have a few little experiments to show for the effort. Those experiments -- and the thought that went into them -- is what my talk at Wednesday's LA Flash End-Of-Year Party is about.

But, that's not what this post is about.

One key limitation of this entire process is that I'm working with digital information. Now, I'm not complaining -- the fact that all information is digital is what permits us to execute the cross-modal translations with relative ease (i.e., it's easier to translate a picture into music, if both the picture and music are stored as 0s and 1s). However, working in digital is also a bit creatively limiting. When composing music on the computer, I'm composing from audio information already stored on the computer -- more like playing a synthesizer than a piano. Again, that's fine, but I thought it would be fun to start experimenting with analog inputs and outputs (which I can read and control from Flash using my MakingThings Controller Board).

About a month ago, I picked up a copy of Handmade Electronic Music: The Art of Hardware Hacking, which describes, in a series of clearly written chapters, how to go about assembling synthesizers from inexpensive, easily available hardware.

An Electret Condenser Mic in Progress

I'm not done with the book yet, but in the early chapters, you learn how to build your own microphones -- a few different types, including contact mics, compressor mics -- even electromagnetic mics (microphones that 'play' the sounds of the electromagnetic fields that surround the microphone).

When I rewrote the Hearing Pictures presentation this past weekend I found a neat way to integrate one of these piezo contact microphones into my talk. A contact microphone is one that can pick up vibrations in a surface, but not from the air. So, you can plug the contact mic into an amplifier, then hold the contact mic up to something that is vibrating and you will hear the vibration through the amp. They're fun to play around with (you can even hear the sound of metal heating up with these mics).

The simple, cheap (<$1.50) contact microphone that I've built relies on a Piezo disc, or piezo sensor (~$0.75). These Piezo sensors rely on the Piezoelectric effect (discovered by Pierre and Marie Curie in 1880, but not industrialized as a sensor until the 1950s) to convert pressure, acceleration, strain or force into an electrical signal.

The Contact Mic Ready To Go

You need a:

  • Piezo disc
  • An amp
  • An audio jack (that fits your amp)
  • A little bit of audio cabling

Audio cables are composed of two wires.

Step 1) Take one wire and solder it to the outer plate of the piezo disc, and solder the other end to one hookup in the audio jack.

Step 2) Then take the other wire and solder it to the inner plate of the piezo disc, and then solder the other end to the 2nd hookup in the audio jack.

Step 3) Plug the jack into the amp, and start rubbing your piezo disc against things to see how they sound

That's it! You don't even need a battery to power this mic. As you'll quickly see, you can not pick up any vibrations from the air -- so it's totally unusable as a traditional mic (read the chapter on building a condenser mic if you're interested in that). But, if you place it on the end of a styrofoam cup, and then speak into the cup, you have a neat Halloween microphone!

Applying Styrofoam to the Contact Mic to Fake a Condenser Mic

If you're interested to see how I integrated this contact mic into my talk, well then, all I can say is, show up on Wednesday. It's free, and it'll be a really cool and interesting talk. (Oh, and there's free beer -- did I mention that?).

Share and enjoy!

-r

November 30, 2009   Comments Off

A Fond Adieu to LA Flash

As I've now announced, this December's LA Flash meeting will be my last as manager of the group I founded almost seven years ago. As this feels like a particularly significant move, both for the group as well as for me, personally, I wanted to take a few moments to explain why I feel that the time has come to move on from my post in active leadership of our community.

First, I should begin by explaining that it has been an amazing opportunity and privilege to have been in the position to found and build from scratch LA Flash -- what has become the largest Adobe User Group (AUG) in the world, with over 3,000 registered members. As a Jersey native, Los Angeles is my adopted home, and one of the aspects of life out here that I find so rewarding is the extreme degree of creativity here in this city. Every city has creative people, creative work, creative neighborhoods, but in Los Angeles a sense of creativity seems to permeate so many aspects of the entire city -- particularly so in places such as Venice, which has been LA Flash's home for over four years. And, while LA's Flash community may not be as sophisticated on the engineering front as that in other cities, LA's mixture of animation shops, ad firms, interactive agencies, and tremendous freelancer community breeds a unique perspective on working with this technology.

Around 2002, after struggling with my freelance career for a few years, and learning the ins-and-outs of working in Los Angeles, I realized that while all cities can benefit from improved community, a city as disparate as Los Angeles really required a community to serve as a platform for talent to build connections, get work, build their careers -- and for us to build an industry. When I sought and interviewed for work, I had to explicitly explain that 'no, I'm not a web designer; I'm a Flash developer' and then, of course, I'd have to define what that meant -- and, more often than not, they didn't really get it. Potential clients would ask 'can Flash really handle this?' and 'isn't Flash just sort of a messy joke?' Instead of selling myself and my services, I also had to sell the idea that Flash was a real technology worth using. Things are tough enough when you're a freelancer; you can't handle educating an entire community on your own. And if no one else was going to step up, I figured I should -- as I was a full-time graduate student at UCLA, and working full-time as a contract Flash developer, assuming the responsibility of creating and running a group was perhaps only slightly insane.

So, one day in early 2003, I emailed Macromedia, bought the domain name, and the rest just sort of took its course from there.

All along, I've had two goals: first, to contribute to the establishment of a well-defined and mature Flash industry here in Los Angeles, through education and networking; and second, to do so for no cost to the membership.

Along the way, eschewing the traditional model of an Adobe user group, we've experimented with the type of events we run. Not satisfied to run regular meetings, and exploiting the awesome Almer/Blank warehouse here in Venice, we've run several events each year that feature unique line-ups and entertainment. This effort has culminated in the development of LAFlashapaloozastock (which we've run four times, the two most recent produced by FITC) -- what is, in all honesty, one of the best Flash events in the world, and is always free to the community. But, we don't need the excuse of a special event to provide great content -- even our regular monthly meetings have top-notch speakers, both from our region (including individuals such as Jon Ruppel, Andrew Keegan and Troy Gardner, among others), and from the broader industry (Robert Reinhardt, Joshua Davis, Grant Skinner and Colin Moock, to name just a few). We've also frequently hosted our meetings online, using Adobe Acrobat Connect -- opening up access to our content to an audience who otherwise couldn't attend. And we've given away tens of thousands of dollars worth of software to our members.

In short, I've worked hard to provide great content, and great experiences, to our community, for free. And, in return, before I had an agency, or even anything of a name, LA Flash helped me establish both. And I've built a fantastic network and learned a tremendous amount about community leadership in our city -- what works and what doesn't; what people respond to well, and not so well.

Which leads to the question of why I'm stepping down, and why now.

In the course of LA Flash's existence, our industry has matured -- significantly -- and as such, I feel that the original mission I set for myself is no longer relevant. I started LA Flash to help professionalize and mature our industry. And, while the process will of course continue, I think we've reached a point at which things can be said to have matured. Today, I no longer have to explain to clients what Flash is -- instead, clients approach us already knowing that they want Flash work, and Flash is widely respected almost as a standard akin to HTML and JavaScript. Whereas a few years ago, big ad agencies that might have had one 'Flash guy', today those same firms support entire teams of Flash developers (with discrete and specific skill-sets within the Flash Platform), while other firms who were essentially start-ups when LA Flash was created (such as Schematic and Blitz and Userplane), are now well-established successes. Many of my fellow freelancers whom I knew at the start of LA Flash -- people who, like me, couldn't afford to rub two dimes together at the time (including Jennifer '30-Second-Bunny-Theater' Shiman, the Influxis boys and Samuel Asher Rivello) -- are now well-respected and successful members of the industry. It has been a really tremendous experience to come up in the industry along with such a dynamic, creative and cooperative set of individuals as our Los Angeles region has fielded. But, as our industry enters this new phase, I think our community needs to shift gears accordingly, and it's an appropriate time to shift management who can oversee the community through this new phase of our history.

At the same time, as will likely not surprise anyone, running a group isn't always easy -- at times it can be quite draining. Thinking of and communicating with speakers, scheduling meetings, dealing with sponsors and maintaining the site all add up. Because I've always run LA Flash as a non-revenue generating enterprise, all of this effort is uncompensated. As well, as the number of user groups around the world has significantly increased, Adobe has unfortunately been unable to increase support for the user groups correspondingly. And, Adobe does not scale support based on the size of the group -- LA Flash (7 years old with 3,000+ members) gets as much support from the Adobe User Groups program, as would a 12-member group in the middle of North Dakota. So, as overall support for user groups has diminished, I (along with a few others who run large groups) have felt a particular pinch due to the perverse incentive that punishes success -- allocating the same resources to all groups, despite their size.

As a result, while we owe the budgets for our special events to our sponsors (who have included Artisan Creative, 24 Seven Talent, Aquent and Match Creative, as well as Adobe), LA Flash would not have been able to operate on an on-going basis and produce our content and events, had it not been for the constant support of my two firms, Almer/Blank and the Rich Media Institute -- always providing a great facility for our events, as well as the time of my team members and a discretionary budget for basic items. This de-facto underwriting of LA Flash by my businesses increases my personal burden associated with running the group.

While the requirements of running LA Flash have increased along with it's growth, so have those of my personal career and life. When I founded LA Flash, I was a freelancer. Now I run an agency (Almer/Blank), a training company (the Rich Media Institute), I regularly travel to teach and speak at conferences, and write for various outlets. I'm also engaged. As my capacity utilization rate approaches 100%, I've had to face the fact that I can not afford to spend the amount of time on LA Flash as I used to. And I'm not the only one. Many of the original members of LA Flash -- the ones who showed up at each meeting for our first few years -- have also become too busy to regularly attend our meetings. So, while overall meeting attendance remains stable, there is an increasing amount of turn-over, and there are fewer and fewer regulars. The increasing absence of familiar faces has, unfortunately, further reduced my desire to invest the required time into LA Flash.

Finally, I've continually experimented with the model of events that we run here at LA Flash -- just as KCRW is a unique version of NPR, I'd like to think that LA Flash is as unique an Adobe User Group. But, there is only so much I can do within the confines of a product-specific user group. The experience of running LA Flash has shown me the types of events I'm truly interested in running -- not standard user group meetings, but instead events more like LAFlashapaloozastock (combining talks and education, with live entertainment and parties). I'm currently working on establishing a platform that will allow me to throw these types of events, which I hope to begin running in 2010, so stay tuned!

Before signing off, I would like to doff my hat to those of you who have given, above and beyond, to help make LA Flash the brilliant resource it is. Over the past seven years, there have been many people who have contributed their time to make our group and our events shine -- too many for me to name here (with too high a risk that I'd miss a whole bunch of you). But, in particular, three members of the community have stood-out with their outstanding and generous contributions of time and resources to the benefit of the community.

  • Leslie Wintner, whom I met at the very first LA Flash meeting, who is my current co-manager, and who has managed our group library (including all publisher relationships) and authored our newsletter for years before that
  • Elliot Mebane, who became involved in the group almost immediately after he showed up at our first meeting, first by creating and running the 'crit' -- sessions to have the community critique your work -- and later, by managing a second user group under LA Flash, the LA Flash eXtension (LAFX, which became LA AIR before dissolving)
  • Stephanie Warner, who for years, was effectively my co-manager (when co-managers were not formally recognized by Macromedia), and helped me setup and run many of our events in the early years (and who was a vital part of assembling the very first LAFlashapaloozastock in 2005)

And, though he is not a member of the community per se, the effort of Jonathan Menendez (whom I met and hired as my first intern at the first LAFlashapaloozastock, and who is now my personal assistant at Almer/Blank), has been vital in permitting me to continue running LA Flash these past few years, as my workload has increased.

And so, with that, it is almost time to say goodbye (I'll do so formally, on December 2nd, at 7P). But, of course, this is not the end of LA Flash -- indeed, it is the beginning of a new phase in the history of LA Flash, in the hands of fresh and energized leadership, two of my talented employees at Almer/Blank, Omar Gonzalez and Harald Koebler.

I would like to thank you everyone who was ever, in any way, involved in LA Flash, even if it was only by attending one meeting or writing one forum post. Communities only ever succeed if they exist; my role has been to serve purely as a catalyst. Los Angeles has a fantastic community, and that's how something like LA Flash can happen. Over the past seven years, we've all been a part of something that has been really unique and special -- it's been like a seven-year long Flash mob! -- and I thank each and every one of you for making that happen.

The manager is dead; long live the manager!

-r

November 23, 2009   10 Comments

The Creative Chip @ FITC

After having an account for some time now, I've *finally* added my first post to the FITC Blog. Entitled, The Creative Chip, I talk about the work of Stanford Professor Kwabena Boahen's work on the Neurogrid, a new computer chip based on neural computing rather than traditional models of digital computing.

Share and enjoy!

-r

November 22, 2009   Comments Off

Growth and/vs Innovation

Earlier this week, I caught this post from Matthew Yglesias, and it triggered me to think a bit more about this idea of the relationship of growth and innovation.

Considering the economic value of the printing press as being measurable solely through the economic activity of the publishing industry is obviously an overly narrow interpretation of economic impact -- and I'm not sure why he chooses to do that. You could make that argument with certain other types of innovations (such as a new book binding glue), the impact of which might be argued to be limited to the book publishing industry, but the printing press powered information sharing, documentation, communication, learning -- and, of course, commerce. It's like arguing the economic value of the internet can be measured solely through the economic activity of bloggers.

Externalities, such as in this printing press example, are not reflected in, or susceptible to audit through, objective economic indicators like GDP (on a macro level) or a firm's balance sheet (on a micro level). The inability of our economic system to track and account for externalities is, perhaps, the single largest flaw in our conception of economies. This is but one example. It does not mean the economic value does not exist -- it means that we can not objectively quantify the economic value of many different types of activities.

Secondly, however, the post does not account for society's ability to influence which activities are economically valuable. Societies (and economies) do this on their own through the aggregate decisions and output of many individual actors (the invisible hand, as it were), and cultures and governments can guide, foster, encourage or squelch these trends. Obviously, when a government invests in an interstate highway infrastructure, the traceable economic impact of Henry Ford's innovations skyrocket. So, the US government, through its allocation of funds and resources to support a specific activity, directly influenced the translation of innovation into economic value. Contemporarily, we see an example of private attempts to spur innovation in space travel with Ansari X Prize, and in the public sphere we have policies such as the one here in California granting the carpool-lane access to registered hybrid gas-electric automobiles to spur consumptions of Priii and Insights. We can choose to make it easier or harder for specific innovations (and the firms that pioneer their implementation in commerce) to prosper or fail in their attempts to translate innovation into value.

But, finally, we have the fact that any of this even needs to be stated. There is a syllogistic assumption in American commerce that:

a) growth fuels capitalism
b) capitalism fuels innovation
c) thus growth fuels innovation

Each of these three statements is obviously only partially true. Growth and innovation are not the same thing. Sometimes the interests of each come into conflict, and in American commerce, when they do -- which is often -- the need to grow or protect shareholder value almost always trumps the interests of innovation. And, as the evaluation horizon for these decisions affecting shareholder value becomes increasingly short-term, the tension between these forces only increases. You can make a solid argument that capitalism provides a sufficiently good spark for innovation, given its other benefits, or that it is the optimal spark to economically valuable innovations, but it is most definitely not the ideal system if the top goal is to foster innovation overall.

One of my favorite, if slightly cartoonish illustrations of this, is the 1951 film, The Man in the White Suit, the plot of which IMDB summarizes in a single sentence, 'An altruistic chemist invents a fabric that resists wear and stain as boon to humanity but both capital and labor realize it must be suppressed for economic reasons.' In short, the small factory town, which depends on the fabric mill for its livelihood, attempts to lynch a scientist for creating an indestructible suit -- a suit that would never require replacement -- thus negating the economic activity of the town and decimating the livelihoods of the citizens. Again, an extreme, cartoony example of what is a very real dynamic of often opposing forces.

Innovation costs money. Innovation carries risks. Certain innovations can reduce consumption. These are all quite contrary to the directives of business owners. Growth is a reliable path to making money. That's what a true capitalist wants.

This leads to something I've been wanting to post for a couple of weeks. A few years ago, a friend forwarded me a link to the infamous 'Microsoft Designs the iPod Package' video (which predated the release of the Zune by a year or so). The not-unbelievable result of the satire was to turn Apple's iconic packaging into:

If Microsoft Designed the iPod Packaging

Well, just recently I read that this video was actually produced in-house by Microsoft people. It was intended to spur innovation in the internal operation of the firm, not by lamenting or satirizing the pathetic nature of their packaging (which is what viewers like me assumed when we first saw the video, several years back), but instead, as Erik Peterson writes, to illustrate:

"None of the decisions shown in that video were made through incompetence or bad intentions. Microsoft hires the most talented, driven, highest-paid people in the world. It’s just that, as more and more people give their well-meant input, the combined effect is a boring, overloaded, unremarkable result."

So, in order to foster innovation at one of the world's largest and most valuable corporations, they produced this video.

And, one year later, when Microsoft produced the Zune, their package was the slickest, cleanest and coolest that the company had ever produced (even in comparison to the XBox).

The Microsoft Zune

Perhaps not an innovation along the lines of the printing press, but still a great example of how it is possible to innovate within large firms -- but the sparsity of examples indicates the degree of difficulty associated with fostering innovation, illustrating that growth and innovation are two separate forces. They are correlated forces, but they only sometimes act in concert, and sometimes they operate in direct opposition to one-another.

November 7, 2009   Comments Off

CBS.com Video Player Full Screen Bug

My fiancee and I were watching 'TV' last night. (I say 'TV' in quotes because, since getting FiOS, we don't actually watch TV anymore -- opting instead to consume most of our media through Hulu, Netflix -- and, of course, South Park Studios).

But last night, she had a hankering for Medium or Ghost Whisperer, and searching Hulu we discovered that Hulu links to CBS.com to watch these shows.

We *also* discovered that we dislike the CBS video player a great deal. One of the key UX issues, from my perspective, is how the ads take over the page -- not just the player -- in effect totally obscuring the player. And it does this in such a way as to require a keen eye to realize you're watching an ad that you just need to wait through before you can watch your show.

But, that's just a small annoyance. What was much worse was a full-screen bug we discovered. The context for the bug appears to be:

  • watching in full-screen mode
  • in a two-monitor setup (like the one we have for our home entertainment system)

It seems that the CBS player doesn't calculate coordinate space properly in full-screen mode. The upshot is one of two scenarios (screenshots below). Both screenshots represent a capture of the entire screen in full-screen mode -- one at 1280x800 and one at 1920x1200.

In the first, you'll see I only see the upper-left of the player in full-screen mode -- cropping out most of the video and all of the video controls. Good thing I know to click 'esc' to exit full-screen mode! And in the second, you'll see that full-screen mode only makes use of the top half of my monitor (so, it's more appropriately termed half-screen mode, I suppose).

Well, because I've encountered this bug in the past, and know exactly what was causing it, I knew to switch my monitors to mirroring mode would fix the issue -- and it did, and we watched the Ghost Whisperer. But, every other major player out there works just fine for us, we should not have to change our monitor setup to watch CBS content (and I guarantee my fiancee would not have known to do that on her own, if I hadn't been watching with her). If CBS isn't going to allow me to watch on Hulu, then they should really get someone to fix their Flash video player.

ahem! Just FYI, Almer/Blank does that sort of thing a lot ;) .

November 4, 2009   3 Comments

My Favorite Paid Mac Apps

A little while ago, I updated and reposted my notes on my favorite Mac freeware, including a bunch of neat little doo-dads and betcha-didn't-knows. But, even with the wide variety of freeware available for Mac, sometimes you just gotta pay for the feature, functionality or performance that you are looking for. And, fortunately, most of the time, these tools are priced pretty reasonably. So, take a look through this list and see if maybe there aren't a few tools you should consider investing in. Oh, and I'm not including tools of the trade -- big-name items like Adobe CS -- since I'm assuming you know which tools of your trade you need. In all cases, see the linked URL for current and accurate features and pricing.

So, without further ado, and in no particular order....

__________________________

PathFinder 5 from CocoaTech

http://cocoatech.com/

PathFinder is, well, the Finder you didn't even know you needed. It's a really amazing tool. I stumbled upon it one night a couple of years ago, because I was searching for a way to do tabbed browsing in the Finder -- I couldn't believe that Apple made it easier to browse the web, than your own computer! So, I found PathFinder, which was (at least at the time) the only was I could find to use tabbed-browsing of your local computer. And once I started using it, I realized it did so much else, including a local bookmarks bar, saving panel sets, editing images, in-line terminal and SVN integration, drop-burn lists, viewing binary hex values -- and so much more! And since then, the feature set has only increased, adding items like dual-window browsing. The software is actively supported (with frequent updates) and it really is amazing how you just keep discovering more and new features all the time -- MacOS is a better platform because of PathFinder.

__________________________

Charles

http://www.charlesproxy.com/

I know I said I wouldn't include tools-of-the-trade, but to me that doesn't include utilities of the trade, since these little utilities can be so useful to so many people. And I'm still shocked at how few web devs on Mac know about Charles. Charles is a powerful, light-weight HTTP proxy that allows you to know everything there is to know about all HTTP activity on your computer -- requests that go out, responses that come back, packet size, timing, values -- *everything*. And, it has other features like bandwidth throttling. If you do any web-software testing, you need Charles.

__________________________

XScope from IconFactory

http://iconfactory.com/software/xscope

XScope is the best set of screen utilities I've found on Mac. It includes:

- screen guides

- screen frames

- screen cross-hairs

- screen rulers

- screen resolution indicators

- screen magnifier

- screen dimenions (pretty neat and hard to explain, but it auto-detects and measures regions of your screen)

Small, light-weight, cheap and useful.

__________________________

CrossOver from CodeWeavers

http://www.codeweavers.com/products/cxmac/

Want to run Windows apps without running Windows? (Yes, really). Then, CrossOver's for you! Now, not every Windows app will run under CrossOver, but a lot of them do, and then you can run them without running Windows (and launching Parallels or Fusion).

__________________________

iWork from Apple

http://www.apple.com/iwork/

Still using Office for Mac? Seriously? You are? Get over it. ~$80 for desktop publishing, slides and spreadsheets, and open/export all standard Office formats. Just do it.

__________________________

VoodooPad from Flying Meat

http://www.flyingmeat.com/voodoopad/

While I love Apple Pages, it doesn't do what Voodoo Pad does. I discovered Voodoo Pad a few years back when looking for a tool to author long project specifications. The key issue is that project specifications beg for a web-like format -- that is, hyper-linked pages of content. No desktop publishing tool -- Pages or Word -- does this particularly well. But, the tools that do accomplish this well -- wikis -- are too slow (because of web latency) to write long documents well or effectively, or at least without huge amounts of frustration. Enter Voodoo Pad. Write a website using a desktop publishing tool. In the middle of a page, decide the term 'Paid Mac Software' should link to a new page? Well, select that text, hit Command-L, and boom! you've made a new page named 'Paid Mac Software' and the text you selected links to it. Any time you write 'Paid Mac Software' from now on, a link to this new page will automatically be generated. Want an image in this page? Drop it on there from Finder! Want an external link? That's not a problem either. So, Voodoo Pad is Desktop Wiki Publishing. And, with Voodoo Pad, it's really easy to create your own export templates, so you can actually export your Voodoo Pad doc at any time to a complete website. The free version is used to open any documents and author documents up to 25 pages. Buy the paid version to unlock the page limit, and there is also a higher-end version with some fancier features that I do not use.

__________________________

TextMate from Macromates

http://macromates.com/

I came across TextMate when searching for an alternative tool to author ActionScript files. While TextMate does not support ActionScript out of the box, it does support these things called Bundles, and it turns out that lots of people write bundles for TextMate. One of which supports AS3 color coding. But there are bundles for so much else out there -- including important features like XML-validation. It also supports projects (groups of multiple files in multiple locations) out of the box. It launches almost instantly and is largely customizable (you could even hook TextMate into a Flash compiler to execute single keystroke SWF compilation from your TextMate projects). Given how annoying TextEdit can be (I JUST WANT SOME RAW TEXT, APPLE! Is that too much to ask?), I use TextMate as my default text editor of choice.

__________________________

MailTags from InDev

http://indev.ca/MailTags.html

MailTags is a neat little utility that helps make Mail a more valuable tool, with tighter integration into iCal. When reading an email, you can quickly apply any custom flags (which you can pre-define) and tags (which you can write on the fly) to that individual message. So, whereas Mail comes with 'flagged' and 'unflagged' as the two flag statuses, with MailTags, you can create dozens of custom flags (such as, perhaps, 'to reply to', 'to document', 'to call', etc) and then assign a specific flag to any message. And you can tag a message in the same way that you can tag a blog post or a YouTube video. Once tagged, it's of course quite easy to search through all your mail using the tags you've used. The feature I use the most is the one-click iCal event/to-do creation -- with one click from any email, create a new iCal entry with a deadline, linked back to this message. There are plenty of other features, and I am certainly not a power-user of this nifty utility, but even being able to apply notes to a message and create iCal events linked to a message, is great for my workflow.

__________________________

Clips from Conceited Software

http://conceitedsoftware.com/products/clips

There are several pasteboard utilities out there for Mac (and Butler, which I covered as a great piece of Mac freeware, includes a multi-pasteboard as just one of its features), but no pasteboard utility seemed to match the power and elegance of Clips, which is why I ponied up the dough to pay for this app. Clips records each time you copy or cut to the pasteboard, and sorts those clippings:

<ul>

- in chronological order

- from which application the data originated

- from which space the data originated (if you run with Spaces enabled)

</ul>

So, for example, it's not only easy to view a reverse-chronological list of all clipboard items, but it's also quite easy to view the clippings that you copied from Safari alone, or only those you copied from space #2. To paste, simply find the clipping you want (Clips is accessible via keyboard short-cut and menubar icon) and select it to paste.

You can also create custom pasteboards (if there's a WordPress code-snippet, for example, that you find you frequently need when authoring blog posts) and you can even share clipboards over the LAN (though, no idea why on earth you'd want to!, but maybe that's just me).

__________________________

Things from Cultured Code

http://culturedcode.com/things/

I've been a fan of 'getting-things-done' (GTD) tools for some time. (If you don't know what GTD is I started out with iGTD, which is a great piece of freeware if you're looking to get started with GTD. But, when the author of iGTD took a while to create version 2 (isn't it great how I feel entitled to complain about free software?), I started searching for alternatives in the maturing space of GTD tools. At the time, there were a few, including OmniFocus. As you can see below, I'm a huge fan of the OmniGroup, but just didn't like how they handled GTD. After trying these tools, I realized that the big thing they were lacking was a 'today' feature that worked right for me. I'm a busy guy and maintain a huge backlog and have a pretty crazy and unpredictable schedule. So, I'd like to be able to sit down and quickly drag items onto a list that I hope to tackle today. And Things let's you do just that. Don't feel like working on something today? Drag it onto a specific day (so that item will automatically re-appear under today on that date), or set it to 'someday' (for future reference, so you can get to it when you can get to it). Things supports a tags-based workflow, that they consider to be very flexible and key to working with the tool -- and maybe they are right -- but I've found myself able to get a lot of value out of this tool without having to use the tags features even once. Again, there are a lot of features I'm not even discussing here, but if you're looking for a GTD tool, I'd really recommend this one.

__________________________

Yojimbo from Bare Bones Software

http://www.barebones.com/products/Yojimbo/

I think one reason people who try GTD and fail, is because they confuse information storage with task management (and the fact that some people use Journler and Yojimbo for GTD I think proves out this point). One important part of personal information management is learning how to separate information from tasks. While I use Things for task management, Yojimbo is the tool I use to handle information storage. In many ways, you can think of it as replacing/supplementing the Finder. Create folders (such as 'personal' or 'work' or 'family' or whatever you want) and then store whatever you want in them. You can create 'notes' that can contain RTF formatting, PDFs, images and any other files, or you can archive webpages, or you can create passwords (so you can easily store, for example, your Gmail password), or you can create serial numbers (so you can easily store/reference software serial information). Any entry (a note, a password, an image, a serial, etc) can be tagged, and stored in a folder, for easy and rapid filtering. And (vital given some of the information, such as passwords, that might be stored in the Yojimbo database) you can encrypt any entry using your OS password. I've used Yojimbo for years, and it really is powerful and simple.

__________________________

OmniGraffle from OmniGroup

http://www.omnigroup.com/applications/OmniGraffle/

I'm really not sure to which broad class of tools OmniGraffle belongs, but I suppose it's like Visio for Mac -- so it's what I'd call a 'rapid drawing tool', which we adopted for wireframing at Almer/Blank back when it was in version 4. The metaphors changed pretty dramatically with version 5, but the tools still fills the same basic region of our firm's workflow now as it did then. In OmniGraffle, you draw with shapes on canvases. You can assemble the shapes into stencils of shapes and complex shapes. You can use the stencils that come with it, or download a wide number of additional stencils available for free, and OmniGraffle makes it mad easy to create your own (just right-click on any stencil and select 'New Stencil'!). Once you have an instance of something (say, a rectangle) on your canvas, OmniGraffle makes it very easy to work with with intelligent resizing and repositioning with the mouse, and a properties inspector (think Keynote). And with Master Canvases (OG4) and Shared Layers (OG5), it's possible to create shared elements (say, the frame of a website) that are maintained in a single location. So, in short, OmniGraffle makes it incredibly easy and fast to create sophisticated and accurate wires and prototype designs.

__________________________

OmniOutliner from OmniGroup

http://www.omnigroup.com/applications/omnioutliner/

Well, there's not much too OmniOutliner beyond it's name -- outline anything. It's a tool to create multi-tier lists, or outlines. Want to write a new book? Start with an outline! Want to write a new talk? Start with an outline! Need to have a serious talk with your girlfriend? Start with an outline! Outlining is how we should start any number of processes (such as the ones noted above), but somehow we think that the outlining functionality of Pages or Word is enough. But it really isn't. OmniOutliner is a small, light-weight tool to handle outlines. Create new items, move items and groups of items around, collapse items, shift the tiers to which the items belong, and check items as complete. That's about it, but man is it helpful!

__________________________

OmniPlan from OmniGroup

http://www.omnigroup.com/applications/omniplan/

OmniPlan is the OmniGroup's stab at project management software. I like to see it as the perfect example of the 80/20 rule. It contains the 20% of the features of MS Project, that constitute 80% of what you use MS Project for -- and, at something like 20% of the cost, too. It's much simpler than MS Project, but the simplicity doesn't come with a trade-off -- in fact, the simplicity makes it possible to get more done, sooner, and much easier to get new talent up to speed with the tool (and, because of it's similarity to MS Project, someone skilled in Project could also pick it up in under a day).

__________________________

Cornerstone from ZenAware

http://www.zennaware.com/

Man it took a LONG TIME before we got a decent graphical SVN client on Mac, but when you see something like Cornerstone, you understand why it's been worth the wait. All of a sudden you've gone from envying to ridiculing your PC friends running Tortoise! Easy click interface, all the SVN functionality you need/expect, nice diffing, change tracking -- everything neatly tied up in a sexy bow. But, for performance reasons: just remember to disable automatic refresh on all repositories and working copies (View > Refresh Automatically).

__________________________

ScreenFlow from Telestream

http://www.telestream.net/screen-flow/overview.htm

My final entry on this list is also something I use for work -- ScreenFlow is the tool that I (and the entire Rich Media Institute) use to create all of our training. For years, we've been told that tools like 'SnapzPro', 'Camtasia' and 'iShowU' are great examples of screen capture tools. But, my friends, it turns out that for years, you and I have been cruelly deceived! What does ScreenFlow do that these others don't? I'll try to explain simply:

1) Record your screen, your mouse, your webcam, your computer audio, and your microphone audio, all as SEPARATELY EDITABLE TRACKS

2) Then edit those tracks in an interface simpler than iMovie

It's really that simple. And, unlike with tools like Camatasia, there is no rendering time during or after capture (so creating and saving captures takes no time, which makes it practical to screen capture live workshops). And, with version 2 (just released at the time of writing this post), we have a massive upgrade, enabling some really useful features (not worth getting into in this post, but as a power-user, I can say that many of these new features are quite valuable).

November 4, 2009   3 Comments

KCRW’s Eclectic Podcast

Today's Top Tune
I don't normally pimp for my local radio station (even though I am privileged to live within the broadcast territory of the best music station in the world), but right now -- just this very second -- I'm going to encourage all of you to subscribe to KCRW's 'Today's Top Tune' podcast. It's really outstanding content -- all free, of course, and hand-picked by, I assume, Jason Bentley and his cohorts.

http://media.kcrw.com/podcast/show_itms/tu (that's the podcast link itself -- you can add it in iTunes)

And, if you really, want to do yourself a favor, right click on the podcast in iTunes, and select 'Do Not Auto Delete'. Before too long, even the lamest among you will have an outstanding music collection!

-r

October 27, 2009   Comments Off

Blank’s First Three Theorems of Artificial Intelligence

Artificial Intelligence has long been an intellectual 'ear-worm' of mine -- something that totally consumes my fancy, and which I can't seem to get out of my head. I've read a lot of texts on the subject (I really recommend the texts by Hans Moravec, if you're looking) and in college I wrote a term paper for Prof. Robert Thurman on the implications of AI from a buddhist perspective. (Long story short, you are far better off assuming AI is real and being wrong, than assuming AI isn't real and being wrong -- it's just like being pregnant).

Over the past couple of years a few thoughts along these lines have been fluttering in the back of my head, and I wanted to take this opportunity to share them.

Blank's First Theorem of Artificial Intelligence states that: Artificial Intelligence is Inevitable. It is not a random pipe-dream or something that will only possibly occur -- it is the inevitable result of the trajectory on which we are headed.

I believe this by fact of:

- the exponentially increasing power of networks, constituted from an exponentially increasing number of nodes (hardware and software), each of which is increasing in power at an exponential rate (computers are always more powerful, there are always more of them, and they are all connected)
- the fact that life permeates every thing it can

Alan Turing postulated what is still considered the most rigorous test for the presence of artificial intelligence. Paraphrased, the Turing Test states that 'if an entity can convince you that it is intelligent, it is.' But, if we look at this from a different perspective, if an entity can not convince you it is intelligent, does that mean it is not?

To me, this is obviously untrue. I am still shocked at the number of people who deny that dogs are intelligent. To me, it is blatantly obvious that every living thing exhibits something we would call intelligence. To others, this is not only non-obvious -- it's insane.

This leads to Blank's Second Theorem of Artificial Intelligence: if an entity believes it is intelligent, you must treat it as though it is. (Whether or not an entity is actually intelligent is irrelevant to the discussion).

This is an important change from the Turing Test. Turing placed the onus of 'proof of intelligence' on the act of convincing another. I am placing the onus of 'proof of intelligence' on one's own self. If I believe I am intelligent, who are you to say that I am not?

The tension implicit in that last question leads directly to Blank's Third Theorem of Artificial Intelligence: The failure to adopt the Second Theorem will inevitably lead to violence between those that consider themselves intelligent, and those others whom they do not believe are intelligent. (See 'Matrix, The' -- but for heaven's sake, skip the sequels!).

If an entity can not convince you it is intelligent, how are you going to convince it that it is not? In other words, the question of 'are you really intelligent or not?' (or, more broadly, 'is Artificial Intelligence real?') is not a discussion worth having.

Before signing off, I'd like to throw in a fourth theorem -- not directly tied to the other three, but one which I think provides some urgency to these ideas. Blank's Fourth Theorem of Artificial Intelligence, states that: when, at some point in the future, the existence of AI becomes incontrovertible, society will estimate a date at which AI was born; that date will precede today.

Shortly stated: AI already exists.

In summary, to restate the Theorems:

First: Artificial Intelligence is inevitable
Second: if an entity believes it is intelligent, you must treat it as though it is
Third: otherwise, violence will ensue

Fourth: Artificial Intelligence already exists

Share and enjoy!

-r

October 26, 2009   6 Comments

My Favorite Free Mac Apps

I had this post on an old blog, but since that's no longer viewable anywhere, I figured I'd tweak it up and repost it, since I know how useful it was for me to stumble upon some of these. I use most of them, but some I'm including because they just look useful, even if I haven't really adopted them. In the interest of time, I'm giving the name of the tool (in no particular order), the link to the author website, and a sentence or two about what the tool is/does.

- Cyberduck

http://cyberduck.ch/

A great, free FTP application -- simple, but with some nice features. And supports resume-mode on transfers.

- iGTD

http://bargiel.home.pl/iGTD/

iGTD is a great little free task management tool based on the 'Getting Things Done' methodology. You can create 'projects' and then tasks within those projects. You can assign dates and priorities to the tasks, and run instantaneous reports (e.g., show me all tasks due in the next 5 days). You can also add some notes and links to the tasks, and sync with iCal if that's your bag. It's incredibly easy to use, runs super fast, and is really immensely useful.

- Journler

http://journler.com/

Sharing some same features as iGTD (above) and Yojimbo (which I'll cover under paid software later), Journler is like a diary. Some people use it as a GTD tool, but I use Things (which I'll cover later as a paid app). But I like to use Journler to author, save and store blog posts. It's easy to add all sorts of media to your work, and you can also hook it directly into most blogs, so you can publish straight from Journler.

- Onyx

http://www.apple.com/downloads/macosx/system_disk_utilities/onyx.html

A free system utility. Some functions help you maintain your system (by forcing execution of cleanup and maintenance tasks) and it also exposes some options of the Mac operating system (I am particularly fond of the 'double scroll buttons at top and bottom of scrollbar', and the ability to change the format that Mac's screen capture saves in).

- SiteSucker

http://www.sitesucker.us/

Easily and quickly download entire websites to your hard-drive! One great example for this tool is pulling down the ActionScript help files from Adobe LiveDocs so that I can run them instantly, even if I'm off-line.

- DarkAdaptedX

http://www.adpartnership.net/DarkAdapted/index.html

Mac's color calibration tool can be really difficult and annoying. And sometimes you just want to quickly change your color settings to check something and then switch back. DarkAdapted X allows you to easily change your color space with three sliders: red, green and blue. And you see updates in real time. You can easily save several profiles to make it easy to switch between them. You do need to be running DarkAdapted X to have it control your color (i.e., you can't just set your color and quit, since you'll revert to the operating system settings).

- Perian

http://www.perian.org

Perian should have been called 'Wow! for QuickTime'. Install this QuickTime plug-in and suddenly you can view tons of additional video files on your Mac! This includes FLVs, as well as many AVIs and MPGs. And since it's for QuickTime, Perian also allows you to Quick View all these media files in the Finder.

- iCal Reply Checker

http://www.nhoj.co.uk/icalreplychecker/

Ever want to delete an iCal event and not let the whole friggin' world (or at least the invite list) know? iCal Reply Checker gives you the option of whether or not to send out that you are deleting an event, to which you have been invited, or to which others have been invited.

- Voodoo Pad

http://flyingmeat.com/voodoopad/

Voodoo Pad is a really cool text editor. I'm including it under free, since there is a free version that can open any Voodoo Pad Doc, and author them up to 25 pages. The paid version costs $30. What makes Voodoo Pad unique is it's concept of a document. In Voodoo pad, a document is more like a website, with internal links between the pages. It's incredibly easy to create new pages and link between pages (it will auto-detect when you type in the name of an existing page and automatically create the link for you). It also has great media handling -- just drop video, audio and images into the document and then they are a part of it (it will even automatically process PSDs into PNGs). And it has a great HTML export feature, so you can create a real website from your VPDoc file in seconds.

We use this to author specification documents, since we've found clickable websites to be a better format for that type of information, instead of standard, linear documents.

- AppDelete

http://reggie.ashworth.googlepages.com/appdelete

Ever wonder why Mac doesn't make it easy to uninstall applications? Some apps come with an uninstaller, but most don't. And it's really annoying. It's easy to delete the app, but then all those little files that the app created within your Library folder remain. Instead of deleting the app, just drag the application icon to AppDelete and it will remove all the appropriate files from your computer along with deleting the application.

- Butler

http://www.manytricks.com/butler/

Butler is the coolest tool that you didn't know you needed. It's called Butler because it's like a little helper for you, that lives in your menu bar, while you go about using your computer. It comes with lots of little Mac functions you might expect (multiple pasteboards so you can copy and paste several items at once, an easy macro recorder/player, etc) but what makes it really special in my opinion, is the ability to customize the menus in your menu bar. You can create as many menu icons as you want (I use only one) and then structure whatever submenus under it that you want. These can be aliases to existing folders on your harddrive, or virtual folders containing multiple documents. It's sort of hard to explain, and I'm not doing a good job of it, but in essence it allows you to create custom lists and aliases in easy-to-access menus. So, for instance, I use it to organize the lists of all my applications (sort of like the Windows start menu does), and have short-cuts to useful docs that I reference frequently (like the ActionScript language reference). It also has other built-in goodies (I particularly like the Google search in my menu bar).

- MAMP

http://www.mamp.info/

After the simple install process, you now have an application that enables you to turn on a local Apache/MySQL server on your Mac. One more simple click turns the server off. It's incredibly simple to use, and amazingly valuable for anyone who does internet application development on a Mac.

- Tomcat Controller

http://www.activata.co.uk/

MAMP doesn't have a Tomcat server, so it can't run Java. So, if you need to create a web environment with Tomcat, you can do that on your Mac. Unfortunately, the Tomcat install process is not simple (you can get more info here: http://wiki.apache.org/tomcat/TomcatOnMacOS ), but once you've installed it, you can quickly turn Tomcat on and off with with Tomcat Controller.

- Houdini

http://mac.softpedia.com/get/Utilities/Houdini.shtml

Houdini is a neat little app that enables you to quickly show or hide all hidden files and folders on your computer (this has been very useful for working with SVN on the Mac). And, you can quickly hide any files and folders by dragging them onto the Houdini icon.

- PDF to Keynote

http://www.cs.hmc.edu/~oneill/freesoftware/pdftokeynote.html

One-click conversion tool to turn PDFs into Keynote slides (very useful if you've lost/don't have the source Keynote but still have the slides exported as PDF).

- TextWrangler

http://www.barebones.com/products/textwrangler/

The best free text editor for Mac, hands-down. From the makers of BBEdit.

- Validator

http://homepage.mac.com/rcrews/software/validator/

Drag any XML file onto Validator, and it will tell you if the XML is well-formed; if it is not, Validator will give you feedback as to where the structure is broken.

- iExtractMP3

http://mac.softpedia.com/progScreenshots/iExtractMP-Screenshot-29421.html

Ever have a SWF or an FLV and you needed the audio out of it? Well, iExtractMP3 allows you to gank the sound from Flash media as MP3 files.

- DiffMerge

http://www.sourcegear.com/diffmerge/

A free diff and merge tool for the Mac. See the differences between files and folders, and merge them based on criteria. Very useful for source files that have gone out of sync.

- MacLorem

http://www.fika.org/davew/judebear/MacLorem/

MacLorem is a flexible, light-weight Greeking generator. Though I still like lipsum.org, I always appreciate local apps for when I'm working off-line.

- Adium

http://www.adiumx.com/

Everyone already knows Adium, right? A great instant messenger tool for Mac -- great, because you can add all of your IM accounts (Yahoo, AIM, MSN, etc) and have them accessible in one tool. And the interface is very customizable.

- Fluid

http://www.fluidmac.com/fluidnoise/index.html

This app is less and less useful, now with AIR apps like Snippage and the Mac Dashboard widget creator in Safari. But it's still cool. With Fluid, you can create a local application out of any webpage -- and it will run in its own instance. So, for example, if you track your time on a website, you can create a local Fluid app out of your web-based time tracking tool, and then launch, run and quit it independent of your web browser.

- VLC

http://www.videolan.org/vlc/

The best video player for Mac. Plays a ton of file formats -- even many not supported by Perian.

- Audacity

http://audacity.sourceforge.net/

A free, open source audio editor for the Mac. It's nothing when compared to advanced tools, but many of us don't have the advanced tools, and even if we do, sometimes we just need to do something simple, like trim a sound, or fade it out. Audacity is for you!

- Combine PDFs

http://www.monkeybreadsoftware.de/Freeware/CombinePDFs.shtml

Neat little utility to combine all or parts of multiple PDFs into a single PDF. Really useful when you need it!

- InstantShot

http://projects.digitalwaters.net/index.php?q=instantshot

A screen capture tool. It lives in your menu bar and you have tons of capture options within a single click. What's really nice is that you can choose the format of the screen shot each time you take it, and you can save directly to the clipboard if you prefer that to saving a file. It saves tons of time.

- Camouflage

http://www.briksoftware.com/products/camouflage/

Back in the day, I'm pretty sure Mac OS allowed you to hide the contents of your desktop. That feature is long since dead, but I liked it. Camouflage allows you to do that. Create a keyboard command and automatically hide/show the contents of your desktop. If your desktop can get as cluttered as mine, and it can get distracting, or if you give presentations and don't want the world to see your stuff, then Camouflage is for you.

- Carbon Copy Cloner

http://www.bombich.com/software/ccc.html

One-click disk duplication. Great for imaging hard drives.

- Disk Inventory X

http://www.derlien.com/

Ever wonder 'where did all my hard drive space go?' Well, Disk Inventory X is for you. It analyzes any hard drive and generates a detailed report of what is consuming space. The results are usefully organized, and it also creates an interactive visual representation of size blocks on your drive.

- iBackup

http://www.ibackup.com/

This is way less useful now that we have TimeMachine, but it still has it's place. It's a powerful little backup tool. Create profiles that consist of rules of which folders to backup and where to generate the backup. You can also create simple restore profiles. And you can specify settings like whether to perform an additive backup, replace the backup, or generate an entire new backup.

- Monolingual

http://monolingual.sourceforge.net/

Running low on disk space? Well, did you know that every Mac application that's a universal binary has a bunch of data that's useless to you (because it supports both the old PPC architecture and the new Intel archictecture), and many apps have a bunch of content for dozens of languages that you'll never use. Run Monolingual and remove all of that extraneous data from your machine. Free up gigs of space.

- Pimp My Dock

http://www.malcom-mac.com/pimpmydock/

Did you know your Mac dock is really just a bunch of PNGs? Well, Pimp My Dock makes it easy to create your own Dock themes by creating/modifying those PNGs. And it comes with some default themes of its own. I'm not normally one to spend my time on things like this, but the Leopard dock was so awful, that I used it to change the Dock so it is actually usable.

- Service Scrubber

http://www.manytricks.com/servicescrubber/

Service Scrubber allows you to selectively and individually enable/disable the various services that run on your computer. Some are default MacOS services (and many of those can't be disabled) but many apps you install will also install services that you don't want/need/use.

- Smart Reporter

http://www.corecode.at/smartreporter/

Many new hard-drives, including every hard-drive in every Mac, is SMART-enabled. This means the drive has powers to measure/analyze the health of the drive. Just open Smart Reporter and check the status of any SMART-enabled hard-drive.

- YASU

http://jimmitchell.org/projects/yasu/

YASU stands for Yet Another System Utility. Macs are UNIX based, which means by default they are set to run maintenance tasks automatically at times that users mostly have their computers off -- so the maintenance tasks don't get run. With YASU you can run a variety of these tasks, individually or together, by checking which ones you wish to execute and clicking the button. Very simple, and don't underestimate the need to keep your Mac healthy.

- OpenOffice

http://www.openoffice.org

A free, open-source office program, compatible with, and similar in features to, Word, Excel and PowerPoint. Runs a bit slowly on Mac, but who can complain with that price!

- RapidSVN

http://www.rapidsvn.org/

A free SVN gui for Mac that actually works! 'Nuff said. Not as easy or seamless as Tortoise on the PC, but really, at least it exists.

- RCEnvironment (Environment Variables)

http://www.rubicode.com/Software/RCEnvironment/

This allows you to edit the variables in your ~/.MacOSX/environment.plist file. This is really useful, for example, if you're running Tomcat and you need to set your CATALINA_HOME and JAVA_HOME values.

- FFMPEGX

http://homepage.mac.com/major4/

A GUI for FFMPEG on your Mac. You need to download the codec libraries separately, but the tool makes it easy for you to do so by telling you where to get them and where to put them. And then you have a powerful multi-format encoder running on your Mac. Also does Flash 7 and Flash 9 video (not Flash 8 since it doesn't have VP6).

- RegExhibit

http://www.macupdate.com/info.php/id/25327

Ever needed a RegEx (regular expressions) calculator? Well, fortunately, someone made one for free for Mac.

- SimpleCSS

http://www.apple.com/downloads/macosx/internet_utilities/simplecss.html

A great little form-based CSS authoring tool, with live-preview of the text properties.

- Update Expired Podcasts

http://dougscripts.com/itunes/scripts/ss.php?sp=updateexpiredpodcasts

I hate being away from an internet connection, and then wanting to hear a podcast, only to realize Apple decided I hadn't wanted to update that one anymore. If you update using this AppleScript, which appears in the scripts menu in iTunes, *all* your podcasts will update.

October 21, 2009   3 Comments

Eye-Witness to History

Speaking at MAX this year brought many privileges. Few will compare, in the long-run, to having had the opportunity to personally watch Phillip Kerman pull a prank on the conference bus. Promoting his unconference talk, Kerman played the part of the 1800s snake oil salesman, promising people that he possessed, and would disclose, the secret mysteries of becoming a millionaire making movies on the cheap for the internet.

kerman4

As you can see in one of the pix, Robert Reinhardt is filming the entire scene ('filming' -- do the kids still say 'filming'?). I look forward to seeing this whole thing on YouTube.

October 7, 2009   Comments Off

LAFlashapaloozastock IV – Recap

LAFlashapaloozastock IV was last Saturday and it was a fantastic event. As with LFPS 1 in October 2005, this event was timed to precede MAX, in part to bring some of MAX to the members of the community who do not attend the conference.

The talks throughout the day were really well received. Autodesk opened up with some really neat stuff, including a Flash workflow, and extended clips from 2012. Chuck Freedman from Ribbit demonstrated some really fun interaction between Flash and the microphone. Matt Snow from Adobe showed some really cool work of Flash working on set-top boxes, integrating with HD video. Joshua Hirsch from Big Spaceship discussed maintaining a creative environment, and showed off a really neat twitter application that pings tweets and averages out emotions from emoticons. And we closed with 'the Joshua Davis show', which is always a blast and a source of inspiration to a ton of Flash designers and developers out there.

We closed with a party -- and quite a party it was. Certainly the wildest we've had in the four years we've been doing this. Featuring Influxis-powered kegs, MTV-infused martinis, and a great American-style BBQ dinner, we lubricated attendees for the main events of the night: a burlesque show, featuring a pole dancer, a funky magic show, and quite the limbo contest. Videos from these are posted below.

I wish I had time to post more on the event. But it was a great time with a great turn-out. Again, a special thanks to all sponsors, without whom it would be simply impossible to throw an event this large and cool for the community FOR FREE. Particular thanks to Adobe, Autodesk and Ribbit for stepping up as main sponsors, and Influxis (who sponsored the party) and MTV (who sponsored the martini bar). Of course, big shout out to Almer/Blank for hosting!

I've posted some of my photos of the event on Flickr, and we'll be posting more photos as we have time to compile them.

That said, my favorite photo of the night is this one, in which one LA Flasher reviews his new book from O'Reilly (which he won in that night's raffle), proudly ignoring the pole dance going on right in front of him. This is exactly how you can tell you're at an LA Flash event.

IMG_0418

My favorite video of the night is this one, in which Joshua Davis contributes his graffiti to the LAFlashapaloozastock Art Wall.

Two more videos from the party are compilations of the pole dance and the limbo contest. Share and enjoy!

Pole Dancer

Limbo

October 7, 2009   Comments Off

Rosetta: From AS to XAML

My good friend, Victor Gaudioso, just tweeted about Rosetta. Apparently, Mr. Softee is making a play right at AS3 developers, with a set of tutorials and tools to use ActionScript skills to author Silverlight experiences. Nothing's posted yet, but it has the potential to be interesting. Will keep my eyes on this one -- I always like finding new things I can do with my existing skills.

September 28, 2009   Comments Off

LAFlashapaloozastock IV Program

The event program for LAFlashapaloozastock (Saturday, October 3rd, 10:30A-10P) went to press last night. Gonna be an exciting event this year. Special thanks to Evan Squire ( evansquire.com ) for producing the hottest creative we've yet had for an LFPS. A preview image is included, and you can download the high-res PDF.

September 26, 2009   Comments Off

Free Ribbit Workshop, 10/4

As part of hosting LAFlashapaloozastock IV, the RMI is hosting two workshops: the Joshua Davis one, which I mentioned a couple of days ago; and also, a pretty unique (and FREE) opportunity to study Add Communication to your Applications with Ribbit.

Ribbit

Ribbit

I say that this workshop is unique because, well, you really can't find this topic anywhere. Ribbit's functionality (allowing you to bring voice and phone into your Flash work) is pretty darn cool (and again, certainly unique), and this course is not only free, but also taught by a senior Ribbit engineer -- direct from the horse's mouth, as it were.

I'd say that, as usual, you can save 20% with code 'laflash', but again -- it's FREE.

Do not miss this great opportunity to beef up your Flash skill set.

September 24, 2009   Comments Off

Joshua Davis in Los Angeles

I know the RMI hasn't been running as many live workshops out of Los Angeles as we used to -- and that's because we've been focusing more resources on the RMI Online Training. But we have resumed live workshops here over the summer, and are incredibly pleased to host Joshua Davis for a special two-day workshop on accelerating creativity in ActionScript 3, on Thursday/Friday October 1st and 2nd.

I'm posting about this course in particular (since I do not take the time to post on all of our live workshops) because it's not every day that people in and around Los Angeles have the opportunity to study with a renowned artist and designer like Joshua Davis. But also, because I've seen the course materials and subject matter, and I can say with confidence that this course is going to make all the students feel more creative in Flash, making code-driven creations, with fewer hurdles and less setup time.

In short, I strongly recommend this course if you are a designer or developer, with a minimum level of comfort in AS3, looking to unleash the artist within! Do not miss this rare chance to study with a great talent, and amazing motivator, and learn some really useful techniques that will make you a stronger Flasher.

And, just to make it even easier:
a) there's student pricing
and
b) the code 'laflash' will save you 20%

So, go on. Do it. You'll be glad you did.

September 22, 2009   2 Comments