almokhtar

almokhtar

Learning two different programming languages same time?

Howdy, folks i have this question about it is ok to learn two different programming languages same time, well my story is i joined a company that they work with ruby last year just started learning and working with it same time and really like it after been working with php for a really long time, and now while am still learning new stuff about ruby the company asked me to learn elixir and i feel like i don’t really know much about ruby to switch to a completely to Functional language that i had no idea about this paradigm FP.
any idea what should i do ?

Most Liked

AstonJ

AstonJ

If you already know PHP then it will be easier to pick up Ruby first, and when you know Ruby it may be easier to get into Elixir as Elixir’s syntax was in part inspired by Ruby :003:

For FP, reading some of the Elixir books will help, like @ulissesalmeida’s Learn Functional Programming with Elixir Book Portal | Devtalk :023:

Here’s my review of it on EF:

dewetblomerus

dewetblomerus

I want to acknowledge your discomfort and hope that they are being sensitive to how much time this is going to take you, while also pointing out that this is a good problem to have. You are being paid to learn things while most people have to pay to learn things.

Here is what I think you can ignore in the beginning:

  • Genservers
  • Concurrency
  • ETS
  • OTP
  • Recursive Functions

These things are all super powerful and you will be very well served by learning them eventually, but you can get away with making your initial progress without them.

Here are some of the initial concepts that you will need to learn right away, I am assuming you are doing web development with Phoenix:

  • Read all the errors carefully, with the attitude that (I am going to be great at understanding these) understanding those in any language is a huge help.
  • How to create a Module
  • How to create named functions
  • How to create anonymous functions
  • How you call named functions, always on the module, you don’t do "almokhtar".upcase but instead String.upcase("almokhtar"). It is as if everything is a class method.
  • How to use the List, Map, String and Enum modules.
  • Pattern match on function heads instead of using if statements (just go with me on this, if you ignore this and write your code with if statements you will be confused the moment you try to read someone else’s code).
  • Phoenix, if this is what they are wanting you to actually get done.
jss

jss

Working with different applications (fixing bugs and adding features), I have no choice but to learn different things at the same time :frowning:

Where Next?

Popular Backend topics Top

AstonJ
Or which features of current frameworks you use you feel you couldn’t live without?
New
New
New
finner
Just wondering how many devs out there are using Spring Reactive, specifically WebFlux?
New
Jsdr3398
I’ve recently become interested in Elixir and all it’s neat perks. And since I’m currently working on a messaging platform; elixir seems ...
New
Jsdr3398
I love how elixir works and some of its perks, but I’m still pretty uncomfortable, especially when mix/hex gets involved. Did anyone els...
New
AstonJ
In case anyone else is wondering why Ruby 3 doesn’t show when you do asdf list-all ruby :man_facepalming: do this first: asdf plugin-upd...
New
mafinar
So I was thinking of trying out Crystal, I had tried it multiple times but left it midway. Now that there’s a book on it and it’s version...
New
mafinar
I wrote a blog post! On F#. I usually don’t write things but figured i should try it out, also experimenting with F# and C# lately, love ...
New
apoorv-2204
I’m experimenting with Hexagonal / Clean Architecture in Elixir. The classic Behaviour + Impl split works great for mocking and isolating...
New

Other popular topics Top

ohm
Which, if any, games do you play? On what platform? I just bought (and completed) Minecraft Dungeons for my Nintendo Switch. Other than ...
New
DevotionGeo
I know that -t flag is used along with -i flag for getting an interactive shell. But I cannot digest what the man page for docker run com...
New
AstonJ
You might be thinking we should just ask who’s not using VSCode :joy: however there are some new additions in the space that might give V...
New
AstonJ
I’ve been hearing quite a lot of comments relating to the sound of a keyboard, with one of the most desirable of these called ‘thock’, he...
New
AstonJ
In case anyone else is wondering why Ruby 3 doesn’t show when you do asdf list-all ruby :man_facepalming: do this first: asdf plugin-upd...
New
Exadra37
Oh just spent so much time on this to discover now that RancherOS is in end of life but Rancher is refusing to mark the Github repo as su...
New
mafinar
This is going to be a long an frequently posted thread. While talking to a friend of mine who has taken data structure and algorithm cou...
New
DevotionGeo
I have always used antique keyboards like Cherry MX 1800 or Cherry MX 8100 and almost always have modified the switches in some way, like...
New
New
AstonJ
This is cool! DEEPSEEK-V3 ON M4 MAC: BLAZING FAST INFERENCE ON APPLE SILICON We just witnessed something incredible: the largest open-s...
New