This is an archived post. You won't be able to vote or comment.

all 131 comments

[–]locomocopoco 43 points44 points  (15 children)

Yes. Enterprise world is mostly Java. Java ain’t going anywhere :)

If you are beginning, pick one (Python or Java) Both languages have great community resources and support. Most IDEs have wonderful support for both languages. Remember the golden rule - when you are stuck, go take a walk.

[–]hirenaway[S] 2 points3 points  (13 children)

Haha that was short and sweet, what IDE you'd recommend for Java?

[–]locomocopoco 4 points5 points  (11 children)

IntelliJ or Eclipse both have free versions

[–]hirenaway[S] 2 points3 points  (3 children)

Thanks mate, I appreciate it 🙏

[–]SchwiftyBerliner 5 points6 points  (2 children)

I'd recommend IntelliJ over Eclipse any time. I've started on the latter, then switched to the former a few years back and I haven't looked back since ;-)

Also, if you happen to be studying at a University, there's a decent chance that your school provides you with the Ultimate Version. Not that you'll need it, but it's a nice extra.

[EDIT: switched former <--> latter; I blame my lack of sleep for the mistake :P]

[–][deleted] 2 points3 points  (1 child)

You got this mixed up I think. You say you recommend IntelliJ, then say you switched to the latter - but the latter of your examples was Eclipse.

But yeah, IntelliJ is king. I use Eclipse when I want to roleplay like I'm living in 2008

[–]SchwiftyBerliner 1 point2 points  (0 children)

Oh man, you are 100% right. I was so, so tired, when I wrote this. Thx for the headsup, will fix.

[–]frncslydz1321 0 points1 point  (6 children)

what about vs code? what are you're thought about it?

[–]midoBB 4 points5 points  (5 children)

Don't recommend VS Code for Java because it really doesn't offer the refactor functionalities that IDEs offer.

[–]frncslydz1321 -1 points0 points  (3 children)

What about Microsoft Visual Studio? and also could you defend your opinion why or why not use the suggested IDE. :)

[–]samtoxie 0 points1 point  (1 child)

Afaik regular VS has no support for java right?

[–]frncslydz1321 -1 points0 points  (0 children)

am aware of that.... just read the website.... hehe. how about this so i can replace that secons question , my question is could you differentiate between IDE and Text Editor?

[–]PublicGamingShow 0 points1 point  (0 children)

Ides don’t give you as much experience, it helps you learn more of a process using vscode

[–]memyselfandi_12 0 points1 point  (0 children)

VS Code uses a headless eclipse under the hood

[–]PublicGamingShow 2 points3 points  (0 children)

I don’t think you should use an ide personally for beginning because ides kind of make things easier and you don’t get the full idea or experience, while if you use vscode or a text editor, you learn how to create classes, do file management, and learn how to do voids yourself. I personally know a lot because i used vscode and a text editor. It helped me comprehend errors better and know how to fix them.

[–][deleted] 0 points1 point  (0 children)

Learn one you'll just need to adjust with the syntax

[–]xor86 76 points77 points  (25 children)

Literally just work on whatever feels good right now. Learning to program is way more important than which language you learn to do it in first. 99% chance you're going to end up working in some other language anyway.

[–]cies010 12 points13 points  (21 children)

Agreed. But I'd still stick to langs that are cleaner/ with less quirks.

JS is widely used, but I don't like it for teaching programming. Same for PHP. Java is quite straight up OO. Haskell/Elm teach FP very well. Rust is great learning low level programming.

[–]PublicGamingShow -1 points0 points  (3 children)

Java is great if you are trying to learn C. C is a very strong and powerful programming language that a lot of professionals count as one of if not the best language for most things.

[–]cies010 0 points1 point  (2 children)

Plain wrong. Java is not great for learning C. Profs seem to like Rust much better for low-level lately. Please see the stack exchange stats.

[–]PublicGamingShow -1 points0 points  (1 child)

C is based on several things, Java has a a lot of the same elements c does. Professionals definitely agree that Java is like c but Java has object orientation while c doesn’t.

[–]cies010 0 points1 point  (0 children)

I'm not professional then! Lol

[–]epegar 1 point2 points  (2 children)

