Hi guys I do have this problem while learning and I need an advice from y'all...take python it was created with c if I'm correct, and it has alot of applications very good language, but I do think y shd I learn python why not C ,, even using React I feel like Facebook developed it y can't I learn from the source directly?.jst confused 🤔

  • 6

  • 3
    Let me tell you one thing i got this advice from a video lectures. When you work/learn on a technology/language forget about it's base. This is not you have to work on because it is already taken care of. Always work on abstract layer.
  • 5
    With that logic, just flip a switch on and off till you get to "Hello World".
  • 1
    there was this line i have since lost

    guy said "there is more unix in 1 line of bash than 10000 lines of C"

    which is very true

    but at the same time, i feel like a lot of ppl do not grasp memory or low level operations and could benefit from understanding C or ASM
  • 1
    Learn by habit would be my advice.

    Sure you could try to learn by staring at sources... But imho the learning approach is steep, most likely frustrating and you will soon forget everything...

    Learn by doing what you do regularly, you will remember it better.

    Sometimes even subconsciously.

    I sometimes don't know why I make a decision, till the brain makes click after 5 mins of googling saying: hey I found this memory of don't know how long ago, it has spider webs on it, let's open it. Ah there is the reason why.

    Imho these situations are for what one should strive in learning - not trying to remember everything, but rather repeat learning till it's okay to forget because the experience is stuck somewhere in the brain and will come back when needed.
  • 2
    With that reasoning, the first C compiler was written in assembly, why not learn assembly?

    And the answer is that higher level languages offer more help letting you focus on what is most important for you.

    If you do not need the detailed memory control and option to go low level you get more for free with python.

    Python is especially popular in AI, not because the AI code is written in python but because all the heavy lifting is optimized and the python code is used for setup and control.

    Choose the language you think best suits the type of programs you are going to write.

    If it an operating system or game engine or similar, C is definitely a candidate.

    Is it a web backend, don’t use C ;)

    And for react, yes it was created by facebook. C was created at Bell labs, they do not exist any more, would that disqualify C since you cannot learn it from the source ;)

    Choose the language and tool that best fits the problem, and in best fits, your knowledge and ability to learn it should be factored in

    Knowing multiple languages help but in the beginning its usually better to start of with one or two and learn the basics well.
  • 6
    I think before learning any other language you should, well, learn English.
  • 3
    There are 2 ways to choose a programming language:

    1. learn whichever language tickles you the right way in the right places. I.e. pick whichever you like the most. Or the least. Or you think is the coolest. Doesn't matter.

    2. Open up the job ads site and see which languages are in high demand / best paid. This way you'll know which programming language will be the easiest to find a job with... or the best-paid job.
  • 1
    photoshop was also made in C/C++

    according to your "logic" why not use C/C++ instead of photoshop, then?
  • 4
    Honestly just do what is fun for you.

    I went through it as well. Im just that sort of person that needs to rebuild a wheel at least once to feel comfortable with working with other peoples wheels.

    By all means, learn C and then also learn Python, and JavaScript and TypeScript. Just as long as the learning is interesting and fun for you, you will learn efficiently and you will end using the high level abstractions with better understanding of what's going on under the hood.

    This approach isn't for everyone, but it is a lot of fun if you're that kind of a person
  • 0
    @Hazarth thanks 👍
  • 0
  • 0
  • 0
  • 0
  • 2
    @Hazarth so true :), I also tend to reinvent things, partly to as you said, understand it enough to use others, but often also because I find many existing components lacking things I want/need.
  • 0
    Why you can't? Yes, you can learn the base. Maybe you should ask yourself: why shouldn't I? The answer is because that's how technology works. That's what advanced technology means: layers over layers...
Add Comment