Java, PHP, Flash or Rails? Choose the right technology for your Web 2.0 job! Masoud Kamali,...

Post on 26-Mar-2015

215 views 0 download

Tags:

Transcript of Java, PHP, Flash or Rails? Choose the right technology for your Web 2.0 job! Masoud Kamali,...

Java, PHP, Flash or Rails? Choose the right technology for your Web 2.0 job!Masoud Kamali, Sebastian Meyen

MasoudKamali

CEO, S&S Media

Sebastian Meyen

CCO, S&S Media

S&S Media: Brands

S&S Media: Offices

• Germany– Frankfurt/Main

(Headquarter)– Potsdam–Munich

• India– Bangalore

• Singapore• Indonesia– Jakarta

• USA– San Francisco

Who are you?

Who are you?

• Techie?• Company?–Startup–SMB–Enterprise

Technology

DesignBusiness

Tech Requirements

•Business Agility•Scalability•Connectivity

User 99

User 03

User 08

Technology Stacks

• Java• Microsoft .NET• PHP• Perl• Python • Ruby / Rails

Java

• Java = Programming Language• Java = Programming Platform• Languages: Java, Groovy, JRuby,

Scala, Rhino, Fan, …• Compatibility Mantra – Big

Emphasis on Standards

Java

• „Strategic“ Open Source• Sun plays a central role (but the

community could also work without them)

• Java Friends: Oracle, SAP, IBM, HP, Red Hat, …

• More Java Systems: Eclipse, Netbeans, Android

Java

• References: All Fortune 1000 Companies worldwide

Requirement Check

•Business Agility: •Scalability: •Connectivity:

Microsoft .NET

• „Internal“ Compatibility is excellent

• „External“? Microsofts Commitment to standards (but always loves its own products more than others)

• Multiple Language Platform: VB, C#, ASP.NET, C++, …

Microsoft .NET

• Always creating its own flavors–SaaS => S+S–Flash/RIA & Co. => Silverlight–Google, Salesforce, & Co.

=> Windows Live

Requirement Check

•Business Agility •Scalability •Connectivity

PHP

• „Grassroot“ Open Source• Community driven• Zend plays a central role (but the

community could also work without them)

• Dynamic Language

PHP

• High number of Frameworks, Tools, Components–Content Management–Blogs, Wikis–Architecture Frameworks

• References: Facebook, Yahoo!, Wikipedia, Sixt Car Rental, …

Requirement Check

•Business Agility •Scalability •Connectivity

Perl, Python

• Perl is Old School – but still providing Web 2.0 virtues

• Python – capable to adopt new technology paradigms

• Dynamic Languages

Requirement Check

•Business Agility •Scalability •Connectivity

Ruby/Rails

• Newcomer• Dynamic Language• Ingenious concept (adopted by

many others) –Convention over Configuration–DRY (Don‘t repeat yourself)

• Community driven

Requirement Check

•Business Agility •Scalability •Connectivity

Job statistics

Job statistics

User Interfaces / RIA

• Ajax, JavaScript• Flash, Flex• Silverlight• JavaFX

Ajax & JavaScript

• Runs (almost) everywhere• JavaScript is maturing these days• Frameworks, Libraries still not

mature• The „real“ big Internet players

love JavaScript

Flash, Flex

• Flash Runtime almost on every machine

• Mature technology• Designers love flash;

programmers hate it• Flash combined with Flex is a

real programming platform

Silverlight

• Microsofts new baby• Mature technology? (Silverlight 2.0)• Targets both: – designers („Expression“) – programmers („Visual Studio“)

• (Almost) platform independant (Firefox, Mac OS X)

• Impressive references: NBA, Olympics

JavaFX

• Sun Microsystems new baby• „Next Gen Java Applets“• Not mature yet (Previews these

days)• Targeting both: Designers and

Programmers

More technology stuff• Mashups– Ad hoc integration

• Web Services– Using the network– Amazon Web Services

• SOA – The heawy weight approach

• SaaS– Single Services or even application

platforms

Everything in the Web is based on

XML

Architecture

• Every technology needs to be architected

• Ad hoc applications:–No Flexibility–No Extensibility–No Scalability

Agility

• Communication between business people, designers, technologists is sometimes not easy

• Agile Processes–Extreme Programming–Scrum–Crystal–Feature Driven Development

Open Source

• Strategic vs. Grassroot• Freedom (Free beer vs. Freedom

of speech)• Intellectual Property• Wikinomics

Resources

• Open Source Software: http://ohloh.com

• Job Trends: http:// indeed.com• Tech Trends: http:// tiobe.com• Agility:

http://en.wikipedia.org/wiki/Agile_software_development

• Wikinomics: http://www.wikinomics.com/book/

Questions?