User Tools

Site Tools


Sidebar

Dave Orme muses about agile and functional programming.

My current work emphasizes SOA applications using Scala, Kubernetes, and AWS with a React-based SPA front-end. I'm also interested in progressive web applications and developer tools.


Blog

Scala, Clojure, and FP

Agile

The Cloud

Data-First Development

Older work

Coconut Palm Software home


Donate Bitcoin:

1Ecnr9vtkC8b9FvmQjQaJ9ZsHB127UzVD6

Keywords:

Kubernetes, Docker, Streaming Data, Spark, Scala, Clojure, OSGi, Karaf, GCP, AWS, SQL

Disclaimer:

Everything I say here is my own opinion and not necessarily that of my employer.

cloud:why_to_consider_developing_on_windows

This is an old revision of the document!


Why to consider Windows for distributed Docker / Kubernetes software development

Over the past five years my primary software development laptop has always been a Macbook Pro. And I've mostly really enjoyed the experience. However, this winter I needed a new development laptop again and chose an MSi gaming laptop running Windows 10 Professional instead of a Macbook. Why?

I thought that sharing my experience might be useful to someone else so I've decided to blog it here.

What I haven't been able to do on a Mac

Some of the reasons I chose to move back to Windows have to do with things I haven't been able to do (or simply can't achieve) using a Mac. These are:

  1. Relearn IDE keybindings in their MacOS forms
  2. Obtain a laptop with more than 16 gigabytes of RAM
  3. Obtain a laptop with a high-end GPU for 3d graphics development

The first concern is purely personal. Some readers will have been using Macs for a long time and already be accustomed to the Mac keybindings for their favorite text editors and/or IDEs.

For me, however, I had been using Linux as my main development environment since 1996, which largely shares its key bindings with Windows. In five years of using a Mac, I have not been able to achieve the same keyboard speed in my favorite software development environments compared with using Linux or Windows.

I have tried various Mac keyboard hacks. All of them get me part of the way to speed; none of them have gotten me all the way there.

The second and third concerns were the deal-breakers for me.

For not much more money than a high-end Macbook Pro, one can buy an MSi with 64 gigabytes of RAM and a very nice GPU. Why do I care?

Because Docker is the new OSGi and Kubernetes looks to be the next standard distributed O/S

In a new world of containerized applications, RAM is more important than ever. The single largest factor limiting what I can run directly on my laptop is RAM.

64 Gigabytes of RAM lets me run tens of servers inside Kubernetes on Windows. Linux is still my main development O/S. I just host it under Windows.

I'm experimenting with building a portable development environment inside a Docker pod inside Kubernetes. If that experiment succeeds, I'll have a portable development environment that will work anywhere Docker and Kubernetes run. Including a Mac, ironically.

Virtual Reality and Augmented Reality are coming into their own, and the best tools are on Windows

WebVR is a thing. WebGL is a thing.

A-Frame makes WebVR dirt easy for web developers.

Unity is one of the best VR and Augmented Reality toolkits–and it runs on Windows.

cloud/why_to_consider_developing_on_windows.1492037410.txt.gz · Last modified: 2017/04/12 18:50 by djo