The Artima Developer Community
Sponsored Link

Python Buzz Forum
Why Web Programming Matters Most

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Ian Bicking

Posts: 900
Nickname: ianb
Registered: Apr, 2003

Ian Bicking is a freelance programmer
Why Web Programming Matters Most Posted: Apr 13, 2005 12:52 AM
Reply to this message Reply

This post originated from an RSS feed registered with Python Buzz by Ian Bicking.
Original Post: Why Web Programming Matters Most
Feed Title: Ian Bicking
Feed URL: http://www.ianbicking.org/feeds/atom.xml
Feed Description: Thoughts on Python and Programming.
Latest Python Buzz Posts
Latest Python Buzz Posts by Ian Bicking
Latest Posts From Ian Bicking

Advertisement

I meant to give this as a lightning talk, but unfortunately the session was too short and I gave a different presentation first and it didn't come back around to me again, which is too bad -- I actually didn't care about the other presentation that much.

My premise:

Resolving Python's problems with web programming is the most important thing we can do to market Python.

You might dismiss me as being self-centered, as I'm a Python web programmer, and we all think our own problems are the most important problems. But then I'm a web programmer because I think it's the most important and empowering development environment of our time -- it has been for at least the last five years, and I'd be surprised if that didn't stay true for at least the next five years.

And I am doing okay -- these aren't my own problems I'm complaining about. I don't want to talk down Python web programming too much -- if you are serious about web programming the initial investment will pay off, since Python is a great environment. But if you aren't committed enough to invest that time, and you want to produce something useful quickly, then -- though it hurts me to say this -- Python isn't a good choice.

This is an incredible missed opportunity for Python. Most other marketing efforts underway for Python are (IMHO, of course) misplaced.

Right now Python marketing -- which is admittedly an afterthought for everyone -- is driven by a desire to compete with Java (and probably .NET recently). But people won't admit that we are utterly incapable of competing head-to-head with these languages, because they speak to an audience we can't market to directly.

Everything that makes Python great doesn't mean much to managers -- will they care about significant whitespace? Sometimes it's even contrary to what managers want. Managers are wary of empowering programmers, because it scares them to become dependent on a single programmer -- I think this isn't a big problem for Python, but it is something that encourages heavyweight methodologies (which aren't good in Python), B&D programming environments, static typing, etc.

Python appeals to programmers. That's who we have to sell ourselves to. Forget everyone else. Let the programmers sell it to their own managers -- if they really love Python, they'll go through that effort. If they are really successful with Python it won't be hard for them -- Python will sell itself. If Python can't sell itself then it doesn't deserve to be adopted -- ultimately what matters is what people build in Python, not the virtues of the language itself.

What we need to do is get our foot in the door. We need to get programmers to write projects and do so successfully. We need those projects to be visible to managers.

Web programming is the best way to get our foot in the door. A programmer with little experience can produce a useful web application in a matter of hours. Not just playful or interesting, but something that can actually go into productive and live use. The only other environment where that is possible is the command line -- and managers never see programmers' command line tools.

Web programming is also a kind of universal need. Sure, there's lots of things besides the web. But unless you really try to avoid the web, as a programmer you are likely to have occasional problems that are best solved with a web application. This is true no matter what field you are in. In part because web applications don't just touch on core needs -- e.g., embedded programming at a hardware company, numerical analysis at an engineering firm -- but on any coordination needs, and everyone needs to coordinate things. The embedded

programmer might display test results in a web page, the engineer may collect data via a web upload form. If they have successful experiences in Python in these cases, it is only natural that they will try to use Python elsewhere. That's great, because Python is appropriate in some way for most of those other use cases too.

When we consider Python marketing, we should look for accessible marketing successes. Java isn't accessible. The PSF isn't Sun, Zope 3 and PEAK aren't J2EE, and I could go on. These aren't just technical differences, they are based on deep social differences. We need to look at agile and open source successes. (And we have to look at successes, so no need to look at Smalltalk or Lisp...)

By some coincidence three languages starting with P are often grouped together: Perl, PHP, and Python. It's a nice coincidence, and these are the languages I've thought about. Both Perl and PHP have had tremendous bursts of growth because of web programming. This graph isn't entirely a representation of PHP's growth, but it says something, and it's doesn't take a graph to know that PHP has grown incredibly rapidly:

http://static.php.net/www.php.net/images/stats/phpstats-200501.png

And Python could have been PHP. We could have seen that kind of growth. But we didn't, because there has been and continues to be a bunch of little things that make Python annoying to use and get started with for web programming. But it's not all over -- PHP 5 is barely catching up to Python's features from 10 years ago. There's a lot of room for a better language to take it's place. (Though we should be a little worried that Ruby could be that language.)

Anyone who cares about Python should care about the web programming situation -- no matter what your area of expertise. Those of us in the web development community need both support and pressure to improve things. We also need support from the Python core -- there's some longstanding issues with Python that cause problems; things like long-running processes and reloading code, isolating and monitoring interpreter instances, and restricted environments. These are things that reach far down into Python the language, in such a way that the application programmers that need the features aren't generally able to make much progress (nor is it clear they'd get support on any solutions they did provide). We also need input from people trying to do commodity Python hosting, and we need to pay attention to what they say.

Really, I want this post to be seen as an optimistic one. We all know about the problem, but we should focus on the incredible opportunity that's out there if we can solve this. I know we're all volunteers -- I am too. We work on what we enjoy. But we also do this work because we can always imagine great things yet to be created. We do this work because we enjoy sharing our ambitions and successes with others. I just hope people will direct their imaginations in this direction, because we could really use the help.

Read: Why Web Programming Matters Most

Topic: EX-S3 broken again? Previous Topic   Next Topic Topic: JSR Groovy

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use