Skip to main content

Posts

Showing posts with the label programming

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.). Django 1.3 Project structure: Initial structure followed by two apps added to the project. 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 manage.py, settings.py, urls.py are in the main folder. Following  tree display is after creating two apps named app1 & app2. You'll do it as follows $ ./manage.py startapp app1 $ ./manage.py start...

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 wit...

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 functi...

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: http://www.voti.nl/swp/ http://www.embedds.com/ http://www.instructables.com/id/Business-Card-PIC-Programmer/step2/Parts/ http://www.arduino.cc/playground/Main/ElectroInfoResources http://www.piclist.com/techref/microchip/index.htm 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 pic...

Structures: C -> Java -> Python -> Erlang

With C we had structures and unions. I like them, because, I don't always need to embed behaviors with data(class). So you'll do something like With Java, I'm forced to use classes, because that's how java is structured. They are purely object oriented. (eg: in C++) In python, you can take java's approach; but since Python is not Java ;-) and we tend to write less, We'll use dictionaries (or hashes in Perl) I'm a newbie to earlang (and to functional programming), I think there's no dictionaries, but tuples. Here's how we use tuples to achieve same (also applicable to python) much like json, isn't it? notice, there are no quotes around someone, that's an atom (this is erlang dude). This in python: Well, how do we understand what's what? hmm, ok, we can tag them with atoms, (this is a programming practice in erlang world) so our earlier example becomes, That's it. You can do this with python too, like...