

Why I Stick with the Linux Desktop - philk10
http://spin.atomicobject.com/2013/10/26/why-linux-desktop/

======
gknoy

      Virtual desktops ....
      I always thought this would be useful for switching 
      between different contexts, like work vs. personal, 
      but I’ve rarely used it in practice.
    

I'm a virtual desktop addict. If I may, I'd like to share how I use mine, so
that you might perhaps find them more useful in your own work. I have dual
monitors, and four virtual desktops (in XFCE, but that doesn't matter).

Originally, I used only two workspaces (email/reading, development), and this
has evolved a bit over time into 4. What I like about using virtual desktops
is that I have a spatial mental model of where each thing is, which helps me
ensure I don't mix up dev/production, and helps me avoid alt-tabbing to find
what I want. I make extensive use of my window manager's ability to maximize
on the left or right half of a screen. (This would probably not work well for
me with a single monitor, unless it were a large one.)

1: E-mail/calendar on the left monitor, automated build system output on the
right. This is for things that are semi-important but which I don't want to
regularly have interrupting me.

2: Web browser with the app I currently am developing, and my console window
on the left monitor, full-screen IDE (PyCharm) on the right. (I also put emacs
or a terminal on the right as well when writing extensively in those.) This
workspace is where I spend more than 80% of my time.

3: Github on the right screen, for pull requests, code review, issue tracking.
I use this for a context-switch from _developing_ code to _reviewing_ it. I'll
also use this workspace when babysitting a code release, to help ensure that I
don't mix up local stuff with remote stuff.

4: music player. I stream music, so I rarely need to look at this except to
change channels.

~~~
WildUtah
Things I miss on OSX do include third-button paste from the highlight buffer
and, of course, the superior virtual desktops (though OSX had them until Apple
decided to cancel 'em), and the window list in the top bar.

But none of those is as important as focus-follows-mouse. I really miss ffm.

On the other hand, I like having working power management and long battery
life. And I like never spending a day figuring out driver regressions.

~~~
dhruvmittal
The single biggest thing I miss when I use OS X is alt+click to move windows.

~~~
pjbrunet
Since I switched to a window tiler, I never need to move windows unless I'm
doing something complex in GIMP. I'm using pytyle2 (you can probably find
something better) and mostly all I use is alt-c to rotate the windows, alt-h
for "higher" and alt-l for "lower" and that's it. Now I rarely, rarely ever
resize or click-drag a window.

This works so well I totally stopped using window decoration. Having the extra
pixels on my laptop is nice! Install the "Classic Compact" add-on for Firefox
to free up even more pixels.

~~~
dhruvmittal
I've always loved tiling WMs on big screens, since it's a really efficient way
to use all of that screen real estate. i3 really comes into its own on my
multimonitor desktop setup. I've just never felt any real gain on anything
smaller than 17". On my 13" macbook air, however, I find that as soon as I
split the screen 50-50 neither window really has enough space to be
comfortable. (I've tried using Amethyst[1], but that's all)

[1]: [https://github.com/ianyh/Amethyst](https://github.com/ianyh/Amethyst)

~~~
pjbrunet
That's true. My next laptop will be bigger! For now I have good eyes to see
the 7px fonts. And it was some real work to remove all the window decorations,
editing config files to get a slim profile on everything. Usually I have my
code on one side and a browser on the other side. When it gets tight I have 3
options: 1. zoom out the browser (not always an option for detail work) 2.
flip the important activity to the bigger window 3. use the higher/lower
hotkeys to give one side or the other more/less room. Typically I do not like
to write code in the left panel because then my eyes are way off to the side.
Took me years to get to this point with Linux but I feel very productive now
when I sit down to work. I had to ditch Fedora/Gnome, figure out Crunchbang,
pytyle2 was a pain to install, etc. But it was all worth it, at least in my
opinion ;-)

------
VeejayRampay
It's way too nice to Apple to call their piss-poor Spaces "Virtual Desktops".
Call me when I can finally arrange them how _I_ want (i.e. 2 rows, 2 columns)
and not have them in line, which is stupid and inefficient. I'd also like a
call when Apple finally implements maximize for windows.

And don't get me wrong, I am a Mac user, just a highly frustrated one when I
see people praising them as the second coming of the prophet even though a lot
of extremely useful features are just missing because some dude at Cupertino
decided that Mac users didn't need them.

PS: Negative post, I know, but it feels good.

~~~
bluthru
They're not "stupid" and "piss-poor". Linear desktops are a huge usability win
for a multitude of reasons:

* It's spatially an easier mental model.

* This mental model is consistent with iOS multitasking and iOS home screen.

* It allows for simple gestures to switch between desktops.

* In western society, we read from left to right. New is to the right. Fullscreen a new desktops are added to the right.

* This also sets up a linear "Forward/back" model similar to web pages.

* You can easily add ONE desktop on the fly. No need to make it a grid for no reason.

* The biggest reason: Spaces and expose are unified into Mission Control. One action to see EVERYTHING. This is a huge plus, as people don't have to check two different locations for a window. A grid of desktops wouldn't fit up above in mission control.

* There's nothing below the dock and there's nothing above the menubar. Simple mental model.

Regarding "maximize for windows":

* It's a "fit window to content" button. A window shouldn't take up more space than is necessary in a multi-tasking environment. Regardless, there is a fullscreen mode and windows also remember their position and dimensions if you drag them.

~~~
VeejayRampay
About all those nice bullet points: That's cool, but I'd like to be able to
use a grid layout. I'm not looking for an argument or a lesson about the
awesomeness of the Apple Way™. I just see people trying to accomodate their 9
Spaces and moving tediously from 9 to 1 and back, while pondering the "huge
usability win" that is the linear desktop layout and that's when it hits me:
"It'd be nice to have the _option_ of using a grid layout, Linux has that,
it's pretty nice".

Then I mention maximize and you tell me "it's not maximize, it's fit to
content". Then again, that's all nice and dandy but if I wanted "fit to
content" I guess I'd be already be satisfied and I wouldn't be complaining
about it now, would I? Same for fullscreen, I'm sure you actually do
understand the difference between maximize and fullscreen. I don't want
fullscreen, I want maximize, a feature Mac OS X does not offer (except for a
few apps like Terminal.app, which makes it not only an idiotic choice, but
also inconsistent across the OS).

~~~
JasonFruit
That's exactly why I haven't been able to bring myself to buy nice Apple
hardware: there are too many things where I say, "I want it," and the answer
is "You shouldn't." With my LXDE desktop, I can make it act however I want,
and I'm pleased and productive, even though I shouldn't be.

------
pinchyfingers
\- Package management

\- Everything can be done via CL in case of emergency

\- Switch terminals via F1, F2, F3... if the GUI terminal (F7) messes up

\- Use whatever window manager I want with no hassle

\- Most distros recognize hw and install drivers automatically (versus needing
a rescue disk to install Windows)

\- Develop apps locally using exact same environment used on server

\- No worries about losing support for my hw (try installing Windows 8 or the
latest OSX on an old machine)

\- Option to show WiFi password (why the f can't you do this in windows?)

\- Fingers crossed for more Steam games coming soon

------
ardemue
What I enjoy the most on my Linux desktop is how it handles
installing/upgrading software. It's just easy, and it works. When I'm on
Windows I can't stand the google-download-execute-untick boxes-next-next
cycles. This post is more about UI features though.

~~~
wubbfindel
You should try out "chocolatey" on windows. It enough people adopt it, more
packages will get on to it.

~~~
lucajona
Or Scoop at [http://scoop.sh](http://scoop.sh) (I made it).

~~~
wubbfindel
Looks interesting! Will look into it more closely.

------
aryastark
I've been using Linux "on the desktop" since '96\. I stuck with it because,
_it 's Unix_. It's not BSD pretending to be Windows. It's not Android, running
around with a Java dress on, pretending to be something it's not.

X11 sucks and so does Unix. But they suck less than every other system out
there. I can make X11 act however I want it to act. It can act like Windows,
or it can act in some new way that was not blessed by the high priests, Apple,
Microsoft, and Google.

If I want my system to do something, Unix provides the toolset. It's an
amazing ecosystem for learning, exploration, and creation. If you know a bit
about Perl, Python, or Bash then you can pretty much make data _do what you
want_. A file is not just an opaque blackbox, requiring a single expensive
proprietary application to interact with it. Fitting together disparate tools
in a way that was never envisioned by the authors of said tools is not a
"hack." It's just good design.

------
Nux
I love the linux desktop, especially Gnome2. For me it's a godsend.

I make heavy use of workspaces (got 6 of them atm), very handy to organise
work/tasks, even on dual monitor setups. It's very easy to move applications
on another workspace or monitor, even without the use of a mouse.

"Always on top" and "Always on the visible workspace" are great features that
I use even right now (mplayer running in my upper-right corner while I type
this).

I use a distro based on RHEL6 that's super stable and don't have to put up
with annoyances like rolling-release specific breakages and so on.

All my laptop's hardware is well supported and just works.

Firefox, Thunderbird and Libreoffice are excellent applications that more than
meet my requirements. Virt-manager & kvm rock and Gnome-terminal is pretty
damn awesome.

I use Windows rarely and it feels like having my hands tied at the back.

I know it's not for everyone, but for me, it has been the decade of the linux
dextop. :-)

~~~
samspenc
Chromium, Thunderbird and Apache Openoffice for me ... but otherwise I could
have written the rest of your post! :D

(Yes, the newer versions of Openoffice are actually really good, and their UI
is really comfy for someone coming in from MS Office on Windows/Mac.)

------
farresito
I've been using Arch Linux for a little more than two years, and it's probably
one of the best decisions I've made in my life. Once you get used to the
terminal, you will never want to touch a Windows computer (unfortunately). I
have i3wm (tiling wm) + (rxvt + tmux + vim) + luakit (browser with vim
keybindings), and some other stuff, and my productivity went straight up. Of
course you might not want to go to that extreme, especially if you are not
used to the terminal, but it's worth giving it a try.

~~~
orthecreedence
I'd have to agree with your decisions. I'm on Slack, but almost the same
setup: i3, tmux, urxvt, vim. The setup is unstoppable. I've found that I no
longer need quick launch links (just define/use shortcuts for whatever you
need). Switching desktops is really fast and easy (you don't drown in
ridiculous animations just by switching to the "browser" desktop), and
floating/hidden windows make opening a quick shell really simple. Doing
everything via keyboard saves so much time...however I do come from the vim
world, so I may be biased =]. On top of all that, i3's config is really,
really easy.

Admittedly, I haven't used any other tiling window managers. I did a bunch of
research after deciding to try one out, landed on i3, and haven't really
looked back. Would definitely recommend it to an efficiency-minded person.

Also the simplicity of i3 is beautiful. Combine its minimal interface with a
few shell windows with opacity=.85 and you've got an incredible looking
desktop that's easy to navigate, responsive, and efficient. Even my not-very-
tech-savvy girlfriend saw me working in it and said "Wow, that's pretty!"

~~~
farresito
I've tried some other tiling wm's, and i3wm is the one I've liked the most. It
just has the right balance. dwm is pretty nice, too, but didn't like it as
much. I'm glad to hear some other people enjoying a similar configuration of
his linux :D. The only problem I've found is when I go to public places;
people just look too much. They are not used to such a lightweight and non-
windows/non-mac system.

------
SwellJoe
All of these are nice, and contribute to my enjoyment of Linux.

But, there's one thing that always makes me reboot from Windows into Linux (if
I was gaming or watching Netflix; I usually run Linux): Having to do any work
involving the command line, whether local work such as development, or remote
work such as building and deploying packages or website updates.

