September 27, 2019
On Friday, 27 September 2019 at 14:31:14 UTC, Ola Fosheim Grøstad wrote:
>
> Octave is a  free implementation of Matlab that is quite capable, but it does not provide all the specialized matlab functions needed to achieve 100% compatibility.  So if that is an obstacle for Octave, then it probably is an obstacle for Julia as well.

Not the real deal. People always return to Matlab.

> Anyway, as long as Python is taking over in higher education then Python will remain the language of choice...  Since Julia is not suitable for CS students then Python most likely will keep that position.
>
> Btw, I think most people need a very compelling reason to switch to a new language.

Three compelling reasons: performance, performance and performance. :)

Seriously, there's a lot of great stuff out there, but it's written in Python and Matlab and thus often quite useless except as "proof of concept". This has been bugging me for years.
September 27, 2019
On Fri, 2019-09-27 at 14:24 +0000, Ola Fosheim Grøstad via Digitalmars-d wrote:
> 
[…]
> I feel this is an area where current languages will start to look dated as new languages appear that are designed alongside the tooling for the language.
> 
> Plain text is a rather crude representation.

Around 1986 people were shifting from using text editors to structure oriented editors of one form or another, where the stored representation of the code was some form of tree. Sadly the take up of these editors was drowned out by the clamour from programmers "you cannot take our text file representation of our code from us". So now we have IDE that spend vast amounts of CPU power dynamically recreating tree representations of the text files so as to provide all the programming language specific support.

I think I am going to chalk this one up to karma.

-- 
Russel.
===========================================
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk



September 27, 2019
On Fri, 2019-09-27 at 14:31 +0000, Ola Fosheim Grøstad via Digitalmars-d
wrote:
[…]
> 
> Anyway, as long as Python is taking over in higher education then Python will remain the language of choice...  Since Julia is not suitable for CS students then Python most likely will keep that position.
> 
[…]

At least in the UK, Python is the language of teaching programming to 10 to 16 year olds. Universities now have to cope with new undergraduates already knowing Python, and probably some Java.

UK universities are having to change their whole approach.

-- 
Russel.
===========================================
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk



September 27, 2019
On Friday, 27 September 2019 at 14:43:32 UTC, Chris wrote:
> Not the real deal. People always return to Matlab.

Probably, the problem is when you try to run models written by others and they use rarely used Matlab functions.

>> Btw, I think most people need a very compelling reason to switch to a new language.
>
> Three compelling reasons: performance, performance and performance. :)

Right, but it is likely to come in the form of kernels that compiles to OpenCL for numerics. So, new libraries that can run on the GPU, but is controlled from Python.

September 27, 2019
On Thursday, 26 September 2019 at 13:26:13 UTC, bachmeier wrote:
> On Thursday, 26 September 2019 at 06:14:24 UTC, Paulo Pinto wrote:
>
>> The language should be stabilized, GC improved (I know it has gotten much better), replace deprecated Phobos packages (XML, JSON, stream), focus on vi/Emacs/VSCode and maybe people will come and stay around.
>
> There's a chicken-and-egg problem, though. D doesn't have the type of community that languages like Rust, Go, or Python has. I remember in the 90s when Python was insignificant to the programming world, they had their community of true believers promoting the language and making it more usable. In 2005, when I made my move to R for my computing, I looked at Python and it had little to offer. They had a community that made a lot of stuff happen in a hurry, and they promoted the language well. It's not even a particularly good choice for scientific computing, yet it is now a giant in that area.
>
> D has its mailing list and a few people doing their own projects (I'm in that group) but not a lot of blog posts or podcasts or tutorials, and can't even put together documentation for Dub. You read the mailing list and about two out of every three posts is negative. Until some people step up to be leaders of the community, nothing else will matter as far as D adoption goes. For all the years I've been involved, it's always been people looking to Walter and Andrei to make things happen, and I haven't seen anything like that with any other language.

This is a newbie point of view.



The biggest problem to D adoption is this community IMHO. Almost everything here is negative. The community is 95% negative to the language. There are people here that never see anything good about D yet they are here. The community is damaging to D image.

It is a community that is out to destroy the language. All the hope of me using D has been almost destroyed.

Yet D prefers to kotlin, java, C#, etc. For me.

The leadership and most people in the community seem to be the opposite poles yet we want D to have great adoption.

Just open your google and search for D you will read so many negative things about the language. Come to the community, the story is the same.

This is the most negative community to its own language I have ever known of. The story has to change. This community greatly discourage me. It is my biggest problem using D.


I have personally come to believe that many people in this community is sponsor against the language.


Pls if you know you are no longer interest in D it will be better not to discourage others.


Also, the leadership should handle the difference between them any community member to prevent them from pouring their frustration here.





September 27, 2019
On Friday, 27 September 2019 at 14:51:31 UTC, Russel Winder wrote:
> At least in the UK, Python is the language of teaching programming to 10 to 16 year olds. Universities now have to cope with new undergraduates already knowing Python, and probably some Java.
>
> UK universities are having to change their whole approach.

Right. I believe Python will be introduced in public schools in Norway within the next decade or so.  A few years back University of Oslo chose Python as their introduction language for alle the science departments. Then the CS department introduce Java after Python.  In more advanced physics courses students may choose between Python and C++.

Anyway, several books, say introduction course books in physics, come in one edition for Matlab and another for Python.  Adding more editions for other languages across the board seems unlikely in the near future.

You probably will find some for Java and some for Julia, but not enough to cover all the courses for a bachelor.

As more and more courses use programming as "advanced calculators" and for simple didactic simulations we end up with a situation where they want a single language for all science topics. Preferably one that can be used interactively.

So Python seems to dominate as the tool of choice for "didactic programming".

September 27, 2019
On Friday, 27 September 2019 at 12:59:27 UTC, Chris wrote:
> [snip]
>
> That's good to hear. Would you care to tell us what exactly you're using D for? I'd imagine it's for some sort of stats / machine learning / AI stuff. Your experience might be valuable for others who are trying to get away from Matlab / Python, and, as bachmeier suggested, D might attract more "scrpiters". Let them know what to expect and what you can do with D + Mir etc.

TBH, my use is probably more at the hobby level rather than anything else. My day job supports more mainstream languages (C#, Matlab, Python, R, and some others I know are all supported) and operationally it would cause a lot of difficulties if I was the only person writing in a language (the whole, what happens if you get hit by a bus).

I've had a nice goal in the back of my mind to be able to do statistical analysis and portfolio optimization in D. I can do the optimization with DlangScience/nlopt, but this overlaps with my day job, so even if I do some work on this, I would need to get jump through work hoops before putting it online.

So I feel a little more comfortable working on D projects that relate to statistical analysis. Some simple projects I've thought about working on include adding ols function to lubeck that can print some pretty results and seeing if dpp can use GSL out of the box. It's just a matter of finding the time. Projects like mir and magpie are good infrastructure, but there's a lot of statistical libraries that aren't supported in D. One library that I have been making a lot of use of in R is rstan for Bayesian inference. I haven't gotten around to trying to use stan in D (I know it's possible). It would be possible for me to write something like pystan or matlabstan, but rstan is implemented a little differently and faster. So I have kept up my R usage to use that.
September 27, 2019
On Fri, Sep 27, 2019 at 03:11:26PM +0000, GreatSam4sure via Digitalmars-d wrote: [...]
> This is a newbie point of view.
> 
> The biggest problem to D adoption is this community IMHO. Almost everything here is negative. The community is 95% negative to the language. There are people here that never see anything good about D yet they are here. The community is damaging to D image.
[...]

I don't know what has happened here, and why the naysayers seem to be out in force here, but I want to say that I am very positive about D, and I'm pretty sure I'm not the only one.  I just haven't been posting as much because I'm occupied with other things.

But seriously, there is no language out there right now that I like better than D.  It's true that D has its flaws and dark corners -- no language of this complexity can possibly be perfect -- but the good stuff is REALLY good, and none of that is going away anytime soon.

OTOH, one of the reasons we are sometimes very critical about something in the language is because it's *so* good, and we have come to expect the best, so when we see something that still needs improvement, we tend to speak out. We criticize the not-so-good parts because we care. Or at least I do -- can't speak for anyone else.

And one thing I've learned over the years: don't waste time on the naysayers. Know what you want, and go for it. Let others waste their breath naysaying if that's what they want -- let it be their problem, not yours.


T

-- 
Любишь кататься - люби и саночки возить.
September 27, 2019
On Friday, 27 September 2019 at 14:48:39 UTC, Russel Winder wrote:
> I think I am going to chalk this one up to karma.

Well, I don't know.  It is easier to evolve UIs today, so I believe this will change, but it will take several iterations to get there.  But I guess a new paradigm for evolving software is needed, an approach that is more iterative and REPL oriented perhaps.

Nobody would want to design electronics using only a text editor... they have capable visual tooling. But they started out with a visual representation on paper so it was a translation from paper, that probably made adoption easier.



September 27, 2019
On Fri, 2019-09-27 at 15:16 +0000, Ola Fosheim Grøstad via Digitalmars-d wrote:
> 
[…]
> Right. I believe Python will be introduced in public schools in Norway within the next decade or so.  A few years back University of Oslo chose Python as their introduction language for alle the science departments. Then the CS department introduce Java after Python.  In more advanced physics courses students may choose between Python and C++.

Subjects such as biology and physics and all the various variations are for the moment settling on C++ for computational stuff and Python for coordination, visualisation, and data rendering. As example astropy for most of astronomy. It isn't that Python/C++ is the best choice per se, it is that libraries got developed using the Python/C++ combination, and that people working in the fields are introduced to these libraries as the de facto standard for their subject. I cannot see  Nim, D, Chapel, etc. even denting this traction of Python and C++, though at least Nim looks derivative of Python.

Something similar is happening in data science, machine learning, and artificial intelligence: Python has become the de facto standard because someone chose to write all the libraries people needed in Python, NumPy, or C++.

> Anyway, several books, say introduction course books in physics, come in one edition for Matlab and another for Python.  Adding more editions for other languages across the board seems unlikely in the near future.

The use of Matlab was set because universities were given free licences, I suspect as a loss leader to ensure people knew Matlab and expected to use it when they moved to the world of work. However, over the 2007 to 2015 period it was clear Matlab were charging too much and that Python was the obvious place to move to. I ran many workshops over 2010 to 2015 retraining Matlab programmers as Python programmers. Actually they were electrical engineers not programmers who just wanted to solve problems. Matlab had the tools, but was too expensive, they discovered Python also had the tools, and so they switched.

I suspect there is beginning to be back pressure from the world of work to universities against Matlab and for Python, but this is speculation on my part.

> You probably will find some for Java and some for Julia, but not enough to cover all the courses for a bachelor.
> 
> As more and more courses use programming as "advanced calculators" and for simple didactic simulations we end up with a situation where they want a single language for all science topics. Preferably one that can be used interactively.

Having been an integral part of the late 1990s push for Java everywhere in university to make teaching easier, it was a very big mistake. The late 1980s, early 1990s situation of using two or three different programming languages for the core university curriculum made for much better programmers. So Python for everything in universities is a very bad idea as well, at least for CS students – electrical engineering, biology, and physics students are in a different boat.

> So Python seems to dominate as the tool of choice for "didactic programming".
> 
-- 
Russel.
===========================================
Dr Russel Winder      t: +44 20 7585 2200
41 Buckmaster Road    m: +44 7770 465 077
London SW11 1EN, UK   w: www.russel.org.uk