Oct 24 2018
Oct 24

Award Program Showcases Outstanding Examples of Digital Experience Delivery

Vienna, VA – October 24, 2018 – Mobomo today announced it was selected along with NOAA Fisheries as the winner of the 2018 Acquia Engage Awards for the Leader of the Pack: Public Sector. The Acquia Engage Awards recognize the world-class digital experiences that organizations are building with the Acquia Platform.

In late 2016, NOAA Fisheries partnered with Mobomo to restructure and redesign their digital presence. Before the start of the project, NOAA Fisheries worked with Foresee to help gather insight on their current users. They wanted to address poor site navigation, one of the biggest complaints. They had concerns over their new site structure and wanted to test proposed designs and suggest improvements. Also, the NOAA Fisheries organization had siloed information, websites and even servers within multiple distinct offices. The Mobomo team was and (is currently) tasked with the project of consolidating information into one main site to help NOAA Fisheries communicate more effectively with all worldwide stakeholders, such as commercial and recreational fishermen, fishing councils, scientists and the public. Developing a mobile-friendly, responsive platform is of the utmost importance to the NOAA Fisheries organization. By utilizing Acquia, we are able to develop and integrate lots of pertinent information from separate internal systems with a beautifully designed interface.

“It has been a great pleasure for Mobomo to develop and deploy a beautiful and functional website to support NOAA fisheries managing this strategic resource. Whether supporting the work to help Alaskan Native American sustainable fish stocks, providing a Drupal-based UI to help fishing council oversight of the public discussion of legislation, or helping commercial fishermen obtain and manage their licenses, is honored help NOAA Fisheries execute its mission.” – Shawn MacFarland, CTO of Mobomo 

More than 100 submissions were received from Acquia customers and partners, from which 15 were selected as winners. Nominations that demonstrated an advanced level functionality, integration, performance (results and key performance indicators), and overall user experience advanced to the finalist round, where an outside panel of experts selected the winning projects.

“This year’s Acquia Engage Award nominees show what’s possible when open technology and boundless ambition come together to create world-class customer experiences. They’re making every customer interaction more meaningful with powerful, personalized experiences that span the web, mobile devices, voice assistants, and more,” said Joe Wykes, senior vice president, global channels at Acquia. “We congratulate Mobomo and NOAA Fisheries and all of the finalists and winners. This year’s cohort of winners demonstrated unprecedented evidence of ROI and business value from our partners and our customers alike, and we’re proud to recognize your achievement.”

“Each winning project demonstrates digital transformation in action, and provides a look at how these brands and organizations are trying to solve the most critical challenges facing digital teams today,” said Matt Heinz, president of Heinz Marketing and one of three Acquia Engage Award jurors. Sheryl Kingstone of 451 Research and Sam Decker of Decker Marketing also served on the jury.

About Mobomo

Mobomo builds elegant solutions to complex problems. We do it fast, and we do it at a planetary scale. As a premier provider of mobile, web, and cloud applications to large enterprises, federal agencies, napkin-stage startups, and nonprofits, Mobomo combines leading-edge technology with human-centered design and strategy to craft next-generation digital experiences.

About Acquia

Acquia provides a cloud platform and data-driven journey technology to build, manage and activate digital experiences at scale. Thousands of organizations rely on Acquia’s digital factory to power customer experiences at every channel and touchpoint. Acquia liberates its customers by giving them the freedom to build tomorrow on their terms.

For more information visit www.acquia.com or call +1 617 588 9600.

###

All logos, company and product names are trademarks or registered trademarks of their respective owners.

Oct 23 2018
Oct 23

PHP 5.6 will officially be no longer supported through security fixes on December 31, 2018. This software has not been actively developed for a number of years, but people have been slow to jump on the bandwagon. Beginning in the new year, no bug fixes will be released for this version of PHP. This opens the door for a dramatic increase in security risks if you are not beginning the new year on a version of PHP 7. PHP 7 was released back in December 2015 and PHP 7.2 is the latest version that you can update to. PHP did skip over 6; so don’t even try searching for it.

Drupal 8.6 is the final Drupal version that will support PHP 5.6. Many other CMS’s will be dropping their support for PHP 5.6 in their latest versions as well. Simply because it is supported in that version does not mean that you will be safe from the security bugs; you will still need to upgrade your PHP version before December 31, 2018. In addition to the security risks, you have already been missing out on many improvements that have been made to PHP.

What Should You Do About This?

You are probably thinking “Upgrade, I get it.” It may actually be more complicated than that and you will need to refactor. 90-95% of your code should be fine. The version your CMS is may affect the complexity of your conversion. Most major CMS’s will handle PHP 7 right out of the box in their most recent versions.

By upgrading to a version of PHP 7, you will see a variety of performance improvements; the most dramatic being speed. The engine behind PHP, Zend Technologies, ran performance tests on a variety of PHP applications to compare the performance of PHP 7 vs PHP 5.6. These tests compared requests per second across the two versions. This relates to the speed at which code is executed, and how fast queries to the database and server are returned. These tests showed that PHP 7 runs twice as fast and you will see additional improvements in memory consumption.

How Can Mobomo Help?

Mobomo’s team is highly experienced, not only in assisting with your conversion, but with the review of your code to ensure your environment is PHP 7 ready.  Our team of experts will review your code and uncover the exact amount of code that needs to be converted. There are a good number of factors that could come into play and affect your timeline. The more customizations and smaller plugins that your site contains, the more complex your code review and your eventual conversion could be. Overall, depending on the complexity of the code, your timeline could vary but this would take a maximum of 3 weeks.

Important Things to Know:

  1. How many contributed modules does your site contain?
  2. How many custom modules does your site contain?
  3. What does your environment look like?
Sep 06 2018
Sep 06


Full name


Email


Phone number


Company


Location


Website


Project type


Estimated budget


Tell us about your project or idea

SUBMIT

Aug 30 2018
Aug 30


Full name


Email


Phone number


Company


Location


Website


Project type


Estimated budget


Tell us about your project or idea

SUBMIT

Aug 30 2018
Aug 30


Full name


Email


Phone number


Company


Location


Website


Project type


Estimated budget


Tell us about your project or idea

SUBMIT

Aug 28 2018
Aug 28


Full name


Email


Phone number


Company


Location


Website


Project type


Estimated budget


Tell us about your project or idea

SUBMIT

Apr 12 2018
Apr 12


Full name


Email


Phone number


Company


Location


Website


Project type


Estimated budget


Tell us about your project or idea

SUBMIT

Apr 10 2018
Apr 10


Full name


Email


Phone number


Company


Location


Website


Project type


Estimated budget


Tell us about your project or idea

SUBMIT

Mar 28 2018
Mar 28

Part 1:

When it comes to considering what is the best CMS for a website, most don’t know up from down or Drupal from WordPress.  At Mobomo, we consider ourselves Drupal experts and have guided many of our clients through a Drupal migration. Drupal is a content management system that is at the core of many websites.  Drupal defines itself as “an open source platform for building amazing digital experiences.” These simple Drupal terms, or taxonomies, make it sound easy, but it can, in fact, be very confusing. Listed below are some popular terms defined to help make the start of the migration process what it should be, simple and easy:

Key Terms:

  1. Taxonomy – this is the classification system used by Drupal. This classification system is very similar to the Categories system you’ll find in WordPress.
  2. Vocabularies – a category, or a collection of terms.
  3. Terms – items that go into a vocabulary.
  4. Tags – this is a generic way to classify your content and this is also the default setting when you first begin.
  5. Menus – these refer both to the clickable navigation elements on a page, as well as to Drupal’s internal system for handling requests. When a request is sent to Drupal, the menu system uses the provided URL to determine what functions to call.  
    • There are 4 types:
      • Main
      • Management
      • Navigation
      • User
  6. Theme – this refers to the look and feel of a site and it is determined by a combined collection of template files, in addition to configuration and asset files.  Drupal modules define themeable functions which can be overridden by the theme file.  The header, icons, and block layout are all contained within a theme
  7. Content-Type – Every node, see below for definition, belongs to a content type.  This defines many different default settings for nodes of that type.  Content Types may have different fields, as well as modules may define their own content types.
  8. Fields – These are elements that can be attached to a node or other Drupal entities. Fields typically have text, image, or terms.
  9. Node – A piece of content in Drupal that has a title, an optional body, and perhaps other fields. Every node belongs to a particular content type (see above), and can be classified using the taxonomy system. Examples of nodes are polls and images.
  10. Views – This refers to a module that allows you to click and configure the interface for running database queries. It can give the results in many formats.
  11. Views Display – A views display is created inside of a view to show the objects fetched by the view in a variety of ways.
  12. Module – A code that extends Drupal features and functionality. Drupal core comes with required modules, some of which are optional. A large number of “contrib,” or non-core, modules are listed in the project directory.
    • Core- has features that are available within Drupal by default
    • Custom- a module that is custom developed for a purpose that may not be available within the core system.  
    • Contributed- A module that is made available to others within the Drupal community after it was created as a custom module. There are more than 40,000 modules available today.

See Part 2 and Part 3 for more.  Any other questions? Check out Drupal.org!

Aug 02 2017
Aug 02


Full name


Email


Phone number


Company


Location


Website


Project type


Estimated budget


Tell us about your project or idea

SUBMIT

Aug 01 2017
Aug 01


Full name


Email


Phone number


Company


Location


Website


Project type


Estimated budget


Tell us about your project or idea

SUBMIT

Jul 31 2017
Jul 31


Full name


Email


Phone number


Company


Location


Website


Project type


Estimated budget


Tell us about your project or idea

SUBMIT

May 24 2017
May 24

WordPress and Drupal

