Development setup for general programming

Hi guys,

I am not sure if this is the correct category, but I was interested in your experiences regardng y.
So I purchased new cpu and I am setting up a new dev setup.
I was mainly considering between windows + docker setup vs windows dual boot setup, windows is mainly for gaming.

Can only recommend using docker for your local/dev env. I’m doing a lot of older PHP and frontend work in addition to Clojure/Script, so having dedicated build and run containers which I can just mount volumes into makes all the dependency and local machine setup a breeze (and you get version control for Dockerfiles).

I’d go for dual boot Windows (gaming like you said) / *nix (docker host) :slight_smile:

Docker is great for running a variety of “services” that you might need – I use it on my Mac for MySQL, Redis, MongoDB, and Discovery (a commercial search engine – I have a script to build the Docker image locally). That will also encourage you to automate/script the build of your dev setup (DB migration scripts etc).

One thing to consider now, with Windows 10 and the Windows Subsystem for Linux, is using the stock Ubuntu shell from the Windows Store (or one of the other flavors) instead of going dual boot. I do all of my Clojure development in the Ubuntu bash environment under WSL, in terms of running JVM and other processes (Boot, Redis, MongoDB etc), and I use Atom/ProtoREPL native on the Windows side to edit all the code. I plan to switch to Docker on the Windows side to run services at some point (my laptop runs Windows Home which doesn’t support Docker, but my next Windows machine will run Windows Pro).

If I was still using Emacs, I’d probably run it on the bash side these days. I use to run the native Windows version of Emacs, before I switched to Atom (about a year ago).

I’ve been a long-time Mac user – since the early 90’s and System 6 days! – and back then I ran Tenon Intersystems’ MachTen BSD on my Macs as a “parasitic” application: so I had the GUI of the Mac and all Mac apps as well as a full Unix shell (and X11 if I wanted). I stayed with that setup through System 7.5.2 and then skipped 8 and 9 and jumped to OS X (10.1) which gave me the same benefits. I’ve been using Windows since 3.1 as well, but never full-time, until Windows 8 where I had a Dell laptop running Windows and my main dev desktop still running OS X. I feel that Microsoft has really innovated lately and Apple has lost steam, so at this point I’m running Windows 10 (Fast Ring Insider builds) on both my Dell laptop and, via Parallels Desktop, on my 27" iMac. On the laptop, I use WSL for Clojure development and services. On the Mac I’m still using Mac Terminal and Docker, but I expect to replace the iMac with a Microsoft Surface machine at some point, so I’ll be WSL full-time then, with Docker.