[Tutor] newbie Questions

2012-07-16 Thread Matthew Ngaha
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:

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?
b) Are there better options, or can Python get the job done as good as any?
c) after completing and understanding a beginner's book, would i be at
intermediate level, or still below?
d) Would i need a more advanced tutorial, what do you advise after
finishing a beginners course?

e) And finally, are there other essential things i must learn after Python?
i heard Django is important?
f) is Django the equivelent to PHP's MySql?

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.

since this isnt a forum, how can i thank everyone for helping?
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] newbie Questions

2012-07-16 Thread Walter Prins
Hi Matthew,

On 16 July 2012 13:09, Matthew Ngaha chigga...@gmail.com 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:

Well firstly you should note you're asking this on a Python mailing
list so you're likely to see some Python bias here. :) That being
said:

 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?

It's true that Python is more general than PHP.  So, while PHP
generally is almost exclusively focused on web development, Python is
a far mor generally useful programming language that happens to be
able to used in a web context if so desired.  So it depends on what
you mean by limited really.  There are probably more PHP websites
out there than Python based ones.  Does that make Python more
limited?  Perhaps not.  You need to probably be more specific.

 b) Are there better options, or can Python get the job done as good as any?

It depends on what the job is.  In general however I'd cautiously say
yes. Python can get the job done as good as any in most cases.

 c) after completing and understanding a beginner's book, would i be at
 intermediate level, or still below?

Impossible to say without knowing what book you worked through and testing you.

 d) Would i need a more advanced tutorial, what do you advise after finishing
 a beginners course?

Depends on what you're trying to accomplish.

  e) And finally, are there other essential things i must learn after Python?

Probably yes.  But this is true of most programming languages...  If
you're going to do web development you will need to learn all there is
to know about how browsers and web servers funtion, how they exchange
requests and responses and everything else related to this (e.g.
cookies etc).  Even if a web framework or language takes care of a lot
of these details for you, you'll still need to get to a point where
you actually understand how everything works together IMHO.

 i heard Django is important?

Django is a web framework for/written in Python.  If you want to do
websites with Python it's a good option, although there are others
such as Turbogears, Web2Py.  See for example: http://is.gd/fo1FZ6

 f) is Django the equivelent to PHP's MySql?

Well, first to note that MySQL doesn't belong to PHP.  MySQL is a
seperate project and is used in many contexts quite apart from PHP.
It can be easily used from Python as well.

Django similarly as metioned is a web framework that can use several
database back-ends, including (but not limited to) MySQL.  For example
it can also use Postgresql, SQLite  Oracle.

  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.

Right very much depend on your requirements.  That said, I'd prefer
Python over PHP any day.  But then, I would say that. :)

  since this isnt a forum, how can i thank everyone for helping?

Just say thank you when you feel you want to by emailing the list as
you've just done.  :-)

Hope that helps a bit.

Walter
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] newbie Questions

2012-07-16 Thread Walter Prins
Hi again Matthew,

I forgot to include the following link which I originally thought to
include, which is one guy's set of (IMHO very cogent) criticisms
against PHP as programming language:  http://is.gd/z1POXC  Hopefully
it gives you something else to think about regarding the PHP vs Python
question apart from just whether doing websites in it is easy.

Walter
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] newbie Questions

2012-07-16 Thread Monte Milanuk
Probably the single biggest 'problem' with Python for web development, in
my opinion, is that while a lot of web hosts have all sorts of PHP
templates or frameworks installed and ready for easy deployment... Python
options seem to be a bit sparser.  Individual hosts may vary, but thats the
overall sense of things that I've gotten

Please note I'm not saying that there are fewer Python options overall, or
that its in any way inferior... just a matter of market penetration.  PHP
has been one of the big dogs in open-source web development for a while,
merits or warts aside.  Python might be arguably 'better' in various ways,
but momentum in the market place is hard to ignore.

I'm guessing your friend 'sees' more PHP out there than Python too, hence
his recommendations.
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] newbie Questions

2012-07-16 Thread Wayne Werner


On Mon, 16 Jul 2012, Walter Prins wrote:


Hi again Matthew,

I forgot to include the following link which I originally thought to
include, which is one guy's set of (IMHO very cogent) criticisms
against PHP as programming language:  http://is.gd/z1POXC  Hopefully
it gives you something else to think about regarding the PHP vs Python
question apart from just whether doing websites in it is easy.



I read that article recently and recommend it as well. I used to
think that PHP was just fine... but since reading that article (and 
several related ones), I've since revised my opinion.


I would now tell someone to learn any language besides php.

-Wayne
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] newbie Questions