President of Mobomo, Ken Fang, recently sat down with Clutch for a Q and A about all things WordPress and Drupal.

What should people consider when choosing a CMS or a website platform?

They should probably consider ease of use. We like open-source because of the pricing, and pricing is another thing they should take into account. Finally, for us, a lot of it revolves around how popular that particular type of technology is. Being able to find developers or even content editors that are used to that technology or CMS is important.

Could you speak about what differentiates Drupal and WordPress from each other?

Both of them are open-source platforms, and they’re probably the most popular CMS’s out there. WordPress is probably the most popular, with Drupal running a close second. Drupal is more popular in our federal space. I think the main difference is that WordPress started off more as a blogging platform, so it was typically for smaller sites. Whereas Drupal was considered to be more enterprise-grade, and therefore a lot of the larger commercial clients and larger federal clients would go with Drupal implementation.

They’ve obviously both grown a lot over the years. We’re now finding that both of the platforms are pretty comparable. WordPress has built a lot of enterprise functionality, and Drupal has built in a lot more ease of use. They’re getting closer and closer together. We still see that main segregation, with WordPress being for smaller sites, easier to use, and then Drupal for more enterprise-grade.

Could you describe the ideal client for each platform? What type of client would you recommend each platform for?

Definitely on the federal side, Drupal is a much more popular platform. Federal and enterprise clients should move to the Drupal platform, especially if they have other systems they want to integrate with, or more complex workflow and capability. WordPress we see much more on the commercial side, smaller sites. The nice thing about WordPress is that it’s pretty quick to get up and running. It’s a lot easier for the end user because of its limited capability. If you want to get something up more cost-effectively, that’s pretty simple, WordPress is a good way to go.

Could you speak about the importance of technical coding knowledge when building a website on either platform, from a client’s perspective?

Most of these main CMS’s are actually built in PHP, and most of them have a technology stack that requires different skillsets. So, on the frontend side, both of them require theming. It’s not only knowing HTML, CSS, and JavaScript, but it’s also understanding how each of the content management systems incorporate that into a theme. You usually start off with a base theme, and then you customize it as each client wants. As such, you need either WordPress or Drupal themers to do that frontend work. For any backend development, you do need PHP developers. For Drupal, it’s called modules. There are open-source modules that people contribute that you can just use, you can customize them, or you can even build your own custom modules from scratch. For WordPress, they’re called plugins, but it’s a very similar process. You can incorporate a plugin, customize it, or write your own custom plugin.

In between all of this, because it is a content management framework and platform, there are site builders or site configurators. The nice part about that is that you can literally fire up a Drupal website and not have to know any PHP coding or whatever. If you’re just doing a plain vanilla website, you can get everything up and running through the administrative interface. A Drupal or WordPress site builder can basically do that, provided they are savvy with how the system actually works form an administration standpoint. So, those are the technical skills that we typically see, that clients would need to have. In many cases, we’ll build out a website and they’ll want to maintain it. They’ll need somebody in-house, at least a Drupal site builder or a themer, or something like that.

Do you have any terms or any codes that clients should be aware of or should know prior to trying to launch a project in Drupal or WordPress?

PHP is definitely the main language they should know, and then HTML, JavaScript, and CSS for the frontend stuff. Drupal 8 has some newer technologies. Twig is used for theming as an example, so there’s a set of technologies associated with Drupal 8 they need to know as well.

Is there a particular feature of WordPress or Drupal that impressed you and potential users should know about?

I’m going to lean a little more into the Drupal world because a lot of people are starting to move to Drupal 8, which was a big rewrite. There are now a lot of sites starting to use that in production. They did quite a bit of overhaul on it. It is more API-driven now. Everything you do in Drupal 8 can be published as a web service. You can even do a lot of what they call headless Drupal implementations. That means you can use some of the more sexy frameworks, like Angular or React, to build out more intricate frontends, and still use Drupal as a CMS, but really as a web service.

Are there any features of the two platforms that could be improved to make it a better CMS?

I think they’re pretty evolved CMS’s. On both of them, platforms are getting into place to build right on the CMS’s without having to install them. Platforms like Acquia, WordPress.com, Automaticc. These platforms are profitable because from an enterprise standpoint right now, it is hard doing multisite implementations at that scale, managing all of the architecture, and stuff like that. From a technical standpoint, if you get into an enterprise, clients who says they want to be able to run a thousand sites on a single platform, that becomes difficult to do from a technical perspective. They both have the ability to support multisite implementations, but advancements in there to make those types of implementations easier to use and deploy would be a significant advancement for both platforms.

What should companies and clients expect in terms of cost for setting up a website, maintaining it, and adding new features?

For a very basic site, where you’re just taking things off the shelf – implementing the site with a theme that’s already built, and using basic content – I would say a customer can get up and running anywhere from two to six weeks, $20,000-30,000. Typically, those implementations are for very small sites. We’ve seen implementations that have run into the millions, that are pretty complex. These are sites that receive millions of hits a day; they have award-winning user experience and design, custom theming, integration with a lot of backend systems, etc. Those can take anywhere from six to twelve months, and $500,000 to $1 million to get up and running.

Can you give some insight into SEO and security when building a website?

The nice thing about Drupal and WordPress is that there are a lot of modules and plugins that will manage that, from Google Analytics to HubSpot, all sort of SEO engines. You can pretty much plug and play those things. It doesn’t replace the need for your traditional content marketing, analyzing those results and then making sure your pages have the appropriate content and keywords driving traffic into them, or whatever funnel you want. All your analytic tools usually have some sort of module or plugin, whether it’s Google, Salesforce, Pardot, or whatever. A lot of those things are already pretty baked in. You can easily get it up and running. That’s the nice thing about the SEO portion of it.

The other nice thing about it being open-source is that there are constant updates on sort of security. Using these CMS systems, because they tie to all the open-source projects, if you download a module, anytime there’s a security update for it, you’ll get alerted within your administrative interface. It’s usually just a one-click installation to install that upgrade for security patches. That’s nice, as you’re literally talking hundreds of thousands of modules and millions of users. They’re usually found and patched pretty quickly. As long as you stay on that security patching cycle, you should be okay. You could still do stupid stuff as an administrator. You could leave the default password, and somebody could get in, so you still have to manage those things. From a software perspective, as long as you’re using highly-active, contributed modules and the core, security patches and findings come out pretty regularly on those things.

As a company, because we do stuff with some regulated industries like banking and federal agencies, we usually have to go a level above on security. Take a WordPress site or whatever, we would actually remove that form the public so it couldn’t be hit from outside of a VPN or internal network, and then have it publish out actual content and static pages so the outside just doesn’t even connect to the back-end system. That does take some custom programming and specialty to do. Most people just implement your regular website with the appropriate security controls, and it’s not a big issue.

Are there any additional aspects of building a website or dealing with a CMS that you’d like to mention? Or any other CMS platforms you’d like to give some insight on?

For us, because we are such a big mobile player, we typically would say that, whatever you build, your CMS, obviously focus on user experience. Most people are doing a good job of that these days. One of the areas that is still a little weak is this whole idea of a content syndication. There’s still a big push where the content editors build webpages, and they want to control the layout, pages, etc. They get measured by the number of visitors to the website and all that stuff. I’m not saying that’s not important; however, we’re trying to push an idea of a web service content syndication. So, how you use these CMS’s to do that, so your content gets syndicated worldwide. It doesn’t necessarily have to be measured by how many people hit your website. It should be measured by the number of impressions.

For instance, with the work we’ve done at NASA, they announced the TRAPPIST-1 discovery of potential Earth-like planets. That drove a huge amount of traffic to the website, probably close to nine million hits that day. If you look at the actual reach of that content and NASA’s message – through the CMS’s integration with social media, with API’s that other websites were taking, with Flickr, that sort of thing – it hit over 2.5 billion social media posts. That’s an important thing to measure. How are you using your content management system more as a content syndication platform, opposed to just building webpages? USGS has also done a really solid job of this ‘create once, publish everywhere’ philosophy. I think people should be looking at content management systems as content management systems, not as website management systems.

We ask that you rate Drupal and WordPress on a scale of 1 – 5, with 5 being the best score.

How would you rate them for their functionalities and available features?

Drupal – 5 – We have a bias towards Drupal because it’s more enterprise-grade. It fits what a lot of our clients need. I think they’ve come a long way with both the 7 and 8 versions and have really brought down the cost of implementation and improved the ease of use.

WordPress – 4 – I think it’s fantastic. It’s obviously extremely popular and very easy to set up and use. I give it a 4 and not a 5 because it’s not as easy to extend to enterprise-grade implementations. For some functionalities, you still have to dig into core, and nobody wants to be modifying core modules.

How would you rate them for ease of use and ease of implementation?

Drupal – 4.5 for ease of use, because it’s not as easy as WordPress, and 4.5 for ease of installation.WordPress – 5 for ease of use, and 4 for ease of implementation. If you want to go out of the box, it’s a little more difficult. Configuring multisite is a real difficulty in WordPress.

How would you rate them for support, as in the response of their team and the helpfulness of available online resources?

Drupal – 4

WordPress – 4

Being open-source projects, there are a ton of people contributing. They’re very active, so you usually can get your answers. In many cases, to get something embedded into core, it does have to get reviewed by the organization, which is a bunch of volunteers for the most part. Because of that, it does take a while for things to get embedded.

How likely are you to recommend each platform for a client?

Drupal – 5

WordPress – 5

I think they’re the strongest CMS’s out there for the price.

How likely are you to recommend each platform for a user to build their own DIY website?

Drupal – 3

WordPress – 4  

If you’re going to build your own website, and you have zero technical skills, you might want to look into a Weebly, Wix, or something like that. There is a need to know how to do site-building if you use Drupal or WordPress. Somebody has to configure it and understand it.

