On Monday, 10 February 2014 at 20:32:03 UTC, Adam Wilson wrote:
I wholeheartedly agree with this sentiment, although I am a little older and got my start in a combination of VB6 and C++98.

Same for me when I first started learning to program. I did a VB6 course in highschool, followed by a Java course, as well as teaching myself C++ on my own to hack on my Nintendo DS. Looking back, good tutorials were the biggest help. I didn't know anything about anything, and I don't know if I would ever have been able to figure out C++ without sites like cplusplus.com. Bartosz Milewski's C++ in Action book was a huge help too. I'm glad he decided to publish it for free on the web.

And the .NET Framework or Java Frameworks. I know that the linux-heads scoff at the idea of shipping a large standard library, "Download the library that works best for you" they cry! Well, that answer is unacceptable for newbies, mostly because they don't actually know which library will work for them, or with D, or on the operating system they are using. Big standard libraries provide a new user with all the tools that they need to write many programs. This isn't to say that the standard library needs to include everything one might need to build any app every. I still use third-party libraries. I just don't use them to fill in common functionality. For example, I have a library that provides special types of inputboxes, but WPF (a big part of the .NET Framework) provides a generic inputbox. Then we use EntityFramework, .NET provides the generic interface that is used by EntityFramework, LINQ, but EF itself extends the framework in specialized ways. The framework should absolutely include as many general tools as possible.

I absolutely agree with that. Phobos should strive to be as "batteries included" as possible while minimizing (ideally eliminating) third party dependencies.

Building a new IDE won't solve this problem. Here we need to focus on building better tools for D, turning DMD itself into a library or Compiler-as-a-Service in the current lingo, since libraries are now "services". D needs to make great strides in tooling to be relevant, we need first-class debugging, and they need to support more than the terminal. We need D as library, we need better IDE integrations. We need a broader standard library. We need more bindings for existing libraries. We need more new libraries (like the Aurora library I am working on).

But most importantly we need to stop whining about the problems and start doing something about them. There are plenty of projects in these areas that are being run by a single person that could use any help. For example, I know that Rainer Schutze of VisualD fame is quite open to pull requests. If you use a library from a language other than D and have a D binding for it, get it in Deimos.

I've come to agree that good IDE integration is a must. I use C# at work, and Visual Studio makes refactoring and code generation near-effortless. I agree with Walter that we definitely shouldn't need an IDE to use D, but there is no competition when it comes to the productivity that a good IDE enables.

Reply via email to