Re: [Tutor] help me decide

2012-09-06 Thread Matthew Ngaha
hey guys i just like to thank everyone for their input. Its really
helped me in deciding a lot of things. also @ Alan i think? as ive
started writing this mail it won;t let me look up previous senders but
thanks for your input. Also your field of work sounds very interesting
indeed. I can't dare to imagine the amount of hard work that got you
there.:) i only hope my dedication can take me half as far:)

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


Re: [Tutor] help me decide

2012-09-05 Thread Wayne Werner

On Tue, 4 Sep 2012, Matthew Ngaha wrote:


a) IF you happen to have used both, which one fills you with joy and
is more fun for you to program with, GUI programming, or web related /
Framework programming?


Honestly - both. It's really a highly subjective question and depends what 
you want to do (although with modern browsers like Google Chrome and 
Firefox the line is becoming more and more blurry). If you want to provide 
an application that requires no interaction with the outside world, a GUI 
is probably a better fit and has the advantage that you'll probably only 
be using one language - in this case, Python ;)


But if you begin doing web programming then you'll start to learn about 
HTML, JavaScript, and CSS (all valuable technologies and look like they'll 
be here to stay!)



b) which was easier and less complex for you to learn? or should i say
had a lower learning curve? i ask this because the sooner i get an
understanding of one, i can maybe give the other one a go. But if it's
too hard i usually give 100% to it and never try learning anything
else until it computes.


Honestly, I picked up learning HTML before I learned to actually program. 
That's what got me interested, was being able to make small changes in the 
text and see large changes happen in my page. I would say as far as 
complexity goes, learning basic GUI programming has less "pieces". But 
again, both directions are perfectly valid and valuable things to learn.




my tutorial had a small section on tkinter. I have now looked for some
tutorials and noticed Python tutorials on both tkinter and Tk. As i
understand they are not the same thing but tkinter is like the
interface of Tk? my question is:


I'm sure someone has addressed this already, but Tkinter is the Python 
bindings for Tk/Tcl. It allows you to write Python code to do Tk things.



c) which tutorial would be better to study, Tkinter or Tk? and what
exactly is the difference? why do they have separate tutorials?


You would definitely want to focus on Tkinter - and there are quite a few 
good tutorials, including the effbot tutorial. That's a reference I turn 
to almost any time I'm doing Tkinter.



i looked at some pyQT articles, but its coding looks less organised
than Tkinter.


I wouldn't say it's less organized, but there's a *lot* more to Qt than 
Tkinter.



d) is this true? is Tkinter a lot more straight forward and Python friendly?


One thing I noticed about Qt is that you'll be using the Q key a lot. So 
your left pinky (assuming two hands and a Qwerty keyboard) will get a 
massive workout. It was super awkward for me while I was learning it.



e) Does pyQT have grids (rows and columns) to place your widgets on
like Tkinter, or do you have to use x and y axis to position widgets
etc..?


You can do both...

In terms of GUI frameworks, I rank them in this order from least- to 
most-complex:


1. Tkinter
2. wxPython
3. PyGTK+
4. PyQt

Tkinter is kinda the raw materials. You get a few widgets (though that's 
really grown in the past few years with ttk and tix), and some building 
blocks.


wxPython gives you some tools to interface with the native UI - so if you 
set it up right, the same Python application will look like a "real" 
Windows app, a "real" Gnome(GTK) app, or what have you.


PyGTK seems to me like it gives you a bit more than wx. Again, this is 
largely subjective. I used to do quite a bit with PyGTK. The normal GTK 
documentation maps quite well, though it can be a little difficult to 
figure out why something is doing what it's doing.


PyQt... well that's everything and the kitchen sink. I mean seriously - 
there's a timer widget built in! It's quite the powerhouse, but ultimately 
I didn't like using my left pinky to hit the Q key so much.



Before i try to learn either, GUIs or a web Framework, i was looking
into maybe getting a deeper understanding of OOP. my tutorial only
covered it briefly.

f) would this be a good idea tackling OOP next before the other 2, or
is this a skill you master with more programming experience?


I personally would consider OOP fundamentals essential to learning GUI 
programming with anything besides Tkinter. It's pretty easy to write 
procedural-ish Tkinter code.



ok my last question is not so important:) im just curious as i grow
more fond of programming. well i keep reading Python is an all-purpose
general programming language(web frameworks, desktop apps,
science/maths etc..). I notice Java has similar features so should
also be considered an all-purpose general programming language. my
question is:

g) not a comparison in 1 specific area, but which language is better
or more suited to all around all-purpose quality.


