Category Archives: Programming


How to get TextMate type Auto-Completion in Gedit

Gedit is the default text editor in Gnome based GNU/Linux distributions such as Ubuntu, Linux Mint, Fedora etc.

It looks simple and it’s easy to use but it is also very powerful. It’s not just for simple text files – you can use it as a programming editor. There are lot of cool plugins available for gedit, which makes it a very powerful text editor.

Few Useful Plugins for Gedit

You can install few most useful plugins (File Browser, Code snippets etc) using the command (in Ubuntu 12.04 or Linux Mint 13 or any Debian based distribution, while in RPM based distro, such as Fedora – use yum instead of apt-get) –

sudo apt-get install gedit-plugins

TextMate Like Auto completion in Gedit

In TextMate the auto completion feature allow you to auto-complete the variable names just by hitting Esc (the trigger key). It’s very handy for programmers e.g if you’re coding CSS then you can avoid typing the id and class names again and again (if already defined in corresponding HTML file) – and it also saves you from unnecessary typing errors. To get this kind of feature in gedit, you need to install a plugin – TextMate Style Auto Completion Plugin.


Installing The TextMate Style Auto completion plugin in gedit

  • Download The Plugin
  • Extract it and run the
  • Restart/Open gedit and enable the plugin from preferences window

NOTE : If you are a Rails Developer then you might want to checkout the article – Gedit Plugins for Ruby On Rails.

Try Git

Getting Started with Git using “Try Git”

Git is the most popular version control system, developed by Linus Torvalds (yeah!, he is the same guy – Creator of Linux) – for maintaining linux kernel code but now adopted by most of the developers.

Git is a distributed, fast, and efficient version control system (and of course – it’s a free and open source software), and most importantly –  it’s easy to learn. So if you’re new to version control system and need one for your next project then better start with git.

New to git ? Try Git in Your Browser (No Setup required)

Try Git is a simple web application that will explain some basics of git, in a very interactive way (just like try ruby). Since it’s browser based app so you don’t need to setup anything –  a modern web browser (such as Firefox, Chrome .. but not I.E) is enough. So in very short time – you can easily get an overview of git, it’s features and how it works (it simulates a git environment and allow you to execute git commands in browser).Try Git

It has been developed by Github (Social Coding – like a Facebook for Developers) and Envylabs (company behind codeschool and TryRuby).

Try Git – Learning git in 15 minutes

Recommended Links for Learning more about Git

gedit with gmate plugin

Most Powerful text editors for Ubuntu (12.04 LTS)

Ubuntu is the most popular GNU/Linux distribution among the desktop users – including the common users as well as developers. If you’re a programmer who prefer light weight and efficient text editor over the bloated and heavy IDEs then you may want to try some of these text editors (if you haven’t really tried). Text editors are great!, specially if you’re programming in a cool language like Ruby or Python.

So, if you’re new to Ubuntu and looking for some great text editors that will boost your long-term productivity and happiness, then you should certainly checkout Emacs or Vim.

Free and Open Source Text Editors for Ubuntu and other GNU/Linux distributions

#1. Emacs

Emacs is the most sophisticated text editor on this planet – it’s powerful and extensible enough to work with any language or environment. Core program was written by Richard Stallman, in Lisp programming language. Since – it’s a free and open source software – you are free to use it as you want. Emacs is a real time text editor, although the learning curve is very steep in beginning but it’s worth learning due to the long term productivity gain. Programmers and Authors often prefer command line interface for distraction free environment and Emacs is really good for that.

Key Features 

  • very extensible
  • very powerful
  • highly productive (as it maximizes the use of keyboard)
  • light weight, fast and efficient

#2. Vim

Vim is another great – text editor which is very powerful and extensible (by means of plugins/scripts – you can easily find on github). A lot of derived distributions of Vim is available for different domains. Vim is the most favorite text editor among Ruby on Rails developers and authors who prefer terminal or GUI, Although GUI version of Vim i.e gVim is also available. Vim also maximize the use of keystrokes and keyboard shortcuts – so it’s really fast and productive as compare to IDEs or other text editors, but certainly the learning curve is steep.

If you are new to Vim, then you can learn some basics of editing by running the vimtutor program (installed along with the vim programs). Open the terminal and type –


key features

  • highly productive
  • light weight, fast and efficient
  • cool plugins to extend its features
  • wide community to help you

#3. gedit

gedit the default text editor for Gnome based GNU/Linux distributions such as Ubuntu, Linux Mint, Fedora and so on. gedit is well known for its simplicity – although windows users can think it like the notepad for Linux but infact it’s far more powerful than the Damn notepad.