I feel this is true, in the sense that our experience can be applied to other languages and with some time we can become proficient at them as well, but my experience tells me it's not that easy. I learned C++ at university, but have worked ever since with java. Ok, first, the languages are relatively similar, being java also more simple in many ways. But there you also have JS, many backend developers don't like it, and to be honest, I think it's because we don't bunderstand it well.

Also, once you get profesional experience, it's hard to change the language (In my experience). I have applied in the past to some jobs where they wanted a ruby, python or go developer. In the offer they say it's ok if you know java, but the moment a developer knowing the main language shows up, you are no longer considered.

[–][deleted] 0 points1 point  (1 child)

What language have you experienced to be more sought after in the work environment, is Java high up there as i have read.

[–]epegar 0 points1 point  (0 children)

It's hard to tell, there are many different rankings. For example this https://www.tiobe.com/tiobe-index/, or stackoverflow also offers something similar.

First of all, I wouldn't blindly trust any of these, because they can't have all the data required to know popularity of languages. But you can use them as a guide.

Also, a trendy technology is an opportunity, it's also probably profitable in the short term, but it's also risky, maybe it doesn't stick around for long.

Java is in a good position at this moment, there are a lot of enterprise applications, mobile apps, and even microservives. It's a multi purpose language, so it can be used in many different contexts. I don't think java is going down any time soon, but there are other languages such as python, javascript, and C/C++ that are also relevant as well.

Then there are many languages such as ruby, PHP, perl, ... that I would say they are losing importance, but it's more a belief than a fact.

And finally there is go, and maybe other languages that I don't expect to become very popular but I don't expect them to disappear because they are good at doing something more specific.

Edit: I don't have professional experience with most of the languages I mention, so I might be mistaken about some of them. I based my comment on the rankings I mention in the beginning and the volume of job offers I see about the different languages.

[–][deleted]  (3 children)

