Mise en place - Duex

by Jason on

Part Duex
(Better, Faster, Stronger… Silverier?)

An update to Mise en place development environment

Mise en place (or, literally translated, everything in its place) is a culinary concept that we would do well to practice in software development. Like starting on a woodworking project with a cluttered shop or painting without first prepping the canvas, you’re setting yourself up for failure without first starting from a place where all your pre-requisites are available.

So what’s changed in 4 years…

When I last addressed this my daily routine consisted of creating C# applications and web applications with an occasional foray into PHP or JavaScript applications in Adobe AIR. 5 years later and I still do a heavy bit of C# however the majority of my time is spent enjoying JavaScript. There were times in the past where I made the erroneous (and misinformed) choice of $ over functionality and used PHP where I could have used C#. For other things there were times when I would use Adobe AIR to craft some simple cross-platform desktop application that, given the same constraints, today I’d probably choose nwjs or if I was convinced I couldn’t get by with pure JavaScript, C#.

Essentials

  • A decent JavaScript editor. There are so many great ones to choose from now. Visual Studio excels at JavaScript but sometimes you just want something that’s a bit lighter. I’ve found Brackets to be a good choice on Windows or, when on Mac, SublimeText or WebStorm.
  • Microsoft Visual Studio. Visual Studio remains a joy to work with. If you’re not fortunate enough to be provided a Pro or other commercial license, get Community, it’s awesome.
  • Node.js (of course)
  • Git
  • Virtual Machines

Nice to Haves

  • Database administration. From MongoDB to the growth in usage of PostgreSQL the number of database technologies a developer might need to work with on a typical project has grown. These days I still keep Microsoft SQL Management Studio around (and it gets heavy usage) but since it’s just as likely I’ll need something else this is no longer a must have.
  • A decent image editor: my usage of this has dropped dramatically and I rarely find myself needing to produce anything with these tools. But when you need one it can be a huge time suck to find or install.
  • Patterns was recommended to me by a colleague a year or two ago and I’ve been surprised how much I’ve come to use it.
  • Fiddler (Windows) or Postman (Mac).
  • I’ve alluded to it throughout the post: OS X. In the past I enjoyed working in Windows primarily and was a staunch advocate of the ecosystem. I begrudgingly switched to Mac when offered by my employer (all-the-while making snide uninformed comments along the way) and over a surprisingly short amount of time grew to love it. Windows is now usually in a VM unless I just don’t have access to a Mac. “Finder” and window management is a joke in OS X compared to Windows (or Linux) but it’s enough of a *nix system to keep me happy and productive while not interfering with my productivity with arbitrary (or whimsical) user interface flaws.

Well that’s it for this!

See you in 4 or 5 years for Mise en Place Trois.