Earlier quoted context omitted.
I think the bubble has to do with purists vs pragmatists. I once joined a Java team as a front-end dev (I'm full-stack). They would do the back-end. They had done everything by the book perfectly. Following all the best practices. But the back-end wasn't doing what it needed to do by a long shot. They were stuck. Meaning I couldn't make progress. So I cooked up a simple (temporary) PHP back-end so I could easily buil…
Java guys didn't ship much at my first real gig. Lots of tooling time and watching movies or discussing Star Trek. I shipped apps in 2 weeks myself that the company got paid ~70k for. And we kept my clients.
PHP in 2019
471–480 of 489 posts
Re: PHP in 2019
#472Re: PHP in 2019
#473Writing with PHP is better than ever... and getting better and better. And... you don't need too worry too much about the server, or the request lifecycle, or networking... you just write your app, in a language which is, in my opinion , going in the right direction with a stronger slant towards OOP and types. Of course it's still entirely possible to write garbage PHP code... but it's possible to write garbage in an…
My issue with modern PHP is that it's essentially becoming Java. And with the JVM and the Java ecosystem, what is the compelling reason to not just pick Java at this point? With Java you are basically writing exactly what you would be writing with PHP, except with more language features and the ability to opt into other languages on the JVM like Kotlin and Scala. The modern additions are fantastic for projects and te…
I really do need to get over all of that and give it another shot.
Re: PHP in 2019
#474Earlier quoted context omitted.
> Flip those. Nope. That's just incorrect. From Experian to JPMorgan Chase to Cambia Health to Amazon, Java is the typical case for every project. Look at stream processing tools at netflix via any given youtube presentation about stream processing. There are entire tooling segments where .NET is absent, despite their quality tools that run on Windows. Nobody trusts Windows by default and this has mortally wounded .N…
Having done a lot of .NET programming at JP Morgan Chase, allow me this Marshall McLuhan in Annie Hall moment ... I have no idea which language is more popular, but I can certainly list 1,000+ companies including the majority of the Fortune 500 who use .NET in the enterprise.
Re: PHP in 2019
#475Earlier quoted context omitted.
Except PHP is not Java, and it never can be. What is PHP's multithreading model again? Hotspot VM? NIO? I'm sure someone will chime in and cite something similar in PHP, but the comparison will be laughable in reality.
>What is PHP's multithreading model again Since it's inception, the PHP implementation hasn't been threadsafe and since, the way of doing paralellism has been process forking. Later iterations where released with support for long-lived processes and threads but it's still not officially "stable" since again, historically the model of process forking made the ecosystem take for granted non-memory safety. On the other…
Java web servers are multithreaded. Java has JIT. Java has a Hotspot VM with JIT optimizations at runtime.
This is why companies like Google and Amazon run their stacks on Java. It scales. Facebook had to write their own fork of PHP due to performance issues.
Re: PHP in 2019
#476Earlier quoted context omitted.
>What is PHP's multithreading model again Since it's inception, the PHP implementation hasn't been threadsafe and since, the way of doing paralellism has been process forking. Later iterations where released with support for long-lived processes and threads but it's still not officially "stable" since again, historically the model of process forking made the ecosystem take for granted non-memory safety. On the other…
PHP scales better than Java? Java is only suited for small to medium scale? That's absurd and you are completely wrong. Java web servers are multithreaded. Java has JIT. Java has a Hotspot VM with JIT optimizations at runtime. This is why companies like Google and Amazon run their stacks on Java. It scales. Facebook had to write their own fork of PHP due to performance issues.
Never said that. What I said was that in the small to medium scale Java was obviously more performant because of the persistent instance & multithreaded model. But beyond that it really is no longer true. The immutable "shared nothing" process forking model of PHP scales horizontally very easily.
>Java web servers are multithreaded
this really is a disadvantage when scalling. The default linux thread stack is 1024k for 64-bit VMs, can't find what's the minium if you tweak it enough. You can see how bad that scalles to thousands of concurrent requests.
And then there's containerization and microservices, where each instance needs a full JVM.
>This is why companies like Google and Amazon run their stacks on Java
You can make anything scale with Google or Amazon budgets.
Again, just listing some pros and cons of both approaches, both of which I think are not even the best.
Re: PHP in 2019
#477Earlier quoted context omitted.
PHP scales better than Java? Java is only suited for small to medium scale? That's absurd and you are completely wrong. Java web servers are multithreaded. Java has JIT. Java has a Hotspot VM with JIT optimizations at runtime. This is why companies like Google and Amazon run their stacks on Java. It scales. Facebook had to write their own fork of PHP due to performance issues.
>Java is only suited for small to medium scale? Never said that. What I said was that in the small to medium scale Java was obviously more performant because of the persistent instance & multithreaded model. But beyond that it really is no longer true. The immutable "shared nothing" process forking model of PHP scales horizontally very easily. >Java web servers are multithreaded this really is a disadvantage when sca…
Are you telling me that you run a process pool of thousands of PHP instances on a single machine? I hope not.
Your notion that forked = better is outdated. Running processes has overhead, even with read only shared mem. Micro processes are the way to go, and are being embraced by newer languages. You get min mem and context switching overhead, along with the parallelization of running on multiple cores.
Even so, threads are still going to be lighter weight than forking new "heavy weight" (non micro) processes.
And this doesn't even get into the more efficient compilation. PHP has no JIT yet. There's overhead for type inference. Etc etc
Re: PHP in 2019
#478Earlier quoted context omitted.
>Java is only suited for small to medium scale? Never said that. What I said was that in the small to medium scale Java was obviously more performant because of the persistent instance & multithreaded model. But beyond that it really is no longer true. The immutable "shared nothing" process forking model of PHP scales horizontally very easily. >Java web servers are multithreaded this really is a disadvantage when sca…
You don't seem to understand the basics of how Java web containers work. The thread stack size is irrelevant in most cases. You're going to be using a thread pooled server anyway to handle requests. Conceptually this is no different than using a forked model. You just use a pool of threads instead of processes. Are you telling me that you run a process pool of thousands of PHP instances on a single machine? I hope no…
You're beating a strawman here. Nowhere did I make the claim that it was better. I even said multithreading is more performant. The only claim I make is that immutable and shared nothing model of PHP servers makes horizontal scalling more straightforward.
>You're going to be using a thread pooled server anyway to handle requests
That doesn't take away the fact that n parallel requests will require n threads.
>And this doesn't even get into the more efficient compilation. PHP has no JIT yet. There's overhead for type inference. Etc etc
I don't make any claims here either. Of course Java is faster here. My point was specifically about which model of concurrency and paralellism is better for server IO.
Re: PHP in 2019
#479Earlier quoted context omitted.
Having done a lot of .NET programming at JP Morgan Chase, allow me this Marshall McLuhan in Annie Hall moment ... I have no idea which language is more popular, but I can certainly list 1,000+ companies including the majority of the Fortune 500 who use .NET in the enterprise.
I have worked for all the companies mentioned, of course. Having done a lot of Java programming at JP Morgan Chase, I can confidently say that Java far outstrips .NET usage. Orders of magnitude.
What of it.
Re: PHP in 2019
#480Earlier quoted context omitted.
I have worked for all the companies mentioned, of course. Having done a lot of Java programming at JP Morgan Chase, I can confidently say that Java far outstrips .NET usage. Orders of magnitude.
And I can say the opposite is true at Credit Suisse and the Royal Bank of Canada and WalMart and Toyota and Chevron and AT&T ... What of it.
You can say that. Not sure what it has to do with the subtopic of JPMC backend, in context.
To your new point (which was the original contention), language use is difficult to track, in aggregate. To assert that Java is more used than C# would require some evidence. Every metric from any public source (eg https://githut.info/ to http://lmgtfy.com/?q=Language+popularity which is a different way to slice it), doesn't place C# in the top 5. This is because it's not used more widely than Java, precisely because the .NET runtime resulted in an inferior VM, but also because the ecosystem is less stable, imo. I'm confident that some form of C# will outlast Microsoft.