PuTTY isn't a bad ssh client...but, it's not the same as always having a bunch
of gnome terminals open in tabs and being able to "ssh myserver" or "vim
myprogram" or whatever I need to do. The mental friction of having to click
through menus to open a new ssh session for every server I need to work on
(I've usually got two servers open when working: staging and production; and
I've often got three or for sessions per server). Sure, I could use screen or
tmux, but I can't remember the key combinations. And with gnome terminal tabs
I don't have to. Worse, PuTTY doesn't seem to support the keepalive functions
that OpenSSH does. I can keep my ssh sessions open all damned day under Linux.
Under Windows, if I walk away for lunch or a nap, I have to relog everything
when I get back.

Not having them in tabs, and not being able to manage windows under Windows in
any reasonable fashion is also frustrating. It's an exercise in frustration
finding the right terminal (there will always be two or three with the same
label, unless I explicitly make an effort to change it; with tabs I can put
them in the order I always use and know exactly where everything is without
reading; windows get moved around all the time).

Lack of middle mouse button paste _was_ always a nuisance until I got an awful
HP Envy 15 lappy without a middle mouse button...it has the Mac style single
mouse button with click areas, which never work right, in Windows or Linux--I
often get a right click when I wanted left and vice versa...I've had to
retrain myself to use three finger click, which is error prone and I end up
getting a double paste....basically I'm realizing that I've been living in
misery ever since I got this awful laptop. I need to order a bloody mouse, so
I can stop punishing myself with this clickforsaken thing.

Actually, there's a ton of things that are coming to mind now that are just an
awful nuisance. Lack of a good command line is the biggest. I use locate and
find all the time; the analogs on Windows are a joke. grep! sed/awk/perl for
munging things quickly! cygwin is a second class citizen and I'm always trying
to figure out where I need to go to do what I need; the paths are so weird and
long. That can be said of Mac OS X, as well, to some degree...while it has an
actual UNIX underneath, it still has all the clunky Mac baggage that makes it
ornery.

~~~
bluedino
>> Worse, PuTTY doesn't seem to support the keepalive functions that OpenSSH
does. I can keep my ssh sessions open all damned day under Linux. Under
Windows, if I walk away for lunch or a nap, I have to relog everything when I
get back.

Sure it does.

[http://www.greenend.org.uk/rjk/sshfwd/tunnel-putty-
keepalive...](http://www.greenend.org.uk/rjk/sshfwd/tunnel-putty-
keepalive.png)

------
encno1s3
This is in no way a bashing of Linux. I love linux, I use it daily, but it's
the desktop that I have issues with..

I've used Linux as a Desktop exclusively from 1999 to circa 2008. When I
finally gave up. I think it was Ubuntu releasing buggy PulseAudio which broke
the sound for me that was the last straw.

I still use Linux as a desktop occasionally but I just don't have the patience
to deal with the weird quirks anymore. And there were plenty of quirks over
the years.

I never understood why Linux went with Windows inspired ctr-c and ctr-v. For
me especially since I do most of my work in a terminal window it was always
counter intuitive. Shift-Ins is problematic on laptop keyboards and even on
full size keyboards it requires both hands.

Each year (or so it seems) Bryan Lunduke does a "Why Linux Sucks
<year>"([http://www.youtube.com/watch?v=pSxX8a_TC7I](http://www.youtube.com/watch?v=pSxX8a_TC7I))
and I love it.

~~~
patmcguire
Audio is one of those things they've never figured out. There's a good "truth
in graphs" about that:

[http://blogs.adobe.com/penguinswf/files/penguinswf/linuxaudi...](http://blogs.adobe.com/penguinswf/files/penguinswf/linuxaudio.png)

~~~
jebblue
For Ubuntu it's been figured out for years. I use Google Voice, play music, do
audio in multiple accounts, it all just works.

~~~
majurg
Those are all very basic functions. Let me know when I can produce Pro level
audio work on a Linux machine without hiccups.

~~~
welterde
JACK is the sound system of choice for that. For everything else plain ALSA
works just fine.

------
kelvie
The thing that keeps me on Linux (mostly), is the ability to use alt+drag (I
actually re-bind this to Win+drag) to move and resize windows without having
to move my mouse to the title bar, or to the thin edges of the windows.

I can just use alt+left drag to move my window, a large target, anywhere I
want it to, and likewise to resize it.

It's really annoying for me when I have to use a Windows VM (for example), and
not be able to do this.

~~~
kazoolist
If you use VMware Player (and/or presumably Workstation) in "Unity" mode, you
can alt-left drag to move and resize the virtualized-Windows-windows.
Sometimes it gets a little wonky, but it works great 95% of the time.

------
atoponce
I use Awesome as my WM of choice on both my laptop and on my workstation. It
just works, and I can get stuff done _fast_.

Besides tiling windows as the major win, I really love the plethora of virtual
desktops. I use these with ease. I have a triple monitor setup on my
workstation, and have at least 3 virtual desktops in use on each monitor, and
sometimes using 5-6 on each when really digging into work.

Middle-click is a must have on a GNU/Linux system also. I've seen people bitch
about it on laptops, saying it should be removed, but Mac OS X, and Microsoft
Windows don't take full advantage of it. Pasting with middle-click is an epic
win for the GNU/Linux desktop, IMO.

The largest win, however, is proper package management with Debian. This alone
keeps me using GNU/Linux on the desktop, and it's nice to see Apple following
suit with their App Store. Cloud package management is vastly superior to
"hunt and download".

------
Siecje
It would be nice if pasting with the middle click ignored the newline
character.

I use always-on-top.exe[1] on windows

One feature I would really like is the ability to lock a window to a region of
the screen and allow other windows to be snapped around it.

Firstly you should be able to snap a window into the four corners by pushing
the mouse into the corner for x seconds. (like ctrl+alt+numpad 1, 3, 7, 9)

If you had a window locked to the right side of the screen you could still
snap another window to 50% of what's left. And if you manually re sized it to
be small be able to snap another window to be 50% of the screen space that is
left after two windows have been locked.

If this is possible please let me know.

1: [http://www.labnol.org/software/tutorials/keep-window-
always-...](http://www.labnol.org/software/tutorials/keep-window-always-on-
top/)

------
dman
a)Tiling window managers are another nicety that is under represented on
windows and osx.

b) In the past when I wasnt using tiling window managers - devilspie was
really nice since it allowed me to specify where different windows would
popup, allowing me to step away from physically arranging windows.

