Re: Book questions
Quoting Iain M Conochie (firstname.lastname@example.org):
> On 12/04/15 17:34, David Wright wrote:
> >Quoting Iain M Conochie (email@example.com):
> >>IMHO, the issues with perl and python is that you will have to
> >>understand Object Orientated Programming (OOP) to get the most out
> >>of them, especially for GUI development. This was one of the reasons
> >>I drew a blank with perl. This may or may not be the case. Brett,
> >>any opinion on this?
> >Oh gosh, I wouldn't just rely on the advice of one or two people here
> >to make your decision. If you type any of perl vs or python vs
> >or ruby vs into google and see the suggestions, then click on a
> >few of them and you will find a lot of knowledgeable discussion of the
> >issues (amongst a wealth of prejudices, of course).
> >If the programs/tools you want to write have GUIs, then you're not
> >going to avoid OOP so that's not really an issue.
> OOP is a big issue for me :)
So I unerstand.
> > However,it might
> >help to see if the way languages handle objects seems natural to
> >you. And really, that's the case for the languages themselves...what
> >fits you best. There's also something to be said for seeing what other
> >people in your field are using as you may want to call upon this
> >community to help solve problems you run into.
> Sad as it may seem, I am on my own in this. Hence trying to solicit
> other opinions on this matter, of which yours is most welcome.
If my opinions seemed at all abrasive, they were not intended to be,
because I was really bouncing my thoughts off your posting towards
the OP, Petter.
> My hate / love / hate of perl (and probably OOP) comes from a long
> winter of learning the perl by building an auto-updating website,
> then I wanted to add the data into a mysql DB and finding myself
> lost and not being able to do what I wanted to do. This was perl
> 5.0.4 (which probably gives my age away ;) However, it recently came
> through for me and I was able to use it to build a shell script.
Hmm. Looking at Perl's own documentation site, I see "By default,
Perl's built-in OO system is very minimal, leaving you to do most of
the work. This minimalism made a lot of sense in 1994, but in the
years since Perl 5.0 we've seen a number of common patterns emerge in
Perl OO. Fortunately, Perl's flexibility has allowed a rich ecosystem
of Perl OO systems to flourish."
Similarly, "Unless you know you need an OO model, it's probably better
to use a procedural model to help maintenance and readability. If
you're still unsure, go with an ordinary procedural model." which
sounds rather half-hearted coming from a didactic source you'd expect
to be encouraging.
OTOH, "Python has been an object-oriented language from day
one. Because of this, creating and using classes and objects are
downright easy. This chapter helps you become an expert in using
Python's object-oriented programming support."
And this is from Cody Jackson's book Learn Python Programming:
"Personally, I feel procedural programming is easier to learn,
especially at first. The thought process is mostly straightforward and
essentially linear. I never understood OOP until I started learning
Python; it can be a difficult thing to wrap your head around,
especially when you are still figuring out how to get your program to
work in the first place."
Perhaps this could indicate that the book is a good fit for you if you
feel you're in the same boat? (It's downloadable at
http://python-ebook.blogspot.com/ by clicking on "Free PDF version
(personal use only)" in the margin and then selecting Print.)
> >Also bear in mind that while books are fine for learning from, and
> >consolidating your knowledge, once you start seriously using any
> >language the web resources will be essential because most books in
> >this area are out of date before they're even published.
> Ahh - a beautiful statement, and music to my ears. I am sadly
> lacking in a formal education in computer science, but the internet
> is my tutor, and I have learned exactly what I need to learn. No
> more but probably a bit less.
Thanks. (But again aimed at the OP, who by good fortune appears to
have strayed into a free bookshop!)
[Disclaimer. As posted elsewhere, I jumped ship from Perl to Python
while perl(4) had no OOP.]