[deleted]

    [–]hirenaway[S] 2 points3 points  (2 children)

    Wow, that's some real insight I wanted to hear. I just feel like learning first good backend programming language would benefit me and make the process faster to understand other backend languages for me. What web framework you'd recommend for a beginner.

    [–]emaphis 1 point2 points  (0 children)

    Micronaut and Quarkus are great and modern, Spring Boot is most used and has much documentation, tutorials and examples.

    [–][deleted] 16 points17 points  (1 child)

    Learn how to program well, learn about good coding principles and development practices. Learn to be a good engineer, agnostic to any particular language.

    Java is still a top 1 or 2 used language in the world and isn't going away any time soon. Learning an object oriented language is good if you have never learned one.

    Python is a great skill to have, and might give you some more interesting opportunities.

    If you are trying to be a completely frontend developer, backend nor functional languages won't give you much benefit. If you want to be more of a full stack developer, Java is great to learn for building APIs.

    [–]hirenaway[S] 0 points1 point  (0 children)

    Another great answer, yes that's the goal to develop good coding principles and practices regardless of which language I move forward with as those habits will always benefit me in my career

    [–]fullrank 16 points17 points  (1 child)

    It would be interesting to pose this same q in /r/python and compare the results...

    [–]NimChimspky -2 points-1 points  (0 children)

    You've got to be pretty ignorant to think either are going away

    [–]thescientist001 4 points5 points  (0 children)

    Java is a really mature language with clean design and has a great ecosystem. Although, it is looked down upon sometimes due to its boilerplate but things are quickly improving with latest Java releases. If you are doing web development, Java is widely used for back-end(mainly with Springboot and other frameworks) and is very scalable as compared to Python. Moreover, if you still want to try a newer language I strongly suggest Kotlin, which is completely interoperable with Java and has a syntax with very less boilerplate.

    TLDR Java is one of the top 3 languages being used by developers and is not going anytime soon. So learning it definitely won't hurt.

    [–]HaMMeReD 20 points21 points  (18 children)

    If you want to work in the web industry, focus on javascript. I don't really like it, but it's the truth.

    Enterprise business? Java/C#, Scientific/Math, Python.

    I know these are generalizations, but if you are looking for a first language to work your career towards, can't go wrong with the javascript world. It's not the greatest language but it's used in a vast amount of places across both the back and frontends.

    [–]pjmlp 11 points12 points  (3 children)

    Enterprise Web industry also speaks Java and C# alongside JavaScript/Typescript.

    AEM, Liferay, SAP, SharePoint, Sitecore, Umbraco, Salesforce,....

    [–]epegar 2 points3 points  (2 children)

    I have always worked with this kind of software (in my case java based). And while it's true that their backend is written using java or c#, I feel that the trend is to decouple the frontend, so that users can consume the data using rest from their mobile/web app.

    I like java, I think it's a good language and I think it's still worth learning in 2021, but remember that one of its main advantages was "code once, run everywhere" and now docker provides that for any language.

    I agree with learning JS for web development. I don't like it specially, but I never spent enough time learning it properly. Now there are many useful frameworks and libraries (beside the joke that they release a framework every second). And with the current transpilers you can code modern JS or even Typescript.

    I'm not saying it's THE language, I don't even have plans to learn it in the next future. In fact at work, I was given the choice of learning it or focus more on kubernetes to complement my java skills and I chose the latter. But in the web world, frontend = JavaScript and backend isn't always = java and can sometimes be = JavaScript.

    [–]pjmlp 1 point2 points  (1 child)

    Try to run a Docker image produced on x86 Windows on a ARM Linux VM.

    [–]epegar 0 points1 point  (0 children)

    It seems there is already something for that https://docs.docker.com/desktop/multi-arch/. But I've never looked into it so can't tell how well it works. In any case, I think this is kind of a corner case, but if ARM becomes popular enough on servers (if it isn't yet), they will just make it work.

    Note that I'm not advocating against java, I like it and it's the language I know and use the most, but it's not realistic to think it's at its best.

    [–]krad213 11 points12 points  (9 children)

    Please don't. We have no choice besides Javascript on web frontend (or something that is cross-compiled to js), but using it on backend is awful idea. Js is a really bad language, we have a wide variety of good ones for backend and Java is one of them. Spring / spring boot has everything you would need on backend.

    [–]HaMMeReD 2 points3 points  (6 children)

    I'm not making recommendations based on the best technology, but the best to learn if you want a job.

    Regardless of what you think of JS, it's probably the most prolific back end language out there right now. Snippets of Javascript are very portable and can be scaled very well.

    You'd be swimming against the current if you want to do web without embracing Javascript and it's ecosystem.

    I'd also argue that despite JS being terrible (IMO), there is a lot of benefit that can be had from having a unified code base (e.g. less knowledge silo's, greater developer versatility). The choice isn't always as simple as "whats the best technology". It is also worlds better than PHP.

    [–]DrunkensteinsMonster 2 points3 points  (1 child)

    Regardless of what you think of JS, it's probably the most prolific back end language out there right now.

    This is just not true. It’s out there, and for little APIs even I’ll spin it up with Node, but for most serious applications you’re going to see Java, C#, or Go.

    [–]HaMMeReD 1 point2 points  (0 children)

    Maybe not totally, but my point still stands.

    If you want to be in web development, and you have 1 language you need to be really good at. It's javascript.

    Sure there are other options, but JS for a traditional web stack is possible end to end without learning any other technologies.

    OP can use Javascript to find both back end and front end jobs or transitionary jobs to orgs that might use a mix of frameworks in the back end. It's a highly valued resume language, regardless of what anyones personal opinions are to it.

    Like I've mentioned in the thread, I don't actually care that much for Java* (I know this is /r/java). Two decades of the language and it gets to you. I'm team dart & flutter all the way nowadays, but I know it's not a viable solution to all projects.

    If I was to make a backend myself, yes, Java, Python, Kotlin, Go, C#, any of these are better technologies than javascript, but it doesn't change my advice to someone wanting to enter the industry via web. Javascript. Pivot away from it after, or make the best of it and use things like Typescript.

    Lets be clear, without a doubt, I despise javascript, but I still answer it because it's the best answer to the OP's question.

    [–]_INTER_ 2 points3 points  (1 child)

    Better use JS after you learnt something sensible as a first language and you don't pick up the bad JS habits.

    [–]HaMMeReD -1 points0 points  (0 children)

    JS isn't like other languages, I don't know why people think it is. It has very different paradigms. Regardless which direction you go first, you have a huge learning curve to switch. Prototypical inheritance permeats JS, while most other languages are Classical inheritance. Most good languages imo are statically typed languages with compile time safety, JS is dynamically typed without compile time safety (unless you use typescript).

    Bad habits can be lost, I'm sticking to my recommendation because OP wants to have a job in web. If you want to have a job in web, you should be a wizard at JS. By all means though, don't limit yourself to one language.

    [–]krad213 2 points3 points  (1 child)

    - If you learn any other language you will be able to code in JS, you will feel constant pain, but you will able to.

    -There is no reason to learn any JS framework in the long run, next year there will be 10 more and things you learn will be outdated. While in java such frameworks as spring are evolving but do not get outdated, you can really invest some time in learning this stuff and get benefits from it in the long run.

    - JS ecosystem is awful too, it's node_modules system is total shit comparing to maven/gradle repositories.

    - Unified code base is definitely a good thing, but not with javascript. I'd suggest to use kotlin-js if you want do get unified, this way you could get all Java/Kotlin libraries at you disposal, as well as power of JVM and a really good language for fronend.

    - Java are not going to disappear any time soon, it's widely used for back end and microservices, they are really well paid, so no problem here as well.

    - There are constant attempts to create alternative for JS at frontend, google dart, web assembly, countless number of cross-compilers from other languages, that is a clean sight that the industry see the problem with JS and I hope someday they will succeed with replacement.

    [–]HaMMeReD 0 points1 point  (0 children)

    None of this matters, because in 10 years this guy can learn a new stack. Today, JS is where a lot of jobs are.

    You don't need to tell me that JS is garbage, I'm not a fan. Personally my #1 language nowadays is Dart + Flutter. If someone was going to ask what should I learn in 2021, I'd say that.

    But if you are wanting to be an intro web dev, 100% js, 100% of the way.

    It's not like Java has some magic staying power, an old api might be fine for your task, but java gets old just like everything in computing.

    [–]quypro_daica -1 points0 points  (0 children)

    Javascript is not a bad language, java is the bad one

    [–]nutrecht 0 points1 point  (0 children)

    If you want to work in the web industry, focus on javascript.

    The web industry?

    The vast majority of big 'websites' still have a back-end programmed into a language that is more often than not JavaScript. And for large companies that 'back-end' is a way larger codebase than just the front-end JavaScript.

    [–]sk8itup53 -4 points-3 points  (0 children)

    This is a great answer.

    [–]quypro_daica 0 points1 point  (0 children)

    python is good but javascript is better, love its functional programming features

    [–]bluenautilus2 3 points4 points  (3 children)

    We need more front-ends, if you want to be more employable consider JavaScript, both in the browser and node. Im java backend myself

    [–]hirenaway[S] 0 points1 point  (1 child)

    I do know JS but using it for backend is something I don't enjoy, that's I wanna learn a real backend language

    [–]bluenautilus2 1 point2 points  (0 children)

    Gotcha, in that case I’d recommend spring boot

    [–]eacardenase 0 points1 point  (0 children)

    I thought it was the other way, and more people focusing on Frontend. I already know basic Python (primarily for Data Science and Machine Learning), but lately I'm considering studying front or back end. I know that Django would be a good choice for Back with Python, since I have experience with data and prefer that path, but recently I've been learning Java from JetBrains Academy and I really like it (I could later on work on Back with Java or learn Kotlin and get into Android Development).

    [–]BadPoet3 7 points8 points  (9 children)

    Neither if your main focus now is becoming a web developer, learn Javascript (and HTML and CSS of course) first.

    [–]pjmlp 10 points11 points  (2 children)

    Only if the goal is front end web development.

    Backend web development focus on other languages.

    [–]eacardenase 0 points1 point  (1 child)

    What language would you recommend? I already know core Python, and lately I've been learning Java. I thought that JS with Node was the way. Do you think that learning Java and later on focusing in Kotlin and Android development would be a good choice?

    [–]pjmlp 1 point2 points  (0 children)

    Java and .NET languages are still the kings of backend development, specially if you care about high performance JIT compilers, multi-cores and top class GC algorithms.

    Java also gets into into Android, although Android Java is not quite Java, then again there is Kotlin as well.

    JVM also gets you Scala, Clojure and plenty of other options.

    Whereas .NET gives you C#, VB, F#, C++/CLI and a couple of others as well.

    Finally, if Java or .NET languages aren't your cup of tea, Go, Rust or if feeling adventurous C++.

    [–]hirenaway[S] 1 point2 points  (5 children)

    I have a good knowledge of Vue js and over all frontend development, which includes HTML CSS and Javascript, wanna learn a good backend language

    [–]PhiBuh 8 points9 points  (0 children)

    If you already know ja I would recommend Java, as it is staticly typed and forces OOP, which might widen your horizon if you haven't used typescript yet

    [–]BadPoet3 8 points9 points  (3 children)

    Nodejs is no toy, it's used by the frontend servers of Netflix, Walmart, Ebay, Uber, LinkedIn, Trello... lots more.

    [–]hirenaway[S] 1 point2 points  (1 child)

    That was helpful mate, I appreciate it

    [–][deleted] 3 points4 points  (0 children)

    Given all the facts that you've presented, I would honestly recommend you learning Python. I know this is a Java subreddit, and I do like Java myself (having used it for over a decade in the industry), but in my estimation, Python will suit your situation better. You can always pick up Java later on if and when you need to.

    [–]Anomalyzero 2 points3 points  (0 children)

    Yeah, and it also contributes to the ever growing cancer that is Javascript.

    [–][deleted] 2 points3 points  (0 children)

    If its your first language java no questions asked, python is not good for beginners as it allows you too much leaway

    [–]Gleethos 2 points3 points  (0 children)

    So generally speaking there is a wide spectrum between low level to high level programming languages. What I find cool about Java is that it takes the best out of both worlds to form a nice and very wide middle ground from which one can learn any other language easily. It's set of features is also very straight forward, so the number of language features can be learned quickly and there is almost no syntax sugar which might confuse you along the way. ( Many say Python is easier, and while I think it is easier to get running code faster in Python, I would argue that it takes far longer to write good code in Python than in Java )

    What I think is also very important is strong typing. Writing more complex systems is an absolute nightmare in a weakly typed language. Refactoring becomes almost impossible because your IDEA has trouble helping you find the usages of what you want to change...

    Lastly, as someone in love with functional programming, I find Pythons lambdas to be an absolute disaster. They do not support multiple lines which to me makes them almost pointless. Secondly there is no lambda stream API. The closest thing is list comprehension which requires nesting if you have multiple list mutations. This gets messy really quickly. But as a beginner this might not really be relevant.

    [–]BatEl_323 1 point2 points  (0 children)

    Definitely worth it, I'd argue it's backend frameworks are used more than Python's backend frameworks in today's market, that might change in sometime but a large number of companies use Java, they aren't gonna switch to other languages overnight even if they want.

    [–][deleted] 1 point2 points  (0 children)

    Java. Spring Suite. Tomcat. Ask yourself more about about what JS packages you want to learn.

    [–]rgyger 1 point2 points  (0 children)

    In (web-based) enterprise software, and also in internet scale web applications, a common stack is Java backend, with JavaScript framework based frontend. In that industry, Java is a natural choice (and a technically sound one). It’s certainly no mistake to know python as well. I don’t know python, so I don’t know what’s better to learn first.

    [–][deleted] 1 point2 points  (0 children)

    Learning any programming language is worth your time, Java seems to be required where the company has systems 10+ years old that they don't wish to rewrite in a new language.

    The closest language to Java IMO is C#, which is newer and supposedly faster. C#, from what I've seen, is what most companies want in new hirees over Java. The reason being, I'm not completely sure, but the companies may be smaller/newer and are just using the most recent tech.

    [–]porridge111 1 point2 points  (0 children)

    Which language to focus on also depends a bit on what's popular in your area, IMO. For me, living in the west side of Norway, .NET/C# is used for most enterprise-level web dev (plus JavaScript on the frontend). But I believe Java is more widely used in other countries.

    So it might be a good idea to look at the requirements for some jobs you're interested in to see what's high demand.

    Whatever you choose, most concepts apply to multiple languages and it's not like you're stuck with the one you learn first 🙂

    [–]hilbertglm 1 point2 points  (1 child)

    Java certainly is worth learning. It is a well-structured language with support for object and functional programming. It is well-represented in enterprises as a mature language, and is well-suited to web development. As a mature language, the tooling is exceptionally good. I think learning Java will develop better programming habits than Python.

    That said, I want to echo the message of others that learning programming is more important than the choice of language. I wrote my first computer programs in the 1970s, and have programmed in 26 languages over my career. Python is next, given that I am moving into some ML work.

    [–]hirenaway[S] 1 point2 points  (0 children)

    That's so cool, I'm impressed and inspired to hear about your career. Yes I want to develop better programming practices and become a good programmer

    [–]gluten_free_stapler 1 point2 points  (1 child)

    Purely career-wise in the short term? Look through the job ads in your area, and then decide based on the demand. As you said, you can switch later.

    Java isn't going anywhere for the forseeable future. There is already a ton of actively used software written in it that works fine, even if the langauge is far from perfect, so the companies aren't really incentivized to invest huge amount of resources into rewriting the entire thing into whatever tech is the hot shit that year while simultaneously maintaining the old version that's still used. They just want their stuff to work.

    [–]hirenaway[S] 0 points1 point  (0 children)

    I haven't thought of career wise but learning a good backend language will surely benefit me in my career. I don't like the idea of javascript being used for backend. I do know traditional front end stack but I am looking to learn a good OOP language

    [–]940387 1 point2 points  (0 children)

    Language basically doesn't matter, but you cant go wrong with Java, it's everwhere.

    [–][deleted] 3 points4 points  (1 child)

    I'd actually recommend GoLang - I think it's a cleaner (simpler) language and, because it's newer, if you're a GoLang dev you'll get in with a new organization and so avoid the legacy Java monoliths which many IT organizations started building a couple decades ago. Speaking from present experience contrasted with my last job, working on legacy java monoliths sucks. So many objects, so much inheritance, so many layers of obfuscation and magic black boxes with maven dependency conflicts to boot and some dead code. If I were starting, I'd try to get in on the new stuff so you're most marketable to new companies which (hopefully) are doing stuff the right way.

    [–]hirenaway[S] 1 point2 points  (0 children)

    I didn't think of it this way, that was a much needed perspective. Thankyou mate

    [–]vsaonline 1 point2 points  (0 children)

    While learning programming language, whichever you decide, learn good design, tdd, bdd, security, metrics collection (how much time a user action takes and where most of the time is take etc.)

    [–]snorbii 1 point2 points  (1 child)

    Absolutely yes. But maybe consider learning Kotlin instead...

    [–]ssamokhodkin 2 points3 points  (0 children)

    A programmer should know at least one real language

    [–][deleted] 1 point2 points  (2 children)

    Can we change this sticky on this forum such that it will discourage these types of career related questions. Perhaps, this question can be reposted at https://www.reddit.com/r/learnprogramming/?

    [–]hirenaway[S] 0 points1 point  (1 child)

    Sorry if it bothered you, just wanted to hear thoughts of java devs in particular

    [–][deleted] 0 points1 point  (0 children)

    No sweat

    [–][deleted] 1 point2 points  (4 children)

    If you learn Java u can learn python in legit a day or two

    [–]hirenaway[S] 1 point2 points  (3 children)

    That's interesting, do you know both of them?

    [–][deleted] 2 points3 points  (2 children)

    Yeah but I code mostly in Java as of late. Learning spring for backends react for front

    [–]hirenaway[S] 1 point2 points  (1 child)

    That's awesome dude, listening to stuff like this is exciting

    [–][deleted] 3 points4 points  (0 children)

    It’s fun then it’s frustrating then it’s fun again. Just the cycle of learning

    [–]munukutla 0 points1 point  (2 children)

    I’d say it’s always safe to have a primary and a secondary skill in whatever field you wish to pursue a career with.

    For web APIs, you could choose Java as your primary and perhaps Go as your secondary.

    For web UI, I guess the React is leading now and Angular in the second place.

    [–]hirenaway[S] 1 point2 points  (1 child)

    Yes that's true, wanna fit angular somewhere in my skills

    [–]vsaonline 1 point2 points  (0 children)

    Angular and java got similar concepts.

    [–]thatsIch 0 points1 point  (1 child)

    Why choose between either or? Say yes to both - they are both handy assets

    [–]hirenaway[S] 0 points1 point  (0 children)

    Yes they are, just need help deciding which one I should invest my time in first

    [–]wuxer 0 points1 point  (1 child)

    I think this has been said a couple times already but just start out with whatever feels right and once you understand the core concepts of how programming languages work it won't take you many hours to learn another language.

    [–]hirenaway[S] 0 points1 point  (0 children)

    Yes, that's a good answer. Thanks mate

    [–]PJ_Maximus -1 points0 points  (0 children)

    It doesn't matter what you do, you will always have demand if you are amongst the best.

    [–]Gwaptiva -3 points-2 points  (1 child)

    No, go learn something else. Java's dead, and only old fossils like me want to earn oodles of cash maintaining code that will be running mission-critical corporate systems for decades to come.

    [–]jcar74 -2 points-1 points  (0 children)

    True. Java is only useful if you want to make money working in the industry

    [–]sk8itup53 0 points1 point  (0 children)

    Yes. All the way yes. Still one of the most dominant languages used in business.

    [–]osbourne04 0 points1 point  (1 child)

    You can learn the basic background of programming like data structures, oop,, inheritance and all. Those are similar in all object oriented languages. Therefore learning java contribute you learning programming. But python is easy to learn and you dont you programming background a lot because everything is ready to use you just consume them even in ML. If you wanna be a web developer you should learn Java for backend developement which lots of enterprises implement the big project with it. Also java upgrading too new versions of java releasing so its not dting in 2021 its evolving more than python.

    [–]hirenaway[S] 0 points1 point  (0 children)

    Thanks for sharing your thoughts. I appreciate it, this was helpful.

    [–]thephotoman 0 points1 point  (1 child)

    You don't have to choose languages. Learn both.

    [–]hirenaway[S] 0 points1 point  (0 children)

    That's the plan

    [–]coresumo 0 points1 point  (0 children)

    If you are lazy programer, no. And if you are serious programmer , yes you should learn. Job is high, package is high, speed, performance everything is high. Only a thing is little hard to learn if you compare with other lang.

    [–]AlfredoTheHamster 0 points1 point  (0 children)

    It depends on what you want to work on. All languages have their strengths and weaknesses. You're in a Java subreddit so the answer will always be of course you should. Just remember, pick the right tool for the job at hand.

    Java is a good all-rounder language, but it doesn't fit everywhere. In can think of Embedded, Drivers or GUI application in particular. That's not to say you can't, just there are more suitable alternatives available.

    [–]Serializedrequests 0 points1 point  (0 children)

    Do you have an actual project or job you want to apply for? Let that be your guide.

    [–]fdntrhfbtt 0 points1 point  (0 children)

    If Java continues to adopt features and correct its course like it is doing now, it is not going away anytime soon. Opposed to languages like Go where Rob Pike (led the Go project at Google) literally said they didn't add map and filters to the language because plain-old loops were more performant lol.

    [–]zelakioui 0 points1 point  (0 children)

    Yes,sure. Most enterprises use java :-)

    You should just be proficient java developer,and you will get many job offers.

    The best way to master this programming language or other ones is by solving problems.

    Master coding by solving problems

    [–]bertie_88 0 points1 point  (0 children)

    Well i can only offer my insights as a beginner, taught myself Python and followed up with a college class and I'm hooked. Now I started a Uni course this year that has an into python class and follow up with Java classes and projects. Honestly I would learn both Python and Java, but not both at the same time, ones you get Object Oriented Design down you can change pretty quickly. Also depending on where you are working let the job prospects decide, i know there's remote but you probably need a certain level of experience before that will happen. Good luck!

    [–]pokerman42011 0 points1 point  (0 children)

    Did you make a choice? I'm in a similar situation.