Drupal as a lean startup platform

60 %
40 %
Information about Drupal as a lean startup platform

Published on March 13, 2014

Author: iztoksmolic

Source: slideshare.net


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.


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

What is a Lean? Method for developing businesses and products Build-Measure-Learn Release early, release often ! Buzzword that got you here :)

What is a minimal viable product Anything that can be used to test your hypothesise. Ad campaign Smoke bomb Photoshop mockups Prototype More examples:

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)

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 …

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.

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)

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…

Data Structure Break data into multiple entities and link them. Entity reference Relation Relation itself is a fieldable entity Organic groups

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

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

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

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

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

Theming Not necessary if not used as beta release Look for panels_everywhere supported themes Bootstrap IKEA of web design Warning: dictates the markup

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

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

Communication Sending email with Mandrill (statistics, spam free) Platform messages Messages (activity streams) Private Messages

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)

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

GET IN TOUCH iztok.smolic@agiledrop.com ! @iztok

Add a comment

Related presentations

Related pages

Drupal as a lean startup platform - Iztok Smolic - YouTube

Want to watch this again later? Sign in to add this video to a playlist
Read more

segments | Drupal.org

... Lean Startup Machine, ... Austria’s leading insurance comparison platform ... segments helps support and grow the Drupal community with the ...
Read more

Drupal | A CMS platform for great digital experiences

Drupal is a scalable, open platform for web content management and digital experiences. ... Where do I start? Get started with Drupal by downloading it ...
Read more

Powering a Lean Startup With Drupal | DrupalCon Portland 2013

Powering a Lean Startup With Drupal. ... This session is a case study about how Drupal can be leveraged to create successive business models that build ...
Read more

Drupal products summit | Drupal Groups

Drupal products summit. ... create a knowledge sharing platform for Drupal shops/individuals ... about lean startup methodologies in the Drupal ...
Read more

Platform | Drupal Groups

Drupal Product/Platform Lead. This is an opportunity to lead and manage the platform development for Ashoka’s ... a fast growing technology start up, ...
Read more

Drupal - Open Source CMS | Drupal.org

... now is the time to start building with Drupal 8. Search form. Search ... Find your next job or post an open position on the official Drupal community ...
Read more