On Thursday, 16 October 2014 at 22:26:51 UTC, RBfromME wrote:
I'm a newbie to programming and have been looking into the D
lang as a general purposing language to learn, yet the D
overview indicates that java would be a better language to
learn for your first programming language. Why? Looks like D
is easier than Java...
I agree with Ali. Give it a try, you don't need to use all the
fancy features of D, features you only come to appreciate after
years of programming (especially in other languages like Java,
that are very restrictive).
In D you can start out with very simple code like
import std.stdio;
void main() {
auto i = 5;
auto j = 2;
auto sum = 5 + 2;
writeln(sum); // prints 7 to console
}
In Java you already need a lot of boiler plate code for this (a
class for main(), i.e. you have to understand object-orientation
to begin with!).
If D is too difficult for you, because the tutorials etc. assume
that you already know how to program (to a certain extent), you
can either ask people on the forum or try a "simpler" language
for which there are very basic tutorials, and come back to D
later, once you've grasped enough of the concepts that are common
to all programming languages.
An "instantly rewarding" language is Lua (lua.org). It was
designed for people with no programming background, yet it is
very fast and powerful (it's used in gaming a lot). It has some
advanced features too (e.g. meta-programming), if you _choose_ to
use them (it's not a "scripting for dummies" language).
Personally, I wouldn't recommend an IDE for beginners. It can be
confusing at times and even worse, it may spoil you as regards
coding habits. The best way to get familiar with a language or
coding in general is to use a simple text editor, type everything
yourself (at the beginning), and soon it will become second
nature to you. It's like learning an instrument, on the one hand
you have to practise scales and patterns, and on the other hand
you have to learn concepts (chords, chord progressions,
harmonies). In order to be able to grasp the concepts, your brain
shouldn't be concerned with what your fingers are doing, the
fingers should move automatically (so that you can listen to
yourself).