+1 to that.

-- James

On Mon, Apr 18, 2011 at 1:12 PM, Kevin LaTona <[email protected]> wrote:

>
>
> I think one of the upcoming meetings about all the all the web frameworks
> out there could make an interesting evening of discussion.
>
>
>
> -Kevin
>
>
>
>
> On Apr 18, 2011, at 1:03 PM, Mike Orr wrote:
>
>  On Fri, Apr 15, 2011 at 11:56 AM, Matt Towers <[email protected]>
>> wrote:
>>
>>> Hi Everyone,
>>> Just joined the list today and looking forward to learning more.
>>> My company is in the process of ditching PHP as our web framework and
>>> strongly leaning towards Python, though Ruby is in the running as well.
>>>  I
>>> only have limited experience with both but will be ultimately responsible
>>> for the application. Can anyone here comment on the relative strengths of
>>> Python over Ruby (or vice-versa)?  Some of the factors we're considering
>>> are:
>>> How do the learning curves compare for someone with a strong background
>>> in
>>> traditional object oriented design and languages (C++, Java, C#, etc.)?
>>> Is there a decently sized pool skilled Python web developers in the
>>> Seattle
>>> area?
>>> Given the maturity of Python, I assume there are large number of
>>> developer
>>> tools and libraries out there, but in terms of web development are there
>>> any
>>> obviously missing components found in other frameworks?
>>>
>>
>> Hi Matt. I've been a Python web developer for eleven years so I've
>> seen libraries and programming trends come and go. The language is
>> "complete" in terms of what web developers have needed. And since a
>> lot of companies are using Python web software including Reddit,
>> Google, movie animators, scientific researchers, ITA (airline
>> reservation database) and the like, they've filled in any missing
>> pieces. The current generation of frameworks since 2005 (Django,
>> Pyramid/Pylons, TurboGears, etc) were written to compete with Ruby on
>> Rails, so they provide the same concept even though they may differ in
>> specifics. Python's biggest growing pain is probably its
>> package-downloading-and-installation utilities which are still
>> fragmented (pip vs easy_install etc); this sometimes necessitates some
>> extra work when installing packages. But that's a minor annoyance
>> that's only indirectly related to web development, and the developers
>> are working to clean it up.
>>
>> I haven't used Rails or Ruby myself so I can't compare their features
>> to Python. I started to look at Ruby but found its syntax too
>> Perl-like for my taste. (I am an ex Perl and PHP user.) But there are
>> people on the SeaPIG list who use both Python and Ruby so there's
>> overlap between the user groups.
>>
>> The first think you'll notice about Python is the large number of web
>> frameworks. The difficulty is in choosing. The good thing is that
>> they're more interoperable than they were five or even three years ago
>> so they're converging. They'll probably never converge into one
>> because there are a few different patterns for designing web sites,
>> and different people like different patterns. I'm involved with a
>> project called Pylons that over the past year has taken several
>> frameworks under its umbrella and merged their developer communities,
>> so that they can share ideas and implementations. Their current
>> project is Pyramid, which reached 1.0 a month or two ago. It was
>> designed to support multiple design patterns, and these are gradually
>> being implemented by higher-level software, so that the app developer
>> can choose which pattern he prefers and change his mind later, without
>> having to abandon the framework and go to a completely different one.
>>
>> My main suggestion is that when exploring Python, take a look at
>> several of these frameworks and consider which one best meets your
>> needs and inclinations, as well as your possible long-term needs.
>> Django has been mentioned several times and it's one of the largest
>> and has good documentation, but it can also give the impression that
>> Django is Python web development and there's nothing beyond it, and
>> that's not true. it all comes down to what kind of person you and your
>> company's developers are, what kind of site you're building and your
>> particular needs, etc. Django has good documentation and a large user
>> base; on the other hand it's more "monolithic" and less interoperable
>> than most Python alternatives. It's great if you find what you need in
>> Django. It's less great if you find that what you want is outside
>> Django. For instance, Django has an object-relational mapper (to
>> connect your Python objects to database tables and columns) which is
>> widely seen as easy to use, but if you go beyond it (e.g., to
>> SQLAlchemy) you'll find that many of the framework's features don't go
>> with you (e.g., the db admin screens). This is a limitation which may
>> not be apparent at the beginning. Again, it all comes down to what
>> kind of libraries you're looking for and which features are most
>> important to you.
>>
>> If you look around and later want to have a discussion about your
>> needs and the advantages/disadvantages of various Python packages, we
>> can do that either at a SeaPIG meeting or convene a small group
>> outside the meeting to discuss the possibilities.
>>
>> --
>> Mike Orr <[email protected]>
>>
>>
>


-- 

James Cooper
Principal Consultant - Bitmechanic LLC
http://www.bitmechanic.com/

Reply via email to