28
Cloud Computing and Startups Steven Evatt Blog: http://www.evatt.com/blog Web: http:// PriceChirp.com Twitter: @sevatt NOLA Barcamp 2009 Case Study: PriceChirp.com

Cloud Computing for Barcamp NOLA 2009

Embed Size (px)

DESCRIPTION

Overview of Cloud Computing and how it can be used by startups. Case study on how the cloud helped the development of PriceChirp.com. Talk given to Barcamp NOLA 2009

Citation preview

Page 1: Cloud Computing for Barcamp NOLA 2009

Cloud Computing and Startups

Steven Evatt

Blog: http://www.evatt.com/blog

Web: http://PriceChirp.com

Twitter: @sevatt

NOLA Barcamp 2009

Case Study: PriceChirp.com

Page 2: Cloud Computing for Barcamp NOLA 2009

2

Today We'll Cover:

Cloud Computing Basics Ruby on Rails Projects Case Study of PriceChirp.com Take Aways

Page 3: Cloud Computing for Barcamp NOLA 2009

3

Ideas to Make $$

Page 4: Cloud Computing for Barcamp NOLA 2009

4

What is Cloud Computing?

Page 5: Cloud Computing for Barcamp NOLA 2009

5

Formal Definition: Cloud Computing

Wikipedia

A style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet. Users need not have knowledge of, expertise in, or control over the technology infrastructure in the "cloud" that supports them.

Comparisons Grid Computing Utility Computing Autonomic Computing

Page 6: Cloud Computing for Barcamp NOLA 2009

6

Common Definition: Cloud Computing

No consensus on the definition of “Cloud Computing”. It is a generic marketing term for any computing resources on the internet.

To many, it means:

Page 7: Cloud Computing for Barcamp NOLA 2009

7

My Definition: Cloud Computing

Cloud computing to me:

Using computer resources in the interwebs, without real control over the hardware specifications, it's location, and having the ability to add or remove resources without capital expenses and/or contracts, preferably in an automated fashion.

Page 8: Cloud Computing for Barcamp NOLA 2009

8

Benefits of the Cloud

Application Building blocks Stable APIs Proven Infrastructures Low cost of entry No long term commitment

Page 9: Cloud Computing for Barcamp NOLA 2009

9

Options other than the Cloud

Cheap / Budget host GoDaddy, HostGator, WebHostGiant, etc...

Dedicated hardware Colocation Hosting on your own hardware / internet

agreements

Page 10: Cloud Computing for Barcamp NOLA 2009

10

Discussing Three Clouds

Amazon Web Services Google App Engine The Rackspace Cloud / Slicehost Many More

Citrix, Google Apps, IBM, Microsoft, Sun, Zoho

Page 11: Cloud Computing for Barcamp NOLA 2009

11

Amazon Web Services

Offerings Hardware as a service – AWS-EC2

Red Hat Enterprise, Windows Server 2003, OpenSolaris, Ubuntu, Gentoo, Debian, etc...

IBM DB2, Apache, IIS, Oracle 11g, MS SQL, MySQL Enterprise, Ruby on Rails, Jboss, Java Application Server, Windows Media Server, etc...

Page 12: Cloud Computing for Barcamp NOLA 2009

12

Amazon Web Services

Offerings Storage as a service – AWS-S3 Database as a service – SimpleDB Queuing as a service – SQS CDN as a service – CloudFront

Page 13: Cloud Computing for Barcamp NOLA 2009

13

AWS – Some Use Cases

Startups Low entry point (10 cents an hour for a CPU) Can scale up to Terabytes of storage and

thousands of servers with the same price structure Everything is automated and has programmatic

access (No calls to system admin to configure or restart a server)

Enterprise Performance testing Compatibility testing

Page 14: Cloud Computing for Barcamp NOLA 2009

14

Google App Engine

Exposes the Google Infrastructure The Python Runtime – (webapp, Django, CherryPy, Pylons,

Web.py) Datastore API (BigTable) – Google's Database Images API – Image manipulation service Mail API – Send mail from your app Memcache API – Distributed memory cache URL Fetch API – Access other hosts from your app User API – Integrate Google users with your app

Page 15: Cloud Computing for Barcamp NOLA 2009

