SlideShare a Scribd company logo
1 of 49
Download to read offline
Flash on Tap 2009

                Jamie Kosoy
                Associate Technical Director
                j.kosoy@bigspaceship.com




Thursday, June 4, 2009
the situation




Thursday, June 4, 2009
the situation




Thursday, June 4, 2009
the situation




Thursday, June 4, 2009
the situation




Thursday, June 4, 2009
the situation




                4 weeks until launch.




Thursday, June 4, 2009
the situation




Thursday, June 4, 2009
10 fundamentals to our process.




Thursday, June 4, 2009
1. Give everyone a say.




Thursday, June 4, 2009
give everyone a say




                         Strategy
                         Production
                         Design
                         Development




Thursday, June 4, 2009
give everyone a say




                          Strategy
                          Production
                          Design
                          Development
                         bad.




Thursday, June 4, 2009
give everyone a say




                          Strategy
                          Production
                          Design
                          Development
                         good.




Thursday, June 4, 2009
2. Never say it’s too hard.
                “Non-trivial” is better.




Thursday, June 4, 2009
3. Build fast.




Thursday, June 4, 2009
build fast




          In Flash:
          + Set relative publish settings.
          + One Document root to rule them all.


          In HTML/CSS/JavaScript:
          + Publish main SWF to the root directory.




Thursday, June 4, 2009
build fast




          + Leverage the community.
               - GTween
               - BulkLoader
               - Corelib
               - SWFObject
               - SWFAddress




Thursday, June 4, 2009
build fast




          Simple Code Rules
               - $argument
               - _private
               - public
               - __private static
               - CONSTANT




Thursday, June 4, 2009
build fast




                Oh yeah, protected variables:
                _vvv$_$$pppp$_$p____$_$$$$protected__$p_________myInfo_loadercontentloaderinformation




Thursday, June 4, 2009
build fast


                         Model



                                              Main




                                 Header      Footer
                                                         BigScreen




                                          (Some Footer
                                           Component)




Thursday, June 4, 2009
build fast




                obligatory code slide




Thursday, June 4, 2009
build fast
                public function Main()
                {
                         if(stage) _initialize();
                         else addEventListener(Event.ADDED_TO_STAGE,_initialize,false,0,true);
                }
                private function _initialize($evt:Event = null):void
                {
                         Security.allowDomain('*');


                         stage.scaleMode = StageScaleMode.NO_SCALE;
                         GTween.timingMode = GTween.FRAME;


                         Out.enableAllLevels();
                         if(Environment.IS_IN_BROWSER) Out.disableAllLevels();


                         _layers = [];
                         _layers[Model.ABOUT] = new About(about_mc);
                         _layers[Model.HEADER] = new Header(header_mc);
                         _layers[Model.FOOTER] = new Footer(footer_mc);
                         _layers[Model.SCREENS] = new Sprite(); // jk: screens will get added to this sprite.
                         _layers[Model.SUBMIT] = new Submit(submit_mc);
                         for(var i:int=0;i<_layers.length;i++)
                         {
                                  _layers[i].tabEnabled = false;
                                  addChild(_layers[i]);
                         }


                     _layers[Model.FOOTER].addEventListener(“foo”,_footerOnFoo,false,0,true); // jk: an example event.
                }




Thursday, June 4, 2009
4. Build ugly.




Thursday, June 4, 2009
build ugly




Thursday, June 4, 2009
build ugly




Thursday, June 4, 2009
build ugly




Thursday, June 4, 2009
build ugly




Thursday, June 4, 2009
5. Trust the timeline.




Thursday, June 4, 2009
trust the timeline




Thursday, June 4, 2009
trust the timeline




Thursday, June 4, 2009
trust the timeline




          stop();
          dispatchEvent(new AnimationEvent(AnimationEvent.ANIMATE_IN));




Thursday, June 4, 2009
trust the timeline



          + Developers
               - No motion chops.
          + Designers
               - Lots of motion chops.


          So the equation in codespeak:
          if(developer.chops.motion < designer.chops.motion)
          assignMotionWorkTo(designer); // jk: duh




Thursday, June 4, 2009
trust the timeline




                TimelineHelper class:
                http://www.adobe.com/devnet/flash/articles/timelinewatcher.html
                (tinyurl version): http://tinyurl.com/cybwnr




Thursday, June 4, 2009
6. Buy the developer whiskey.




Thursday, June 4, 2009
7. Mise en place.




