DrupalCon Session: Monetizing Drupal

April 29th, 2010

Session notes: Monetizing Drupal

The general evolution is to begin as a consultancy and move more toward selling products, or remain as a consultancy/product hybrid.

Chris Shattuck recorded several videos to teach people how to build modules for Drupal.  He sells access to these videos at BuildAModule.com.  He has built in an automatic feedback loop, receiving an encouraging email every time someone purchases access to his videos.

Stephanie Pakrul started Top Notch Themes and now Fusion Drupal Themes too, selling premium Drupal themes.  Again, build once, sell many.  Her company offers several free themes, as well as an excellent, well supported base theme called Fusion.  These help establish trust and a relationship, giving people confidence when purchasing other themes from her company.

Mike Anello co-leads Drupal Easy.  Their emphasis is on providing in-person group training.  This allows them to leverage their time effectively, delivering training to many people at once.  Their chief goal is to help develop new Drupal developers.  They also provide an informative and concise podcast.

Salim Lakhani represented WebEnabled which provides immediate on-demand development sites for Drupal developers.  WebEnabled’s platform also supports the development, sharing, and selling of custom distributions or recipes for Drupal sites.

While the focus of this panel was primarily on providing services to Drupalistas, the principles can be applied to any market, such as medical, real estate and entertainment.

Question from the audience: What are some of the biggest mistakes you made, that almost killed your business, that you recovered and learned from?  Answers:

  • Saying “Yes” too much
  • Thinking it’s going to be easy
  • Setting a price point

Parting words of wisdom: Develop a relationship with your contractors. Discover and get comfortable with them in small steps. Do your work in a community oriented fashion.

DrupalCon Session: Drupal as a Web Application and Product Platform

April 29th, 2010

The state of Drupal as a Web Application & Product Platform

What makes it a product? It has customers, revenue, product lifecycle

Why create products?  To solve a problem once -> create a product -> reuse that product

History

  • Clients++ (All about meeting the needs of clients.)
  • Custom services eventually become products
  • Building and Developing can burn you out
  • See 5 clients with the same need. It can be more efficient to create the solution once, and sell it to all 5 clients.
  • “The Product (Platform) is the next big step in Drupal’s lifecycle” (emphasis) read on…

Drupal IS

  • a platform or framework
  • a solid foundation

Drupal IS the product

Drupal is PART of the product

  • Mercury
  • Aegir
  • both of these examples are stacks that are completely open source and include Drupal.

The product is BASED on Drupal

Considerations

Should you develop the product in house or hire contractors? Development Seed builds in house and uses their products internally (eating their own dog food, so to speak) to be familiar with and fully test the product.

Who pays for it?

  • investors or loans
  • grants from a foundation
  • multiple clients with the same need
  • client as a development engagement
  • client as workd for hire
  • self-funded

Who “owns” the product? Funder/sponsor? Client? You?

Common Licenses

  • most often GPL
  • BSD license is used by Development Seed for their completely custom code.

Start with good specs for the product. Identify the needs it will meet, and spell out what exactly it should do. Then adjust as development proceeds.

  • Drupal Commons (Acquia) started with a spec sheet based on Jive’s features.

Recognition comes from offering a product

  • release it for free
  • people come to rely on your product
  • people come to build upon your product
  • people eventually turn to you for custom addon work

How to get paid

  • more consultation
  • support
  • service fees
  • freemium service (like drupal gardens)
  • partner programs (Acquia and Development Seed are starting partnership programs)

Be a driver for the (Drupal) platform

  • these products can influence the future of drupal core
    • making drupal support custom “products” better
    • adding features to drupal core that are commonly placed in these products
  • parts of a product can be released individually as contributed modules and themes.

What you can create or give

  • Distributions
  • Features
  • Products
  • Services

Major takeaway: It is important to share, one way or another, to help shape Drupal and gain recognition and support.

DrupalCon SF: Keynote, State of Drupal

April 29th, 2010

Notes from Dries Buytaert’s Drupalcon San Francisco keynote, The State of Drupal

About the Drupal Community

  • 5 years ago, there were 40 people at the first Drupalcon.
  • There are nearly 3000 at this Drupalcon today.
  • Self assembly of drupalers in europe: “volcon”, as a result of not being able to travel to San Francisco because of the massive volcano eruption in Iceland.

