On Friday, 13 October 2017 at 13:14:39 UTC, Steven Schveighoffer wrote:
Thanks for replying. I did not mean my post as a slight against your knowledge, but really about my ignorance -- I don't know what the expectations of a Windows user are. I think the Windows users we do have on the core team (Walter being the main one) probably aren't typical Windows developers. But my experience seems to be most of the "I've tried to use D for 10 days and it sucks!" rants come from the Windows side, and they are mostly about installation and IDE woes. On my mac, I just do "dvm install 2.076.0" and I'm up and running.

I think at some point, an actual company will pick up the maintenance of a good D IDE for windows, and will solve this problem. Unfortunately, we have to rely on volunteers right now, and that company hasn't materialized.

One note about your requirements, auto-completion I think is something that I love about IDEs for other languages (I would be lost in xcode without it) and is something I've never used with D (all my attempts have been disasters). It's definitely something we need to improve the experience on.

As one of those Windows users that has a love/hate relationship with D, i can only state that the issues that the OP has faced, are similar to those that i seen.

DMD in general installs good on Windows ( minus the path at times not getting registered and the need to logout/reboot ).

The issues mostly come from the editor support and at times horrible dub package breaking. D has the habit of breaking backward comparability in specific releases, mostly from improper testing the compiler vs the dub packages.

The issue with with code-d, serve-d and other VSC solutions that go from the above mentioned path issues, dub package breaking, support packages refusing to compile, the simple fact that some maintainers assume that GIT is standard installed, ...

The list is long and currently code-d and serve-d are broken again. At times they work, reinstall them on a other system and they break.

Its probably the main reason why i do not use D for any big projects. The feeling that things break constantly or do not work the same on almost the exact systems. D and everything around it on Windows feels fragile, that is the best way to describe it. Same with some of the user friendliness of the compile options the moment you step outside simple run/build and start playing with shared libraries etc. Trust me when saying that a lot of other languages feel more complete.

Even the D error output feels year 2000, compared to Rust, Crystal etc... Probably very usable for D experts but lackluster for a language that seeks adoption in 2017. Same issue with the 3 different compilers and different command options. The steps needed to figure out cross compiling is bigger then Go, Rust, ... Let alone the above mentioned shared libraries.

D is a marvelous project with a clear C++ developers focus, and i can only conclude that C++ developers are people who are into sadomasochism based upon some of the friendliness features :)

That is always the issue with a language that focuses on a specific group of developers, with a mindset that they can find there way around similar design. But it does not work so well on developers who like the current new generation of languages that make things more easy on the brain.

The issue is not only located in the Windows issue but also somewhat in the design mentality it seems. That give the impression that Windows is just a side project and people who do not come from a C/C++ background there complaints are reduced to complainers.

Instead of focusing on adding new features, do a audit and fix the library its GC reliance, better documentation, more user friendly compiler options, better (universal) editors support for people who do not use the dlangide/visualstudio plugin, ... you know, the boring stuff.

I have probably put in a few hundred hours try to learn D and get going. And half that time was pure wasted on bugs, editor issues, frustration, hours looking up something that is so easy in other languages, ...

Recently i was helping a developer who was benchmarking D+Vibe.d, on his OsX he never got parallel support to work ( error fault 11 ) for Vibe.d, resulting in vibe.d running single core and losing to Crystal and Rust big time ( single core tests ). I do not expect him to pick up D based upon those results. That was two developers trying to find the correct way to force vibe.d to work parallel on his system. Lets not count the hours lost for use both.

So currently i am more then a bit salty about D again. Its always something left or right that just does not work properly.

His response was Go simply works even if it was slower then D. I can state the same that despite Go its fault, it simply works, same with the editor support etc. And that is frankly bad advertisement for D.

Now excuse me as i prepare for a long trip. Maybe its better to simply pick up Go again, then keep hitting my head against the wall. As i started this long blog, love and hate relationship with D.

Reply via email to