# Julia for prototyping, compared to MATLAB?

**URL:** <https://discourse.julialang.org/t/julia-for-prototyping-compared-to-matlab/33900>\
**Category:** General Usage\
**Tags:** matlab\
**Created:** [January 28, 2020, 6:40pm UTC](https://discourse.julialang.org/t/julia-for-prototyping-compared-to-matlab/33900 "2020-01-28T18:40:44Z")\
**Posts on this page:** 1\
**Showing post:** 71

<div class="post-metadata">

**Author:** ![tk3369](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tk3369/32/2824_2.png) [@tk3369](https://discourse.julialang.org/u/tk3369)\
**Post date:** [May 28, 2020, 5:03am UTC](https://discourse.julialang.org/t/julia-for-prototyping-compared-to-matlab/33900/71 "2020-05-28T05:03:47Z")

</div>

Hey @ElectronicTeaCup, thanks for the tag.

Unfortunately, I am not a Matlab user and I can’t quite feel the pain that everyone else went through. On the other hand, I am always amazed that many people in this community can write very good code even without any computer science background.

I cannot say whether it works for everyone but I can definitely share how I learned Julia:

1. Get on the REPL often and do small experiments
2. Learn to use development/productivity tools e.g. VSCode, Revise, etc.
3. Build a package and register it. It can be a [small thing](https://github.com/tk3369/NPFinancial.jl) and that’s ok.
4. Write unit tests and enable CI checks e.g. Travis, codecov, etc.
5. Read other people’s code e.g. there are some real good ones from [Invenia](https://github.com/invenia?q=&type=source&language=julia).
6. Ask a lot of questions. There are no dumb questions. Sometimes your question leads to [very interesting discussions](https://discourse.julialang.org/t/function-name-conflict-adl-function-merging/10335/1).
7. Write [a blog post](https://ahsmart.com/pub/giving_up_julia_update.html) about what I learned.
8. Try to help others out in public channels/forums (and be surprised when someone else comes up with a better answer.)
9. Have some fun playing online contests e.g. [advent of code](https://ahsmart.com/pub/advent_of_code_2018_fun_stuffs.html), [CTF](https://ahsmart.com/pub/hacking_aes_ecb_mode_cipher.html)’s.
10. Try to follow conversations on Slack, Discourse, etc. for topics that I don’t understand or familiar with.

Let me tell you my favorite story. While reading some string manipulation code in Base during my 2nd month of learning Julia, I came across a bug in `rstrip` and I reported it [here](https://discourse.julialang.org/t/rstrip-minor-bug/8263). It led to a constructive [motivational reply for making a PR](https://discourse.julialang.org/t/rstrip-minor-bug/8263/2). The thread went on about what the correct fix should be. Eventually, I got excited and submitted a [two-line fix](https://github.com/JuliaLang/julia/pull/25505). It feels good to contribute to Base 🙂 If I can do it, you can do it, too.

Hope it helps.

Tom

---

_[View the full topic](https://discourse.julialang.org/t/julia-for-prototyping-compared-to-matlab/33900)._
