We love designing and developing websites, but what really drives us is solving problems and cultivating strong relationships with our clients
Behind the Scenes: Request to Response
By : thejaswi
In the previous installment of "Behind the Scenes", we saw how the control flows from Form to File Storage. Today, we are going to see how the application reacts from request to response.
In this post, we are going to assume that we are using django's inbuilt runserver. The flow doesn't change much for other WSGI servers available.
When you invoke the runserver management command, the command line options are validated and an instance of WSGIServer is created and passed the WSGIRequestHandler, which is used to create the request object (WSGIRequest). After the request object is created and ...
more info..Behind the Scenes: From HTML Form to Storage
By : thejaswi
In this post, we are going to see what happens behind the scenes when a file is uploaded to a django powered web application.

An HTML form with a file input (atleast one) and encoding set to multipart/form-data is submitted. The MultiPartParser parses the POST request and returns a tuple of the POST and FILES data (request.POST, request.FILES). The MultiPartParser processes the uploaded data using the File Upload Handlers objects (through the new_file, receive_data_chunk and upload_complete methods). The request.FILES values are a sequence of instances of UploadedFile.
In the django form, we pass the request.FILES ...
more info..Writing an e-mail application with Lamson - II
By : thejaswi
In the last post, we saw how to create the skeleton of a basic email application using Lamson. In this part, we'll see how to write a handler (in the controller) to open a ticket in Unfuddle, the project management tool we use at Agiliq.
If you look at the config/settings.py file, you'll see a handlers attribute that should be updated to match the file that contains the rules for mail routing. In this case, let us create a unfuddle.py under the app/handlers directory and update the config/settings.py:
handlers = ["app.handlers.unfuddle ...more info..
Writing an e-mail application with Lamson - I
By : thejaswi
Off late, we've been slightly busy with a 'lot' of new developments on our end and we've not been able to devote attention to the blog. In these busy periods, we tend to forget things faster. One such thing that Shabda recently pointed out that a couple of our applications (client and open source project) were raising exception. Because of the low frequency of these errors, they went unnoticed for quite a few days. We do check e-mail often but we are mostly drowned in our project management tool, Unfuddle. Shabda suggested we open a ticket for every ...
more info..Link roundup 10
By : thejaswi
- Troy Sobotka has a blog post on why GIMP is inadequate in the real world. Slightly worrying post.
- Kevin McCarthy has an article on "How 3 companies (Yammer, Proxlet and Bocoup) use Node.js"
- Pingdom has released a jaw-dropping article on "The Internet in 2010". A whopping 107 trillion emails were sent in the year!
- Mathias Meyer has an exhaustive item on the different levels of monitoring with examples of services and software.
- Yann Malet has written a neat post on how to write custom filters integrated into the django admin with a few lines of HTML.
- bebraw on reddit ...
Link roundup 9
By : thejaswi
Welcome to the first post of 2011!
- The Eldarion Team has launched "Gondor: An effortless production django hosting". Currently, it is in private beta and going by the homepage sounds very exciting.
- PK Shiu has graphically explained the workflow of South, the most preferred migration tool for django.
- Andy McKay has written an article on how to integrate bleach, an HTML whitelist and sanitizer with django. Rather than escaping the user's input completely (like innocuous formatting tags), it escapes only the risky tags like script tags.
- There is an interesting article on O'Reilly Answers on "5 Things You ...
Link roundup 8
By : thejaswi
- Django Dose community catchup episode #32 is out. Listen to it here.
- Luke Plant has released a django app called django-anonymizer. It anonymizes sensitive data like customer information while maintaining the database structure intact.
- Armin Ronacher who contends that web development is dangerous (and rightly so!) blogs about the common mistakes made by a web developer.
- John Anderson has a very interesting post on "Tips and Tricks for the Python Interpreter". Must read!
- Charles Leifer has written a generic app to provide for auto-completion of django models. Currently, it supports the solr, redis and sql database backends.
- Kyle Neath has ...
Django emacs setup
By : thejaswi
My colleague Javed had written a fantastic article a short while back on "Seven reasons why you should switch to Vim" and as an emacs user I thought I should share my setup too. One of the coolest things at Agiliq is that we are free to use the development tools of our choice. As a case to explain the point, everyone at agiliq uses a different editor and if someday a flame war would escalate to the third world war, I assure you it would start from Agiliq ;-)
Though I have been using emacs for more than two years ...
more info..Link roundup for week ending 24/12/2010
By : thejaswi
It's been a while since we posted a link roundup. With holidays starting soon, we thought of advancing the post.
- In the second part of the series the Open Source team at The Washington Times writes about "App-centric django development". Here they discuss the files required for a complete app.
- Are you a full-stack programmer? Interesting article by Carlos Bueno of Facebook on the various interconnections in computing.
- Daniel Greenfeld wrote a post on why he prefers stupid template languages. His post received reactions from Armin Ronacher, author of Jinja2, Mike Bayer of Mako and Steve Holden, chairman of ...
Link roundup for week ending 26/11/2010
By : thejaswi
- In Washington Times' article on app-centric django development, they discuss the pros and cons of breaking your project into multiple apps.
- Luke Plant writes how class based views in django views makes the code feel a bit like Ravioli (too many small classes with difficulty locating and identifying their functionality).
- While we are at Ravioli, here is an interesting presentation about "How to stop writing Spaghetti code" in node.js.
- Eric Holscher has a post on how to use Haystack search to index non-database content.
- Facebook has written a blog post on "The underlying technology of Messages". Most of the ...
Link Roundup for week ending 12/11/2010
By : thejaswi
- jQuery 1.4.4 and jQuery mobile alpha 2 were released this week. Progress on the jQuery mobile development seems to be very brisk at the moment.
- Eric Holscher wrote a series of posts on building a django app server with Chef.
- Do you generally have a tough time deciphering captchas? TextCaptcha is a service that uses text based questions to separate the humans from machines. It's got an API too!
- Django Dose community catchup Episode #30 is out. Check it out today.
- All references to the project name from the imports in the django tutorial have been removed ...
Link Roundup for week ending 5/11/2011
By : thejaswi
- Jacob Kaplan-Moss has a beautiful article on concrete inheritance vs abstract models for inheritance. Must read!
- Charles Leifer, the current maintainer of Django Snippets has an exhaustive blog post on setting up search using the Solr backend for Haystack.
- Chris Heilmann has an interesting video on "Reasons to be Cheerful: being a web developer is awesome!"
- Andy McKay defends the plain old non-reusable Django apps as they are easy to write, rapid to develop and have very little boilerplate code.
- Piotr Malinski has a blog post on how to use web based image editors within django apps.
- Derek Gathright shows ...
Link Roundup for week ending 22/10/2010
By : thejaswi
- How DOM events work? Fantastic article by Jeremy Kahn of JupiterJS.
- django gets class based views. Thanks to everyone who contributed. Check the doc for more details and the migration guide.
- Search Engine Foo: Use DuckDuckGo to search the django and python docs from within your browser. Just use !django <search query> or a !python <search query> to search the docs. Check a django example search and python example search. DuckDuckGo has a lot of other goodies too.
- Wilson is a node.js web framework whose goal is to bring along the parts of django without tightly coupling them. Plate ...
Link Roundup for week ending 15/10/2010
By : thejaswi
This is the first in a series of posts where we share links aggregated from popular sources, tools we use, projects we work on, almost everything related to web development and more....
- Django's got HMAC signing: These set of changes prevent timing-based attacks and are fully backwards compatible unless you've a short SECRET_KEY.
- Django's got more committers and they are already hard at work!
- The django tests have been upgraded to use the unittest2 module. Phew! Lots of work has gone in the past couple of weeks. It just means one thing, the 1.3 alpha window ...
- Test Driven Development in Python
- Deploying Django apps on Heroku
- Developing android applications from command line
- Deploy Django App in 5 Easy Steps
- Project Management Tools for Start-Ups
- Generating a pdf from an image using PIL and django
- Dynamically attaching SITE_ID to Django Caching
- Screencast: How to deploy Django on Heroku
- Deploying Django apps on Heroku
- How to use pep8.py to write better Django code
- rails
- django
- linkroundup
- django opinion
- opinion
- business
- API
- appengine
- python
- satire
- startup
- Uncategorized
- marketing
- personal
- rambling
- search
- interviews
- seo-interviews
- 5startupideas
- ideas
- seo
- tips
- forms
- paypal
- utilities
- datetime
- web2.0
- Amazon
- algorithms
- presentations
- products
- pinax
- satchmo
- ecommerce
- microsoft
- yahoo
- book
- tutorial
- models
- aggreagtion
- meta
- India
- apps
- about
- CSS
- Design
- wordpress
- test slug
- vim
- urls
- reviews
- javascript
- xmpp
- emacs
- Typography
- Grid Theory
- Color Theory
- iphone
- android
- titanium
- mobile applications
- CSS3
- Browser Compatibility
- mobile
- jobs
- lamson
- django setup
- files
- upload
- jsTree
- hierarchical view
- web page
- Treeview
- coffeescript
- request
- response
- South
- django south
- django migration
- --fake
- screencasts
- django caching
- SITE_ID prefix
- review
- code hosting
- comparison
- unfuddle
- fogbugz
- assembla
- github
- project management
- ticketing system
- gunicorn
- deploy
- nginx
- ubuntu
- vps
- android terminal
- terminal
- programming
- TDD
- Test Driven
- Development
- May 2012
- April 2012
- March 2012
- February 2012
- January 2012
- December 2011
- October 2011
- September 2011
- July 2011
- June 2011
- April 2011
- February 2011
- January 2011
- December 2010
- November 2010
- October 2010
- September 2010
- June 2010
- April 2010
- March 2010
- January 2010
- December 2009
- November 2009
- October 2009
- September 2009
- August 2009
- July 2009
- June 2009
- April 2009
- March 2009
- February 2009
- November 2008
- October 2008
- June 2008
- May 2008
- April 2008
Developing android applications from command line
By : thejaswi
Here at Agiliq, we also develop cross-platform HTML5 mobile applications. Using Eclipse to create an android project (one time task) and edit html and javascript files for an android app is an overkill. Wouldn't it be great, if you could use your favourite text editor to edit html and js files and then fall back to the terminal to deploy the android app? We are going to see exactly this in the post.
First, let's install the android SDK starter package(I assume that you have installed JDK and ant). Head over here and install the SDK for ...
more info..