Every Flavour Beans

“The time has come…to talk of many [technologies].” –Lewis Carroll(’The Walrus and the Carpenter’)
Development Tools. Web Frameworks. GNU/Linux. Nokia N800. Video Encoding.

June 28, 2006

Writing Your First Program With Mono And MonoDevelop

Filed under: GNU/Linux, Mono — tabrez @ 10:18 pm

Installing Mono And MonoDevelop on Gentoo and Debian/Ubuntu(5.10)
Installing Mono And MonoDevelop K/Ubuntu(6.06)

Mono applications can be developed using any text editor and the mono compiler(mcs). Type the following program in your favourite editor:

C#:
using System;
namespace FirstMono
{
    class Hello
    {
        public static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
        }
    }
}

C# Program in MonoDevelop IDE

Now go to a shell prompt and compile and run the program:

sh# mcs Hello.cs
sh# mono Hello.exe

You can copy the same Hello.exe file to a Windows machine and execute it there; you get the same output.

To create a C# application using the MonoDevelop development environment, follow these simple steps:

Start Monodevelop from the GNOME/KDE menu. Select 'File->New Project' or press Ctrl-Shift-N to create a new Project/Solution. Select "C#" in the left pane and "Console Project" in the right pane of the dialog box. Type 'FirstMono' as the project name(in Location->Name field) and press the "New" button. You will see a sample C# file created in the open window(sample code is not created if "Blank Project" is selected in the "New Solution" Dialog box). Modify the string passed to the WriteLine() method if you wish. Select "Run->Build Solution" to build the project. Run the project using "Run->Run"(or press "F8"). The output is displayed in the Application Output window at the bottom.

C# Program in MonoDevelop IDE

Most of the frequently used operations(like "Build Solution", "Run" etc) can be invoked from the toolbar buttons too.


If you want to receive future posts by email, enter your email address here:

Related Posts:

June 25, 2006

Why I Switched to Google’s GMail Hosted Domain Service

Filed under: General, Web — tabrez @ 10:13 pm

When I got the invitation to test the beta version of Google's GMail Hosted Domain Service(HDS), I couldn't make an immediate decision whether I should switch to it or not. Agreed I should have made such a decision before requesting for an invite from Google but initially I was of the thinking that I can manually control where the MX records for my domain point to, so it will be an easy switch between Google and my hosting provider's service. I checked it out when I actually got the invitation from Google and found to my utter surprise that customers are given direct access only to some of the DNS records and MX records are not one of them. Going through a quick comparision between the services provided by my hosting provider and by Google, I finally decided to go with Google. Here are the reasons why.

There is no doubt that Google Mail provides a fast and easy to use interface which in my opinion is better than any other email interface available today. [Converstation Stacks + Labels + Filters] has become an essential feature set for my day-to-day email management activities and I could now hope to get the same interface for my domain email accounts too. One thing that I was sorely missing from my hosting provider's email services is the mailing lists: they didn't support mailing lists at all(which would have overloaded their servers in their opinion). Google's HDS makes creation of mailing lists easier than creating a google group. This feature infact was what finally prompted me to switch to Google. One drawback of this feature in its current form is that all the members of such a mailing list must have their email accounts at my domain - I can't add someone with a usual GMail or Yahoo account. This forces me to maintain two different mailing lists - one at my domain for those who have email accounts at my domain and a Google Group for the rest.

When I first learnt about Google's HDS, I was under the impression that it doesn't support a 'Catch-all' address that will catch all the emails that are sent to non-existent email account ids under my domain name. I guess this was the case when the service was initially launched but now a 'Catch-all' email account can be easily created. Some people also reported that HDS is curiously hosted on Google servers and not on GMail servers, hence there may be considerable downtime on these servers when it gets started to be used on a larger scale. Don't ask me to explain the logic behind this claim, its not mine.

Google Calendar, Google Chat and data storage space independent of the hosting provider were the other reasons why I switched to Google's service. Below are some screenshots of Google's HDS:

Login page looks similar to GMail's login page:

Login Page
Administration Interface for Google Hosted Domain Email Service

Adminstrator Main Interface

The service cannot be used until you point your MX records to Google's servers.

Configure the MX Records

MX Records should point to these Google Servers

MX Records should point to these Google Servers

The Inbox looks the same as that of GMail's interface.

Inbox interface


If you want to receive future posts by email, enter your email address here:

