Okay. I just need to throw this out there - Windows as a development platform drives me nuts. Window management is cumbersome, there are no virtual desktops, no expose function.
When I have multiple windows open, switching between them is annoying. You can’t just expose all open programs and quickly pick one to view it. You can’t swipe between virtual desktops if you want to quickly view code or view your browser or any reference sheets.
Of course, I could always *just* get another monitor (or two). But that’s expensive, and not entirely necessary or viable in quite a lot of cases, most especially if you’re mobile and always on the go.
That you need a hardware solution to a problem that could be easily solved (or at least significantly mitigated) by a software solution shows how much a particular platform hinders productivity instead of enabling it.
I can’t completely ditch Windows and go for pure elementaryOS (Visual Studio and all that app development jazz). Hopefully, sometime in the future, Windows actually gets good at managing windows - but I’m not going to hold my breath.
Whenever you are designing something, adding or removing a feature, or changing a way of doing anything, it is very important to ask yourself: “Is this solving a problem, or will this create problems?” or even “Will this improve how work is done, or will it make worse?”.
Let’s reframe the above two questions, though, and add one of the most important things: the human element. Ask yourself: “Will this make people care more, or will this make people care less?”
Once you’ve answered these questions, go out and do work.