Yeah. Says the guy doing all his work on a 1024 x 600 display. I mean the guy no harm, but so much of what he says strikes me as incredibly back-worldly. Like using dial-up and limiting yourself to fan-less laptops. I mean I get the "thin terminal" philosophy where you have a shit laptop that connects to something much more potent. But where's the point if the connection sucks as well.
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 hate to pull this card on you, but what have you done? We're talking about a Debian developer who has also developed (and continues to develop) basically an open-source replacement for Dropbox (http://www.kickstarter.com/projects/joeyh/git-annex-assistan...), by himself on an incredible budget. He actually Gets Shit Done, and does it relatively efficiently. I would not be surprised at all if a factor towards being productive is the fact that his daily Internet connection doesn't support browsing Facebook. And when you are a creator rather than a consumer (especially of the written word, be it code, essays or books), screen size rarely matters.
> And when you are a creator rather than a consumer (especially of the written word, be it code, essays or books), screen size rarely matters.
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.
You sure you knew the same guy? My working memory is crap, and, presumably, getting worse. ;)
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.
Yes Joey, though I'm not sure if you still remember me - We co-founded CSLUG back in 1995. :-) I was a lowly freshman happy to get to geek out on Linux with CS folks. (Not many Physics people were really into it then.)
Ah, see, I can remeber your full name, Peter .. just had trouble getting there from the HN username. :)
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 :)
I can't fit everything in my head and need the screen real estate.
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.
At least for me, it's a completely different interaction pattern - basically switching between individual windows using desktop hotkeys.
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.
I just had this epiphany. I tried to explain this too my friends but I still out nerd them and they aren't very excitable. I just bought one of the HiDPI monitor for super cheap and it does suck going back to the MBA screen, not just for real estate but quality (and Mac font rendering, bleck). What I can't get over is how much more productive I am. I can have three different bits of code side-by-side, a terminal with gdb, Chrome open with docs, all in one screen.
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.
> I hate to pull this card on you, but what have you done?
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.
When the discussion is individual productivity, I don't think that questioning a critics ability to produce by drawing comparisons to another is, in the strict sense, an ad hominem. Probably not the most civil thing to do, but I don't think it is an ad hominem.
Probably not the most civil thing to do, but I don't think it is an ad hominem.
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.
I hate to pull this card on you, but what have you done?
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.
Perhaps there is a closing down of focus being achieved through the 'hobbling'? I accept that if those people examined their process, they might find other ways of focussing without the hobbling
His connection is terrible because he lives up in the Blue Ridge of Tennessee. There is no broadband there and I wouldn't be surprised if the phone lines are poor enough that you can't connect at more then 28.8k on a good day.
To clarify, there is broadband up here in hills, but it is very unevenly distributed.
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.
For writing or coding, a decent keyboard seems much more important than a high resolution screen. For consuming stuff the converse is true. (Even though I also prefer a high res display, and he mentions that it took him some time to set up Xmonad in a way that allowed him to effectively work with such a low-res display).
I owned a Dell Mini 9 hackintosh and recently sold it. I absolutely do not understand how Joey Hess uses it everyday for the sort of work that he does - the keys are roughly 90% of full-size, and I couldn't type more than a few words without hitting the wrong key. I feel admiration mixed with, "why?".
Well not everyone is coding in terminal windows and doing console-only stuff... for me doing interactive 3D development, a high res screen (or a couple of them) and a powerful machine is of equal if not higher importance than my keyboard.
I generally develop in terminal windows, doing console-only stuff, and I still feel stifled if I don't have at least two displays. I know that all the cool kids are using split terminals and the like, but I like to keep log output visible, a browser in a separate space and a console debugger up without having to toggle between them.
That anybody can get anything done with such constraints is amazing to me, but he's obviously quite good at it.
I use to feel this way as well, until, nearing the end of university (read: I was rather broke), I had the perfect storm of computer hardware disaster. I was forced to use for about a year just a single netbook with less than impressive resolution. Tmux and tiling window managers became my friends out of necessity.
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.
Haha. Same progression for me, too. Towards the end of uni, my Windows rig completely broke down.
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.
He's a hardcore Debian guy. I'm sure that if he needs a custom build he probably farms out the compilation to one of his remote servers, and just downloads the resultant .deb file.
Not sure I understand, ghc/platform is hundreds of MB iirc, remotely built or not. Or maybe you meant a tailored ghc distro without all the statically compiled libs and such ?
I assume that he probably doesn't have to compile GHC all that often. He can probably just drive to the nearest place with free Wifi and download whatever he needs over a faster connection.
Programming is sadly still pretty much text-based. How many characters do you display on your monitor? Could you display as many with a smaller font on a smaller display?
I don't think screen resolution is the bottleneck in information transfer here.
Indeed. I'm quite envious of this type of lifestyle. Although I'd take a thinkpad or an air over the dell.
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.
Beautiful.