Category Archives: Fun

Vista to Ubuntu (100%)

I had enough with eating crap with Vista. My last line of patience warned off when I happened to wait about 5 seconds when changing from one MS Doc file to another and also happened that I was running with time to finish a project report. No, I’m not running on 256 ram, it’s 1 GB and this kind of a time wastage is totally unacceptable. You may ask why I put up with Vista in the first place. That’s thanks to HP’s decision to embrace Vista so my laptop was pre-built with Vista and no chance to downgrade because there are no drivers. So where to go now ? Easy….Gutsy.

So I’m now another guy who left windows permanently because of their own defects. I was playing dumb with Vista for this long had nothing to do with Vista being better, it’s because of substitutions not being available for some applications that I was used to in Windows environment – mainly Macromedia(now Adobe) Dreamweaver and Fireworks. Now before biting my head off, yes – there are good web developer editors in Linux such as NVu or KompoZer but they will need another few developing years to get into the same line as Dreamweaver (which had a long time to develop into the state now in) and I have to have some thing until then.

But my worries were groundless as Wine now supports Macromedia 8 series like a babe. Dreamweaver, Fireworks and Flash all works perfectly with Wine – installation to Execution. Another great thing with Gutsy is that my Broadcom network card support is inbuilt and with some additional applications I can search networks and connect to them like a charm. Also I’m using AWN manager to manage desktop (here is a great article on desktop styling – thanks to Lakshan) and now it looks like a hybrid between Leopard and Vista. So what else I can ask for ?

Here is my application list in Ubuntu.

Web developments = Wine + DreamWeaver 8

Web images = Wine + Fireworks 8

Photo Editing = Gimp

Java editor = NetBeans for Linux

Python = Eclipse with PyDev plugin

IM client = Pidgin

Wifi manager = gtkwifi and wifi radar

Skype = Skype for Linux

Btw, My machine is AMD 64 X2, therefore had some issues and had to do some tweaks when installing some applications but nothing I can’t handle with some effort. The catch is that I can work with all comforts like in Windows with half the memory usage as in Windows.

Vista-Leopard Look

DreamWeaver in Ubuntu

GTKwifi

Favour returned to Drupal

As I mentioned in an earlier post we, people at Vesess now use Drupal heavily for our developments. We built our new job protal Plex using Drupal as the base and through heavy use of modules provided by Drupal community. Therefore I felt we need to make a return contribution to the Drupal community.

The best way to pay back the favour is contributing to the Drupal community. So here is my first Drupal module release ( and hope it will be only one in many to come).

Name : RequestInvitation

Dependencies : Invite

Licence : GPL

Backend and front of requestinvitation module

Tagged

Drupal-The best open source CMS of the year

First let me say a big sorry for being absent for more than two months of time. I was having sort of a writers block and didn’t have a mind to write anything. But that doesn’t mean I was idle for the whole lot of time.

In fact, it has been good in regards to my work at Vesess. After last year exams were over, I put all my effort into finishing some works that have been elongating. And I also got the chance to help build our new job portal Plex.lk which opened to public recently and seems promising.

The specialty of Plex is that it is totally based on Drupal, which is the best Open Source CMS in Open Source CMS awards, 2007. The experience is totally exhilarating, when compared to some other CMS such as Expression Engine (I will write about that experience later)

The work I did mostly involved around module customization. Actually I had to create a new module for the site and I’m on my way publishing it to Drupal community. One of the best things about Drupal is that its huge array of modules, which covers almost everything. But when we were going to launch the site we were presented with a requirement to moderate invitations (since the site is still in beta) and we were unable to find a suitable module for that. So I created a new module which use one existing module – Invite and I named the new module ‘Invite Request’. (The new module is in use, you can see it in right hand side bar of Plex.lk)

I guess I will be seeing more of Drupal in future as Plex.lk is still on its way and there’s lot more work to be done. And it’s a good news because I’m enjoying my work with Drupal.

End of a great three months