Related Posts:

June 20, 2006

Two Applications For Easy Management Of ‘USE’ Flags In Gentoo

Filed under: GNU/Linux, Gentoo — tabrez @ 10:41 pm

The feature I like the most in the Gentoo operating system is the flexibility available through the use of 'USE' flags while installing the software packages. Its one of the features which you feel fortunate to have found out, wondering how you could have lived without it in the other operating systems.

Many operating systems(Debian/Ubuntu, Gentoo) handle the first level of dependency quite efficiently - the dependencies which are essential for a package to work are automatically resolved and installed whenever you install the package with 'apt' in Debian/Ubuntu or 'emerge' in Gentoo. yum, urpmi, yast etc are trying to achieve the same but they are still not as robust as the earlier two. The second level of dependencies that are not essential for the package to work but can add to its core functionality are still managed by the users manually in every operating system(AFAIK) except in Gentoo. Its just one more thing to worry less about for the Gentoobies.

If you want every package that can provide functionality related to MySQL software to have such support included in it when it is installed, then just add the 'mysql' keyword to the 'USE' flag in the '/etc/make.conf' file:

USE='gtk gnome kde qt apache mysql'

MySQL support will now be added to every application that has such bindings available for it. Now you can Install new applications or upgrade the entire system never bothering about missing MySQL support in any of the applications. Similarly you can chose to include support for Java, Apache, alsa etc for the applications that support them. Have a look at the Gentoo website for a complete list of USE flags that are supported by Gentoo or run the following command from a Gentoo system:

sh# less /usr/portage/profiles/use.desc

USE flags can also be used to disable a certain optional functionality(if it will be installed by default but you don't want it, for example) by prefixing the flag with a minus-sign("-"):

media-sound/banshee ipod njb -aac real

In this case, aac support will NOT be installed for the Banshee application.

Adding a USE flag in the /etc/make.conf will globally enable it for the entire Gentoo system and will apply to every application that is installed on it. To enable/disable USE flags on an application to application basis(you want MySQL support in one application but not in the other), you can add a separate line for every application in /etc/portage/package.use file:

=dev-lang/php-5.0.5-r5 cli cgi apache apache2 mysql dba gd

These USE flags will be applied only to the PHP package and only for the version specified in the above line. To enable the use flags for any version of a package, drop the version number:

media-sound/banshee ipod njb aac real

This installs the optional support available for ipod, aac format, real media in the Banshee music player. For more infornation on USE flags, see this.

Two applications that simplify the management of USE flags in Gentoo are:

ufed profuse

Install them using the following command:

sh# emerge ufed profuse

The first one is console based and the second one uses a graphical interface. Though its not terribly difficult to manually add/remove the USE flags by directly editing the /etc/make.conf file, I find these two applications to provide a convenient interface to simply search through the list of flags available and enable/disable them with a single click/key press. Below are screenshots of these applications.

'ufed' console based USE flag editor

'ufed' console based USE flag editor

'profuse' graphical USE flag editor

'profuse' graphical USE flag editor


If you want to receive future posts by email, enter your email address here:

Related Posts:

June 15, 2006

Google Earth For GNU/Linux

Filed under: GNU/Linux, General — tabrez @ 6:44 pm

Being one of the people who kept sending intermittent emails to Google about why there is no GNU/Linux version of their popular Google Earth client, I was overjoyed when finally a GNU/Linux version of it was released by Google several days ago. Now I won't feel lost when 'Windows guys' keep talking about what they have found with Google Earth.

It is a 16MB binary download(native binary executable, unlike Picasa For Linux which needs Wine software to execute it) and installs in any directory specified by the user. I was wondering if it will ask for the root privileges and will mess up with my Gentoo install system but thankfully it installed everything within 'google-earth' directory in my home directory. Download the binary file from Google Earth website and run it:

sh# chmod +x GoogleEarthLinux.bin
sh# ./GoogleEarthLinux.bin

A GUI window will popup and ask for the directory in which the client should be installed.

Google Earth Install Dialog Box

After clicking the 'Begin Install' button, the application is installed in the specified directory.

Google Earth Getting Installed

Upon completion, the installer will offer to start the application.

Google Earth Installed

You can start the application any time by running the 'googleearth' executable from the shell:

sh# $HOME/google-earth/googleearth &

Google Earth Splash Screen

(The warning is about the emulation of OpenGL in software. If you use a good graphics card then you can consider updating the current drivers so that googleearth can run more efficiently. More information in Google Help Center.)

Add 'google-earth' directory(or wherever you installed it) to the path in the profile file to use a simple command to run it. Add this to .bash_profile in your home directory:

export PATH=$PATH:$HOME/google-earth

Now you can start Google Earth client by running:

sh# googleearth &

Google Earth Showing Norfolk

Hoping for more and more Google services being accessible from GNU/Linux operating system.


If you want to receive future posts by email, enter your email address here:

Related Posts:

June 14, 2006

A Visual Tour Of Windows Vista Beta 2 (50+ Screenshots!)

Filed under: General — tabrez @ 1:14 pm

Not being in the habit of playing a lot with the Windows beta products, I have been giving a miss to the different, incomplete versions of Windows Vista that were being released regularly(for MSDN subscribers and the members of Vista Beta Program). My experience with testing a very early version of Longhorn weren't very enjoyable either. But yesterday I decided to give the public release of the Beta 2 of Windows Vista operating system a go - and I am not regretting the decision at all!

We have been reading the major technical differences between 'soon to be released' Windows Vista and the earlier Windows operating systems for some time now. Many of the interesting new features though have been removed from Windows Vista in an attempt to release it as early as possible. But I won't be discussing the real meat behind the new Vista operating system in this post; rather, I would just concentrate on showing what an eye candy of an interface Windows Vista is, even in a Beta 2 form, and it should only be improving from here. This doesn't need too much of talking though, just a handful of screenshots would do the trick :) . If you have already installed Windows Vista then this post is not for you. If you have not, browse through the screenshots to decide if it is worth to test out this beta or not. And once it is released, whether to consider buying it or not.

