Archive for the ‘Programming’ tag

Makin’ Comix

without comments

Via one of my comics-obsessed coworkers: «Never Mind the Bullets», an HTML5 animated interactive comic. It is a little motion-sicknessy to read, I find, but a neat idea. It reminds me of kids books where you move your token through the pages “to progress the story”: “oh no, how are we gonna find our way outta this one!?” etc

Written by Jack

March 13th, 2012 at 11:13 am

Posted in Uncategorized

Tagged with , , ,

Sample Game Code

with 2 comments

Here’s some code from our game, which shipped on XBLA for 360. I shouldn’t let this out, but here goes:

class shoesmuthafucka

There you go, a peek behind the kimono.

Written by Jack

February 28th, 2012 at 12:20 pm

Posted in Uncategorized

Tagged with ,

Need Interns Bad

without comments

Yo, my company needs computer programming interns badly. If you know anyone appropriate please let me know (in the comments or get ahold of me directly). They should probably live in TO already.

An understanding of the difference between stack and heap memory is, basically, the only requirement. We’re having trouble finding people.

I just contacted the “women in CS” group at UoT. Only about 4% of programmers are female, so I’m affirmative actioning it up. It’s probably not legal or something, but fuck being PC: statistics is science.

Written by Jack

February 16th, 2012 at 8:34 am

Posted in Uncategorized

Tagged with ,

Device Motion Event HTML5 Art Project

without comments

Go here with a Webkit HTML5 mobile browser. Shake to change the advice.

Written by Jack

December 4th, 2011 at 7:26 pm

Posted in Uncategorized

Tagged with ,

The Coming ShakeWeb

with 3 comments

Holy crap! If you’re on a device with accelerometers and a supported browser, HTML5 gets shake and orientation events — shit is about to get jiggly.

Written by Jack

November 9th, 2011 at 4:32 pm

Posted in Uncategorized

Tagged with ,

The Coming VideoWeb

without comments

HTML5′s video and canvas elements combine to produce something amazing. If you’re a web coding person you should check it out — shit is about to get real.

Written by Jack

November 8th, 2011 at 7:02 pm

Posted in Uncategorized

Tagged with , ,

HTML5 Video Backgrounds

without comments

Click through to an ugly proof-of-concept. Safari only. Makes noise (live Pink Floyd cover).

What’s happening there is that a DSLR video (and crap audio) I captured around this time last year has been converted into a 3G-cellular-video-appropriate format and is playing under some of my simple Javascript canvas animations.

But the concept is actually kinda sweet (assuming further testing works): it means that I have interactive video up and running, and it was easy. It means anything you can do online you can link to video — like make a [redacted]. It’s not hard to, say, add 3D models to scenes on-the-fly (motion tracking, as always, will be an asspain). Or you could pre-load composites and trigger them in code — like have the characters wait until the viewer Tweeted them a certain go-code (not saying it’s a good idea — just that it’s possible).

If you didn’t try Take This Lollipop then go do it now and you’ll get it.

Written by Jack

November 2nd, 2011 at 3:52 pm

Posted in Uncategorized

Tagged with ,

Unsubscribe Link Best Practices

with 2 comments

I have no experience on this topic, but I have spent the last hour cleaning up my inbox and unsubscribing from bullshit. There seem to be two forms of unsubscribe link: one-click, and a page to “change preferences”. I would test Apple’s to find the best practice, but then I’d be unsubscribed from Apple. Maybe I’ll make a fake account and try it out.

There’s a legal issue with the design of unsubscribe systems: some allow you to be added to the organization’s “do not contact” list, which in theory penalizes the business if contacts you again, intentionally or not. Keep in mind that local regulations might have something to say about how people unsubscribe from a system you build.

I look at the unsubscribe feature as a point of service failure, like having a dish sent back at a restaurant: the customer is unhappy with something you’ve done. It’s well known that successfully recovering from service failures can help create fierce brand loyalty. Any serious hospitality company and AppleCare are good examples of this.

I’m a fan of design simplicity, so I’m very biased against “preference changing” unsubscribe systems — ones where the link takes you to a page where you have to uncheck boxes and click buttons to continue the unsubscribe process. I wonder what the metrics are on these things: how many people click an unsubscribe link and then don’t change their preferences to unsubscribe from the mailout? How many try, fail, and try again? I bet the answers to those questions are, respectively, “almost none” and “way too many” — and I’m going to assume those going forward.

The one-click unsubscribe avoids these usability (and potential accessibility) issues but adds another — that users might accidentally unsubscribe from your service. I think this fear is what drives the prevalence of the “preferences model” (in my non-statistical sample preferences systems outnumbered one-clicks about 4:1).

Aside from all that, there are two main process design problems with both kinds of unsubscribe systems. First, they don’t try to recover from the service failure — they treat an unsubscription as an end of all communication with the customer. Second, at a wider scope, I think companies should avoid using email to talk to their clients en masse. Obviously you need to provide that kind of access if your customers want it, but email systems weren’t really designed with automatic mass communication in mind — one reason unsubscribe links need to exist in the first place.

My ideal newsletter unsubscription system would, at one click, take the customer to a page saying that they had been successfully unsubcribed from the service. It would have an undo link to handle the false-unsubscribe case. That’s the basic design, right there (plus invisible metrics, always).

To attempt a service failure recovery it could have a “click here to let us know why you unsubscribed” link. It’s possible to make this a text area on that first page with a submit button, but I feel that would over-clutter and confuse the page, given the prevalence of preference pages with submit buttons. An email link (or a link to a comment form page) is cleaner.

I’d also want to get people involved in my corporate community (another thing email is bad at — it’s one-way, not a connected graph) so I’d want people to connect with the community manager on Facebook and Twitter. “Question? Comment? Suggestion? Let us know on Facebook”, etc.

Community manager? Yes. All of this is predicated on having good communication in the first place — I might write more about that later — and, of course, using an unsubscribe page to trick a user into validating an address for resale is unadulterated cancer.

Written by Jack

October 16th, 2011 at 3:45 pm

Posted in Uncategorized

Tagged with ,

Animated Bezier Curves

without comments

Click through to see something totally random I did to play with animating bezier curves in HTML5 and Javascript: it’s a pumpkin (sorta)!

Read the rest of this entry »

Written by Jack

October 9th, 2011 at 6:03 pm

Posted in Uncategorized

Tagged with

Of Coding Tests and Unfinished Lofts

with 10 comments

I’m not sure I like the idea of working in unfinished office space. That implies a kind of design sloppiness, an unfinished quality, that might end up in the products designed. OTOH I’ve worked in “finished” spaces and they imply a closure which is never really the case in software development.

I suppose you need a mix: an architecture that allows expansion, but is sufficient (and non-lethal) at any given point in time.

Here’s a question from a coding test I just wrote:

Question 4: There is a class of 30 students. Each specifies 3 students they would like to sit with and 3 they would not.

Table 1: 5 seats.
Table 2: 7 seats.
Table 3: 6 seats.
Table 4: 5 seats.
Table 5: 7 seats.

Describe how would you go about constructing a seating plan. The data are available in any format you like.

Click through for my answer and then fire away in the comments.

Read the rest of this entry »

Written by Jack

October 7th, 2011 at 5:06 pm

Posted in Uncategorized

Tagged with ,