SlideShare une entreprise Scribd logo
1  sur  46
Télécharger pour lire hors ligne
Allan Chao
Startup Consultant
Startup V8
allan@startupv8.com

UC Berkeley Extension, Summer 2012
Question of the day:
How many people are involved
in building a web application?
The Agenda
 Quiz
 Quick review of last session


 Servers, Hosting
 Deployment
 Release Cycles, Project Management
 Engineering management
Quiz Time

  Good luck!

10 minutes max
Quick review of prior material
                                               Databases
 IDE Comparison
                                                  Database model
     Notepad++
                                                  Entity relationship model
     NetBeans
                                                  SQL
     Visual Studio
                                               Database Engines
 Backend Programming
                                                  RDBMS
     Truly requires clarification of ideas
                                                  MYSQL
     Complexity
                                                  SQL Server
     Programming Languages
                                               APIs
 Programming example (calculator)
                                                  Application Programing Interface
     Backend integration with frontend
                                                  Precautions
     ASP.NET
                                                  SDK = Software Development Kit
     Error validation
                                               Technology Stacks
 Principles of Programming
                                                  Many different options in different layers
     Some code is better than others
                                                  LAMP = Linux Apache Mysql PHP
     Mistakes have a high cost
                                                  WINS = Windows IIS .NET SQL Server
What is Hosting?
 Where you store the code
 Makes the website publicly-accessible
 What you’re paying for:
   Physical components
       Disk space (space in GB)
       Memory (RAM)
       Processing power (CPU)
   Datacenter costs
     Electricity
     Cooling
     Network Bandwidth

   Administration (technical skill)
What is a server?
 Physical machine
 Usually horizontal, 1-2 inches tall
 Designed and built for reliability, not features
 Lots of redundant components
What is a data center?
 A.k.a. Server farm
 Lots of computers
 Room gets hot…
 Lots of fans, very
  loud
 High security
3 most common hosting options
 3 most common hosting options
    Dedicated Hosting
    Shared Hosting
    Virtual Private Server (VPS)


 Other hosting options
   Colocation
   Cloud hosting
Dedicated Hosting
 Means you rent a physical machine provided by the
  host
   Hardware options provided by the host, you pick one
   Tends to be around $200-1000/month per machine,
    depending on quality
 Great option for almost-total control


 When is it right?
   If you need lots of power and control.
    However, costs can be high.
Shared Hosting
 You “share” a dedicated host with other customers (you
  don’t know who they are)
    Share CPU-power
    Share network connection
    Sometimes, share IP address
 You have limited access to the computer, so less flexibility


 When is it right?
   Generally a poor choice for startups
   Better choice for small business websites
Virtual Private Server (VPS)
 Virtual Private Server = “virtual machine”
 Like having a dedicated server, except that there isn’t a
  physical machine you own.
 Your machine is a “virtual” machine, that lives inside
  of a physical machine.

 • When is it right?
    • Low cost way of having lots
      of control.
    • Great option to start
Colocation
 Means you buy your own physical machine
    Much more expensive than consumer machines… generally costs
     at least $4,000, easily $10,000
    In addition to monthly fees to data center
 You choose the hardware
   Maximum flexibility regarding the hardware used (e.g. fancy servers and
    storage configurations)
 You manage everything.
   Requires more effort and management compared to cloud and managed


 When is it right?
   Best for maturing startups that can afford costly servers and hire
    staff to manage them
Cloud Hosting
 “Pay as you go”, pay-for-use
 Amazon EC2, S3
 Good for starting out when server needs are unknown and
  it’s easy to scale up and down quickly
 Best for environments that have differing scale needs on a
  regular basis
    (e.g. imagine you normally need 20 servers but for a few
     hours each night you need 100 servers to crunch data)

 When is it right?
   Great low-cost way to start, but limitations can be
    frustrating
   Excellent choice if sudden scale is needed
Comparison
                Managed (dedicated, Colocation      Cloud
                shared, VPS)        (aka colo)
Cost at first   Average             Very high       Very low
Cost at scale   Average-high        Low             Very high
Flexibility     Medium              Very flexible   Not flexible
Management      Depends on host     You manage      Harder to manage
Tools for hosting
 Who is hosting a website?
   http://www.whoishostingthis.com
   Note that high-traffic websites run their own data
    centers
Rackspace
 http://www.rackspacestartups.com/
Try Buying Hosting
 Cheaper and lower-quality options
    Your domain registrant
    Bluehost, dreamhost, etc.


 Better and more expensive options
    Rackspace
    Softlayer
Deployment
 Deployment = Release = Shipping


 The process of getting a website from your local
 machine to the host
   Once it is on the host, it’s viewable by the public
