Published on March 13, 2014
@IZTOK PROJECT DATE AUTHOR 02 MAR 2014 DRUPAL AS A LEAN STARTUP PLATFORM BUILDING MINIMAL VIABLE PRODUCTS WITH A SITE BUILDING APPROACH BUILD MeasureLearn
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 ﬁrst 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: http://to.ly/s70F
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 ﬁrst 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 proﬁle from user)
Data Structure Use semantic ﬁelds for storing data • date • address • link • email • color ﬁeld • timezone • phone number • ﬁle ﬁeld sources And many, many, many others…
Data Structure Break data into multiple entities and link them. Entity reference Relation Relation itself is a ﬁeldable 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 ﬁeld 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 ﬂexible 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 deﬁne conditionally executed actions based on occurring events Entities (specially node) fully supported Add, delete, modify entities or its ﬁeld based on action Log events Permissions checks
Commerce dgo.to/commerce Eco system of commerce modules All data stored in entities (extend with ﬁelds) 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 ﬁnal 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 traﬃc low interaction platform Does not work so well for Social networks Real time interactions
GET IN TOUCH firstname.lastname@example.org ! @iztok
Want to watch this again later? Sign in to add this video to a playlist
... Lean Startup Machine, ... Austria’s leading insurance comparison platform ... segments helps support and grow the Drupal community with the ...
Drupal is a scalable, open platform for web content management and digital experiences. ... Where do I start? Get started with Drupal by downloading it ...
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 ...
Drupal products summit. ... create a knowledge sharing platform for Drupal shops/individuals ... about lean startup methodologies in the Drupal ...
Drupal Product/Platform Lead. This is an opportunity to lead and manage the platform development for Ashoka’s ... a fast growing technology start up, ...
... 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 ...