@IZTOK
PROJECT
DATE AUTHOR
02 MAR 2014
DRUPAL AS A LEAN STARTUP PLATFORM
BUILDING MINIMAL VIABLE PRODUCTS WITH A SITE BUIL...
So who am I?
Building/developing with Drupal 6 years

I was involved in 5 web startups in the last couple
of years

Failed...
What is a Lean?
Method for developing
businesses and products

Build-Measure-Learn

Release early, release often

!
Buzzwo...
What is a minimal viable
product
Anything that can be used
to test your hypothesise.

Ad campaign

Smoke bomb

Photoshop m...
Why use Drupal?
“There is a module for that“ (25,000 modules
available)

ready to use solutions

open-source (no additiona...
Starting point
Get a couple of days head-start with distributions
Panopoly (best Drupal practices)

MVP Creator (extends P...
Don’t code, use modules
“There is a module for that.”

Do research, don't pick the first solution/module found by
Google.

...
Data Structure
Storing data in entities

Preferably nodes (content types)

Best supported by other modules (rules, views,
...
Data Structure
Use semantic fields for storing data
• date

• address

• link

• email

• color field
• timezone

• phone nu...
Data Structure
Break data into multiple entities and link them.
Entity reference

Relation

Relation itself is a fieldable ...
Relation
dgo.to/relation
Any kind of entities

Store information about the
relation

Advance inherit features

Rules & vie...
Organic Groups
dgo.to/og
Any kind of entities

Using groups as data hub

Permissions (even field level)

Great ecosystem ar...
Control the layout
Default block system
not flexible enough

Alternatives

Context

Panels
Working with Node (content)
disp...
Control layouts with Panels
dgo.to/panels
Design is not important, layout is

Replacing block layouts with Panels

Using P...
Panels Everywhere
dgo.to/panels_everywhere
Overriding modules paths/pages 

(eg node/%node, user/%user)

Selectively choos...
Theming
Not necessary if not used as beta release

Look for panels_everywhere supported themes

Bootstrap

IKEA of web des...
Codeless business logic
dgo.to/rules
Rules module allows site you to define conditionally
executed actions based on occurri...
Commerce
dgo.to/commerce
Eco system of commerce modules

All data stored in entities (extend with fields)

All listing done...
Communication
Sending email with Mandrill (statistics, spam free)

Platform messages

Messages (activity streams)

Private...
Hacking core & modules
(aka hurting kittens)
Prototype is not your final product

In some cases you can even get away with ...
Going into production?
Shouldn’t be a general rule

Works great for

products with anonymous traffic

low interaction platfo...
GET IN TOUCH
iztok.smolic@agiledrop.com
!
@iztok
Drupal as a lean startup platform
Upcoming SlideShare
Loading in...5
×

Drupal as a lean startup platform

2,584

Published on

Build. Measure. Learn. This is lean product development in a nutshell. The basic idea is to get a minimal viable product (MVP) out there as soon as possible. Now there are all kinds of MVPs we can build, but for web application we will need to build a working prototype at some point. This session is going to give some tips and tricks on how to use Drupal as a platform I recommend building a prototype upon.

Session is also interesting for more experienced developers since I will try to prove a point that rules can be broken during the development of the MVP.

Published in: Technology
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,584
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
9
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

Drupal as a lean startup platform

  1. 1. @IZTOK PROJECT DATE AUTHOR 02 MAR 2014 DRUPAL AS A LEAN STARTUP PLATFORM BUILDING MINIMAL VIABLE PRODUCTS WITH A SITE BUILDING APPROACH BUILD MeasureLearn
  2. 2. So who am I? Building/developing with Drupal 6 years I was involved in 5 web startups in the last couple of years Failed to show release many own products Beta-released my first SaaS product PLY.jobs Reading Lean startup from Eric Ries shifted my mindset
  3. 3. What is a Lean? Method for developing businesses and products Build-Measure-Learn Release early, release often ! Buzzword that got you here :)
  4. 4. What is a minimal viable product Anything that can be used to test your hypothesise. Ad campaign Smoke bomb Photoshop mockups Prototype More examples:
 http://to.ly/s70F
  5. 5. Why use Drupal? “There is a module for that“ (25,000 modules available) ready to use solutions open-source (no additional licence costs) community (access to talent pool, support)
  6. 6. Starting point Get a couple of days head-start with distributions Panopoly (best Drupal practices) MVP Creator (extends Panopoly for startup-ish projects) Commerce kickstart (shops) Open Atrium (intranets) and others …
  7. 7. Don’t code, use modules “There is a module for that.” Do research, don't pick the first solution/module found by Google. Go through open issues. Avoid using modules that don’t use entities and leverage ctools. Don’t be afraid to use a dev version or even sandbox if done by right people. Test on a separate built if not sure.
  8. 8. Data Structure Storing data in entities Preferably nodes (content types) Best supported by other modules (rules, views, panels etc) Try to avoid Taxonomy for other that tags and categories User just as login entity (i.e. separate data-rich profile from user)
  9. 9. Data Structure Use semantic fields for storing data • date • address • link • email • color field • timezone • phone number • file field sources And many, many, many others…
  10. 10. Data Structure Break data into multiple entities and link them. Entity reference Relation Relation itself is a fieldable entity Organic groups
  11. 11. Relation dgo.to/relation Any kind of entities Store information about the relation Advance inherit features Rules & views support Video course
 Commerce product Customer Subscription Relation Expiration date Date field
  12. 12. Organic Groups dgo.to/og Any kind of entities Using groups as data hub Permissions (even field level) Great ecosystem around OG
 (add-ons and support) Company
 OG group Employee OG member Project
 OG Content OG Group Task
 OG Content
  13. 13. Control the layout Default block system not flexible enough Alternatives Context Panels Working with Node (content) displays Display Suite Panels Altering forms Field Group Display Suite Panels
  14. 14. Control layouts with Panels dgo.to/panels Design is not important, layout is Replacing block layouts with Panels Using Panels Context and Conditions for logic Using views content panes inside panels Custom permissions implementation
  15. 15. Panels Everywhere dgo.to/panels_everywhere Overriding modules paths/pages 
 (eg node/%node, user/%user) Selectively choosing variant based on context & conditions Selectively displaying components based on conditions Views integration (views panes) Selection & context for selecting page templates Complete control over forms
  16. 16. Theming Not necessary if not used as beta release Look for panels_everywhere supported themes Bootstrap IKEA of web design Warning: dictates the markup
  17. 17. Codeless business logic dgo.to/rules Rules module allows site you to define conditionally executed actions based on occurring events Entities (specially node) fully supported Add, delete, modify entities or its field based on action Log events Permissions checks
  18. 18. Commerce dgo.to/commerce Eco system of commerce modules All data stored in entities (extend with fields) All listing done with views (easy to override) Logic build with Rules (easy to hook into) A whole framework inside of Drupal
  19. 19. Communication Sending email with Mandrill (statistics, spam free) Platform messages Messages (activity streams) Private Messages
  20. 20. Hacking core & modules (aka hurting kittens) Prototype is not your final product In some cases you can even get away with bugs In some cases it doesn’t need to be secure (this goes for prototypes only) ! Patch modules or even hack them (but document everything because of the team)
  21. 21. Going into production? Shouldn’t be a general rule Works great for products with anonymous traffic low interaction platform Does not work so well for Social networks Real time interactions
  22. 22. GET IN TOUCH iztok.smolic@agiledrop.com ! @iztok
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×