FTP
 File Transfer Protocol
    Very old way of transferring files
 We’ll use Filezilla
Practice Deploying
 FTP Connect to 208.79.77.29
 Username class
 Password: same password as classroom computers




 Create a folder with your name (lowercase, one word)
 Upload your HTML files
 Test it at http://class.testing.startupv8.com/yourname
Multiple Environments
 Risks of single-environment
    Accidental deployment
    Very hard to recover in production
        High cost, high pressure, lots of “site is down” time
 Dev > QA > Staging > Production
   The “build” process
   Automated tests
   Automatic documentation and/or release notes
   Automatically moving from one stage to another
        “latest build”, “nightly build”, “build 142”
Advanced Deployment Tools
 Beyond Compare (like FTP, but highlights line-by-line
  differences)
 Custom programs
   Write your own script that copies files
 Available software
    xCopy / robocopy
    MSDeploy
    UrbanCode www.urbancode.com
Release Planning and Cycles
 Planning process of what
 to deploy and when
   MVP
   Version 2
   Version 3…
Case study: firefox
Project Management
 Starts off as…
    1 product owner, 1 designer, 1 engineer = 3 people
 Soon afterward…
    1 product owner, 1 designer, 3 engineers = 5 people
 Company grows…
    1 product owner, 2 designers, 4 engineers,
     1 project manager, 1 tester = 9 people

 Project management = coordination and allocation of
  people, time, money.
Gantt chart
 Like a waterfall process
 Great for known projects
 Less applicable for ongoing development
Agile Development
 Small, incremental Iterations
 1-2 weeks
 Standing meetings
 “Product owner”
 Burndown charts
Tools for Project Management
 FugBugz
 BaseCamp
 Trello
 Pivotal Tracker
Budgeting
 Very hard to budget new development projects
    How much does it cost to build a house? It depends


 Do a bottom up estimate, not a top down estimate
   A 2-story house in a specific subdivision with a garage
    and 3 bed 2 bath with the same interior that all the other
    houses in the subdivision have?
Ninety-ninety rule
Good project management
 Setting milestones
 Hitting the milestones
 Lots of communication


 Don’t change the features
 Go through the design process
Tips on Shipping
 Stick to a feature-set, and build it.
 Adding developers doesn’t always make the project finish sooner
 “The mythical man-month”

 Q: How does a large software project get to be one year late?
 A: One day at a time!
Deployments
on closed
platforms
 E.g. Apple App Store
    Unclear requirements
    Time consuming and
     frustrating
Hiring Developers
 Hiring full time developers
   Very hard, very expensive


 Part-time developers (freelancers)
    Tends to be the best option for startups


 Difficult even for engineers to assess skill in an interview
 Developers are almost never effective on joining a
  project… always takes training time
Managing Developers
 Great developers are very self-motivated
    They like to work on things they think are important
    They like to solve interesting problems
 Constant pressure is annoying
Extreme Programming
 A subtype of agile development
 Adds some elements
    Pair programming
    Extensive unit testing
    Flat management
Code Reviews
 Engineers look over each other’s code as a “second pair
  of eyes”
 Tends to result in much better code
 Also enables peer-to-peer training
Outsourcing
 Tends to be very difficult for startups
    Low quality work
        Offshore companies do not design
        And they produce low-quality code
   Poor communication
 The takeaway: tempting, but usually a net loss
Homework
 Individual, read the following:
    Read Michael Wolfe’s answer... http://www.quora.com/Engineering-Management/Why-
     are-software-development-task-estimations-regularly-off-by-a-factor-of-2-3
    Mythical man-month… http://en.wikipedia.org/wiki/The_Mythical_Man-Month


 (Team) Deploy your application
    If there’s no backend, that’s OK


 (Team) Keep Going!!
    Keep programming
    Keep working on the pitch deck
    Keep marketing your new startup
    Occasionally review the market research data (Google Analytics, etc.)

Contenu connexe

Tendances

Writing less code with Serverless on AWS at AWS User Group Nairobi
Writing less code with Serverless on AWS at AWS User Group NairobiWriting less code with Serverless on AWS at AWS User Group Nairobi
Writing less code with Serverless on AWS at AWS User Group NairobiVadym Kazulkin
 
CuriousMinds and Siemens in Brasov 2015 - Building and Developing for the Clo...
CuriousMinds and Siemens in Brasov 2015 - Building and Developing for the Clo...CuriousMinds and Siemens in Brasov 2015 - Building and Developing for the Clo...
CuriousMinds and Siemens in Brasov 2015 - Building and Developing for the Clo...Vadim Zendejas
 
Os Alrubaie Ruby
Os Alrubaie RubyOs Alrubaie Ruby
Os Alrubaie Rubyoscon2007
 

