39
st4mpik
3y

Am I the only one who is triggered by seeing all of the stupid articles claiming Java is bad introduction language? Just becuase Standford decided to change it to JavaScript? What the actual fuck? How students should learn the fundamentals concept of OOP in scripting language?
Don't get me wrong, I hate using Java for real life projects. But there is a reason why almost every university use it as introduciton language. It's great start to learn programming. Saying that the 'Hello World' in Java is complex and can scare people away, it's complete nonsens. For fuck sake, yes programming should be fun, but it is also hard. People can understand that they are going to learn what 'public static voiď means later. It's the structure of many Computer Science classes. It's the assigments that are not designed in engaging and fun way for newcomers. That's the problem, not the language.

Comments
  • 8
    "yes programming should be fun, but it is also hard."

    Exactly. No matter what language you start with, sooner or later you will have to dive through a lot of frustration.
    And once you really understand Java you can pick up many other OOP languages without much effort.
    Then mix it up with a bit of C and assembly for better understanding of the lower levels.

    As long as you only focus on the easy and fun parts your code probably won't improve beyond garbage level.
  • 1
  • 1
    Well, I used C++ as my introductory language (thought, I didn't go into the complex topics) and it really taught me what is good and what is shit. I believe Java is quite similar with it's strictness ;)
  • 3
    I personally feel that Java is an excellent introductory language. It is a stable language with concepts of OOP embeded deep in it. I have been programming since 8 years and since have coded on c++, js and recently moved to python. But I feel that java really clarified my fundamentals amd helped me get my basics right. Personally I would suggest java over js as an intro course.
  • 1
    Personally, I wouldn't use Java for education, but I sure as hell wouldn't use JavaScript. It makes much more sense to use something with java-style syntax but without the inconsistencies that can be extremely confusing to new programmers.
  • 1
    I started with C++ at the university a long time ago. I like to think of it as manual versus automatic when comparing it to other languages. Glad I started with C++.
  • 0
    Yea, cause javascript is pretty powerful. Javascript is object oriented too in a different and, in my opinion, a better way. Honestly, if you think switching intro courses to java script is a mistake, then I can only assume you haven't used it much / gone beyond basic usage for DOM manipulation
  • 0
    and how should they learn fundamentals if functional, logic, or array programming in Java?
  • 1
    Honestly, spend some time looking at prototypal inheritance and OOP in js (not to mention all the shit you can do with closures and functions) before reducing it to just "a scripting language".

    And just my opinion, I'd much rather teach programs to complete beginners without having to tell them something like "Hey ignore this 'class' thing and this 'public static void main' stuff for now, just focus on the for loop inside it.."

    But just to be clear, that's not the main reason. I'd still be choosing js cause it's a better language. Imo.
  • 1
    @ac1235 Introductory language doesn't mean "only language you'll ever learn".
    A beginner has already enough to do without learning all kinds of alternative programming paradigms.

    @ronakkaria Every language with dynamic typing is a pain and for beginners it's the worst thing ever. Unnecessarily confusing and bug-prone.
  • 1
    @deadlyRants: Typescript with a suitable IDE then..
  • 0
    @deadlyRants
    rgen just teach them haskell. single paradigm and statically typed.
  • 0
    Honestly I feel like we are missing the point here. Who in hell learned how to code in college... I have yet to meet someone who went to college including me that was brand new to coding.
    It was my choice to personally start with HTML, CSS, and JS. You can go both ways with Js (functional or object) I eventually did take Java and C in college and u was thankful for it but I wish I could have taken a JavaScript class. College is about options to explore and I glad that after..what a decade? Of teaching that curriculum they decided to try something new.

    You have every right to opinion just as I do, but does it really matter what language they choose? Also what is the most popular language amongst us right now, at the end of the day a college is still a business...
  • 0
    @Torbuntu that's understandable but I'm sure you were not attending the number 1 ranked college in America also the number 3 ranked college in the world. These people that go there are well above the curve. Just take a look at at there course curriculum if do not believe me. Hell... They talk about big o notation the first day of class, hardvard's cs class first day they talk about sorting algorithms(dynamic and static) the first day!

    We chose this profession because we like to create, we like to solve problems, and part of majority of that is researching. Not leaving it up to some college or professor to give us the answers, if your saying they cannot learn a solid foundation about OOP because they are not learning a classical language, I personally feel your wrong. College if anything teaches us how to research to find the answers on our own.
  • 0
    @Torbuntu hahaha I despised it but I was grateful for what I learned.
  • 0
    @Torbuntu I eventually will be relearning it because I do want to get into mobile application. I will embrace it with a clean slate hahahaha
  • 0
    @Torbuntu I will keep that in mind!
  • 0
    @ronakkaria You are right. I am not that skilled in JavaScript yet. Planning to further my knowledge in near future.
    However, for a newcomer to programming JavaScript can be extremely confusing. Judging based on my personal experience and many of my classmates, friends and colleagues. Therefore, it makes more sense for me to use Java as an introduction language. Moreover, I am aware of modern JavaScript being OOP in it's own way. But, I believe there is a reason it has script in it's name.
  • 1
    @st4mpik Now, I don't know your level in js, but having had similar views as you in the past, I can tell you the reason you find javascript confusing at times is probably because you didn't yet give it the same respect while learning/using it, or sometimes assuming just cause something looks similar to that in java, it will work similarly. There's nothing inherently confusing about js. I'd recommend taking a look the udemy course: "understanding the weird parts".

    Once you really learn it, and unlock the shackles in your mind that Java put in place, you'll feel it's power and flexibility all the way to your finger tips as you type. Lol.
  • 0
    another reason it's probably used as the introductory language is cause of the increasing need to handle asynchronous. Latest versions of js have really cool features, ideas borrowed from other languages like c# of course, but still.
  • 0
    Oh and not to mention, you can't take code quality for granted js. You can quickly end up with a pile of undebuggable garbage if you're not careful. Great motivation to teach the right practices :P

    Fucking hell I couldn't disagree more with your rant! :'D
Add Comment