I'm sure the other folks have mentioned that Java is an extremely verbose 
language that (at least to me) is entirely too noisy. I did *not* enjoy 
the two semesters in college that I had to use it.


The term Martin Fowler uses to describe it is a "guiding" language. That 
means that J

Re: [Tutor] help me decide

2012-09-05 Thread Dwight Hutto
No matter what the kit used for GUI, make sure it's well documented, and
has plenty of tuts/docs. I used tkinter, and wxpython, and like the widget
set/cross OS usages in wxpython better.

However, with more experience, now I'm moving toward the Blender Game
Engine to give more feel, and a 3-d pop to my apps through it's Python API.

So, consider that over time your preferences will change in relation to
your knowledge, and the wisdom that comes with the application of this
knowledge...experience.

Also, don't get hung up on just python. Always take a beginner's guide or
two with a well referenced language(all the way down to assembly/machine
language) for familiarity.

-- 
Best Regards,
David Hutto
*CEO:* *http://www.hitwebdevelopment.com*
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] help me decide

2012-09-05 Thread Steve Willoughby

On 05-Sep-12 10:40, Alan Gauld wrote:

On 05/09/12 11:04, Matthew Ngaha wrote:


also please could you tell me why you suggest wxPython over GTK?


Support, there are probably more beginner friendly resources for
wxPython than for GTk, although that is changing.


Yeah, and wxPython is a large, comprehensive package that should handle 
all of your GUI needs and then some.  I wrote one tool using wxPython 
and was quite happy with the results, and pleasantly surprised at the 
performance of widget updates and refreshes it achieved, even for the 
bits in pure Python.



that wxPython is the easiet to pick up yet a lot more complete than
Tkinter?


Not sure about that.  I started Tk programming back (way back) in my 
Tcl/Tk phase years ago, so I'm really used to Tk and that may bias me, 
but I'd say Tkinter is a lot easier to learn than wxPython, partly 
because it's smaller with fewer moving parts to tweak.  And yet, Tkinter 
is complete enough to be quite satisfactory for a lot of applications. 
Even after using wx, I've gone back to Tkinter when it sufficed for my 
applications, since it's a little easier to use and is a lot easier to 
distribute, coming for free with Python and all that.



this has interested me. is embedded programming a different field to
the type of programming in Python?


Yes, it is usually done using assembler and C or C++.
Some embedded work nowadays is done in Java - a reflection
of how cheap memory has become!


Right.  Although Java here doesn't necessarily mean the JVM is running 
on the embedded machine; it could be Java source code compiled down to 
something a compact runtime can execute.



--
Steve Willoughby / st...@alchemy.com
"A ship in harbor is safe, but that is not what ships are built for."
PGP Fingerprint 4615 3CCE 0F29 AE6C 8FF4 CA01 73FE 997A 765D 696C
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] help me decide

2012-09-05 Thread Alan Gauld

On 05/09/12 11:04, Matthew Ngaha wrote:


also please could you tell me why you suggest wxPython over GTK?


Support, there are probably more beginner friendly resources for 
wxPython than for GTk, although that is changing.



that wxPython is the easiet to pick up yet a lot more complete than
Tkinter?


I can't really comment since Tkinter and wxPython are the only two i've 
really used. I did a PyQt tutorial a long time back and have never used 
GTk at all so can't really comment on them.



this has interested me. is embedded programming a different field to
the type of programming in Python?


Yes, it is usually done using assembler and C or C++.
Some embedded work nowadays is done in Java - a reflection
of how cheap memory has become!


is your work today still related to this area?


Not really, my company (a big telecomms business) got out of making 
bespoke hardware and now buys in standard commercial kit. My core job 
these days is as an "Enterprise Architect" and I do almost no 
programming now. I determine what IT systems are needed, the interfaces 
between them and review the high level systems designs. I act as a 
bridge between the business folks and the IT tech heads... I 'own' 
around 250 systems and oversee the technical work of around 1000 
developers, with about 20 projects running at any one time.


Python programming has become more of a hobby and personal
productivity tool nowadays. It keeps me sane and connected! :-)


--
Alan G
Author of the Learn to Program web site
http://www.alan-g.me.uk/

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


Re: [Tutor] help me decide

