当前位置:网站首页>Why is Julia so popular?

Why is Julia so popular?

2022-06-12 04:45:00 Big craft

author | Julia Community

compile | Zhang Jie

Coordinating editor | Du min

stay 2009 year , Some advanced users with rich programming experience are dissatisfied with the existing scientific computing programming tools , High performance products are required for tasks such as scientific and numerical computing , So some researchers started Julia The study of .Julia with C The speed of language , Than Python Simpler code , Some features of other programming languages have also been added .

Julia Conceived as a free computer programming language , It is fast and can be used at a high level .2012 year ,Julia The language made its debut to the public , Since then, it has gradually become one of the most popular programming languages in the world , Later, it was released in succession Julia A series of versions of :

  • 2013 year 11 month , Release v0.2.0 edition
  • 2015 year 10 month , Release v0.4.0 edition
  • 2017 year 6 month , Release v0.6.0 edition
  • 2018 year 8 month , Release v1.0.0 edition
  • 2021 year , Release v1.6.0 Version and v1.7.0 edition

2022 year ,Julia Ushered in their tenth anniversary , Its official blog posts celebrate Julia At the same time of the tenth anniversary , I also brought an article named 《 Why do we create Julia》 The article , Shared with us the journey of the past ten years . In ten years , From personalized medicine to climate modeling 、 New materials and even space mission planning ,Julia Changed a lot of people 、 A lot of things . below , It's some Julia Stories of community members , Review the past together 10 year .

1. Curiosity drives , Find out Julia Of “ mathematics ” The beauty of the

  • Jose Storopoli (@storopoli)

Trying to use R When doing data conversion in language, I came across Julia, Because this conversion takes a long time , All at once Julia Fascinated ! Its syntax is so simple , And it also has a kind of " mathematics " The feeling of . You can use all ϵ and δ, And what statisticians like best α and β. From then on , I have become Julia Ecosystem contributors .

This community is very good , Very popular . I made many great friends here , And Rik Huijzer and Lazaro Alonso Co wrote a free Julia Data science book . The book was translated into Portuguese and Chinese by volunteers , I am grateful and ashamed of this . since 10 Since it first appeared years ago ,Julia Is striding forward . I am very excited about its future , I am honored to be one of them .

  • Simeon Schaub (@simeonschaub)

stay 2018 I found out by accident in Julia. What attracted me to this new language , It's just curiosity . In the previous door Python Data analysis course , I have also used a lot of languages , So I just want to know what makes it different . I have never contributed to open source before , but Julia The community seems a little special , It can quickly attract people from answering Discourse and Slack To really contribute to different projects and bases . So it didn't take long , I developed a small package myself , Used for things needed in class , Finally, I made the first one to the base PR.

I'm learning Julia In the process of , I soon found myself learning a lot about compilers . Because I want a new one Julia grammar , So I have to learn a little by the way Lisp, Eventually I found myself working in computing science at MIT , As with many others Julia Passionate people work together on exciting new applications .

2. Not content with Python, Attracted by highly productive language

  • Rik Huijzer (@rikhuijzer)

In the master's thesis , use Python Did some machine learning , But I have been troubled by the code base . They seem to be more complicated than expected , Especially in testing , I always think that class is the cause of this situation . therefore , Writing Python Code without using classes , But this makes the reader feel very uncomfortable . Fortunately, , I saw in some blog posts Julia Language , All the problems have been solved .Julia There is no class ! from 2019 One day in the year , No longer touch other languages .

  • Jeremie Desgagne-Bouchard (@jeremiedb)

First heard Julia Is in 2017 About years ago . At that time, we mainly used Python, However, it is not a satisfactory language . then ,Julia There is , It shows for the first time as Rcpp The potential of alternatives . This is Julia The promise of opens the door , It is a highly productive language with compiler performance .

At the beginning of an investment company ,Julia It becomes the core of our Modeling Toolbox , We use a lightweight code base to enhance its functionality , And pass ChainRules To implement a new gradient based approach . Leverage its expanding software package ecosystem ( Such as Genie),Julia Become the key to infrastructure , From new algorithm development to accounting system 、 Data monitoring and customer-oriented visualization .

  • Julius Krumbiegel (@jkrumbiegel)

For the first time Julia Is in 2017 During my master's degree in neuroscience in Berlin . On duty in the laboratory , Trying to convince people to give up MATLAB, change to the use of sth. Python. On one occasion , A colleague joked :" Not all those cool kids use it anyway Julia instead of Python Do you ?". I was surprised , It's embarrassing , Because I have never heard of this language , I found it on the Internet " Why do we create Julia " 's post . After reading , I will immediately create Julia The contact of people , Because they share many of my values . From that moment on , I was deeply attracted , And in his spare time to Julia A lot of exploration .

  • Kristoffer Carlsson (@KristofferC/)

