
Ask HN: What does your development environment look like? - rbranson
I'm curious as to what others' development environments look like. Screenshots are best. I'll kick it off.
======
edw519

      +===============================+
      | >                             |
      |                               |
      |                               |
      |                               |
      |                               |
      |                               |
      |                               |
      |                               |
      |                               |
      +===============================+

~~~
epochwolf
It's been a very long time since I've seen DOS.

~~~
whimsy
I doubt you're seeing it here, either - I would peg this as some POSIX shell
before I pegged it as a DOS shell.

------
aphyr
<http://aphyr.com/media/desktop.jpg>

Vim, vim, vim, vim, vim, vim, vim, vim, vim, logging, bacon, irb. I try to
keep large methods I'm actively editing on the big windows and reference
material on the smaller ones. I also arrange them physically to match the
control flow--the deepest methods in the stack live to the left, and
successively higher ones live to the right, up to the controller and view for
MVC. I usually have an IRB session open to test new ideas, one window for
running the test suite, and one to watch the logfile or run the server.

On the other monitor, usually docs, whatever I'm building, and more docs. On a
single 24" display (at work), I usually fold the docs over my bacon/irb
terminals. I run 6 workspaces in Openbox. Almost everything has a hotkey.

[edit]

Folks at my office know me as "that guy with all the terminals". I think part
of it is that my working memory is not fantastic, and that I'm a really visual
thinker. Having everything laid out in space really helps me keep track of a
complex, modular system.

~~~
brianmwang
I spy Summer Glau on your wall :)

~~~
dmm
She needs to learn some trigger discipline.

------
rbranson
<http://imgur.com/LYjiE.jpg>

It's a pretty standard Rails hipster setup on a Mac using TextMate as the
editor.

I'm using a 27" Dell U2711 display.

The left hand Terminal is used for monitoring autotest (an automatic test
suite runner for Ruby/Rails) and messing around with the interactive Ruby
shell (IRB), git, etc.

The right hand Terminal is used for monitoring requests as they come into the
development environment's web server.

The Windows XP Professional is running on VMware Fusion and used for IE
testing. I use Visual Web Developer 2008 for debugging in IE.

I've got two Chrome windows, one for API documentation and one for testing,
with a permanent Developer Tools window at the bottom right hand corner of the
screen.

~~~
bkorte
I'm curious - why XP with VS for IE debugging? IE6?

I've been using Win7 and IE developer tools, switching between 7 & 8 for
testing and it's been working out pretty good lately.

~~~
rbranson
IE6 yes. I use VS because IE Developer Tools doesn't offer sophisticated
enough JavaScript debugging. I work with large JS-heavy projects, like entire
clients built in JS that talk JSON/REST to a backend server.

------
mrduncan
Not my site, but you may also find <http://usesthis.com/> interesting. It has
short interviews with well-known developers/designers that focus on the tools
they use and how they work.

------
technomancy
<http://technomancy.us/137>

tl;dr - Basically just Emacs and Conkeror on Ubuntu. The combo of xbindkeys
and devilspie help me not have to worry about the WM; apps for which it makes
sense are full-screened for me. Emacs does pretty much everything for me
including git, shells, IRC, and IM. The only thing I leave Emacs for is
browsing via Conkeror (which feels a lot like Emacs) and the occasional photo
edit in Gimp. For working on remote hosts and pairing with remote devs, tmux
is a blessing.

All this on a 1.1kg Thinkpad X200s with a Kinesis Freestyle keyboard. Nexus
One with Cyanogen is used as a 3G modem when I'm out and about.

------
bigsassy
<http://imgur.com/37L7Z.png>

Django site. WingIDE, two terminals for runserver and test django commands
respectively, and the browser (currently showing my tool for viewing and
debugging data in the app).

There's a space in the top left corner because I have the left monitor in a
vertical setup and the right in a horizontal.

EDIT - View from my office:

<http://twitpic.com/23rg8a>

------
bretthoerner
[http://farm5.static.flickr.com/4116/4774485856_e9aa9d81cf_b....](http://farm5.static.flickr.com/4116/4774485856_e9aa9d81cf_b.jpg)

30" Dell LCD, typically 2/3 emacs 1/3 terminal (no, I don't use a terminal
inside emacs).

I use my ThinkPad's keyboard by choice because I really like it, and the
laptop screen is where I flip between browser / IRC / etc.

Ubuntu, xmonad, Chrome, Emacs, gnome-terminal. Nothing too special.

