POV-Ray : Newsgroups : povray.programming : Programmer Server Time
29 Jul 2024 06:27:03 EDT (-0400)
  Programmer (Message 1 to 10 of 26)  
Goto Latest 10 Messages Next 10 Messages >>>
From: Rune S  Johansen
Subject: Programmer
Date: 24 Apr 1999 19:05:24
Message: <37224024.0@news.povray.org>
I would like to come into programming.

I can program with POV-Ray language which I use to make stills, animations,
math programs that output data as pictures or text files, and other things.
I would like to learn a real programming language so I will be less limited
and can work with things such as interactivity.
Now, I don't know any programming languages or what is required to make
programs, so what I would like to know is which programming language I
should choose to start with.
A description of which languages have which advantages and disadvantages
would be appreciated.
There's one more thing, I can't spend any money on this programming hobby, I
guess that limits my number of choices?

Thanks,

Rune S. Johansen
http://hjem.get2net.dk/rsj


Post a reply to this message

From: portelli
Subject: Re: Programmer
Date: 24 Apr 1999 19:47:41
Message: <37224A1B.9E54CA8A@pilot.msu.edu>
Start with c.  There are several free compilers out there.  For the PC
there is djgpp, cygwin, and several others.  

"Rune S. Johansen" wrote:
> 
> I would like to come into programming.
> 
> I can program with POV-Ray language which I use to make stills, animations,
> math programs that output data as pictures or text files, and other things.
> I would like to learn a real programming language so I will be less limited
> and can work with things such as interactivity.
> Now, I don't know any programming languages or what is required to make
> programs, so what I would like to know is which programming language I
> should choose to start with.
> A description of which languages have which advantages and disadvantages
> would be appreciated.
> There's one more thing, I can't spend any money on this programming hobby, I
> guess that limits my number of choices?
> 
> Thanks,
> 
> Rune S. Johansen
> http://hjem.get2net.dk/rsj


Post a reply to this message

From: Mikael Carneholm
Subject: Re: Programmer
Date: 24 Apr 1999 20:47:10
Message: <3722575E.F9C3C5E8@ida.utb.hb.se>
Hi Rune,

This is not an easy question to answer. I guess there are as many ways to learn
programming as there are programmers. I myself study systems development and
programming in a university, but I think that if you're motivated and used to
learning things from books you should buy some books and just start learning.

My only experience before starting my studies here was some BASIC programming on
the C-64 back in...uh...1985....(geez...that's a long time ago..), and my way
has been Pascal - C - COBOL - C++ - Delphi - SIMULA - Perl and of course - lots
of POV during all this! =)

To learn the basics I think Pascal does a good job. If you compare programming
to LEGO, Pascal is like DUPLO if you see what I mean. You get an understanding
af all the basic concepts: variables, procedures, functions, pointers.
(We used the book Turbo Pascal 7.0 by Walter Savitch (can't provide an ISBN
number for it), and I think it was a quite good book in how it decribed the
different parts of the language and programming in general.)

Then, I actually think it's time for an Object Oriented (OO) language. If you
know POV, you might have a slight understanding of what OO is as sphere{}, box{}
etc. actually are instances of "classes" and #declare MySphere=object{sphere{}}
is some sort of inheritance.

If I was a teacher and my students were open-minded to learning a language just
to understand a concept, I'd teach them SIMULA, which I believe was the first
OO-language ever invented. But nowadays people want to program in Java or C++
right away, so I guess that would be rather hard to motivate them to do. But
technically, SIMULA gives a good understanding of the OO concept.

Then it all depends on what you want to do. Database applications? Games? DOS,
Windows, UNIX or Mac programs? Network applications? Delphi seems to be quite
popular for (Windows) database applications, while Java programmers are the most
sought-after by software companies overall.

But, back to the subject: buy some books in for example Pascal or C, and go
ahead with learning the basics first. At least this is how I got started.

- Mikael.

-----------------------------------------------------------------
Mikael Carneholm
School of Business and Informatics


http://www.studenter.hb.se/~arch
E-mail: sa9### [at] idautbhbse