Thursday, June 4, 2009
mise en place



          In Flash:
          + Deep linking
          + Loading scheme(s)
          + Library items organized


          In HTML/CSS/JavaScript:
          + SEO
          + Flash detection
          + Minimum browser resize




Thursday, June 4, 2009
mise en place




Thursday, June 4, 2009
mise en place




Thursday, June 4, 2009
mise en place




Thursday, June 4, 2009
8. Start from scratch.




Thursday, June 4, 2009
9. Strive for exellence.
                (not perfection)




Thursday, June 4, 2009
strive for excellence




Thursday, June 4, 2009
strive for excellence




          + Idea was pretty... but not a mathematically perfect helix.
          + Bottles need to dynamically “swing” on rollover.
          + Each bottle is used in the site in several other places.
               - 120kb per bottle.
               - Must be front loaded.




Thursday, June 4, 2009
Reindeer Games
       Were you invited?




Thursday, June 4, 2009
Reindeer Games
       Were you invited?




Thursday, June 4, 2009
strive for excellence




Thursday, June 4, 2009
strive for excellence




Thursday, June 4, 2009
10. Think simple.




Thursday, June 4, 2009
in conclusion


          + Give everyone a say.
          + Never say it’s too hard.
          + Build fast.
          + Build ugly.
          + Trust the timeline.
          + Buy the developer whiskey.
          + Mise en place.
          + Start from scratch.
          + Strive for excellence, not perfection.
          + Think simple.




Thursday, June 4, 2009
thanks.


                bigspaceship.com

                labs.bigspaceship.com
                twitter: jkosoy



Thursday, June 4, 2009

More Related Content

Similar to Flash on Tap slides

Firefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web InnovatorsFirefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web InnovatorsDietrich Ayala
 
The ABC of User Testing
The ABC of User TestingThe ABC of User Testing
The ABC of User TestingGabrielRadic
 
Oxente on Rails 2009
Oxente on Rails 2009Oxente on Rails 2009
Oxente on Rails 2009Fabio Akita
 
Props to Prototypes: Design Fiction Part 2 Design Connexity 2009
Props to Prototypes: Design Fiction Part 2 Design Connexity 2009Props to Prototypes: Design Fiction Part 2 Design Connexity 2009
Props to Prototypes: Design Fiction Part 2 Design Connexity 2009Julian Bleecker
 
Chad Udell - Developers are from Mars, Designers are from Venus
Chad Udell - Developers are from Mars, Designers are from VenusChad Udell - Developers are from Mars, Designers are from Venus
Chad Udell - Developers are from Mars, Designers are from Venus360|Conferences
 
6 types of recordings you can create without showing your face
6 types of recordings you can create without showing your face6 types of recordings you can create without showing your face
6 types of recordings you can create without showing your faceAnwar Saeed
 
Atlassian - A Different Kind Of Software Company
Atlassian - A Different Kind Of Software CompanyAtlassian - A Different Kind Of Software Company
Atlassian - A Different Kind Of Software CompanyMike Cannon-Brookes
 
What I Hate About Wordpress
What I Hate About WordpressWhat I Hate About Wordpress
What I Hate About WordpressMark Jaquith
 
理解开放教育的意义 突破教育资源的限定
理解开放教育的意义 突破教育资源的限定理解开放教育的意义 突破教育资源的限定
理解开放教育的意义 突破教育资源的限定Stian Håklev
 
Running The Show Configuration Management With Chef Presentation
Running The Show  Configuration Management With Chef PresentationRunning The Show  Configuration Management With Chef Presentation
Running The Show Configuration Management With Chef Presentationrailsconf
 
Leadership Circle - real estate internet marketing
Leadership Circle - real estate internet marketingLeadership Circle - real estate internet marketing
Leadership Circle - real estate internet marketingaussiehome.com
 
Encontro Locaweb Porto Alegre
Encontro  Locaweb Porto AlegreEncontro  Locaweb Porto Alegre
Encontro Locaweb Porto AlegreFabio Akita
 
An Open Civic Engagement Platform: Plone, Salesforce and Friends
An Open Civic Engagement Platform: Plone, Salesforce and FriendsAn Open Civic Engagement Platform: Plone, Salesforce and Friends
An Open Civic Engagement Platform: Plone, Salesforce and Friendsjonstahl
 
I Movie 08 In The Classroom
I Movie 08 In The ClassroomI Movie 08 In The Classroom
I Movie 08 In The Classroomgwimmer
 
