Cross Platform

Challenges + Opportunities

For games and interactive developers.

Bruno Fonzi
ART+TECH Commodore at CODAM...
About Me
Bruno Fonzi
•
•

Mostly a Geek!	

Also UX Software engineer 	

• C/C++/AS/JS/…	

• Client/Server (mostly client)	...
Worked at

European Space Agency (ESA)

Project Hermes: The European Spaceplane
Bruno Fonzi
Worked at

European Space Agency (esa)

Project Silex: World First Data Transmission Between Satellites Using Laser Light
...
Worked at
Quark

Bruno Fonzi
Worked at
Adobe

Bruno Fonzi
Worked at

Powerflasher (FDT)

Bruno Fonzi
Worked at Startups
Around the world

Bruno Fonzi
Worked at Startups
Virtual Vegas

Bruno Fonzi
Landed at Lanica
co-founder

Bruno Fonzi
Commodore at CODAME

Bruno Fonzi
My Journey to Gaming

Bruno Fonzi
This is where it all started!
TI 99/A4

Bruno Fonzi
TI 99/A4 Specs
	


Released:

1981

Processor:

TMS9900, 16(!) Bit

Mhz:

3,3

RAM:

16 KB, expandable to 48 KB 	


ROM:

...
How it looked!

Bruno Fonzi
This Too!

Bruno Fonzi
Cross Platform
Challenges + Opportunities

A bit of History

Bruno Fonzi
Cross Platform in the 80s
•
•
•
•
•
•

Few colors	

Screen was mostly our tv	

Text based	

Basic was the language	

Assem...
Cross Platform in the 90s

• 92% Windows PCs	

• 5% Macintosh	

• 3% Unix

Bruno Fonzi
Cross Platform in the 90s
Revolution
• Hardware 	

Cheaper and more powerful	

• Java 	

Write once, run anywhere	

• Inte...
Apple Evolution

25 Years of Mac: Product Timeline [Wired]
Bruno Fonzi
Cross Platform Now
Mobile

PCs

Tablets

Other Devices

Bruno Fonzi
What’s next?
So much more!

Bruno Fonzi
Cross Platform
Challenges + Opportunities

Development & Design
Considerations

Bruno Fonzi
Operating Systems
Landscape

•
•
•
•
•

Desktops
Windows, OSX, Linux, ChromeOS …
Browsers
IE, Safari, Chrome, Firefox, Ope...
Design & Functionality
Diversity

•
•
•
•
•

Screens
Sizes, Colors, Portrait, Landscape …	

Power
Processor, Memory, Batte...
Fragmentation

Bruno Fonzi

Lanica, Inc.
Android Fragmentation

Bruno Fonzi

Lanica, Inc.
Apple Screen Fragmentation

iOS Fragmentation

*via PhoneArena

Bruno Fonzi

Lanica, Inc.
More Challenges
Distribution & Monetization
•
•
•
•
•

Mobile Market Places
Apple, Android, Amazon, Nook, GetJar… (100s!)	...
+ More Challenges
Advertise
Let the people know about your app/service
!

•
•
•
•
•
•
•
•

Pre-loads
Recommendation sites
...
++ More Challenges
Development & Design Strategies

Choose a Technical
Architecture Strategy

Bruno Fonzi
#1 Multiple Code & Designs
Desktop Web Web Mobile
Desktop Mobile Device
Desktop

Bruno Fonzi
#2 Single Code & Multiple Designs
Desktop Web Web Mobile
Desktop Mobile Device

Error Messages
Web Connectivity
Platform C...
#3 Single Code Base & Design
Desktop Web Web Mobile
Desktop Mobile Device

Error Messages
Web Connectivity
Platform Code

...
+++ More Challenges
Technical Solutions

•
•
•
•
•

Native Objective C, Java, C/C++, C# …	