Key quote: “If you want to go quickly, go alone. If you want to go far, go together” — an African proverb.

More Notes

  • Drupal 8 will be in Git, not in CVS
  • There are 19 full distributions on drupal.org. This seems to be unique to Drupal. What other CMS offers pre-packaged distributions for various purposes?
  • 2 years ago Dries rallied for “semantic web and linked data” support in drupal core. It is in Drupal 7. This enables
    • better on-site search
    • better off-site search (SEO, google)
    • deeper integration among sites
    • advertising that is better targeted
    • “turns the web into a database you can use” (as the rest of the web adopts RDFa)
  • More big companies are getting interested in Drupal and launching sites
    • Cap Gemini
    • Accenture
    • IBM
    • Microsoft (Acquia Drupal on their web platform, new SQL driver, supported Commerce Guys.)
  • Support for NoSQL style databases in field API in Drupal 7 (CouchDB, MongoDB, Cassandra)
  • Pro Drupal Development book will be updated for Drupal 7

Drupal Core

  • Drupal Core was downloaded 230,000 times in March.
  • Drupal powers just over 1% of the web.
  • 6600 patches accepted for Drupal 7
  • 700 people contributed code to Drupal 7
  • 25 people did 50% of code for D7
  • Culture of passion and believing. Just dive in and get started helping.
  • More than 70 modules will be deprecated in D7.
  • There are currently 114 critical bugs
  • Releasing when? Maybe June or July?
  • Very difficult (more and more so) to really understand the details of the entire system.
    • As a result, there are subsystem maintainers.
    • New testing framework helps ensure that new changes don’t break things.
  • Drupal 7 (improvments) will help drive further drupal adoption
  • Only 2% of all drupal sites are in the top 1 million sites. This means that the vast majority of Drupal sites are small to medium sites, on shared or small hosts.
  • Drupal will continue in the direction of becoming a commodity or a service. The important thing for Drupal developers is that we keep Drupal relevant to the needs and environment of its users.
  • Products evolve to eventually over-satisfy the market, and make room for simpler, better fitting solutions. Example: the mainframe computer is largely replaced by desktop computers.  Drupal will likely evolve into an ever more powerful platform, but needs to also remain simple to get started with.  Distributions (pre-configured installations of Drupal) are expected to fill this entry-level need.

Drupal 8

  • Add features that many enterprise users still require.
  • Create a better experience for small sites.
  • For both small and Enterprise, improve usability, performance, and the framework.

Wrapping up

  • Drupal has a culture of contributing, executing (not just talking about it), and having fun.
  • “Awesome happens” –Dries
  • Morten announces availability of tickets for Drupalcon Copenhagen at http://cph2010.drupal.org

Sonnenalp Real Estate Does Drupal

April 26th, 2010

Sonnenalp Real Estate is a sleek, successful boutique real estate firm located in Vail, Colorado. Their team of brokers brings over one hundred years of real estate experience–making them well versed in the nuances of luxury home transactions in the Vail Valley.

Having worked with owner/broker Josh Lautenberg on his email marketing program over the past couple of years, we were excited to hear the news that he had acquired the company with fellow owner/broker Tyra Rudrud, and that they would need our assistance in migrating the website over to a new platform–Drupal.

We redeveloped the Sonnenalp Real Estate website using their existing site design with the aim of improving functionality, user experience and content management efficiency. We incorporated our new MLS module for Drupal 6. This new property module allows us to customize a 3rd party MLS data feed to enhance the user experience and create faster page and property loading, faster searches with more expanded features and flexibility in search criteria–including quick, advanced and property map search capability.

The advanced search feature allows the user to filter by property type, features, virtual tours, etc., and the map search that allows users to peruse a visual representation of Sonnenalp’s listings from Vail to Edwards.  The real-time MLS integration enables each search function to perform lighting fast, and it ensures that every search produces the most up-to-date information.

After doing a property search, users are able to take advantage of a property comparison feature.  Users can select a few properties of interest and a lightbox module pops up with a picture of the properties selected and their vital information such as asking price and MLS number.