Beyond The Web: Drupal Meets The Desktop (And Mobile)
Beyond The Web: Drupal Meets The Desktop (And Mobile)Beyond The Web: Drupal Meets The Desktop (And Mobile)
Beyond The Web: Drupal Meets The Desktop (And Mobile)Justin Miller
 
Symfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating productsSymfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating productsXavier Lacot
 

Similar to Flash on Tap slides (20)

Twitter on Rails
Twitter on RailsTwitter on Rails
Twitter on Rails
 
ERECOMPI
ERECOMPIERECOMPI
ERECOMPI
 
Firefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web InnovatorsFirefox 3.5 and Beyond, At Portland Web Innovators
Firefox 3.5 and Beyond, At Portland Web Innovators
 
The ABC of User Testing
The ABC of User TestingThe ABC of User Testing
The ABC of User Testing
 
Oxente on Rails 2009
Oxente on Rails 2009Oxente on Rails 2009
Oxente on Rails 2009
 
Props to Prototypes: Design Fiction Part 2 Design Connexity 2009
Props to Prototypes: Design Fiction Part 2 Design Connexity 2009Props to Prototypes: Design Fiction Part 2 Design Connexity 2009
Props to Prototypes: Design Fiction Part 2 Design Connexity 2009
 
Chad Udell - Developers are from Mars, Designers are from Venus
Chad Udell - Developers are from Mars, Designers are from VenusChad Udell - Developers are from Mars, Designers are from Venus
Chad Udell - Developers are from Mars, Designers are from Venus
 
Session 7
Session 7 Session 7
Session 7
 
6 types of recordings you can create without showing your face
6 types of recordings you can create without showing your face6 types of recordings you can create without showing your face
6 types of recordings you can create without showing your face
 
Atlassian - A Different Kind Of Software Company
Atlassian - A Different Kind Of Software CompanyAtlassian - A Different Kind Of Software Company
Atlassian - A Different Kind Of Software Company
 
What I Hate About Wordpress
What I Hate About WordpressWhat I Hate About Wordpress
What I Hate About Wordpress
 
理解开放教育的意义 突破教育资源的限定
理解开放教育的意义 突破教育资源的限定理解开放教育的意义 突破教育资源的限定
理解开放教育的意义 突破教育资源的限定
 
Running The Show Configuration Management With Chef Presentation
Running The Show  Configuration Management With Chef PresentationRunning The Show  Configuration Management With Chef Presentation
Running The Show Configuration Management With Chef Presentation
 
Leadership Circle - real estate internet marketing
Leadership Circle - real estate internet marketingLeadership Circle - real estate internet marketing
Leadership Circle - real estate internet marketing
 
Encontro Locaweb Porto Alegre
Encontro  Locaweb Porto AlegreEncontro  Locaweb Porto Alegre
Encontro Locaweb Porto Alegre
 
An Open Civic Engagement Platform: Plone, Salesforce and Friends
An Open Civic Engagement Platform: Plone, Salesforce and FriendsAn Open Civic Engagement Platform: Plone, Salesforce and Friends
An Open Civic Engagement Platform: Plone, Salesforce and Friends
 
I Movie 08 In The Classroom
I Movie 08 In The ClassroomI Movie 08 In The Classroom
I Movie 08 In The Classroom
 
Beyond The Web: Drupal Meets The Desktop (And Mobile)
Beyond The Web: Drupal Meets The Desktop (And Mobile)Beyond The Web: Drupal Meets The Desktop (And Mobile)
Beyond The Web: Drupal Meets The Desktop (And Mobile)
 
Symfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating productsSymfony Day 2009 - Symfony vs Integrating products
Symfony Day 2009 - Symfony vs Integrating products
 
Uber Vu - Scrum & Startups
Uber Vu - Scrum & StartupsUber Vu - Scrum & Startups
Uber Vu - Scrum & Startups
 

Recently uploaded

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 

