I understand that all languages have specific advantages and disadvantages but I wanted to hear some more specific opinions on Java.
I just graduated with my bachelor's in computer science and am looking for work now (any bonus tips on how hunting would be great as well). We never did any work in Java, instead using Python and C++. I don't find a lot of Java specific postings but many mention it alongside C++ and other object oriented knowledge.
The general idea that I hold is that Java is good for existing code, but most new projects are using other languages, especially since Android apps are moving more towards Kotlin. Do others agree or am I way off? Would it be worth it for me to write a quick Java program to throw in my GitHub to boost my resume?
Videos
Hi guys I'm a 2020 passout and i was wondering if is still worth it learning Java or should i head straight to Kotlin any advice or suggestions would be appreciated.
(First post hah)
I'm a student, 19 years old, starting the 2nd year of the Computer Engineering career.
So far, I have been learning Object Oriented Programming through the Java language, but I remembered something.
There seems to be less and less devices that operate this language and getting overwhelmed by Python, Ruby or C++, and I have the fear that if I keep giving attention to Java, in just a few years it will be so worthless to the point I will be lost onto the other good languages (I think I want to learn C++ & Python soon).
I need you to answer this: Will Java still remain as an important OOP language? For how long? How relevant is it today?
Thank you so much C:
Beginning programmers are always very worried about picking the wrong language, but that's the worst thing to worry about.
First of all, Java is one of the most popular languages, still, and it will be around for many, many years.
Java is so popular, and so successful, that there are a few specific things Java used to do well, like web applets and feature phone games, that used to be popular but are now dead. If you only consider those, it might seem like Java is dying - but that ignores the hundreds of other fields where Java is more popular than ever - including web servers, Android apps, scientific computing, enterprise desktop apps, and so much more.
Most importantly, though, even if by some miracle Java stopped being popular in the future, it will not have been a waste to learn Java! The same concepts live on in other programming languages, and all of the skills you learn will be just as useful no matter what language you use.
When I first learned to program I learned Pascal. It was a very popular language at the time and today it's not very popular at all. But it didn't hurt me at all, it was a great experience and everything I learned about Pascal was useful in the future with every language I learned after that.
Android is java, there is 100 million devices right there.
I know Java, along with a handful of other languages used on the JVM (kotlin, scala). I also use Python quite a bit, C++/ObjC (though I use it much less), and I dabble in JS if needed. I've written perl, php, pascal just to new a few others. Once you learn the fundamentals of CS, you should be able to grasp any C like language pretty quickly. (even C++ if you just keep it simple)
What you should focus on is learning object orientation. Relationships between different objects/classes, their interfaces, and how to actually construct software. Don't worry about language so much yet, you will quickly get the point where you know 5+ languages.
Now go read this book. https://www.amazon.com/Pragmatic-Programmer-Journeyman-Master/dp/020161622X
Also, I have to say that knowing Java and Python is a sought after combination.
I am new to Java and i am not able to decide which Resources are good to learn in 2020. Most i find are video series from 2010 or 2015. The new boston YouTube channel idk if that video series is still relevant bur currently i am referring to his tutorials. Any suggestions on which book/websites/YouTube channel is relevant and good enough in 2020 ?
Please, don't recommend/use thenewboston.
They are a discouraged resource as they teach questionable practice. They don't adhere to commonly accepted standards, such as the Java Code Conventions, use horrible variable naming ("bucky" is under no circumstances a proper variable name), and in general don't teach proper practices, plus their "just do it now, I'll explain why later" approach is really bad.
Derek Banas covers about the same ground, but in much better quality.
If you're looking for an in-depth, comprehensive, high quality, free Java course, use the MOOC Object Oriented Programming with Java from the University of Helsinki and maybe Java for Complete Beginners by John Purcell as secondary resource.
I am a bot and this message was triggered by you mentioning thenewboston. Please do not respond to this comment as I will not be able to reply.
I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.
You don't need the recent resources. Java is quite backwards compatible so you can still use old videos to learn basic java and then if you want to learn about modules or lambda, then newer videos can explain these.
I know they've been saying Java is dying for who knows how long, but it still stands and runs strong.
I don't doubt that Java is a fantastic language despite the hate it gets.
Is Java worth learning in 2023 and for the future, or would time be better spent learning another language?
Is Kotlin the future of Java?
I've seen that Java has been trending downward, hence why I'm asking this question.
My goal is to become a full-on backend developer (currently full-stack with JavaScript).
Once Java is learned, what are some advanced topics one should learn, such as most used design patterns, etc.?
First of all, the language you learn is largely irrelevant. Whats important is concepts. Whats an ORM, how does it work in general. Whats the Request-response Model, whats the difference between Ajax and WebSocket? How do Iterator work, whats a type system, what are subtypes, whats covariance and contravariance. Those are all fundamental questions that you will learn when you learn either Java, or C#, or one of the myriad other languages out there.
If you know the concepts picking up a new language is easy. The first OOP language is diffucult, the first functional language is difficult, and the first prototype-based language is difficult. After that, picking up new languages becomes comparatively easy as you already know how stuff works in general.
So the choice doesn't even matter as much as you think.
That being said, Java doesn't get "all the hate". There are a few vocal groups that shit on Java, just as there are a few vocal groups out there that shit on other languages.
Java isn't declining, on the contrary, it is still going very strong. The ecosystem of languages has become more diverse, but the existence of more programming language on the JVM basically ensured that the JVM and Java will be there for a very long time to come.
If you learn Java now, chances are good that you can work with Java until you retire, should you choose to.
People with no/low visibility to large enterprise codebases always claim Nodejs /flask or whatever is replacing Java.
Dont worry.
Many of the large codebases, if not most, are written and maintained with Java. And Java is always evolving. Learn Spring framework, Hibernate, etc and combine with knowledge of databases, cloud, containers etc and you will be ok
I've had some really mixed reviews for learning Java first. I plan on applying for jobs mid-2019 and I'd like to get one language down really well before I move onto others. From what I've been told, Java is a little more difficult than most languages, so I'm thinking if I start with it moving onto others will be somewhat easy, especially something like Python, because the same concepts are used in both.
Several people I've met have been very against me starting off with Java. I've really enjoyed learning Java and created several programs, over 150 Leetcodes, and doing Advent of Code in it. I've only been doing it for three months but I honestly think I'm fairly good at it now; my boyfriend is a Java expert who has been able to answer questions google can't to deepen my understanding.
I suppose I'm just wondering if this is the right language to start off with, or if I should heed the advice several have given me and start with something else, like Python?
Several people I've met have been very against me starting off with Java.
Over and over again this quote remains relevant:
Bjarne Stroustrup — 'There are only two kinds of languages: the ones people complain about and the ones nobody uses.'
Java is the most widely used programming language in the world. Some think it's trendy to hate on it because it's popular and they think it makes them look cool. But these people are always pushing languages and frameworks that no one is using 3 years later so I don't think they're worth listening to for anything more than purely entertainment purposes.
Sounds like you already have . It won’t be your last language, you have to learn something and keep going from there.
I have been studying programming for the last six months. For the first four months I studied Python, and then I started studying studying data structures and algorithms. For data structures and algorithms, I picked the books where the code was written in Python. Now that I am about to finish that, I have decided to pick Algorithms by Robert Sedgewick. In this book all the code is written in Java.
I want to learn both Java and Python, and I will learn Java at some point. My question is whether I should start learning it right now or not? I know it's not necessary, but I think it will be much easier to follow the book if I have some understanding of Java.
Why am I confused?
Well, I have watched videos, read blogs about people recommending to stick to one language when starting out. So, I am scared to start a new language thinking I might forget Python or get into a situation where I don't understand either of these languages.
I will just be to the point, I just find it fun to learn how to code and want to be able to independent create code create things without error. There’s an interval between where I learn hello world then language I don’t understand. It’s very small and I don’t know where. Is it all important to learn?
It’s used everywhere but also there are no more “modern” languages coming, like googles carbon. I understand there are different uses for each language, which is why I’m wondering, should I learn Java at the start of next year?
Last year, with all the extra time I found stuck at home, I finally decided to learn a few programming languages as a career shift. I am in my late 20s and I've decided that coding for a living should be my top priority. I studied Java for around 6 months and got hyped making my own simple apps (I usually learn fast), but I kinda drifted away from it and haven't done any programming for 2 months to focus on Japanese.
I am still full of motivation and intent but I'm starting to doubt if Java is even worth the time anymore. Should I switch to Kotlin and later Go, skipping Java completely?
I'd love to start applying for junior jobs mid-late 2022.
TL:DR Want to work as a coder in 2022, is studying Java a waste of time?
I mostly program in C, python, assembly and some scripts in bash when i need. My college added a class to our Computer Security degree that teachs Java. I have little experience with Java and I'm trying to see why would i program in it. In summary I'm trying to draw inspiration and some rational thoughts for why should i learn this specific language apart from the usual "study so i can pass".
I started my career with the same background as you. Eventually I found how powerful java is for fault tolerant and fast running servers. Some people complain about the verbosity of the language but end up writing more code to enable a feature included in a java lib. To reiterate what everyone is saying... the tooling is somewhat unparalleled for the serverside (when you start talking about telemetry, threadmgmt, etc). But always right tool for the job...
Java has a giant ecosystem with thousands of very good libraries, frameworks and tools. Plus Java is all in all a fairly productive language (mostly due to the good tools and libraries). And Java runs fast in many scenarios, but doesn't have the memory and safety issues like C and C++.
I'm a beginner in programming, I already have some basics in Python. I don't know if it's relevant, but I have experience with Linux. I want to work in more traditional companies in something like software (I don't like the web).
Do you think Java its a good choice? If yes, Where should I start?
Last year i went through Java course, but due inexperience (and honestly i wasn't exactly good at it) i didn't manage to get any job.
Now i'm used to my new job and got over some bad episodes, so i think i'm ready to try again, but on my own pace ani probably take it more like a hobby for now.
But is it still worth it to re-learn what i knew and continue my growth or should i stuck with different language?
I mostly want to do games for now (found some graphics engine for Java), but i still want to try learn how to do apps websites or AI in case i would decide to pursue some jobs again.
I heard/read a lot of complains about Java so i right now i'm not sure where to start now. If JavaScript or other languages are better for beginner like me.
Thanks for help.
Java is great language, and it gets exciting updates in recent years, too. Most people who criticize it have dealt with it years ago, and the language evolved so much in the mean time. So, in practice a lot of criticisms aren't valid anymore because the arguments people give are simply out of date. It has the best developer tools out of any language, some of the best libraries and frameworks. The community is mature, meaning that if you land a Java job there's higher chance you will work with very experienced engineers and this would be a tremendous learning opportunity for you.
Plus, it opens road for other JVM-based languages like Scala, Clojure, or Kotlin - all high quality languages, great in their own right.
Should you stick with Java for your whole career? Probably not, but staying away from a language just because someone badmouthed it is not a good idea.
What you might not know is that, having learned Java, you also already know C#! Well, almost. It’s sometimes jokingly called Microsoft Java, is slightly easier, and is much more prevalent in gaming due to it being Microsoft’s language, and they’re huge in gaming.
So, consider MonoGame (what used to be Microsoft’s XNA) as well.
Hi, I'm enrolled in a programming course and we are about to start with Java and saw that they will use Java 8 in all the courses (the classes are pre-recorded, and it's a free course by Oracle) which I read Oracle won't be giving much support, on the other hand, I was gifted a Udemy course that teaches Java 15, should I worry about the versions they use? I'm in college but want to spend the summer learning more about Java since I only did the basics in class but I don't know how much the version affects my learning
Hi all! I have the chance to follow a course to learn Java the next term... Since I heard rumors of Java not having a future anymore, should I follow that course or should I aim to another language? Thank you!
P.S.: I already know something about C and might remember something (very little) about Python.
Java has so much inertia at this point it'll probably outlive us all. It has a very certain future and if not it's not hard to pick up another language once you've got one down.
Java is one of the best languages to learn. Even if you don't end up working with Java you can still pick up any other language in a few days if you understand Java.
Hello there! Lately it has crossed my mind to learn or do some side project with a new technology or one that I have barely touched in the past and that could also help me grow professionally in my current job or get a better one.
I've been thinking about Java, because of the stability, the support, that it is completely object-oriented, etc.
I have already worked with Java in the past, several years ago, so I wouldn't start from scratch. I have been working as a Software Engineer for about 9 years with the same technologies (PHP, JavaScript and Python) but I would like something different from that.
I work in a fintech, and there are plans to create new microservices and one option is to use Java, but since it is not my strength, I probably won't get into that project. In addition, I would also like to apply (later obviously) to a FAANG.
Even though I have been working in other languages for several years, do you think it is worth spending time learning and strengthening my knowledge in Java? Do you think it can help me improve in some way in my career as a software engineer?
For the past week I've been studying Java. I've gotten pretty far and know quite a bit now, but I'm still struggling to figure out if it's worth it.
I started learning because I wanted to make an android wifi tethering program. I understand it's only useful if you know what you're doing and what you want, but in a broader scope, is java useful? It seems dead and boring from what I've looked up about it.
I still wanna learn it and become somewhat fluent with it, but I don't know, I just don't wanna waste my time. (To clarify, I certainly don't think it's a waste of time. I see any knowledge gained as a benefit)
There's other stuff I'm wanting to learn also, like game development. I wasn't gonna use java for it, and it seems like it's not commonly used for game development either.
I guess I'm getting side tracked. Is java worth learning?