Post a reply to this message


Attachments:
Download 'us-ascii' (1 KB)

From: Steve
Subject: Re: Programmer
Date: 24 Apr 1999 21:15:53
Message: <37225F88.1D80865C@puzzlecraft.com>
There are many specialized programming languages that do a great job.

I am learning C++ as a first language, so all I can do is share my thinking
about it.

C++ is a broad spectrum language capable of doing pretty much anything you
want, but is probably not as efficient as the specialty languages.

C++ is difficult and time consuming to learn. Expect to spend a few months
getting it down.

The learning path in C++ has many dead ends and wrong turns. It's very easy to
end up learning a variant of the language that is not compatible with anything
other than your own setup - there's a lot of non-ANSI compliant compilers out
there.

The final official version of C++ is very new and there are very few books on
fully compliant C++ on the market. I know of only 3.

C++ is highly modular and portable, probably more so than any other language.
It's very easy to reuse functions and objects.

C++ is supported with extensive and highly developed libraries. The number of
available custom libraries is stunning!

Online help is pretty spotty and unreliable - don't even think about it as a
general method of gaining knowledge.

You can always get paying work as a C++ programmer - the recruiters are
bombarding students enrolled in C++ courses.

If your programming goals are specialized, I'd probably recommend looking into
other languages.

steve




"Rune S. Johansen" wrote:

> I would like to come into programming.
>
> I can program with POV-Ray language which I use to make stills, animations,
> math programs that output data as pictures or text files, and other things.
> I would like to learn a real programming language so I will be less limited
> and can work with things such as interactivity.
> Now, I don't know any programming languages or what is required to make
> programs, so what I would like to know is which programming language I
> should choose to start with.
> A description of which languages have which advantages and disadvantages
> would be appreciated.
> There's one more thing, I can't spend any money on this programming hobby, I
> guess that limits my number of choices?
>
> Thanks,
>
> Rune S. Johansen
> http://hjem.get2net.dk/rsj


Post a reply to this message

From: Johannes Hubert
Subject: Re: Programmer
Date: 25 Apr 1999 11:32:53
Message: <37232795.0@news.povray.org>
portelli wrote in message <37224A1B.9E54CA8A@pilot.msu.edu>...
>Start with c.  There are several free compilers out there.  For the PC
>there is djgpp, cygwin, and several others.


I wouldn't recommend that actually. C is a difficult language to learn as a
first language. If you really don't want to do anything object-oriented,
then I would recommend Pascal instead.

But then again, why *not* an object-oriented langauge?

It is only a myth that object-oriented languages are more difficult to learn
than procedural ones (like C or Pascal). This mostly stems from the fact,
that most programmers began with BASIC, C or Pascal but very few with an
object-oriented language, and that for those oldtimers "object-orientation"
still is some strange "newfangled" concept because it goes partly contrary
to what they have learned before. For a newbie who never had contact with
programming before, the whole object-orientation can be very intuitive and
easy to grasp, because there are no preconceptions about "how something
should be done" (in terms of programming) that are to be overcome.

In the recent "C/C++ Users Journal" from May 99 Bjarne Stroustrup makes a
very convincing argument about giving C++ the first choice over C as the
first language of a beginner (well, he is the inventor of C++, so who would
have guessed his opinion in that matter? ;-) .

C++ also has the advantage, that it is a superset of C. That means, once you
have mastered C++, you also have mastered C! (But you don't have to use all
the ugly nitty-gritty things from C, because often C++ offers a more elegant
solution.)

I can also very much recommend Java as a very tidy and strongly structured
(and easy to learn) language. Most probably easier to learn than C++!
It may be a little more difficult to come into (learning about classes, and
virtual machines and classpaths etc.) than C++, but still: A good choice.

