We should optimize images

31
We should optimize images for the better web performance

description

Slide for 5 minutes presentation in JSConf.Asia. More detail http://bit.ly/we-should-optimize-images

Transcript of We should optimize images

Page 1: We should optimize images

We should optimize imagesfor the better web performance

Page 2: We should optimize images

I’m Shogo Sensui a.k.a 1000ch

from Tokyo, Japan

work at CyberAgent, Inc.

as Performance Provocateur

Page 3: We should optimize images

Steve Souders said…

80-90% of the end-user response time is spent on the frontend.

Start there.

via High Performance Web Site

Page 4: We should optimize images

Related Factors?Minimize round trip timesMinimize request overheadMinimize payload sizeOptimize browser renderingetc…

!

"

#

$

Page 5: We should optimize images

Related Factors?Minimize round trip timesMinimize request overheadMinimize payload sizeOptimize browser renderingetc…

!

"

#

$

Page 6: We should optimize images

In many case…

Page 7: We should optimize images

Let’s optimize images!

Page 8: We should optimize images

ImageOptim

Page 9: We should optimize images

ImageAlpha

Page 10: We should optimize images

JPEGmini

Page 11: We should optimize images

Image which does not contain many colors

Page 12: We should optimize images

Uncompressed PNG71,834 bytes

24bit PNG

Compressed PNG 28,369 bytes (60% cut)

8bit down converted

Page 13: We should optimize images

Image which has many colors

Page 14: We should optimize images

Optimized JPEG213,171 bytes

Meta is removed

Lossy Compressed JPEG71,874 bytes (66% cut)

Page 15: We should optimize images

I want to optimize them in CLI…

Page 16: We should optimize images
Page 17: We should optimize images

So I made grunt-imageand gulp-image.

Page 18: We should optimize images

grunt-image

Page 19: We should optimize images

gulp-image

Page 20: We should optimize images

$  npm  install  grunt-­‐image

$  npm  install  gulp-­‐image

or

Page 21: We should optimize images

grunt-image FeaturesReduce the number of colorRemove image meta dataSupport JPEG, PNG, GIF, SVG.Work on CLI !

%

&

|

(

Page 22: We should optimize images
Page 23: We should optimize images

Conclusion

Page 24: We should optimize images

24bit PNG

Page 25: We should optimize images

In development. If in production, down converting them is worth considering.

Which contain many colors and transparency.

When?

What kind of images?

Page 26: We should optimize images

JPEG

Page 27: We should optimize images

When we upload images to production server. They are lossy compressed.

Which contain many colors but transparency, and will be lossy compressed.

When?

What kind of images?

Page 28: We should optimize images

8bit PNG

Page 29: We should optimize images

When we upload images to production server. They are lossless compressed but already lossy.

Which contain ~256 colors and transparency.

When?

What kind of images?

Page 30: We should optimize images

Images should be optimisedwith your

grunt-image or gulp-image ;)

Page 31: We should optimize images

Thanks!+ShogoSensui

@1000ch

@1000ch)

*

+