<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[ActiveLAMP | Blog]]></title><description><![CDATA[ActiveLAMP is a web development & digital strategy firm in Los Angeles, helping businesses achieve their digital goals. Call 310-943-0246 for details.]]></description><link>https://activelamp.com</link><generator>GatsbyJS</generator><lastBuildDate>Wed, 11 Feb 2026 19:49:32 GMT</lastBuildDate><item><title><![CDATA[JAMstack or Drupal? - Part I]]></title><description><![CDATA[This is the first video of a three-part series diving into what the JAMstack is and things to consider before abandoning your current CMS and taking on a new Javascript interface.]]></description><guid isPermaLink="false">https://activelamp.com/video/development/jamstack-or-drupal-part-i</guid><pubDate>Wed, 23 Sep 2020 20:42:00 GMT</pubDate></item><item><title><![CDATA[Our Discovery Process]]></title><description><![CDATA[In this video, we walk you through our discovery process. This process is how we help you outline and understand every step of building your website or application.]]></description><guid isPermaLink="false">https://activelamp.com/video/discovery/our-discovery-process</guid><pubDate>Tue, 05 May 2020 20:42:00 GMT</pubDate></item><item><title><![CDATA[Musings of Imperative and Declarative (coding) Design]]></title><description><![CDATA[In this video, Tom Friedhof uses the metaphor or Subway and Jimmy John's sandwiches to show the differences between Imperative and Declarative design.]]></description><guid isPermaLink="false">https://activelamp.com/video/development/musings-of-imperative-and-declarative-coding-design</guid><pubDate>Thu, 27 Feb 2020 20:42:00 GMT</pubDate></item><item><title><![CDATA[Drupal 8 Campaign Builder]]></title><description><![CDATA[Creating a page builder in Drupal 8 with flexible paragraph types.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/drupal-8-campaign-builder</guid><pubDate>Thu, 30 Jan 2020 02:00:00 GMT</pubDate></item><item><title><![CDATA[What's New on WCAG 2.1]]></title><description><![CDATA[Late last year I mentioned on Accessibility Tips for Beginners that a new version of the renowned Web Content Accessibility Guidelines (WCAG) was in the works. As of June 5, 2018, we have 17 new guidelines to consider and comply to under WCAG 2.1. These new guidelines bring to awareness pain points that people living in this tech-saturated world have been dealing with by focusing on improvements for mobile accessibility, people with low vision, and people with cognitive and learning disabilities.]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/whats-new-wcag-2-1</guid><pubDate>Wed, 16 Oct 2019 02:00:00 GMT</pubDate></item><item><title><![CDATA[Javascript: Introduction to Time Complexity]]></title><description><![CDATA[According to Wikipedia, the computational complexity, or simply the complexity of an algorithm is the number of resources required for running it. The amount of required resources varies based on the input size, so the complexity is generally expressed as a function of (n), where (n) is the size of the input.]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/javascript-introduction-to-time-complexity</guid><pubDate>Tue, 06 Aug 2019 02:00:00 GMT</pubDate></item><item><title><![CDATA[Querying a MSSQL database from Symfony]]></title><description><![CDATA[How to query a Microsoft SQL database from Symfony using Docker containers.]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/mssql-symfony</guid><pubDate>Thu, 04 Oct 2018 03:00:00 GMT</pubDate></item><item><title><![CDATA[Quick Setup with Composer Template for Drupal Projects]]></title><description><![CDATA[Pairing Composer template for Drupal Projects with Lando gives you a fully working Drupal environment with barely any setup.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/drupal-composer-template-lando</guid><pubDate>Fri, 28 Sep 2018 02:00:00 GMT</pubDate></item><item><title><![CDATA[ngSelect Customizations: Draggable Panel]]></title><description><![CDATA[Learn how to customize ngSelect module for Angular, by allowing users to drag the panel open further.]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/ng-select-draggable</guid><pubDate>Wed, 19 Sep 2018 02:00:00 GMT</pubDate></item><item><title><![CDATA[Factor Two - Dependency Management]]></title><description><![CDATA[Checkout our latest video. We are building a 12 factor app with Drupal. This is part two in our series, building a 12 factor app. Today I'm talking about Factor Two: Dependency Management.]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/factor-two-dependency-management</guid><pubDate>Thu, 13 Sep 2018 20:42:00 GMT</pubDate></item><item><title><![CDATA[Deploying Docker containers - Introduction to Kubernetes]]></title><description><![CDATA[We are going to take the Drupal image that I created from my last post [“Creating a deployable Docker image with Jenkins”]({% post_url 2016-01-20-jenkins-build-docker-images %}) and deploy it. You can find [the image that we created last time](https://hub.docker.com/r/tomfriedhof/docker_blog_post/) up on Docker Hub, that is where we pushed the image last time. You have several options on how to deploy Docker images to production, whether that be manually, using a service like [AWS ECS](https://aws.amazon.com/ecs/), or [OpenShift](https://www.openshift.com/), etc… Today, I’m going to walk you through a deployment process using [Kubernetes](http://kubernetes.io/) also known as simply k8s.]]></description><guid isPermaLink="false">https://activelamp.com/blog/devops/deploying-docker-containers-intro-kubernetes</guid><pubDate>Mon, 27 Aug 2018 02:00:00 GMT</pubDate></item><item><title><![CDATA[Accessibility Tips for Beginners]]></title><description><![CDATA[With more than 56 million people with disability in the United States, why are they less likely to use the web? There are multiple factors that can go into an individual's reasoning for not feeling comfortable using the web. One might be that the majority of websites are not created with them mind. Meaning, even if they have assistive technologies, they may not be able to navigate a website comfortably or at all. Even though, companies are making an effort to improve assistive technologies there are a handful of things you can do now that can help improve their experience on your website or product.]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/accessibility-tips-beginners</guid><pubDate>Wed, 25 Oct 2017 02:00:00 GMT</pubDate></item><item><title><![CDATA[Drupal Modules to Help Improve Your SEO]]></title><description><![CDATA[So you just finished building an awesome new website on Drupal, but now you’ve run into a new dilemma.  How do optimize the site for search engines?  Search engine optimization, or SEO, can be overwhelming, but don’t let that cause you to ignore certain things you can do to help drive traffic to your website.  There’s nothing worse than spending countless hours to develop a web application, only to find out that users aren’t able to find your site.  This can be extremely frustrating, as well as devastating if your company or business heavily relies on organic traffic.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/drupal-modules-to-help-improve-your-seo</guid><pubDate>Tue, 15 Aug 2017 20:00:00 GMT</pubDate></item><item><title><![CDATA[Core Concepts of Webpack]]></title><description><![CDATA[Front-end developers have so many tools to make sense of these days, npm, yarn, bower, grunt, gulp, the list goes on. What happened to the good old days when you could just include a &#60;script&#62; tag of jQuery hosted from some CDN out on the inter web, and just jump right into adding behavior to your HTML to get your app off the ground?  Well, you can technically still do that, but it’s not advised if you're writing enterprise software.  Today, I’m going to talk about the core concepts of Webpack, and why you should consider using it on your next project.]]></description><guid isPermaLink="false">https://activelamp.com/video/development/core-concepts-of-webpack</guid><pubDate>Wed, 09 Aug 2017 20:42:00 GMT</pubDate></item><item><title><![CDATA[Migrating Drupal 7 redirects to Drupal 8]]></title><description><![CDATA[When migrating from Drupal 7 to Drupal 8, it is important to remember to migrate over the redirects as well.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/migrating-drupal-8-redirects</guid><pubDate>Wed, 02 Aug 2017 02:00:00 GMT</pubDate></item><item><title><![CDATA[Using Pattern Lab to Design More Efficiently]]></title><description><![CDATA[Is your design process as efficient as it can be? Using Pattern Lab, your UX designers can build out prototypes and your developers can pull the HTML, CSS, and Javascript straight into your application and reuse the code. Check out our video to learn more!]]></description><guid isPermaLink="false">https://activelamp.com/video/development/using-pattern-lab-to-design-more-efficiently</guid><pubDate>Sat, 15 Jul 2017 01:01:00 GMT</pubDate></item><item><title><![CDATA[Pattern Lab in Drupal 7]]></title><description><![CDATA[Pattern Lab integration with Drupal allows for you to easily keep your style guide in sync with your app. Drupal 8 is a theme engine that Pattern Lab uses, which is one of the reasons why there's currently so much hype around building on Drupal 8. What if you want to integrate Pattern Lab with your Drupal 7 website? Luckily, we're working an approach that makes this possible!]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/pattern-lab-in-drupal-7</guid><pubDate>Thu, 15 Jun 2017 01:01:00 GMT</pubDate></item><item><title><![CDATA[Docker and Development Environments: Setting up for Node.js on MacOS]]></title><description><![CDATA[We always had our local development environments setup with Docker on top of Vagrant. While this has worked out just fine, the overhead of building and maintaining them started to increase significantly.]]></description><guid isPermaLink="false">https://activelamp.com/blog/devops/docker-and-development-environments-setting-up-for-nodejs-on-osx</guid><pubDate>Tue, 18 Apr 2017 02:00:00 GMT</pubDate></item><item><title><![CDATA[Shibboleth Authentication in Symfony 2.8+|3.0+]]></title><description><![CDATA[We recently had the opportunity to work on a Symfony app for one of our Higher Ed clients that we recently built a Drupal distribution for. Drupal 8 moving to Symfony has enabled us to expand our service offering. We have found more opportunities building apps directly using Symfony when a CMS is not needed. This post is not about Drupal, but cross posting to *Drupal Planet* to demonstrate the value of _getting off the island_. Writing custom authentication schemes in Symfony used to be on the complicated side. But with the [introduction of the Guard authentication component](https://symfony.com/blog/new-in-symfony-2-8-guard-authentication-component), it has gotten a lot easier.]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/shibboleth-authentication-in-symfony</guid><pubDate>Thu, 23 Mar 2017 02:00:00 GMT</pubDate></item><item><title><![CDATA[Composer FTW! RIP Drush Make?]]></title><description><![CDATA[In the modern world of web / application development, using package managers to pull in dependencies has become a de-facto standard.  In fact, if you are developing enterprise software and you aren't leveraging package managers I would challenge you to ask yourself why not?]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/composer-ftw-rip-drush-make</guid><pubDate>Mon, 06 Mar 2017 23:30:00 GMT</pubDate></item><item><title><![CDATA[Google's Mobile and Desktop Index Split]]></title><description><![CDATA[Google announced that starting sometime in 2017, they would for the first time be splitting their index into two, a desktop index and a mobile index.  Up until now, your site and its pages were only indexed once by google, so no matter if you did a search on your desktop computer or your smartphone, it would return the same results.]]></description><guid isPermaLink="false">https://activelamp.com/blog/digital-marketing/google-mobile-and-desktop-index-split</guid><pubDate>Tue, 21 Feb 2017 02:00:00 GMT</pubDate></item><item><title><![CDATA[Drupal vs Proprietary Software: DrupalCamp LA 2016 Table Talk - pt. 4/5]]></title><description><![CDATA[Part four of our DrupalCamp LA Table Talk! This week the shop owners of Achieve Internet, Stauffer, ActiveLAMP and Facet Interactive discuss proprietary software vs Drupal. Make sure to check out the previous 3 parts to this exciting table talk if you happened to miss it!]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/drupal-vs-proprietary-software-drupalcamp-la-2016-table-talk-pt-4-5</guid><pubDate>Wed, 12 Oct 2016 01:01:00 GMT</pubDate></item><item><title><![CDATA[Drupal as an Integration Point: DrupalCamp LA 2016 Table Talk - pt. 3/5]]></title><description><![CDATA[Part three of our table talk! This week the agency owners of Achieve Internet, Stauffer, ActiveLAMP and Facet Interactive discuss the power of Drupal as an integration point.]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/drupal-as-an-integration-point-drupalcamp-la-2016-table-talk-pt-3-5</guid><pubDate>Sat, 01 Oct 2016 01:01:00 GMT</pubDate></item><item><title><![CDATA[Who is Drupal Right For: DrupalCamp LA 2016 Table Talk - pt. 2/5]]></title><description><![CDATA[Part two of our table talk! This week the agency owners of Achieve Internet, Stauffer, ActiveLAMP and Facet Interactive discuss the who is Drupal right for.]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/who-is-drupal-right-for-drupalcamp-la-2016-table-talk-pt-2-5</guid><pubDate>Mon, 19 Sep 2016 15:01:00 GMT</pubDate></item><item><title><![CDATA[Drupal 7 or 8: DrupalCamp LA 2016 Table Talk - pt. 1/5 ]]></title><description><![CDATA[We got a few shop owners together at DrupalCamp LA 2016, at UC Irvine to talk Drupal. This is Part 1 of 5 of that conversation, talking about using Drupal 7 or Drupal 8 for new projects that we're building.]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/drupal-7-or-8-drupalcamp-la-2016-table-talk-pt-1-5</guid><pubDate>Fri, 09 Sep 2016 15:01:00 GMT</pubDate></item><item><title><![CDATA[Incrementally Upgrading to Drupal 8]]></title><description><![CDATA[In our last video we answered the question should I build on Drupal 7 or Drupal 8? We mentioned that we have a site currently in production on both Drupal 7 and Drupal 8. To the end-user browsing the site, it is completely transparent, they have no idea they are hitting two different Drupal instances. Today, we are going to show you how to pull this off.]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/incrementally-upgrading-to-drupal-8</guid><pubDate>Thu, 25 Aug 2016 15:01:00 GMT</pubDate></item><item><title><![CDATA[Adding pURL Multidomain XMLSitemap]]></title><description><![CDATA[On a recent project, we had to create multiple sitemaps for each of the domains that we have setup on the site. We came across some problems that we had to resolve because of the nature of our pURL setup.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/adding-purl-multidomain-xmlsitemap</guid><pubDate>Sat, 30 Jul 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[Drupal 8 Development in Docker - Redux]]></title><description><![CDATA[Back in December, Tom Friedhof <a href="http://activelamp.com/blog/devops/drupal-build-process/">shared how we set up our Drupal 8 development and build process utilizing Docker</a>. It has been working well in the several months we have used it and worked within its framework. Within the time-span however, we experienced a few issues here and there which led me to come up with an alternative process which keeps the good things we like and getting rid of/resolving the issues we encountered.]]></description><guid isPermaLink="false">https://activelamp.com/blog/devops/drupal-8-development-in-docker-redux</guid><pubDate>Thu, 14 Jul 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[10 Things Every Jr. Drupal Web Developer Needs to Know]]></title><description><![CDATA[Jonathan provides a list of 10 things that he feels every Jr. Drupal Web Developer needs to know]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/10-things-every-jr-drupal-web-developer-needs-to-know</guid><pubDate>Wed, 15 Jun 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[Writing custom fields in Drupal 8 - Part 2]]></title><description><![CDATA[Continuing from Evan's blog post on building pages with Paragraphs and writing custom blocks of content as fields, I will walk you through how to create a custom field-formatter in Drupal 8 by example.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/custom-fields-part-2</guid><pubDate>Tue, 07 Jun 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[Drupal 7 vs Drupal 8]]></title><description><![CDATA[Which version of Drupal should you build your site on, Drupal 7 or Drupal 8? This question comes up quite frequently, and for good reason! Your website is an investment and could be serving you for the next 3-5 years. It's important to weigh the pros and cons of choosing to build on Drupal 7 or Drupal 8.  If you're thinking about building your new site on Drupal 7, you need to watch this video first. Drupal 7 adoption is going down, with Drupal 8 adoption going up. Drupal 8 should hit critical mass by the end of 2016.]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/drupal-7-vs-drupal-8</guid><pubDate>Sat, 04 Jun 2016 03:01:00 GMT</pubDate></item><item><title><![CDATA[Writing custom fields in Drupal 8 - Part 1]]></title><description><![CDATA[Creating custom fields for Drupal 8 are easy to create and can get great results paired with the paragraphs module.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/custom-fields-part-1</guid><pubDate>Fri, 03 Jun 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[Scrum Meetings]]></title><description><![CDATA[Meetings are an inevitable part of creating an awesome product. The Scrum methodology has a set of meetings that were designed to help a team be productive, working on the most relevant, prioritized requests and features first.]]></description><guid isPermaLink="false">https://activelamp.com/blog/culture/scrum-meetings</guid><pubDate>Tue, 24 May 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[Going back to Drupal, it's fun again!]]></title><description><![CDATA[Actually, we never left. We didn't stop building Drupal sites, even through the long release cycle.  However, we did move our company website, [activelamp.com](http://activelamp.com), off of Drupal about 18 months ago. Our company site had been built on Drupal since the _Drupal 4.7_ days. That was back when it started to become uncool to write and maintain your own home-grown CMS.  I eventually found Drupal, ditched my custom CMS, and never looked back.<br /><br />Our site started on _Drupal 4.7_, upgraded onto _Drupal 5_, then _Drupal 6_, and also _Drupal 7_ all at the beginning of the release cycles of Drupal.  About 18 months ago, when our site was in dire need of an update, we evaluated _Drupal 8_ but realized with no release date in sight, and the fact that we did not want to chase HEAD and develop on unstable API's, we decided to go a different route and build our updated site on [Jekyll](http://jekyllrb.com), a popular static generator.  **It's more fun to tinker with new technology when working on non-billable stuff**, which is what we did. We brushed up on our Ruby skills and built out a _Jekyll_ site (which is this site you're looking at if you're reading this blog post before Q3 of 2016).<br /><br />We're getting ready for another update to our company website and moving back to _Drupal_ to do it.  _Jekyll_ was great, but it came with its disadvantages over something like _Drupal_.  This post will highlight some of the advantages and disadvantages of working with _Jekyll_ the past 18 months, as well as highlight why we're excited to put activelamp.com on _Drupal 8_ in Q3 of this year.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/going-back-to-drupal-its-fun</guid><pubDate>Tue, 17 May 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[Encapsulation, Inheritance, Polymorphism with Drupal Entities - SandCamp 2016]]></title><description><![CDATA[One of the best things to happen with the Drupal 7 release was the introduction of Entities. Drupal Entities have been around forever, but it seems like a lot of developers still refer back to using Nodes when creating content that requires more functionality than what Nodes give you out of the box. In this video, I talk about why it's a good idea to create your own Entities when the content you're adding requires extended functionality. I talk about the "what" and the "why" of Entities, not necessarily "how" to create an Entity. There are a bunch of resources already out there on the Internet for that. I talk about using the Entity API module, and defining your own Class for your custom Entities.  This presentation was given at SandCamp 2016.]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/encapsulation-inheritance-polymorphism-with-drupal-entities-sandcamp-2016</guid><pubDate>Sat, 14 May 2016 03:01:00 GMT</pubDate></item><item><title><![CDATA[Adding CKEditor plugins to Drupal 8]]></title><description><![CDATA[Drupal 8 has greatly improved editor experience out-of-the-box. It comes shipped with CKEditor for WYSIWYG editing. Although, D8 ships with a custom build of CKEditor and it may not have the plugins that you would like to have or that your client wants to have. I will show you how to add new plugins into the CKEditor that comes with Drupal 8.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/drupal8-ckeditor-plugin</guid><pubDate>Sat, 07 May 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[Strategy vs Tactics]]></title><description><![CDATA[When you hear the terms strategy and tactics, what do you think of? It is extremely common for people to confuse the two ideas. In fact, many people believe that strategy and tactics mean the exact same thing.  There is a clear difference between the two, and having a proper understanding of each is extremely important.]]></description><guid isPermaLink="false">https://activelamp.com/blog/digital-marketing/strategy-vs-tactics</guid><pubDate>Wed, 27 Apr 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[Creating Layouts with the Layout Plugin Module in Drupal 8]]></title><description><![CDATA[Writing custom layouts using the Layout Plugin module for D8 is really easy. This video will outline how to create a new layout in your theme using Foundation 6 as the base theme and how to extend the layout to add custom classes and id.]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/creating-layouts-with-the-layout-plugin-module-in-drupal-8</guid><pubDate>Fri, 22 Apr 2016 03:01:00 GMT</pubDate></item><item><title><![CDATA[Page Manager, Panels, Context - SandCamp 2016]]></title><description><![CDATA[Panels, is one of the most mis-understood modules in the Drupal eco-system.  Drupal developers seem to either love Panels, or hate it with a passion.  Most of the time, when I begin to unwrap why people do not like Panels, it is mainly a misunderstanding of what makes Panels so powerful, Page Manager.  In this video, presented at SandCamp 2016, see a mock sports league built out with the Node system and Field system that includes various relationships between the different node types.  Watch, as we realize the entity relationships we create through the Field UI through the page manager UI.  Lots of power in this suite of tools.]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/page-manager-panels-context-sandcamp-2016</guid><pubDate>Sat, 09 Apr 2016 03:01:00 GMT</pubDate></item><item><title><![CDATA[Composer Manager in Drupal 7 and Drupal 8]]></title><description><![CDATA[This video will take you through the correct way to use composer dependencies in Drupal 7 and Drupal 8 using the Composer Manager module. This video part 2 to the PSR video we did last month, that shows how to write a views handler using PSR-4 class autoloading (http://activelamp.com/videos/psr-4-class-autoloading-with-drupal-7).  At the end of the PSR-4 video, I pulled in a composer dependency not using Composer Manager.  This video will show you the correct way to use Composer with Drupal.]]></description><guid isPermaLink="false">https://activelamp.com/video/drupal/composer-manager-in-drupal-7-and-drupal-8</guid><pubDate>Mon, 04 Apr 2016 03:01:00 GMT</pubDate></item><item><title><![CDATA[Quick Tip How to Add a Hero Image to a Node in Drupal 7]]></title><guid isPermaLink="false">https://activelamp.com/video/drupal/quick-tip-how-to-add-a-hero-image-to-a-node-in-drupal-7</guid><pubDate>Fri, 01 Apr 2016 03:00:00 GMT</pubDate></item><item><title><![CDATA[Data Encapsulation for Quality Assurance]]></title><description><![CDATA[PHPunit provides a great API library that allows functional testing and ties in with selenium well. However, it came to a point where i peered at my code and realized that the code isn’t readable and easy to understand at all. I lost all forms of sense and have been looking at blurbs of code that when given a week without looking at the code, i would lose all understanding of it. This is where i decided to encapsulate the data and methods to maintain sanity for myself and for the next developer coming along.]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/data-encapsulation-for-quality-assurance</guid><pubDate>Fri, 01 Apr 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[Introduction to Scrum and the Roles]]></title><guid isPermaLink="false">https://activelamp.com/video/culture/introduction-to-scrum-and-the-roles</guid><pubDate>Thu, 17 Mar 2016 03:00:00 GMT</pubDate></item><item><title><![CDATA[Sandcamp 2016 Recap]]></title><description><![CDATA[The San Diego Drupal Camp was great!  You can't beat the weather in San Diego, and as usual, these regional events are great for catching up with old friends that are still plugging away with the Drupal content management system.  Checkout our highlight video&#58; <a href="http://activelamp.com/videos/sandcamp-2016-highlights/">![Sandcamp Highlight Video](/assets/images/posts/sandcamp-video.jpg)</a> This year I had the pleasure of giving 3 sessions at the camp, and as promised, I want to share the slides and code for everything that I presented.  Each deck is iframed in on this article, feel free to checkout <a href="http://github.com/tomfriedhof">my github page</a< if you want the speaker notes too.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/sandcamp-2016-recap</guid><pubDate>Tue, 15 Mar 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[Sandcamp 2016 Highlights]]></title><guid isPermaLink="false">https://activelamp.com/video/drupal/sandcamp-2016-highlights</guid><pubDate>Sat, 12 Mar 2016 00:00:00 GMT</pubDate></item><item><title><![CDATA[Extending Drupal: all about the service container]]></title><description><![CDATA[The biggest thing that got me excited with Drupal 8 is the first-class use of services & dependency-injection throughout the entire system. From aspects like routing, templating, managing configuration, querying and persisting data, you name it -- everything is done with services. This is a *great* thing, because it grants developers a level of flexibility in extending Drupal that is far greater than what Drupal 7 was able to.  I'll walk you through a few strategies of extending existing functionality, leveraging the power of Symfony's `DependencyInjection` component.]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/extending-drupal-all-about-the-service-container</guid><pubDate>Tue, 01 Mar 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[Introduction to Scrum and the Roles]]></title><description><![CDATA[What is up with all these cycles? Why are they so confusing? At first glance, Scrum can seem like a lot to comprehend, though no one eats an elephant in one bite. Let's break each component down so that it's easier to understand.]]></description><guid isPermaLink="false">https://activelamp.com/blog/culture/introduction-to-scrum-roles</guid><pubDate>Sat, 06 Feb 2016 02:00:00 GMT</pubDate></item><item><title><![CDATA[PSR-4 Class Autoloading with Drupal 7]]></title><guid isPermaLink="false">https://activelamp.com/video/drupal/psr-4-class-autoloading-with-drupal-7</guid><pubDate>Wed, 27 Jan 2016 03:00:00 GMT</pubDate></item><item><title><![CDATA[Creating a deployable Docker image with Jenkins - Part 4]]></title><description><![CDATA[My previous posts talked about getting your local environment setup using the [Drupal Docker image](https://hub.docker.com/_/drupal/) with [Vagrant](https://www.vagrantup.com/).  It's now time to bake a Docker image with our custom application code within the container, so that we can deploy containers implementing the [immutable server pattern](http://martinfowler.com/bliki/ImmutableServer.html). One of the main reasons we starting venturing down the Docker path was to achieve deployable fully baked containers that are ready to run in whatever environment you put them in, similar to what we've done in the past with [Packer](http://packer.io), as I've mentioned in a previous post.]]></description><guid isPermaLink="false">https://activelamp.com/blog/devops/jenkins-build-docker-images</guid><pubDate>Wed, 20 Jan 2016 14:30:00 GMT</pubDate></item><item><title><![CDATA[Do Businesses Need to Blog?]]></title><description><![CDATA[Is blogging necessary?  This is a question that tends to spark quite some debate, not only among marketers, but also among business owners.  Countless times, I’ve been in a meeting where concerns have been raised at the mention of blogging.  “That’s not for our industry,” or “We don’t have time for that,” as well as “I don’t see how it will help my bottom line.” These are among some of the most common objections I tend to hear.  The question of blogging being a necessity becomes irrelevant once we learn of statistics such as, 81% of people conduct online research before making any purchase.  If 81% of your potential clients are researching online, would you even want to risk that the information they are gathering is coming from elsewhere online, for example, your competitor’s website?]]></description><guid isPermaLink="false">https://activelamp.com/blog/digital-marketing/do-businesses-need-to-blog</guid><pubDate>Wed, 30 Dec 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Understanding Selenium -- our first problem]]></title><guid isPermaLink="false">https://activelamp.com/blog/development/selenium-first-problem</guid><pubDate>Thu, 17 Dec 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Drupal 8 Build Process with Vagrant and Docker]]></title><guid isPermaLink="false">https://activelamp.com/video/drupal/drupal-8-build-process-with-vagrant-and-docker</guid><pubDate>Tue, 15 Dec 2015 03:00:00 GMT</pubDate></item><item><title><![CDATA[Our build process using Drupal 8]]></title><description><![CDATA[Now that the [release of Drupal 8](https://www.drupal.org/8) is finally here, it is time to adapt our Drupal 7 build process to Drupal 8, while utilizing [Docker](https://www.docker.com/).  This post will take you through how **we** construct sites on Drupal 8 using dependency managers on top of [Docker with Vagrant](http://activelamp.com/blog/devops/docker-with-vagrant/).
<h3>Keep a clean upstream repo</h3>
Over the past 3 or 4 years developing websites has changed dramatically with the increasing popularity of dependency management such as [Composer](https://getcomposer.org/), [Bundler](http://bundler.io/), [npm](https://www.npmjs.com/), [Bower](http://bower.io/), etc... amongst other tools. Drupal even has it's own system that can handle dependencies called [Drush](http://www.drush.org/), albiet it is more than just a dependency manager for Drupal.
With all of these tools at our disposal, it makes it very easy to include code from other projects in our application while not storing any of that code in the application code repository.  This concept dramatically changes how you would typically maintain a Drupal site, since the typical way to manage a Drupal codebase is to have the entire Drupal Docroot, including all dependencies, in the application code repository.  Having everything in the docroot is fine, but you gain so much more power using dependency managers.  You also lighten up the actual application codebase when you utilize dependency managers, because your repo only contains code that you wrote.  There are tons of advantages to building applications this way, but I have digressed, this post is about how we utilize these tools to build Drupal sites, not an exhaustive list of why this is a good idea.  Leave a comment if you want to discuss the advantages / disadvantages of this approach.]]></description><guid isPermaLink="false">https://activelamp.com/blog/devops/drupal-build-process</guid><pubDate>Wed, 02 Dec 2015 02:30:00 GMT</pubDate></item><item><title><![CDATA[Visual Regression Testing with Shoov.io]]></title><guid isPermaLink="false">https://activelamp.com/video/drupal/visual-regression-testing-with-shoov-io</guid><pubDate>Thu, 26 Nov 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Quick Tips to Create Better Videos - Tip 3: Pre-Production Can Make or Break your Project]]></title><description><![CDATA[Pre-production is tough.  I’ll be the first to admit it, grabbing your camera and jumping straight into filming not only feels natural, but is also an extremely easy thing to do.  Unfortunately the end result normally speaks for itself, when you’re left with a video that is at best sub-par.  Some of the most successful things we do in life are normally strategically planned and intentionally executed.  Your videos should be no different.]]></description><guid isPermaLink="false">https://activelamp.com/blog/video-production/better-video-quick-tips-part-3-pre-production</guid><pubDate>Wed, 25 Nov 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Visual Regression Testing with Shoov.io]]></title><description><![CDATA[We recently were introduced to a website testing tool called Shoov. Shoov is a visual regression tool using webdrivercss and we are going to show you how to get it running on your site.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/visual-regression-testing-with-shoov</guid><pubDate>Sat, 14 Nov 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Facebook For Business - You're Doing It Wrong!]]></title><guid isPermaLink="false">https://activelamp.com/blog/digital-marketing/facebook-for-business</guid><pubDate>Sat, 07 Nov 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Understanding Selenium -- a step-by-step]]></title><guid isPermaLink="false">https://activelamp.com/blog/development/understanding-selenium</guid><pubDate>Sat, 31 Oct 2015 02:30:00 GMT</pubDate></item><item><title><![CDATA[Video Tutorial - Drupal to Ember without Saving]]></title><guid isPermaLink="false">https://activelamp.com/video/drupal/video-tutorial-drupal-to-ember-without-saving</guid><pubDate>Thu, 29 Oct 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Surviving the Scrum Transmutation]]></title><guid isPermaLink="false">https://activelamp.com/blog/culture/surviving-the-scrum-transmutation</guid><pubDate>Sat, 24 Oct 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Docker: A Minimalist's Choice]]></title><guid isPermaLink="false">https://activelamp.com/blog/devops/docker-a-minimalists-choice</guid><pubDate>Sat, 17 Oct 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Drupal to Ember without Saving]]></title><description><![CDATA[Previewing article from Drupal to Ember without saving]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/drupal-to-ember</guid><pubDate>Sat, 10 Oct 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Websites Aren't Just Supposed to be Cool]]></title><description><![CDATA[How to get the most value out of your website]]></description><guid isPermaLink="false">https://activelamp.com/blog/digital-marketing/websites-arent-just-supposed-to-be-cool</guid><pubDate>Fri, 25 Sep 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Setting up a Docker development environment with Vagrant - Part 3]]></title><description><![CDATA[Now that I've laid the ground work for the approach that I want to take with local environment development with Docker, it's time to explore how to make the local environment a sane "development environment".  In this post we will do just that, setup a local development environment with [Docker and Vagrant]({% post_url 2015-07-19-docker-with-vagrant %}).]]></description><guid isPermaLink="false">https://activelamp.com/blog/devops/local-docker-development-with-vagrant</guid><pubDate>Wed, 23 Sep 2015 02:30:00 GMT</pubDate></item><item><title><![CDATA[Asynchronous PHP with message queues]]></title><description><![CDATA[Asynchronous PHP with message queues]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/asynchronous-php-with-message-queues</guid><pubDate>Tue, 15 Sep 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Quick Tips to Create Better Videos - Tip 2: The DSLR Difference]]></title><description><![CDATA[2007 was a big year for me.  Not only was I starting college, but I had decided to make a big investment and purchase my own professional video camera.  Nearly $4,000 later I was the proud owner of a Canon XH A1 camcorder.  At that time it was a great camcorder, especially for those who were serious about video production.  That camera truly served me well and helped me book some of my first freelance jobs, including one in Africa to film an event with the President of Rwanda.  Fast-forward to 2010, I remember browsing Vimeo and stumbling across a video by Vincent Laforet, called “[The Cabbie](https://vimeo.com/8595246).”  That three and a half minute video would completely change my view on camcorders, and eventually lead me to post my beloved XH A1 on Craigslist for sale.]]></description><guid isPermaLink="false">https://activelamp.com/blog/video-production/better-video-quick-tips-part-2-dslr-difference</guid><pubDate>Tue, 01 Sep 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Drupal 8 - First Experiences]]></title><description><![CDATA[I recently had time to install and take a look at Drupal 8. I am going to share my first take on Drupal 8 and some of the hang-ups that I came across. I read a few other blog posts that mentioned not to rely too heavily on one source for D8 documentation with the rapid changing pace of D8 the information has become outdated rather quickly.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/drupal-8-first-experiences</guid><pubDate>Fri, 14 Aug 2015 23:00:00 GMT</pubDate></item><item><title><![CDATA[Digital Strategy - The Evolution of Your Work Day]]></title><description><![CDATA[Digital Strategy, how you can use digital technology to transform your business]]></description><guid isPermaLink="false">https://activelamp.com/blog/digital-marketing/digital-strategy</guid><pubDate>Tue, 11 Aug 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Where's waldo?]]></title><guid isPermaLink="false">https://activelamp.com/blog/development/wheres-waldo</guid><pubDate>Wed, 05 Aug 2015 20:30:00 GMT</pubDate></item><item><title><![CDATA[ActiveLAMP and JIRA -- A Thriving, Efficient, and Productive Relationship]]></title><description><![CDATA[Demonstrates how ActiveLAMP uses JIRA to be an efficient and productive team]]></description><guid isPermaLink="false">https://activelamp.com/blog/culture/activelamp-and-jira</guid><pubDate>Wed, 29 Jul 2015 23:30:00 GMT</pubDate></item><item><title><![CDATA[Docker with Vagrant - Part 2]]></title><description><![CDATA[In this post, we will venture into setting up docker locally, in the same repeatable way, from developer to developer.  By the end of this post, we'll have Drupal running in a container, using Docker.  This post is focused on hashing out a Docker workflow with Vagrant, less about Drupal itself.]]></description><guid isPermaLink="false">https://activelamp.com/blog/devops/docker-with-vagrant</guid><pubDate>Sun, 19 Jul 2015 18:30:00 GMT</pubDate></item><item><title><![CDATA[Quick Tips to Create Better Videos - Tip 1: Focus on Audio]]></title><description><![CDATA[I'm unsure where, or from whom, I first heard this quote, but it has stuck with me throughout the years.  In my experience, viewers are more likely to sit through and watch a poorly shot video, rather than one they can hardly hear.  Many times people get caught up with wanting to have the newest and best camera, but when it comes to audio, I see many people settling for cheap solutions.  This is the reason why I decided to start off this series by focusing on audio.]]></description><guid isPermaLink="false">https://activelamp.com/blog/video-production/better-video-quick-tips-part-1-audio</guid><pubDate>Tue, 14 Jul 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[How to Use Picture and Image Replace for Drupal 7]]></title><description><![CDATA[We recently converted a site from a static width site to a responsive mobile site. We wanted to make it easy for our Drupal client to upload images into Drupal and still be able to replace images that need different dimensions at different viewport sizes. We decided to use Picture module a Drupal 8 backport to handle our Picture Mappings. Here we will show you how to get that setup in four easy steps.]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/how-to-use-picture-and-image-replace-for-drupal-7</guid><pubDate>Fri, 03 Jul 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Management and Accountability]]></title><guid isPermaLink="false">https://activelamp.com/blog/culture/management-and-accountability</guid><pubDate>Sat, 27 Jun 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Hesperia Chamber of Commerce Golf Classic]]></title><guid isPermaLink="false">https://activelamp.com/video/digital-marketing/hesperia-chamber-of-commerce-golf-classic</guid><pubDate>Tue, 23 Jun 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Why and how to use SVGs on your site]]></title><description><![CDATA[We recently improved and added several new sections to our site. Throughout the design process, I had in mind the large variety of different browser types, image types and screen resolutions that would be available to view the site. I decided to design multiple graphics in Illustrator and save them as SVG.]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/why-how-to-use-svg</guid><pubDate>Sat, 20 Jun 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[High Desert Economic Summit]]></title><guid isPermaLink="false">https://activelamp.com/video/digital-marketing/high-desert-economic-summit</guid><pubDate>Sat, 20 Jun 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[What's the deal with your elevator pitch?]]></title><description><![CDATA[How many times in a day do you explain what exactly it is that you do for a living?  I am in sales, so I do this quite often.  I describe our services and products, as simply as possible, and try to keep it interesting.  I have a few dusty old elevator pitches that I pull from my memory from time to time, repurposing as necessary.]]></description><guid isPermaLink="false">https://activelamp.com/blog/digital-marketing/whats-the-deal-with-your-elevator-pitch</guid><pubDate>Tue, 16 Jun 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Hashing out a Docker Workflow - Part 1]]></title><description><![CDATA[Several months ago I was having a conversation with a friend about our [Chef](http://chef.io) workflow for managing and provisioning servers, as well as provision our local machines using [Vagrant](http://vagrantup.com).  That conversation led to us talking about [Docker](http://www.docker.com), and how Docker is going to change everything in the devops space.]]></description><guid isPermaLink="false">https://activelamp.com/blog/devops/hashing-out-docker-workflow</guid><pubDate>Fri, 05 Jun 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Why your Business Needs to be Focusing on Video Production]]></title><description><![CDATA[Ten years ago, three former Paypal employees set out to create a website where users could upload and share their own videos. This site, as you probably already guessed, was YouTube.  A year later, YouTube was purchased by Google for $1.65 billion, and since then has grown into the second largest search-engine on the web.  As of last year, YouTube even dethroned Facebook, becoming the largest social media site, bringing in more visitors than Twitter, LinkedIn, Pinterest, and Instagram combined!  These statistics are not only an impressive show of YouTube's history, but also gives companies invaluable insight on how to best reach their audience.]]></description><guid isPermaLink="false">https://activelamp.com/blog/video-production/why-your-business-needs-to-be-focusing-on-video-production</guid><pubDate>Sat, 30 May 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[ActiveLAMP on L.A. DrupalCon 2015]]></title><description><![CDATA[On May 11, the entire ActiveLAMP team headed to the Los Angeles Convention Center for DrupalCon 2015.  Not only did we gain an immeasurable amount of knowledge, but also an immeasurable amount of free T-Shirts and swag.  It was a first-time experience for most of the team, and there was something for everyone.  Each one of us learned a great deal, here are some of our memories -]]></description><guid isPermaLink="false">https://activelamp.com/blog/culture/activelamp-on-drupalcon-la-2015</guid><pubDate>Sat, 23 May 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[DrupalCon Los Angeles 2015 Highlight]]></title><guid isPermaLink="false">https://activelamp.com/video/drupal/drupalcon-los-angeles-2015-highlight</guid><pubDate>Fri, 22 May 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Company Culture - Are The Hot Pockets Really That Important?]]></title><guid isPermaLink="false">https://activelamp.com/blog/culture/company-culture-are-hot-pockets-really-that-important</guid><pubDate>Thu, 07 May 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Advantages of Digital Marketing]]></title><guid isPermaLink="false">https://activelamp.com/video/digital-marketing/advantages-of-digital-marketing</guid><pubDate>Wed, 06 May 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Divide & Conquer: Drupal 7, Symfony, Elasticsearch, and AngularJS - Part 2]]></title><description><![CDATA[In the previous blog post we shared how we implemented the first part of our problem in Drupal and how we decided that splitting our project into discrete parts was a good idea. I'll pick up where we left off and discuss why and how we used Symfony to build our web service instead of implementing it in Drupal.]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/divide-and-conquer-part-2</guid><pubDate>Fri, 01 May 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Digital Marketing - What Are My Options?]]></title><guid isPermaLink="false">https://activelamp.com/blog/digital-marketing/digital-marketing-what-are-my-options</guid><pubDate>Fri, 27 Mar 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Black box testing and Behat&#58; Why ignorance is bliss]]></title><guid isPermaLink="false">https://activelamp.com/blog/development/black-box-testing-and-behat</guid><pubDate>Tue, 10 Feb 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Divide & Conquer: Drupal 7, Symfony, Elasticsearch, and AngularJS - Part 1]]></title><description><![CDATA[It isn't just about Drupal here at ActiveLAMP -- when the right project comes along that diverges from the usual demands of content management, we get to use other cool technologies to satisfy more exotic requirements. Last year we had a project that presented us with the opportunity to broaden our arsenal beyond the Drupal toolbox. Basically, we had to build a website which handles a growing amount of vetted content coming in from the site's community and 2 external sources, and the whole catalog is available through the use of a rich search tool and also through a RESTful web service which other of our client's partners can use to search for content to display on their respective websites.]]></description><guid isPermaLink="false">https://activelamp.com/blog/development/divide-and-conquer-part-1</guid><pubDate>Thu, 22 Jan 2015 02:00:00 GMT</pubDate></item><item><title><![CDATA[Why Online Marketing?]]></title><guid isPermaLink="false">https://activelamp.com/blog/digital-marketing/why-online-marketing</guid><pubDate>Fri, 05 Dec 2014 02:00:00 GMT</pubDate></item><item><title><![CDATA[Customize autocomplete fields with results you want]]></title><description><![CDATA[<p> Occasionally a node reference or entity reference autocomplete widget will not operate as expected, specifically when it is based off a view reference display.<!--more--> Other widgets, the select box, or list of checkboxes, will still function correctly. </p> <p> This will happen if the view is depending on a contextual filter (an argument), but is not being provided one. Normally a view can try to automatically fill in the argument if one is not provided based on the current page url. If the view fails to receive an argument and is unable to infer its value from the url path then it will fail to provide any results. </p> <p> Outlined below is a possible scenario that would cause an autocomplete node reference field to fail. </p>]]></description><guid isPermaLink="false">https://activelamp.com/blog/drupal/customize-autocomplete-fields-with-results-you-want</guid><pubDate>Fri, 07 Sep 2012 02:00:00 GMT</pubDate></item><item><title><![CDATA[Getting SASSy with Drupal]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/getting-sassy-with-drupal</guid><pubDate>Sat, 30 Jun 2012 02:00:00 GMT</pubDate></item><item><title><![CDATA[Image Upload Block]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/image-upload-block</guid><pubDate>Thu, 28 Jun 2012 02:00:00 GMT</pubDate></item><item><title><![CDATA[Management, Development, and Deployment]]></title><guid isPermaLink="false">https://activelamp.com/blog/devops/management-development-and-deployment</guid><pubDate>Thu, 15 Mar 2012 02:00:00 GMT</pubDate></item><item><title><![CDATA[Musings of using Aegir for deployment]]></title><guid isPermaLink="false">https://activelamp.com/blog/devops/musings-of-using-aegir-for-deployment</guid><pubDate>Wed, 29 Feb 2012 02:00:00 GMT</pubDate></item><item><title><![CDATA[Track Anything on Your Site in Google Analytics]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/track-anything-on-your-site-in-google-analytics</guid><pubDate>Wed, 15 Feb 2012 02:00:00 GMT</pubDate></item><item><title><![CDATA[Why configuration module over features module?]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/why-configuration-module-over-features-module</guid><pubDate>Wed, 25 Jan 2012 02:00:00 GMT</pubDate></item><item><title><![CDATA[A new way to manage configuration on your site]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/a-new-way-to-manage-configuration-on-your-site</guid><pubDate>Tue, 24 Jan 2012 02:00:00 GMT</pubDate></item><item><title><![CDATA[MikeThompson.com launched on Drupal 7]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/mikethompson.com-launched-on-drupal-7</guid><pubDate>Fri, 07 Jan 2011 02:00:00 GMT</pubDate></item><item><title><![CDATA[DrupalCampLA 2010 Announced!]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/drupalcampla-2010-announced</guid><pubDate>Fri, 16 Jul 2010 02:00:00 GMT</pubDate></item><item><title><![CDATA[Add and Track Any Link With Google Analytics]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/add-and-track-any-link-with-google-analytics</guid><pubDate>Wed, 28 Apr 2010 02:00:00 GMT</pubDate></item><item><title><![CDATA[Use Google Analytics Instead of the Statistics Module]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/use-google-analytics-instead-of-the-statistics-module</guid><pubDate>Wed, 17 Mar 2010 02:00:00 GMT</pubDate></item><item><title><![CDATA[Advanced Drupal Theming using Panels Part 1]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/advanced-drupal-theming-using-panels-part-1-embracing-panels-style-plugins-and-writing-your-own</guid><pubDate>Sat, 30 Jan 2010 02:00:00 GMT</pubDate></item><item><title><![CDATA[Change the execution order of $(document).ready()]]></title><guid isPermaLink="false">https://activelamp.com/blog/development/change-the-execution-order-of-document-ready</guid><pubDate>Sat, 23 Jan 2010 02:00:00 GMT</pubDate></item><item><title><![CDATA[The hidden menu paths in Devel you may not know about]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/the-hidden-menu-paths-in-devel-you-may-not-know-about</guid><pubDate>Tue, 12 Jan 2010 02:00:00 GMT</pubDate></item><item><title><![CDATA[The youngest DrupalCampLA Volunteer]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/the-youngest-drupalcampla-volunteer</guid><pubDate>Mon, 10 Aug 2009 02:00:00 GMT</pubDate></item><item><title><![CDATA[sbhosting.com Podcast about Drupal.]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/sbhosting.com-podcast-about-drupal</guid><pubDate>Sun, 12 Jul 2009 02:00:00 GMT</pubDate></item><item><title><![CDATA[Drush - The hidden gem of Drupal]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/drush-the-hidden-gem-of-drupal</guid><pubDate>Sun, 14 Jun 2009 02:00:00 GMT</pubDate></item><item><title><![CDATA[Adding Functions to jQuery]]></title><guid isPermaLink="false">https://activelamp.com/blog/development/adding-functions-to-jquery</guid><pubDate>Thu, 21 May 2009 02:00:00 GMT</pubDate></item><item><title><![CDATA[Drupal.behaviors LADrupal Lightning Talk]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/drupal-behaviors-ladrupal-lightning-talk</guid><pubDate>Fri, 03 Apr 2009 02:00:00 GMT</pubDate></item><item><title><![CDATA[Javascript, jQuery, and jQuery UI (oh my!)]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/javascript-jquery-and-jquery-ui-oh-my</guid><pubDate>Wed, 01 Apr 2009 02:00:00 GMT</pubDate></item><item><title><![CDATA[Zipcode Redirect Module]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/zipcode-redirect-module</guid><pubDate>Sat, 24 Jan 2009 02:00:00 GMT</pubDate></item><item><title><![CDATA[DrupalCampLA Revision Control Presentation]]></title><guid isPermaLink="false">https://activelamp.com/blog/drupal/drupalcampla-revision-control-presentation</guid><pubDate>Mon, 22 Sep 2008 02:00:00 GMT</pubDate></item></channel></rss>