29

Don't start teaching them in a language with a lot of overhead (Java). They spend too much time memorizing the class/method stuff before they even get there. Use python instead.

Comments
  • 2
    @irene Correct. One should first learn about arrays and linked lists in C before moving on to their abstractions in other languages, like Lists in Python.
  • 0
    Studying low-level language will make you less "depressed" when you move to high-level language.
  • 3
    Is this a repost or everyone love Python?
    If you learnt Java, you should able to pick up C#, C++, Python, Clojure, Typescript, JavaScript, Ruby quite easily.
    Java can build Android app, backend server, works with min configurations. What's wrong with it?
  • 1
    @sunfishcc the way it is thaught. Of course you can make an android app. But will you understand where you ran out of memory or lowlevel shit like that?
  • 0
    @irene I started with C++ and OOPS at high school, but it was actually just "C with Classes"(only later I found about the true extent of C++).
    It continued in graduation, where we were also taught Java in 5th semester. It seemed quite complicated (so much to do for a print operation).
    Then in first semester of post-graduation, we were introduced to Python, and I loved it.
    Found it really simple and intuitive.
  • 4
    Are you kidding? Teaching kids python as a first language is a terrible idea. These people are going to hit a brick wall when they have to learn how things actually work underneath. C, C++, or Java are much better intro languages for people who want to know what is actually happening
  • 0
    I would say, teach them algo and how to choose language for the problem they have! I'm fed up with people don't language bashing, know the fucking thing and know when to use what!
  • 3
    @sunfishcc
    > Java can build Android app
    it sure can but I learned Java myself and I love it but the Android stuff is like here is a ton of tools you have never seen in your life, now go figure it out - it is just not intuitive to get a hang of when starting, I tend to learn stuff by looking at example projects but I could not get my head wrapped around it and it took me like 3 months to make sense of the outdated tutorials, documentation and examples and the ever-changing Android API... True once I figured what stuff still works in the current version it was easy learning new things but maaaan the learning curve was steep like a wall at first
  • 1
    @daintycode Android and iOS both have sandbox like memory management. I know asynchronous task, but don't think you can detectly free memory in Java neither. After tested on several projects using React Native Flatlist to render huge long data. It's definitely way easier than delevoping on Java or Swift
  • 1
    @sunfishcc thats not the point.^^
    Nobody said java is bad. It's just not a very good language to start with.
    It's about the comparsion of java to e.g. c.
    In java you have to learn more concepts and quirks and you have to have a bit of knowledge about this sandbox/vm stuff to be a decent developer able to help themself in a responsible amount of time.

    Starting with java is like starting on how to word sentences before even learning the alphabet.
Add Comment