About Us

Bulletpoint StarImulus® is a technology focused design + interactive agency.

In addition to our client services we also have a few products in the works. Our office is always filled with chatter and this blog is an outlet for our creative energy, rants and ideas.

Podium

Stacks!
Imulus built a task management solution that finally works for teams. It's a life saver, learn more at usestacks.com.

Featured Project

Category: browsers

Oct12

Using SublimeVideo HTML5 video with generated HTML

Recently we pushed a massive update to Stacks, our group task management solution. Part of this update was reworking the onboarding and help process for users — instead of using totally separate pages we moved to a simple lightbox solution that could be loaded on any page. This allowed us to show a lightbox whenever it was requested programmatically or by the user. For additional flexibility (and to save loading time) we made the lightbox ajax in whatever HTML content was needed. This process works great, but it did cause a few issues with our recently implemented HTML5 video script, SublimeVideo.

lightboxed

A few words about SublimeVideo

SublimeVideo is not video hosting platform like Wistia, Vimeo, or Ooyala, instead it’s just a javascript player that makes populating already-hosted videos incredibly easy. On most sites you simply include the javascript snippet provided by SublimeVideo and add a class to your video elements that calls the script, like so:

<video class="sublime zoom" width="1026" height="572" ⌉
preload="none">
	<source src="http://site.com/video.mp4"/>
	<source src="http://site.com/video.ogg"/>
</video>

This will immediately replace all of the video elements with a beautiful HTML5 player and Flash fallback for browsers that either, don’t support HTML5 video, or don’t support that particular video format. For most day-to-day scenarios this is perfect and is by far the easiest solution I’ve seen.

The Catch

SublimeVideo’s script works by looking at the source once loaded, grabbing all of the video elements, and then applying the player to those elements. However, with the Stacks lightbox solution the video elements are being loaded only after the lightbox gets ajaxed, therefore they aren’t available via the initial DOM load. This means that playing videos within the generated HTML won’t work. It also means the sublimevideo video lightbox won’t work either.

Basically SublimeVideo has two object states. First, when the script is loaded without video being detected and is waiting to be called. Second, once the object has been told there is video on the page to work with. See the states below:

object-instances

The Solution

In order to get the sublime video object to run we need to load it under a document.ready function, SublimeVideo supposedly has a sublimevideo.ready function that is more accurate than document.ready but it doesn’t seem to work. Instead, use the following method to load up the sublime object when no video lives on the page:

<script src="/link/to/sublimevideo.js"></script>
<script>
	$(document).ready(function() {
		sublimevideo.load();
	});
</script>

Then, when the lightbox (or generated HTML) appears you’ll need to associate each video with the sublimevideo object (remember, it doesn’t know these new video calls even exist):

<script>
	$('video.sublime').each(function(){
	    sublimevideo.prepare($(this).el);
	});
</script>

The above method will grab all the video elements with a class of ’sublime’ and push them to the sublimevideo object for preparation. That’s it, now the generated HTML will re-associate all videos and work with the player properly.

May26

Starting Fresh

After patiently waiting for their arrival, Taylor and I received our new SSDs yesterday. Rather than migrating our data over from our old disks and potentially cheapening the solid-state experience, we both opted to start with a fresh slate. (By all accounts, he’s a glutton for reformatting his system. It’s a hobby of his.)

I was reluctant, mostly in anticipation that I’ll want to start fresh again in a few months when OS X Lion is released. Having just started on this machine a few months ago, I’m also keenly aware of how long it takes to get a system up and running and configured to my tastes.

Out of both curiosity and to make it easier on myself in the future, I decided to keep track of my installation and configuration process.

In roughly the right order:

Aug19

Safari’s lack of view background image and other infuriating developer restrictions.

In the Beginning

When I first started using Mac OS X in college I fell in love with the Safari web browser. It was light weight, sexy, and fast. Unfortunately, the more I ramped into complex web development the more I realized Safari’s severe developer limitations. Back then developers had to enter terminal commands to even gain access to Safari’s developer menu. And, once turned on, the developer menu lacked the oomph of Firefox’s flourishing Firebug and Web Developer Toolbar extensions.

