Introduction To Web Development & The New Digital Workplace
-
Upload
jen-wei-lee -
Category
Technology
-
view
77 -
download
1
Transcript of Introduction To Web Development & The New Digital Workplace
1
An Introduction to
Web Development&
The New Digital Workplace
Lee Jen WeiJuly 2015
TechTalk:
Agenda
•Culture & Trends•Technical Tools
• Teaches how to drive a startup or producto how to steero when to turno when to persevereo grow a business with
maximum acceleration
• A principled approach to new product development
• The New Corporate Innovation Trend
Lean startup
Lean startup
Lean startup
Web Development on Cloud
Web Development on Cloud
Agile Development
Agile Development
• Scrum• Kanban• Extreme
Programming (XP)• Feature-Driven
Development (FDD) etc
Agile Development
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.
DevOps
• Infrastructure as Code
• Continuous Integration
+
DevOps Practices
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.Unix Philosophy"Do one thing and do it well"
Microservices
• LAMP (WAMP, MAMP)o Linux (or Nginx)o Apacheo MySQL (or Oracle)o PHP, Perl Python (or Ruby)
• MEANo MongoDB o Express.js – a Node.js web
app frameworko Angular.js – frontendo Node.js – event-driven
server
Technology Stack
• Open Source• Versioningo Git, Subversion (SVN)
• Issue/Project Tracker or Ticketing o JIRA, Redmine, Mantis Bug Tracker
• DevOps / Continuous Integrationo Puppet, Chef, SaltStack, Ansibleo Jenkins CI, CruiseControl, Go, Team City
• Server-side Scripting
Web Development Tools
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
Web Development
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.
Sites Using PHP
• Yahoo, Facebook, Google, YouTube, eBay, Flickr, Zynga, Wikipedia, Craiglist, Digg, etc
• Cisco, Oracle, Intel, Nokia, China Mobile,• Wordpress sites (CMS), Drupal sites (CMS)
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
PHP: Where does it fit?
Web Browser
Internet orIntranet
page
Web
HTTPRequest
Page
Webpage
Web
Server
server
Addedfunction
ality
Addedfunction
ality
Client-side“Active pages”
JavaScript, VBScript,
Applet, ActiveX
Server-side“Dynamic
pages”
CGI, SSI, Server API,
ASP, JSP, PHP, COM/DCOM,
CORBA
Active and dynamic page technology can be used together – server-side program generates customized active pages.
PHP: Putting it together
Web-ClientWeb-Server
DBMS
DatabaseOutput
SQL commands
PHP
HTML-Form (+JavaScript)
Reply
WWW
SubmitData
Call PHPinterpreter
Response Response
LAN
Web-Browser
DatabaseServer
PHP: MVC FrameworksModel-View-Controller (MVC)• Yii• CakePHP• CodeIgniter• Symfony• Zend Framework• Kohana• many others
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)
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
PHP: Examples
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
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)
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
Thank You