Web Flash, HTML5 (JQuery, Impa...
Technology Web Apps
Frameworks Help

•

HTML5 Canvas
• Sencha Touch
• ImpactJS
• JQuery Mobile
• LimeJS
• Angular
• Polyme...
Technology Web Apps
Frameworks Help

•

WebGL
• Goo Engine
• Ludei
• Three.js
• Cocos2D-JS
• Isogenic
• …

Bruno Fonzi
Technology Web Apps
HTML or FLASH*

* Except on iOS Safari otherwise plug-in required!
Bruno Fonzi
Technology Web Apps
Toshiba libretto concept

Bruno Fonzi
Technology Web Apps
Games?

FLASH	

HTML5

Bruno Fonzi
Technology Web Apps
HTML or FLASH*
Development

Easy

Effort

Known technology

Monetization

Not ideal user experience

E...
Technology Hybrid Apps
JavaScript or ActionScript

Sencha

Bruno Fonzi
Technology Hybrid Apps
Adobe Air

Bruno Fonzi
Thoughts About Flash
“Flash is a cross platform development tool. It is not Adobe’s goal
to help developers write the best...
Flash Developers
Can sing!

“Powerflasher San Francisco Band
Bruno Fonzi
Hybrid Apps Phone Gap

Bruno Fonzi
Hybrid Apps

JavaScript or ActionScript*
Development

Easy

Effort

Known technology

Monetization

App Store

Experience
...
Interpreted Apps
JavaScript

Apache 2 License
JS programmatically
native controls
iPhone, iPad, Android
BlackBerry (soon)
...
Interpreted Apps
Appcelerator Titanium

Bruno Fonzi
Interpreted Apps
Lanica

Physics
Multi Channel

Parallax Scrolling
Random Terrain
GPU Particles
Bruno Fonzi
Interpreted Apps
Java & Action Script
Development

API Learning curve required

Effort

Up and coming

Monetization

App S...
Generated Apps
Cross-Compilers

• Unity3D Mono C#, JS, Boo to Native
• Apportable ObjectiveC to Native
• Xamarin MonoTouch...
Generated Apps
Cross-Compilers
Development

Experienced Developer

Effort

Easy for aimed cases, easy to
extend

Monetizati...
Native Examples
Adobe Photoshop Companion

Bruno Fonzi
Thoughts About HTML5
2007
Thoughts About
“You can write amazing web apps that look
exactly and behave exactly like apps on...
What Happened HTML5?
2013

• Apple (even Google) mix messages
• W3 Standard Different Agendas?
• Device Manufactures Pushin...
What Happened HTML5?
Interesting trends

• Microsoft: Complaining about The limits of
Google’s openness.
• JavaScript: Bec...
Cross Platform

Up for the challenge?

Bruno Fonzi
Extra Popcorn Time

Recommended presentations to watch!

Bret Victor The Future of Programming
http://www.youtube.com/watc...
Upcoming SlideShare
Loading in …5
×

Cross platform challenges and opportunities for games and interactive developers

2,613 views
2,341 views

Published on

Cross-platform Development and Designs Considerations.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,613
On SlideShare
0
From Embeds
0
Number of Embeds
1,424
Actions
Shares
0
Downloads
13
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Cross platform challenges and opportunities for games and interactive developers

  1. 1. Cross Platform Challenges + Opportunities For games and interactive developers. Bruno Fonzi ART+TECH Commodore at CODAME Bruno Fonzi
  2. 2. About Me Bruno Fonzi • • Mostly a Geek! Also UX Software engineer • C/C++/AS/JS/… • Client/Server (mostly client) • Web/Mobile • Gaming Bruno Fonzi
  3. 3. Worked at European Space Agency (ESA) Project Hermes: The European Spaceplane Bruno Fonzi
  4. 4. Worked at European Space Agency (esa) Project Silex: World First Data Transmission Between Satellites Using Laser Light Bruno Fonzi
  5. 5. Worked at Quark Bruno Fonzi
  6. 6. Worked at Adobe Bruno Fonzi
  7. 7. Worked at Powerflasher (FDT) Bruno Fonzi
  8. 8. Worked at Startups Around the world Bruno Fonzi
  9. 9. Worked at Startups Virtual Vegas Bruno Fonzi
  10. 10. Landed at Lanica co-founder Bruno Fonzi
  11. 11. Commodore at CODAME Bruno Fonzi
  12. 12. My Journey to Gaming Bruno Fonzi
  13. 13. This is where it all started! TI 99/A4 Bruno Fonzi
  14. 14. TI 99/A4 Specs Released: 1981 Processor: TMS9900, 16(!) Bit Mhz: 3,3 RAM: 16 KB, expandable to 48 KB ROM: 26 KB, expandable OS: Basic in ROM, Extendes-Basic with Cartridge Resolution: Graphic: 256x192, 64x48, 32x24, Text: 40x24 Colors: 15 + 1 transparent color Bruno Fonzi
  15. 15. How it looked! Bruno Fonzi
  16. 16. This Too! Bruno Fonzi
  17. 17. Cross Platform Challenges + Opportunities A bit of History Bruno Fonzi
  18. 18. Cross Platform in the 80s • • • • • • Few colors Screen was mostly our tv Text based Basic was the language Assembler otherwise Cross-platform: not really an option Bruno Fonzi
  19. 19. Cross Platform in the 90s • 92% Windows PCs • 5% Macintosh • 3% Unix Bruno Fonzi
  20. 20. Cross Platform in the 90s Revolution • Hardware Cheaper and more powerful • Java Write once, run anywhere • Internet AOL: you got mail! Bruno Fonzi
  21. 21. Apple Evolution 25 Years of Mac: Product Timeline [Wired] Bruno Fonzi
  22. 22. Cross Platform Now Mobile PCs Tablets Other Devices Bruno Fonzi
  23. 23. What’s next? So much more! Bruno Fonzi
  24. 24. Cross Platform Challenges + Opportunities Development & Design Considerations Bruno Fonzi
  25. 25. Operating Systems Landscape • • • • • Desktops Windows, OSX, Linux, ChromeOS … Browsers IE, Safari, Chrome, Firefox, Opera… (desktop and mobile) Mobile iOS, Android, Windows 8, Blackberry, FirefoxOS, Ubuntu … Game Consoles & Media Receivers Xbox, Playstation, Wii, OUYA, GameStick, ChromeCast, Apple TV … Embedded Devices “iWatch”, Google Glass, Arduino, Car Dashboards ... Bruno Fonzi
  26. 26. Design & Functionality Diversity • • • • • Screens Sizes, Colors, Portrait, Landscape … Power Processor, Memory, Battery … Inputs Keyboard, Gestures … Capabilities Accelerometer, Multi Touch, Geolocation … Programming Languages C++, Objective C, Java, JavaScript … Bruno Fonzi
  27. 27. Fragmentation Bruno Fonzi Lanica, Inc.
  28. 28. Android Fragmentation Bruno Fonzi Lanica, Inc.
  29. 29. Apple Screen Fragmentation iOS Fragmentation *via PhoneArena Bruno Fonzi Lanica, Inc.
  30. 30. More Challenges Distribution & Monetization • • • • • Mobile Market Places Apple, Android, Amazon, Nook, GetJar… (100s!) Social Networks & Web Aggregators Facebook, Twitter, Google+, GREE … Mochi Media, Kongregate … Video Game Distributors Steam, XBox Live, GREE … Desktop Software Platforms Umbutu, Mac, Windows, Chrome Store … Game Publishers EA, Activision, Ubisoft, Zynga, Sony … Bruno Fonzi
  31. 31. + More Challenges Advertise Let the people know about your app/service ! • • • • • • • • Pre-loads Recommendation sites SEO Press Ad Networks Giveaways Cross promotions User acquisition Bruno Fonzi
  32. 32. ++ More Challenges Development & Design Strategies Choose a Technical Architecture Strategy Bruno Fonzi
  33. 33. #1 Multiple Code & Designs Desktop Web Web Mobile Desktop Mobile Device Desktop Bruno Fonzi
  34. 34. #2 Single Code & Multiple Designs Desktop Web Web Mobile Desktop Mobile Device Error Messages Web Connectivity Platform Code Core Code Interaction Logic Core Logic System Capabilities Framework Bruno Fonzi
  35. 35. #3 Single Code Base & Design Desktop Web Web Mobile Desktop Mobile Device Error Messages Web Connectivity Platform Code Core Code • Screen Dimensions • Platform Logic • System Capabilities • Cloud Services • ... Interaction Logic Core Logic System Capabilities Framework Bruno Fonzi
  36. 36. +++ More Challenges Technical Solutions • • • • • Native Objective C, Java, C/C++, C# … Web Flash, HTML5 (JQuery, ImpactJS, Angular…) Hybrid Titanium (Appcellerator), Platino (Lanica)… Interpreted Adobe Air, PhoneGap… Generated GWT, Haxe, CoronaSDK, Unity3D … Bruno Fonzi
  37. 37. Technology Web Apps Frameworks Help • HTML5 Canvas • Sencha Touch • ImpactJS • JQuery Mobile • LimeJS • Angular • Polymer • … Bruno Fonzi
  38. 38. Technology Web Apps Frameworks Help • WebGL • Goo Engine • Ludei • Three.js • Cocos2D-JS • Isogenic • … Bruno Fonzi
  39. 39. Technology Web Apps HTML or FLASH* * Except on iOS Safari otherwise plug-in required! Bruno Fonzi
  40. 40. Technology Web Apps Toshiba libretto concept Bruno Fonzi
  41. 41. Technology Web Apps Games? FLASH HTML5 Bruno Fonzi
  42. 42. Technology Web Apps HTML or FLASH* Development Easy Effort Known technology Monetization Not ideal user experience Experience Sexy UI possible, but platform specific Hardware Very Limited Offline Generally Possible Bruno Fonzi
  43. 43. Technology Hybrid Apps JavaScript or ActionScript Sencha Bruno Fonzi
  44. 44. Technology Hybrid Apps Adobe Air Bruno Fonzi
  45. 45. Thoughts About Flash “Flash is a cross platform development tool. It is not Adobe’s goal to help developers write the best iPhone, iPod and iPad apps. It is their goal to help developers write cross platform apps. “ – Steve Jobs ! http://www.apple.com/hotnews/thoughts-on-flash/ Bruno Fonzi
  46. 46. Flash Developers Can sing! “Powerflasher San Francisco Band Bruno Fonzi
  47. 47. Hybrid Apps Phone Gap Bruno Fonzi
  48. 48. Hybrid Apps JavaScript or ActionScript* Development Easy Effort Known technology Monetization App Store Experience Sexy UI possible, but platform specific Hardware Partially accessible Offline Possible Bruno Fonzi
  49. 49. Interpreted Apps JavaScript Apache 2 License JS programmatically native controls iPhone, iPad, Android BlackBerry (soon) Bruno Fonzi
  50. 50. Interpreted Apps Appcelerator Titanium Bruno Fonzi
  51. 51. Interpreted Apps Lanica Physics Multi Channel Parallax Scrolling Random Terrain GPU Particles Bruno Fonzi
  52. 52. Interpreted Apps Java & Action Script Development API Learning curve required Effort Up and coming Monetization App Store & IAP Development Experience Effort Monetization Hardware Offline API Learning curve Close Up and coming to native App Store Partially accessible Yes Bruno Fonzi
  53. 53. Generated Apps Cross-Compilers • Unity3D Mono C#, JS, Boo to Native • Apportable ObjectiveC to Native • Xamarin MonoTouch C# to Native • Google Web Toolkit (GWT) Java to JS • Corona SDK Lua to iOS, Android • Haxe from Haxe to Native • … Bruno Fonzi
  54. 54. Generated Apps Cross-Compilers Development Experienced Developer Effort Easy for aimed cases, easy to extend Monetization App Store & IAP Experience Native Hardware Native Offline Yes Bruno Fonzi
  55. 55. Native Examples Adobe Photoshop Companion Bruno Fonzi
  56. 56. Thoughts About HTML5 2007 Thoughts About “You can write amazing web apps that look exactly and behave exactly like apps on the iPhone. “ – Steve Jobs at WWDC 2007 Bruno Fonzi
  57. 57. What Happened HTML5? 2013 • Apple (even Google) mix messages • W3 Standard Different Agendas? • Device Manufactures Pushing boundaries. Bruno Fonzi
  58. 58. What Happened HTML5? Interesting trends • Microsoft: Complaining about The limits of Google’s openness. • JavaScript: Becoming the facto scripting language? • Gaming: Is HTML5 the future of (mobile) gaming? Bruno Fonzi
  59. 59. Cross Platform Up for the challenge? Bruno Fonzi
  60. 60. Extra Popcorn Time Recommended presentations to watch! Bret Victor The Future of Programming http://www.youtube.com/watch?v=8pTEmbeENF4 Bruno Fonzi

×