Scott Morgan

LA Flash and Flex Developer

Archive for the ‘Rants’ Category

The majority of the time I use MXMLC and COMPC to compile my work via ANT tasks. Most of my work is Actionscript only projects so I rarely use the Flash IDE compiler. 

Once in a while I find myself in the Flash IDE, mainly because I am working with an artists files, or I need to set up something on the timeline with document classes, or templated swfs that designers can base their work on. What I hate is the lack of compiler options in the IDE. Why can’t some of the command line compile options be available in the IDE?. Simple options like -load-externs, -link-report, externs, -external-library-path, -include-libraries, -includes, -library-path, -runtime-shared-libraries, and -source-path (to name a few).

With CS3 you can place a swc in the same directory as the FLA and use that for compile time checking and excluding classes in the compiled swf but this doesn’t work in most workflows. Why can’t I point at a shared swc outside of my project? A lot of our work runs in a global framework and for the most part designers don’t care about the framework or when it changes. If the designers could point at a swc on the server that can be updated at any time or in one common directory pulled out of source control they would recieve the updates and compile time checking without even knowing. You should be able to point to any swc or even a swc directory (again, like in Flex Builder).

Flash 8 had exclude.xml at least, even that would be a nice touch if that was offered again. I haven’t been able to find if any of this has been added to CS4, most of the discussion is around the visual tools. I’m ok with that, the designers deserve the love, the last release was all about the developer, AS3. Just curious if anyone knows if the compilation and workflow in the IDE is any better? I know about XFL, and I am excited to start playing with that. I already have a few ideas for workflow improvements.

 Also, Adobe if you’re reading this, can you please add an omit trace statements option in the command line compilers. I know it can be done with ANT and some RegEx trickery but it shouldn’t be that difficult. </endOfRant>

I am not one to usually complain on my blog, mainly because I think the people reading my blog could give a rats ass about my problems. However, this time I feel I need to complain because a) it has to do with online user experience (something I am passionate about) and b) pizza (something every developer is passionate about ;).

The other night I went online because my wife and I decided we wanted to order from Red Brick Pizza. Originally the plan was to just look up the phone number. Once I got to the site I remembered you can order online. Last time we ordered from Red Brick this is exactly what I did and it worked out fine so I figured I would try again.

The initial experience is standard, you hit the homepage and you are greeted with a massive shot of a mouth watering pizza that looks to be the size of the Millennium Falcon. From there I clicked on the “Menu” link in the top menu, again very standard for a restaurant site. Once I am in the menu I can use the left side navigation to browser their menu and below the menu is the “Order Online” button.

Little did I know the hell that awaited beyond that “Order Online” button.The first screen you are presented with inside “Order Online” is a Red Brick’s “Location Search Utility” (so official, geez). OK, I entered my ZIP code and clicked “Show Locations”. Ok, first problem, did anyone catch it? Earlier I mentioned that I have ordered online from Red Brick before. Why didn’t they remember my information. Hello, marketing opportunity, make me create an account, that way it is convenient for me next time I come, and it is convenient for you because you can mail me crap that I won’t read. Instead now I have to go through, enter my zip code, and select the restaurant that is closest to my house. That’s right, I have to select the restaurant closest to my house. Dear Red Brick, geo-location isn’t anything new. How about you suggest the restaurant that is closest to my house? Or pre-select it. I realize 2% of the time users may want to select a different restaurant because they are going to be on the other side of town or are picking it up en-route to a friends house, have you heard of a “Change Pickup Location” button?

Their “Location Search Utility” results page has a few issues too. When I entered my zip code, the results came back with two restaurants but only one restaurant is plotted on the Google map, the furthest one from my house (this may explain a few things…keep reading). Being extremely hungry I wasn’t in the mood for reading, and because the map was so zoomed out, I clicked the map plot, and clicked the “Go To Store Page” link in the map point call out.

