John Dyer

Technology and web development in curly bracket languages {Javascript, C#, ActionScript}

PNG transparency in IE6 (without JavaScript)

by John Dyer 3. December 2008 02:35

As most of us know IE6 does not support PNGs with alpha transparency. We recently updated DTS’s site with some popups that have a drop shadow using PNG-24 images with alpha transparency. Here’s how it looks in IE6 compared to any modern browser (FF, IE7, Opera, Safari, Chrome, etc.). Notice the nasty blue border.

PNG-32 (problems in IE6)

IE6
image

Correct Display
image

I wish we could ignore IE6 users, but around 20% of our traffic still hasn’t upgraded, so we have to make it work for them. There are tons of JavaScript and CSS hacks out there to get IE6 to display PNGs with alpha transparency correctly, but we’re trying to avoid hacks whenever possible so as to not break things in the future. Also IE6’s filter technology can cause other problems. To fix this, I found a sweet “non-hack” solution on sitepoint which recommends using PNG-8 instead of PNG-24.

To summarize the article on PNG-8 and PNG-32.

PNG-32 PNG-8
16.7 million colors (like a JPEG) 256 colors (like a GIF)
alpha transparency, not just indexed (like GIF) alpha transparency (just like PNG-32)
doesn’t work in IE6 works in IE6 like a GIF (indexed transparency)

 

PNG-8 with alpha transparency (IE6 works, pretty much)

Here’s what the PNG8 looks like in IE6 on our site. Notice that the drop shadow is missing, but the transparency still remains.

IE6
 image

Correct Display
image

Everything “works” for IE6 users even thought it’s a slightly downgraded experience since the shadow is missing. For us, this is preferable to using JavaScript or CSS hacks that could cause other problems with animation. Since this is a image that only needs 256 colors, the PNG-8 is the perfect solution that is win-win-win.

How to make Alpha PNG-8 Images

The problem with all of this is that there is only one program that can make this specific kind of PNG-8 – Adobe Fireworks. Photoshop can’t do it, and I’m not sure if any other graphics programs can either. Here’s a step by step for making the PNG-8

1. Open the PNG-32 (or photoshop file)

image

2. Change the Image Type to “PNG 8”

image

3. Change to “Alpha Transparency”, then click the “Rebuild” button

Now you will see the new color palette with alpha colors. IE6 will only display the solid colors, not the fully transparent (upper left) or semi-transparent (the three with inset clear boxes).

image 

image

4. Chose File-Export to save the PNG-8

image

And that’s it. It takes a little more time but has made our development easier and provides a more stable experience for users.

Sources

Online Education Player Design Considerations

by John Dyer 2. June 2008 18:33

Dallas Seminary has been doing video-based online education for about 5 years now. One of the initial goals was to replicate the classroom teaching experience as much as possible by including the video and the professor's illustrations (Powerpoint, Keynote, etc.). Beyond that, we also wanted to enhance the experience by adding things like a transcript and editing down the video to the most important segments.

Our initial player was created by Yahoo!'s Broadcast.com division and it used HTML frames and Windows media. This limited us to Internet Explorer, but there was no other option at the time. Then Flash 7 came out with video support and I custom built the player below. Since then, video on the web has come a long way, and the introduction of H.264 support means that we only need one format for playing on the web and on the desktop.

Here is the original design using 320x240 video and 480x360 slides:

  • image

Here are some changes we wanted to make:

  • Move from Flash 8 to 9 - use AS3 and enable fullscreen support
  • Use H.264 video - to simplify our workflow
  • Increase the video size, quality, and availability
  • Some users found the auto-scrolling transcript distracting and we need another option for them
  • Many classes don't have slides, so we need to de-emphasize those, yet also provide a good slide navigation system.
  • More narrow player - the current design is about 850px which makes it hard to have many more windows open at the same time.

Here are wireframe mockups of various design proposals

  • First player (2003) using Yahoo!'s Broadcast.com using HTML/Frames/WMV
    Obviously, WMV is limited to really working in IE, and we were stuck with Yahoo!'s platform.
    image
    old_online_ed_Yahoo_Video_Skin
  • Flash player with 320x240 video
    This player is wider since the slides are bigger, but the transcript is more narrow column which makes it easier to read.
    image 
    image

New Designs

  • Swapped video and slides sizes, controls at the bottom
    This swaps the video and slide sizes. It's nice, but the transcript is far away and the slides are hard to read. The player is also still very wide.
    image
  • Larger video size, small slides on the side
    To make the video even bigger, the transcript is now a single line like closed captioning on TV. Rather than give the slides their own dedicated space, the slides have a tray on the right and the full size slide appears over the video for a few seconds. The width is slightly smaller, but not much.
    image
     
  • Coverflow Style Player
    To make the player more narrow (for multi-tasking), we move the slides to the bottom and use the Apple CoverFlow to show a lot of them at once. This makes the player more narrow which is good, but also taller. To shorten it, we've moved all the controls on top of the video that appears/diasppears on mouse hover.

     image

    Here is a screenshot of a fairly common desktop size (1680x1050) with MS Word and a preview version of this player open. (note: I've made sure the controls are visible for the screenshot, but they are hidden normally) 
    image
    image

This seems effective, but there is a possible drawback in that the Coverflow might be somewhat distracting to some students (it can be turned off). Also, some may prefer the older style transcript with more than one line visible at once.

Links to preview the players:

Another future goal is to build the player as an AIR application so that videos can be downloaded for offline use.

New Theme for BlogEngine.Net

by John Dyer 11. January 2008 00:10

I'm working on a new theme that is closer to a lot of WordPress looks out there.

Right now, I've going with a zero-image look to see what I could accomplish without using images for curves. So far it's looking pretty boxy, but the colors aren't too bad. I decided to use curvyCorners instead of images to round things out. Since this is primarly a blog about coding, not design, I think it's appropriate that the design doesn't have a lot of imagery, and that the site uses code to accomplish its look.

BlogEngine.NET makes skinning the site super easy since it's basically just a MasterPage and a CSS file. I also made a small change to the tag cloud and created an alternate version of the recent comments control so it just has the author and post title.

Making Design Decisions Based on Visual Mouse-Click data from CrazyEgg.com

by John Dyer 1. October 2006 06:39

For the last two weeks, I've been running some tests of DTS's website (which was featured on godbit and just won an best of the web award!) with CrazyEgg.com. We tested our two most important pages, the front page, and the Admissions page. The following information could be discovered via standard analytics but is is far more intuitive and easier to "see" with CrazyEgg's visual tools.

DTS Front Page

 Click map Heat map
DTS Front Page Click map DTS Front Page heat map

For those who've never worked on a University website (DTS stats: 2000 students, 200 faculty/staff, 11,000 alumni), the front page must function as: 1) an attractive, informative call-to-action for prospective students, 2) an information portal for current students, alumni, and staff, and 3) a public relations piece for the public and donors. In other words, a University front page needs to convey a lot of information for several very different audiences. Our Lead Designer, Tim Kimberley (of HeLives.com) has done an incredible job laying out all this information. Now, with the CrazyEgg.com data, we've learned a few things that justify our design decisions and will hopefully lead us to make it even better:

1) Be careful with links that don't look like links - In the lower half of the page, the headers "dts family", "feature items", "calendar" are all clickable links that take you to pages with more information in those categories - but, not many people click on them. Perhaps not many users "gets" that those are links since there is no underline. A possible solution is to add a "more" button next to each heading.

2) Unused menu items - From the heatmap, it's pretty easy to see that the top left menu is very popular and that some items are more popular than others. This would be harder to "see" using analytics. The "Become a Student" area is really working and prospective students are using all three sub links. But we also noticed that the "donate" button is not very popular. We may need to rethink how we word that area since it takes up so much valuable real estate.