If you ever plan to draw advantage out of your programming skills when it
comes to getting a job, then you should definitely learn either C++, C (with
the reservations mentioned above), Java or maybe Visual Basic (which is
probably out of the question since you don't want to buy something).

So long,
Johannes.


Post a reply to this message

From: portelli
Subject: Re: Programmer
Date: 25 Apr 1999 12:07:57
Message: <37232FE8.9E113698@pilot.msu.edu>
I mention c and not c++ because some of those nice features of c++ have
gotten me into trouble.  It was easier to them do it in plain old c.  I
think with c you get a better grasp on what is actually happening.  But
that is just me.

Johannes Hubert wrote:
> 
> portelli wrote in message <37224A1B.9E54CA8A@pilot.msu.edu>...
> >Start with c.  There are several free compilers out there.  For the PC
> >there is djgpp, cygwin, and several others.
> 
> I wouldn't recommend that actually. C is a difficult language to learn as a
> first language. If you really don't want to do anything object-oriented,
> then I would recommend Pascal instead.
> 
> But then again, why *not* an object-oriented langauge?
> 
> It is only a myth that object-oriented languages are more difficult to learn
> than procedural ones (like C or Pascal). This mostly stems from the fact,
> that most programmers began with BASIC, C or Pascal but very few with an
> object-oriented language, and that for those oldtimers "object-orientation"
> still is some strange "newfangled" concept because it goes partly contrary
> to what they have learned before. For a newbie who never had contact with
> programming before, the whole object-orientation can be very intuitive and
> easy to grasp, because there are no preconceptions about "how something
> should be done" (in terms of programming) that are to be overcome.
> 
> In the recent "C/C++ Users Journal" from May 99 Bjarne Stroustrup makes a
> very convincing argument about giving C++ the first choice over C as the
> first language of a beginner (well, he is the inventor of C++, so who would
> have guessed his opinion in that matter? ;-) .
> 
> C++ also has the advantage, that it is a superset of C. That means, once you
> have mastered C++, you also have mastered C! (But you don't have to use all
> the ugly nitty-gritty things from C, because often C++ offers a more elegant
> solution.)
> 
> I can also very much recommend Java as a very tidy and strongly structured
> (and easy to learn) language. Most probably easier to learn than C++!
> It may be a little more difficult to come into (learning about classes, and
> virtual machines and classpaths etc.) than C++, but still: A good choice.
> 
> If you ever plan to draw advantage out of your programming skills when it
> comes to getting a job, then you should definitely learn either C++, C (with
> the reservations mentioned above), Java or maybe Visual Basic (which is
> probably out of the question since you don't want to buy something).
> 
> So long,
> Johannes.


Post a reply to this message

From: Lodewijk Voge
Subject: Re: Programmer
Date: 26 Apr 1999 16:09:00
Message: <slrn7i9ek0.klv.lodewijk@reddwarf.xs4all.nl>
Rune S. Johansen <run### [at] get2netdk> wrote:

  > Now, I don't know any programming languages or what is required to make
  > programs, so what I would like to know is which programming language I
  > should choose to start with.

Python, and if that's too slow, straight C. then you can write the
speed-hungry parts in C, and wire them up with Python.

http://www.python.org/

  > A description of which languages have which advantages and disadvantages
  > would be appreciated.

C is nice, simple and portable, but you'll get bitten a lot by pointer errors
while learning. make sure you're on a solid OS.

C++ is complicated, after reading some Guru of the Week questions in
comp.lang.c++ I just quit C++ altogether. way too many obscure pitfalls for
me.

Java is a quite nice language, but current environments are way too slow. if
I have to take a speed hit, I'll take all the niceties Python offers rather
than all the baggage a "real" programming language like Java has. OTOH, Java
compilers are now becoming available, although I haven't tried any yet.

Pascal and Delphi are weak in the OO department. and before anyone starts
jumping up and down: Delphi's notion of interfaces is unusable. something
like Java's Collections is, AFAICS, impossible. those are already a
compromise, Collections not being type-safe, but Delphi doesn't even have
that. eww. maybe in the next lets-steal-a-feature-from-Objective-C round.

this besides the obvious vendor-lock issue with Delphi.

  > There's one more thing, I can't spend any money on this programming hobby,
  > I guess that limits my number of choices?

Python is free, as are a few C and C++ compilers. http://www.gnu.org/
the Sun JDK is also free.

it is beneficial to learn a "real" language anyway, even if you do go
with Python. knowing a real language is about the only thing that can really
shed some light into the magic black box that is your computer.

Lodewijk


Post a reply to this message

From: Rune S  Johansen
Subject: Re: Programmer
Date: 26 Apr 1999 17:28:19
Message: <3724cc63.0@news.povray.org>
Thank you all for your support!

I think I choose to start with c.
So which free PC windows 9x c compiler is the best?
Of course that's a matter of opinion but opinions is exactly what I would
like to hear.

portelli wrote:
>I mention c and not c++ because some of those nice features of c++ have
>gotten me into trouble.  It was easier to them do it in plain old c.  I
>think with c you get a better grasp on what is actually happening.  But
>that is just me.
>
>Johannes Hubert wrote:
>>
>> portelli wrote in message <37224A1B.9E54CA8A@pilot.msu.edu>...
>> >Start with c.  There are several free compilers out there.  For the PC
>> >there is djgpp, cygwin, and several others.
>>
>> I wouldn't recommend that actually. C is a difficult language to learn as
a
>> first language.
Do you mean C or C++ is a difficult first language? I'm a little confused.

>> If you really don't want to do anything object-oriented,
>> then I would recommend Pascal instead.
>>
>> But then again, why *not* an object-oriented langauge?
>>
>> It is only a myth that object-oriented languages are more difficult to
learn
>> than procedural ones (like C or Pascal). This mostly stems from the fact,
>> that most programmers began with BASIC, C or Pascal but very few with an
>> object-oriented language, and that for those oldtimers
"object-orientation"
>> still is some strange "newfangled" concept because it goes partly
contrary
>> to what they have learned before. For a newbie who never had contact with
>> programming before, the whole object-orientation can be very intuitive
and
>> easy to grasp, because there are no preconceptions about "how something
>> should be done" (in terms of programming) that are to be overcome.
<snip>
>> So long,
>> Johannes.

Thanks,

Rune S. Johansen
http://hjem.get2net.dk/rsj


Post a reply to this message

From: Rune S  Johansen
Subject: Re: Programmer
Date: 26 Apr 1999 17:37:08
Message: <3724ce74.0@news.povray.org>
Rune S. Johansen skrev i meddelelsen <3724cc63.0@news.povray.org>...
>Thank you all for your support!
>
>I think I choose to start with c.
>So which free PC windows 9x c compiler is the best?
>Of course that's a matter of opinion but opinions is exactly what I would
>like to hear.
>
<snip>

>
>Thanks,
>
>Rune S. Johansen
>http://hjem.get2net.dk/rsj

I may not know exactly what I am talking about.
I just meant:
I use windows 95.
Which free compiler do you think I should use?

Thanks,

Rune S. Johansen
http://hjem.get2net.dk/rsj


Post a reply to this message

From: Ralf Muschall
Subject: Re: Programmer
Date: 26 Apr 1999 18:02:46
Message: <3724D45C.EA0F0F0A@t-online.de>
Rune S. Johansen wrote:

> I would like to come into programming.

There are essentially three mutually exclusive [ :-( ]
kinds of programming languages:

1. Those which everybody uses to write useful stuff in (C, Java,
   Perl, C++)
2. Those which are relatively easy to learn (scheme, python, subsets of
perl)
3. Those which are constructed in order to be pure, safe, exact
   or something like that (Haskell, Ada, ...)

> I would like to learn a real programming language so I will be less limited
> and can work with things such as interactivity.

If you want to do interactive stuff, you might look at perl or python
(perl is messier, but is considered more intuitive by many people).

Both come with Tk bindings, which allow doing GUIs on both Unixen
(trivially) and Win (after having installed some additional libraries,
which are documented at the place where the language itself is 
available).

Languages of the third group are interesting, but probably overkill
unless you need to prove that your programs won't crash even after
an interstellar flight. :-)

Ralf


Post a reply to this message

Goto Latest 10 Messages Next 10 Messages >>>

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.