Finally I made it to the online ordering page. Again, they show me the zoomed out, view from pluto, map with the map point again, not entirely necessary on this page. Below that is their entire menu listed with three columns to the right of each available item. In each column is a large, medium, and small number ticker and the corresponding price for each size. In Firefox, the layout of this page was horrible, none of the number tickers lined up with the corresponding items, sometimes the number tickers wrapped to the next line so you had no idea which item you were selecting. Luckily the two items I was ordering were at the absolute top of the list and the absolute bottom so it didn’t take much to figure out if I was using the correct number ticker.Well, there are so many things wrong with this page. Even in 1996 this page would have been horrible. The largest complaint, why isn’t this page merged with the menu they already have? I massive scrolling page with no categorization is just horrible user experience.

Ok, this may be because they are using an off the shelf e-Commerce solution and they were unable to incorporate it with their existing site. Nope, if you check the url, the same query string schema is used in the marketing type pages so we are still in the same system, we didn’t switch to https (you’ll see why shortly). I think it just comes down to laziness, someone, somewhere probably created an excel spread sheet with the prices and sizes available and gave it to a developer, that developer then cut and pasted that content into Dreamweaver (check the source, lots of MM_, not difficult to figure out they were using DW).Next issue, you can’t click on any of the items in the scrolling list? I see “NEW! Pizza Bianco”, however, I have no idea what a Pizza Bianco is. As a user, if I really want to know, I have to click on menu, then click on signature pizza, and find Pizzas Bianco. Then when I find it and navigate back to online ordering page my session was wiped and I have to start over, right back to the location selector…UGH! A simple solution would be to store the session and make each item clickable so the user can check out what each item is. The ideal solution would be to incorporate the ordering and menu sections but I already mentioned that. A middle of the road solution would be to have a mouse over div created that showed the image and description of the product. I assume all this data is stored somewhere since the site is running on Cold Fusion, there must be some sort of back-end?

Also, what is up with all the number tickers? Why aren’t they just using combo boxes, each combo box would contain the three sizes and the price. This would make the page look less daunting, would fix the layout issues, and personally I feel it is more standard and what users are used to. Not 16 thousand number tickers. Oh ya, if you click the number tickers too quickly the price in the top right doesn’t update, without looking at the code there must be some interval set up which isn’t catching the change event when you click fast.

Wow, this blog posting is getting a little long. I could go on and on and on about this horrible experience. Before I wrap it up I want to mention one more, and this one is the kicker. Once you have magically figured out what you want and possibly selected the correct size and quantity from the slew of number tickers and figured out that the “Proceed” button is way up in the top right of the browser you are redirected to the “Your Order” page. Once again I am asked to enter my location information. Didn’t I do this already? Note to developer <cfset session.zipcode = #FORM.zipcode#> does wonders for usability. Oh ya, I hope you don’t want to change anything, because if you click back at this point the number tickers don’t reset but the box in the top right that displays the current price of your order does so it appears that nothing is selected. Ok, now for the real fun. Fill in your contact information, click Submit (mmmm, I can already taste my pizza), and you are greeted with message “A pizza ambassador will contact you within 10 minutes to verify your order”. WHAT?!?!? call me? I just spent all this time online for nothing? I still have to deal with the phone.

Oh ya, so I lied, one more huge thing. After the pizza ambassador called me and confirmed my order, I went to pick it up and bingo, it wasn’t at the restaurant 1/2 mile from my house that I selected. It was at the restaurant on the other side of town. Interesting how the only restaurant that showed up on the map was the restaurant on the other side of town, however, the text results showed the restaurant 1/2 a mile from my house. So frustrating!

Red Brick, if you are going to offer online ordering, truely make it online ordering, don’t make users do a ton of unnecessary work and eventually end up on the phone with them anyway. Aixen Solutions, you may want to go back to the drawing board on this one.

Just my 2 cents, and in case anyone was wondering, the food was great, a little cold cause I had to drive so far to pick it up, but still tasty! They can’t make a website but they do make a decent pizza.

Eat In Tax at McDonalds WTF???

Eat in tax?Since it won’t stop raining here in Southern California I brought the kids to the McDonalds in Burbank yesterday to burn off some energy in the play land. We ordered a couple happy meals with the incredibly shrinking cheeseburgers and I ordered a meal. While the kids were traveling through the miles of urine scented plastic caves I looked down at the receipt, to my surprise there was a one dollar “Eat in tax”. I have never noticed that before, I usually don’t study the receipts at McDicks but come on. Was there a VIP section with leather furniture that I somehow overlooked? Does McDonald’s charge this everywhere? I guess next time I will order it to go and bring the bags into the playland.