3) Unexpectedly popular links - The "campusnet" link is a lot "hotter" than we would have guessed. Campusnet is separate website where students login and register for classes. We thought they would just go directly to the website by typing in the URL(campus.dts.edu), but it appears that a lot of them go through this link. In the design phase, I didn't want to include this link, but I'm glad we did (note: we filtered out all web traffic coming from our campus to skew the data toward external visitors, so this link might have been even more popular if we had included students, faculty, and staff using campus computers.)

4) Search - Although we know that many users like to search, it's nice to be able to visually see that the search box is important and heavily used. (note: we also track what the most common search terms are and we display "Popular links" at the top. Ex: fees and bock)

5) Flash? - CrazyEgg.com does not currently have a way to detect flash clicks. We may want to change out the flash rotator to a JavaScript rotator so that we can see more clicks (jCarousel?). (Note: we use unobstrusive JavaScript to ensure users without Flash have a good experience).

Admissions Page (Become a Student)

 Click map Heat map

The Admissions page is probably the most important page on a University website. Once the user has made it past the front page, this is our best chance to layout the information they need and the steps they need to take in order to find out if our school is the best for them. We've done a few things there not found on most sites. In the left column (campus picture and stats) functions to convey a sense of the school and nothing there is clickable. In the right column, we put together some videos about the school and a few interesting links in order to convey a sense of the people at DTS. The center column is focal area where the user can begin to do something. The most important things, "apply" "catalog" and "get information" are prominent icons and the major degree programs are clearly laid out. Lastly, there is a bottom section containing a lot of additional information and links to various admissions related pages. Here's what we learned:

1) Prominent icons work - The center column is heavily used and seems to be functioning perfectly. In our old site, these links were text-only. From the heatmap, we can also see that some users click on the text "apply online" and others click on the graphic.

2) Links don't always need an underline - In the green degree box, users click the "learn more" link under each degree more than they click the title of the degree. Here, users seem to "get it" and both links work.

3) Sometimes icons don't work - The links in the lower right (the two students and one professor) are the least-clicked links on the page. We'd like to keep the faces there, but perhaps we can link to more compelling content to better utilize the space.

4) Lists work if they are clear - The bottom of the page is more utilized than I would have guessed. Users click on all of the links and, because they click on some more than others, we can tell that they are actually reading the links. A glance at the heatmap shows that "Expenses" and "Online Education" are two of the most hit pages. We need to spruce up both of these pages since they are heavily trafficed and also perhaps give them even more prominence (maybe put them in place of #3).

5) Don't rely on anaytics alone! - The "visit campus" link is fairly "hot." Just looking at this data, I probably wouldn't change anything. But, we found out from our Admissions team that if a student visits campus he or she is extremely likely to matriculate. Therefore, it would make a lot of sense to promote this link as well, although we couldn't have known that just from the click data.

Summary

It is much easier to quickly understand which links users are clicking with a visual tool like CrazyEgg.com than with a standard analytics tool where one has to manually analyze the data. It's also much easier to justify tough decisions to non-web developers (administrators, presidents, etc.) using a heatmap than a bar graph. But we also know that analytics (visual or non-visual) do not tell the whole story. Standard analytics, user surveys, and interdepartmental communication are still essential tools for web designers. CrazyEgg's visual tools are a welcome and powerful addition to that lineup.

Links

Mouse Tracking: Beyond Analytics

by John Dyer 1. August 2006 22:00
The next big thing after website traffic reports appears to be mouse tracking. There are several services popping up that use JavaScript to track a user's mouse movements and clicks. When you login to the service you can watch movies of exactly how a user explored a webpage using their mouse. This is a much cheaper alternative to a full-blown eyetracking system. Here are some of the major players so far (note all of them have nice real-word names instead of "web 2.0" meaningless madeup names):

"Heatmaps"
  • MapSurface.com - Based on his orginal AJAX Link Tracker, Glenn Jones' service overlays graphical click data on top of your site. You simply press "Alt-X" and up pops your data. MapSurface.com is the hosted service, but there is also a free download [no commercial plans yet announced]
  • CrazyEgg.com - does essentially the same thing as MapSurface, but the overlays look a little more polished. [currently accepting beta inquiries]
"Mouse Movements"
  • OpenCube.com - OpenCube has been known for it's nice DHTML/JavaScript/CSS widgets and menus, but it has also developed a product that goes a heatmap and actually tracks the mouse movements of users. My worry here is that it seems to require IE to view the data. [$119 per site. Requires ASP on server]
  • ClickTale.com - Right now, this looks to be the most powerful tool for mouse tracking. This services is also in Beta, so it will take some time to see how good they really are, but their demo videos look solid. [accepting beta applications]
"Free"
  • MIT Labs - MIT's Media Lab has released a PHP-based tool that does some pretty powerful mouse tracking. It creates an overlay with arrows of differnt sizes and colors indicating the speed and direction of the mouse. They have a sort of hosted service as well as a download package. (usability study PDF)
It will be interesting to see how this arena shapes up over the next year and how useful this proves to be. I would be willing to be several open source tools will crop up as well.
Web Statistics