Like many people , I'm looking for Python A substitute for Julia Of , because Python Your code doesn't achieve the performance I need . at that moment , I don't have much coding experience , And I haven't really contributed to any open source projects . Before I started for Julia After making some small contributions , It is upgraded , Now? , Five years have passed , I have been in the package manager 、 The debugger 、 Sparse linear algebra 、SIMD、 Manage releases and work in a variety of different projects , by Julia Making contributions is part of my daily work .

So for me , Find out Julia It has had a great impact on my life , And the exciting thing is , I think things have just begun , Because every one of them Julia There are a lot of new awesome things in both versions , I can only imagine Julia some time 10 The appearance of the year .

3. I didn't take it seriously at first Julia, Later, the trial has brought a Xintiandi

  • Gabriel Baraldi (@gbaraldi)

First time to see Julia It is in an article about S4TF And differential programming . This article mentions a kind of called Julia Language , And say it looks like Python, It runs like C, Attracted by these similarities . Like many people here , I use Python Wrote prototype code , Or try to make it performance , Or just use it. C++ rewrite .

Put it on hold for a while , But when Grant When it comes to it , I decided it was time to really try it on a project , While doing this project , I fell in love with the language , Along with the language comes the community . Now I use it every day , I hope it can also help many people to use it .

  • Michael F. Herbst (@mfherbst)

Like many others , When in 2016 I first heard about Julia when , I didn't take it seriously at first . After receiving some warm comments from different people , I am curious about 2018 I tried it in , He began Julia The journey . In a scientific position , I am fortunate to be able to use... Full time Julia, And developed DFTK( Density function toolkit ). We are DFTK The goal on is to create a code base , To promote simulation scientists 、 A collaboration between mathematicians and computer scientists in the simulation of electronic structures .

So ,Julia Proved to be the right choice , Because it provides the flexibility and readability needed to develop new models or algorithms , And the low-level access required to tune performance . thus ,Julia It has become an important part of this research field . I am grateful to everyone who has joined this community , Thank everyone for Julia People who contribute .

  • Ronny Bergmann (@kellertuer)

During my doctorate , Learned several programming languages . For the first time Julia Is in 2014 Years or 2015 year , But I didn't use it . stay 2016 year , Always be MATLAB Medium 2 Language barriers and object-oriented coding styles . So I decided to try Julia Whether there will be better results .

from the beginning , I was impressed by this constructive and helpful community , And finally established Manopt.jl. And what really surprised me was , When announcing this package , The first feedback led to the birth of the second package , This package has two common developers , Now its code base is much larger than my first package . Code style and speed, as well as the community, are what I think of using Julia Is my best choice in digital and code development .

4. Colleagues recommend Julia, And get caught up in it. —— from “ question ” To “ Try ”, Find out Julia“ It's delicious ” The laws of

  • Micah Halter (@mehalter)

As early as 2016 About years ago , A colleague from the research laboratory introduced me to Julia, And spent a lot of time to understand the language , But it's not going to Julia For any project or daily use . Fast forward to 2018 year , The lab started a new research project , Explore meta modeling issues , Such as model composition and model exploration .

With Julia Official release V1.0 edition , And its support for metaprogramming and multiple scheduling , There really is no other language that can easily support the work in progress . After many different meta modeling methods and several rewrites , We can start AlgebraicJulia, And combine scientific modeling with the composition of category theory . Whenever a new function is added to the software , utilize Julia Metaprogramming function of , Will reiterate the use of... In this project Julia Decision .

  • Peter Cheng (@chengchingwen)

For the first time Julia(v0.5/v0.6) Is in 2017 year , I was a sophomore at that time . Me and Iblis Lin It's from the same club , He introduced the language to me . By the design of this language 、 The use and solution of multiple scheduling 2 Attracted by the ambition of language problems . So I started reading the document , And gradually migrate some code to Julia in , Now almost everything is written in it . See the development of a language , And getting better and better , It's amazing .

  • Arturo Erdely (@aerdely)

stay 2018 year , Puzzled by the performance of the simulation study . a Python Experts try to help me , But in this programming language , The slow performance is similar . When you want to learn C The pain of language , My colleague asked me Julia Is quite promising , So I started reading about it , And focus on Julia page . Last , Decided to jump into Julia, Not to try it , But I have to transfer all my work to Julia On . from 2019 Year begins , All the codes are in Julia Done in . I really like this language .

  • Jakob Nissen (@jakobnissen)