I had a sadistic moment on the week-end. I am not sure what came over me. My desktop computer (probably the last PC I will ever buy) was running very sluggish, it has probably been a year since I did a complete overhaul of it. My mother board fried a year ago, so I got a new one, upgraded some ram, and dressed up the old beige elephant. So it is an AMD Athlon 2000+ with 2 gigs of ram, not too shabby. Since it was running sluggish and regular defrags didn’t seem to be doing anything I figured it was time to run the trusty old “format c:” and start fresh. So that went smooth, everything deleted, I put in my bootable xp pro disk, installed xp without a hiccup. For whatever reason there was an issue with my xp key, a quick call to India (or wherever the xp tech support is), a new key was issued to me and I was up and running.It was a beautiful thing only seeing that windows xp screen for a few seconds during boot up. So now I was left staring at that very ugly, over saturated hillside photo that is the default xp wallpaper. First thing, let’s hit windows update, make sure I have all the patches and updates, I didn’t think there should be too many since the disk I installed from had SP2 on it, I was wrong, about 250 megs of updates.

Time to eat lunch, wash the car, etc. while Windows downloads the updates, installs them, and restarts 42 times.

Ok, I’m back, everything seems good to go. Once again I am staring at that horrible wallpaper. Whatever my turkey sandwich was spiked with made me want to try and upgrade to Vista. A clean install, nothing to lose on my machine, should be pretty straight forward, right? So I hit up the vista site, I see they have an application you can download to see if your system is Vista ready. Perfect! I download it, run it, fairly straight forward process. Only took about 2 minutes. Good news, my system passed. Only warning is my sound card driver. No problem, hardware vendor has drivers on their site.

So I go out and pick up a copy of Vista, yes, a legit copy, hear that FBI, Bill, a legit copy! $250 (or whatever the price was), not bad, heck, it’s the life line of your computer. So I stick the disk in, a very ugly blue and green screen greets me. From this screen I can run the test again or install Vista. I was still proud of my system for passing the test the first time I didn’t think he deserved the stress of going through that again. So I clicked the install Vista button. Waiting, waiting, waiting, blue and green screen, no text. Them WHAMO! My first error, I didn’t even make it to the first step of the install process and I have an error.

Supposedly my computer doesn’t have full ACPI support and Vista cannot be installed! Um, what, but my boy passed your test? The test results didn’t mention anything about this. My XP hardware profile says I have ACPI, why can’t Vista see it? WTF?!?!? The only interactive element on this very painful message window is an OK button. I click it and it just closes the Vista Installer. I tried it again, restarted, tried it again, the same message every time.

Now I’m pissed (seems to happen the longer I work on a Windows based system)! The free online test said my system was good to go. I buy the software, I open the software (once it is opened it can’t be returned), I attempt to install it and I learn it can’t be installed on my “Vista-Ready” system.

So that’s my story, I told you it was short, I wish I could write more but I didn’t even make it to step one. Once again, thank you Microsoft. You really know how to drive people to other OS’s. Very generous, do you get tax exemptions because of this charity work.

UGH!

ExternalInterface…HELP

