Skip to main content


Correct way to structure your Django 1.4 projects

PS: This post is written assuming you're familiar with Django and at-least have some basic experience trying to set-up a Django project (for learning or for some cool project).

Purpose: To show how to properly set-up your Django1.4 project after seeing other developers getting it wrong (seen it wrongly structured by my mentee, senior developers and junior developers at my firm.).

Refer above picture, where I shown a Django < 1.4 project structure. (I know, at least Django 1.2 & 1.3 follows this structure).

First tree view is of the initial structure that you will get by calling
$ django-admin startproject Proj Take a note that,, are in the main folder.
Following  tree display is after creating two apps named app1 & app2. You'll do it as follows

$ ./ startapp app1 $ ./ startapp app2 Those apps are created in the same level as and

Now,  Django 1.4 changed this organization slightly. They now make s…
Recent posts

Finding per user contributions in an SVN repo

There was a need to get per user contributions in a project last year.
That project was versioned using Subversion (svn).

At last we came up with the following script, which surely is not fool proof, provides an over all per user contribution.

Here it's:

However, I left it to you to improve further; who knows the unmodified version might be good enough for you.

Set difference: Data provided from two big files with one number at a line

Today, I had to find out difference between two huge lists of numbers.
Numbers are 17 digits long and list are of around 1 lac.

PS: I'm documenting both versions here for my future reference.

I used python, because diff doesn't felt good for me. because it will print both ins and outs of both files. Also, I ruled out diff's possibility, because I didn't felt it will work at that time.

Later, at home: I give diff a try.
Yes, it's not that beautiful as in python. I'd cut and sed a bit.
But still, it's a "one liner" and I like 'em a lot.

Finally, I have my hands on them

It had been so long, since I started to think about buying a book titled "The C Programming Language" by Bryan W. Kernighan and Dennis M. Ritchie. If I put it as accurately I can as possible now a days, It'll be 3 year after I learned how to program (Obviously, In C, we initiated). This book is a standard reference for "C" language till the date, a gift from authors of the language, themselves. It wasn't available at local book stalls. (I do think, that's the case, even now.)
The other book shown here, Is called "Hacker's Delight.". Well, it's no immediate use to me. But I liked the content of that Book. It's a bible of Bit level Algorithms and techniques. What I already know about bit arithmetic become nothing in front of this Excellent book. A must have, If you want to know your machine. Want to become a Embedded expert and so on. 
And If I say, these are first Computer Science books that I'm buying with my own money and Out…

Software Engineering - Continues refinement

Every programmer wishes to write some code, which is both elegant, and readable. A master piece to reference to... And there may not be a single programmer, who said at least once in their life time that, "If I had time, I'd rewrite it" or any similar one.
Today, let's discuss, how the idea of sorting a list of list went on,  
I had to sort a list of lists, that's the result of a search, comes from Web Service. After that, the result is extracted from the XML document that's returned and formatted for front end. So, now all the data is in the form of strings. And I'm ended up with the task of sorting a list of list of strings, based on different items in the inner lists @ different times. And Obviously we can't compare the data as strings, we have to convert them into their proper data type before comparison.
Since, I works on a Python based project, First thing, that came to mind is to use, sorted inbuilt function, and pass it a function to compare.…

Start on Microchip programming... for hobby or for money

One of my friend asked me today the following question, 
I'm often asked about this, someway or other.
Let me answer this now for all....

Q: "I want to start programming on chip.. Can you suggest a good chip and a device to program it? Also tell me any sites which can help me."

A:"Simple one is Arduino. You will get it packaged with a programmer.
If you want some more powerful and commercial one, Go for Microchip's PIC family of processors. After you are familiar with those, and need even more power, try AVR from ATMEL."

Some resources from my Bookmarks is given below:
My bookmarks become so messy now a days, and I'm not getting time to organize them.
So, these are the quickest ones that I picked up from it. I'll let you know, if I fo…

Tic Tac Toe in python - Just for fun

The other day, I was looking for some GNU/Linux administration reference, I ended up viewing a "tic tac toe" program in Ruby at a Linux admin's blog.
He wrote that in ruby and took him 90mins. That was written using class. But "Zen of Python in mind", I wrote my own version without class. I prefer this way (sparse is better than dense), and I enjoy Python more when, I think of my Java days.  I haven't read ruby code before hand so, I did not wrote a clone of ruby code. And this took me around 40min. Because, I realized some missing features only when I played it several times. Then only I added those. Specifically, drawing complete board after someone wins and stopping the game when all fields are filled out.

I'll not say, the program is beautiful and very readable. However, it's good enough for playing with it.