Archive for the ‘Web Development’ Category


Adobe Web Premium CS5 Review

Let me preface this review by saying that I’m a Flash developer & designer, and I’ve been using Flash, Dreamweaver, Photoshop, and Illustrator for 10 years now. I also animate and photograph too, so I use just about everything in this package pretty thoroughly.

There are so many products in this suite that it wouldn’t make sense to talk about everything specifically, so I’ll just note some standout positives and negatives that I’ve encountered. I’m not going to comment on the differences between CS4 and CS5 because I skipped CS4 for a number of reasons, some of which were not entirely resolved in this upgrade either. Many in the industry feel like CS3 was the last “great release” by Adobe/Macromedia, so using CS3 as a benchmark works well for me. If you want an opinion on something specific just leave a comment and I’ll update the review.

Before getting into it, I would like to express a very specific concern and frustration that I have with this entire suite. Adobe is making a move to make all of its applications use a unique, proprietary Adobe interface, which although shiny and nice is neglecting a slew of standards and behaviors that people are used to on Windows or OSX. CS3 used windows and panels that were tied into the user’s operating system, so for example the scroll-bars in menus were the same ones you’d see in any other program. That means that they worked the same way, looked the same way, and felt the same way to click, roll your mouse wheel over, etc. CS4 and CS5 have moved away from this and in doing so caused a ton of headaches that you’ll soon learn about if you buy the suite.

read more

WordPress get_bookmarks() bookmark return attributes

I haven’t seen this listed anywhere so I figured I’d give a little hand to the WordPress community.

As you may or may not know, the best way to retrieve bookmarks (listed as Links in the admin panel) is to use the get_bookmarks() method.

Here are the attributes of the bookmark object that it returns:


link_id (int) – ID of the link

link_url (string) – URL of the link

link_name (string) – link name

link_image (string) – link image URL

link_target (string) – link _target

link_description (string) – link description

link_visible (string) – visible Y or N

link_owner (int) – link owner ID (you can retrieve more information about the owner with get_userdata());

link_rating (int) – link rating (specified by you), 0-10

link_updated (string) – last updated date (in 0000-00-00 00:00:00 format)

link_rel (string) – link relationship (as specified by the Link Relationship (XFN) box

link_notes (string) – link notes

link_rss (string) – link RSS url


I hope you guys found this useful! If you ever need to figure out the attributes of an object in PHP, use var_dump(). It tells you everything there is to know about your given variable.

Flash 3D Transformations & File Size

Today at work we had a curious situation — a simple 40k banner was somehow using 23k of Actionscript bytes even though its only code was a number of stop()’s and some navigateToURL()’s and URLRequests. How was this possible?

Theory #1 was that tweens could have had something to do with it. Could the new tweening system actually be using AS? I created a test file including classic tweens, shape tweens, and “new” tweens. The result was 0 Actionscript bytes.

Theory #2 was that Blending Modes could be a factor. Again, 0 bytes.

Theory #3 was that 3D transformations could be the culprit. There was a simple 3D effect used at one point in the banner. To test this, I made an extremely basic AS3 file and applied a slight 3D rotation to its only MovieClip. I published and, voila, there were 23k of Actionscript bytes in the size report.

It’s odd that classic and “new” tweens hardly affect file size at all but 3D manipulations have to include a significant sized AS library. Unfortunately I don’t know what resulted in this decision by Adobe, but if anyone has some insight I’ll be sure to make an addendum to this post.

Stage quality in Flash is silly.

Here’s another quick, strange inconsistency in Flash.

Do this: set up a loop tracing out stage.quality. Right-click the SWF you currently have open and change the quality there. You should be seeing HIGH, MEDIUM, or LOW.

Now do this: Trace out StageQuality.HIGH, StageQuality.MEDIUM, StageQuality.LOW. The string values for each of these are all lowercase! So this means that Flash’s default quality values are not the same as their const’s. Kind of defeats the purpose, no?

If you’re ever going to make a dynamic frame-rate monitor or need to check Flash’s current quality setting, keep this in mind because comparing default stage.quality to any of those values are going to give you false. Even if it’s high / HIGH. Silly Adobe.

OSX Audacity LAME Library and Flash don’t get along.

The LAME Library 3.98.2 does a tricky thing when you import an encoded MP3 into Flash. It works for just about everything EXCEPT when you want to seek to a specific time. This can be off anywhere from a few milliseconds to a few seconds. It’s horribly annoying. I nearly jumped out of a window before trying to see if encoding had been the problem the whole time.

#Edit: I’ve recently discovered the reason why this happens. Apparently when you compress an mp3 using Audacity at a bitrate lower than 128 kbps the frequency is set at something unusual. Flash gets along with 44.1 hz and 22.05 hz but if you hand it something funny it responds… funny.

That is all. Avoid smashing your head into walls and use a different encoding if this happens to you.

Adobe UI and the Apocalypse

Today, in the first of what will surely be a highly successful and short-lived series of rants, I’d like to talk shop about our little friend monolithic over-lord Adobe.

Adobe, we depend on you and your software to make just about everything. From art to ads, porn to … more porn. UI designers are utterly dependent on Photoshop and Illustrator to work and work well so that we can make our own websites and games and software to build a prettier world.

So you’d think that a company that creates these tools would know a thing or two about good design itself. Or at least be in touch with its consumers. You’d hope so, right?

Then what happened?

I’m not going to pretend to be an omnipotent, stuffed-pants snooty designer, but I’d like to think I know a thing or two about usability in software. Mostly because I sit in front of a computer all day and all night and if something doesn’t work well then I’m the first person to suffer from it. And the direction the CS suite is going toward points to greater and greater suffering.

read more