2012-09-05 Thread Prasad, Ramit
From: Matthew Ngaha
[snip]
> i feel confident using Python now but im still not
> sure which direction i want to go in. I would at some point like to
> learn how to use GUIs and a web Framework(Django). But i don't know
> which of the 2 to start out with.
> 
> a) IF you happen to have used both, which one fills you with joy and
> is more fun for you to program with, GUI programming, or web related /
> Framework programming?
> 
> b) which was easier and less complex for you to learn? or should i say
> had a lower learning curve? i ask this because the sooner i get an
> understanding of one, i can maybe give the other one a go. But if it's
> too hard i usually give 100% to it and never try learning anything
> else until it computes.

[snip]

> Before i try to learn either, GUIs or a web Framework, i was looking
> into maybe getting a deeper understanding of OOP. my tutorial only
> covered it briefly.
> 
> f) would this be a good idea tackling OOP next before the other 2, or
> is this a skill you master with more programming experience?
> 
> ok my last question is not so important:) im just curious as i grow
> more fond of programming. well i keep reading Python is an all-purpose
> general programming language(web frameworks, desktop apps,
> science/maths etc..). I notice Java has similar features so should
> also be considered an all-purpose general programming language. my
> question is:
> 
> g) not a comparison in 1 specific area, but which language is better
> or more suited to all around all-purpose quality.
> 
> thanks guys

I would second the wxPython framework as a popular and fully featured
framework; being popular means it will likely be easier to get help
on it. I was *not* a fan of GUI in Java using Swing. 

Stick with Python, but this list is probably biased. :)

The real question is what do you want to *do* with it? The 
purpose or intent probably matters more than which you pick.
If you are learning for the sake of learning I would probably
point you in the direction of web frameworks. In my personal
opinion there is more opportunity there. Not to mention that
the basics you learn in web frameworks will help  you design 
web sites in other languages as well. Whereas desktop applications
will probably be a lot more specific to the framework/language
and project. That is just my personal observations. Others 
(including you) may disagree.

Ramit

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


Re: [Tutor] help me decide

2012-09-05 Thread Matthew Ngaha
Hi Alan thanks so much for your helpful answers.

> probably wxPython or GTk
> But if you want to get serious about GUIs I'd probably suggest wxPython
> instead - it ultimately is more powerful and complete and if you are only
> just starting will be easy to learn whereas  learning Tkinter and converting
> is more difficult (IMHO).

> PyQt is powerful too but there are several limitations in its licensing
> model that leave me slightly wary. Gtk is another option. Both of these were
> originally made popular in the Linux community but both are available cross
> platform now. (as are Tkinter and wxPython)

After your response ive decided GUI programming is defintely better
for me at this stage. I read Pyside is a replica of pyqt, same makers
qt but it covers all the licensing that PyQt doesnt, and if you learn
1 the other is almost exactly the same. Would this be a good enough
reason to give it and pyqt a try? how does it compare to wxPython?

also please could you tell me why you suggest wxPython over GTK? what
are the factors you looked at, is it better for beginners to start out
with a simpler toolkit and decide later on if its enough for them?

would you say out of the GUIs we have mentioned, apart from Tkinter,
that wxPython is the easiet to pick up yet a lot more complete than
Tkinter?

> I'm not a big fan of user interface programming in any shape. I started my
> career writing embedded software where the UI was a switch and some LEDs. So
> i am more interested in the internals of a program than in its outer
> appearance, but from necessity I've done a little bit of GUI work and even
> less web work.

this has interested me. is embedded programming a different field to
the type of programming in Python? it sounds like thats more lower
level prgroamming better suited to a language like C? is your work
today still related to this area? somewhere down the learn, after i
have mastered Python i'd definately like to learn about internals of a
program, even though the thought of that really scares me:)
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] help me decide

2012-09-04 Thread Matthew Ngaha
hey you didnt read my question:( i dont enjoy either because i have no
experience with them. so im asking questions about peoples personal
experiences with the 2 areas which can give me further information to
research on.
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] help me decide

2012-09-04 Thread Matthew Ngaha
sorry wrong i didnt send mail right.

hey i didnt explain it properly, i wasn't asking what language to use
 or learn. I am only going to be using Python. I meant whic area to
 study on 1st, GUI programing e.g Tkinter or Programming with a web
 framwork e.g Django.
___
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor


Re: [Tutor] help me decide

2012-09-04 Thread leam hall
Matthew,

Program what is fun for you. I prefer PHP for web work but I'm learning
Python for my day job. Python provides a wider range of abilities but PHP
is more "fun" for me. If Python GUIs are fun, then do that. The more you
enjoy the topic the more reason you will have to learn more and more. I
doubt you will exhaust Python's capabilities any time soon.

Python or Java? For me it's Python. The only real Java advantage might be
Android programming.

Leam


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