<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>pingVision</title>
  <subtitle>Interactive Design + Development for Drupal websites</subtitle>
  <link rel="alternate" type="text/html" href="http://pingv.com/blog/matthews/200708/dont-hack-core"/>
  <link rel="self" type="application/atom+xml" href="http://pingv.com/node/3696/atom/feed"/>
  <id>http://pingv.com/node/3696/atom/feed</id>
  <updated>2007-08-31T14:03:06-05:00</updated>
  <entry>
    <title>Don&#039;t Hack Core</title>
    <link rel="alternate" type="text/html" href="http://pingv.com/blog/matthews/200708/dont-hack-core" />
    <id>http://pingv.com/blog/matthews/200708/dont-hack-core</id>
    <published>2007-08-29T22:11:18-05:00</published>
    <updated>2007-08-31T14:03:06-05:00</updated>
    <author>
      <name>MatthewS</name>
    </author>
    <category term="best practices" />
    <category term="Drupal" />
    <category term="Drupal core" />
    <category term="hack" />
    <content type="html"><![CDATA[ <p>I help moderate an <a href="http://www.techsoup.org//fb/index.cfm?fuseaction=forums.showSingleForum&amp;forum=2033&amp;cid=117">emerging technologies forum</a> on the TechSoup site--a technology for nonprofits company.  A month ago, I made <a href="http://www.techsoup.org//fb/index.cfm?fuseaction=forums.showSingleTopic&amp;forum=2033&amp;id=68835&amp;cid=117">a short introductory post</a> on the merits of using Drupal.  It led to a discussion that included CiviCRM, upgrades, modules, WAMP, with a link to a good offsite introductory post by <a href="http://www.feconnect.com/2007/08/18/building-online-communities-with-drupal/">Dave Briggs</a>.  </p>
<p>Dave posted on TechSoup that one of the reasons that Drupal is a great tool is because you can hack the source to your heart&#39;s content.</p>
<p>PLEASE, DO NOT HACK CORE.</p>
<p>I wrote on the TechSoup forum the following response.</p>
<blockquote>
<p>While it is quite possible to modify the source code in core, it isn't a good practice. There are a few reasons why.</p>
</p></blockquote>
<blockquote>
<ol>
<li>Hack core and when you want to upgrade to a later version of Drupal, the experience can be nearly impossible.</li>
<li>If you decide to work with a Drupal developer after slugging away at it for a while and you've hacked core it is going to cost you. Developers will typically charge you to unhack the code and then will create a custom module (or use an existing module) to do what-ever it was you hacked core to do. Then they will get down to work on what you wanted them to do.</li>
<li>If you hack core, the huge community may not be able to answer your questions--the core software no longer matches that of the greater community making trouble shooting tough.</li>
</ol>
<p>Interestingly, <a href="http://drupal.org/user/9446">chx</a>  entered into the conversation pointing out that Drupal is for everyone so anyone should be able to contribute to it. If you are knowledgable, take a slow methodical approach to creating patches.</p>
<p>So, in general, please don't hack core.  It is bad practice and can cause real difficulties down the road.  It is much more sensible to create custom modules that over-ride core if there are behaviors you want to see changed.</p>
</p></blockquote>
     ]]></content>
  </entry>
</feed>
