Ask HN: How to Get Started with Julia?
Context: I'm a bioinformatician working primarily in Python. Most of the work is exploratory, and depends largely on Pandas & small functions for string manipulation. The vast python ecosystem doesn't really benefit me, and I've been curious about Julia for a while. Problem is, the resources I can find for learning Julia aren't really geared towards somebody like me. For all the talk about Julia being a general purpose language, a lot of the teaching material leans heavily towards mathematics. I've done like a course and a half on juliaacademy.com, and still not a word on string handling & manipulation - which makes up a big part of my work. The "Introduction to Computational Thinking" MIT course was quite nice, but was more maths than I could comfortably handle.
Is there a resource geared towards people like me, ideally something like https://pythonforbiologists.com (it's how I learnt python in the first place).
5 comments
[ 3.6 ms ] story [ 18.1 ms ] threadFor learning the language, I'd honestly say just check out the manual, it's really nice: https://docs.julialang.org/en/v1/
I'd also encourage you to check out the Julia Zulip https://julialang.zulipchat.com/# and Discourse as two great places to engage the julia community.
Both of these places have a lot of traffic from some of your fellow bio-informaticians as well as lots of other domain experts and are very welcoming of new language learners.
All the Julia guides I looked into were very heavy about in built mathematical operations, but didn't touch upon string operations. I'm sure I'll have to look up the documentation at some point anyway, but was wondering if there's a Julia guide for people like me.
I'd really urge you to come ask this on the julia Discourse Forum or Zulip and I promise you'll get high quality useful responses from people who understand your needs better than I.
> How do I find substrings & replace them efficiently? How do you split a string with delimiters? Regular Expressions?
This is something that the BioJulia people have put a lot of work into. Yes, you can use regular expressions, but they've managed to squeeze a lot of performance out of more specialized approaches, e.g.
https://github.com/BioJulia/Automa.jl
https://github.com/jakobnissen/ScanByte.jl
But for more straightforward usage, julia has the `findfirst` function which can search for occurrences of a substring, `replace` which can do replacements either with a literal pattern or a regex, and `split` which can split a string with delimiters.
Automa.jl & ScanByte.jl sound like a good fit for some of the future projects I have lined up. My current needs are fairly simple, and I can work with stuff like `findfirst` and `split`. It was more an issue that string handling wasn't covered in any of the Julia courses I did, geared as they were towards mathematics. DataFrames.jl would probably cover 80% of my other needs.
It's a bit out-of-date, but still useful.