It's unlikely I will be able to add much after Russ, but I will suggest a book that has helped me a GREAT deal in support of the IDE- approach:
Foundations of Agile Python Development: http://www.amazon.com/Foundations-Python-Development-Experts-Source/dp/1590599810 It goes step-by-step over subversion and eclipse and pydev. It covers windows and linux though the author uses linux. I was able to use everything on Windows just fine but I HAVE migrated to linux since then (painful but possible)... Good luck and while I'm not much less new than you, I can say with sincerity, WELCOME! Keyton On Nov 25, 5:59 am, "Russell Keith-Magee" <[EMAIL PROTECTED]> wrote: > On Tue, Nov 25, 2008 at 5:27 PM, DragonSlayre <[EMAIL PROTECTED]> wrote: > > > Hey, I'm getting started with a friend in developing a site with > > Django, and we're both new to this, so I am wondering what people use > > to manage all their files, and for looking at documentation etc. > > While I must apologize for Kenneth's poorly expressed frustration, his > underlying message is sound - this has come up _many_ times on > Django-users. A quick Google search should return many options, but > there is no clear or correct answer to your question. > > > Having come from a Java background, I'm used to great documentation, > > and suspect that Java is very much the leader in doc, and not the > > standard. > > Having spent the afternoon wrestling with J2EE, I'd strongly disagree > with this assertion. I will agree that Java projects tend to have have > very extensive API documentation. This is a result of the combination > of Javadoc and strong IDE integration that supports Javadoc. However, > the quality of that documentation is highly variable. Unfortunately, > the fact that Java IDEs automatically write Javadoc stubs and provide > 1 button "build the documentation" hooks gives developers the mistaken > impression that a project is "well documented". Documentation for the > method "get_username()" that reads "Returns the username" doesn't > really illuminate anything. > > There is also the argument that good APIs don't require lots of API > documentation - after all, it should be obvious what get_username() > returns. If your API entry points require extensive explanations, > perhaps you need a better API. > > Good documentation means more than an API (and a _lot_ more than an > empty autogenerated stub). Documentation means good explanations of > the big picture - how the pieces fit together, how to achieve > important tasks, significant internal states, etc. This sort of > documentation doesn't fit well into simple API docs. It is also very > hard to write, and as a result, it often isn't written, and when it > is, it is rarely written well. This isn't unique to Java, either - the > vast majority of open source projects suffer from this affliction. > > I'd like to think that Django is on the better end of the spectrum > when it comes to documentation - we are blessed to have a journalism > major amongst our project founders, and a couple of other liberal arts > majors amongst the frequent contributors. As a result, > docs.djangoproject.com is a pretty thorough resource, and is generally > well written. This documentation is by no means perfect, but it is > certainly better than a lot of other projects out there. > > In addition to the official documentation, there is a wealth of > contributions on django-users and in the blogging community around > Django that provides excellent material to supplement the official > docs. Again, Google is your friend, and Django is a pretty specific > Google keyword :-) > > > I've used the pydev plugin for eclipse, but it seems extremely > > limited. > > I've used PyDev too, and I'd agree with your assessment. However, > others seem to like it. YMMV. > > > How do you develop your django projects, and where do you go when you > > need to find documentation? > > Your original query actually reveals a bias that is significant - why > do you want an IDE in particular? > > Java, as a semi-traditional compiled language, lends itself to IDE > development. The write-compile-run cycle places a certain imperative > on getting code right the first time. Admittedly, the incremental > compilation features of modern Java IDEs make this less of an issue, > but the general language culture leans towards tools and development > techniques that support this general philosophy. > > However, dynamic languages tend not to leverage IDEs as much. A lot of > Python developers (and developers in other dynamic languages) tend to > develop using relatively lightweight text editors. Some of these > editors provide code highlighting, code completion, and other IDE-like > features, but they definitely don't go as far as a traditional IDE. > > There are at least two reasons for this. Firstly, dynamic languages > don't require a write-compile-run cycle, so they lend themselves to > much greater experimentation. Want to know if an idea will work? Fire > up an interactive Python shell and test out your idea. Editors can > help you maintain scratchpads to develop a complex test harnesses; the > Python runtime environment provides the ability to dynamically reload > code modules during runtime. IDEs are very good when you're dealing > with managing a body of code that is 'published' into a compiled > product; I'm yet to see an IDE that can deal elegantly with the > capabilities of a dynamic language. > > Secondly, there is the long standing "unix vs windows" philosophical > argument. The Windows world (which, for all the Sun heritage, Java > really is a part of) tends to push monolithic tools that do > everything. The unix world, on the other hand, tends to push lots of > little tools, each of which does one thing well. Want something to > edit text? Get a good text editor. Want something to manage files? Get > a good file manager. Want something to manage integration with version > control? Get a good version control system. A complete development > environment consists of lots of little tools, each of which does a > specific job well. > > However, that said, if you really do want to use an IDE, there are a > number of IDEs for Python out there, both free and commercial, and > some of them explicitly provide varying degrees of support for Django. > Again, Google is your friend. > > I hope this provides some illumination. All the best in your search > for the perfect development tools, and best of luck with your Django > project. > > Yours, > Russ Magee %-) --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---