Wednesday Dec 31, 2008

NetBeans support for Drupal Enriched : Wizard for developing Themes

Enriching the existing NetBeans plugin to assist developing Drupal based websites, we have added a wizard for developing a new Drupal Theme. On providing details of new Theme, the wizard auto-generates the mandatory '.info' file with template code under the 'sites/all/themes//' folder.

The wizard works as follows :

1. Right click on the Drupal project to add a theme. Click on New --> Other. Select Other and we see an option to create a Drupal Theme. Select it and click on Next as seen in the screenshot below.

2. In the next screen, enter the theme name (preferably in small letters, as per the naming convention). We see the new file, .info getting enlisted in generated files list. The following screenshot captures this.

Click on Finish.

3. Now, the new theme gets added to the Drupal themes and the info file gets autogenerated with template code, as shown in screenshots below :

Now, the user can go ahead with creating a theme, either by deriving from a base theme and modifying the css/template files accordingly, or creating a new theme using a theme engine. As Drupal provides PHPTemplate Theme Engine by default with the Drupal sources, user can create the template php files required for the 5 components and create a new theme. The plugin is uploaded at the Project Homepage and NetBeans Plugins Portal. The documentation for usage of the plugin has also been uploaded on the Project Homepage.

Tuesday Nov 11, 2008

Palette components for creating Drupal hooks

Extending the existing NetBeans plugin support for Drupal 6.x, we implemented and released palette components for assisting creation of Drupal hooks, both library and user-defined ones. The plugin has been released at Project homepage as well as NetBeans Plugins Portal page. The usage of component has well been documented over here and has been uploaded on project homepage too

In short about the palette components, we provide the following support :

1. For the PHP files, .module and .install, we provide two components in the palette, viz., Library hook and user-defined hook. The following screenshot captures the palette.


2. For creating a Drupal 6.x library hook (like block, filter, access, install, etc.), we need to drag onto editor/double click on the component, select the desired hook and click ok. The corresponding code with suitable parameters gets generated. All this has been captured in the screenshot below :



3. For creating a user-defined hook, we need to drag onto editor/double click on the component, enter the name of hook and its description and click ok. The code with suitable comments gets generated. All this has been captured in the screenshot below :



4. You can also configure the display of the components in the palette by modifying the settings. Go to Tools → Palette → PHP Code Clips in the NetBeans IDE. Now, expand the Drupal Hooks section and modify the settings for the components according to your choice. The screenshot below captures the configuration settings window.


Thus, without caring much about hook templates, the developers can directly jump over to implementation part of function.

Friday Oct 31, 2008

NetBeans support for Drupal CMS

Drupal is a free and open-source modular framework and content management system (CMS) written in PHP. Recently, it won the best PHP Open-Source CMS from Packt Publishing. I have been working on providing NetBeans support for Drupal. As a part of this, I have identified in what way can the support be provided and implementing it accordingly. The details are uploaded over here.

Accordingly, we have documented steps for hosting a Drupal-based website through NetBeans IDE which includes downloading the Drupal source PHP files and uploading it onto a web server (preferably Apache), all through NetBeans IDE. You can find the documentation over here. Also, a NetBeans plugin has been developed for assisting Drupal Module development. The plugin provides a wizard to create a new Drupal module, and on entering the module details and clicking on finish, the IDE automatically generates the <modulename>.info, <modulename>.install and <modulename>.module files along with the template code. It generates this module under <DrupalSource>/sites/all/modules. The template code is generated sticking to the Drupal Coding Standards. The following screenshots give a visual overview of how the plugin works.

1. Wizard to create a module


2. Newly created module (feed) as seen in Project Hierarchy


3. Newly generated, feed.module and feed.install files with template codes for hook implementations

The plugin and documentation of how to install and use it are available over here.

Happy 10th Birthday, NetBeans!

NetBeans celebrates its 10th Birthday throughout the months of October, 2008. Its been 10 long years and the IDE has evolved into the present dominating position! You can have a look at the history of NetBeans over here. And here's what one of the founders of NetBeans, Jaroslav Tulach, had to say on this auspicious occasion. Good luck to NetBeans in future! :)

And along with these celebrations, the NetBeans 6.5 Release Candidate 2 was released! It comes with some great feature list with PHP support totally revamped, and lots others. Some of the features I really liked and would love to explore further are :

-- PHP editing features like code completion, syntactic and semantic code highlighting (Since I am working on providing NetBeans support for Drupal).

-- Automatic deploy on save for Web applications

-- Automatic compile on save for Java

-- Improved Eclipse project import and synchronization for Java and web projects.

-- Deadlock detection with visual indication for Java debugging

Monday Aug 11, 2008

Take-overs from DrupalCamp'08, India

I attended the first Drupal related technical gathering in India, DrupalCamp'08, organized by Gloscon Solutions Inc. at Gandhinagar, Gujarat. I was there to talk on the work done by Sun around Drupal, which were majorly concerned with performance of Drupal on Solaris and NetBeans IDE support for Drupal. The event was held during August 8-10, 2008 at the huge beautiful campus of DA-IICT, Gandhinagar.