gedit with gmate plugin

Key features

  • simplicity
  • easy to learn (anyone can start using it in seconds)
  • supports a lot of file types
  • syntax highlighting for a number of programming language
  • cool plugins to add extra features

gedit is very popular among beginner ubuntu users because it’s very easy to get started. gedit is suitable for simple text files as well as for writing programs. it has a lot of cool features which makes it a great text editor.

#4. kate

Kate is a gedit like text editor for KDE desktop. it has almost similar features like gedit. Kate is very popular among KDE users. A wide active community is there to help you in learning new things and increasing productivity in long term.

#5. nano

nano is a simplae, lightweight and easy to use – command line text editor. It’s installed by default in most of the GNU/Linux distributions. nano emphasizes on simplicity and ease of use. So if you want a text editor on shell (local or remote) then nano may be a great choice for you (specially if you don’t know Vim or Emacs).


Developing Web Applications using Perl

Perl is one of the most popular scripting language. It is easy to learn and you can do lot in less amount of code. If you’ve used ruby then there is rails, sinatra, etc, for python Django is there and similarly for php there is cakePHP etc.

If you want to leverage your perl skills in web development then a cool framework might be very helpful, right? I think so. So is there any good web development framework for perl ? of course there is. Perl Dancer – it’s micro web development framework, it’s simple, easy and a lot of fun :)

Dancer – Web Development Framework for Perl

Dancer is a cool web development framework in perl, heavily inspired from Sinatra (web micro-framework for ruby). it’s a free and open source software (available under GPL).


Cool Features

  • it’s very simple and easy to learn
  • it’s a light weight framework (more precisely a micro framework)
  • it has very less dependencies (so you get started with development – in a couple of minutes)
  • it’s very flexible

Checkout this slide (below) to get a start Dancing with Perl :)

Recommended Link(s) –

Eclipse IDE

Programming IDEs for Ubuntu 12.04 LTS (Precise Pangolin)

IDE or Integrated Development Environment provides a sophisticated development environment with lot of features and automation of various boring tasks (although I’m not sure about that – IDE itself is very boring). Although, in most of the cases a powerful text editor like Vim or Emacs would be better option but sometimes it’s good to have IDE specially if you’re dealing with very complicated stuffs. e.g Android Development without Eclipse would be much painful.

So, here is the list of some popular and powerful IDE that may be useful for you. Some of them are heavy while some are lightweight IDE (and provides all features without compromising with the speed and simplicity).

IDEs for Java/Android Programmers

Eclipse IDE


Eclipse is a great IDE, with a lot of features and provides a versatile platform. So if you’re a Java programmer or want to develop native applications for Android (using Java, because there are other ways to develop applications for Android Platform) – Eclipse is the best option.

Setting up Eclipse on Ubuntu 12.04


Netbeans IDE

Netbeans is another great IDE with lot of features, and it’s a good IDE for Java/C/C++/PHP developers. It supports a variety of languages and a lot of free plugins are available to extend the default features. It’s fast, simple and good for beginner Java programmers, learning curve is not so steep like Eclipse.

Install Netbeans (version 7)

sudo apt-get install netbeans

IDEs for C/C++ programmers


Although, Eclipse is also good fr C/C++ but Kdevelop is much better for C/C++. It’s lightweight (as compared to Eclipse), fast and it does provide a lot of cool features for C/C++ developers. it has wide variety of powerful tools and it’s highly customizable.
Install KDevelop IDE in Ubuntu 12.04

sudo apt-get install kdevelop

Netbeans and Eclipse, is also good for C/C++, you just need to install the required plugins (only in eclipse).

IDEs for Web Developers

If you are a web developer then you might consider using Geany – a light weight IDE that just works.


Install Geany

sudo apt-get install geany


Eclipse also has plugins for web programming, but if you want a full featured dedicated IDE for HTML/CSS/JS then try Bluefish Editor.


Install Bluefish Editor

sudo apt-get install bluefish


Use Kdevelop or Netbeans, they good support for PHP. In KDevelop, if you want to use PHP then install the php plugin –

sudo apt-get install kdevelop-php

For Ruby on Rails

Try Aptana Studio – it is also available as a plugin for Eclipse – so if you’ve already installed eclipse then go for that (for installation instruction, checkout the above link for setting up eclipse).

For Python –

IDLE – is a good IDE for python developers.
Install IDLE using Python 2.7

sudo apt-get install idle-python2.7

If you want to use Python 3.2 then

sudo apt-get install idle-python3.2