Next Page
Linked In Profile  RSS Feed
Posted 13 July 2009

In: AS3 | Flash | Tips

1 Comment

It’s been some time since my last post. My apologies - I have been sucked into the Twitter vortex which I find fascinating to be honest. I mean, whodda thunk that 140 characters could reveal so many brand insights! But that’s a different post altogether.

Today I’m sharing some tips that I learned from Todd Dominey’s Twitter feed (@tdominey). For those of you who don’t know Todd Dominey, you’ll certainly know his work: SlideShowPro - the completely ubiquitous (and awesome) Flash slideshow gallery.

Both tips are AS3 specific, and oh so helpful.

Tip 1: A simpler trace function
I can’t tell you how many times I have had to type long, convoluted trace statements to see if whatever I’m working on is doing what I think it should be doing. Usually those trace statements look something like this:
trace ("array item " + i + ": " + my_arr[i]);

which would turn out something like this:

array item 0: blue
array item 1: red
array item 2: green

You’ll notice a lot of plus signs and quotes and stuff. Well, instead, try replacing the + signs with commas:

trace ("array item ", i, ": ", my_arr[i]);

Though it’s nothing truly magnificent, I find typing commas vs. + signs is much faster and easier to understand.

Tip 2: A simple for loop for arrays
This one is also quite simple in its function, but saves a lot of typing. Instead of looping through an array with a for statement, like so:

for (var i:int = 0; i < my_arr.length; i++) {
myFunction(which:int);
 }

you can use this:

my_arr.forEach(myFunction);

so long as myFunction accepts the right params:

function myFunction(element:*, index:int, arr:Array) {
trace (element, ": " , index);
 }

Pretty nifty eh? Yeah, I thought so too. Thanks @tdominey!

Posted 17 March 2009

In: Design | Tips

1 Comment

This is a good post on the basics of trademarks by Linda Joy Kattwinkel (via AIGA CPM). There is a marked difference between copyrights and trademarks, and all designers should be well aware of the implications of each.

From the article:

“Unlike copyright, ownership of a trademark is not about who created the mark. Trademark rights are created by using the trademark for goods and services in commerce. So when you create a logo for a client, your client will own trademark rights in that logo as soon as she starts using the logo on products or promotions for her company.”

Also, if you’re researching available trademarks, be sure to check out the Trademark Electronic Search System (lovingly referred to as TESS).

Posted 8 March 2009

In: Opinion | Technology | Tips

3 Comments

I’m always surfing Apple’s AppStore looking for new (and useful) apps for my trusty iPhone. I have to say that I haven’t been terribly impressed with the current offerings at the AppStore, and I’m sure a lot of that has to do with the steep learning curve of developing a decent app. Not to mention Apple’s insistence on disabling key features that cripple the iPhone’s usability (but that one’s been beaten to death already, so I won’t go there).

Regardless, my iPhone has become an indispensable part of my daily productivity, and I am constantly on the lookout for apps to help me in some way. Out of the thousands of apps, however, there are only a handful that I have truly find to be useful (or enjoyable) to me. I have downloaded dozens upon dozens of apps - only to be frustrated by their limitations, or lack of features and poor usability. Most have been immediately deleted, some have survived. Among them are the following:



Tweetie Tweetie

This is my favorite Twitter app. For the longest time, I was using the free TwitterFon, which I liked a lot. But after trying Tweetie, I really liked the extended feature set (search mainly). The interface is nice and polished and functions very well.

Things Things

There are more to-do apps for the iPhone than there are iPhones it seems, and it took me a long time to land on one that I truly liked. Cultured Code’s Things fit the bill, but not without some behavior modification on my part. Things is based on David Allen’s GTD (Getting Things Done) system - a flexible to-do system to which I’m still having trouble adhering to. Regardless, it is already one of my most indispensable apps. Though I do wish it would sync with the “cloud” - a feature they promise is coming soon.

Ambiance Ambiance

This little gem has come in handy more times than I ever dreamed it would. It’s a nicely designed app that does one thing and it does it well. It plays ambient sounds. It has lulled me to sleep while traveling without fail - and even at home I have turned to its soothing sounds for better sleep. The newest version is a big departure from the “classic” app, but it adds some great functionality like an alarm, and downloadable sounds. Love it.

Shazam Shazam

One of the two music-related apps I have (besides the built-in iPod app) is Shazam. An incredible piece of software that takes a short sampling of whatever tune is playing on the radio/tv/etc. and in a short while, tells you exactly what song it is, who sings it, and where to get it. The magic behind this app is a big mystery to me, but however it does it, it has worked every time I’ve put it to the test!

Pandora Pandora

If you’re anything like me, you have gigs and gigs of music on your iPhone, and yet, you find yourself craving something different. Well, if you haven’t already, grab Pandora! Tell it what song you want to hear, and it automagically creates a playlist of similar tunes for you. I have discovered a bunch of new music using this app, which is both a blessing and a curse - since it means I have to buy it.

Showtimes Showtimes

