Accelerate the ROI of PHP in your Enterprise

Preview:

DESCRIPTION

Michael Cheng, Ph.P Society - Founders of the Singapore PHP User Group

Citation preview

Ph.PSOCIETY

Philosophy in Programming Society

Ph.PSOCIETY

Philosophy in Programming Society

Michael ChengPresident / Founder,

Philosophy in Programming Societymichael.cheng@php.org.sg

(Zend Certified Engineer)

Ph.PSOCIETY

Philosophy in Programming Society

About Us• Started Singapore PHP User Group in 2006

• Regular monthly meetups since November 2007 (average turn out of 50 members); 700+ members to date.

Ph.PSOCIETY

Philosophy in Programming Society

PHP Meetup Microsoft Singapore

Ph.PSOCIETY

Philosophy in Programming Society

PHP Meetup Oracle Singapore

Ph.PSOCIETY

Philosophy in Programming Society

PHP Meetup Yahoo! Singapore

Ph.PSOCIETY

Philosophy in Programming Society

Events• 2nd Facebook Developer Garage at

Microsoft Singapore Auditorium (5 March 2008).

Ph.PSOCIETY

Philosophy in Programming Society

PHP-IBM developerWorks Series

Date: 25 June 2009 / 3 Sept 2009

Ph.PSOCIETY

Philosophy in Programming Society

Ph.PSOCIETY

Philosophy in Programming Society

The Philosophy in Programming Society

• Registered as Ph.P Society in July 2008.

• Endorsed By:

Ph.PSOCIETY

Philosophy in Programming Society

• Navigation device

• Points the way / charts the path

• Mission

Ph.PSOCIETY

Philosophy in Programming Society

Ph.PSOCIETY

Philosophy in Programming Society

Technology Partner

Ph.PSOCIETY

Philosophy in Programming Society

PHP Programming Course

Ph.PSOCIETY

Philosophy in Programming Society

Schools Support

SMU, NTU, NUS, NYP, SP,

NP, RP

Ph.PSOCIETY

Philosophy in Programming Society

Is PHP for YOU?

Ph.PSOCIETY

Philosophy in Programming Society

YES!

Ph.PSOCIETY

Philosophy in Programming Society

Benefits• Easy to pick-up. Syntax close to C.

• Motto: “Get Stuff Done Now”.

• Simplicity & Versatility.

• Interpreted not compiled.

• Just upload and its done!

• Support rapid & agile development.

• Ubiquity of web servers that supports PHP.

• Lower TCO.

Ph.PSOCIETY

Philosophy in Programming Society

=

Building Blocks of WWW

Ph.PSOCIETY

Philosophy in Programming Society

Time To Move Up...

Ph.PSOCIETY

Philosophy in Programming Society

Let’s Build Skyscrapers

Ph.PSOCIETY

Philosophy in Programming Society

Ph.PSOCIETY

Philosophy in Programming Society

3 Steps to ROI Fast!

1

2

3

Build The Team

Get The Right Tools

Processes & Frameworks

Ph.PSOCIETY

Philosophy in Programming Society

1. The Team• Who’s on your team now? Who do you need to

hire? Outsource? Training internally?

• Bulk up on PHP knowledge.

• Trial and error? Can you afford the time?

• Recommendation: PHP Certification to fast-track your learning process.

Ph.PSOCIETY

Philosophy in Programming Society

Testimonial

Leong Hean HongCBS Interactive (CNET Asia)

NTU GraduateZend Certified Engineer

“The training program has given me much more

confidence in PHP and added capabilities”

Ph.PSOCIETY

Philosophy in Programming Society

Testimonial

Tham Kong WaiSoftware Engineer (Java, VB & ASP)

Company specializes in embedded systems

“This course has provided me with the technical and real-world knowledge in the relevant areas I need for my job,

especially in areas where I foresee that I would face difficulties with.

The training program is very good and I highly recommend it.”

Ph.PSOCIETY

Philosophy in Programming Society

Testimonial

