Beautiful.
Beautiful.
I guess in the end we have vastly different use cases, which is perfectly fine. I found it a quite interesting, if a little obscure, article to read.
I don't necessarily agree with the parent post's sentiments, but I also disagree with this very broad blanket statement of yours. I am reasonably happy most of the time on my Macbook Air screen, but I definitely prefer to be coding on a larger screen when I can. I knew Joey back in college and he is a sharp guy with a LOT of working memory. My memory has gotten worse over time, and I tend to work with heterogenous codebases, so I can't fit everything in my head and need the screen real estate.
I know many excellent, productive devs who love having large screens to code on.
I find that functional programming really cuts down on the amount of mental state I need to maintain. So while I'll have some API docs and another module or two open for reference, I don't need to worry about what that variable gets set to two pages above.
Maybe avoiding that kind of unnecessary detail makes one's unconscious better able to work on the program too. Still learning about this: http://joeyh.name/blog/entry/on_not_coding_late/
As I recall, you were the secretary of CSLUG.. Indeed, querying my external memory for your posts, I find meeting minutes you posted that bring back memories. Nice :)
Nice to hear from you!
For those of us who use virtual desktops, the physical resolution of the screen is just a small fraction of the total. I code in a 12" laptop with just 1280x800 pixels, but my effective resolution is 20 times that.
I try to limit myself to 3 but you have me wondering what else I could separate out.
I've got 24 desktops set up, but mostly use just 12. F1-F3 are generally code or whatever main technical task I am doing. F4 is compile+run, reload configuration and test, etc. F5 is Chromium for html documentation of whatever I'm working on (currently the Honda Civic service manual, sigh). F6 is evince with pdf documentation, and/or a second firefox window when I want some tabs that won't end up getting lost amongst others. F7 is Firefox for general web browsing, plus any pdfs opened directly from the web. F8 is generally email. F9 is music. F10/F11 is a wasteland of quasi-temporary shells. F12 is IM. Alt+F1-F4 generally get used when I'm in the middle of programming and want a clean slate to do some multiple machine sysadmin task. The rest only get used when I have a very seldom need for more desktops, but why wouldn't I fill out the hotkeys?
Shift+key changes to the associated desktop, bringing the active window along for the ride. Changing tasks (how I think people normally view virtual desktops) happens by letting the old task's windows fall by the wayside on their respective desktops. And yes, clearly this setup predates tiling window managers by quite some time.
That's HUGE, at least for me. I'm constantly alt-tabing or changing workspaces on my Mac and every second I have to wait for that animation, or look at that variable name, or remember why it return an (int, error) not just (int), I was losing my momentum.
Honestly, I'm excited to start my full time job to buy another of these bad boys to use at work.
Solid ad hominem.
On a related note, Hess has also taken himself almost totally out of society. Even UPS can't find his place. While it has a very Walden Pond quality to it, I personally include my social life in my "what have you done" list. Modern day Thoreau he might be, but remember that a lengthy git history doesn't make any person objectively "better" or more "successful" than other people. We're all just folk.
Which is why I prefaced as saying I didn't like to pull that card. I think the OP I was replying to just rubbed me the wrong way with his attitude of "so says the guy using a back-worldly shit 1024x600 laptop with dial-up", like joeyh was some sort of luddite who would be more productive with newer "better" hardware. It stank to me of being someone who didn't even know what joeyh was producing with his setup, and just brushed him off as "not productive", when I really feel that joeyh's example is something to, at a bare minimum, study as an example of what's possible when you slow down and focus on the code and design instead of dual 30in monitors and teh shinee.
Furthermore, GP, yes, worth is a totally artificial human construct; while you may value social interaction more than others, I tend to see developing open source software as being an almost infinite good, as it can improve innumerable peoples' lives, albeit only a little bit at a time. That's the power of software.
A legitimate question. However, I've known incredibly smart developers who get shit done, and often they like to hobble themselves. They tend to hobble themselves out of a somewhat irrational love of hardship. But often they'll justify it with some other very elaborate explanation that sounds very smart but is pure b.s.
I lived near the top of a mountain in the same area, and was finally able to get cable after pestering Comcast for a few years.
The guy that bought the land at the very top of the hill was unable to get Comcast to run cable even with his offer to pay for the run himself. We cut down some trees for line of sight and re-purposed some satellite equipment and got him online via a second cable run to my house.
That anybody can get anything done with such constraints is amazing to me, but he's obviously quite good at it.
Cut to a few years later and now I have 3 high resolution screens in front of me, pretty much all the time. I still tend to use just my laptop screen with tmux though, with the rare exception (during deployments, mostly).
I won't say that a single small screen is better, but I do think from personal experience that, after some time and initial effort, it really is not the handicap people think it would be. It certainly won't slow you down like a thumb keyboard will.
Being broke, I ended up with a Toshiba netbook that couldn't handle more than a few browser tabs at once. Installed Debian to squeeze out some performance over Windows XP (first foray into Linux). Best thing that ever happened to me.
Soon I learned vim, tmux, and had my entire dev environment in a Guake terminal overlay that I could quickly toggle in and out of view. It was like having two full screens in one.
My work just bought us monitors and everyone is dual/tri-screening it. I just dock my laptop and use the single monitor, still using the same guake/tmux/vim setup.
I don't think screen resolution is the bottleneck in information transfer here.
My overall setup is quite similar. Xmonad & redshift are great tools for minimizing distraction over long periods of time. You can really get in the 'zone' in a way I find impossible without them.