Surely you have been roaming about when all of a sudden you get the brilliant idea to catch a flick. Bust open Showtimes and let it locate the nearest theaters to you, then check out what’s playing. Not sure what the movie is? Watch the trailer right on the app. Now just cross your fingers that the movie doesn’t suck.

USA Today USA Today

I’m not exactly a news junky, but I do like knowing what goes on in the world. Though I do it many times a day, I find it cumbersome to open up my browser and type out www.cnn.com. USA Today’s news app was well thought out, well executed, and nice to look at. I do wish it were easier to access even more stories, but it does its job exceptionally well.

Groups Groups

One of my most hated apps on the iPhone is Mail. It was a poorly thought out application with so many limitations it just makes me cringe every time I try to use it. In fact, I’m positive that if Apple were to fix its email and calendar programs to make them more business-friendly, they would make an even worthier contender to the Blackberry. Regardless, one of the lacking features in Mail is the ability to email your address book’s groups. (Currently, you have to enter each group member’s address separately). Enter Groups, a nice little app that allows you to manage your contacts and groups right on the iPhone. Timesaver galore!

1Password 1Password

In this digital age, I have so many username/password combos you’d think I actually have important stuff I’m trying to protect! Unfortunately, in order to navigate the many web services out there, you need some security, and therefore, you need to remember all these u/p combos. Save yourself the headache and grab a copy of 1Password for your mac, then sync it with your 1Password for the iPhone, and never worry about what fake email you signed up to that service for.

Feeds Feeds

I have long felt the same way Khoi Vinh feels about RSS readers. I have gone through reader after reader and have finally landed on Google Reader, it being the least offensive to me - but still pretty bad in my opinion. In order to keep up with the many subscriptions I go through daily, I needed an app that would sync with my Reader account. Feeds was the best one I could find, and though there are many things I’d like to see changed in it, it sure beats having to go to the Google App (which I don’t care for in case you didn’t notice).

Deep-Green Deep Green

I’m not a gamer, and I’m especially not an iPhone gamer. But I do have some games on my iPhone, mainly because I find their use of interfaces intriguing - and I like to test them out. (When I say some, I mean about 5). Among them is my favorite Chess game - Deep Green. Beautifully designed, and no crazy bells and whistles. Just plain ol’ chess - and a chess engine that kicks my trash EVERY stinkin’ time! Wish it had some time of online multi-player mode - but then again, I think getting beat by my phone is enough humiliation each day.

Scriptures Scriptures

This one is a life-saver for me (no pun intended). It is a full library of LDS works including General Conferences, Manuals, and Scriptures with cross-linking and highlighting capabilities. A bit pricey, but worth every penny! Now if they could just come up with a better looking startup screen and icon. Ugh.

Other apps that I use regularly but did not include in my review here are:
Facebook, Amazon, Tip Star, Urbanspoon, Scrabble, and most recently Kindle. Anything else I should be looking at?

Posted 8 December 2008

In: Opinion | Tips

No Comments

I have worked in many different places in many different capacities, including owning my own business for a brief stint. I know first-hand the problems with keeping a bad client - regardless of how much value you believe they are bringing to your company. I have worked at places where we have lost several of the best people we had because the morale of working with one of these problematic clients is so low. This is a great article to help you determine when you should fire your clients - yes, even in this economy!

Posted 20 November 2008

In: AS3 | Tips

15 Comments

Quick AS3 tip that may be self-explanatory to most of you out there, yet stumped me for a while. In AS2, if you set a variable on your main timeline and wanted to access it from inside a movieclip, all you would need to do is call it by name. AS2 would then proceed up the scope chain looking for the variable by name. First, inside the movieclip, then on the parent of the movieclip (in this case…stage).

AS3 is a little different. Say you declare a variable on your main timeline like so:

var my_arr:Array = ["one", "two", "three", "four"];

Then you place a movieclip on your stage, and INSIDE your movieclip, you want to reference my_arr (which is on the main timeline, or the movieclip’s parent). Back in AS2, you would simply type out my_arr, and Flash would automagically find the variable as it searched the scope chain. In AS3, however, if you type this (again…inside the movieclip):

trace (my_arr); or even trace(this.parent.my_arr);

You would get this error:
1119: Access of possibly undefined property my_arr through a reference with static type flash.display:DisplayObjectContainer.

Well, to avoid this little annoyance, you can try a strict coercion like so:
trace (MovieClip(this.parent).my_arr);

I wish I knew the exact reason as to why this behavior exists, but I do have my suspicions and theories in case you’re interested. What I believe is happening is that in AS3, the movieclip doesn’t want to assume it knows what its parent is. In fact, as far as it’s concerned, it only worries about whatever is in it, or “below” it (the concept is called encapsulation). Anything outside of it (or “above” it) is basically anybody’s guess and unless you specifically tell it “your parent is a movieclip,” it doesn’t make any assumptions.

Again, that’s my own theory - so if anyone out there knows the real reasons for this behavior (or even a better way of handling this) - let us know!

Next Page