[Chicago] Census?

Carl Karsten carl at personnelware.com
Thu Sep 27 00:35:14 CEST 2007

Chris McAvoy wrote:
> Hi All,
> I know this topic comes up constantly, but I'm interested in any data
> (anecdotal or otherwise) on how difficult (or easy) it is to hire a
> good Python web developer in Chicago.
> *Specifically*
> *) How tough is it to hire a Python Django developer?

easy.  just call me.

> *) Is it easier (and / or cheaper) to hire a Rails developer?

yes.  they are cheap and easy.

> *) Is it easier (cheaper) to hire a PHP developer?

those tramps are a dime a dozen, and worth every nickel.

> *) Pretend you're a freelancer, justify writing an web application in
> [the python web framework of your choice] to a potential Chicago-land
> client that won't use your services for the long term life of the
> application.  They want you to write it, and walk away.  How will they
> support the app once you've left?

Lets examine what it takes for someone new to maintain a Django based website.

Like most frameworks, Django is like a higher level language than what it is 
written in: Python.  The nice thing about both of them it is the balance of 
power, ease of use and readability.

When working with any framework, the biggest problem is becoming familiar with 
how to work with it.  for Django, do the 4 part tutorial, should take you about 
2 hours, and you are there.  Then it is just a matter of what needs to be 

The models are totally human readable - maintaining them doesn't get much easier.

The regex used in urls.py is somewhat perl-esk, but it is pretty readable and 
self explanatory, not mind bending logic stuff.

The views are a mix of Python and Django calls.  both readable, fairly self 
explanatory, but also might require some Python and Django knowledge in order to 

The Django template system is pure Django. except for the calls back into Python 
code, but I don't consider that part of  The Django template system.  regardless 
of what you call what, the template system can do allot with some pretty simple 
stuff, and the Python code that gets called has a pretty simple foot print.

And the html/css is just that - same html as any other web site.

Now consider the random set of maintenance tasks, and how likely they are to 
fall into the various parts.  changes to the data model are easy.  changes to 
the html are easy.  changes to the business logic - depends on the change, 
simple adjustments are probably easy to recognize what needs to be done. 
complex changes are going to require a good understanding of the business 
requirements as well as the Python language.  understanding Python will be the 
easy part.  if you are changing urls.py, that's a bit more than maintenance.

What will it take for someone to come in and tweak?  Like all things, it 
depends.   It depends on how well thought out the original design is and how 
well it was implemented.  anyone can make a huge mess in any environment.  It 
does makes sense to try to make things smooth regardless of how messy they 
become, and a good start is to start with a 'simple' system.  Using Django, you 
can get a lot of site with a pretty simple setup.

and when you are done waxing your floors, you can use it as a desert topping too.

> Any thoughts on how to quantify these sorts of questions is welcome

The problem is comparing my answers to someone well versed in some other 
technology.  They are going to say things too, but no one has any hard data that 
can be used to compare apples to apples.

If it is really important, I would suggest spending $10k on someone who has done 
enough work on using many frameworks to write up a comparison.   That would be 
cool.  and would probably only be valid for a year, then the apples would all 
have rotted.

> Chris
> PS. .  Yes, you're doing my homework for me.

oh, now you tell me.  I feel so used.

> _______________________________________________
> Chicago mailing list
> Chicago at python.org
> http://mail.python.org/mailman/listinfo/chicago

More information about the Chicago mailing list