As early as 2017 year , You need to write code for the doctoral program . I tried Numba、Cython And concentrate on research Numpy theory , But none of them is satisfactory . Then I realized , For performance sensitive calculations , There can be no Python Things like programmers . It can be used Python Your coat package code , But I have to use C Language writes all the hard things . One for theoretical physics Julia My friend told me , These setbacks are common in scientific computing , And have a name :" Two language problems ". What is more wonderful is that , It has a solution :Julia.

Like most people , Initial pair Julia Be skeptical , And resist using Julia To write code . When I'm right Julia When there is dissatisfaction , I will be curious and try to improve it . After a few months , my Julia Code performance is undeniable . As many people have experienced , Study Julia To some extent, it is a landslide , Before I realize this , I learned to CI, Good testing practice , And low-level computing .2020 year , I changed my work code to Julia, Never looked back .

5. Be attracted to and study blogs about high-level languages —— The best decision !

  • Mon Danisch (@SimonDanisch)

2012 year , In the public / Used in Audi internship C++ The language performs some image and sensor processing , Everything is difficult , So I began to look for another language to solve .Python It looks good , But it is not a real choice , Because I like projects that need high performance , Like ray tracing 、3D Rendering 、ML And image processing . Then I began to design a small toy language , It has good metaprogramming support ,C and GPU interoperability , No overhead , Don't use OOP, Make mathematical code easier to extend , It's easier to write .

Half a year later , A friend forwarded " Why do we create Julia " 's blog post . I'm super excited , Because it meets any function that toy language should provide . I started using it Julia Write my undergraduate thesis and all other projects , This is the best programming decision I have ever made .

  • Tim Besard (@maleadt)

Through the experiment LLVM I started my doctoral career with a bunch of languages based on it . At that time ,Hacker News A new and interesting language has been announced in an article in :Julia, It is both a high-level language , Again for LLVM Of ! So obviously , This language needs to be included in my research .

therefore , Start to Julia To develop a GPU Back end , It hasn't stopped since . In the past , Must let Julia Support our GPU Trickery is quite difficult , But now the language is more and more extensible , So we should aim at the future 10 Years of computer hardware development .

  • Jacob Quinn (@quinnj)

Ten years ago , I like to follow the latest version of any technology field , At the same time, study hard SQL And enough R Language , In order to do data analysis in the work . Remember I was making a R Script , Need to be in 3300 Ten thousand rows of data , need 18 Hours to run . It's right here 18 Hours of operation , I saw the Julia 's blog post , And immediately doubted the simple performance it promised .

I read the original manual in one weekend , I rewritten my script the next Monday morning , It turns out that 5 It runs in minutes . I thought I must have made some mistake of early termination , But no , It's really that fast . From then on , You know I need to read the data directly into Julia, So we started two Julia The work of the software package . I have never had a computer science class , Not a developer , So I think I was the first to pass Julia People who learn programming .

Than Julia More exciting in itself is its open source community . It makes sense to find even the smallest contribution , Especially compared with other challenges . I quickly focused on arrays ( for example , Only three lines of code to achieve a fast custom array ), Later, he followed us to 1.0 advance , The broadcast started again . I am honored to be a part of this community , I am very proud of what we have built together .

6. because Julia I am fascinated by the speed of Julia—— It's really fast !

  • Tyler Thomas (@tylerjthomas9)

For the first time Julia Is in V1.4 When it was released . The early popularity gave me some extra time to actually explore this new language , I've been hearing wonderful things about it . I was just beginning to study my thesis , Prefer to use a language rather than in Python and C++/Rust The idea of switching between ( At that time I had not decided which one to use ).

At first , The most interesting thing about this language is its speed . However , I soon fell in love with language design , From then on , It became my main language . By following up on  Julia Discourse  Forum , And the use of Slack and  Zulip And other collaboration tools , I have learned a lot about the internal operation of language , At the same time, I am full of passion for this language .

  • Ricardo Rosa (@rmsrosa)

I was attracted by a student Julia Of , stay 2020 year . I was giving lectures to several groups of students , because Covid-19 The pandemic led to the closure of normal courses . Because use Python, The code is quite slow , So try to optimize the code , A student brought Julia Version code , Amazing speed . Then I learned about the differential equation ecosystem 、Flux、JuMP and SciML, Decide to enter the system .

Shortly thereafter , stay Humans of Julia Discord With the help of a kind person in the server , I use Julia Did 《 Code comes 2020》. Learned something about multiple scheduling 、 Knowledge of metaprogramming and performance tips . I'm fascinated by . in fact , Most of the code is written in Julia It was written by itself , This allows you to learn a lot about many aspects of the code .

Link to the original text :Why We Use Julia, 10 Years Later

原网站

版权声明
本文为[Big craft]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/03/202203010625434489.html