Is Julia a language, that can be described to be suitable as a first programming language?
I think it has the potential to be that. Tim Holy thinks so as well.
As somebody, who is highly interested into programming for quite some time now, did I read, watch, listen, and study coding for years.
I always wanted to ‘do it right’ and understand the implications around coding itself, previous to actually settling down on something.
Early on, I understood that functional programming is underutilized.
The reason number one that most established programmers had for refusing it, was that they are already used to imperative and object-oriented programming.
So I looked for a functional language that is suitable for beginners.
I think I found it in Julia.
Particularly the type of system, multiple dispatch, and the overall practical, and scientific approach to programming endorsed by the people using it, appeals to me.
Programming languages like Python, Ruby, and Rust are well known for their very welcoming nature, and they have built up a reputation of introducing people into programming, and I think their high degree of success goes largely down to this factor.
Programming newbies have one huge advantage for communities, they are much easier to be convinced, and they don’t have to pay the costs of switching.
Sadly, and I say this with the experience of trying to join several communities of functional languages, is this benefit largely not seen, and often deliberately ignored.
The value, that lies within newbie friendliness, is often brushed away, with an attitude that suggests that the investments that have to be made into developing a culture that is open and receptive to newcomers, is seen as ‘too high’ and unprofitable.
People, who are already programming in their current language for 10 years, are used to the tools, the compiler, the ecosystem and the community.
Switching has a real cost attached to it, and newbies just join the ranks of those communities, who welcome them.
So now, here comes my question:
Is there a real, serious and honest interest in the community, to turn Julia into a newbie friendly language, like Python?
I think this is a low-hanging fruit.
And the changes to be made, in order to be truly open to newcomers, are small, and meaningful.
The language is, as of now, suitable to newbies coming from chemistry, physics and mathematics.
I think that limits the amount of people potentially joining our community, since this scientific setup still provides certain benefits, that people outside the university do not have.
Like a professor, that explains to them everything in person
I think the reality can show, that new programmers can be indeed one of the most profitable investments into the ecosystem:
For the reason, that switching to another ecosystem has costs attached.
And Julia gives little reason, to do so anyway