First, I’m sorry about not being able to post any thing in a while. I’ve been caught up with my Summer of Code final works and university works, I’ve hardly had any time left. Summer of Code finals evolution began on 20th August and I’ve tried to finish all goals before the deadline.

By midterm evolution, I had built the basic work for the text engine. It had a solid structure and ability to render inline tags by then. But after the midterm evolution I pushed myself bit hard than in the first half of SoC and could finish all the goals I’ve setup with my mentor.

Now Foiegras has the ability to render both inline tags and block tags. Rendering block tags had been something to think over and it was very satisfying to see it’s accomplished at last. Then it came to rendering images, and it wasn’t hard as implementing block tags and could finish quickly. Also meanwhile I understood that the text editor should have a mechanisms to validate and render tag attributes. So I’ve implemented the structure for attribute validating and rendering, in which you can define what are the attributes that’s valid under a given tag and what are the valid values for that attribute. (Similar to a DTD) . As the final goal I’ve planned to finish Foiegras table support, which is a bit complex task since Foiegras table structure has considerable amount of attribute variations. Because of this, I’ve focused only on implementing the basic table support within the SoC time period and could finish that. This is the current status of FoieGras text engine.

Even though the GSoC time period is over, it’s really is the beginning of FoieGras project. Since this project is starting from the scratch, I only focused on basic needs of the text editor that will be required for a first release. For this release two parts of the project will be merged and come as a complete text editor. I’m itching for that first release to see how the response is going to be since that’s what we will be reaping from the effort we have put into the product.

This three months of time period has really made an effect on me. It has helped me to get more in touch with Open Source developments and directly contribute to it through Gnome, which is the most favourite Linux desktop environment according to a survey of DesktopLinux.com. It was a great pleasure to work with such a community which consists of a large bunch of very entusiastic people.

Throughout the Summer of Code time period and even before that, my mentor Don (Don Scorgie) has been a great help to me, and for that I’m in debt to him. He is also the one who directed me to this project at the beginning when I was looking out for projects. Also my partner in Foiegras throughout Summer of Code period –Phenatic and his mentor Shaunm have been very supportive throughout the project. Phenatic has implemented a cool application shell for Foiegras and as I’ve mentioned before we have to combine the application shell and text engine for the first release. As a final remark, I’d like to thank everybody who has given a hand to this project and made me possible to product something useful(hopefully) for FOSS community.

Screen shots of the current FoieGras text rendering status is given below.

The final look of fiegras text rendering at the end of SoC

The final look of fiegras text rendering at the end of SoC

FoieGras- First look at how the text rendering

After about a months of time into the GSoC project, I was able to finish the first significant improvement in the project that happened from my side. For a long time I was wandering here and there testing one thing or the other to see what’s working best and finally got a breakthrough.

For now FoieGras (The code name of the editor we are developing) text engine is capable of these capabilities. It can render some given tags but only inline tags. It can hide and show tags, so if the user wants to see tags and work with them it’s possible. Also you can add more tags and configure the style tags, which are rendered using a configure file. I think it’ll be the main configuration file with regards to text rendering functions. After phenatic (http://phanatic.hu) releases the first UI part, we’ll be able to map the menu events to this text rendering functions and present the first release of FoieGras. 🙂

To tell you how the implementation of FoieGras is done: it’s done using python and PyGTK as the wrapper for GTK to do UI work. First I planned on implementing the text renderer using some thread system, giving a thread to take care of each tag. But soon I understood that it’s a waste of time and resources so thought of a better way. Now the text rendering is done through the XMLparser that comes with python, and so far it’s working nicely.

Also my mentor ( Dr. Don Scorgie – yeah, he is now a doctor 🙂 . Congrats Don ! ) is helping me with technical details and brilliant ideas. FoieGras now has a repository in GNOME svn and I’ve created a branch for tag rendering implementation and copied my works there, So you can check it. Another news is that I’m planning to goto GUADEC next 14th July and I hope it’ll be fun and be able to discuss more about FoieGras there with the team and also hack FoieGras there.

FoieGras-1

FoieGras-2

FoieGras-3