Dean4j@Njug5

880 views

Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

Dean4j@Njug5

  1. 1. NJUG 5
  2. 2. Overview <ul><li>Platform as a Service </li></ul><ul><li>The future will be about programming language </li></ul><ul><li>JavaFX Family </li></ul>
  3. 3. Platform as a Service?
  4. 4. Examples <ul><li>Amazon Services </li></ul><ul><li>Google App Engine </li></ul><ul><li>Microsoft Live Mesh </li></ul><ul><li>Sun Hydrazine </li></ul>
  5. 5. Amazon Services <ul><li>Amazon Elastic Compute Cloud (EC2) </li></ul><ul><li>Amazon Simple Storage Service (S3) </li></ul><ul><li>Amazon SimpleDB </li></ul><ul><li>SQS, DevPay, FWS </li></ul>
  6. 6. Amazon S3 <ul><li>Most popular </li></ul><ul><li>Secure online storage space for any kind of data </li></ul><ul><li>Use web service to retrieve/store data by unique developer-assigned key </li></ul><ul><li>Use many in file/image sharing web sites. </li></ul><ul><li>15 cents (~5 baht) a month/ 1 G </li></ul>
  7. 7. Amazon EC2 <ul><li>web service that provides resizable compute capacity in the cloud </li></ul><ul><li>Configurable from OS -> Software, Hardware, Zone </li></ul><ul><li>Increase/decrease instances by its own </li></ul><ul><li>$0.10 per instance hour </li></ul>
  8. 8. Amazon SimpleDB <ul><li>Not RDBMS, Think Spreadsheet </li></ul><ul><li>Has a similar query language </li></ul><ul><li>Very Flexible. </li></ul><ul><li>Hurray! No need to maintain schema!, no need another DBA </li></ul>
  9. 9. Amazon SimpleDB <ul><li>- Add New attributes on the fly </li></ul><ul><li>No datatype required </li></ul><ul><li>Box Usage is the measure of machine resources consumed by each request. </li></ul><ul><li>$0.14 per Amazon SimpleDB Machine Box Usage hour </li></ul>
  10. 10. Google App Engine <ul><li>Leverage the power of Google infrastructure </li></ul><ul><li>Comes with </li></ul><ul><ul><li>BigTable </li></ul></ul><ul><ul><li>GFS </li></ul></ul>
  11. 11. Google App Engine <ul><li>Similar to Amazon Services but </li></ul><ul><ul><li>Start with free of charge </li></ul></ul><ul><ul><li>Python Only for now </li></ul></ul><ul><ul><li>No EC2 like </li></ul></ul><ul><ul><li>Not so flexible </li></ul></ul><ul><ul><li>Cannot be separated </li></ul></ul><ul><ul><li>Very BETA, very Google lock-in </li></ul></ul>
  12. 12. The Trend <ul><li>Moore’s Adoption </li></ul>
  13. 13. The Trend <ul><li>Geek </li></ul><ul><ul><li>Dude, That’s cool lets use it! </li></ul></ul><ul><li>Early Adopter </li></ul><ul><ul><li>Wow! I can gain competitive advantage from this. </li></ul></ul><ul><li>Late Adopter </li></ul><ul><ul><li>Hmm, Seems like everyone happy with it. Lets try it out. </li></ul></ul><ul><li>Loser </li></ul><ul><ul><li>I have to use it because everyone else are using it. </li></ul></ul>
  14. 14. Something New -> Something Common
  15. 15. When something is common it’s easier to create economies of scale
  16. 16. Economies of Scale?
  17. 17. There is no advantage in building infrastructure But Thai websites doesn’t have that much problems scaling. Should I care?
  18. 18. Why Care? <ul><li>The Web 2.0 is full of opportunities </li></ul><ul><ul><li>Mash-ups </li></ul></ul><ul><ul><li>Social Networks </li></ul></ul><ul><ul><li>User generated Contents </li></ul></ul><ul><ul><li>0 Entry Barrier </li></ul></ul><ul><ul><li>Fail? Try new ideas </li></ul></ul>
  19. 19. Historic Problems <ul><li>We are just startup. We are not that rich </li></ul><ul><li>We want to try some cool new ideas never happen elsewhere, but we are not sure they’re going to work or not. </li></ul><ul><li>We like to do and focus on what we are good at </li></ul>
  20. 20. Who knows, maybe we will be rich one day.
  21. 21. Think about it <ul><li>One day if you’ve been digged! Or TechCrunched or Slashdotted. </li></ul><ul><li>Can Your site scale? </li></ul><ul><ul><li>Multiple concurrent users </li></ul></ul><ul><ul><li>Bandwidth exceed </li></ul></ul><ul><ul><li>Fat Database </li></ul></ul>
  22. 22. Think about it <ul><li>Everyone has the same kind of infrastructure already. </li></ul><ul><ul><li>Same Hardware technologies </li></ul></ul><ul><ul><li>Open source/ Open standard </li></ul></ul><ul><li>Why we have to build and take care our own anyway? </li></ul>
  23. 23. <ul><li>Former Chief Architect Blaine Cook famously said </li></ul>Twitter case study “ Scaling Rails was easy” in April 2007
  24. 24. <ul><li>Latest Rumors. </li></ul>Twitter case study “ Twitter is planning to abandon Ruby on Rails ” in May 2008
  25. 25. Doing Infrastructure is not fun <ul><li>It’s not so cool. We careless about it from the start. </li></ul><ul><li>Few have experienced it. </li></ul><ul><li>We are not sys admin. Let the expert do their job. </li></ul>
  26. 26. More To Come SaaS PaaS HaaS Your Data, Applications, Frameworks My Machines
  27. 27. More To Come SaaS PaaS HaaS Your Data My Applications, Frameworks, Machines
  28. 28. More To Come SaaS PaaS HaaS Your Data, Your Applications My Frameworks, Machines
  29. 29. More To Come Platform + Services Your Data, Your Applications My Services, Frameworks, Machines
  30. 30. More To Come <ul><li>Eclipse AJAX IDE </li></ul><ul><li>Virtualization/RIA will play important role in this competition </li></ul>
  31. 31. Let the Platform handles the Cross cutting Concerns
  32. 32. The future will be about programming language
  33. 33. Historically <ul><li>The academics and the business don’t get along each other well </li></ul><ul><li>The academic guys focus on how get thing done efficiently, faster, less LOC. </li></ul><ul><li>But it’s hard for practitioners to make use of new language concepts in real-world </li></ul><ul><li>building new language takes time & effort </li></ul>
  34. 34. The Time has come <ul><li>The academic & business guys are starting to kissing one another </li></ul><ul><li>Come from 3 Forces </li></ul><ul><ul><li>The Platform </li></ul></ul><ul><ul><li>Tools </li></ul></ul><ul><ul><li>Linguistics </li></ul></ul>
  35. 35. Platforms <ul><li>They are rock solid and they handle the cross-cutting concerns for you. You get these things for free </li></ul><ul><ul><li>Garbage Collections </li></ul></ul><ul><ul><li>Cross Platform </li></ul></ul><ul><ul><li>Serialization </li></ul></ul><ul><ul><li>Distributed System </li></ul></ul><ul><ul><li>Internationalization </li></ul></ul>
  36. 36. Examples <ul><li>Java was embraced just because the garbage collection concept </li></ul><ul><ul><li>50+% of C++ efforts were focusing on how to manage memory usage </li></ul></ul><ul><li>Ruby is big hype 3 years ago. People were jumping into it and they just realize Ruby still have along way to go. </li></ul><ul><ul><li>Green Thread, I18n Support </li></ul></ul>
  37. 37. <ul><li>Practitioners </li></ul><ul><ul><li>IDEs </li></ul></ul><ul><ul><li>Debuggers </li></ul></ul><ul><ul><li>Profilers </li></ul></ul><ul><ul><li>… </li></ul></ul><ul><li>Academics, Language Designers </li></ul><ul><ul><li>Parsers </li></ul></ul><ul><ul><li>AST generators </li></ul></ul><ul><ul><li>Grammar debuggers </li></ul></ul><ul><ul><li>Code optimizers </li></ul></ul><ul><ul><li>… </li></ul></ul>Tools
  38. 38. Linguistics <ul><li>Long time people think OOP is end all of the top mountain, There is no more to climb. </li></ul><ul><li>But when AOP & Ruby come, they wake us up! </li></ul>
  39. 39. Challenges <ul><li>Concurrency </li></ul><ul><ul><li>multi core CPU </li></ul></ul><ul><ul><li>Thread safe? </li></ul></ul><ul><li>User Interface </li></ul><ul><ul><li>Flex/Silverlight/JavaFX </li></ul></ul>
  40. 40. What you should do from now on <ul><li>Start learning new Programming Languages </li></ul><ul><ul><li>Groovy for testing, xml, regex, scripting … </li></ul></ul><ul><li>When you learn another language you’ll get lots of benefits </li></ul><ul><ul><li>You learn the history/culture of the origin people using it </li></ul></ul><ul><ul><li>You can apply the new paradigms you learned to your main language </li></ul></ul><ul><li>Some notions show Scala is coming to be the replacement </li></ul>
  41. 41. JavaFX Family <ul><li>Java 6 update 10 </li></ul><ul><li>JavaFX Runtime </li></ul><ul><li>JavaFX Mobile, TV, Blu-ray </li></ul>
  42. 42. JavaFX Family <ul><li>Focus of Java were on the server-side for long time </li></ul><ul><li>The shift that focus now </li></ul><ul><li>JavaFX is to Enable User Experience in everyway </li></ul>
  43. 43. Java 6 update 10 <ul><li>Enhanced Java deployment </li></ul><ul><ul><li>Java Kernel </li></ul></ul><ul><ul><li>Pack200 Support </li></ul></ul>
  44. 44. Java 6 update 10 <ul><li>Improved performance and look & feel </li></ul><ul><ul><li>Java Quick Starter </li></ul></ul><ul><ul><li>Nimbus Look & Feel </li></ul></ul><ul><ul><li>Hardware acceleration support </li></ul></ul><ul><ul><li>Native Font Rendering on Windows </li></ul></ul>
  45. 45. Nimbus L&F
  46. 46. Java 6 update 10 <ul><li>Next-Generation Java Plug-In </li></ul><ul><ul><li>Rewrite plug-in from scratch </li></ul></ul><ul><ul><li>Cold start improvement </li></ul></ul><ul><ul><li>Get the right Java version </li></ul></ul><ul><ul><li>Improved Java/JavaScript communications </li></ul></ul><ul><ul><li>Java Applet to Web Start Support from JavaOne 2008 </li></ul></ul>
  47. 47. JavaFX Player <ul><li>JavaFX Script </li></ul><ul><ul><li>DSL for designers </li></ul></ul><ul><ul><li>Trigger, binding, twean </li></ul></ul><ul><li>Video/Audio codec support from On2 </li></ul><ul><ul><ul><li>HD Video </li></ul></ul></ul><ul><ul><ul><li>Same as Flash </li></ul></ul></ul><ul><li>skinnable </li></ul><ul><li>SceneGraph 2D/3D Support </li></ul><ul><li>WebKit engine/ HTML Component </li></ul>
  48. 48. JavaFX Tools <ul><li>Adobe Photoshop/Illustrator export for Designer </li></ul><ul><li>NetBeans plug-in for developer </li></ul><ul><li>Something like FlexBuilder/ Blend tools is coming too. </li></ul>
  49. 49. JavaFX and Java <ul><li>JavaFX Script can use existing Java libraries </li></ul><ul><li>You get everything that Java enables </li></ul><ul><ul><li>Network </li></ul></ul><ul><ul><li>Web Services/ RMI/ Socket </li></ul></ul><ul><ul><li>Cross Platform </li></ul></ul><ul><ul><ul><li>Existing mobile, Android, iPhone? </li></ul></ul></ul><ul><ul><ul><li>Set-top Box, TV </li></ul></ul></ul><ul><ul><ul><li>Blu-ray </li></ul></ul></ul>
  50. 50. Demo
  51. 51. Applet is coming Back with full Steam!
  52. 52. JavaFX Schedule <ul><li>Early Access Program in July </li></ul><ul><li>JavaFX Desktop 1.0 SDK in September </li></ul><ul><li>JavaFX Mobile, TV SDK in March 2009 </li></ul><ul><li>Open source? </li></ul>
  53. 53. Next Big Thing <ul><li>Project Hydrazine </li></ul><ul><li>Project Insight </li></ul>

×