Why doesn't DjangoProject.com downloads provide a Windows installer like web2py does?

157 views
Skip to first unread message

Kevin Veroneau

unread,
Dec 22, 2012, 7:28:39 PM12/22/12
to django-d...@googlegroups.com
I am posting this here as I feel it is related to the development of Django, since it is related to it's distribution to end-users.

Something that web2py has provided for a long time is a nice Windows installer to help Windows users start using web2py right away with zero-effort, similar to how WAMP works for PHP developers on Windows.

I believe, it would be most beneficial for the Django website to provide such an option.  I bet most Windows users who hear about Django visit the website, but don't see a download link for their system.  These users will either seek help on how to set it up or it will deter them from exploring Django further.  The latter is what we, as a community do not want to see.  We would like prospect developers to at least explore the development environment and see what it's all about before making the choice of not using it

For a time, there was a project called InstantDjango, it wasn't very well known, but it did the job of containing a Python/Django installation into a single directory which was portable and be easily deleted or moved onto a USB drive.  The project maintainer has since removed the website from existence, along with the tutorials and download links he provided.  Fortunately, I retained a copy of this and now host it on my blog with an updated version of Django.

With the guidance of the main Django developers, I would like to perfect a distributable Windows installer for the greater Django community.  Perhaps starting with Django 1.5, the community can also provide an easy Windows installer for test driving Django on a Windows machine, and for local Windows development.  I can volunteer to maintain this port, with guidance from the other developers on how to distribute it and package it.  The goal of this is to provide Windows users with an option to test drive Python and Django with minimal knowledge and risks.  Installing Python and Django in Windows does require a fair amount of work and command-line knowledge, which may scare some Windows users away from this great framework.  Think of how easy WAMP is to install and use for PHP developers, I want Django to have this ease of use as well.

Disclaimer:  I am a full-time Debian Linux user, but have attempted to install Python/Django on Windows in the past.  I can understand what some Windows users go through during this ordeal.

Link to retained InstantDjango(for example purposes): http://www.pythondiary.com/blog/Apr.10,2012/instant-django-release-information.html
I plan on updating this InstantDjango with Django 1.5, and using distribute over setuptools.  Current Download count: 1461

Best Regards,
  Kevin Veroneau

James Bennett

unread,
Dec 22, 2012, 7:38:25 PM12/22/12
to django-d...@googlegroups.com
On Sat, Dec 22, 2012 at 6:28 PM, Kevin Veroneau <kver...@gmail.com> wrote:
> I believe, it would be most beneficial for the Django website to provide
> such an option. I bet most Windows users who hear about Django visit the
> website, but don't see a download link for their system. These users will
> either seek help on how to set it up or it will deter them from exploring
> Django further. The latter is what we, as a community do not want to see.
> We would like prospect developers to at least explore the development
> environment and see what it's all about before making the choice of not
> using it

My own personal opinion on this kind of issue is, basically, that like
it or not Django is becoming the introduction to Python for a lot of
people. That means there's a responsibility to get those new users
started off in a way that will let them stick to Python even if they
don't stick to Django. And that in turn requires a balance between
making things as simple as possible, and making sure we're teaching
reusable skills; I'd like to think that if someone tries Django and
doesn't like it, but does like Python, they'll come out of the install
and tutorial with enough knowledge to be able to go download and
install other Python-based software.

One way to accomplish that is to be a bit more up-front about how to
install packaged Python software; that way, when a new user does
decide to try something else, they don't suddenly hit a wall of "wow
this is so much harder" -- instead it's "oh, this works the same way".
And in general I think it's not too much of a burden on users,
provided we keep the install docs well-written and up-to-date.

(the other side of the balancing act, of course, is that we don't go
into stuff like pip, virtual environments, etc. which are also
incredibly useful to learn, but add even more up-front complexity to
the install process; I would love to have good documentation on how to
get started with that -- either Django-specific or in general -- to
point people to, but right now I think it'd be a bit too much for the
first-timers)

Daniel Greenfeld

unread,
Dec 23, 2012, 11:51:08 PM12/23/12
to django-d...@googlegroups.com
On Sunday, December 23, 2012 9:45:46 AM UTC-8, ted wrote:
This has lead me to the belief that a virtual linux box is the "right way" to develop on django on windows.  On its face, adding a virtualbox/vagrant setup step makes using django more complicated.  But, on net it makes the first few days on django windows a lot faster/easier/better/less stressful because you don't get the ecosystem issues Jason talked about.  Not to mention making dev/prod parity better, which while a newcomer might not understand they will appreciate in the long run.


<delurk>
I have to step in and strong object to Virtualbox as the 'right way' for Django on windows. I've made this argument plenty of times.

I've taught enough introductory classes and worked with enough people on Windows over the years to know that a huge number of beginning developers around the world are running on less than adequate machines. Python, Django, and SQLite3 have a low footprint that even an ancient computers can handle them easily. 

On the other hand, VirtualBox has a significant footprint. Older machines so frequently owned by beginning developers often do not have the resources to run VirtualBox without slowing down to unacceptable levels. Forcing beginning developers to play in VirtualBox will exclude a lot of incoming talent, especially in less privileged areas of the world. 

Which would be a terrible shame.

The solution is to make the Python installation story on Windows easier. It's not the fun or easy answer, and maybe we need to convince Microsoft to throw money and resources at the problem. Since Python and Django supported on Azure, this may be the perfect time to make such a request.
</delurk>

-- 
'Knowledge is Power'
Daniel Greenfeld

Michael Manfre

unread,
Dec 24, 2012, 1:56:21 AM12/24/12
to django-d...@googlegroups.com
As some one who develops and hosts a Django project on Windows, Runserver and sqlite are more than enough to get potential Django converts through the tutorial and a few test projects. When they're ready to work on a more substantial project, then they'll start to get a bit more immersed in database choices, hosting, and all the other tools that help make the workflow a bit less clunky.

One of the biggest problems I've encountered with the open source project installers for Windows is that they lag behind, most likely being more effort than the community is able to devote towards the windows installer. Even Apache httpd is facing this with 2.4. Having an outdated Windows installer can be more off putting than having no installer at all. I've ignored projects for that reason in the past; memcached was one of those projects for a while.

I think Windows users would be better served with a little bit more documentation about getting up and running on Windows. To start the tutorial you only really need to install python, install setuptools, and then install django. Providing some insight about tools that are mostly the equivalent to those available on *nix platforms would be useful as the new user progresses beyond the tutorial. I'd be willing to help with a documentation effort, primarily by answering questions since I'm not sure if I have enough availability to do much more than that. 

The slides from my "Django on Windows" PyCarolinas talk might be helpful for some Windows users after they get past the initial install. 

Having a linux VM dedicated to Django development was painfully slow on my modestly powered desktop. Any benefits were quickly lost by a laggy UI. It might have been better if I was able to get a folder mapped so I could use an editor on the host Windows system, but I deleted the VM prior to devoting enough time to figure that out.

Regards,
Michael Manfre
Reply all
Reply to author
Forward
0 new messages