Glad You're Ready. Let's Get Started!

Let us know how we can contact you.

Thank you!

We'll respond shortly.

Standup 2010.07.12 & 13: Two-fer BOOM Edition

Interesting Things

iOS3 and hardware-accelerated CSS

CSS 3D Transforms are accelerated with hardware on iOS (3.2), but not the 2D ones. So if you want to take advantage of hardware, break out your linear algebra and add an extra dimension:

div {
       -webkit-transition: -webkit-transform 1s ease-in;
       -webkit-transform: translate(10, 0);  /* NOT ACCELERATED */

…will be slow. While this:

div {
       -webkit-transition: -webkit-transform 1s ease-in;
       -webkit-transform: translate3d(10, 0, 0);  /* ACCELERATED */

…will be crazy fast and smooth.

Also of note, the opacity CSS property is accelerated on iOS 3.2 and greater, iPhone and iPad.


Cached Taggings

Using act_as_taggable_on? There is an un/poorly-documented option for caching your taggings:

Say you have tv_shows tagged with genres. If you add a migration like this:

 add_column :tv_shows, :cached_genre_list, :string

The acts_as_taggable_on looks for this column and on save updates it with a comma separated list of the associated tags. Thus when you’re then reference in your view you can reference:



Restart Rubymine to find your new specs

If you’re using the latest Rubymine EAP, and you create a new spec file but can’t seem to get Rubymine to execute it, just restart Rubymine. BOOM! And you’ll be able to run your specs.

S3, Net::HTTP and JRuby

A project on has workers that manipulate PDF files in a pipeline. Each processing step stores its result on Amazon S3. Subsequent processing steps start by fetching the previously stored pdf using net/https. Occasionally the fetched PDFs are truncated and invalid.

After much digging and headscratching, the problem appears to have been JRuby 1.3.1. Moving the app over to JRuby 1.5.1 BOOM! fixed the issue and the PDFs are now all fine.

Post a Comment

Your Information (Name required. Email address will not be displayed with comment.)

* Copy This Password *

* Type Or Paste Password Here *