Windows 10 Development Enviroment Discussion

Brent W

Well-known member
I do not consider myself a heavy developer but over the last few years I have learned a lot and would like to take the next steps to improve not only my coding and SysAdmin skills but also my efficiency at doing both.

For the longest time I have simply coded and worked on my Macbook Pro which has been fine but not optimal. The small screen being the biggest problem.

With that said, I have recently built a brand new desktop computer that will now be my main computer for development with my Macbook as a fall back.

This thread is me wanting to hear what others are using for development and system administration on Windows 10. I don't care to get into a debate about what operating system is better. I do not want to dual boot. I do not want to run VMs. I want to have one environment that I can use for work and play.

Right now I plan on using:
I have a Dropbox 1TB plan that I plan to use to store all Development files so that if I need to work on something on my laptop I can.

As far as software goes, what else might I need to help me be more efficient? Are there any good tools out there to help me document commands I use frequently or keeping records of anything, in general?

Basically looking for any kind of advice on setting up a PHP based web development environment on Windows 10. Most, if not all of the software I will be working with will be Wordpress, XenForo and Laravel.

Thanks!
 
Get some versioning software like git or SVN. Assuming you're working alone, and you don't wanna invest into setting up a local git / git pro, you'd probably go with SVN or something else. For docs, I'd recommend either http://www.mkdocs.org/ or https://www.phpdoc.org/. Other than that, you could maybe insert pre-definied comments for e.g. getters and setters, if there is an option like that in PHPStorm.
 
If you're working with Laravel, it's worth reading up on Composer and getting a rough idea of what it does and how to use it.

Read up about Git and version control systems and then when you're comfortable with that, it'd be worth setting up an instance of GitLab to version control your projects (or use something like Github, etc).

HeidiSQL is also a good tool on Windows.
 
p4merge is a fairly decent free merge tool. Works well with git

Get some versioning software like git or SVN. Assuming you're working alone, and you don't wanna invest into setting up a local git / git pro, you'd probably go with SVN or something else.
Just say no to SVN. It is a horrible version control software, and teaches horrible habits for modern version control software.

SVN's "tree conflict" is a horrendous malfeature, and it's branch/merge handling is insanely bad.

Git with a decent GUI (ie not pure CLI) is fairly easy to use, and there are plenty of hosted git solutions for remote storage. You can always run your own Gitlab instance too.
 
Check out WSL: https://docs.microsoft.com/en-us/windows/wsl/install-win10

It makes it possible to run Linux native stuff inside Windows. No need to run Windows versions of command line tools, you can run bash and Linux versions.

One downside is it can't run services yet, so things like Apache and mySQL must be ran on Windows. But things like Git, Node and other development tools can be ran as Linux. Keep your development files in Windows system, from bash you can access them as /mnt/d/whatever instead of d:\whatever
 
If you're working with Laravel, it's worth reading up on Composer and getting a rough idea of what it does and how to use it.

Read up about Git and version control systems and then when you're comfortable with that, it'd be worth setting up an instance of GitLab to version control your projects (or use something like Github, etc).

HeidiSQL is also a good tool on Windows.
I moved away from Gitlab to using Phabricator, as it also has a robust set of project management and auditing tools. Phabricator also has the benefit of having support for SVN, Mercurial and Git (though I'm not sure why anyone would use SVN or Mercurial anymore).
 
Personally I prefer to use MacOS especially for PHP development but for Windows these are the tools I use when I have to.
  • Chocolatey (package manager)
  • Git (source control)
  • ConEmu (terminal emulator)
  • PhpStorm (IDE)
  • HeidiSQL (database client) soon to be replaced with TablePlus
  • Filezilla (FTP client)
  • Beyond Compare (diff tool)
  • Laravel Valet for Windows (dev web server)
 
Last edited:
After using Windows 10 for development for over half a year, I've ditched it and installed OSX on that computer. Development speed has improved a lot.

Legality of doing that is questionable, but its possible to install OSX on any computer. You can find instructions on https://www.tonymacx86.com which runs XenForo.

Took me about a day to set it all up on my computer. I've installed it about 2 months ago. Today OSX runs almost perfectly, the only problem is bluetooth sometimes randomly stops working (I have very cheap usb bluetooth, which might be source of problems) so I need to remove it from USB port and plug it back in.
 
Check out WSL: https://docs.microsoft.com/en-us/windows/wsl/install-win10

It makes it possible to run Linux native stuff inside Windows. No need to run Windows versions of command line tools, you can run bash and Linux versions.

One downside is it can't run services yet, so things like Apache and mySQL must be ran on Windows. But things like Git, Node and other development tools can be ran as Linux. Keep your development files in Windows system, from bash you can access them as /mnt/d/whatever instead of d:\whatever
I've been able to move from Linux to Windows by using the Subsystem For Linux. I couldn't work with Nginx but Apache2 works fine. The rest of the PHP working environment works as expected as well.
 
Back
Top Bottom