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
I’ve seen more and more people get into Rust recently, so thought it would be cool to have a thread for people to share what they like ab...
New
New
New
First poster: bot
C++: The Good Parts . Jordan DeLong overviews the past, current and near future “good parts” of C++'s functional side through the colore...
New
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
First poster: bot
Welcome to RETRO, my personal take on the Forth language. This is a modern system primarily targetting desktop, mobile, and servers, th...
New
AstonJ
If you are experiencing Rails console using 100% CPU on your dev machine, then updating your development and test gems might fix the issu...
New
mafinar
I’ll be participating. This would be very interesting because I have been having coders block + a lot of distraction this weekend. But l...
New
mafinar
Hello! Advent of Year 2023 is upon us and like past few years, I’ll be opening threads discussing each year’s problems. Day 1 was today....
New

Other popular topics Top

AstonJ
If it’s a mechanical keyboard, which switches do you have? Would you recommend it? Why? What will your next keyboard be? Pics always w...
New
AstonJ
What chair do you have while working… and why? Is there a ‘best’ type of chair or working position for developers?
New
PragmaticBookshelf
Design and develop sophisticated 2D games that are as much fun to make as they are to play. From particle effects and pathfinding to soci...
New
AstonJ
Continuing the discussion from Thinking about learning Crystal, let’s discuss - I was wondering which languages don’t GC - maybe we can c...
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
PragmaticBookshelf
Rails 7 completely redefines what it means to produce fantastic user experiences and provides a way to achieve all the benefits of single...
New
AstonJ
If you get Can't find emacs in your PATH when trying to install Doom Emacs on your Mac you… just… need to install Emacs first! :lol: bre...
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New
AnfaengerAlex
Hello, I’m a beginner in Android development and I’m facing an issue with my project setup. In my build.gradle.kts file, I have the foll...
New
Margaret
Ask Me Anything with Mark Volkmann @mvolkmann On February 24 and 25, we are giving you a chance to ask questions of PragProg author M...
New