Tendances (7)

Silverlight 5
Silverlight 5Silverlight 5
Silverlight 5
 
Writing less code with Serverless on AWS at AWS User Group Nairobi
Writing less code with Serverless on AWS at AWS User Group NairobiWriting less code with Serverless on AWS at AWS User Group Nairobi
Writing less code with Serverless on AWS at AWS User Group Nairobi
 
CuriousMinds and Siemens in Brasov 2015 - Building and Developing for the Clo...
CuriousMinds and Siemens in Brasov 2015 - Building and Developing for the Clo...CuriousMinds and Siemens in Brasov 2015 - Building and Developing for the Clo...
CuriousMinds and Siemens in Brasov 2015 - Building and Developing for the Clo...
 
Os Long
Os LongOs Long
Os Long
 
Fast, Cheap
Fast, Cheap Fast, Cheap
Fast, Cheap
 
Os Alrubaie Ruby
Os Alrubaie RubyOs Alrubaie Ruby
Os Alrubaie Ruby
 
Os Krug
Os KrugOs Krug
Os Krug
 

Similaire à Class 7: Introduction to web technology entrepreneurship

PHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM iPHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM iSam Hennessy
 
The "Holy Grail" of Dev/Ops
The "Holy Grail" of Dev/OpsThe "Holy Grail" of Dev/Ops
The "Holy Grail" of Dev/OpsErik Osterman
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Emerson Eduardo Rodrigues Von Staffen
 
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...Amazon Web Services
 
UnConference for Georgia Southern Computer Science March 31, 2015
UnConference for Georgia Southern Computer Science March 31, 2015UnConference for Georgia Southern Computer Science March 31, 2015
UnConference for Georgia Southern Computer Science March 31, 2015Christopher Curtin
 
Experiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamExperiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamBrian Benz
 
Austin Web Architecture
Austin Web ArchitectureAustin Web Architecture
Austin Web Architecturejoaquincasares
 
Windows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan WongWindows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan WongSpiffy
 
Building Low Cost Scalable Web Applications Tools & Techniques
Building Low Cost Scalable Web Applications   Tools & TechniquesBuilding Low Cost Scalable Web Applications   Tools & Techniques
Building Low Cost Scalable Web Applications Tools & Techniquesrramesh
 
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...Ludovic Piot
 
Building FoundationDB
Building FoundationDBBuilding FoundationDB
Building FoundationDBFoundationDB
 
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...Ambassador Labs
 
DOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M usersDOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M usersYoav Avrahami
 
Writing less code with Serverless on AWS at FrOSCon 2021
Writing less code with Serverless on AWS at FrOSCon 2021Writing less code with Serverless on AWS at FrOSCon 2021
Writing less code with Serverless on AWS at FrOSCon 2021Vadym Kazulkin
 
Aws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon ElishaAws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon ElishaHelen Rogers
 
The Next Big Thing: Serverless
The Next Big Thing: ServerlessThe Next Big Thing: Serverless
The Next Big Thing: ServerlessDoug Vanderweide
 
Gruntwork Executive Summary
Gruntwork Executive SummaryGruntwork Executive Summary
Gruntwork Executive SummaryYevgeniy Brikman
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressGeorge Kanellopoulos
 
Docker vs. Kubernetes vs. Serverless
Docker vs. Kubernetes vs. ServerlessDocker vs. Kubernetes vs. Serverless
Docker vs. Kubernetes vs. ServerlessLogicworksNY
 

Similaire à Class 7: Introduction to web technology entrepreneurship (20)

PHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM iPHP – Faster And Cheaper. Scale Vertically with IBM i
PHP – Faster And Cheaper. Scale Vertically with IBM i
 
The "Holy Grail" of Dev/Ops
The "Holy Grail" of Dev/OpsThe "Holy Grail" of Dev/Ops
The "Holy Grail" of Dev/Ops
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
 
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
DevOps, Continuous Integration and Deployment on AWS: Putting Money Back into...
 
RavenDB overview
RavenDB overviewRavenDB overview
RavenDB overview
 
UnConference for Georgia Southern Computer Science March 31, 2015
UnConference for Georgia Southern Computer Science March 31, 2015UnConference for Georgia Southern Computer Science March 31, 2015
UnConference for Georgia Southern Computer Science March 31, 2015
 
Experiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamExperiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure team
 
Austin Web Architecture
Austin Web ArchitectureAustin Web Architecture
Austin Web Architecture
 
Windows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan WongWindows Azure Platform + PHP - Jonathan Wong
Windows Azure Platform + PHP - Jonathan Wong
 