The Sonnenalp site is another example of how we’re constantly striving for improvement.  We’ve created a professional, scalable website for the Sonnenalp Real Estate team that will serve them well for years to come. Kudos to Sammy on the sales side, Rowan for doing a great job managing the project, Paul for development, and Moira and Trey for deployment.

Social Media and Selling Online – Facebook vs. Google

April 26th, 2010

As we travel the country for trade shows and have the opportunity to talk with progressive businesses every day, more and more we have been looking at the ways and means to leverage social media to drive business. We know that your customers buy from you, rent from you and generally do business with you because you have earned their trust. This last week I read an interesting article about the brewing war between Google and Facebook. The article included three simple sentences that helped me understand the direction Facebook is “going” (compared to our current understanding of Google’s direction) so I thought I would pass them to you:

  • “Facebook thinks its members will turn to their friends—rather than Google’s algorithms—to navigate the Web.” A very simple BUT powerful simplification of where Facebook is going.
  • “In the eight months ending in April, Facebook has doubled in size to 200 million members, who contribute 4 billion pieces of info, 850 million photos, and 8 million videos every month. The result: a second Internet, one that includes users’ most personal data and resides entirely on Facebook’s servers.” Recently during the F8 conference, Mark Zukerberg said that Facebook has grown to include 400 million members and is growing faster than ever before!

As we talk with business leaders and decision makers on what they need to do to promote their business online, I see those three sentences as a very telling sign of what I would do!

- Peter Scott
President, Blue Tent Marketing

Facebook Introduces the Open Graph: “I’m a-lookin’ and I’m a-likin’”

April 23rd, 2010

This week Facebook has announced a powerful set of tools to extend the reach of social media beyond their own domain and across the entire web.  You may have already noticed the ubiquitous “Like” button appearing in new places.  This allows users to contribute to their Facebook profile without ever leaving the page they are experiencing.  When users stumble across content they enjoy and click “Like” it will both publish a link to the content on their Facebook profile and publish their name and link to their profile on the external page.

As a Facebook user, its up to you if you want to participate and you can customize how interactive/intrusive your social network experience is outside of Facebook by changing your privacy settings.  But as a marketer there is no reason not to give your clients another tool to promote your website.  The new widgets can be added to just about every type of content:  blog posts (WordPress and Drupal), real estate listings, vacation rentals, events, products and specials can all be promoted by your visitors to their friends without any interruption to their browsing experience.

Even cooler, the data obtained by all this liking is captured by Facebook and shared via API.  Pretty soon we may see the search button become obsolete on many sites.  Why force your clients to search when you already know what they like?  Let’s say you’re a vacation rental manager and your website is visited by someone who has been taking annual Hawaiian vacations and been staying in 4 bedroom beachfront homes, why not serve some suggestions of properties that fit their profile?  Pretty soon your entire web experience may be centered around your own interests and likes without you having to spell it out.

Anyone doubting that it will catch on?  Facebook estimated that over 1 BILLION “Like” buttons had been added within 24 hours of the announcement.

Contact us today to learn about custom Facebook widget implementation options.  Oh, and if you enjoyed this post, you know what to do.

- Braeden Flaherty
Director of Customer Service

DrupalCon San Francisco, The Heart of Open Atrium: Context, PURL and Spaces

April 20th, 2010

Young Han from Development Seed presented killer elements that drive their Open Atrium distribution of Drupal in The Heart of Open Atrium: Context, PURL and Spaces.

Context Module

  • Can check for a condition, and respond or act on that condition
  • Example of a “Blog” section or context
    • node page
    • view
  • A “context” is just a name for an idea. You can call it a “section” or anything.
  • Examples in Open Atrium: casetracker, casetracker_book, casetracker_project
  • A Global context is also available
  • Multiple contexts can be active simultaneously, such as globel + blog + casetracker + …

Context Conditions could include

  • Listing
  • Page
  • Section

Responses could include

  • modify theme settings
  • control block visibility

With Context 3.x, Admin module, and jquery ui, an “inline context editor” becomes available, allowing you to work with blocks directly and immediately see results before saving.

Groups

In working with many clients, Development Seed wanted to extend their internal intranet to their individual clients in a controlled and secure way.  Enter Organic Groups module.