------
SandB0x
Super+e:

<http://i.imgur.com/UgrxJ.png>

The normal workspaces on my laptop, running Ubuntu 10.04 64-bit. From left to
right:

vim, Gmail/Chrome, Songbird, spare/documentation/second terminal

It's quite cramped with just one screen. I _really_ need to get some good
monitors and a solid desk.

Oh, and perhaps most importantly a pad of paper when away from home, and a
glass whiteboard when at home.

------
ScottWhigham
Hmmmm - harder to do a viewable screenshot of a dual monitor setup...

<http://imgur.com/9JDT3.jpg>

Left monitor = coding, research notes Right monitor = testing, virtual
machines All running Windows 2008 R2 Firefox with Firebug, Web Developer
Toolbar, Greasemonkey, Gears, Page Saver Visual Studio 2010

------
thesnark
<http://i.imgur.com/ZCADh.jpg>

Beautiful Vancouver weather today...

~~~
amackera
What's the startup scene in Vancouver like?

~~~
thesnark
This post can answer far more completely than I can:
<http://news.ycombinator.com/item?id=1565375>

Vancouver gets a nod from pg as one of the best places to do a startup outside
of the US.

I only recently moved here, so I am not very involved in the local scene,
although I would like to start meeting people.

------
jnoller
Mine's pretty simple:

<http://imgur.com/aiyfw.png>

VIM on the left; on the right top is a terminal, each tab is a different
virtualenv, on the bottom is a bpython shell. All my other screens (OSX) are
running Chrome, Mail.app/Adium and VMware (lots of that).

------
bcl
Dual 22" widesceen monitors. left is mac mini, right is Fedora. I use synergy+
to share the mac keyboard and Logitech trackball between the systems.
Workspaces separate out distractions - 1 is a pair of gnome-terminal sessions
with screen running on each and lots of vim. 2 is firefox + vimperator, 3
thunderbird, 4 xchat, 5 for virt-manager and 6 for misc stuff.

I ran xmonad for a while and found I really liked the full-screen orientation,
but missed being able to cut and paste from terminals easily, so now its GNOME
with everything full-screen. I've re-mapped the keys in Fedora to take
advantage of the command key on the mac keyboard, so I can work most of the
day without touching the trackball.

~~~
nevinera
I suppose it depends on what terminal you're using, but gnome-terminal at
least copies and pastes fine in xmonad - use C-S-c and C-S-v.

If you mean without the pointer, please tell me if you have a way to manage
that in normal gnome - it's almost the only time I have to use my ball.

------
aplusbi
At work I have a Windows laptop connected to a dock with two monitors. I have
a Kinesis freestyle keyboard. Most of my development is done on a remote Linux
box, so pretty much everything I do is through SSH. I use a variety of
software to make this as pleasant as possible:

dtach - this is a life saver whenever I get disconnected from the interwebs.
It detaches a process from the controlling terminal.

dvtm - a tiling terminal manager. I used to use gnu screen but I prefer the
layouts that dvtm offers. This plus dtach replaces 99% of what I used screen
for.

Vim - my text editor of choice.

pyclewn - integrates gdb with vim nicely.

~~~
beagle3
if dtach is a lifesaver for you, gnu screen will really blow your mind -- it
can let you detach the controlling terminal from the session

(and as a bonus, if you are working with other people, you can connect to the
terminal simultaneously to work together)

~~~
aplusbi
As I said I used to use gnu screen. However I didn't like the limited layout
options so I started using dvtm and would nest it inside screen so that I
could detach from a session.

However I felt it was kind of silly to be using such a heavy/complex program
such as screen for one feature so I switched to dtach.

And actually as long as you set file permissions correctly (dtach uses a file
as a socket) you can share terminals with others using dtach.

------
jcromartie
Terminal and Emacs on OS X. I have VMWare Fusion running XP with cygwin and
rxvt, Emacs, and Visual Studio 2008. I write C# code in Visual Studio and Ruby
code in Emacs on Windows for our main project, and I do most everything else
(mostly Clojure, some Ruby) in Emacs and Terminal on OS X. Org-mode is a
crucial part of my daily routine.

On the physical side, I use whatever 17" NEC LCD this is here, plugged into a
13" MBP. I occasionally go into the office and use another monitor, so I also
use an Apple Wireless Keyboard (the aluminum one) and a Logitech laser laptop
mouse.

------
henry_flower
<http://bit.ly/dpG5Og>

~~~
adambyrtek
It's the first time I see somebody actually using Xeyes, I'm impressed!

