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@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@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@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@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@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@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@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