Existing ways OG detects what the active group is.

  • node/add/foo?gid[]=1
  • the group that the current node primarily belongs to
  • the group of the user’s last session

This can break down if for example the user is working in multiple tabs.  PURL enters.

PURL

PURL = “Persistent URL”.  Detects a portion of a custom URL, and ensures that that URL is used as the user continues to navigate around the site.

Parts of the URL define the context. For example, see some Flickr URLs.

  • http://www.flickr.com/photos/developmentseed/4518312400
  • http://www.flickr.com/photos/developmentseed/4518312400/in/set-72157623846890026/

In Drupal, could define groups this way:

  • /planning/node/5
  • /communication/node/5
  • /development/node/5

Could also respond to other factors besides URL

  • User Agent
  • Query String (?group=3 or ?display=map)
  • Path Prefix

Simple method to create new PURL behaviors.

Each group can be customized, such as for dashboards, and enable specific features.

Spaces

Enables overriding drupal configurations within any specific space or context.  Lets you control the result of “variable_get()” based on space or context.

Spaces Custom Strings enables changing bits of text based on space or context.

A controller plugin from ctools is what handles the detection of context.

Groups of overrides can be saved into presets.  Examples in Open Atrium: Private Groups, Public Groups.

DrupalCon San Francisco: Welcome to Drupal

April 20th, 2010

The opening session of DrupalCon San Francisco was “Welcome to Drupal(con).”  This session presented by a panel from Acquia served to introduce newcomers to Drupal and set the foundation for the rest of the conference.

Topics included:

  • Common Drupal terms and lingo
  • The Drupal community, appearing at http://groups.drupal.org, IRC, and many businesses built around Drupal
  • Overview of the Drupal architecture
  • Sharing and Publishing strengths
  • Ecommerce capabilities
  • SEO is enhanced by features in core and additional tools in contributed modules
  • Multilingual capabilities. Not easy to solve completely, but all the tools and techniques are available.
  • How to get started with drupal: Drupal Gardens, Acquia Drupal, Acquia stack installer
  • About Acquia hosting and other Drupal-optimized hosting
  • Drupal 7

– David Lanier
Director of Web Development

Drupal Code Sprint: Quality Assurance and Testing

April 19th, 2010

Today is T minus zero, if that is the right phrase, for DrupalCon San Francisco.  Tomorrow the flurry of sessions start, but today we had some time to either “code sprint” (work on issues collaboratively, learning from each other) or participate in all-day focused training sessions.  The bulk of my day today was spent in learning how to implement simpletests, and in the process helped adjust the simpletest tutorial for Drupal 7.

My QA and Simpletest notes

  • The simpletest handbook is the place to get started with simpletest
  • The examples module includes a simpletest example
  • drupal 6 requires a module (simpletest) and a small patch to core
  • drupal 7 has simpletest built in. (Use the latest dev of Drupal 7 core to avoid an error you might see in alpha-7.)
  • simpletest clone” module (D6) for testing a copy of a live site

More resources

  • These issues still need tests to be written before they should be committed.
  • If you maintain a project on drupal.org, write tests for your module and request that your module is added to this list of tested modules.  As a result, drupal.org’s automated testing framework will test your module.

Automated testing on copies of live sites

  • Staging test cases enables testing live or staged sites directly, without replicating the site or database.
  • Testing copies of established or live sites, ensuring that proposed changes will not break existing functionality.

– David Lanier
Director of Web Development

Drupal Digest, Drush, BeerCloud, Government 2.0, Drupal 7, and Drupalcon

April 14th, 2010

Roundup of recent Drupal news:

Drupal + Services Module + Beer = BeerCloud on Android and iPhone. Read the case study.

Drush 2.x, the Drupal Shell, can update core now. It could already update modules and themes.

Drush 3.x makes managing multiple sites easier. See the article on DevelopmentSeed.org.

5 Reasons why Drupal is being chosen by government agencies. Drupal: The New Gov 2.0 Site Builder?

Drupal 7 Alpha 3 is now available. See the notes to find out more and get involved.

And Drupalcon San Francisco is next week.  Shaun Laws and I will be representing Blue Tent Marketing. Rumor has it 3000 people will be attending.

– David Lanier
Director of Web Development
Blue Tent Marketing