I recently ran into another issue with ExternalInterface, when sending multiple calls at once? What I am seeing is when multiple calls are made certain calls get dropped unless I use setTimeout and add a 50 millisecond delay? I know this was an issue with the getURL(”javascript: in previous versions but I thought ExternalInterface was suppose to fix the overloading and buffering issues found in some browsers. I have tested in both IE and Firefox to no avail. And what really upsets me is the fact that it works sometimes, it’s not consistent.Is this a known bug, has anyone seen any workarounds (other than my hack of course). It’s happening in both AS2 and AS3. I am using the ExternalInterface to communicate between AS2 and AS3 (AVM1 and AVM2). I know I can use LocalConnection, but that is not the answer I am looking for, I need to use ExternalInterface in this particular project.

P.S. Happy Vallentine’s Day, I got chocolate covered bugs from my secret admirer, the ExternalInterface.

As I sit here and watch the Superbowl in my corporate housing in California I can’t help to notice how crappy the commericials are. The game, well, it’s usually a blow out, or not entertaining. The half time show, who cares. The rain was suiting, because Prince is washed up. Back to the commercials though. What happened. Has the creativity been sucked out of the agencies? Has the FCC scared corporate america into not being too risque? Is the 2.5 million dollar price tag sucking all the money out of the actual quality of the commercial?Anyway, i thought I would post one of the great Superbowl ads of the past. Mr. Terry Tate…wooooo wooooooo the pain train!!! I know this isn’t actually the spot from the superbowl, but it is still great!

  • 0 Comments
  • Filed under: Rants, Whatever
  • Ok, I have to unleash on Microsoft

    I am not one to usually bash Microsoft, I usually keep it in, but I recently switched to a Mac and I love it. But if I could ask Microsoft for one thing, I could ask for a million things to make their software better. But I just want one tiny thing that has pissed me off for awhile now.Why is it when you double click on a URL in IE that the entire thing doesn’t highlight? It stops at the start of the query string. So only the address before the ? is highlighted, then you type in your new address and you get a 404 or 500 error. Firefox does it on mac and pc, Safari does it, but IE, nope.

    Like I said, it’s minor. I couldn’t hold it in any longer. I hate having to select the URL, drag and highlight the entire thing or hit CTRL A when a simple double click should do exactly what I want.

    Ok, end of rant. Thank you for your time.

  • 0 Comments
  • Filed under: Rants, Technology
  • When I think back and reflect on the last 10 years of my life, a lot has changed, or has it? I have been involved with the internet in some way or another since the early to mid 90’s, essentially the beginning of when it began to take off for the general public. My first question is, has the Internet changed in the last 10 years. Of course it has! But wait, the Internet itself hasn’t changed. It is the same setup, however, how we use it and the technology to access it has changed (thank god). I remember my first time connecting to something outside of my computer, a network, sort of. It was a BBS, and I connected to it via my 900 baud modem connected to my Commodore 64 computer. On the BBS I could download games, leave messages for other users, ask questions, request games or software. Sound familiar? This was in the 80s!! File sharing as we know it today wasn’t even a twinkle in Shawn Fanning’s eye. I also thought by looking up a company in the phone book, I could dial their regular phone line and hack into their systems. I called banks, I called car companies, even my school, sorry to all those receptionists who had to listen to the soothing sounds of connections attempts. Ok, enough reminiscing. What’s my point.

    The Internet came out of nowhere, and literally changed the world as we knew it. Sure it took a little while to take off, but what new medium doesn’t. When TV was invented in the 50’s, not everyone had a television set, there were only a few shows. It probably wasn’t until the 70s when most families had TVs in their living rooms. In 15 years (or so), the public facing Internet has gone from a couple sites to more than a billion users online everyday. There is a generation growing up right now who will never know what it is like without email or SMS messaging. What it was like to write a letter and wait weeks for a response.

    OK, enough history, what are you getting at Scott? Good question, but in my incoherent rambling I do have a point. The Internet has changed society, no question about it. If you think otherwise shake that thing above your shoulders. It was only 8 or so years ago when you actually had to go into a bank to do your banking. If you were single and looking for a partner, you actually had to get off your ass and meet someone at a club or on a party line phone service. It was only 10-12 years ago if you wanted to research a car before you bought it you had to go into a dealership, grab some brochures, and low and behold, talk to a sales person in a bad sports jacket. What else could we possibly do with this ancient (I use the term loosely) technology? A better question, what can’t we do?

    I have been in this industry long enough to experience some extreme ups and some very painful downs. And right now, we are in a very lucrative up. However, it’s different this time. The industry is smarter. The crash at the turn of the millennium, the dot bomb if you will, was partly because everyone was jumping on the Internet bandwagon. Only problem was they didn’t understand what they were jumping on. They were building web sites because it was the cool thing to do, because the second you had a web site you were global and you were going to be instantly rich. Some people did become instantly rich. And they went instantly bankrupt just as fast.

    This time around it’s not only about global reach. It’s not about having a web site because you need to, unfortunately there are still a lot of companies that have web sites because they feel they have to. This time around it is about us, the users, it’s about community. It’s about sharing, about user contribution. It’s about access to information, wherever, and whenever you want. We used to access the internet from our big clunky beige computers. Some still do. But now we are accessing it from cell phones, from refrigerators, from cars, from air planes, everywhere. Take a look around, user contribution is driving the internet. You don’t have to be a geek in the basement anymore to have online presence. In the past 10 years, the internet has done a complete 360. Ok, I know what you’re thinking. No shit Sherlock!

    I’m a developer, we all know that; if you don’t you do now. More importantly, I am a Rich Internet Application Developer. And my point is? My point is this. The internet started out with text, a few graphics, and form fields. HTML hasn’t changed that much, sure there is CSS now, JavaScript, server side options out the wazoo, but the basic ingredients are still, text, graphics, and forms. What I am getting at, is we all want the next big idea, the next billion dollar idea.

    I am not going to tell you how to come up with the next billion dollar idea, if I could, I wouldn’t be writing this. But what I do want to share, and it may piss some people off, but that’s ok. The way we use the internet has changed; user contribution is as popular as olives in a martini bar. However, the interfaces users are presented with have not changed all that much from the early days of the Internet (of course there are a ton of exceptions to this statement). This is not a Flash Developer bashing HTML, and saying every site should be Flash. Anyone who thinks every site should be Flash should turn off their computer now, find the busiest street in your area and see if you are as tall as those dashed lines in between the lanes.

    Ok, so how I see it, we are part of the A.D.D. Generation, as sad as it is. In order to get users to contribute to our billion dollar idea site, we need to keep them interested and engaged. Not always an easy task. Sure with great design, a standard text/graphic/form site could do the trick. And lots do. But I think things have to be kicked up a notch. Great design is only part of a user experience equation. And unfortunately, a lot of times great design takes away from the experience because it takes forever to load the page. I am not sure of the actual numbers but I have read you have 4 seconds before you will lose your user. 4 seconds! That is an awfully short amount of time. How many forms have you submitted where nothing happens and you sit there waiting, watching your browser load animation play, wondering if anything is going to happen? Then you click the submit button again thinking that something must of went wrong. Before you know it you see 4 postings from you in your favorite blog. Oops. Now with a true rich internet application, the second the user clicks the submit button, you could present the user with a status, a load bar, a bird pecking at a slab of slate Flintstone style. Something, anything to indicate to the user what is going on.

    I hate the whole Web 2.0 term, but I am going to use it right now to get my point across. We are in the so called Web 2.0 era, so why the hell are we still using web 1.0 interfaces?? It feels like technology is moving full steam ahead, ideas are grand, bandwidth is spreading and speeding up, however, we are afraid to try anything new. The whole purpose of the internet is changing, so it is about time we change how we design and develop for it. We have to start thinking more about user experience, about how the application is going to be used. You can’t use the same application on a cell phone and a pc with a 24 inch monitor. We have the ability to determine what the user is on, so we should be enhancing the user experience for these devices. Making our presentation layers truly scalable to whatever method the user is using to access your application. Devices can share logic, they can share data, but please don’t allow them to share presentation.

    It’s a very exciting time to be a developer, especially a RIA developer. There is a definite shortage out there, which for us developers isn’t a bad thing, economics 101, Supply and Demand. Lack of developers == higher wages and better opportunities for us all. With any labor shortage comes below standard hiring and this is what could ruin it for the rest of us. Hopefully this rambling will mean something to someone. I guess this is what drinking a few beers does to my already scattered mind.

    Here is the cliff notes version of this rant. The direction of the Internet is changing. Technology is changing daily. However, I don’t see a huge shift in user experience design on the internet. The internet of yesterday is not the same as the internet of tomorrow. The internet is available everywhere and user experience design and development should be accommodating for this or else you are going to get left in the dust if you haven’t already. Sorry if this doesn’t make any sense, it sure does in my head and that’s all that matters right now :)