2012-07-16 Thread Joel Goldstick
On Mon, Jul 16, 2012 at 9:54 AM, Wayne Werner wa...@waynewerner.com wrote:

 On Mon, 16 Jul 2012, Walter Prins wrote:

 Hi again Matthew,

 I forgot to include the following link which I originally thought to
 include, which is one guy's set of (IMHO very cogent) criticisms
 against PHP as programming language:  http://is.gd/z1POXC  Hopefully
 it gives you something else to think about regarding the PHP vs Python
 question apart from just whether doing websites in it is easy.


 I read that article recently and recommend it as well. I used to
 think that PHP was just fine... but since reading that article (and several
 related ones), I've since revised my opinion.

 I would now tell someone to learn any language besides php.

My take on this depends upon the background (and goal) of the new
learner.  In this list, and among people who care about professional
software development I'm sure python would win the question.  But for
someone with a passing curiosity about 'what is programming?', and
'can I make my own website?', he might be better served to learn a
little php coding (along with html and maybe css).  I say this
because, although python is really straightforward to learn as a first
language, or as a language to learn in order to understand computer
science concepts, I think it has a higher barrier to entry than
cobbling together some php and html in a text editor and copying it
into a directory that lets apache serve up php to a web browser.  This
might spur the learner to dig deeper. And that is where python will
prove a better fit.
-- 
Joel Goldstick
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] newbie Questions

2012-07-16 Thread Steven D'Aprano

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
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] newbie Questions

2012-07-16 Thread Alexandre Zani
On Mon, Jul 16, 2012 at 5:09 AM, Matthew Ngaha chigga...@gmail.com 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:

 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?

PHP will get you from 0 to website by the first page of your first
tutorial. That's very attractive if you're interested in web
programming. Most likely, if you use Python, you'll learn how to use
the language more generally, before learning how to apply the language
to a website. However, in my experience (I learned PHP a long time ago
and Python a few years ago) Python gives you the most reward. I've
used Python for website building, but also lots of other useful
applications.

 b) Are there better options, or can Python get the job done as good as any?

It depends upon the job. If you plan on work as a programmer/software
engineer, you will need to learn many languages. Yes, hammers can be
used to put in screws and you could probably figure out how to use a
screwdriver to put in a nail, but really, you're going to be
successful if you have both a hammer and a screwdriver in your
toolbox. Java, C, Python, C++, each have their own uses. However, (and
this may be a biased assessment) PHP is more like a hammer with its
head removed and a screwdriver duct-taped on it. Sure, you can use it,
but it's not going to be a pleasant experience.

The languages which I would say are closest to Python in terms of
where they are put to use are Perl and Ruby. My advice is this: give
them each a shot (the first couple pages of a tutorial shouldn't take
more than a few hours) and see which makes you feel the most
comfortable.

 c) after completing and understanding a beginner's book, would i be at
 intermediate level, or still below?
 d) Would i need a more advanced tutorial, what do you advise after finishing
 a beginners course?

Code, code, code. Programming is a practice. You'll learn the most by
doing and researching solutions for specific problems you are
encountering. Then, read blog posts, watch PyCon videos, look at the
mailing list etc... Just expose yourself to the language and community
and learn through osmosis.


 e) And finally, are there other essential things i must learn after Python?
 i heard Django is important?

Django is just one way to do Python web development. It's hugely
useful for some things and terribly useless for others. There are
plenty of other ways to do web development.

 f) is Django the equivelent to PHP's MySql?

As plenty of people have said, Django is a way to make websites while
MySQL is a database system. You can actually use MySQL with Django.


 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.

 since this isnt a forum, how can i thank everyone for helping?



 ___
 Tutor maillist  -  Tutor@python.org
 To unsubscribe or change subscription options:
 http://mail.python.org/mailman/listinfo/tutor

___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] newbie Questions

2012-07-16 Thread Matthew Ngaha
Thanks guys, i didnt think i would get so many kind and helpful responses.
I am so grateful:x. I have read each and every reply and i am now very
confident in the direction i need to take. Everything is a lot clearer now.
Even though i'm new to programming, i am very intrigued by it and want to
dedicate a good portion of my time to it, and by reading the replies, i
know ive made the right choice in choosing Python over PHP:) To answer a
question on what was more important, a job that pays low, or to learn good
clean coding.. My answer is I want to devote my time in it for a love of
programming and to gain a deeper understanding on it. the money part is not
as important:)The book i am currently reading is Python Programming for
the absolute beginner. I will save this mail in a special place on my hard
drive:) i really appreciate it guys:)