How would you rate your overall satisfaction collaborating with each platform?

Drupal – 5

WordPress – 5

We implement on both of them regularly, and they’re really great. They solve the need for a lot of our clients to migrate from much more expensive legacy systems.

Clutch.co interview: https://clutch.co/website-builders/expert-interview/interview-mobomo-dru...

Jan 18 2017
Jan 18

Magnifying glass over Google search bar

A few tweaks and modules later, Drupal has easy to build SEO friendly websites. To achieve it, there are two sides involved:

  • Developers and designers will apply technical enhancements (making a good use of the core and contributing modules, write semantic and valid HTML prototypes).
  • Clients create good content.

Below are a few things you can do to improve SEO on your website just by working with content (texts, images, files).

Text content

Title

When you create a page on a website, the page title you decide on is used in several different places so it’s important to get it right and make sure it’s clear and useful.

Page title will appear:

  • On the page (usually as h1 heading)
  • In the main menu
  • In the url page
  • On listings linking to the page (from your site and also from social media sources)

All of above are picked up by search engines, so it’s important to include relevant keywords in your titles.

Page titles should be clear and descriptive. If titles are too long to fit into a menu, or if you want to have a different menu link then the page title you could use the ‘menu link title’ field to display.

Drupal has a feature that allows you to specify a ‘menu link title’, you can find this at the bottom of the edit page form in the “menu settings” tab > “Menu link title”.

Please note, spaces in titles will be converted into dashes in the url, so do not use  dashes in titles. Maybe you could replace dashes with a colon to avoid “double dashed” urls.

Meta description tag

The meta description is the excerpt that displays under the page title and site name on the search engine’s results page. If it’s not filled in, the body copy will be used instead. This may lead to a cut off excerpt, but you could manually fill the ‘meta description’, or use the ‘summary’ field to avoid it.

In Drupal, the body text field on a page is accompanied by a summary field. It is important to fill this in. Sometimes, it’s used on the site as a teaser to promote users to click the page and read the full copy.  Remember, it will be picked up as the meta description for the page if no meta description was manually added.

Headings

When adding or editing content to the Body, in the WYSIWYG toolbar at the top of the text field, you’ll see a dropdown with a few headings options. Commonly, you will have a choice of heading 2, heading 3, heading 4, and normal/paragraph.

When starting a new section on a page, use one of the headings defined in the dropdown. Headings are picked up by search engines and will contribute to your search rank.

Besides helping out with SEO, headings are designed to draw the reader’s eye so that they are able to find what they were looking for much easier. They are also useful for good content structure if the copy is long.

For SEO purposes you should only have the h1 tag used once on a page. H1 is commonly the page title.

Anchor Texts

This is the text that links to something else. For example, if I would like to point you to the about us page, then the anchor text is the (commonly) blue text you see.

Search engines compare the text written in the anchor to the link “behind” it. So if they anchor text includes keywords or phrases that will add value over time.

Anchor text is read by screen readers so it plays an important role in complain with accessibility requirements.

Please make sure that your anchor text is also descriptive.

Length

As a general rule the copy should be as long as it needs to be. Online content is not read in the same way as printed content, so keep things concise, clear and straightforward bearing in mind the user experience, not only the SEO.

As a reference, some SEO advisers recommend around 200 words as a minimum for page copy.

Files (Images, documents)

Filenames

Filenames should follow the following convention to eliminate technical problems and to improve SEO.

  • Use full words
  • Replace spaces with dashes
  • Do not use special characters, just letters, numbers and dashes.

Filenames should be also descriptive.

Some good examples are: mobomo-logo-red.jpg, partnership-agreement-2017.pdf

Reference: https://support.google.com/webmasters/answer/114016?hl=en

Alt Text

This is a descriptive text that appears if an image cannot be loaded and is also used by screen readers. So here SEO is directly implicated with Accessibility. It’s especially important if the image also acts as a link.

This text should clearly describe the image.

Filesize

Main thing you should know about files in web: Large file sizes slow down page load.

Users tends to abandon pages if the load time is greater than 3 seconds. So search engines “don’t like” to direct users to slow sites.

So, you can help to keep the page speed to a minimum by making sure the files you add are light.

A general rule is to try to keep images filesize below 70k, this sometimes is hard especially with large images (banners for example), so let’s say images should not ever be larger than 600k.  

Format

All images should be saved in jpeg format.

Documents should be saved as pdf or doc (for editable documents).

Other

404 and 403 pages

We are going to set up these pages for you, but it’s important that you fill them with accurate content given your audience. For example, you could add a link to your Homepage here or to an Archive / Search page to help your audience finding what they were looking for.

Please note these points listed above are changes you can apply without any tech support, they are just Content edits you can apply by yourself when adding / updating content for your website.

Here’s a few SEO related Drupal modules that makes developers lives easier.

Oct 24 2016
Oct 24

code

You know the old saying: “This is how the world ends: not with a bang, but with a misplaced DROP TABLE.” Working directly with Drupal 7’s database is an arduous task at best.  It’s a sprawling relational system and it uses many space and memory saving tricks to be as speedy as possible.  Thankfully, there is a robust system of functions built into Drupal to help you change almost any setting from code–perfect if you want to automate changes upstream and features doesn’t do it for you.  Let’s go over a situation in which you may have been utilizing some of these functions.

Let’s say you finished your product (congratulations!), launched, and are onto fixing bugs and planning exciting new features for the future.  You’re knocking out bugs left and right like some high-flying Drupal ninja and you discover that using a field collection with conditional fields causes the field collection data to not save and all of your metadata is getting erased when certain conditions are fired.  With Cthulhu’s hot breath on your neck, you talk to the client and realize a ray of hope: you don’t actually need a field collection there, a normal set of Drupal fields will do.  How do we go about creating the new fields, copying existing data, and deleting the old fields?

The first thing we do is create the new fields and attach them.  For this, we’ll need two functions: ‘field_create_field()’ and ‘field_create_instance()’.  Both of these take an array of settings: field_name and type are we need for creating the field (also cardinality if you want to have multiple values for the field), field_name, entity_type, and bundle are required for creating the instances, though you will likely also want label, or it will otherwise default to the machine name.  So, we should have something that looks like this:

$name = [
  ‘field_name’ => 'photographer_name',
  ‘type’ => ‘text’,
];
field_create_field($name);

$instance = array(
  'field_name' => $name['field_name'],
  'entity_type' => node,
  'bundle' => article,
  'label' => 'Name',
);

field_create_instance($instance);

If you go check out node/add/article, you should see your new text field there.  Congrats!  Next, we need to get the data from the old fields and copy it into our new field.  For this, we’ll rely on the nifty function 'entity_load()'.  This takes two arguments, bundle name and an array of ids.  Since we are getting field collection items, we know the bundle name is ‘field_collection_item’.  We’ll need the IDs, but we’ll also need the field collection value that references the fields in each collection for later, so we’ll get them both at once.  It might be tempting to use 'entity_load()' to get them, but in this case you are quite safe using straight SQL, which also happens to be significantly faster.  That looks like this:

$entity_ids = array();
$field_collection_ids = array();
// Select the field collection id and the attached entity id from the db.
$query = db_query('SELECT field_producer_value, entity_id FROM field_data_field_producer');
$results = $query->fetchAll();
// Separate the ids
foreach ($results as $result) {
  $field_collection_ids[] = $result->field_scald_producer_value;
  // We need to reference the entity ID by the field collection value for simplicity later
  $entity_ids[$result->field_scald_producer_value] = $result->entity_id;
}
// It’s possible that you might get duplicate Field Collection IDs, so we make sure they are all unique
$field_collection_ids = array_unique($field_collection_ids);
// Load all of the field collection entities.
$field_collection_results = entity_load('field_collection_item', $field_collection_ids);

Now that we have all of the entity ids and field collection ids, we can get to the fun part: copying data! (You know you have been doing this too long when that is exciting.) What we want to do is loop through the field collection ids, load the the entity (that has the new field on it) by the id associated with the collection, copy the data from the collection to the new field, and save.  It seems like a lot, but it’s fairly simple:

foreach ($field_collection_ids as $field_collection_id) {
  // Load the entity the field collection is attached to
  $entity = entity_load('node', array($entity_ids[$field_collection_id]));
  // Copy the data from the collection field to the new field
  $entity[$entity_ids[$field_collection_id]]->photographer_name['und'][0]['value'] =
  $field_collection_results[$field_collection_id]->field_producer_name['und'][0]['value'];
  // Save!
  entity_save('node', $entity[$entity_ids[$field_collection_id]]);
}

A word of warning: depending on how many entities you are processing, this could take a long time.  As of Drupal 7.34, there is a memory leak in entity_save()--this means that each save will take slightly longer than the last. This is not a problem if you have only a few hundred fields, but when you get up into five and six digits, this script will take many hours. At that point, unless you have the time (and/or can run the script as a process in the background), you might want to consider investigating other options.

Okay, so the data is copied, the nodes are saved, and the elder gods have hit the snooze button.  Last thing you have to do is delete the old field.  We’re not going to do that, at least not yet. Instead, we’re going to delete the instances of the fields.  This will preserve the old field collection data, but remove the fields from the edit forms. This way, if something goes wrong, you don’t lose the data in the old fields and can try again if needed. You can go back at a later time, if you wish, after you have confirmed that everything is correct and delete the fields. Luckily, this is the easy part:

$instance = array(
  'field_name' => 'field_scald_producer',
  'entity_type' => node,
  'bundle' => article
);
field_delete_instance($instance);