Building Low Cost Scalable Web Applications Tools & Techniques
Building Low Cost Scalable Web Applications   Tools & TechniquesBuilding Low Cost Scalable Web Applications   Tools & Techniques
Building Low Cost Scalable Web Applications Tools & Techniques
 
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
 
Building FoundationDB
Building FoundationDBBuilding FoundationDB
Building FoundationDB
 
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...
2017 Microservices Practitioner Virtual Summit: Ancestry's Journey towards Mi...
 
DOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M usersDOs and DONTs on the way to 10M users
DOs and DONTs on the way to 10M users
 
Writing less code with Serverless on AWS at FrOSCon 2021
Writing less code with Serverless on AWS at FrOSCon 2021Writing less code with Serverless on AWS at FrOSCon 2021
Writing less code with Serverless on AWS at FrOSCon 2021
 
Aws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon ElishaAws-What You Need to Know_Simon Elisha
Aws-What You Need to Know_Simon Elisha
 
The Next Big Thing: Serverless
The Next Big Thing: ServerlessThe Next Big Thing: Serverless
The Next Big Thing: Serverless
 
Gruntwork Executive Summary
Gruntwork Executive SummaryGruntwork Executive Summary
Gruntwork Executive Summary
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy Wordress
 
Docker vs. Kubernetes vs. Serverless
Docker vs. Kubernetes vs. ServerlessDocker vs. Kubernetes vs. Serverless
Docker vs. Kubernetes vs. Serverless
 

Plus de allanchao

Class 10: Introduction to web technology entrepreneurship
Class 10: Introduction to web technology entrepreneurshipClass 10: Introduction to web technology entrepreneurship
Class 10: Introduction to web technology entrepreneurshipallanchao
 
Class 9: Introduction to web technology entrepreneurship
Class 9: Introduction to web technology entrepreneurshipClass 9: Introduction to web technology entrepreneurship
Class 9: Introduction to web technology entrepreneurshipallanchao
 
Class 4: Introduction to web technology entrepreneurship
Class 4: Introduction to web technology entrepreneurshipClass 4: Introduction to web technology entrepreneurship
Class 4: Introduction to web technology entrepreneurshipallanchao
 
Class 2: Introduction to web technology entrepreneurship
Class 2: Introduction to web technology entrepreneurship Class 2: Introduction to web technology entrepreneurship
Class 2: Introduction to web technology entrepreneurship allanchao
 
Class 1: Introduction to web technology entrepreneurship
Class 1: Introduction to web technology entrepreneurship Class 1: Introduction to web technology entrepreneurship
Class 1: Introduction to web technology entrepreneurship allanchao
 
Sba 20111003b - starting your own web startup
Sba   20111003b - starting your own web startupSba   20111003b - starting your own web startup
Sba 20111003b - starting your own web startupallanchao
 

Plus de allanchao (6)

Class 10: Introduction to web technology entrepreneurship
Class 10: Introduction to web technology entrepreneurshipClass 10: Introduction to web technology entrepreneurship
Class 10: Introduction to web technology entrepreneurship
 
Class 9: Introduction to web technology entrepreneurship
Class 9: Introduction to web technology entrepreneurshipClass 9: Introduction to web technology entrepreneurship
Class 9: Introduction to web technology entrepreneurship
 
Class 4: Introduction to web technology entrepreneurship
Class 4: Introduction to web technology entrepreneurshipClass 4: Introduction to web technology entrepreneurship
Class 4: Introduction to web technology entrepreneurship
 
Class 2: Introduction to web technology entrepreneurship
Class 2: Introduction to web technology entrepreneurship Class 2: Introduction to web technology entrepreneurship
Class 2: Introduction to web technology entrepreneurship
 
Class 1: Introduction to web technology entrepreneurship
Class 1: Introduction to web technology entrepreneurship Class 1: Introduction to web technology entrepreneurship
Class 1: Introduction to web technology entrepreneurship
 
Sba 20111003b - starting your own web startup
Sba   20111003b - starting your own web startupSba   20111003b - starting your own web startup
Sba 20111003b - starting your own web startup
 

Dernier

Presentation4 (2) survey responses clearly labelled
Presentation4 (2) survey responses clearly labelledPresentation4 (2) survey responses clearly labelled
Presentation4 (2) survey responses clearly labelledCaitlinCummins3
 
Copyright: What Creators and Users of Art Need to Know
Copyright: What Creators and Users of Art Need to KnowCopyright: What Creators and Users of Art Need to Know
Copyright: What Creators and Users of Art Need to KnowMiriam Robeson
 