Recently uploaded (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 

Flash on Tap slides

  • 1. Flash on Tap 2009 Jamie Kosoy Associate Technical Director j.kosoy@bigspaceship.com Thursday, June 4, 2009
  • 6. the situation 4 weeks until launch. Thursday, June 4, 2009
  • 8. 10 fundamentals to our process. Thursday, June 4, 2009
  • 9. 1. Give everyone a say. Thursday, June 4, 2009
  • 10. give everyone a say Strategy Production Design Development Thursday, June 4, 2009
  • 11. give everyone a say Strategy Production Design Development bad. Thursday, June 4, 2009
  • 12. give everyone a say Strategy Production Design Development good. Thursday, June 4, 2009
  • 13. 2. Never say it’s too hard. “Non-trivial” is better. Thursday, June 4, 2009
  • 14. 3. Build fast. Thursday, June 4, 2009
  • 15. build fast In Flash: + Set relative publish settings. + One Document root to rule them all. In HTML/CSS/JavaScript: + Publish main SWF to the root directory. Thursday, June 4, 2009
  • 16. build fast + Leverage the community. - GTween - BulkLoader - Corelib - SWFObject - SWFAddress Thursday, June 4, 2009
  • 17. build fast Simple Code Rules - $argument - _private - public - __private static - CONSTANT Thursday, June 4, 2009
  • 18. build fast Oh yeah, protected variables: _vvv$_$$pppp$_$p____$_$$$$protected__$p_________myInfo_loadercontentloaderinformation Thursday, June 4, 2009
  • 19. build fast Model Main Header Footer BigScreen (Some Footer Component) Thursday, June 4, 2009
  • 20. build fast obligatory code slide Thursday, June 4, 2009
  • 21. build fast public function Main() { if(stage) _initialize(); else addEventListener(Event.ADDED_TO_STAGE,_initialize,false,0,true); } private function _initialize($evt:Event = null):void { Security.allowDomain('*'); stage.scaleMode = StageScaleMode.NO_SCALE; GTween.timingMode = GTween.FRAME; Out.enableAllLevels(); if(Environment.IS_IN_BROWSER) Out.disableAllLevels(); _layers = []; _layers[Model.ABOUT] = new About(about_mc); _layers[Model.HEADER] = new Header(header_mc); _layers[Model.FOOTER] = new Footer(footer_mc); _layers[Model.SCREENS] = new Sprite(); // jk: screens will get added to this sprite. _layers[Model.SUBMIT] = new Submit(submit_mc); for(var i:int=0;i<_layers.length;i++) { _layers[i].tabEnabled = false; addChild(_layers[i]); } _layers[Model.FOOTER].addEventListener(“foo”,_footerOnFoo,false,0,true); // jk: an example event. } Thursday, June 4, 2009
  • 22. 4. Build ugly. Thursday, June 4, 2009
  • 27. 5. Trust the timeline. Thursday, June 4, 2009
  • 30. trust the timeline stop(); dispatchEvent(new AnimationEvent(AnimationEvent.ANIMATE_IN)); Thursday, June 4, 2009
  • 31. trust the timeline + Developers - No motion chops. + Designers - Lots of motion chops. So the equation in codespeak: if(developer.chops.motion < designer.chops.motion) assignMotionWorkTo(designer); // jk: duh Thursday, June 4, 2009
  • 32. trust the timeline TimelineHelper class: http://www.adobe.com/devnet/flash/articles/timelinewatcher.html (tinyurl version): http://tinyurl.com/cybwnr Thursday, June 4, 2009
  • 33. 6. Buy the developer whiskey. Thursday, June 4, 2009
  • 34. 7. Mise en place. Thursday, June 4, 2009
  • 35. mise en place In Flash: + Deep linking + Loading scheme(s) + Library items organized In HTML/CSS/JavaScript: + SEO + Flash detection + Minimum browser resize Thursday, June 4, 2009
  • 36. mise en place Thursday, June 4, 2009
  • 37. mise en place Thursday, June 4, 2009
  • 38. mise en place Thursday, June 4, 2009
  • 39. 8. Start from scratch. Thursday, June 4, 2009
  • 40. 9. Strive for exellence. (not perfection) Thursday, June 4, 2009
  • 42. strive for excellence + Idea was pretty... but not a mathematically perfect helix. + Bottles need to dynamically “swing” on rollover. + Each bottle is used in the site in several other places. - 120kb per bottle. - Must be front loaded. Thursday, June 4, 2009
  • 43. Reindeer Games Were you invited? Thursday, June 4, 2009
  • 44. Reindeer Games Were you invited? Thursday, June 4, 2009
  • 48. in conclusion + Give everyone a say. + Never say it’s too hard. + Build fast. + Build ugly. + Trust the timeline. + Buy the developer whiskey. + Mise en place. + Start from scratch. + Strive for excellence, not perfection. + Think simple. Thursday, June 4, 2009
  • 49. thanks. bigspaceship.com labs.bigspaceship.com twitter: jkosoy Thursday, June 4, 2009