• 0

Java or php?


Question

I'm planning to learn either java or php. Which language do you think will give better employment opportunity? 

Link to comment
Share on other sites

Recommended Posts

  • 0
23 minutes ago, Fahim S. said:

Don't agree with the idea of if you can do Java, you can do JavaScript. If you program your JS like Java, your JS code would be awful - despite looking the same (at a very high level), they are completely different animals.

"If you program your JS like Java, your JS code would be awful"

 

I think that is just a subset of the following universal rule:

 

If you program your JS like JS your JS code would be awful.

 

But as long as we are victims of Google's propaganda and think we aren't absolutely crazy to think that coding an app inside a hypertext navigating document browser is a valid exercise in inefficiency then the cosmic joke monster in the sky says Javascript, you're not so bad because I own Google stock and Google does not own a desktop O/S so tricking the universe to think that a browser is the O/S is the kind of theatre of the absurd that anyone getting this far into this convoluted sentence will be very comfortable with if they have ever cobbled together an app out of chewing gum and HTML and CSS and Javascript.

Link to comment
Share on other sites

  • 0
2 hours ago, Fahim S. said:

Don't agree with the idea of if you can do Java, you can do JavaScript. If you program your JS like Java, your JS code would be awful - despite looking the same (at a very high level), they are completely different animals.

Not really what I meant... just that its not hard learn one after knowing the other.

Link to comment
Share on other sites

  • 0
1 hour ago, redfish said:

Not really what I meant... just that its not hard learn one after knowing the other.

Learning Java won't help you to learn JS quicker and vice verse. 

Link to comment
Share on other sites

  • 0
Just now, adrynalyne said:

Learning Java won't help you to learn JS quicker and vice verse. 

Quicker than what? My original point was only that once you know one programming language you know them all; you need to learn a few new things specific about the language but its easy to adapt from one to another. Talking to people who have not programmed before, a lot are under the impression that its the opposite and will be hard to move from one to another.

Link to comment
Share on other sites

  • 0
24 minutes ago, redfish said:

Quicker than what? My original point was only that once you know one programming language you know them all; you need to learn a few new things specific about the language but its easy to adapt from one to another. Talking to people who have not programmed before, a lot are under the impression that its the opposite and will be hard to move from one to another.

And that is where I don't entirely agree with you. If we are talking object oriented to object oriented, sure. When going from oop to a scripting language, it isn't quite the same. I'm sure some people can pick it up super quick but that isn't par for the course.  It gets worse the more dissimilar the languages are. 

 

Lets look at at it this way. Someone learns JS. Then they move to F#. Do you think they are gonna pick it right up?

 

So to say you know one, you know them all is way too much of a oversimplification. Sticking with like languages will always be super fast. When you diverge it becomes more difficult. 

Link to comment
Share on other sites

  • 0
On 7/11/2016 at 11:46 PM, Angel78 said:

I'm planning to learn either java or php. Which language do you think will give better employment opportunity? 

Avoid Java like the plague. 

 

The time for that was in 1998 before everyone and their brother has learned it and that skill was very short in demand. Java is on it's way out in all but very legacy ERP apps and bloated commercial web based apps with folks with 16 years experience who are desperate for a job!

 

You won't make it past the HR filter of 5 years experience for an entry level job etc. Also I want to mention every computer science program uses Java these days instead of C++ so you will be competing with college students WITH DEGREES all who know java well.

 

First learn

1. HTML

2. CSS

3. Javascript stuff.

 

After a month or two of this you can now learn something no one has years of experience in that is in high demand. Ruby on Rails is hot. Node.js is hot but I do not think it is going to last as it is silly where you manage call backs after call backs and you the web programmer become the OS by creating your own threads.  NGNIX is hot. So it typescript.

 

Actually learn some typescript.

 

Also what HR won't tell you is they use CMS content management software these days. So you need to know the basics unless you code complicated middleware in java on legacy systems. I know of no one writting a new website in Java anymore. That is so last decade compared to typescript and ruby on rails. 

 

Oh and PHP is easy to learn and you can do things quickly with it. However, like Java employers like PHP because they can find so many people cheap and then again you will be competing with those with many years of experience in 3rd world countries who can get the job done cheap. You do not want that

Link to comment
Share on other sites

  • 0
4 minutes ago, adrynalyne said:

And that is where I don't entirely agree with you. If we are talking object oriented to object oriented, sure. When going from oop to a scripting language, it isn't quite the same. I'm sure some people can pick it up super quick but that isn't par for the course.  It gets worse the more dissimilar the languages are. 

 

