[Tutor] newbie Questions
Steven D'Aprano
steve at pearwood.info
Mon Jul 16 16:40:51 CEST 2012
Matthew Ngaha wrote:
> Hi all. I'm new to Python and Programming in general. I've started out with
> Python for beginners, and so far so good. My friend who i might add, is not
> a programmer but has had experience in the world of programming (i dont
> know how much but he claims a lot), has told me to forget about Python and
> focus on PHP. He knows i studied a HTML and CSS course and told me for the
> direction i'm going in, Python is not needed and won't give me all the
> options or variety PHP can. Thats he's opinion, i'd rather make my own mind
> up, but its lead me to these questions out of curiousity:
What do you want to do? Do you want to program in a clean, fun language?
Or do you want to find it easy to get a low-paying coding job?
(Admittedly, low-paying is relative -- slinging PHP code may be at the bottom
of the programming totem pole, but it's better than slinging hamburgers at
McDonalds.)
There are more PHP jobs available than Python jobs. But there are also more
PHP developers than Python developers, because every doofus with a copy of
Idiots Guide To Idiot Programming thinks they can code in PHP :)
Seriously, you will be competing with a million other PHP coders, and ten
million more in India willing to work for $10 an hour. *And* using a horrible
language.
> a) at this early stage i dont exactly know what web options are:( but is
> Python limited when it comes to matters relating to Web options/developing?
Absolutely not. Python has many powerful web development systems:
Django, Zope, Plone, MoinMoin, Trac, Pylons, TurboGears, and my favourite (for
what little it's worth), CherryPy.
More here: http://wiki.python.org/moin/WebProgramming/
The one limitation is that while nearly all hosting providers supply PHP by
default, only a few supply Python.
> b) Are there better options, or can Python get the job done as good as any?
The opposite: some systems can get the job done almost as well as Python.
> c) after completing and understanding a beginner's book, would i be at
> intermediate level, or still below?
"If I tie two pieces of short string together, will it be as long as a long
piece of string?"
:)
> d) Would i need a more advanced tutorial, what do you advise after
> finishing a beginners course?
Tutorials are great, but nothing beats programming. Program program program.
Even if your programs are never finished, just keep coding.
> e) And finally, are there other essential things i must learn after Python?
> i heard Django is important?
Django is one out of many web frameworks. If you don't like Django, there are
alternatives.
> f) is Django the equivelent to PHP's MySql?
No, and no.
Django is something like an application-builder for the web, using Python.
MySQL is a database which you can use from any programming language, including
PHP and Python. There are many other databases, ranging from SQLite to
Oracle's monster database systems. Python can talk to (nearly) them all.
> You dont have to answer all questions. Just answering one would help me
> greatly in my future decisions, as i want to commit fully to the right
> programming language.
You will be a better programmer if you expose yourself to multiple different
languages and programming paradigms. It's like being a cook: the world-class
chefs learn many different styles of cooking, and are equally at home cooking
Italian, Chinese or Cajun, and can invent new fusion recipes that combine the
best of different cultures. Average chefs can grill a pretty good steak, and
absolutely nothing else.
> since this isnt a forum, how can i thank everyone for helping?
Dibs on your first born child!!!
But seriously, just remember that this is a community staffed by volunteers.
Some day, you can give back to the community by helping others just as you
were helped.
--
Steven
More information about the Tutor
mailing list