Java, PHP, Flash or Rails? Choose the right technology for your Web 2.0 job! Masoud Kamali, Sebastian Meyen
Masoud Kamali 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 Design Business
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?
 

W2e Praesi

  • 1.
    Java, PHP, Flashor Rails? Choose the right technology for your Web 2.0 job! Masoud Kamali, Sebastian Meyen
  • 2.
  • 3.
  • 4.
  • 5.
    S&S Media: OfficesGermany Frankfurt/Main (Headquarter) Potsdam Munich India Bangalore Singapore Indonesia Jakarta USA San Francisco
  • 6.
  • 7.
    Who are you?Techie? Company? Startup SMB Enterprise
  • 8.
  • 9.
    Tech Requirements BusinessAgility Scalability Connectivity
  • 10.
  • 11.
  • 12.
  • 13.
    Technology Stacks JavaMicrosoft .NET PHP Perl Python Ruby / Rails
  • 14.
    Java Java =Programming Language Java = Programming Platform Languages: Java, Groovy, JRuby, Scala, Rhino, Fan, … Compatibility Mantra – Big Emphasis on Standards
  • 15.
    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
  • 16.
    Java References: AllFortune 1000 Companies worldwide
  • 17.
    Requirement Check BusinessAgility:  Scalability:    Connectivity:   
  • 18.
  • 19.
    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++, …
  • 20.
    Microsoft .NET Alwayscreating its own flavors SaaS => S+S Flash/RIA & Co. => Silverlight Google, Salesforce, & Co. => Windows Live
  • 21.
    Requirement Check BusinessAgility  Scalability    Connectivity  
  • 22.
  • 23.
    PHP „ Grassroot“Open Source Community driven Zend plays a central role (but the community could also work without them) Dynamic Language
  • 24.
    PHP High numberof Frameworks, Tools, Components Content Management Blogs, Wikis Architecture Frameworks References: Facebook, Yahoo!, Wikipedia, Sixt Car Rental, …
  • 25.
    Requirement Check BusinessAgility   Scalability   Connectivity  
  • 26.
  • 27.
    Perl, Python Perlis Old School – but still providing Web 2.0 virtues Python – capable to adopt new technology paradigms Dynamic Languages
  • 28.
    Requirement Check BusinessAgility    Scalability  Connectivity 
  • 29.
  • 30.
    Ruby/Rails Newcomer DynamicLanguage Ingenious concept (adopted by many others) Convention over Configuration DRY (Don‘t repeat yourself) Community driven
  • 31.
    Requirement Check BusinessAgility    Scalability  Connectivity  
  • 32.
  • 33.
  • 34.
  • 35.
    User Interfaces /RIA Ajax, JavaScript Flash, Flex Silverlight JavaFX
  • 36.
    Ajax & JavaScriptRuns (almost) everywhere JavaScript is maturing these days Frameworks, Libraries still not mature The „real“ big Internet players love JavaScript
  • 37.
    Flash, Flex FlashRuntime almost on every machine Mature technology Designers love flash; programmers hate it Flash combined with Flex is a real programming platform
  • 38.
    Silverlight Microsofts newbaby Mature technology? (Silverlight 2.0) Targets both: designers („Expression“) programmers („Visual Studio“) (Almost) platform independant (Firefox, Mac OS X) Impressive references: NBA, Olympics
  • 39.
    JavaFX Sun Microsystemsnew baby „ Next Gen Java Applets“ Not mature yet (Previews these days) Targeting both: Designers and Programmers
  • 40.
    More technology stuffMashups Ad hoc integration Web Services Using the network Amazon Web Services SOA The heawy weight approach SaaS Single Services or even application platforms
  • 41.
    Everything in theWeb is based on XML
  • 42.
    Architecture Every technologyneeds to be architected Ad hoc applications: No Flexibility No Extensibility No Scalability
  • 43.
    Agility Communication betweenbusiness people, designers, technologists is sometimes not easy Agile Processes Extreme Programming Scrum Crystal Feature Driven Development
  • 44.
    Open Source Strategicvs. Grassroot Freedom (Free beer vs. Freedom of speech) Intellectual Property Wikinomics
  • 45.
    Resources Open SourceSoftware: 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/
  • 46.
  • 47.