And that’s it, crisis averted!  You no longer lose data and no longer have to worry about supernatural madness and death!  All you need to do now is run your script upstream with 'drush php-script' and watch the magic.

This sort of scripting can be daunting at first glance, but Drupal’s rich entity API can keep you from pulling out your hair or inadvertently causing an otherworldly alien intelligence from rising from the deep.  There are many more functions to take advantage of, and just about anything you can set with a click in the interface you can set in code, perfect for automation or locked down production environments.

Happy Drupaling !

Sep 26 2016
Sep 26

drupal-government-sites

Over the last ten years, the government has been gradually migrating to Drupal as their primary content management system, but for what reason? Well there are a few but lets talk through what Drupal is as well as the systems that were used prior.

Drupal is a free, open source software that can be used by individuals or groups of users, even those who may lack technical skills are still able to use– it is easy to create and easier to manage. The application includes a content management system as well as a development framework. It’s flexibility and scalability has made Drupal an industry go to- not to mention, its one of the most secure platforms that exist.

Before Drupal, government websites were all over the map in terms of the technologies and proprietary software that they used. Although there isn’t an official log of government website platforms over time, it is well known that there was never one single content management systems (CMSs) to rule them all.

A quick rundown of some of the past CMSs used by the government include the following:

  • Sharepoint
  • Expression Engine
  • Cascade
  • Percussion
  • CommonSpot

In 2009, WhiteHouse.gov launched it’s new website powered by Drupal CMS scoring a huge win for the open source community and open source advocacy groups. Of course Drupal was well known before the White House made the switch from what may have been Expression Engine. But with such a high profile website being powered by a community driven, open source platform, other government agencies starting paying attention.  

With each passing year, the list of Drupal government sites grows longer and longer. Not only is the federal government using Drupal, but local and state governments have also turned to this powerful open source software to fulfill their needs.

So what makes Drupal attractive for government agencies? Why is an open source platform, such as Drupal, a good option for high level, high security websites? Here are a few reasons why the government has been making their shift from other content management systems to Drupal.

Financially Attractive

Proprietary software will definitely become a drain of project dollars faster than you think. When you factor in the updates to the core software, support charges, security patches, modules or plugin updates, Drupal looks very attractive. It’s free and can be maintained for a fraction of the price of comparable proprietary software. For a government entity, this is likely the single most appealing factor.

Support

The open source community for Drupal is second to none. With so many Drupal developers around the world tackling a wide variety of tasks, it’s very easy to find a post in the Drupal.org forum that may point you in the right direction. And if you can’t find the solution, the community is fantastic at helping others find a solution. The more developers that address a problem, the stronger and more well developed the software becomes.

You own the code

Proprietary software is mostly closed and the code is simply not open for all to see. This makes the ability to audit the code virtually impossible. At this point, you’d have no choice but to trust the software provider’s word on their products solid security. Drupal’s code is open and can be viewed and audited. It’s yours. You own it.

Flexibility

Drupal can handle all kinds of projects ranging from large scale, resource intensive projects such as a documents database to intranets or individual personal websites. It can be exactly what you want it to be. Out of the box, you have the capability to create content types and add fields of your choosing. And with the ability to extend modules and themes, the possibilities are endless. Proprietary software is not expandable or flexible without cost.

Reliability

Drupal’s software is peer reviewed and community driven. Modules are documented and reviewed prior to them being listed on Drupal.org’s module list. Open source software such as Linux and Apache have proven themselves to be hardened and reliable in demanding situations. 

We have migrated a few government websites to Drupal, check out the work we have done for NASA and USGS.

Aug 09 2016
Aug 09

drupal-web-developer-becoming-successful

Years ago, I discovered what it was that I was missing in web development. I know we have talked all about Drupal, things to discuss before migrating to Drupal 8, and a guide for Drupal project managers but what makes a successful Drupal web developer?

The first Drupal website I developed was a combination of downloading modules, hacking themes, and generally having no idea what I was doing. But it was fun and I was learning what Drupal development was about. I recall it was just after Drupal 6 was launched which seems like it was eons ago.

Looking back, I wish I could go back and yell at the developer I was then for not doing things a better way. Knowing what I know now, my development skills have dramatically improved and I try very hard to stay within the Drupal Best Practices documentation.

Here are some of my tips for being a successful Drupal web developer.

Don’t hack core!

This is basically one of the cardinal rules of Drupal development. Hacking core files of Drupal means updating the site will likely break everything. Also hacking modules means that you won’t be able to update them for bug fixes and troubleshooting.

Learn to use the Drupal API

Eventually, you’ll find the need to write functions and do crazy things with your code. The fun part of developing for Drupal is that the API rocks. I mean, really rocks. There are so many cool functions and code snippets for doing things that would otherwise take you forever to write/code yourself. Learn to use things like node_load(), path_to_theme(), node_save(). These three functions are simple but extremely useful. Use case: I recently wrote a module that went through 20,000 nodes for a Drupal website, retrieved data from another website using their API, brought that data back to my project site, then saved the data using node_save(). Doing that by hand, no. It would take weeks on top of weeks. The script I wrote took 90 seconds. Boom. Drupal Magic.

Contribute to the Drupal Community

Whether you contribute code, testing, or bug reports, Drupal thrives off its community. This is something that I failed at…for a while. I simply felt that I wasn’t good enough to contribute to discussions or code. However, something as simple as reporting a bug is so useful to the community. If you’ve used a module and had an issue with it’s basic usage, report it. Search for the bug you’re reporting first, it could be that it’s a duplicate issue. Please please please search for the issue first. Don’t just be a lazy Googler.

Learn Version Control

This may be one of the most valuable takeaways from this post. Version control isn’t just used by the Drupal developer community, it’s used by coders everywhere for a wide variety of things. Personally, I use Git for version control, but there are many other options. Some people find it very daunting to do things in Command Line or Terminal (that thing that looks like MS-Dos for those that don’t know). It’s really very simple though. If you learn version control, your value to a company will go up significantly. I promise. Here are a few sites that might help:

Learn Helpful Shortcuts

For a long long time, when I setup a Drupal website, there was a lot of downloading, decompressing files, placing modules and themes in the correct place, then I could finally start to work on the project. Enter Drush. If you are using Command Line/Terminal – Drush will be your best friend. Using Drush, you can download Drupal, setup themes and install them, download modules and install them, update Drupal, backup your site, and a slew of other things using very basic commands. I can tell you it has cut down my setup time to just a few minutes. Read up on Drush here.

Setup Local Development Environments

Gone are the days where you had to have a server to work on a website. There are some very easy to setup tools that you can use to setup your site on your desktop or laptop so you can work on it anywhere without the internet. I once worked on a local website for 2 hours while my train was stuck in a cellular dead zone in Virginia. Try using MAMP to setup your local environment so you can get back to coding and work on your sites from anywhere…including the middle of nowhere!

Attend Conferences and Meetups

Speaking for myself, I learned Drupal web development from a hand full of very gifted developers over a long period of time. It never hurts to find a developer willing to share some knowledge with you. The best resource to learn Drupal is going to conferences and meetups to hear people speak on a wide variety of topics. Maybe you can even take some training. Drupal Con is a big one. My favorite conference was the 2011 Do It With Drupal (DIWD) conference by Lullabot. My mind was blown every 60 seconds. I came back understanding more about development skills, Drupal development, and the future of the web. Here are some highlights from that conference.

Don’t be Closed Minded to Other Technologies

I love Drupal. We know this. But I also love WordPress. I can hear some developers now: What’s that you say! Traitor! Burn him!

Calm down people. Being a web developer doesn’t mean I only want to do things my way or I only want to use one technology to do things. You need to learn when and where specific software and tools will work best. If someone says to me “I want a website, but I’m not that great at understanding computers, but I do want to write blog posts and post them,” then I’m likely gonna recommend WordPress. But if someone comes to me and said, “I want a custom website where I can load in videos, pictures, and other content. I also want to sell things, etc,” then I’d likely recommend Drupal.

Having said that, there are other options outside of Drupal and WordPress that I’ve also used from time to time. Flat-file CMS’ are popping up everywhere. they are lightweight and easy to setup. One of my favorites is GetSimple. Another one is Pico.

Hopefully this will help someone figure out what they need to learn to be more successful at Drupal development. As always, feel free to contact us if you have any questions. We love working on Drupal projects.  

Aug 02 2016
Aug 02

drupal-development-sketch-mockups

Navigating the administrative backend of Drupal can be daunting.  Here are some helpful things to consider while managing a Drupal development project.

Clearing cache

Knowing how to clear cache on Drupal is critical. During the development phase, chances are you will be looking at the site as developers are working simultaneously. Clearing Drupal cache should be the first step in troubleshooting as changes such as theme or module changes might not take place immediately. The easiest way to clear cache from the administration menu is Administration > Configuration > Development > Performance > click on ‘Clear Cache’. If your site uses the admin menu module, a shortcut easily accessible at all times on the top menu bar. So the next time something doesn’t show up as expected, try clearing the cache first!

Basic Drupal terminology

A lot of scary words can be thrown around while describing project requirements and needs. In order to get a better understand of the inner workings of Drupal development, here are some common Drupal terms you should familiarize yourself to.

  1. Node – Pieces of content are known as nodes. They are stored in the database with an unique identifier known as a node ID.
  2. Content Type – Content types are the most basic categorization of nodes. A node’s content type defines what kind of node it will be. Each content type can be assigned a variety of fields and configuration settings. The default ones that Drupal ships with are “article” and “basic page”, but you can create your own as well.
  3. Field – Fields are the datasets that makes up a content type. They define the kind of information you want to be stored within each content type. For example, a Staff content type may consist of a First Name and Last Name fields, while an Article content type could have Body and Description fields.
  4. View – One of the most common way to display aggregate lists of data on the frontend is using the Views module. Views are very powerful as it can define what the end user sees through the use of specific fields, filters, and sorting criterias.
  5. Taxonomy – Taxonomy is the practice of classifying nodes through the use of keywords. A taxonomic structure consists of a vocabulary and its associated taxonomy Terms. A vocabulary is the overarching category made up of sets of terms to while taxonomy terms are the individual pieces.

