Developing Web and WordPress on Windows
Using built-in features of Windows to improve your Web and WordPress development experience
This will be a multi-part article outlining why I develop on windows, how my Dev environment is configured and why
After over 5 years of being Self-Employed and over 3 years of being a full time developer, I have tested several different environments for developing on a windows platform. The first thing to discuss will be the number one question I receive almost always when this conversation starts,
“Why don’t you use a Mac?”
I had a Mac book Pro for over 4 years, it rocked. Best laptop ever, until it was running at almost 100 Celsius and to hot to touch. My desktop has always been a Windows machine, because I am or was a Microsoft Systems Administrator and I am a current Microsoft Professional Partner, focusing on Cloud services now. Being part of this network, or MPN as it is known, has some very nice advantages. The most beneficial is the Action Pack Subscription witch does cost $475 USD a year but you get a lot for that (Microsoft Action Pack). The key element is Windows Enterprise and not just 1 license but 10 licenses. Check the link for the other items including Office 365 and around $200 USD credit on Microsoft Azure, you get awesome value for money.
Now you don’t need Windows Enterprise, Win 10 Enterprise in my case, but with it you have Win-to-Go. This is another extremely awesome tool that allows you to create a portable version of Windows on a external USB drive (can use a certified flash but USB3 mSATA is best option). I use this a lot as it will run on almost any machine that will boot to USB drive, I have never found a machine this does not work on yet. Check Windows to Go for more info. Only available with Enterprise and that is only available through Action Pack or Volume License.
As I mentioned you can setup your environment, as I have, without Windows 10 Enterprise. Almost all systems I see purchased retail will include windows but it will most likely be Windows home witch is a very restricted version. The included chat will outline several items not in home edition that get you get in pro but the most important are Remote Desktop and Hyper-v (Hyper-V is not actually listed but Pro is minimum requirement).
Hyper-V is the Microsoft virtual desktop or Hyper-visor application that allows for you to run a computer on your computer. It is similar to VMware or Virtual box witch is heavily used with Vagrant. I was using Vagrant with Hyper-V for some time, will go over why I changed later on.
Remote desktop is fantastic if you get out of your office from time to time and need to get access to applications you don’t have on the laptop. I remote from my laptop to my desktop from the lounge room. I can use all my Dev apps with out having to install a second set and configure everything on my laptop. If you want to use in your local network there is a few minor settings (ask if you need direction) and you can access from outside your network across WAN with some configuration of the router, static IP not required. Again if you would like insight into that, happy to provide.
So the first thing to check is that you are running Windows 10. Just click the Start Button (Windows icon, bottom left corner), click settings and now click system. At the bottom click About and you will see the information similar to what have in the image below, under edition.
As you can see I am running hearty machine with a Xeon CPU (similar spec to a i7 4770k) and 32GB of Memory. I also have 2 x Samsung 850pro in RAID0, 1 x 250 Samsung 256GB 840 EVO and 4 x 1TB HDD in Windows Storage Space (Windows 10 version is very good). This machine is almost 4 years old but far from past its used by date. Try putting that spec into a Mac and price it, you will get a better idea why I prefer Windows based system.
Well that is first part of my Dev story, it has got a little long but when I talk tech I find it hard to stop.
I will be back again in a few days to go over Hyper-V setup and how I use it to run multiple instances of Ubuntu as well as a Git-Lab server virtually all on the one box with oodles of resources to spare. Thanks so much if you got this far and post any questions you have.