Dean4j@Njug5

Post on 17-May-2015

743 views 0 download

Tags:

Transcript of Dean4j@Njug5

NJUG 5

Overview

• Platform as a Service

• The future will be about programming language

• JavaFX Family

Platform as a Service?

Examples

• Amazon Services

• Google App Engine

• Microsoft Live Mesh

• Sun Hydrazine

Amazon Services

• Amazon Elastic Compute Cloud (EC2)

• Amazon Simple Storage Service (S3)

• Amazon SimpleDB

• SQS, DevPay, FWS

Amazon S3

• Most popular• Secure online storage space for any

kind of data• Use web service to retrieve/store data

by unique developer-assigned key• Use many in file/image sharing web

sites.

• 15 cents (~5 baht) a month/ 1 G

Amazon EC2

• web service that provides resizable compute capacity in the cloud

• Configurable from OS -> Software, Hardware, Zone

• Increase/decrease instances by its own

• $0.10 per instance hour

Amazon SimpleDB

• Not RDBMS, Think Spreadsheet

• Has a similar query language

• Very Flexible.

• Hurray! No need to maintain schema!, no need another DBA

Amazon SimpleDB

- Add New attributes on the fly-No datatype required

Box Usage is the measure of machine resources consumed by each request.$0.14 per Amazon SimpleDB Machine Box Usage hour

Google App Engine

• Leverage the power of Google infrastructure

• Comes with–BigTable–GFS

Google App Engine

• Similar to Amazon Services but–Start with free of charge–Python Only for now–No EC2 like–Not so flexible–Cannot be separated–Very BETA, very Google lock-in

The Trend

• Moore’s Adoption

The Trend

• Geek– Dude, That’s cool lets use it!

• Early Adopter–Wow! I can gain competitive advantage from this.

• Late Adopter– Hmm, Seems like everyone happy with it. Lets try

it out.

• Loser– I have to use it because everyone else are using it.

Something New -> Something Common

When something is common it’s easier to create economies of

scale

Economies of Scale?

There is no advantage in building

infrastructure

But Thai websites doesn’t have that much problems scaling.

Should I care?

Why Care?

• The Web 2.0 is full of opportunities–Mash-ups– Social Networks–User generated Contents– 0 Entry Barrier– Fail? Try new ideas

Historic Problems

• We are just startup. We are not that rich

• We want to try some cool new ideas never happen elsewhere, but we are not sure they’re going to work or not.

• We like to do and focus on what we are good at

Who knows, maybe we will be rich one day.

Think about it

• One day if you’ve been digged! Or TechCrunched or Slashdotted.

• Can Your site scale?–Multiple concurrent users– Bandwidth exceed– Fat Database

Think about it

• Everyone has the same kind of infrastructure already.• Same Hardware technologies• Open source/ Open standard

• Why we have to build and take care our own anyway?

• Former Chief Architect Blaine Cook famously said

Twitter case study

“Scaling Rails was easy”

in April 2007

• Latest Rumors.

Twitter case study

“Twitter is planning to abandon Ruby on Rails”

in May 2008

Doing Infrastructure is not fun

• It’s not so cool. We careless about it from the start.

• Few have experienced it.

• We are not sys admin. Let the expert do their job.

More To Come

SaaS

PaaS

HaaSYour Data, Applications, Frameworks

My Machines

More To Come

SaaS

PaaS

HaaS

Your Data

My Applications, Frameworks,

Machines

More To Come

SaaS

PaaS

HaaS

Your Data, Your Applications My

Frameworks, Machines

More To Come

Platform + Services

Your Data, Your Applications My Services,

Frameworks, Machines

More To Come

• Eclipse AJAX IDE

• Virtualization/RIA will play important role in this competition

Let the Platform handles the Cross cutting Concerns

The future will be about programming language

Historically• The academics and the business don’t get along

each other well

• The academic guys focus on how get thing done efficiently, faster, less LOC.

• But it’s hard for practitioners to make use of new language concepts in real-world

• building new language takes time & effort

The Time has come

• The academic & business guys are starting to kissing one another

• Come from 3 Forces – The Platform – Tools– Linguistics

Platforms

• They are rock solid and they handle the cross-cutting concerns for you. You get these things for free– Garbage Collections– Cross Platform– Serialization– Distributed System– Internationalization

Examples

• Java was embraced just because the garbage collection concept– 50+% of C++ efforts were focusing on how to

manage memory usage

• Ruby is big hype 3 years ago. People were jumping into it and they just realize Ruby still have along way to go.– Green Thread, I18n Support

Tools• Practitioners

– IDEs– Debuggers– Profilers– …

• Academics, Language Designers– Parsers– AST generators– Grammar debuggers– Code optimizers– …

Linguistics• Long time people think OOP is

end all of the top mountain, There is no more to climb.

• But when AOP & Ruby come, they wake us up!

Challenges

• Concurrency– multi core CPU– Thread safe?

• User Interface– Flex/Silverlight/JavaFX

What you should do from now on

• Start learning new Programming Languages– Groovy for testing, xml, regex, scripting …

• When you learn another language you’ll get lots of benefits– You learn the history/culture of the origin people using it– You can apply the new paradigms you learned to your

main language

• Some notions show Scala is coming to be the replacement

JavaFX Family

• Java 6 update 10• JavaFX Runtime• JavaFX Mobile, TV, Blu-ray

JavaFX Family

• Focus of Java were on the server-side for long time

• The shift that focus now• JavaFX is to Enable User Experience in

everyway

Java 6 update 10

• Enhanced Java deployment– Java Kernel– Pack200 Support

Java 6 update 10

• Improved performance and look & feel– Java Quick Starter –Nimbus Look & Feel–Hardware acceleration support–Native Font Rendering on Windows

Nimbus L&F

Java 6 update 10

• Next-Generation Java Plug-In– Rewrite plug-in from scratch– Cold start improvement– Get the right Java version– Improved Java/JavaScript communications

– Java Applet to Web Start Support from JavaOne 2008

JavaFX Player

• JavaFX Script–DSL for designers– Trigger, binding, twean

• Video/Audio codec support from On2

• HD Video• Same as Flash

• skinnable• SceneGraph 2D/3D Support• WebKit engine/ HTML Component

JavaFX Tools

• Adobe Photoshop/Illustrator export for Designer

• NetBeans plug-in for developer

• Something like FlexBuilder/ Blend tools is coming too.

JavaFX and Java

• JavaFX Script can use existing Java libraries• You get everything that Java enables– Network–Web Services/ RMI/ Socket– Cross Platform• Existing mobile, Android, iPhone?• Set-top Box, TV• Blu-ray

Demo

Applet is coming Back with full Steam!

JavaFX Schedule

• Early Access Program in July• JavaFX Desktop 1.0 SDK in

September• JavaFX Mobile, TV SDK in March

2009

• Open source?

Next Big Thing

• Project Hydrazine• Project Insight