Posts

working with git

Build online shop using Drupal commerce

I have built a commerce demo site by using Drupal Commerce and Drupal 7.9, it was a breeze to setup but bit difficult to customise. I have used various types of products types and a single product display to manage all the content and products. The theme is currently 'bartik' which is the default theme that comes with Drupal 7. I enjoyed setting this shop up, i have used views to customise product pages, used taxonomy terms in the department and product pages to improve SEO and display of pages. http://www.grayns.co.uk/online/ Online Demo of an E-commerce site using Drupal commerce.

Does NoSQL means you forget everything you learnt at RDBMS school?

I found it interesting to see how to integrate NoSQL, but more interesting was to unlearn somethings i learnt through years of training - denormalise! Normalisation was the term that made rdbms, good normalisation design was supposed to be a hallmark of a good database designer. But NoSQL is different, forget joins forget collecting data from 10 different tables NoSQL is radically different and the best part is it works for very large datasets, is distributed, and some very big installations like twitter, amazon and others mean if you don't look at this seriously soon you will be in trouble. Drupal by itself doesn't support NoSQL out of the box and you don't throw away mysql yet, there is a module (cassandra) that was recently added on drupal.org which is worth checking, One possible way of integrating with drupal is using a nosql may be casandra or mongodb with your entities, infact this is one of the best things of entities, your fields can live in a separate database ...

My Macbook informs me of tragic death of Steve Jobs the Apple co-founder

Image
Like everyone in the UK i woke up to the news of tragic death of Steve Jobs the Apple co-founder, i was not going to write a blog post on the topic, but there was something that prompted me to write one. I got the news not from my tv but my macbook pro! I switched on my macbook, fired up a new tab in safari, and there it was, very simple, very sober 'Steve Jobs' 1955-2011. A real tribute to the design genius he was. I am sure there will be a new person at the helm of things at Apple, Apple may continue to grow in leaps and bounds or may just fizzle out - but you can't take that away from Steve, the way he came back to Apple when things weren't going very well - brought the iMac which was a run away success, followed up with other fantastic products we all love and cherish. The most important thing was he got Apple to believe they were not in the business to shift boxes but deliver what the customer expects, stuff that just works. Hats off and tributes to the g...

Configuring drush on Mac OS X Lion

I downloaded the drush from the drupal website at http://drupal.org/project/drush. I downloaded the 7.x-4.5 version -  I was using mac os x and if you are also using mac os or any other flavour of linux - you should download the tar.gz file.  Drush works best on linux/mac os x - it works on windows as well but has its limitations, although things are improving but you will need to install additional software that allows you to use many drush functions. If you are interested to look at how to install drush on windows then have a look at drush.ws. I did install on my old windows pc as well, got most of it working. Coming back to the topic, we are installing on mac os x - so here goes. The accompanying readme.txt file is quite good in showing what is required, and it really is straight forward. Albeit there are a few differences and may be you would like to customise your installation a little bit - but this is what i did. The first step was to download and extra...

How do you expose your legacy database tables to views in drupal 6 Part 2

Continuing from Part 1 of the post where we defined custom data table to make drupal aware of our legacy data, we also want to define custom filters that can be used by the views system to define conditional views. in the hook_views_data() or our example code in part one, the candidate_views_data() function you can see that a field was defined as below:     $data [ 'candidate' ][ 'candidate_gender' ] = array (         'title' => t( 'Gender' ),         'field' => array (           'click sortable' => TRUE ,         ),         'filter' => array (             'handler' => 'candidate_handler_filter_gender' ,         ),     ); notice the filter key in the $data array, we want custom data to appear here, for example 'Male' and 'Female', so we have defined a custom handl...

How do you expose your legacy database tables to views in drupal 6 Part 1

This is a 2 part post, that shows how I exposed a legacy table to views in drupal and used the incredible power of views to create many combinations static and conditional views. This was very helpful for my client. I had a requirement that warranted exposing existing database table to views, so that views can contain data from this table.  To enable this to happen, the following steps need to be taken. In a custom module you need to first define the views_api hook as following: function candidate_views_api(){     $view = array ();     $view = array ( 'api' => 2 ,                   'path' => drupal_get_path( 'module' , 'candidate' ). '/views' );     return $view ; } candidate module was a custom module which I already had, so it made sense to add this hook here.  The important bit here is telling the drupal sub-system where the views file will reside.  ...