What we are

#! code was set up in order to provide useful information for programmers of all skill levels and as a space for programmers to write about what interests them. After more than a decade there is plenty of information on the site and plenty more to come.

We have tutorials about web technologies like PHP and JavaScript, servers like Apache and Solr, CMS systems like Drupal and even programming with Python.

If the code or solution you are looking for isn't available then we would love for you to make suggestions, or even become a contributor. If you are interested in becoming an author then please get in touch!

We offer a number of different services including audits, tutorials or just guidance and advice. If you are stuck on a problem then we might be able to help you.

Our Philosophy

We don't treat our readers like idiots so we won't explain everything to the last character, but we will endeavour to write for all skill levels. The #! code team assume that you have some experience with programming, but if something is not clear (or completely wrong) then write in and tell us. We welcome all feedback.

All of the code placed onto this site has been tested to the best of our ability and resources so it should work out of the box. If you spot any problems then please let us know! You should be aware the all the code here is "use at your own risk" and we can't take any responsibility for loss of data or server downtime as a result of the code on this site causing you problems in your environment.


In case you are wondering about a licence we follow a Creative Commons Attribution 4.0 International Public License.

Put simply, this means you are free to:

Share- copy and redistribute the material in any medium or format.
Adapt- remix, transform, and build upon the material for any purpose, even commercially.

As long as you give credit back to either #! code or one of the authors.


If you want to write an article for the #! code site then we would be very happy to publish it. Get in touch to talk about becoming a contributor.

We do have a few rules that we would like you to follow.

  • If the article contains code examples and explanations (which they should preferably do) then they must actually work or at least be factually correct.
  • Please don't copy and paste articles from other sites and submit them. We do actually check this.
  • We would also appreciate it if you look at our site to make sure that the article you are writing hasn't already been done. Although you can write a different slant or approach to a problem that we have addressed.

Other than those points it doesn't have to be very long and we will provide you with a link to your own site if the article gets published.


Everyone is quite welcome to leave any comments that they want to, but we will not approve useless comments with suspect links in them. The site has several spam filters enabled as well as full moderation on all comments. If you want to leave a comment then follow these simple rules.

  • Have something to say, even if it's just a "thanks!". If we have helped you then please let us know, the feedback is always useful (and motivating).
  • If you spot a problem with the code then please leave a comment as it helps correct any mistakes. This can also help people see common mistakes and solve them in the future.
  • By all means put links in your comments, but don't put links that our spam filters are likely to block.
  • If you type in code in your comment then please use the included code snipped tool. Of course, you don't have to, but it helps when reading the code.
  • Be constructive! If something doesn't work then saying things like "it doesn't work" are not helpful. Try at least giving some details as to why things don't work. What is it doing that you didn't expect? What have you tried? What are your ultimate goals with the code?

The bottom line is "join in" but don't abuse the site.