The event was marked by a relatively low attendance, owing to the slow growing popularity of Drupal in India and secondly to the recent terror attacks in nearby regions. It started with a keynote by Mr. Roshan Shah, CEO, Gloscon. He spoke about the emergence of popularity of Drupal in India and about the scope of effectively introducing Drupal based web-sites within India (especially in Government Organizations highlighting on localization support). I was a bit amazed when he pointed out that Drupal User/Developers in India are more in number in Gujarat and indeed most of the company representatives that had come for the meet were localites! Well, major IT hubs like Bangalore/Hyderabad/Pune have a long way to go in this particular area! The talks were divided into two tracks : Students and the Developers/Marketing track. Students track consisted of talks like basic introduction to CMS and Drupal, Hosting Drupal based website, Getting involved in Drupal Community and Demonstration of some in-place websites. The Developers/Marketing track was meant for code Drupal developers and it included sessions like Building Scalable Business with Drupal, Building Social Networking sites, Drupal solutions for building online store, and talks by me on Drupal on Solaris and NetBeans Support for Drupal. These sessions were to be followed by a Code Sprint on the third day.

I spoke on Drupal on Solaris and NetBeans support for Drupal. I threw some light on the benchmarking tests done on Drupal running on Solaris and Linux, also running on different SUN servers using different software stacks. It was followed by the showcase of some of the projects we do to integrate/run Drupal on Solaris, like Amazon EC2 image, package on IPS repository and some whitepapers, etc. On the NetBeans front, I concentrated first on the new NetBeans support for PHP development and threw some light on its cool features. Then I spoke about the documentation to host and run a Drupal based website through NetBeans IDE as well as the Plugin for assisting Drupal Module Development. I focused on the Drupal support by various IDE's and how NetBeans, being a FOSS, would be more advantageous! I have uploaded the presentation over here (Drupal on Solaris) and here (NetBeans support for Drupal).

There was a lot to take over from the DrupalCamp! Firstly, people were very pleased at the availability of Amazon Machine Image (AMI) for Drupal on Solaris. There were couple of curious enquiries on it. I will be passing on the comments/enquiries to the concerned SUN Engineers. There were some representatives enquiring about the Sun Startup Essential Programme. I will be hooking them up with concerned people in SUN. Also, I got some good ideas to improve the NetBeans Plugin support for Drupal. I plan to capture all the requirements and all possible work that we can do to improve it further. Companies like Openkick, Gloscon and VirtueInfo have showed interest in evaluating NetBeans IDE for the Drupal/PHP Development.

And for me, it was a good experience, talking at the first Drupal related event in India. Myself, learnt additional things about Drupal and where it stands in terms of usage and popularity in India! Hope, SUN (products) and Drupal form yet another formidable pair.....

Wednesday Apr 30, 2008

Visit to an Old Age Home (Volunteer Week, Bangalore - 2008)

I feel happy to be writing my first blog touching the soft, non-technical side of a software professionals life! A visit, which revealed some of the harsh aspects of life, some inspiring lifestyles, revision of mundane thoughts and lot many things. Around 20-25 of SUN Engineers visited the 'Shambhavi Home' for the 'Aged' Ladies, Bangalore on April 28, 2008 as a part of the Volunteer Week held at SUN. It was a good experience spending some time with the mother-inmates over there.

First of all, small description of the activities held. To start off with, there was a session of  'bhajans'. Though not much into devotional act, I pretty much enjoyed the time spent in praising and thinking of GOD! Seldom do I do this! :) This was followed by 'Bharatnatyam' dance by a SUN Employees daughter and a friend. Again, though not much into dance forms, liked the taps made by feet, which ultimately led to sound of 'ghungroos'. This was followed by games organized to entertain them. Some of them were made to say their story of life, and some asked to perform, in terms of singing/dancing. It was a fun time for them as well as us. Then followed the lunch which was prepared by them. Though they were asked to bring in caterers, they opted to cook themselves and were indeed ready with the food by the time we reached. Post-lunch, we had the game of 'Tambola', and winners were rewarded suitably. Also, as a token of love, medicines, flasks, stress ball, etc., were distributed amongst the inmates. And it all ended with the vote of thanks by the granny, incharge of the Home. Thus, ended the visit, hopefully leaving all of us with some good memories.....


Me handing over a flask to a 83 year old Granny

Now 2 cents from my side about the experience! The first thing that pleased me was the sight of the granny's, welcoming us with folded hands and sweet smile and saying 'namaskara'. The smile on their faces, especially of the 80 year old ones, was a pleasing sight. The language was always a problem, as most of them knew only Kannada. However, that didn't stop them from interacting with us and we mostly communicated in sign language and broken Kannada. I was also touched to see the excitement they showed in preparing food for us. I visited the kitchen and some 5-6 grannies were busy preparing chapatis. On seeing me, the warden granny took me to a tour of their store room, wash room and kitchen. It was like they were staying as a single unit, forgetting the bitter past that they might have had! Initially, some of them were silent, but by the end of the day, almost everyone spoke up. I could even get details of the personal lives of couple of grannies. I felt sad, that inspite their children being well-educated (some of IAS cadres), they had to spend their life at old age home at this age! Its a shameful act on the part of their children! Anyways, I did what I could. Made couple of them smile by listening to them and spending some quality time with them.

It was a good experience and looking forward to many such visits in future!

Tuesday Apr 08, 2008

About Me!

I am Sujit Nair. Have been associated with SUN since May, 2007. I majorly work for building, enhancing and promoting the open sourced technologies/products in and around SUN. Porting onto Solaris/OpenSolaris, Performance Enhancements of utilities on SUN's Servers, Feature enhancements for SUN's products,etc. form the core of my work. Apart from this, I am currently analyzing my scope of getting associated and contribute actively to a high profile open sourced community.

During these years of association with SUN, one thing I can surely say, there would be very less companies with such a high awareness of moral and social duties. A very highly principled company indeed! Life @ SUN has been cool! :)


Sujit Nair


« August 2016