I've been using PHP for over 15 years and always liked it. There is no other webserver language that's so easy to use and so deployable while still being fast.
But for larger projects the available frameworks are just okayish. I think Symfony is closest to what a good framework should be. But every time I use it I wish it would be like .NET
Today .NET core is also available on Linux and very easy to deploy so I don't think I will ever start a big project in PHP again.
But for quick smaller and CMS[1] projects PHP is still my goto language.
What if you’re looking for a great way into .net web dev on Linux? I’ve been struggling to find a good guide that combines dev env, deployment and a good web framework. Any advice?
I have quite a bit of xp with Python (Django/flask) and less with php.
Most can be done via de command line but an editor like VisualStudioCode could be handy. Personally I use Jetbrain's Rider as IDE on Ubuntu.
Deploying can be done via the `dotnet publish` command. But tools like Teamcity can also be very useful. When you built a webapp it includes the Kestrel webserver. So it is just a matter of running the app and navigating to the port it listens to.
.NET core is a complete set of tools to create console apps, (web)APIs and webApps. This includes the .NET framework.
.net has proper debugging working compared to node.js, has great standard library, can develop 3d games, servers, mobile apps, web apps, machine learning ,desktop apps and even (some) embedded devices.
Great instrumentation and support with quality updates from MS and the community.
The IDE is superb and free (community edition at least), drag & drop desktop & mobile app development (if you wish).
I've worked with PHP for about 4 years (5.x - 7.0 days), .net for the next 6 years and node.js for the last 1 year, and every day i work with node.js i wish i could switch everything to .net because it's sooo much better & smoother experience, and everything just works together so well.
Honestly, as a PHP hater that got much more experience in .Net than PHP, it both were the only options, I would go with Laravel without any doubt.
C# is an inflexible language that just can not have a modern web framework on it. MS extended it with hard-coded functionality to closely emulate a framework and did an ok job on it, but it emulates a closed down, inflexible framework that is stuck in time. It's not a disaster, but it doesn't compare to the stuff that has kept evolving for the last decade.
But for larger projects the available frameworks are just okayish. I think Symfony is closest to what a good framework should be. But every time I use it I wish it would be like .NET
Today .NET core is also available on Linux and very easy to deploy so I don't think I will ever start a big project in PHP again.
But for quick smaller and CMS[1] projects PHP is still my goto language.
[1] If you are looking for a great PHP CMS: https://processwire.com/