------
zentechen
Monitors are cheap nowadays, why can't everyone just get the dual 24+, 27, or
even 30 inch monitors? Why have to stay with the smaller screen where one can
go big?

Just googled and found 27" for less than $400 on Amazon:
[http://www.amazon.com/Acer-B273H-bmidhz-27-Inch-
Widescreen/d...](http://www.amazon.com/Acer-B273H-bmidhz-27-Inch-
Widescreen/dp/B003E1Z44E/ref=sr_1_10?s=electronics&ie=UTF8&qid=1283276289&sr=1-10)

~~~
zokier
And here I am, looking for new monitor, and the best deal so far is 21.5" for
300 euro... But it's not TN and it's certainly not an Acer.

edit: ... and it has the same resolution than the linked 27". What use is
large screen if you can't show more stuff with it? Waste of desk space, if you
ask me.

------
dawsdesign
[http://appdelegateinc.com/blog/wp-
content/uploads/2010/08/de...](http://appdelegateinc.com/blog/wp-
content/uploads/2010/08/desk.jpg)

------
bd
I posted this screenshot the last time similar question was asked:

<http://alteredqualia.com/tmp/img/dev.png>

It's more or less the same now, just the code is different.

Usually I have open at any time: SciTE, Notepad++, many browsers, Python
shell, XAMPP/nginx, Gimp, Cygwin shell.

Most of times, just one window is fullscreen and I switch when needed (or just
use magic hover feature from Windows 7).

~~~
eliben
I'm curious - why both SciTE and Notepad++?

~~~
bd
Mostly for grouping. In general I use SciTE for code, Notepad++ for everything
else (I use zillions of text files).

Two separate applications give two distinct icons in taskbar, allowing me to
switch fast between two groups (as opposed to figuring out which content tab
in one editor has the right file).

Also, I like them both, and don't have a heart to drop using one of them :).
BTW I do the same with browsers (and OSes, I keep "affair" with Ubuntu in
VirtualBox).

------
endtime
Currently: Opera + (Komodo Edit + CoffeeScript) + (Console2 + cygwin) +
(VirtualBox + (CentOS + emacs)) + (VirtualBox + Ubuntu Server) + Outlook

------
mhusby
<http://drp.ly/1DCKfG>

MBP screen: Skype + email

Dell 24: Browsers (testing + docs)

Dell 22 (vertical): Code (Netbeans) + terminals

~~~
jonknee
What are you using to get the second external monitor working on a MBP? I'm
thinking of doing the same, but haven't researched the best way.

~~~
mhusby
<http://www.diamondmm.com/BVU195.php>

There are better ones out there that can do high resolution, but this one
handles the 22 inch at 1050x1680 like a champ.

------
moby_duck
Boomerang-shaped desk with two monitors: one large, one small. The large
monitor shares space with Windows apps and the VNC to my Linux session. On my
Linux fvwm2 desktop I primarily use konsole to tab around different xterms,
and gvim + NerdTree to edit my RTL source code.

Almost every hardware designer I know uses vim. I guess we're not very lispy.

~~~
eliben
Well, I'm using SciTE for VHDL coding (on Windows). Armed with a snippets
plugin and connected to multiple Python scripts it's quite a beast.