Be aware of different user permission levels

Keep in mind that what you see while logged in might not reflect what other users might see. A lot of times when a client does not have access to something, it is most likely a permission problem. It is always helpful to have test accounts with various user roles so you can log into them and see exactly what other accounts are seeing.

Expecting manual configuration changes on production is risky
Things can become a bit sticky once a client is needing manual configuration changes made on production environment. If the right processes are not in place, the development environment can get out of sync very quickly. Always note the changes needed and make the changes to all the environments across the board so nothing gets lost. Another way is pulling the production database downstream periodically. You can also use the Features module to capture certain configuration changes so it is committed in the codebase (however, there are limitations to this module).

Jul 28 2016
Jul 28

At Drupal Gov Con one of our sessions was all about third-party APIs in Drupal. Some of the items we discussed were why you need to consume content from third-party APIs is a necessary evil, pros and cons of a few different approaches of consuming third-party content in Drupal, and two big pro tips that make API consumption a lot less headachey. 

Check out Clinton’s complete presentation- what are your thoughts on third-party APIs in Drupal? 


Jul 08 2016
Jul 08

/drupal-8-migration/

First things first, what is Drupal 8? Well, Drupal 8 is the biggest update in Drupal history. It is said to be way easier to create content and every built in theme is responsive design. With over 200 new features, Drupal 8 has made its appearance. Drupal 8 is an improved suite of tools and features not seen in Drupal 7 and can be the application backbone for your projects. A few months ago we discussed how you can benefit from Drupal 8 . But now, let’s talk about migration and things you may want to consider. 

Drupal 8 Migration:

Apple comes out with a new iPhone every how many months? Joking, but we all know that it seems like they are constantly creating a mad rush for people to upgrade to the next best thing. Same is true with Drupal, there is no right or wrong time to migrate to Drupal 8, however, if you want to be up-to-date with the latest cutting edge technology you typically choose to migrate just as you would get the newest version of the iPhone.

Things to consider whenever migrating to Drupal 8:

  • The availability of modules from the community- many of them have not yet been fully converted to Drupal 8.
  • Do you have any custom modules that will have to be ported to Drupal 8?
  • Is your theme available for Drupal 8 or does it need to be ported (converted) to Drupal 8?
  • Does all content need to be migrated? This may be a good time to prune your content.
  • If your site is complex, you may require additional modules, and possibly custom modules to help migrate.

What are your Drupal needs? Feel free to get in touch so we can discuss your next Drupal project.

May 12 2016
May 12

drupal-nasa-website-monitor

A content management system, or CMS, is a web application designed to make it easy for non-technical users to add, edit and manage a website. We use WordPress and Drupal the most for CMS development, but it is all dependent on our clients’ needs. Not only do content management systems help website users with content editing, they also take care of a lot of behind the scenes work.

Whenever it comes to developing a website from scratch, and for a client who wants to be able to manage the site after the launch it is important as a developer to find a tool that the client will be able to use. When we think about web development it’s always better for the client and for the company to find a good content management system or CMS, because it solves problems that you will never have to worry about from the UI of the backend to the front-end wanted features it solves a lot of issues upfront that you will not have to worry about later.  As a website evolves, it will never stay in the final version you delivered to your client, when we develop we need to always think to the site’s future.

WordPress is one of the most popular tools because it is very adaptable. The amount of plugins (solutions to your problems) are endless. Not only does it have great features but it has a friendly UI backend. All of the advantages mentioned lower the development time, which helps the client to lower their costs. In short, WordPress saves time and money! The most recent example is our very own website Mobomo.

Another resource for a CMS is Drupal. Drupal may be a little more difficult to develop with because it can handle bigger sites with much more data and a ton of users but this system is better for newspapers or government sites such as NASA. 

Each CMS will have their own advantages but our first priority is making it adaptable to the client’s needs.

Apr 28 2016
Apr 28


Full name


Email


Phone number


Company


Location


Website


Project type


Estimated budget


Tell us about your project or idea

SUBMIT

Mar 02 2016
Mar 02

drupal-graphic

With over 200 new features, Drupal 8 is officially here! Drupal is one of the world’s favorite open source content management platform.. and it just got even better. Here are some of the ways that Drupal 8 will benefit various groups of people.

Developers:

  • Configuration management – In prior versions of Drupal, most of the configuration was stored in the database.  The problem with this is that it is very difficult to keep track of versions of the configuration when it changes.  The only way to get configuration out of the database was to use a combination of modules such as strongarm and features to export things from the database into code.  This was often time-consuming and error prone.  Now with Drupal 8, configuration management is built-in so that carrying over configuration from development to production is a breeze.
  • Web services – Drupal 8 can now be used as a data source to output content as structured data such as XML or JSON.  This means that Drupal 8 can strictly be used as a back-end while the front-end could be developed completely separate with a framework such as AngularJS or Ember.  In other words “Headless Drupal” capabilities are now built-in instead of requiring various addon modules and lots of custom development.  

Content Editors:

  • Bundled WYSIWYG editor – Drupal 8 is the first version of Drupal to come with a bundled WYSIWYG editor.  Previously it was possible to add one of many different editors into Drupal but the setup was often time consuming and confusing.  Additionally there were so many choices that some users felt lost about which one to choose.  Over time CKEditor has become the most popular WYSIWYG editor for Drupal and now it is included out of the box.
  • In place editing – In addition to having CKEditor bundled in with Drupal 8, the Spark initiative is taking WYSIWYG concept a step further with true in place editing.  This would give editors the ability to change content, menus, etc. directly from the front-end view of the site without having to navigate to an admin page on the back end.  More info about the Spark initiative can be found here:  http://buytaert.net/spark-update-in-line-editing-in-drupal

End Users:

  • Mobile First – Previous versions of Drupal allowed developers to create responsive themes.  However some modules were not 100% compatible with responsive layouts.  Now with Drupal 8 all themes are mobile first which means that all community modules will be compatible with responsive layouts.  Additionally the default Drupal admin theme will be mobile friendly which should improve the experience for editors who want to author content from mobile devices.

Accessibility and Languages – Drupal 8 now has extensive support for accessibility standards including the adoption of many WAI-ARIA practices.  This will make content structures easier to understand for people with disabilities.  In addition to the accessibility improvements Drupal 8 now has multi-lingual support included.  Drupal 8 has the capability to reach more users than any previous version of Drupal.

Feb 11 2016
Feb 11

amazon-web-services-drupal-architecture

