I recently tried moving from MySQL to MariaDB, and was truly surprised with the results - everything works just fine, didn't even have to recreate users/databases. Well, everything except Redmine (and I would assume, and other Passenger app).
There are times, when you need to make your app(s) work in a corporate environment. And when you combine corporate with databases, you usually end up with Oracle. In my case, I need to make a connection from PHP 5.3 ( CentOS default ) to Oracle 11g (on a different host). With some luck, this will help others trying the same.
I recently started working for a big firm, which (naturally) uses Active Directory. The domain is company.local , with useful servers all having the addresses server.local etc. To my surprise, Linux didn't ask for DNS resolution on these names, making it very hard to work. Thankfully, that's simple to resolve.
Sometimes, I thought that even using a CMS is overkill - mainly when a client wants a website with a couple of static pages, which they want to be able to update on their own. I even made a "mini CMS" of my own, but solving your own bugs on your free time can be tedious. Yesterday I stumbled upon a simpler way - namely, Get Simple.
Forms API is great, let me start there. However there are some cases where you want to ... ahem, go around it. One such cases is with checkboxes (where you have a number of checkboxes), specifically when you want to alter just one of the set. Here's how to fix that!
There are more times than I can count that data needs to go from one format to another, two of the most popular being in a database and another being a text format. In my case, database equates to MySQL, and text format is something that can be derived easily from a CSV file. Thankfully, the whole process is quite simple.
Virtual hosting is one of the most important things to happen in web hosting over the recent years. It allows a single IP to be associated with multiple websites. Though there are many panel solutions that offer virtual host management, it's nice to know what's going on and even better to actually be in control. The tradeoff is that small mistakes can cause all of your sites to go down until you fix them -- unless you automate.
One of the great usability features in the Drupal Form API are simple validators, such as #required. Just set it to true, and Drupal takes care of it. However, when in a multistep scenario, simple validators go haywire since moving to a different step validates the form. Normally, you cannot override form errors within your validation hook... but there's a workaround.
I'm a big fan of Chiliproject, an open source fork of Redmine, a popular issue tracker. However, it is written in Ruby on Rails (RoR), which I am not very familiar with. During installation I got a number of file access errors, which led to the question -- what user do Passenger RoR apps actually run under?
More often than not, you'll come to a point where you need a field value of a node. Not the whole node, just a field. The most common case would appear to be when you need an image (say a promotional image). Some ways are easier than others for it, however you need to think of what you are doing under the hood.
I assume that if you've build a relatively large site, you've stumbled on Nodequeue by now ( summary: it allows you to create lists of arbitrarily ordered nodes ). But clients always had a thing for imagining things that are normally tricky to do, and one of them is to create a block that has arbitrarily ordered content per section of the site, usually by taxonomy term.
What every new developer in Drupal needs to get to his head (and hears all the time in the community), is that no matter what, you should never EVER hack core. Except when your problem is one that has absolutely no other solution. In our case, using an alternate administration theme, will cause access errors to administration pages to be rendered in that theme -- and that cannot be solved otherwise.
If you're using Drupal without Views... you're probably doing it wrong (sic). Views really are almost a the only way to have full control over any content listing, with minimal effort. You can even customize things on a per-field basis via template overrides. But how do you add particular classes to individual rows?
Drupal has built-in search functionality, and for the most part? It works just fine out of the box. The pain starts when clients ask for customization in the results page -- and a lot of it. After reading a nuber of posts on the net, I finally found a bit that others seem to ignore: you get a whole lot of info in the search result template.