Power Programming with Tags

Source tagging is very powerful source code navigation system, it beats any state of the art IDE. If you are using Emacs, Vim and TextMate then you can use source tagging for navigation. Here are the few simple steps to do it.

Step 1. Install ctags in your system. For mac

$ sudo port install ctags

Step 2. Create A tag file

$ cd /Users/username/Workspace/rails-project
$ ctags -e -a --Ruby-kinds=+f -o TAGS -R app/ lib/ config/

It is best to add this in crontab for this around 11:30am

Step 3.1 emacs

M-. Follow a tag
M-* Jump back to source.

Step 3.2 vim
just add this in your ~/.vimrc

set tags=TAGS;/

Once this is done you can navigate to source of tag by using.

C-] - go to definition
C-T - Jump back from the definition.
C-W C-] - Open the definition in a horizontal split

Hope you will be able to use this awesome feature.
C is ctrl
M is Meta/Alt/Ecs

Year review 2010

2 minutes 50 sec of excellent year review and a ride to the mobile world which is shrinking faster then a black hole and moving on light’s speed. WOW.

Comment here what will be the future of Mobile.



Recently I have registered a new domain shishir.tel. This is really fantastic feeling. Instead of telling my phone number I am going to tell my tel nick.

.tel is a new domain name and it is different then any other domain name, It is a directory domain. It is like your web visiting card.

You can add your contact info, electronic mail id, telephone number, weblog/website etc. check out more here

–updated (November 30, 2009 at 4:8 pm)–

Recently I came to know that DNS entry for the .tel domains can not be updated. So there is no way you can host your own directory/custom website. Seriously guys there could be some thing which could be done.

Hands on Flex

I’ve been very busy for last 4-5 months. But I have been hacking around with many things; Emacs, Vim, Python, Bash, Flex, Silverlight etc… No I am not trying to impress anyone here. Of course I am not master of these things. :).

Adobe Flex aka Fx is a great open source tool. I happen to understand the Ajax/PHP and Curl so I can compare Flex with these.

In my opinion Flex is great. You can create a application with minimum ActionScript coding. Basic layout of a flex application is in MXML and ActionScript is used for more control just like we use HTML and JavaScript.

I have been trying the Flex charting API. I will say that they are extensive and very easy to use. Flex platform is Open Source and licensed under Mozilla Public license.

I will keep readers updated in Flex as soon as I get to something new.

Curl – A gentle slope system

Curl – A gentle slope system

Recently I (Shishir Sharma ‘criss’ )came to know about Curl Language. It’s a MIT – DARPA project. It’s a multi-paradigm hybrid functional language. Curl is reflective, homo-iconic, object oriented programming language. It supports closures, macros and declarative layouts.

Its syntax is based on TEX and has a big set of formatting operations. Curl is very scientific language, As they state …

“one uses the same easy-to-learn syntax to create interactive documents as to create regular text documents.”

Continue reading “Curl – A gentle slope system”

GnuWin32 – Saving you form proprietary

As we all know all the windows user are cursed by proprietary policy. Its very difficult to find common useful tools which are available on Linux.

I [Shishir Sharma] recently needed indenting tool on Windows XP. Then obvious choice is GNU INDENT. I have used it on fedora. Thanks to GnuWin32 which provides ports of tools with a GNU or similar open source license, to MS-Windows.

GnuWin32 provides ports of tools with a GNU or similar open source license, to MS-Windows (Microsoft Windows 95 / 98 / ME / NT / 2000 / XP / 2003 / Vista / 2008). This is what they say about themselves.

The GnuWin32 project provides Win32-versions of GNU tools, or tools with a similar open source licence. The ports are native ports, that is they rely only on libraries provided with any standard 32-bits MS-Windows operating system, such as MS-Windows 95 / 98 / ME / NT / 2000 / XP / 2003 / Vista. Native ports do not rely on some kind of Unix emulation, such as CygWin or Msys, so that there is no need to install additional emulation libraries.

At present, all developments have been done under MS-Windows-XP, using the Mingw port of the GNU C and C++ (GCC) compilers. Utilities and libraries provided by GnuWin32, are used and distributed with packages such as GNU Emacs and KDE-Windows.
Continue reading “GnuWin32 – Saving you form proprietary”

INSAS – Indian Small Arms System

INSAS stands for Indian small arm system. It is an indigenous design of India. It was replacement of Indian military’s standard SLR rifles. It is chambered for standard NATO 5.56×45 mm ammunition. The project started in 1990 SITE by DRDO. It was in production in 2000. It was also exported to Nepal in discounted rates. It initially had some problems with it’s transparent magazines on very low temperature ((Like Siachen)), which were corrected latter.

INSAS project included

  • Assault rifle.
  • Carbine
  • LMG
  • Excalibur ( Advanced carbine with optics )

INSAS is neither an invention nor premium product. It is a perfect design which is inspired by many popular guns, some of them are still in service. It may not be sophisticated but it is found effective in Kargil.

Insas Excaliber

In the image you are viewing INSAS MK-1 with passive night vision optics on top

Insas Excaliber
INSAS Excaliber

Some of features of this gun are: “Its AK family design” and Polycrystalline transparent magazines.

Description of gun. ((Source))

Caliber (mm) 5.56
Muzzle velocity (m/s) 900
Length of Rifle (mm) Without Bayonet 960
With Bayonet 1110
Weight of rifle (Kg)Without Magazine & Bayonet 4.15
Effective range (m) 400
Range for Grenade (m) Multi mode 200
M36 150
Magzine Capacity (Rounds) 20
Cyclic Rage (Rounds/min) 600
Trigger Pull (kg) 2.10 – 4.00
Recoil Energy (Joules) 4.43
Barrel Groove 6 Grooves R.H1 in 200 mm.
Sight Fore sight Post Type
Rear sight Aperture
Type of fire Single, 3 Round brust

For more info: