A programming language for learning (Was: Re: )

Eric Cope eric.cope at gmail.com
Sat Feb 20 22:14:22 MST 2010


I'd say the best language to learn first is the one that makes the project
useful. What is the project you want to attack?
I enjoyed learning C/C++ first, but OOP evangelists would disagree. :)

Eric

On Sat, Feb 20, 2010 at 7:21 PM, Joshua Zeidner <jjzeidner at gmail.com> wrote:

>  one of the best books on software engineering:
>
>
> http://www.amazon.com/gp/product/0201835959?ie=UTF8&tag=joshzeid-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=0201835959
>
>  regarding the choice of language, we've got some academic research
> on one hand... and the world of ruby fandom on the other.  re. Joseph
> Sinclair, lets not mistake relativism for high ground here, there are
> differences and there is a right choice and a wrong choice.
>
>  -jmz
>
>
>
> On Sat, Feb 20, 2010 at 7:12 PM, Alan Dayley <alandd at consultpros.com>
> wrote:
> > Every language has strengths and weaknesses.  Some one wanted the
> > strengths and so designed the language for that reason.  Python is
> > appropriate for many things and not appropriate for many others.  So
> > is any other language.
> >
> > Mike wanted a suggestion for learning a language.  Python is an easy
> > language to start with because:
> > - the learner can see results quickly for encouragement.
> > - there is an excellent community to support the learner.
> > - there is a large body of libraries (modules) to add interesting
> > functionality quickly.
> > - there is a large body of documentation, tutorials, etc. available
> > online and in print.
> >
> > Does using Python cause bad habits that may hinder the learner when
> > attempting to use other languages or creating other types of programs?
> >  Probably, depending on the next language and application.  The same
> > can be said for any other programming language.
> >
> > For example, my career has mostly involved developing embedded
> > executables in low resource environments.  Only recently has any
> > object-oriented compiler reached a point where coding such systems
> > using OO principles makes sense.  Sometimes, in low resource target
> > environments, all kinds of taboo coding behaviors are necessary.
> >
> > So, if Python is not appropriate in your experience, which language or
> > languages would you suggest for a first-time, self-learner?  Why?
> >
> > BTW, there are several "How to think like a computer scientist" books,
> > each centered on a different language.  They are very good.  So, if
> > Python is not the one, go with Java or C++
> > (http://www.greenteapress.com/)
> >
> > Alan
> >
> > On Sat, Feb 20, 2010 at 6:29 PM, Kevin Fries <kfries6 at gmail.com> wrote:
> >> Wow, now I know why it is so hard to hire people that are competent!
>  Python is fun, not right, but fun... Thats your argument?  If you want to
> know why we refuse to hire Python programmers at our company, I can give you
> real facts on why you should not use that language as a place to learn...
> Not opinions.
> >>
> >> Kevin
> >>
> >> Sent from my Nokia phone
> >> -----Original Message-----
> >> From: Joshua Zeidner
> >> Sent:  02/20/2010 4:17:23 PM
> >> Subject:  Re:
> >>
> >> On Sat, Feb 20, 2010 at 4:13 PM, Joshua Zeidner <jjzeidner at gmail.com>
> wrote:
> >>>  Seems like we have a lot of opinions here.  Here is a paper from ACM
> >>> on the use of Python in for teaching programming.
> >>>
> >>>    http://portal.acm.org/citation.cfm?id=114017
> >>
> >>  sorry wrong link:
> http://portal.acm.org/citation.cfm?id=1140123.1140177
> >>
> >>       -jmz
> >>
> >>>
> >>>  -jmz
> >>>
> >>>
> >>> On Sat, Feb 20, 2010 at 4:01 PM, Austin William Wright
> >>> <diamondmagic at users.sourceforge.net> wrote:
> >>>> Alan Dayley wrote:
> >>>>> Python.
> >>>>>
> >>>> Absolutely NOT PYTHON. It breaks the first two rules of programming,
> the
> >>>> assignment operator (=) assigns values to a variable, and always
> ignore
> >>>> whitespace. Well my first two rules, at least. Plus it sucks at
> >>>> consistent use of object-oriented programming.
> >>>>
> >>>> If you *really* need a general-purpose programming language, look at
> >>>> Ruby, it's slightly more well behaved. Slightly. I would recommend
> >>>> Javascript, it's a major programming language, and you can run it in
> >>>> your web browser with literally nothing to install. Plus Javascript is
> >>>> closely related to XML and HTML, while not programming languages, are
> >>>> markup languages (a way of storing data) that is becoming very
> important
> >>>> to know for many things. Though designed for the web, many of these
> >>>> things are finding themselves become part of everyday computing,
> >>>> especially XML. For these things, http://www.w3schools.com/ is
> popular.
> >>>>
> >>>> Any scripting language might be a good start at learning about
> >>>> if/then/else logic, but none of these languages are going to teach how
> >>>> computers really *process* or *store* information on the inside (how
> the
> >>>> CPU executes the program or how variables are stored in memory), or
> for
> >>>> that matter write an actual interactive computer program, you will
> need
> >>>> a real language like C or C++. After learning something like
> Javascript
> >>>> you will find C surprisingly limited in functionality if you try and
> do
> >>>> things the same way, especially variable-length variables like strings
> >>>> and arrays. Keep that fact in the back of your head for when, if, you
> >>>> attempt C/C++.
> >>>>
> >>>> Whatever you do, Google "<x> tutorial" should bring up something good.
> >>>> In the way of books, however, you can't miss ones from O'Reilly (
> >>>> http://oreilly.com/ ), they are jade/teal and have a random animal on
> >>>> the cover.
> >>>>
> >>>> Austin Wright.
> > ---------------------------------------------------
> > PLUG-discuss mailing list - PLUG-discuss at lists.plug.phoenix.az.us
> > To subscribe, unsubscribe, or to change your mail settings:
> > http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
> >
>
>
>
> --
> http://home.joshuazeidner.com/
> ---------------------------------------------------
> PLUG-discuss mailing list - PLUG-discuss at lists.plug.phoenix.az.us
> To subscribe, unsubscribe, or to change your mail settings:
> http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
>



-- 
Eric Cope
http://cope-et-al.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.PLUG.phoenix.az.us/pipermail/plug-discuss/attachments/20100220/02951086/attachment.htm 


More information about the PLUG-discuss mailing list