Python VS Julia
Tags: julialang, python, beginners, todayilearned
Published: 2022-05-12 02:53:02

### Table of Contents <a name="TOC">
1. [Python](#python)
2. [Julia](#julia)
3. [Python vs Julia](#python-vs-julia)
4. [Helpful Links](#helpful-links)


### [Python](https://www.python.org/)
Basic information:

- A high-level intrepreted programming language that makes use of garbage collection and is dynamically typed
- Designed by Guido van Rossum in 1991
- High readability
- Dynamically Typed Language
- Free and Open Source with a Python Software Foundation License
- Option to use as a scripting language
- around 137k libraries
- GUI Programming Support
- Interpreted Language
- Extensible & Portable Language

[Python](https://www.python.org/)'s versatility derives from the vast amount of external libraries developed by its extensive community of developers. In Data Science, Python relies on many of those libraries to handle mathematical and scientific functions. NumPy, TensorFlow, PyTorch, Pandas, and Maplotlib are some of the most commonly used.


[Back to TOC](#TOC)

### [Julia](https://julialang.org/)

![julia](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gr8et919yd24r4zoc4qy.png)
 
Basic information:

- A multi-paradigm, primarily functional programming language that was created for machine learning and statistical programming
- Created by Jeff Bezanson, Stefan Karpinski, Viral B. Shah, and Alan Edelman in 2012
- Supports encoding via Unicode, UTF-8, etc.
- Interoperability with other programming languages like C, Python, etc
- The goal was to take all the strengths of languages such as R, C, MATLAB, Python, and Ruby while eliminating their drawbacks in machine learning, data mining, linear algebra, parallel computing, etc.
- a lot of programmers have never heard of it
- The data science community has definitely developed a keen interest in Julia
- around 4k libraries

![julia chart](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zekyweivcongzlgccpn6.png)

[Julia](https://julialang.org/) is a dynamic, high-level, high-performance programming language, specifically created for technical computing, with a similar syntax to Python. It is mostly used in Machine Learning, Data Science, data mining, numerical analysis, and any mathematical purpose since linear algebra is a core function of this language.

{% embed https://youtu.be/qGW0GT1rCvs %}


[Back to TOC](#TOC)

### [Python](https://www.python.org/) vs [Julia](https://julialang.org/)
![python vs julia](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ya7i9h9ghqh0bqceb9k7.png) 

#### Which is best to learn first?

### What do they have in common?
- known for being relatively easy to learn, even for those who do not have previous programming experience
- are interactive
- has a straightforward syntax
- 

### What are their advantages?

![python vs julia](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/z8zsxvk8lw737jurzwik.png)
 

Advantages of [Python](https://www.python.org/):

- well-known in the tech community
- object-oriented programming
- has millions of users = countless of well-crafted tutorials
- significantly more versatle than Julia
- uses zero-based array indexing
- has far more third-party packages
- is getting faster
- strong machine learning libraries
- less startup overhead
- more job opportunities

Advantages of [Julia](https://julialang.org/):

- has a math-friendly syntax
- supports metaprogramming
- is compiled, not interpreted
- is developing its own native machine learning libraries
- set methods equal to expressions
- offers superior parallelism
- specifically designed with machine learning and data analytics in mind
- just as fast as C
- can work directly with external libraries
- has automatic memory management
- joined the [Pataflop Club](https://www.hpcwire.com/off-the-wire/julia-joins-petaflop-club/)

[Back to TOC](#TOC)

### Helpful Links
- [Introduction to Julian Programming Language](https://www.youtube.com/watch?v=Bxp1YFA6M4s)
- [A summer of Code with Julia](https://www.youtube.com/watch?v=8lSB666bigw)
- [Programming for Science - the Julia Language](https://www.youtube.com/watch?v=grEjpGLiHWE)
- [Basics of Julia Programming Language for Data Scientists](https://analyticsindiamag.com/basics-of-julia-programming-language-for-data-scientists/)
- [5 aw4esome things to love about the Julia Language](https://towardsdatascience.com/5-awesome-things-to-love-about-the-julia-language-688d7c403474)
- [How to Become a Full Stack Python Developer in Just 1 Month](https://www.analyticsinsight.net/how-to-become-a-full-stack-python-developer-in-just-1-month/)
- [Why Adding Python to Your Portfolio will Help You Land a Good Job](https://www.analyticsinsight.net/why-adding-python-to-your-portfolio-will-help-you-land-a-good-job/)
- [How to Use JSON in Python](https://thenewstack.io/python-for-beginners-how-to-use-json-in-python/)

[Back to TOC](#TOC)