Is there a reason not to use D(language)?

K.I.L.E.R

Retarded moron
Veteran
It looks damn good but I'm cautious of spending time on something(even if I like it) as it could be spent on things which are related to my future career.

Can someone tell me if it's worth investing my time on D?
I REALLY like the language but if there's no future for it commercially I would have to consider putting time elsewhere.

Thanks.
 
As far as I'm aware, very little if any commercial development is currently done in D. If your sole interest is in advancing your career as a professional software developer then you're most likely better off improving your skills in more conventional technologies such as C#/.NET and Java 2/J2EE/EJB. These will serve you well for at least ten years, if not longer.

Having said that, I personally liked D a great deal as it merges a number of concepts from more modern languages, such as lexical closures, mixins, and transparent memory management with the ability to inline assembly code. I just don't see large scale commercial adoption anytime in the near future.
 
Last edited by a moderator:
The language looks very much like yet another attempt at making a 'better C++', much like Java and C#. It does look reasonably well-designed for a C-family language, and it wouldn't surprise me if longtime C/C++/Java coders could just pick up this language in ~1-2 weeks and possibly already then be more productive than in their previous languages (modulo library knowledge).

Whether or not it is worthwhile for you to learn this language would depend strongly on what your motivation for learning new languages is:
  • Hobby coding or exercise of general programming skills? Sure, go ahead.
  • Marketable skills? Nah. Go for C, Java, C++, C#, VisualBasic or perhaps even Cobol; as long as D lacks both a hype machine and a large enough legacy code base that needs to be maintained, skills in D are not by themselves very commercially valuable.
  • Broaden your view of what programming is about? Not really - D is a cleaned-up rehash of familiar ideas, not something drastically new. You will probably learn a LOT more by trying to wrap your mind around less familiar languages, like Ocaml, Haskell, Fortress, Prolog, Forth, etc.
 
Dont waste your time with D. If you want to learn anything, stick withing Java / C# / C, C++. For quick hacking, pick-up Ruby on Rails, PHP, and Perl. All the large commercial development projects are using Java / C#.
 
I think it might benefit you to learn multiple languages that are quite different. OCaml and Lisp would give you a very interesting introduction into quite different ways of programming.

Being good at programming mostly means that you know what possibilites you have to do something. Half of that is in knowing the API, the other half is in language constructs. And you can use those constructs in other languages as well, if you know how they work.

Writing the code is only about 10% of the work, so it makes sense to spend time on the things that help with the other 90%.

Another good thing to do is really designing projects up front. That's the hardest part for large ones and the main thing that determines how far you can get.
 
Fran said:
Please, no :)

Is Design Dead?

Fran/Fable2
Yes. But while there are many good reasons not to try and plan everything up front (most of which I agree with), it would create large problems if your project is fixed price, or you have many people working on it.
 
Back
Top