Lawrence ChongProject Manager, InfoValues Pte Ltd

Company specializes in customizedopen source KM & CRM solutions

“Understanding the PHP codes has empowered me to make informed

decisions about timeline and deliverables management.

I have a better understanding of how realistic customer requirements are... you

have given me an invaluable tool.”

Ph.PSOCIETY

Philosophy in Programming Society

PHP Programming(March 2010 Intake Open)

Sat, March 27, 2010

Ph.PSOCIETY

Philosophy in Programming Society

2. Tools• The right tools help you get productive fast.

• Development Platform:

• Zend Studio

• Eclipse PDT / PHPClipse

• Komodo

• Version Control

• Subversion / GIT

• Unit Testing / Debugging

• PHP Unit, XDebug, Zend Debugger

Step 4 - Tools

Development:

• Eclipse PDT

• Zend Studio

• PhpEd

• Vim

• Komodo

IDE’s versus Editors

• Debugging & Profiling

• Syntax Check

• Cross-Referencing / Navigation

Ph.PSOCIETY

Philosophy in Programming Society

2. Tools• Recommendations:

• Leverage on current development environment.

• Version control *very* important for teams.

• Debug and test early to avoid problems later in deployment / production environment.

• Automate the testing process as much as possible using unit testing (they call it “sanity check” for a reason).

Ph.PSOCIETY

Philosophy in Programming Society

2. Tools for Testing• Testing for PHP applications:

• PHPUnit http://www.phpunit.de/

• SimpleTest http://www.lastcraft.com/simple_test.php

• Continuous Integration:

• CruiseControl http://cruisecontrol.sourceforge.net/

• phpUnderControl http://www.phpundercontrol.org/

Ph.PSOCIETY

Philosophy in Programming Society

2. Tools

Linux

Apache

PHP

Database

• Basic server installation.

Windows

IIS

Ph.PSOCIETY

Philosophy in Programming Society

Ph.PSOCIETY

Philosophy in Programming Society

3. Processes & Frameworks• Don’t be so eager to jump into coding.

• Data modeling.

• Class diagrams.

• Collaboration diagram.

• Use cases.

• High Level Architectures

• Design Patterns

• SOA

Technical Design

• Modeling

• Class Diagrams

• ER Diagrams (data model)

• Collaboration Diagrams

• Use Cases etc.

• Tools:

• UML

• Whiteboards

Step 3 - Architecture

Ph.PSOCIETY

Philosophy in Programming Society

3. Processes & Frameworks• Good foundation will help in making your code

more maintainable and scalable.

• SOP & Best Practices

• Use a framework

• Zend Framework (http://framework.zend.com)

• CakePHP (http://cakephp.org)

• Symfony (http://www.symfony-project.org)

• Code Ignitor (http://codeigniter.com/)

Ph.PSOCIETY

Philosophy in Programming Society

3. Processes & Frameworks• Extendable & Customisable Open Source Software

• WordPress, Drupal, Joomla

• Alfresco, SugarCRM, VTiger

• Megento, OSCommerce, ZenCart

• Forces developers to adhere to certain way of doing things. Convention over complex configs.

• Best practices and knowledge easily transferrable when working with frameworks / patterns.

Ph.PSOCIETY

Philosophy in Programming Society

3. Processes & Frameworks• Recommendations:

• Use a methodology that suits your corporate culture. Agile Methodology isn’t for everyone.

• Rule of Thumb: General PHP knowledge over product knowledge - but deep product knowledge can help you to specialize & value-add.

• Ultimately, go where the demand is. Evaluate carefully, don’t rush into it. Weight the pros and cons and stick to a framework when you have made the decision.

Ph.PSOCIETY

Philosophy in Programming Society

PHP Programming(March 2010 Intake Open)

Sat, March 27, 2010

Ph.PSOCIETY

Philosophy in Programming Society

Michael ChengPresident / Founder,

Philosophy in Programming Societymichael.cheng@php.org.sg

(Zend Certified Engineer)

Recommended