If you would rather browse all the screenshots without having to jump through pages, the following link provides a tour that is spread over a single page.
A Visual Tour of Windows Vista Beta 2 (Single Page)

You can also download all the screenshots as a compressed file using the following link.
Download Screenshots

Or browse through them by going here:
Browse the screenshots using the worst interface in the world

If you prefer to browse through the thumbnails and then decide which pictures to view in ther enlarged versions, then drop me a message and I will try to setup a separate like that.

Windows Vista - A Visual Tour

Windows Vista Look

This is how Windows Vista looks like when you first boot into it.

Windows Vista Default Look

Let us start with my favourite application in Windows Vista: Windows Media Player 11. It looks gorgeous in the black theme to match the default theme of Windows Vista and provides many improvements over the earlier version of the Media Player. I loved the support it provides to the Media Players that use MTP protocol(like Creative MP3 players).

Windows Media Player Welcome screen

The main window now looks attractive with Album art nicely organised providing a good visual interface for the users to select their favourite albums to play.

Windows Media Player Main Window

If you try to minimize the player, you are offered to minimize it and keep playing the music in the taskbar. Nothing new really. This is how it looks in the toolbar. Cuter than before.

Windows Media Player minimizes in taskbar

Burning audio cds is easier with a noob-friendly drag-n-drop right-pane.

Burn CD/DVDs with Windows Media Player

Windows Vista detects my iPod as a USB device...

Windows detects the iPod

...though it prompts to open the files in the file browser giving a hint that the operating system does identify it as a storage device(iPods are just FAT formatted USB devices on Microsoft Windows)...

Windows Media Player prompts to AutoPlay iPod files

...but shows no music files/folders or plays anything. Just lets browsing the 'Contact', 'Notes' etc folders in it; for the rest, install and use iTunes :)

Windows Media Player shows iPod files

But the support for the Creative MP3 players is excellent. I am more than happy for it as I possess two Creative Media Players(Creative Zen Sleek which you can see in the screenshot below and the Creative Portable Media Center) that are MTP devices.

Vista Detects Creative Zen Sleek MP3 Player(Single Page)->
Vista Detects Creative Zen Sleek MP3 Player(Read Page2)->


If you want to receive future posts by email, enter your email address here:

Related Posts:

Next Page »

Copyright (c) 2006, 2007 Tabrez Iqbal.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. Verbatim copying and distribution of this entire article is permitted in any medium without royalty provided this notice is preserved. A copy of the license is included in the section entitled "GNU Free Documentation License".


Powered by WordPress
This website is hosted by Dreamhost


You are viewing a mobilized version of this site...
View original page here

Mobilized by Mowser Mowser
Mobilytics