------
Maro
[http://www.flickr.com/photos/mtrencseni/4842660613/in/set-72...](http://www.flickr.com/photos/mtrencseni/4842660613/in/set-72157624614348814/)

[http://www.flickr.com/photos/mtrencseni/4843277432/in/set-72...](http://www.flickr.com/photos/mtrencseni/4843277432/in/set-72157624614348814/)

------
YuriNiyazov
I recently became a nomad. Just a Macbook Air, no external monitor, I switch
between windows using Spaces extensively.

------
edanm
Desktop computer, running Windows XP (looking to upgrade computer, and then
move to Windows 7).

2 Monitors, 26" Samsung and a 22" Asus.

Most of the time, I've got open Sublime Text for coding, Chrome for browsing,
Firefox + Extensions for debugging sites, Photoshop, and a few command prompts
for mercurial and django commands.

------
kunley
Emacs, since 14 years.

I was looking for something better each 2 years or so -- yeah emacs isn't
perfect -- but didn't find.

------
nebusoft
This was not specifically for showing my coding development but my computer
setup. Linux on the left 2 monitors, Windows on the right 2 for VS2010
(dayjob).

<http://www.provokedguild.org/images/rig/Pic8.jpg>

------
ZeroMinx
12 work spaces (I prefer not having more than 2 or 3 windows in a work space).
Contents depend on what I'm working on, but right now - 4 with emacs (3
different projects), 2 with browsers, 1 with IM. The rest contains terminal
windows and one or 2 file browsers.

------
gte910h
On windows, gvim.

On mac (we primarily do iPhone apps), Xcode, with MacVim as the external
editor with keybindings setup to build/build-run, etc.

All this spanned over 2 windows monitors, 1 mac laptop and an external mac
monitor, with an iPad sometimes becoming a 3rd mac monitor.

------
dugmartin
L shaped desk with 3 monitors on the long leg - 2 24" monitors hooked to a PC
and 1 24" monitor hooked to a Mac Mini - sharing 1 wireless keyboard/mouse via
Synergy. The short leg of the L has a Dell 10V with Ubuntu.

------
EvanK
At work: 27" iMac + Textmate + Virtualbox + Transmit + ExpanDrive + Shimo +
Navicat

At home: Custom PC w/ 24" Samsung monitor + e Text Editor + Virtualbox + PuTTY
+ Filezilla + ExpanDrive + Navicat

------
proles
<http://img.ly/zY3>

this is my home setup. unfortunately the big screen is best used only for
reference, otherwise it strains my neck.

------
_neil
at work: iMac + 13" macbook with synergy. iMac usually has chrome, textmate,
thunderbird, and titanium all on one workspace. fullscreen iterm on the other.
adium, itunes, irssi, etc on macbook screen.

at home, same macbook with an external monitor. one workspace is iterm on the
right screen, usually photoshop, adium, + other misc apps on left. other
workspace is textmate on right screen, chrome and cyberduck (if necessary) on
left screen.

------
cool-RR
This is a picture of my desk: <http://cool-rr.com/cv/images/desk.jpg>

Wing IDE is taking both of my screens.

~~~
dawsdesign
You are too organized for me.

------
PhrosTT
dual 20"s 1600x1200. windows 7 w/ ultramon.

i'm fairly newbish... juggle 1 of (zend studio | eclipse | vs 2010) with
photoshop, filezilla, putty, firefox, and notepad++.

currently i'm developing php that runs on an ec2 box w/ memcached... i can't
get true memcached on windows and not really a vim/emacs/whatever hardcore
text editor type. also need windows for photoshop and whatnot. any tips?

~~~
mdolon
Ubuntu on VMWare = problem solved.

------
Derferman
Terminal and Emacs on OS X. 21" ASUS monitor and a late 2007 Macbook Pro.
Firefox, Chrome, and Safari open all the time.

------
adam-_-
I'm curious as to why no mac people are using SizeUp. Looks like everyone is
manually dragging the windows about?

------
leif
black, like my men: <http://i.imgur.com/SciNb.png>

------
Symmetry
My main workspace has several terminals, each with multiple tabs open, mostly
with copies of vim running.

------
TheSmoke
i'm using terminator as my terminal which lets me split my terminal windows.

As my programming editor I use vim with nerdtree and bunch of other plugins.

Ubuntu is my distro.

------
gaak99
Emacs über alles:

StumpWM managing Emacs & Conkeror.

On opensolaris, RIP.

------
vishaldpatel
vim for rails, javascript, html, php xcode for objective c google docs gmail

------
brlewis
emacs+firefox on Ubuntu

------
mdg
Copy and paste the following into the address bar to view images

    
    
        javascript:var tags=document.getElementsByTagName("a"); for (var i in tags) { if (tags[i].href.search(/jpeg|jpg|png/) !== -1) { var img = document.createElement("img"); img.src = tags[i].href;img.width = '400';tags[i].parentNode.appendChild(img); } }
    
    
    

EDIT: Eh... It could use some help ..

~~~
ataggart
This works:

    
    
        javascript:(function(){function I(u){var t=u.split('.'),e=t[t.length-1].toLowerCase();return {gif:1,jpg:1,jpeg:1,png:1,mng:1}[e]}function hE(s){return s.replace(/&/g,'&amp;').replace(/>/g,'&gt;').replace(/</g,'&lt;').replace(/"/g,'&quot;');}var q,h,i,z=open().document;z.write('<p>Images linked to by '+hE(location.href)+':</p><hr>');for(i=0;q=document.links[i];++i){h=q.href;if(h&&I(h))z.write('<p>'+q.innerHTML+' ('+hE(h)+')<br><img src="'+hE(h)+'">');}z.close();})()

