I do think that what language you choose to learn in will effect what
you learn though. As someone else mentioned, which was a good point,
being exposed to good code is the best thing to help you learn to write
it. And on that basis, PHP is maybe not a good choice, and Perl can
be... dangerous. Ruby or Python would be great on this front, but
maybe not so great for your particular environment. Java... maybe.
But yeah, the most important thing is picking something that will work
for the context you are in. But within that... especially for a
beginner, I think it's easy to pick up bad habits from working with bad
code.
Jonathan
Joe Hourcle wrote:
> On Wed, 22 Jul 2009, Jacob wrote:
>
>
>> On Wed, Jul 22, 2009 at 4:46 PM, Ross Singer<[log in to unmask]> wrote:
>>
>>> On Wed, Jul 22, 2009 at 8:54 AM, Jon Gorman<[log in to unmask]> wrote:
>>>
>>>
>>>> As far as
>>>> languages, I'd probably lean towards ruby or python for starters or
>>>> maybe Java. Then move into php after you have a grasp of good
>>>> programming practice. You'll also figure out more what you like to
>>>> work on.
>>>>
>
> [trimmed]
>
>
>>> I would almost certainly say start out with a procedural scripting
>>> language (or at least a procedural approach) that is more common and
>>> Googleable (PHP immediately comes to mind). The nice thing about
>>> something like PHP, in my mind, is that it's incredibly easy to see
>>> immediate results without having any real idea of what's going on
>>> (that being said, I have _no_ idea what Wayne's background might be --
>>> perhaps this advice is too novice). As many others have replied, it's
>>> so much easier to learn by solving an actual problem (rather than
>>> following the 'pet store' example in your tutorial) and, in my mind,
>>> PHP is the easiest way get off the ground. Successes breed confidence
>>> to take on bigger projects, etc.
>>>
>> Fully agree with that. Programming has to be learned incrementally, by
>> getting your hands dirty a little then studying the necessary theory
>> and repeating the cycle to tackle bigger problems. If I didn't hate
>> the language so much I'd vote for PHP as well:) But surely a scripting
>> language with a prominent Web presence, to start with. Preferably one
>> that is clean, minimalist and well thought through like Smalltalk :)
>>
>
> I'll agree that all of us have to go through the writing bad code before
> we really understand what's going on. (I cringe when looking at programs
> I wrote 3 years ago, much less those I wrote 15+ years ago)
>
> ... but on the language front, I think it's pointless for any of us to
> recommend a language without understanding the environment.
>
> If there's someone other programmer in your group, learning a language
> that they know might not give the group as a whole as many tools to
> complete tasks, but odds are, you're going to have to be maintaining each
> other's code, and you'll have someone to act as a mentor and ask questions
> of.
>
> If you're on your own, then I'd probably look at what packages you might
> have to maintain, and what they're written in. After that, I'd look at
> what type of programming you're doing -- if you're doing mostly systems
> work without GUIs, I'd go for perl or python, not PHP. If you have to
> make stand-alone apps (non-web-based), possibly Java.
>
> All languages are just tools -- there are some things that each one does
> well, and there are tasks for a given language that are just horrible to
> implement.
>
> I'd also look for local support groups for whatever language(s) you
> choose. Search for "(language) user groups" and you'll find lists for C
> varients, PHP, Perl, ColdFusion, Java, etc.
>
> -Joe
>
>
|