Lets look at at it this way. Someone learns JS. Then they move to F#. Do you think they are gonna pick it right up?

 

So to say you know one, you know them all is way too much of a oversimplification. 

It helps a lot the more syntactically similar they are... and Java and Js aren't totally different in that way. I wouldn't tell someone that its hard to learn one if you know another.

 

Conceptually, functional programming languages like F# aren't even hard to understand...  its just recursion... you just have to figure out what's going on with the syntax if the syntax isn't intuitive. I learned functional programming with Scheme, which is a lot simpler because all you have is parentheses, and not the type of weird constructions F# has.

Link to comment
Share on other sites

  • 0
On 24 July 2016 at 3:28 PM, redfish said:

It helps a lot the more syntactically similar they are... and Java and Js aren't totally different in that way. I wouldn't tell someone that its hard to learn one if you know another.

 

Conceptually, functional programming languages like F# aren't even hard to understand...  its just recursion... you just have to figure out what's going on with the syntax if the syntax isn't intuitive. I learned functional programming with Scheme, which is a lot simpler because all you have is parentheses, and not the type of weird constructions F# has.

Actually it doesn't help at all that JavaScript looks like Java. The Java programmer goes in thinking that they know what's what only to be tripped up by things like prototypal inheritance. Syntatically they might be similar, but their semantics are very different. 

Link to comment
Share on other sites

  • 0
3 hours ago, vhane said:

Actually it doesn't help at all that JavaScript looks like Java. The Java programmer goes in thinking that they know what's what only to be tripped up by things like prototypal inheritance. Syntatically they might be similar, but their semantics are very different. 

These distinctions are a bit like re-arranging the deck chairs on the Titanic compared to the Giant Gorilla of Insanity that is running an application inside a hypertext document viewer. Might as well come up with a scripting language to run games inside an accounting program while we are at it. And maybe we can run accounting programs inside a Registry Scanner. It's all Turing Complete and it makes Google happy so maybe one day in the future Historians will classify Javascript in the same category with the French Absurdist Movement... 500 years from now the time periods will be about the same and Historians will scratch their heads in confusion in equal amounts.

 

Link to comment
Share on other sites

  • 0
12 minutes ago, DevTech said:

These distinctions are a bit like re-arranging the deck chairs on the Titanic compared to the Giant Gorilla of Insanity that is running an application inside a hypertext document viewer. Might as well come up with a scripting language to run games inside an accounting program while we are at it. And maybe we can run accounting programs inside a Registry Scanner. It's all Turing Complete and it makes Google happy so maybe one day in the future Historians will classify Javascript in the same category with the French Absurdist Movement... 500 years from now the time periods will be about the same and Historians will scratch their heads in confusion in equal amounts.

 

You can run JavaScript applications on a server without a browser and without using the DOM. Maybe you could do some research on Node.js?

Link to comment
Share on other sites

  • 0
12 minutes ago, Fahim S. said:

You can run JavaScript applications on a server without a browser and without using the DOM. Maybe you could do some research on Node.js?

I will assume the question itself is rhetorical for dramatic effect.

 

Like I said (or implied) you can run any Turing Complete language anywhere for any reason. But just like the people who built the first nuclear weapon sitting there in front of them in all it's shiny metallic glory of technology, the question "Can I do this?" always trumps "Should I do this?"

 

The field of programming computers has now become so large that it is subject to all the social forces, branding forces, commercial forces and lemming forces that pervade consumerist fashion in the mainstream world.

 

Node is a C++ server that fires up a browser scripting engine to provide a server side absurdity to balance the client side absurdity so that some sort of mental aesthetic symmetry effect can be put into place like the satisfying clunk sound of the door of an expensive car.

 

Taken to it's logically absurdist extreme, you get Isomorphic Javascript.

 

These abstract flights of fancy pervade the industry to an increasing degree and due to the relative ease of building complex abstract castles in the sky endemic to the medium, we only need to wait 5 years or so to see even crazier inventions catch on as the next Hipster thing.

 

It is hard enough to find enough programmers to feed the industry and so the hard rigorous training of Science in "Computer Science" is the first historical element to be discarded. Without "Double Blind" rigidly conducted tests that social processes require, the adoption of all these supposedly technical things will depend on the social ocean waves of what is Hip and what is Not Hip as the new technical criteria.

 

What remains, it what we who swim in the industry can simply find to be entertaining in some way. All of these systems are levels of complexity constructed by humans and should never be confused with the complexity of discovery in revealing the next secret of Nature. I'm not sure if we deserve an "Achievement Earned Badge" when the constructs of computer programming layer upon layer reach the same complexity level of String Theory but we are pointed directly at that goal so I might as well enjoy the ride!

 

Link to comment
Share on other sites

  • 0
1 minute ago, DevTech said:

I will assume the question itself is rhetorical for dramatic effect.

 

Like I said (or implied) you can run any Turing Complete language anywhere for any reason. But just like the people who built the first nuclear weapon sitting there in front of them in all it's shiny metallic glory of technology, the question "Can I do this?" always trumps "Should I do this?"

 

The field of programming computers has now become so large that it is subject to all the social forces, branding forces, commercial forces and lemming forces that pervade consumerist fashion in the mainstream world.

 

Node is a C++ server that fires up a browser scripting engine to provide a server side absurdity to balance the client side absurdity so that some sort of mental aesthetic symmetry effect can be put into place like the satisfying clunk sound of the door of an expensive car.

 

Taken to it's logically absurdist extreme, you get Isomorphic Javascript.

 

These abstract flights of fancy pervade the industry to an increasing degree and due to the relative ease of building complex abstract castles in the sky endemic to the medium, we only need to wait 5 years or so to see even crazier inventions catch on as the next Hipster thing.

 

It is hard enough to find enough programmers to feed the industry and so the hard rigorous training of Science in "Computer Science" is the first historical element to be discarded. Without "Double Blind" rigidly conducted tests that social processes require, the adoption of all these supposedly technical things will depend on the social ocean waves of what is Hip and what is Not Hip as the new technical criteria.

 

What remains, it what we who swim in the industry can simply find to be entertaining in some way. All of these systems are levels of complexity constructed by humans and should never be confused with the complexity of discovery in revealing the next secret of Nature. I'm not sure if we deserve an "Achievement Earned Badge" when the constructs of computer programming layer upon layer reach the same complexity level of String Theory but we are pointed directly at that goal so I might as well enjoy the ride!

 

Thank you for the long and largely irrelevant rant. Where exactly in a Node.js application does a "hypertext document viewer" get invoked?

Link to comment
Share on other sites

  • 0
2 minutes ago, Fahim S. said:

Thank you for the long and largely irrelevant rant. Where exactly in a Node.js application does a "hypertext document viewer" get invoked?

Thank you. The industry has a problem that is getting larger, not smaller. I'm sure someone else could describe it much better than I.

 

If describing a disturbing trend is irrelevant (and I don't think it is of course) then the details of yet another Turing Complete invention of someone's mind is equally irrelevant. If next year, someone invents a server to run IOS to capture the programming imagination of millions of Apple App developers, then the details of sucking data off the server and reformatting it for presentation via the new amazing Server Side Objectively C Swift Edition will be just as exciting or irrelevant depending as always on your Point Of View.

 

If only I hadn't misplaced my Point-Of-View gun...

 

Link to comment
Share on other sites

  • 0
2 minutes ago, DevTech said:

Thank you. The industry has a problem that is getting larger, not smaller. I'm sure someone else could describe it much better than I.

 

If describing a disturbing trend is irrelevant (and I don't think it is of course) then the details of yet another Turing Complete invention of someone's mind is equally irrelevant. If next year, someone invents a server to run IOS to capture the programming imagination of millions of Apple App developers, then the details of sucking data off the server and reformatting it for presentation via the new amazing Server Side Objectively C Swift Edition will be just as exciting or irrelevant depending as always on your Point Of View.

 

If only I hadn't misplaced my Point-Of-View gun...

 

You didn't answer my simple question...

Link to comment
Share on other sites

  • 0
16 minutes ago, DevTech said:

Node is a C++ server that fires up a browser scripting engine to provide a server side absurdity to balance the client side absurdity so that some sort of mental aesthetic symmetry effect can be put into place like the satisfying clunk sound of the door of an expensive car.

Why would anyone willingly write server-side code in Javascript is beyond me. It's bad enough using sane languages. 

Link to comment
Share on other sites

  • 0
5 hours ago, vhane said:

Actually it doesn't help at all that JavaScript looks like Java. The Java programmer goes in thinking that they know what's what only to be tripped up by things like prototypal inheritance. Syntatically they might be similar, but their semantics are very different. 

Yea, but, its not a big deal to learn the differences. How long do you think adjusting to Js takes? Just look up a webpage on how JavaScript handles this type of stuff.  

 

As for whether it helps, yes, it is much simpler to go from Java to Javascript than Java to F# ... what are you arguing here...

Link to comment
Share on other sites

  • 0
2 minutes ago, Fahim S. said:

You didn't answer my simple question...

All joking aside, I have not interacted enough with you to know if you are debating or interacting.

 

There are bound to be differences both technical and historical in implementing Javascript on the server vs the client and in fact there would be many more ways I am sure we can both imagine to implement serverside Javascript including a "real" Javascript server.

 

So your question sounded more like a "debate snipe" than any interesting technical exploration.

 

No matter how I perceive the motivation behind a lot of the tech, it is still very interesting like one of those Beatle/Scarab collections in a museum, where one is simply amazed at all the colors and variations. Emscipten takes C++ and compiles to Javascript to run Doom in a browser. That is a whopping giant extra level of absurd abstraction yet at the same time my neurons just cycle backed to fascinated!

 

Bridge.NET is a more business focused take on C# to Javascript. With Xamarin and UWP, adding in some layer on Bridge.NET might yield the final evolution on a single codebase everywhere. But when you map out the execution path in your head, the "absurdity" word comes to mind yet again. But it is so beautifully absurd that I want to see it!

 

In the end, the technical aesthetics are simply Point of View in terms of making an entertaining and vibrant ecosystem. Node is as successful as anything in the last few years at doing that. And Electron is some sort of functional inverse of Bridge.NET which is so unlikely a mechanism for a desktop application that it reaches some new level of art. (and practical enough in the form of Atom and VS Code)

 

Link to comment
Share on other sites

  • 0
2 hours ago, DevTech said:

All joking aside, I have not interacted enough with you to know if you are debating or interacting.

 

There are bound to be differences both technical and historical in implementing Javascript on the server vs the client and in fact there would be many more ways I am sure we can both imagine to implement serverside Javascript including a "real" Javascript server.

 

So your question sounded more like a "debate snipe" than any interesting technical exploration.

 

No matter how I perceive the motivation behind a lot of the tech, it is still very interesting like one of those Beatle/Scarab collections in a museum, where one is simply amazed at all the colors and variations. Emscipten takes C++ and compiles to Javascript to run Doom in a browser. That is a whopping giant extra level of absurd abstraction yet at the same time my neurons just cycle backed to fascinated!

 

Bridge.NET is a more business focused take on C# to Javascript. With Xamarin and UWP, adding in some layer on Bridge.NET might yield the final evolution on a single codebase everywhere. But when you map out the execution path in your head, the "absurdity" word comes to mind yet again. But it is so beautifully absurd that I want to see it!

 

In the end, the technical aesthetics are simply Point of View in terms of making an entertaining and vibrant ecosystem. Node is as successful as anything in the last few years at doing that. And Electron is some sort of functional inverse of Bridge.NET which is so unlikely a mechanism for a desktop application that it reaches some new level of art. (and practical enough in the form of Atom and VS Code)

 

And still the question remains unanswered...

 

The reality is that JavaScript is the de facto scripting model in the browser. It's not a great language, and could quite easily be described as being a bit nasty in places - I will happily admit that.

 

Given this, and therefore the fact that at least one tier if the application will be written in the language, don't you believe that there is value in rationalising the hodgepodge of languages required to build a modern web application by one, by using JavaScript on the server also? Do you see any value in being able to use the same business logic at two tiers of the application without having to express it in two different languages? Keeping it aligned in two different languages etc?

 

In my world less code is, usually, better than more code. The same code is, mostly, better than the same function written twice etc etc.

 

Theory is all well and good, but in a commercial world theory will only get you so far. 

 

I personally am not here to debate theory. I have been round the block enough to know that they are just tools to achieve a task.

Link to comment
Share on other sites

  • 0
4 hours ago, DevTech said:

These distinctions are a bit like re-arranging the deck chairs on the Titanic compared to the Giant Gorilla of Insanity that is running an application inside a hypertext document viewer. Might as well come up with a scripting language to run games inside an accounting program while we are at it. And maybe we can run accounting programs inside a Registry Scanner. It's all Turing Complete and it makes Google happy so maybe one day in the future Historians will classify Javascript in the same category with the French Absurdist Movement... 500 years from now the time periods will be about the same and Historians will scratch their heads in confusion in equal amounts.

 

If you look at the context of the post that I was replying to, you will find that I'm arguing that JavaScript as a language is pretty damn different from Java in actual use, even if the syntax is similar. I'm not sure what triggered your rant, since I didn't venture an opinion on the merits of JavaScript as a language.

Link to comment
Share on other sites

  • 0
2 hours ago, redfish said:

Yea, but, its not a big deal to learn the differences. How long do you think adjusting to Js takes? Just look up a webpage on how JavaScript handles this type of stuff.  

 

As for whether it helps, yes, it is much simpler to go from Java to Javascript than Java to F# ... what are you arguing here...

I'm specifically arguing that knowing Java doesn't help you learn JavaScript. You might be able to muddle through and ajaxify a web page, but you certainly wouldn't know how to program in the large with the language. There is knowing syntax and then there's knowing semantics. I'd argue that knowing a language is more than just knowing syntax.

 

Having recently picked up JavaScript again after years of neglect, I would say that writing modern JavaScript feels more FP than OOP. Just yesterday I presented React/Redux/ES2015 to some of my colleagues who are primarily Java and Scala developers, and the feedback was that these days JavaScript is more towards the Scala end of the spectrum. It looks nothing like Java code, and feels even more different.

 

My actual, recent experience learning ES2015 tells me that knowing Java doesn't help as much as you'd think. Knowing Scala is what allowed me to get up to speed faster.

Link to comment
Share on other sites

  • 0
1 hour ago, vhane said:

I'm specifically arguing that knowing Java doesn't help you learn JavaScript. You might be able to muddle through and ajaxify a web page, but you certainly wouldn't know how to program in the large with the language. There is knowing syntax and then there's knowing semantics. I'd argue that knowing a language is more than just knowing syntax.

 

Having recently picked up JavaScript again after years of neglect, I would say that writing modern JavaScript feels more FP than OOP. Just yesterday I presented React/Redux/ES2015 to some of my colleagues who are primarily Java and Scala developers, and the feedback was that these days JavaScript is more towards the Scala end of the spectrum. It looks nothing like Java code, and feels even more different.

 

My actual, recent experience learning ES2015 tells me that knowing Java doesn't help as much as you'd think. Knowing Scala is what allowed me to get up to speed faster.

Well all I've been saying is that its relatively easy to go from one programming language to another, so it shouldn't be that much of a concern which one you start with. I suggested Java is a good start just because its a good language to learn with, which is why universities still teach in Java. If you want to expand from that, it'll take you a short time to learn what you need to learn in order to use a new language. In this case Js.

 

I think some people make this too complicated !

 

So functional languages like F# were mentioned. I said the biggest problem with F# is figuring out its syntax from the perspective of someone who is coming from Java. I think this is true.. ! and there are better functional languages to start with for the sake of learning functional programming...

 

Comparatively, if you know Java and want to learn Js, just look up on the web "differences in java vs javascript" or look at some real world code for prototypes and that will get you started pretty quickly. I didn't say Java is better than Scala or Typescript or anything else in that regard. I'm just making the point that its relatively easy to go from one language to another.

Link to comment
Share on other sites

  • 0
On 7/12/2016 at 0:49 AM, Danielx64 said:

I would say PHP, java is on it way out being honest.

You seem to love being wrong, all the time

 

At work we have tons of opening for Java AND Java script devs, it's not going anywhere, no matter what the FUD some of you insist on spewing 

We do also need a lot of DB types, but yeah, Java ans Script will get you a damn good job in health care 

Link to comment
Share on other sites

  • 0
On 2016-07-23 at 11:00 PM, DevTech said:

But as long as we are victims of Google's propaganda and think we aren't absolutely crazy to think that coding an app inside a hypertext navigating document browser is a valid exercise in inefficiency then the cosmic joke monster in the sky says Javascript, you're not so bad because I own Google stock and Google does not own a desktop O/S so tricking the universe to think that a browser is the O/S is the kind of theatre of the absurd that anyone getting this far into this convoluted sentence will be very comfortable with if they have ever cobbled together an app out of chewing gum and HTML and CSS and Javascript.

... but it works. It may be crazy inefficient and ugly but it works everywhere, so when you're trying to make as much money as quickly as possible, that's what you're going to use. Our technology is unfortunately driven more by accidents of history and circumstance than rational design choices. I resent this just as you do, but that's the world we live in.

Link to comment
Share on other sites

  • 0
On 7/12/2016 at 0:59 AM, adrynalyne said:

Java is on its way out? LOL.

Java is on it's way out, at least on the web. It's used simply to maintain legacy websites. New sites aren't built on JSP. I personally would never recommend a new developer to go down the path of Java, nor PHP for that matter, if he wants to be ahead of the curve. 

Link to comment
Share on other sites

  • 0
31 minutes ago, Above The Gods said:

Java is on it's way out, at least on the web. It's used simply to maintain legacy websites. New sites aren't built on JSP. I personally would never recommend a new developer to go down the path of Java, nor PHP for that matter, if he wants to be ahead of the curve. 

Source ? No data I have seen out there supports what you are saying. You are quite one of the only people in this thread saying that except @Danielx64 <snip>

  • Like 2
Link to comment
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.