15

Google App Engine

Costs Free for 500 MB storage and 5 million page views $0.10 – $0.12 per CPU core-hour $0.15 – $0.18 per GB-month of storage $0.11 – $0.13 per GB outgoing bandwidth $0.09 – $0.11 per GB incoming bandwidth

Page 16: Cloud Computing for Barcamp NOLA 2009

16

Google App Engine

Bonuses Automatic scaling Using the same infrastructure Google uses

Page 17: Cloud Computing for Barcamp NOLA 2009

17

Google App Engine

Issues Python If not starting from scratch, expect a complete

re-write BigTable – must rethink the way you use a DB

Not a relation DB Can only query indexed data

Page 18: Cloud Computing for Barcamp NOLA 2009

18

The Rackspace Cloud / Slicehost

Offerings Hardware as a service – Cloud Servers Storage as a service – Cloud Files

Compared to Amazon AWS Utility Billing Persistent data Only support Linux instances Support smaller instances, so they have

less expensive options Slicehost is the same as The Rackspace

Cloud with flat billing

Page 19: Cloud Computing for Barcamp NOLA 2009

19

Rackspace / Slicehost Rates

Page 20: Cloud Computing for Barcamp NOLA 2009

20

The Choice for PriceChirp

What part of the cloud is right for PriceChirp? Slicehost

Support Linux Static IP included Persistent data Root access Full support for Ruby on Rails Flat billing Only need a 512 MB instance

Page 21: Cloud Computing for Barcamp NOLA 2009

21

Programming Frameworks

Frameworks Ruby on Rails (Ruby) Sinatra (Ruby) Django (Python) Zend (PHP) Cake (PHP) Catalyst (Perl) CodeIgniter (PHP) Symphony (PHP) Plone (Zope)

CMS Drupal (PHP) Joomla (PHP) Wordpress (PHP) MovableType (Perl)

Page 22: Cloud Computing for Barcamp NOLA 2009

22

Kung-Fu?

“Ruby on Rails is astounding. Using it is like watching a kung-fu movie, where a dozen bad-ass frameworks prepare to beat up on the little newcomer only to be handed their asses in a variety of imaginative ways.”– Nathan Torkington, O'Reilly Program Chair for OSCON

Page 23: Cloud Computing for Barcamp NOLA 2009

23

Ruby on Rails

Ruby – fewer lines with more readable code, shorter development times, simple but powerful

Convention over configuration => almost no config files, predefined directory structure, naming conventions => less code, easier maintenance

Best Practices: MVC, DRY, Testing

Almost everything in Rails is Ruby code (SQL and JavaScript are abstracted)

Integrated AJAX support. Web services with REST.

Good community, tools, and documentation

Extracted from a real application

Page 24: Cloud Computing for Barcamp NOLA 2009

24

Rails Frameworks

Bort – Kick start a project

Restful Authentication, OpenID support, Exception Notifier, Will Paginate

Insoshi – Open source Social Networking

Activity feeds, profiles, photo sharing, comment wall, blogs, forums, user messaging, and an admin panel.

Lovd By Less – Open Source Social Networking

Activity feeds, profiles, messaging, blogs, photogalleries, site search for friends, Flickr and YouTube integration

Page 25: Cloud Computing for Barcamp NOLA 2009

25

Other Free Tools

Google Analytics Enterprise-class web analytics Free for up to 5 million page view a month

Google Webmaster Tools Monitor how google spiders your site Sitemaps

Page 26: Cloud Computing for Barcamp NOLA 2009

26

What all this meant for PriceChirp

Low setup / monthly costs Linux environment Powerful tools Quick prototyping and development Reliable service Excellent performance for the end user Low maintenance

Page 27: Cloud Computing for Barcamp NOLA 2009

27

Take Aways

• The cloud provides a low barrier to entry

• Frameworks simplify work required to build a site

• Free tools

• Easier than you expect

• Try one of your ideas,very little to lose

Page 28: Cloud Computing for Barcamp NOLA 2009

28

Thanks for Coming!

Steven Evatt

Email: [email protected]

Site: PriceChirp.com

Blog: www.evatt.com/blog

Twitter: @sevatt