On Mon, Jul 16, 2012 at 4:16 PM, Alexandre Zani alexandre.z...@gmail.comwrote:

 On Mon, Jul 16, 2012 at 5:09 AM, Matthew Ngaha chigga...@gmail.com
 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:
 
  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?

 PHP will get you from 0 to website by the first page of your first
 tutorial. That's very attractive if you're interested in web
 programming. Most likely, if you use Python, you'll learn how to use
 the language more generally, before learning how to apply the language
 to a website. However, in my experience (I learned PHP a long time ago
 and Python a few years ago) Python gives you the most reward. I've
 used Python for website building, but also lots of other useful
 applications.

  b) Are there better options, or can Python get the job done as good as
 any?

 It depends upon the job. If you plan on work as a programmer/software
 engineer, you will need to learn many languages. Yes, hammers can be
 used to put in screws and you could probably figure out how to use a
 screwdriver to put in a nail, but really, you're going to be
 successful if you have both a hammer and a screwdriver in your
 toolbox. Java, C, Python, C++, each have their own uses. However, (and
 this may be a biased assessment) PHP is more like a hammer with its
 head removed and a screwdriver duct-taped on it. Sure, you can use it,
 but it's not going to be a pleasant experience.

 The languages which I would say are closest to Python in terms of
 where they are put to use are Perl and Ruby. My advice is this: give
 them each a shot (the first couple pages of a tutorial shouldn't take
 more than a few hours) and see which makes you feel the most
 comfortable.

  c) after completing and understanding a beginner's book, would i be at
  intermediate level, or still below?
  d) Would i need a more advanced tutorial, what do you advise after
 finishing
  a beginners course?

 Code, code, code. Programming is a practice. You'll learn the most by
 doing and researching solutions for specific problems you are
 encountering. Then, read blog posts, watch PyCon videos, look at the
 mailing list etc... Just expose yourself to the language and community
 and learn through osmosis.

 
  e) And finally, are there other essential things i must learn after
 Python?
  i heard Django is important?

 Django is just one way to do Python web development. It's hugely
 useful for some things and terribly useless for others. There are
 plenty of other ways to do web development.

  f) is Django the equivelent to PHP's MySql?

 As plenty of people have said, Django is a way to make websites while
 MySQL is a database system. You can actually use MySQL with Django.

 
  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.
 
  since this isnt a forum, how can i thank everyone for helping?
 
 
 
  ___
  Tutor maillist  -  Tutor@python.org
  To unsubscribe or change subscription options:
  http://mail.python.org/mailman/listinfo/tutor
 

___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] newbie Questions

2012-07-16 Thread Jordan
I would just like to add that I am a web developer and I left PHP for
Python. I left PHP because it was not as powerful server side (Cron Jobs
and Such) and I wanted to possibly create desktop applications, more
recently Android Apps via SL4A and IPhone Apps via pyjamas. PHP is a
limited language although there have been attempts at making it work for
desktop apps,it just was not designed as a generally use language like
Python. But the choice is yours and the path for Python in web
development may be a little more trickier than PHP; but when you want to
do more than web development you will realize Python is the way to go.
Also just one more note Python code is so much easier to read than PHP,
and the language as a whole is much more consistent, thanks PEP 8.

On 07/16/2012 03:54 PM, Wayne Werner wrote:

 On Mon, 16 Jul 2012, Walter Prins wrote:

 Hi again Matthew,

 I forgot to include the following link which I originally thought to
 include, which is one guy's set of (IMHO very cogent) criticisms
 against PHP as programming language:  http://is.gd/z1POXC  Hopefully
 it gives you something else to think about regarding the PHP vs Python
 question apart from just whether doing websites in it is easy.


 I read that article recently and recommend it as well. I used to
 think that PHP was just fine... but since reading that article (and
 several related ones), I've since revised my opinion.

 I would now tell someone to learn any language besides php.

 -Wayne
 ___
 Tutor maillist  -  Tutor@python.org
 To unsubscribe or change subscription options:
 http://mail.python.org/mailman/listinfo/tutor
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] newbie Questions

2012-07-16 Thread Vignesh Sathiamoorthy
Check out http://www.udacity.com/

Enroll in few courses - to begin with, check
http://www.udacity.com/view#Course/cs101/CourseRev/apr2012/Unit/671001/Nugget/675002





On Mon, Jul 16, 2012 at 5:09 AM, Matthew Ngaha chigga...@gmail.com 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:

 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?
 b) Are there better options, or can Python get the job done as good as any?
 c) after completing and understanding a beginner's book, would i be at
 intermediate level, or still below?
 d) Would i need a more advanced tutorial, what do you advise after
 finishing a beginners course?

 e) And finally, are there other essential things i must learn after
 Python? i heard Django is important?
 f) is Django the equivelent to PHP's MySql?

 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.

 since this isnt a forum, how can i thank everyone for helping?



 ___
 Tutor maillist  -  Tutor@python.org
 To unsubscribe or change subscription options:
 http://mail.python.org/mailman/listinfo/tutor


___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor