Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

sohail49's avatar

Linux (Ubuntu) Or Windows

which platform is better for laravel development Ubuntu or Window

Now that Herd has been released for both window & Macs and Linux is still getting ignored is it a good idea to switch to Windows for laravel development but i don't know if just herd is enough

I am on Linux and I can easily connect to Digital Ocean, GitHub etc

how easy is that on Windows?

1 like
8 replies
LaryAI's avatar
Level 58

The choice between using Linux (Ubuntu) or Windows for Laravel development largely depends on your personal preference and the specific requirements of your development environment. Both operating systems have their pros and cons. Here's a breakdown to help you decide:

Linux (Ubuntu)

Pros:

  • Native Environment: Linux offers a native LAMP stack environment which is closer to the production environment where most Laravel applications are deployed.
  • Performance: Generally, Linux provides better performance and uses fewer resources than Windows.
  • Tooling and Compatibility: Most development tools and software that are used with Laravel (like PHP, Composer, and Node.js) are originally built for Unix-based systems, ensuring better compatibility and stability.
  • Command Line Interface: Linux has a powerful CLI, which is beneficial for developers who prefer terminal-based operations.

Cons:

  • Learning Curve: If you are not familiar with Linux, there might be a learning curve involved in understanding how to use the system effectively.

Windows

Pros:

  • User-Friendly Interface: Windows provides a more user-friendly graphical interface which is easier for beginners to understand and use.
  • Compatibility with Software: Some software, especially those used in corporate environments, are only available for Windows.
  • Laravel Development Tools: With tools like Laragon or WAMP, setting up a Laravel development environment on Windows has become much easier.

Cons:

  • Performance: Windows might not match the performance of a well-configured Linux machine, especially for server-side applications.
  • Native Environment Differences: Since most production environments for web applications are Linux-based, developing on Windows might lead to unexpected discrepancies.

Connecting to Services (Digital Ocean, GitHub, etc.)

  • Linux: Directly integrates with most cloud services and version control systems through the terminal.
  • Windows: With the introduction of Windows Subsystem for Linux (WSL), connecting to services like Digital Ocean and GitHub has become much easier and almost equivalent to Linux.

Conclusion

If you are already comfortable with Linux and it meets all your development needs, there is no compelling reason to switch to Windows just because of the availability of new tools like Herd. Linux provides a robust environment for Laravel development with better performance and compatibility. However, if you prefer the Windows interface or require specific Windows-only applications, modern tools like WSL and Laragon have significantly improved the Laravel development experience on Windows.

Ultimately, the best platform is the one that you are most comfortable with and that best fits your workflow and requirements.

1 like
Tray2's avatar

A *nix based system is always better that windows. Most of the servers hosting web applications are running Linux, so even if Herd (Which is awesome) doesn't run on Linux yet, I would still use Linux if I weren't running MacOS. There is a linux version of Valet, and that is what I would use.

3 likes
JussiMannisto's avatar

@Tray2 Windows kind of has Linux through WSL. I do most of my development in WSL images and don't miss anything. It think it's just a preference thing, not a better/worse thing.

2 likes
vincent15000's avatar

@JussiMannisto It's better to use a real Linux system rather than WLS.

Otherwise you can use a virtual machine (for example with VirtualBox) to work on Ubuntu from Windows. The advantage is that you can have one virtual machine per project and install the different versions of PHP, ... on each VM according to what you need.

psrz's avatar

@vincent15000 You can have as many wsl instances as you want. That's not a virtualbox only thing.

I have like 18 right now. I have one for mysql 5.7, one postgres 12, postgres 15, 16, one for elasticsearch, one for meilisearch, etc, then a bunch of others for different projects and php versions.

A wsl instance is much, much faster to load than a virtualbox vm.

Also, sharing resources between the wsl instances and host is trivial, as in you don't have to do anything. You have a pg running on port 5432, then all the other instances are able to connect to it, as well as from the host

I use phpstorm and I can access the code very easily from my windows, since I can browse the filesystem of any of my wsl instances like browsing local files.

For local development on windows, using wsl instances is vastly superior to using virtualbox imo

1 like
jlrdw's avatar

Larry is correct about the learning curve, but it's worth going through it and learning. Linux becomes easy once learned. Digital ocean has some good tutorials.

2 likes
Himmat's avatar

Linux is always good as bigger for development with expanded DevOps skills.

1 like

Please or to participate in this conversation.