Mobomo believes in partnering. Over the years we have partnered with Amazon, IBM, Tracx, and a number of other companies and organizations. We are pleased to announce our recent partnership with the Drupal Association (https://assoc.drupal.org), Drupal has been a major contributor in the community for many years. 

Drupal is an open-source content management system framework used to make many of the websites and applications that you use every day. Drupal has great standard features like easy content authoring, reliable performance, and excellent security. But what sets Drupal apart from other solutions is its flexibility and extensibility; modularity is one of its core principles. Drupal allows you to build the versatile, structured content that is needed for engaging and dynamic web experiences.

We are very pleased to be a part of the Drupal community, since we have developed Drupal solutions for major Federal Government websites in the past this partnership only makes sense. We are excited about our partnerships and look forward to building bigger and better things as a supporting partner of Drupal.org. Be sure to visit our Drupal page.

Jul 15 2015
Jul 15

Regardless of industry, staff size, and budget, many of today’s organizations have one thing in common: they’re demanding the best content management systems (CMS) to build their websites on. With requirement lists that can range from 10 to 100 features, an already short list of “best CMS options” shrinks even further once “user-friendly”, “rapidly-deployable”, and “cost-effective” are added to the list.

There is one CMS, though, that not only meets the core criteria of ease-of-use, reasonable pricing, and flexibility, but a long list of other valuable features, too: Drupal.

With Drupal, both developers and non-developer admins can deploy a long list of robust functionalities right out-of-the-box. This powerful, open source CMS allows for easy content creation and editing, as well as seamless integration with numerous 3rd party platforms (including social media and e-commerce). Drupal is highly scalable, cloud-friendly, and highly intuitive. Did we mention it’s effectively-priced, too?

In our “Why Drupal?” 3-part series, we’ll highlight some features (many which you know you need, and others which you may not have even considered) that make Drupal a clear front-runner in the CMS market.

For a personalized synopsis of how your organization’s site can be built on or migrated to Drupal with amazing results, grab a free ticket to Drupal GovCon 2015 where you can speak with one of our site migration experts for free, or contact us through our website.

_______________________________

SEO + Social Networking:

Unlike other content software, Drupal does not get in the way of SEO or social networking. By using a properly built theme–as well as add-on modules–a highly optimized site can be created. There are even modules that will provide an SEO checklist and monitor the site’s SEO performance. The Metatags module ensures continued support for the latest metatags used by various social networking sites when content is shared from Drupal.

SEO Search Engine Optimization, Ranking algorithm

E-Commerce:

Drupal Commerce is an excellent e-commerce platform that uses Drupal’s native information architecture features. One can easily add desired fields to products and orders without having to write any code. There are numerous add-on modules for reports, order workflows, shipping calculators, payment processors, and other commerce-based tools.

E-Commerce-SEO-–-How-to-Do-It-Right

Search:

Drupal’s native search functionality is strong. There is also a Search API module that allows site managers to build custom search widgets with layered search capabilities. Additionally, there are modules that enable integration of third-party search engines, such as Google Search Appliance and Apache Solr.

Third-Party Integration:

Drupal not only allows for the integration of search engines, but a long list of other tools, too. The Feeds module allows Drupal to consume structured data (for example, .xml and .json) from various sources. The consumed content can be manipulated and presented just like content that is created natively in Drupal. Content can also be exposed through a RESTful API using the Services module. The format and structure of the exposed content is also highly configurable, and requires no programming.

Taxonomy + Tagging:

Taxonomy and tagging are core Drupal features. The ability to create categories (dubbed “vocabularies” by Drupal) and then create unlimited terms within that vocabulary is connected to the platform’s robust information architecture. To make taxonomy even easier, Drupal even provides a drag-n-drop interface to organize the terms into a hierarchy, if needed. Content managers are able to use vocabularies for various functions, eliminating the need to replicate efforts. For example, a vocabulary could be used for both content tagging and making complex drop-down lists and user groups, or even building a menu structure.

YS43P

Workflows:

There are a few contributor modules that provide workflow functionality in Drupal. They all provide common functionality along with unique features for various use cases. The most popular options are Maestro and Workbench.

Security:

Drupal has a dedicated security team that is very quick to react to vulnerabilities that are found in Drupal core as well as contributed modules. If a security issue is found within a contrib module, the security team will notify the module maintainer and give them a deadline to fix it. If the module does not get fixed by the deadline, the security team will issue an advisory recommending that the module be disabled, and will also classify the module as unsupported.

Cloud, Scalability, and Performance:

Drupal’s architecture makes it incredibly “cloud friendly”. It is easy to create a Drupal site that can be setup to auto-scale (i.e., add more servers during peak traffic times and shut them down when not needed). Some modules integrate with cloud storage such as S3. Further, Drupal is built for caching. By default, Drupal caches content in the database for quick delivery; support for other caching mechanisms (such as Memcache) can be added to make the caching lightning fast.

cloud-computing

Multi-Site Deployments:

Drupal is architected to allow for multiple sites to share a single codebase. This feature is built-in and, unlike WordPress, it does not require any cumbersome add-ons. This can be a tremendous benefit for customers who want to have multiple sites that share similar functionality. There are few–if any–limitations to a multi-site configuration. Each site can have its own modules and themes that are completely separate from the customer’s other sites.

Want to know other amazing functionalities that Drupal has to offer? Stay tuned for the final installment of our 3-part “Why Drupal?” series!

Jul 08 2015
Jul 08

why drupal

Regardless of industry, staff size, and budget, many of today’s organizations have one thing in common: they’re demanding the best content management systems (CMS) to build their websites on. With requirement lists that can range from 10 to 100 features, an already short list of “best CMS options” shrinks even further once “user-friendly”, “rapidly-deployable”, and “cost-effective” are added to the list.

There is one CMS, though, that not only meets the core criteria of ease-of-use, reasonable pricing, and flexibility, but a long list of other valuable features, too: Drupal.

With Drupal, both developers and non-developer admins can deploy a long list of robust functionalities right out-of-the-box. This powerful, open source CMS allows for easy content creation and editing, as well as seamless integration with numerous 3rd party platforms (including social media and e-commerce). Drupal is highly scalable, cloud-friendly, and highly intuitive. Did we mention it’s effectively-priced, too?

In our “Why Drupal?” 3-part series, we’ll highlight some features (many which you know you need, and others which you may not have even considered) that make Drupal a clear front-runner in the CMS market.

For a personalized synopsis of how your organization’s site can be built on or migrated to Drupal with amazing results, grab a free ticket to Drupal GovCon 2015 where you can speak with one of our site migration experts for free, or contact us through our website.

______

Drupal in Numbers (as of June 2014):

  • Market Presence: 1.5M sites
  • Global Adoption: 228 countries
  • Capabilities: 22,000 modules
  • Community: 80,000 members on Drupal.org
  • Development: 20,000 developers

Open Source:

drupalOS

The benefits of open source are exhaustively detailed all over the Internet. Drupal itself has been open source since its initial release on January 15, 2000. With thousands of developers reviewing and contributing code for over 15 years, Drupal has become exceptionally mature. All of the features and functionality outlined in our “Why Drupal?” series can be implemented with open source code.

Startup Velocity:

Similar to WordPress, deploying a Drupal site takes mere minutes, and the amount of out-of-the-box functionality is substantial. While there is a bit of a learning curve with Drupal, an experienced admin (non-developer) can have a small site deployed in a matter of days.

drupal-the-onion

Information Architecture:

The ability to create new content types and add unlimited fields of varying types is a core Drupal feature. Imagine you are building a site that hosts events, and an “Event” content type is needed as part of the information architecture. With out-of-the-box Drupal, you can create the content type with just a few clicks–absolutely no programming required. Further, you can add additional fields such as event title, event date, event location, keynote speaker. Each field has a structured data type, which means they aren’t just open text fields. Through contrib modules, there are dozens of other field types such as mailing address, email address, drop-down list, and more. Worth repeating: no programming is required to create new content types, nor to create new fields and add them to a new content type.

admin-screenshot

Asset Management:

There are a number of asset management libraries for Drupal, ensuring that users have the flexibility to choose the one that best suits their needs. One newer and increasingly popular asset management module in particular is SCALD (https://www.drupal.org/project/scald). One of the most important differences between SCALD and other asset management tools is that assets are not just files. In fact, files are just one type of asset. Other asset types include YouTube videos, Flickr galleries, tweets, maps, iFrames–even HTML snippets. SCALD also provides a framework for creating new types of assets (called providers). For more information on SCALD, please visit: https://www.drupal.org/node/2101855 and https://www.drupal.org/node/1895554

turner.premshow2

Curious about the other functionalities Drupal has to offer? Stay tuned for Part 2 of our “Why Drupal?” series!

Jun 02 2015
Jun 02

In April 2015, NASA unveiled a brand new look and user experience for NASA.gov. This release revealed a site modernized to 1) work across all devices and screen sizes (responsive web design), 2) eliminate visual clutter, and 3) highlight the continuous flow of news updates, images, and videos.

With its latest site version, NASA—already an established leader in the digital space—has reached even higher heights by being one of the first federal sites to use a “headless” Drupal approach. Though this model was used when the site was initially migrated to Drupal in 2013, this most recent deployment rounded out the endeavor by using the Services module to provide a REST interface, and ember.js for the client-side, front-end framework.

Implementing a “headless” Drupal approach prepares NASA for the future of content management systems (CMS) by:

  1. Leveraging the strength and flexibility of Drupal’s back-end to easily architect content models and ingest content from other sources. As examples:

  • Our team created the concept of an “ubernode”, a content type which homogenizes fields across historically varied content types (e.g., features, images, press releases, etc.). Implementing an “ubernode” enables easy integration of content in web services feeds, allowing developers to seamlessly pull multiple content types into a single, “latest news” feed. This approach also provides a foundation for the agency to truly embrace the “Create Once, Publish Everywhere” philosophy of content development and syndication to multiple channels, including mobile applications, GovDelivery, iTunes, and other third party applications.

  • Additionally, the team harnessed Drupal’s power to integrate with other content stores and applications, successfully ingesting content from blogs.nasa.gov, svs.gsfc.nasa.gov, earthobservatory.nasa.gov, www.spc.noaa.gov, etc., and aggregating the sourced content for publication.

  1. Optimizing the front-end by building with a client-side, front-end framework, as opposed to a theme. For this task, our team chose ember.js, distinguished by both its maturity as a framework and its emphasis of convention over configuration. Ember embraces model-view-controller (MVC), and also excels at performance by batching updates to the document object model (DOM) and bindings.

In another stride toward maximizing “Headless” Drupal’s massive potential, we configured the site so that JSON feed records are published to an Amazon S3 bucket as an origin for a content delivery network (CDN), ultimately allowing for a high-security, high-performance, and highly available site.

Below is an example of how the technology stack which we implemented works:

Using ember.js, the NASA.gov home page requests a list of nodes of the latest content to display. Drupal provides this list as a JSON feed of nodes:

Ember then retrieves specific content for each node. Again, Drupal provides this content as a JSON response stored on Amazon S3:

Finally, Ember distributes these results into the individual items for the home page:

The result? A NASA.gov architected for the future. It is worth noting that upgrading to Drupal 8 can be done without reconfiguring the ember front-end. Further, migrating to another front-end framework (such as Angular or Backbone) does not require modification of the Drupal CMS.

Apr 17 2014
Apr 17

The background:

At the end of 2013 I started to think about where I currently am work-wise, and what I enjoy and want to do with myself now. My drupal-based startup Hello Pretty has been growing at a fantastic rate, and is also self sustaining enough now that I can step away without harming it. We've built it with an ideal of keeping things technically as simple as possible and rather focusing our money & energy on marketing.

In my job at NowPublic I managed the dev team (rather than doing any programming myself. After 20 years of it I've started to get a bit bored). I loved that job and decided that I'd like to get back into that.

In January I began the process of looking for jobs. This would most likely have meant leaving our beautiful home in Cape Town and moving to where the work was. So it was no small decision for Sam and I.

At the end of February two very cool companies for positions I hadn't applied to contacted me two days apart, both through word-of-mouth references from people I've worked with previously. After a handful of rejections in the process already, I was ecstatic. One was in one of my favourite cities in the world, Vancouver :), and the other - Acquia - I've followed since day one of it's existence and have several friends and former colleagues who work there.

After chatting to the company in Vancouver a couple of times, they were quite keen and waiting to hear back on where I stood.