c) Be able to remove features you dont like / use. I currently have my system
boot into a dwm session with a minimal set of services started at bootup. Most
visual experiences / fonts are all configured via config scripts. Which means
that I just need to scp two directories on any new machine and turns into the
same flavor visually and behaviorally that I am used to. It is relaxing being
able to upgrade machines / move to new machines knowing down to the pixel what
environment and keyboard shortcuts you are going to get.

------
mattkrea
Nice. Not all that compelling because the bigger problems for Linux as a daily
driver aren't covered (for me anyway) but highlights some features I did not
previously know where fairly ubiquitous across window managers.

~~~
wtbob
Out of curiosity, what sort of issues do you have using Linux as a 'daily
driver'? I ask because I've been running Linux-only on a daily basis since
'99, and (obviously) haven't had any major issues to cause me to change that
decision.

~~~
cenhyperion
For me personally it's image editing software. I need to be able to
collaborate easily with graphic designers and manage my personal photography.
Adobe's tools are the industry standard and what I need to collaborate with
others.

That's the single thing holding me back. If I could have photoshop and
lightroom on linux I'd switch in a heartbeat. Until then OS X will probably
remain my main desktop.

~~~
pjbrunet
I'm not a heavy GIMP user but it imports/exports PSD pretty well, right? I was
a heavy Photoshop user from 1.x to 3.x and all the basic features are there
;-) Color curves, hue-saturation, feathered selections, 99% of what you need
to get shit done is the same as Photoshop. Granted, digital art is not my day
job. So I don't know what newfangled tools Photoshop has now. I hate layers in
GIMP as much as I hated them in Photoshop, I'm oldschool ;-)