Jual Obat Aborsi Di Sibolga wa 0851/7541/5434 Cytotec Misoprostol 200mcg Pfizer
Jual Obat Aborsi Di Sibolga wa 0851/7541/5434 Cytotec Misoprostol 200mcg PfizerJual Obat Aborsi Di Sibolga wa 0851/7541/5434 Cytotec Misoprostol 200mcg Pfizer
Jual Obat Aborsi Di Sibolga wa 0851/7541/5434 Cytotec Misoprostol 200mcg PfizerPusat Herbal Resmi BPOM
 
Raising Seed Capital by Steve Schlafman at RRE Ventures
Raising Seed Capital by Steve Schlafman at RRE VenturesRaising Seed Capital by Steve Schlafman at RRE Ventures
Raising Seed Capital by Steve Schlafman at RRE VenturesAlejandro Cremades
 
Toyota Kata Coaching for Agile Teams & Transformations
Toyota Kata Coaching for Agile Teams & TransformationsToyota Kata Coaching for Agile Teams & Transformations
Toyota Kata Coaching for Agile Teams & TransformationsStefan Wolpers
 
Creative Ideas for Interactive Team Presentations
Creative Ideas for Interactive Team PresentationsCreative Ideas for Interactive Team Presentations
Creative Ideas for Interactive Team PresentationsSlidesAI
 
How Do Venture Capitalists Make Decisions?
How Do Venture Capitalists Make Decisions?How Do Venture Capitalists Make Decisions?
How Do Venture Capitalists Make Decisions?Alejandro Cremades
 
Guide to Networking Essentials 8th Edition by Greg Tomsho solution manual.doc
Guide to Networking Essentials 8th Edition by Greg Tomsho solution manual.docGuide to Networking Essentials 8th Edition by Greg Tomsho solution manual.doc
Guide to Networking Essentials 8th Edition by Greg Tomsho solution manual.docssuserf63bd7
 
PEMATANG SIANTAR 0851/8063/4797 JUAL OBAT ABORSI CYTOTEC PEMATANG SIANTAR
PEMATANG SIANTAR 0851/8063/4797 JUAL OBAT ABORSI CYTOTEC PEMATANG SIANTARPEMATANG SIANTAR 0851/8063/4797 JUAL OBAT ABORSI CYTOTEC PEMATANG SIANTAR
PEMATANG SIANTAR 0851/8063/4797 JUAL OBAT ABORSI CYTOTEC PEMATANG SIANTARdoktercalysta
 