As I write this I keep thinking back to one of my favourite quotes and wondering why I didn't heed this advice sooner. It refers to a person's character or nature, and that how they handle anything small or 'unimportant' most likely reflects how they handle everything big or important.

How you do anything is how you do everything

My Acquia Story

Note: I don't blame any individual for my experience, but rather a culture within the company. Any names of the people who I spoke to have been changed.

Week 1

Matt from Acquia and I chatted on Skype video for about an hour. He was the person most involved in hiring me, and making a final call. We discussed my skills and qualifications, my salary expectations, and the fact that I had another company waiting for a response from me. He was keen to chat more and would try to keep the process quick so that I didn't have to keep the Vancouver company waiting long. He asked whether I'd be ok to have interviews over the next week. I agreed and said I'd explain the situation to the other company. After those were done there'd still be the meetings with the CEO and CTO of Acquia. He couldn't promise that it would be easy to schedule with them, so there could be additional delays.

This was on Wednesday morning Boston-time.

Week 2

By the following Monday at mid day, 6 days later, I still hadn't heard from them and assumed that he'd changed his mind. Not a big deal. But then, a recruiter from Acquia finally emailed me to schedule some interviews. Yay!

I sent back my schedule and... nothing. I understood from friends that Acquia usually want a few interviews, and the week was quickly coming to an end.

I followed up with the recruiter explaining that there was some urgency and that I didn't want to keep the Vancouver company waiting - I'd already put them off for a full week at this point. In the interest of expediting the process I offered to rearrange my own schedule or meet at short notice. I also asked for a sense of Acquia's timeline.

The recruiter promptly responded by setting up 4 interviews over the next two days. Three of them after 8pm my time, and one of them scheduled from 11:30pm to 12:30am. Ok, I figured, people are busy, and if this was going to get things done sooner, then great. Besides, this would give me bragging rights for having had a job interview at midnight.

After those 4 interviews I was asked to review the product I'd be working with to provide feedback, suggestions, etc. which I did over the weekend. I spent a few hours figuring it out, and working on my review. Obviously I wanted to impress, and the feedback I got from them (on my feedback) was very positive. I was actually really impressed with what I saw. Acquia is doing a lot of very cool stuff that I'd had no idea about.

Week 3

I had now kept the company in Vancouver waiting considerably longer than I'd told them I would. I hate keeping people waiting, in any context, and if I tell someone I'm going to do anything by a certain date or time it's important to me to stick to it. That goes for work and personal commitments.

On Monday (day 13) I'd again had no word. I followed up on Tuesday. "Interviews would be scheduled shortly". Matt asked if it would be ok to do this on very short notice and how late I could meet. Keen to wrap things up, I agreed to meet at any time.

After those next two interviews, radio silence. Matt said he'd "touch base to follow up with next steps". And then more radio silence. Two days later he got back to me to say he was having the recruiter set up more interviews. And sure enough, on Friday that week the recruiter mailed me to arrange a few more interviews.

This was when I started feeling demoralized. Why had they only scheduled two interviews in the entire week when I'd made my schedule completely open to them? Why did they continue to schedule interviews after 8pm for me (that's after 2pm Boston-time) if they were only going to schedule two or three in a week? I knew there was one other candidate, I had no idea where I stood, and it was never communicated to me how many more interviews there might be. I'd made my schedule very flexible for Acquia, and I'd pushed back my other job to the point where I was being straight-up disrespectful to them.

I decided to get back to the guys in Vancouver and figure out next-steps with them.

I've interviewed for jobs in the past, and I've interviewed people for jobs. I'm quite familiar with the "normal" process from both ends. Never had I been involved in, or even heard of, had such a long, stretched out and uncomfortably bureaucratic process. I hardly expected it from a company who claims to want to move quickly, and one who I hadn't applied to, but had actually approached me in the first instance. This is a company whose CEO subscribes to a philosophy of Ready, Fire, Aim. I'm of the opinion that, if you can't make a decision after 4 interviews... DO NOT HIRE. It's a sign that something's wrong, maybe just a gut feeling, but something worth listening to. I'd had 7 interviews by now, with 3 more scheduled for the following week.

I began seriously questioning whether I could work for a company with such bureaucratic, non-transparent and slow processes. Was this how things operate internally too? It was hard for me to believe that they could have a hiring process like this and still function acceptably within the rest of the company. But, I have a lot of friends who work for Acquia and they all seem to really enjoy working there.

The recruiter asked for times early the following week, so I again opened up my entire schedule including late night interviews. For anyone who's never done a late night interview, I'll tell you right now that they're extremely challenging. After a full day of work (I've been putting in 10 to 12 hour days), after hanging out, eating dinner, it's time to snap out of it and get ready. Get out of your PJs, put on a nice shirt, and get focussed. It's always important to be on top of your game in any interview. This means being wide awake and involves adrenaline.

No pants interview