Since that day I’ve been using Firefox heavily for development and only occasionally jumping into Safari to test site feel and functionality.

Then, about a year ago, Safari started making real steps to support web developers. The release of Safari 4 earlier this year capitalized a nice upswing in Safari developer improvements. But, unfortunately, Safari still lacks some of the most basic development capability.

In my opinion, if Safari doesn’t address the following three issues, it will never become a viable competitor to Firefox for developers.

Source View Made for the 80’s

Any time your browser’s source code view renders like Internet Explorer’s you really need to sit down think things over. Is this acceptable, am I being an asshole? The answer, obviously, is yes.
A comparison of Firefox and Safari source code.

Let Me View Background Images!

Firefox and IE background image optionsThe web is no longer a mass of tables and img tags. Thanks to CSS we’ve started abstracting background effects from real content. Knowing this, there is absolutely no reason why Safari shouldn’t have a view background image option. Safari, do you really expect me to right click, inspect element, and then track down the CSS that links to that background image? Give me a break.

Target HTML Elements Faster

The best thing about the Web Developer Toolbar extension for Firefox is that you can hit cmd-shift-y and instantly view HTML elements. This is perfect if you’re trying to track down a styling issue or remember an ID name. It’s fast, easy, and accurate. Safari’s right click > inspect element isn’t even in the same ballpark as this. And, as hard as I’ve tried, there’s no way to reassign the Inspect Element shortcut in OS X.
screencast

Conclusion

Safari, you’re a great consumer browser. And yes, WebKit is a phenomenal web rendering engine. Hell, even Google loves you. Please, just fix these small problems and I’ll switch to you full-time, I promise! Until then, I’m going to continue buying FireFox t-shirts.

Jun2

Introducing Support Details

support-detailsWe’re happy to formally announce the launch of Support Details, our first planned public product. This is one of those ideas which was in the works here at Imulus far longer then need be. In fact the idea was discussed in ’03 and sadly it fell off the radar until this year. Support Details is an attempt to add clarification to browser related issues between non-technical web visitors and their clients & customers.

This idea started as way to save time. To solve odd browser issues our team was always asking the clients questions like:

“What browser are you using?”, “Which version of Flash is installed?”,”Do you have cookies enabled?” “What is your screen size?”

You get the point.

We simply were losing too much time to explaining the “how to” aspect; hence Support Details.

To be useful the product had to determine what browser a customer was using, along with any other configuration data which could be detected. Then, it needed a reliable way for capturing and sending the data over to the person who was working on the problem.

support-details-detail

The concept is simple. That is part of the reason we believe it works so well. Yet, we’re always open to good suggestions for improvement and we’re eager to hear your feedback.

Jul25

Theming Gmail Using Firefox… a Kick-Ass Add-On

It isn’t often that I run across a Firefox Add-on which just blows my mind and makes me want to sing the praises of the developer, but Better Gmail 2.0.5.2 is one such add-on. This week we converted the office away from Microsoft Exchange server and onto the Google Mail App instead. I won’t go into the reasons why in this post, but after I made the switch I was somewhat disappointed with the interface of Gmail and it’s inability to allow me to customize it.

Here were just a handful of my gripes.

  • I can’t resize the width of the left side menu bar
  • Why does Gmail feel the need to “label” my messages rather then using the conventional folder system?
  • Shouldn’t I be able to modify the color scheme to my liking. There is only so much pastel I can take
  • When writing messages the REPLY, FORWARD and DELETE aren’t in the most obvious or intuitive locations

I don’t want to continue on bitching about Google, because aside from the interface the Gmail App kicks ass and checks SPAM well. It is reliable and it allows me to IMAP my mail to desktop clients. In light of my situation I looked for some way to relieve my disdain for the default interface.

Better Gmail 2 makes the entire mail experience much more enjoyable and easy on the eyes.
Google Talk actually looks like an IM client

Labels are converted into operating like folders.

A handy keyboard shortcut menu

All in all, this add-on has made the jump from Exchange to Gmail VERY enjoyable! I highly suggest Better Gmail 2.