Well, like so many things in life what is considered to be easy is
completely a personal opinion.So before we can really have a reasonable
discussion which language is the easiest we have to take in account what
you would consider easy.Still I don't know what you personally would
find easy I'll have to use my personal judgment here.
Personally, in all my years of programming the easiest language for me
to learn was C# .Net, called C-Sharp, because it has a C-style syntax
without all of the complexity of C++. However, since C# .Net wasn't one
of the options you have given me I'll try and compare the languages you
did request information on.
First, we have Python. As you pointed outyou didn't really understand
the language so perhaps it is not a language you would personally
consider easy.As for me I find the language easy enough to learn, but
what I find confusing is keeping track of the formatting and spacing to
define blocks of code. The formatting is a completely visual aid, and
therefore it is more difficult to keep track of the code when using a
screen reader. Other languages such as C++ and Java use braces to define
blocks of code which I personally find more logical and easier to keep
track of. So on account of the specific formatting and lack of syntax
makes Python not as easy as it could be.
As far as C++ goes it is the most difficult language on your list.The
basic functions, headers, and syntax are easy enough to learn, but C++
also puts a lot of the responcibility of doing all the advanced
low-level programming yourself.This is what trips up new programmers
because they simply aren't equipped to manage his/her system resources
on their own. For example,if you were to use system pointers in your C++
application to handle something like game sounds you have to remember to
manually delete those pointersand release the system memory back to
the free stack before loading new sounds or exiting the program. Failior
to do so could result in some major memory leaks in your application.
Unfortunately,asigning memory and cleanning up after you are done with
it is something many new programmers fail to do correctly and do poorly.
So C++ is largely considered an advanced programmer's language because
of the skill and experience required to truly master the language.
Ultimately I believe the easiest language on your list to learn is
Visual Basic. It was my first programming language, the one my college
taught first, and it is safe to say programmers generally find it to be
a good starter language in terms of ease of use. The one thing that
makes the basic type languages good choices for early programming
training is the fact they tend to usewords to define blocks of code
rather than relying on special formatting as Python does or relying on
braces and brackets as C-style languages do. Plus basic languages like
Visual Basic don't get into really advanced programming such as managing
resources and memory which is both a advnatage and disadvantage
depending on your outlook. So if you are talking where to start in terms
of ease to learn I'd say try VB .net.
Before I close I think it might be helpful to show you an example ofsome
different programming languages to give you a better idea of what I am
talking about above. I'll use a very simple program like Hello World as
// Hello World C++
int main ()
std::cout << "Helo world!" << std::endl;
' Hello World VB .Net
Sub Main ()
System.Console.WriteLine (0, "Hello world!")
As you can see the VB .Net version of the typical Hello World program is
far simplar than it'sC++ counter part. As programs get bigger and more
complex the ease of use factor of VB .Net over C++ will only become
more so. The .Net Framework certainly simplifies many aspects of day to
day programming simply because all of the low-level stuff you have to do
in C++ is incorperated directly into the .Net Framework ready to pick up
and use right away.For example, in my VB .Net sample I called the
WriteLine() function. WriteLine() is actually a .Net wrapper function
for the cout function used in the C++ code above. In larger more
complex applications such as games this really pays off.
One example that comes to mind is using the Microsoft XAudio2 library
forgames. If you use the C++ library you pretty much have to design a
custom sound manager from scratch to load wav files and get their
attributes. Microsoft has sample code showing you how to do this, but
never-the-less it is quite a lot to ask from a totally new programmer.
If you use the C# .Net or VB .Net language with the SlimDX API for
DirectX you don't have to worry bout all that low-level stuff.You simply
make a link to the SlimDX library, include the XAudio2 namespace, and
start programing since all the really low-level stuff is already taken
care of for you. All you need to do is call the proper load functions
and initialization functions contained in the library.
As far as Inform goes I have had very little experience with it, andit
is less a programming language and more like a smple script fo the
inform compiler.It is not hard to use in my opinion, and if you are
into text adventures then I'd say try it. However, it isn't a
programming language per say.
The Jaws scripting language is a programming language, but is totally
specific to Jaws. I havent' kept up with the scripting language since I
stopped using Jaws four or five years ago, but at the time I was able to
quickly pick up and learn the scripting language on my own. However,
I'll make it clear i was already a skilled programmer at the time I
started learning the Jaws scripting language so that would certainly
acount why I had no problems learning it. For you it might not be that
Finally, I want to leave you with this thought. I've been programming
for several years and all of the major programminglanguages have comon
concepts and skills that carry over from programming language to
programming language.What makes it so hard for a new programmer to learn
any programming language is simply they are unfamiliar with the concepts
of functions, variables, data types, classes, objects,and so on. They
don't know all the technincal terminology for things. Once you overcome
these limitations suddenly you will find it easier to pick up and learn
any language you choosebecause a large part of what you aready know
will carry over to the next programming language you try to learn.
That's why I pointed out we need a definition of ease of use or easy to
learn. There comes a point where a very highly skilled programmer who
knows say C++ can easily learn another C-style language like Java or
C# .Net in a matter of a few days simply because he can skip over all of
the introduction to programming material and get directly into hands on
training with actual programming using that language. That skilled
programmer doesn't need to have an explanation of a class, object,
variable, whatever because he already knows that.What he needs is to be
shown what diferences exists between language x and language y.
Gamers mailing list __ Gamers@audyssey.org
If you want to leave the list, send E-mail to gamers-unsubscr...@audyssey.org.
You can make changes or update your subscription via the web, at
All messages are archived and can be searched and read at
If you have any questions or concerns regarding the management of the list,
please send E-mail to gamers-ow...@audyssey.org.