Top^Clinic ^%[+27785538335__Safe*Women's clinic//Abortion Pills In Harare
Top^Clinic ^%[+27785538335__Safe*Women's clinic//Abortion Pills In HarareTop^Clinic ^%[+27785538335__Safe*Women's clinic//Abortion Pills In Harare
Top^Clinic ^%[+27785538335__Safe*Women's clinic//Abortion Pills In Hararedoctorjoe1984
 
PitchBook’s Guide to VC Funding for Startups
PitchBook’s Guide to VC Funding for StartupsPitchBook’s Guide to VC Funding for Startups
PitchBook’s Guide to VC Funding for StartupsAlejandro Cremades
 
The Truth About Dinesh Bafna's Situation.pdf
The Truth About Dinesh Bafna's Situation.pdfThe Truth About Dinesh Bafna's Situation.pdf
The Truth About Dinesh Bafna's Situation.pdfMont Surfaces
 
Hyundai capital 2024 1q Earnings release
Hyundai capital 2024 1q Earnings releaseHyundai capital 2024 1q Earnings release
Hyundai capital 2024 1q Earnings releaseirhcs
 
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot Report
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot ReportFuture of Trade 2024 - Decoupled and Reconfigured - Snapshot Report
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot ReportDubai Multi Commodity Centre
 
The Risks of Ignoring Bookkeeping in Your Business
The Risks of Ignoring Bookkeeping in Your BusinessThe Risks of Ignoring Bookkeeping in Your Business
The Risks of Ignoring Bookkeeping in Your BusinessYourLegal Accounting
 
Daftar Rumpun, Pohon, dan Cabang Ilmu (2024).pdf
Daftar Rumpun, Pohon, dan Cabang Ilmu (2024).pdfDaftar Rumpun, Pohon, dan Cabang Ilmu (2024).pdf
Daftar Rumpun, Pohon, dan Cabang Ilmu (2024).pdfAgusHalim9
 
Elevate Your Online Presence with SEO Services
Elevate Your Online Presence with SEO ServicesElevate Your Online Presence with SEO Services
Elevate Your Online Presence with SEO ServicesHaseebBashir5
 
NewBase 17 May 2024 Energy News issue - 1725 by Khaled Al Awadi_compresse...
NewBase   17 May  2024  Energy News issue - 1725 by Khaled Al Awadi_compresse...NewBase   17 May  2024  Energy News issue - 1725 by Khaled Al Awadi_compresse...
NewBase 17 May 2024 Energy News issue - 1725 by Khaled Al Awadi_compresse...Khaled Al Awadi
 
Global Internal Audit Standards 2024.pdf
Global Internal Audit Standards 2024.pdfGlobal Internal Audit Standards 2024.pdf
Global Internal Audit Standards 2024.pdfAmer Morgan
 

Dernier (20)

Presentation4 (2) survey responses clearly labelled
Presentation4 (2) survey responses clearly labelledPresentation4 (2) survey responses clearly labelled
Presentation4 (2) survey responses clearly labelled
 
Copyright: What Creators and Users of Art Need to Know
Copyright: What Creators and Users of Art Need to KnowCopyright: What Creators and Users of Art Need to Know
Copyright: What Creators and Users of Art Need to Know
 
Jual Obat Aborsi Di Sibolga wa 0851/7541/5434 Cytotec Misoprostol 200mcg Pfizer
Jual Obat Aborsi Di Sibolga wa 0851/7541/5434 Cytotec Misoprostol 200mcg PfizerJual Obat Aborsi Di Sibolga wa 0851/7541/5434 Cytotec Misoprostol 200mcg Pfizer
Jual Obat Aborsi Di Sibolga wa 0851/7541/5434 Cytotec Misoprostol 200mcg Pfizer
 
Raising Seed Capital by Steve Schlafman at RRE Ventures
Raising Seed Capital by Steve Schlafman at RRE VenturesRaising Seed Capital by Steve Schlafman at RRE Ventures
Raising Seed Capital by Steve Schlafman at RRE Ventures
 
Toyota Kata Coaching for Agile Teams & Transformations
Toyota Kata Coaching for Agile Teams & TransformationsToyota Kata Coaching for Agile Teams & Transformations
Toyota Kata Coaching for Agile Teams & Transformations
 
Creative Ideas for Interactive Team Presentations
Creative Ideas for Interactive Team PresentationsCreative Ideas for Interactive Team Presentations
Creative Ideas for Interactive Team Presentations
 
How Do Venture Capitalists Make Decisions?
How Do Venture Capitalists Make Decisions?How Do Venture Capitalists Make Decisions?
How Do Venture Capitalists Make Decisions?
 
Guide to Networking Essentials 8th Edition by Greg Tomsho solution manual.doc
Guide to Networking Essentials 8th Edition by Greg Tomsho solution manual.docGuide to Networking Essentials 8th Edition by Greg Tomsho solution manual.doc
Guide to Networking Essentials 8th Edition by Greg Tomsho solution manual.doc
 
(推特)Twitter账号批发(自助购买网址🎉top233.com🎉)
(推特)Twitter账号批发(自助购买网址🎉top233.com🎉)(推特)Twitter账号批发(自助购买网址🎉top233.com🎉)
(推特)Twitter账号批发(自助购买网址🎉top233.com🎉)
 
PEMATANG SIANTAR 0851/8063/4797 JUAL OBAT ABORSI CYTOTEC PEMATANG SIANTAR
PEMATANG SIANTAR 0851/8063/4797 JUAL OBAT ABORSI CYTOTEC PEMATANG SIANTARPEMATANG SIANTAR 0851/8063/4797 JUAL OBAT ABORSI CYTOTEC PEMATANG SIANTAR
PEMATANG SIANTAR 0851/8063/4797 JUAL OBAT ABORSI CYTOTEC PEMATANG SIANTAR
 
Top^Clinic ^%[+27785538335__Safe*Women's clinic//Abortion Pills In Harare
Top^Clinic ^%[+27785538335__Safe*Women's clinic//Abortion Pills In HarareTop^Clinic ^%[+27785538335__Safe*Women's clinic//Abortion Pills In Harare
Top^Clinic ^%[+27785538335__Safe*Women's clinic//Abortion Pills In Harare
 
PitchBook’s Guide to VC Funding for Startups
PitchBook’s Guide to VC Funding for StartupsPitchBook’s Guide to VC Funding for Startups
PitchBook’s Guide to VC Funding for Startups
 
The Truth About Dinesh Bafna's Situation.pdf
The Truth About Dinesh Bafna's Situation.pdfThe Truth About Dinesh Bafna's Situation.pdf
The Truth About Dinesh Bafna's Situation.pdf
 
Hyundai capital 2024 1q Earnings release
Hyundai capital 2024 1q Earnings releaseHyundai capital 2024 1q Earnings release
Hyundai capital 2024 1q Earnings release
 
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot Report
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot ReportFuture of Trade 2024 - Decoupled and Reconfigured - Snapshot Report
Future of Trade 2024 - Decoupled and Reconfigured - Snapshot Report
 
The Risks of Ignoring Bookkeeping in Your Business
The Risks of Ignoring Bookkeeping in Your BusinessThe Risks of Ignoring Bookkeeping in Your Business
The Risks of Ignoring Bookkeeping in Your Business
 
Daftar Rumpun, Pohon, dan Cabang Ilmu (2024).pdf
Daftar Rumpun, Pohon, dan Cabang Ilmu (2024).pdfDaftar Rumpun, Pohon, dan Cabang Ilmu (2024).pdf
Daftar Rumpun, Pohon, dan Cabang Ilmu (2024).pdf
 
Elevate Your Online Presence with SEO Services
Elevate Your Online Presence with SEO ServicesElevate Your Online Presence with SEO Services
Elevate Your Online Presence with SEO Services
 
NewBase 17 May 2024 Energy News issue - 1725 by Khaled Al Awadi_compresse...
NewBase   17 May  2024  Energy News issue - 1725 by Khaled Al Awadi_compresse...NewBase   17 May  2024  Energy News issue - 1725 by Khaled Al Awadi_compresse...
NewBase 17 May 2024 Energy News issue - 1725 by Khaled Al Awadi_compresse...
 
Global Internal Audit Standards 2024.pdf
Global Internal Audit Standards 2024.pdfGlobal Internal Audit Standards 2024.pdf
Global Internal Audit Standards 2024.pdf
 

Class 7: Introduction to web technology entrepreneurship

  • 1. Allan Chao Startup Consultant Startup V8 allan@startupv8.com UC Berkeley Extension, Summer 2012
  • 2. Question of the day: How many people are involved in building a web application?
  • 3. The Agenda  Quiz  Quick review of last session  Servers, Hosting  Deployment  Release Cycles, Project Management  Engineering management
  • 4. Quiz Time Good luck! 10 minutes max
  • 5. Quick review of prior material  Databases  IDE Comparison  Database model  Notepad++  Entity relationship model  NetBeans  SQL  Visual Studio  Database Engines  Backend Programming  RDBMS  Truly requires clarification of ideas  MYSQL  Complexity  SQL Server  Programming Languages  APIs  Programming example (calculator)  Application Programing Interface  Backend integration with frontend  Precautions  ASP.NET  SDK = Software Development Kit  Error validation  Technology Stacks  Principles of Programming  Many different options in different layers  Some code is better than others  LAMP = Linux Apache Mysql PHP  Mistakes have a high cost  WINS = Windows IIS .NET SQL Server
  • 6.
  • 7. What is Hosting?  Where you store the code  Makes the website publicly-accessible  What you’re paying for:  Physical components  Disk space (space in GB)  Memory (RAM)  Processing power (CPU)  Datacenter costs  Electricity  Cooling  Network Bandwidth  Administration (technical skill)
  • 8. What is a server?  Physical machine  Usually horizontal, 1-2 inches tall  Designed and built for reliability, not features  Lots of redundant components
  • 9. What is a data center?  A.k.a. Server farm  Lots of computers  Room gets hot…  Lots of fans, very loud  High security
  • 10. 3 most common hosting options  3 most common hosting options  Dedicated Hosting  Shared Hosting  Virtual Private Server (VPS)  Other hosting options  Colocation  Cloud hosting
  • 11. Dedicated Hosting  Means you rent a physical machine provided by the host  Hardware options provided by the host, you pick one  Tends to be around $200-1000/month per machine, depending on quality  Great option for almost-total control  When is it right?  If you need lots of power and control. However, costs can be high.
  • 12. Shared Hosting  You “share” a dedicated host with other customers (you don’t know who they are)  Share CPU-power  Share network connection  Sometimes, share IP address  You have limited access to the computer, so less flexibility  When is it right?  Generally a poor choice for startups  Better choice for small business websites
  • 13. Virtual Private Server (VPS)  Virtual Private Server = “virtual machine”  Like having a dedicated server, except that there isn’t a physical machine you own.  Your machine is a “virtual” machine, that lives inside of a physical machine. • When is it right? • Low cost way of having lots of control. • Great option to start
  • 14.
  • 15. Colocation  Means you buy your own physical machine  Much more expensive than consumer machines… generally costs at least $4,000, easily $10,000  In addition to monthly fees to data center  You choose the hardware  Maximum flexibility regarding the hardware used (e.g. fancy servers and storage configurations)  You manage everything.  Requires more effort and management compared to cloud and managed  When is it right?  Best for maturing startups that can afford costly servers and hire staff to manage them
  • 16. Cloud Hosting  “Pay as you go”, pay-for-use  Amazon EC2, S3  Good for starting out when server needs are unknown and it’s easy to scale up and down quickly  Best for environments that have differing scale needs on a regular basis  (e.g. imagine you normally need 20 servers but for a few hours each night you need 100 servers to crunch data)  When is it right?  Great low-cost way to start, but limitations can be frustrating  Excellent choice if sudden scale is needed
  • 17. Comparison Managed (dedicated, Colocation Cloud shared, VPS) (aka colo) Cost at first Average Very high Very low Cost at scale Average-high Low Very high Flexibility Medium Very flexible Not flexible Management Depends on host You manage Harder to manage
  • 18. Tools for hosting  Who is hosting a website?  http://www.whoishostingthis.com  Note that high-traffic websites run their own data centers
  • 20. Try Buying Hosting  Cheaper and lower-quality options  Your domain registrant  Bluehost, dreamhost, etc.  Better and more expensive options  Rackspace  Softlayer
  • 21.
  • 22. Deployment  Deployment = Release = Shipping  The process of getting a website from your local machine to the host  Once it is on the host, it’s viewable by the public
  • 23. FTP  File Transfer Protocol  Very old way of transferring files  We’ll use Filezilla
  • 24. Practice Deploying  FTP Connect to 208.79.77.29  Username class  Password: same password as classroom computers  Create a folder with your name (lowercase, one word)  Upload your HTML files  Test it at http://class.testing.startupv8.com/yourname
  • 25. Multiple Environments  Risks of single-environment  Accidental deployment  Very hard to recover in production  High cost, high pressure, lots of “site is down” time  Dev > QA > Staging > Production  The “build” process  Automated tests  Automatic documentation and/or release notes  Automatically moving from one stage to another  “latest build”, “nightly build”, “build 142”
  • 26. Advanced Deployment Tools  Beyond Compare (like FTP, but highlights line-by-line differences)  Custom programs  Write your own script that copies files  Available software  xCopy / robocopy  MSDeploy  UrbanCode www.urbancode.com
  • 27.
  • 28. Release Planning and Cycles  Planning process of what to deploy and when  MVP  Version 2  Version 3…
  • 30. Project Management  Starts off as…  1 product owner, 1 designer, 1 engineer = 3 people  Soon afterward…  1 product owner, 1 designer, 3 engineers = 5 people  Company grows…  1 product owner, 2 designers, 4 engineers, 1 project manager, 1 tester = 9 people  Project management = coordination and allocation of people, time, money.
  • 31. Gantt chart  Like a waterfall process  Great for known projects  Less applicable for ongoing development
  • 32. Agile Development  Small, incremental Iterations  1-2 weeks  Standing meetings  “Product owner”  Burndown charts
  • 33. Tools for Project Management  FugBugz  BaseCamp  Trello  Pivotal Tracker
  • 34. Budgeting  Very hard to budget new development projects  How much does it cost to build a house? It depends  Do a bottom up estimate, not a top down estimate  A 2-story house in a specific subdivision with a garage and 3 bed 2 bath with the same interior that all the other houses in the subdivision have?
  • 36. Good project management  Setting milestones  Hitting the milestones  Lots of communication  Don’t change the features  Go through the design process
  • 37. Tips on Shipping  Stick to a feature-set, and build it.  Adding developers doesn’t always make the project finish sooner  “The mythical man-month”  Q: How does a large software project get to be one year late?  A: One day at a time!
  • 38. Deployments on closed platforms  E.g. Apple App Store  Unclear requirements  Time consuming and frustrating
  • 39.
  • 40. Hiring Developers  Hiring full time developers  Very hard, very expensive  Part-time developers (freelancers)  Tends to be the best option for startups  Difficult even for engineers to assess skill in an interview  Developers are almost never effective on joining a project… always takes training time
  • 41. Managing Developers  Great developers are very self-motivated  They like to work on things they think are important  They like to solve interesting problems  Constant pressure is annoying
  • 42. Extreme Programming  A subtype of agile development  Adds some elements  Pair programming  Extensive unit testing  Flat management
  • 43. Code Reviews  Engineers look over each other’s code as a “second pair of eyes”  Tends to result in much better code  Also enables peer-to-peer training
  • 44. Outsourcing  Tends to be very difficult for startups  Low quality work  Offshore companies do not design  And they produce low-quality code  Poor communication  The takeaway: tempting, but usually a net loss
  • 45.
  • 46. Homework  Individual, read the following:  Read Michael Wolfe’s answer... http://www.quora.com/Engineering-Management/Why- are-software-development-task-estimations-regularly-off-by-a-factor-of-2-3  Mythical man-month… http://en.wikipedia.org/wiki/The_Mythical_Man-Month  (Team) Deploy your application  If there’s no backend, that’s OK  (Team) Keep Going!!  Keep programming  Keep working on the pitch deck  Keep marketing your new startup  Occasionally review the market research data (Google Analytics, etc.)