The interviews themselves are always intense. Almost always enjoyable for me too, since I love chatting with interesting people (and everyone I spoke to at Acquia was interesting). Regardless, if my interview ends at 11pm, I won't be getting to sleep before 2am at the absolute earliest. This means a slow day to follow it up. Of course I had no idea that this would be the case when I first started agreeing to these, and I also thought I'd be looking at 7 days of it, not at least 3 weeks of it (at the end of which I still didn't have any clue as to when it would all end).

Week 4

My meetings for the week were set up, the final one being at 9pm on Friday. The first interview of the week was with Matt again. I'd hoped to get a chance to get clarity on the process, but no dice. I was caught a bit off guard as he grilled me again on things we'd already discussed in our first and second interviews, and that were brought up by the developers I spoke to in week 3. I had another interview immediately after that which was probably my favourite of the bunch but at the end of it all I was left feeling very disheartened with no idea what was going on.

While I was moving forward with the Vancouver company, all of this was still upsetting. I was under the impression when they contacted me that this would take a week, and it had now been dragged out over 4 (with no end in sight). Had I known up front that they required 10-12 interviews I'd have turned them down immediately and saved everybody a lot of time.

Through all this, and despite feeling the way I did, everyone at Acquia seemed very smart and like people I'd have really enjoyed working with. I felt I had a great vibe with Matt and even if this didn't work out, every one of the team would have been a person I'd have enjoyed having a beer with next time I was in Boston.

This is why the response I received the following Monday was so shocking.

Week 5

REJECTED!

Hi Scott,

Thank you for taking the time to interview with us for our Director, Acquia {DIVISION HIDDEN} opening. Our team has had a chance to discuss your qualifications, and unfortunately, I have decided to pursue other candidates who appear to match (skills and experience) our requirements more closely at this time.

Should something change on our side (or I get another job opening that matches your background better), I will not hesitate to contact you.

Thank you again for your interest in an employment opportunity with Acquia, Inc., and I wish you the best of luck in your current job search.

Thanks,
[Recruiter's Name]

I was in shocked disbelief. Not because I was turned down for the job though: I had in fact received this identical message two months earlier when I applied for an unrelated position at Acquia. They'd looked at my resume and turned me away without any interviews. And now, after:

  • 3 interviews with Matt,
  • a lot of back and forth emails discussing the company and position,
  • a couple of hours spent reviewing and reporting on the project I'd be managing,
  • 4 weeks, and
  • 10 interviews, with
  • 8 people...

... I got a template rejection? And not even from Matt himself, but from the recruiter he delegated it to.

It took a full day of thinking to figure out whether I was upset because I didn't get the job, or because I'd been treated in such a disrespectful way. I'd believed that I'd had a great vibe with Matt, and that the task of sending me my template rejection had been delegated to a recruiter was insulting.

I'll be honest, I was so furious that first day that I considered working for one of their competitors with the sole purpose of taking them down. The next day after I'd got my head back on straight I realized that that would be a strange focus to put on my life for at least the next decade. I spoke to a friend at Acquia and asked if he thought this (the process, not my malicious aspirations) was normal. He couldn't believe my story, and promptly spoke to Matt about what had happened.

I don't think Matt realized I'd be getting a template response, and after learning so from my friend he quickly sent me an apology mail for it. While his mail explicitly said "Either way, no excuses", it was still surprisingly full of excuses (such as being too swamped).

Now, for all I know Matt wanted to send me a long detailed response or call me to explain everything but really was too swamped to. However, considering that he knew I was under pressure with another company and availed myself for what turned out to be a 10-interview gauntlet, a quick 2-liner explaining that I was rejected and setting up a call would have been appreciated.

The Moral

I feel that my quote here applies firmly. When you start seeing red flags like a company taking advantage of a person's offer of flexibility (or anything else), unnecessary bureaucracy, and a lack of transparency, it's probably time to call it a day and cut off communication with them (unless you work well in that environment). After the way I felt during the whole process, should I really have been surprised with the way my rejection was handled?

Nobody, whether applying to a position as a CEO or a janitor, should be treated with such discourtesy by the company interviewing them.

For Acquia:

Despite dealing more with Matt than anyone else, I certainly don't put the full blame on him. I believe that what happened here is the result of culture and attitude within Acquia.

You have a CEO who contradictorily states that he won't hire anyone with a Ready Aim Fire mentality. Acquia's hiring process is exactly that. Dries (the CTO) says he wants Acquia to do well and good such as acting as a driver to build up and support the Drupal community, yet at the same time the company is treating job candidates (many from within that same community) extraordinarily disrespectfully.

To those at Acquia who are in a position where they can make positive change: it's time you look at your processes and question them. Another friend at Acquia told me that the HR and hiring process is something you're proud of. If you happen to read this post and you're proud of the actions taken, well, I appreciate the rejection.

I'm almost certainly not an isolated case. Much of the Acquia team is made up of loyal members of the Drupal community, and I'd guess that a large percentage of the applicants are community members too (myself included).

Aug 31 2010
Aug 31

With Drupalcon Copenhagen now behind us and Drupalcon Chicago approaching, I've found myself thinking about what Drupalcon is and how it's changing.

My first Drupalcon was in Barcelona, I was lucky enough to get to tag along with the guys from Bryght. I had an absolutely amazing time and met dozens of people, many of whom are now quite close friends. To top it off I also met my now fiancee and a future boss (no longer my boss, but still a good friend).

Since then, the twice yearly Drupalcons have consistently been highlights in my year. It's often the only time I get to see many of my friends in person.

Drupalcon is not a conference. At least not in the traditional sense. It's a time where some of the smartest people in the community get together, work on code, figure out problems, and teach each other what they know. It differs from a traditional conference in that there are no paid speakers and it doesn't come with a $2000+ price tag. In addition almost everyone attending is also a participant, whether they're there to hack code, present, contribute to BoF's, etc., everyone at Drupalcon makes it what it is.

Or I should say Drupalcon was that.

Since the first Drupalcon in Antwerp (correct me if I'm wrong), the number of people in attendance has almost consistently doubled every time. With 3000+ people at DCSF and a planned 4000+ attending Drupalcon Chicago, maintaining the personal feel that Drupalcons have traditionally had is simply no longer sustainable and I don't believe possible.

A few of the signs that lead me to believe this are:
* One of the stated goals of DC Chicago in the opening keynote at Copenhagen was to make it the "biggest" Drupalcon ever. I recall in Barcelona the goal was "Best Drupalcon Ever!". Biggest is still a great goal, but it doesn't say anything of the quality of the con, nor if people will enjoy it or not.

* At the end of each conference, traditionally the final keynote includes a slideshow of flickr photos from the conference. This to me is a reminder that the conference was about the attendees. It's an important reminder that the conference isn't so much about the sessions and learning, as it is about the experience of having everyone there in one place at one time. This was absent from this years closing keynote. In fact, this years closing keynote seemed more like the season finale of a reality TV show, than the closing keynote of a Drupalcon.

* DC Chicago will select a set of more "well known" speakers prior to opening up the session proposals and voting to the public. While this is actually quite beneficial to people who need to convince their companies to let them attend it is a big change (possibly the biggest in my eyes) to the way Drupalcons are traditionally a bit more open for anyone in the community to present their ideas. I see this ultimately heading down the road of having the conference organizers select all the speakers, and possibly even moving to the paid speaker and expensive conference price tag model. When the vast majority of the attendees shifts from Drupal contributors to people trying to learn what Drupal is and how it can fit into their company, this is really only natural.

* Lastly, Drupalcons are now being planned multiple years in advance. This is quite different from the planning that normally occurs one Drupalcon in advance.

None of these changes are necessarily bad things, they're just a sign that times are changing.

For me personally, I think Drupalcon will soon no longer be something I look forward to and anticipate, but instead something I go to out of obligation for the work I do.

This doesn't mean I'm not still super excited about the community and new things that are happening in Drupal, but instead that it's time to redirect my energy elsewhere. I think the stuff I'm really gonna be excited about in the future will be the local Drupal camps, and things like the upcoming PNW Drupal Summit (which unfortunately I'll be missing :( ). Also, I think there will be some very cool community stuff happening in new areas with Drupalcon like conferences happening in Asia, South America, and Africa.

The most important aspect of Drupal is the community. It's sad to think that Drupalcons are leaving that behind a bit, but I also don't think there's any other way it can go.

With that said, I had an amazing time in Copenhagen. There were a few issues (as there always are) but overall the conference organizers did a great job putting it together and I thought the sessions had a very good balance from intro to advanced. And I'm definitely looking forward to seeing everyone in Chicago :).

Feb 22 2010
Feb 22

Thursday, February 25, 2010 - 19:00 - Friday, February 26, 2010 - 21:00

The PHP UK Conference will be on later this week in London - featuring talks from some of the world's leading PHP experts, a diverse range of exhibitors, and thanks to a partnership with the PHP London user group who are organising the event, a Drupal stand providing top quality information and advice.

The Drupal community is eligible for a £20 discount on event registration, just head to http://www.phpconference.co.uk/registration/drupaluk to get the reduced price, and please browse the rest of the site for much more information on the conference.

There's social events for both the evening before and straight after the event - the former being free to anyone to come along and the latter starting with a sponsored bar by Facebook. The registration price also includes a buffet lunch and dessert, refreshments throughout the day, cloakroom facilities, access to discounted books from O'Reilly and Packt publishers, countless networking opportunities, and a raffle with over 50 prizes on offer.

Mori Sugimoto and Robert Castelo will be available all day on the Drupal stand, and look forward to seeing you on Friday!

Location:
Business Design Centre, Islington, London

Aug 06 2009
Aug 06

Saturday, August 8, 2009 - 11:00 - Saturday, August 8, 2009 - 19:00

Fancy spending an afternoon with the Drupal community and drinking some great beers?

Then come to the Great British Beer Festival, a yearly event with a range of 450 beers, tasty food, and a great atmosphere. This year with added Drupal!

Tickets are £8 in advance or £10 at the door.

We'll be wearing Drupal t-shirts, so grab a pint and come and find us.

Leave a comment at Drupal UK if you're planning to come. Cheers!

Aug 06 2009
Aug 06

Thursday, August 20, 2009 - 18:00 - Thursday, August 20, 2009 - 21:00

Design has been a particularly hot topic for Drupal this year, Drupal 4 Designers is an event that aims to engage the wider design community in the discussion.

Web and graphic designers who are curious, and perhaps a bit intimidated by Drupal, can find out how easy it really is to work with - and also get of to a good start with some best practises.

Experienced Drupal designers will have an opportunity to share their knowledge, and maybe pick up some new tips and tricks.

The event will feature parallel tracks for beginner, intermiary, and advanced users. So no matter what your level of experience there'll be something of interest for the whole evening.

Drupal 4 Designers will be held at Sun Microsystems, London, Thursday 20th of August 6:00pm to 9:00pm, and is organised by Nicolas Borda and Code Positive.

There will be Drupal books from Packt Publishing to be won by a few lucky attendees, and food and drink will be provided as part of Sun Microsystems hospitality.

Designers, themers, developers, and Drupal enthusiasts of all levels are welcome! If you work at a web design/development agency that uses Drupal make sure you tell your designers about the event.

The event is free, but registration is required. Full details on the RSVP page.

May 25 2009
May 25

Registration for DrupalCon Paris opened this weekend, and already several sponsors have claimed coveted top sponsorship spots for the September 1-5, 2009. Whether or not Sun will sponsor for the 5th time in a row is something I'll be checking into over the coming weeks.

Although the agenda and session schedule for DrupalCon Paris has not yet been posted, there is already some interesting content planned for the event, including full day immersion style training in Commercial Training tracks. Whether or not Sun sponsors this DrupalCon, I plan to make this one my 5th in a row.

In other DrupalCon news, San Francisco is making a bid for North America's DrupalCon in March 2010.

Feb 24 2009
Feb 24

Organizers of DrupalCon DC,  in the lead up to the event, asked Sun and the other event sponsors a few questions about their relationship with Drupal.  The first question was:

How does Sun work with Drupal?

I provided this answer:

There are too many ways in which Sun works with Drupal to list them all here, but some of the highlights are:

  • In 2005 Sun donated a server to drupal.org when scaling and performance problems were hampering growth
  • Then in 2007 Sun donated another server to further propel the scale up of d.o
  • Sun has used Drupal in building several important online communities:
    • Freshbrain - a technology exploration platform for youth
  • Plus many organizations run Drupal on Sun technology
  • Employees at Sun have been using Drupal internally for lots of things, including:
    • as representative AMP stack environment and workload for lots of benchmarking and performance testing
    • to demonstrate certain technologies, both in Sun internal training, and with Sun's customers, e.g., using the Webstack pre-built bundle of AMP and other open source packages for OpenSolaris, Virtualization with Solaris zones, MySQL installation and tuning, and PHP code analysis with DTrace.
  • Sun has created a NetBeans plugin wizard for developing Drupal modules
  • Sun is currently investigating system appliances for data archive and CMS that would bundle Drupal
  • Of course, Sun is a large contributor to some of Drupal's most critical underlying open source technologies:
  • and let's not forget that Sun VP and inventor of Java, James Gosling, defended Drupal inventor Dries Buytart in his PhD examination at Ghent.

Clearly, Sun is deeply connected to the Drupal community in many ways.

All the Q&A from DrupalCon's sponsors will be posted here on the DrupalConDC site.

\* Entry corrected to say Sun has contributed more FLOSS code than any other single institution, not Sun has contributed more code to the Linux kernel than any other single institution (although I think I did read that somewhere, it's not substantiated in this paper).  Thanks to Matt for point that out - it's major difference.

Mar 25 2008
Mar 25

In his keynote at DrupalCon Boston on March 5 Brian Aker discussed the latest approaches to six problems related to scaling up MySQL:

  1. Caching
  2. Partitioning
  3. Replication
  4. Batch Processing
  5. Understanding Performance
  6. Routing

I had a chance to sit down with Brian after his keynote to ask him questions about a few of these approaches.  Here is the interview:

Brian Aker on Scaling MySQL

Thanks to Vic Germani for producing this audio.

 Resources:

About Drupal Sun

Drupal Sun is an Evolving Web project. It allows you to:

  • Do full-text search on all the articles in Drupal Planet (thanks to Apache Solr)
  • Facet based on tags, author, or feed
  • Flip through articles quickly (with j/k or arrow keys) to find what you're interested in
  • View the entire article text inline, or in the context of the site where it was created

See the blog post at Evolving Web

Evolving Web