3. • Teaches how to drive a startup or product
o how to steer
o when to turn
o when to persevere
o grow a business with
maximum acceleration
• A principled approach to
new product development
• The New Corporate Innovation Trend
Lean startup
10. • Scrum
• Kanban
• Extreme
Programming (XP)
• Feature-Driven
Development (FDD)
etc
Agile Development
11. Hackathon
• A periodic event where programmers and others get
together at some venue to collaboratively create a new
application or software system within a few hours or a
few days.
14. Microservices
• Composed of small, independent processes
communicating with each other, often using HTTP APIs.
• These services are small, highly decoupled and focus on
doing a small task.
16. • LAMP (WAMP, MAMP)
o Linux (or Nginx)
o Apache
o MySQL (or Oracle)
o PHP, Perl Python (or Ruby)
• MEAN
o MongoDB
o Express.js – a Node.js web
app framework
o Angular.js – frontend
o Node.js – event-driven
server
Technology Stack
17. • Open Source
• Versioning
o Git, Subversion (SVN)
• Issue/Project Tracker or Ticketing
o JIRA, Redmine, Mantis Bug Tracker
• DevOps / Continuous Integration
o Puppet, Chef, SaltStack, Ansible
o Jenkins CI, CruiseControl, Go, Team City
• Server-side Scripting
Web Development Tools
18. Web Development
• PHP
• Ruby (on Rails)
• Python (Django)
• ASP.NET
• JavaScript (Ajax, Node.js, AngularJS, Backbone.js, Ember.js etc)
• Java
• Perl
• Scala (Play Framework)
• Erlang
• Clojure
• Groovy/Grails etc
20. What is PHP?
• PHP is mainly focused on server-side scripting, so
you can do anything any other CGI program can do,
such as collect form data, generate dynamic page
content, or send and receive cookies.
• The best things in using PHP are that it is extremely
simple for a newcomer, but offers many advanced
features for a professional programmer.
22. PHP: Hypertext Preprocessor
• Development started in 1994, by Rasmus Lerdorf.
• Server-side scripting language
• Interpreted language
• Multi-platform (Linux, *nix, Windows)
• Syntax resembles C and Perl
• Simpler and faster to develop in (than C and Perl
or Java)
• Fast, flexible and pragmatic
23. PHP: Where does it fit?
Web Browser
Internet or
Intranet
page
Web
HTTP
Request
Page
Web
page
Web
Server
server
Added
function
ality
Client-side
“Active pages”
JavaScript, VBScript,
Applet, ActiveX
Server-side
“Dynamic pages”
CGI, SSI, Server
API, ASP, JSP, PHP,
COM/DCOM,
CORBAActive and dynamic page technology can
be used together – server-side program
generates customized active pages.
24. PHP: Putting it together
Web-Client
Web-Server
DBMS
Database
Output
SQL
commands
PHP
HTML-Form
(+JavaScript)
Reply
WWW
Submit
Data
Call PHP
interpreter
Response Response
LAN
Web-Browser
Database
Server
26. PHP: Mobile Web Apps
• Common to use server-side PHP to develop Mobile
Web Apps or Hybrid Apps
– Reuse php web site backend components and
logic
– Enjoy the advantages of PHP
Eg.
PHP Yii Framework
+
jQuery Mobile
(or any mobile web app framework)
27. PHP: Command line CLI
• What is this good for:
– Parsing files to put into a database
– Ideal for scripts regularly executed using cron (on
*nix or Linux) or Task Scheduler (on Windows).
– Anything you use a shell script or perl script to do
• Variables of use:
– $argc, $argv[]
– $stdin, $stdout, $stderr
29. PHP: Pros
• Open source, completely free
• Specifically designed for Web Development /
Developers
• Excellent documentation
• Simplicity, easy to learn, including frameworks
• Largest community support
• Multi-platforms
• Easy deployment (just copy the files)
• Easy to scale up and out
• Readily available pool of talents/coders
30. PHP: Pros
• Rapid prototyping, fast development time
• Lightweight, low overheads
• Fast execution time
• Silo process, loosely coupled
• Highly configurable
• Procedural / Object Oriented programming
• Extensive libraries / modules
• Support wide range of interfaces (DB, Outputs,
Protocols, Caching etc)
31. PHP: Cons
• Best used with caching stack
• Not thread-safe
• No strong standards of coding style
• Flexible, many ways to accomplished same task
• Not strongly typed, implicit conversion
• Not particularly sexy
• No built-in scheduler
• Not really for GUI or desktop apps