------
BlackDeath3
I'm such a noob. I learned way too many things from this post.

------
RexRollman
Personally, I have no real love for the "desktop" paradigm. Give me Xorg,
Evilwm, and some Xterms.

------
abalashov
When I was about ten years old, virtual desktops were the most proximate cause
of my switch to Unix (addiction to using Solaris-based UltraSPARC workstations
in the university lab nearby). I just thought they were so cool.

Have only run Linux on the desktop ever since. I'm 27.

------
jstrate
The middle click paste really hit home for me. I recently started working at a
mostly Apple Big Co. And the middle click paste is sorely missed. Maybe I can
find some equivalent but I always just took it for granted.

------
buo
As a Linux user, what I miss most when I use Windows is focus-follows-mouse.

~~~
diaz
For me, also related to focus is the amazing, best feature ever of having two
windows open and write on one and, scroll on another without losing the focus
from where I'm writing :)

------
era86
I also run Linux on my laptop at home. Window snapping and auto tiling is a
must-have nowadays.

Also, didn't know about #2 (setting window z-positions). Going to play with
that later!

------
lelele
I stick with GNU/Linux (Desktop or not) because it is the most widespread OS
designed and maintained by hackers for hackers. Enough said.

------
yogo
For window lists I usually use scroll + click (openbox) if I need to view the
complete list before making a selection, alt + tab otherwise.

------
gprasanth
beware of hidden characters in commands while pasting them in terminal from
random sites.

------
excitom
When I saw that millisecond-faster copy/paste was item #1 I kinda lost
interest in the rest of the article.

