My preferable development environment would be an IDE I built myself, perfectly tailored to the peculiars of MY workflow. It would also need to feature easy extensibility to make it affordable to extend it, sometimes on a per-project basis. I'd eventually end up working on optimizing my productivity in a quite direct manner, by analysing what the bottlenecks (anything that hampers Flow) are in my different projects and devising solutions.
When you work in Lisp by making DSL's and generally problem-specific extensions, I think the next logical step is to extend the IDE to support it directly (especially if you use the extension in many projects). If for example you make a CSS DSL, it would be great to have full property completion support, syntax highlighting and the other usual suspects.
Two areas I expect to work on a lot is 1. making the operations of my IDE more "semantic" (as in, adapted to what I want to do. If it's easy to think about, it should be easy and quick to carry it out) and 2. Making a system of views that would let me bypass the traditional file-based view of a project. If you program in a mostly functional way, most of the time the load order and segregation into files is much less important than other possible views of the project.
12" PowerBook with Carbon Emacs 22 (if you're not using Emacs 22, you definitely should be).
It's as portable as I can get without getting cramps from typing. I am looking to check out the Lenovo U110 when it drops though, in which case I'll run Debian 4.0 with Xmonad.
I was using Emacs 21 but on your advice I installed 22. OMG! I was developing cataracts with 21, it was just so damn ugly. GTK is like corrective eye surgery. Cheers mate.
Anyone else find that they are absolutely bound to emacs and no matter what else you try to use, you find yourself, like a turtle returning to the beach where it was born, going back to emacs?
P.S. I have nothing against vi, but you know, turtles and nature and all of that.
1. First I tried Eclipse. And tried it again, and again. I couldn't figure out how to do the simplest darn things in Eclipse, hated the interface, and it just seemed too complicated to me.
2. Switched to vim + commandline. Invoking gcc directly.
3. Tried emacs - decided I felt the same way about it is I did about Eclipse. Too complicated and I can't figure out simple things.
4. Switched to GEdit + makefiles; still doing a lot on the command line.
5. Looked for a good visual IDE; discovered Anjuta. Was really impressed and happy for about 2 hours. After 2 days and Anjuta crashed for the 1000th time in a row, I wanted to strangle the programmers who wrote Anjuta.
6. Discovered KDevelop. KDevelop is a pleasure to use. Feature complete, very productive, no problems. Got to first milestone in project faster than expected, primarily because KDevelop was so good to work in.
MacBook Pro running OS X 10.5.2, Emacs, Python primarily, with occasional outbursts of TextMate, Lisp, Perl, Ruby and Logo (for teaching mathematical concepts to my son.)
* 15" Macbook Pro, 4GB, 10.4.8 (waiting for 10.5.3 before upgrading).
* Quicksilver (one of the big reasons I switched to Mac in the first place)
* IntelliJ IDEA for Java backend stuff (imho, the best code virtuoso tool out there bar none; once you get used to leveraging all the functionality, you will feel crippled in any other environment).
* iTerm for terminal needs
* Journler (perfect for note taking and keeping interesting reference web pages locally searchable)
* VMware Fusion for Windows development stuff
* NetNewsWire to consume my daily news fix efficiently
I use Quicksilver on my Powerbook (running Tiger), but Spotlight is fast enough on the Intel iMac, running Leopard, I use at work that I removed Quicksilver from the system completely.
I used to be bleeding edge, always upgrading to the latest version of anything that came out, but as a consequence ran into occasions where things broke that were working perfectly before (and ended up wasting time getting things back to normal again).
My guess is that with 10.5.3 the majority of the rough spots have been smoothed out and all my favorite applications had time to make the Leopard transition.
Note: all the software I have developed so far has been for personal use.
I use a desktop computer with a Microsoft Natural keyboard, Arch Linux, Emacs, Emacs Lisp, the shell rc.
The elements I am most pleased with are the keyboard and the shell rc. I am also pretty happy with Emacs Lisp, especially its manual and commands like C-h c C-h w and C-h f. Too many administration hassles with Arch Linux though. To reduce hassles, I would buy OS X if I were not very low income.
Darren, you a CodeIgniter guy? If you haven't already, I highly recommend getting started with the new ASP.NET MVC framework--it almost makes working with .NET in the day job tolerable (yes, "almost").
NetBeans (Sometimes TextMate), Mac OS X on a MacBook Pro, with all code in a Subversion repository.
I started using TextMate, but I find a bunch of things like how it jacks up indenting when pasting, and flashes when matching tabs. NetBeans handles both these things much more nicely.
Same here, however I've started treating my laptop as a 'thin client'. All my files are hosted on my iMac, which I access over Wi-Fi when at home, or via iDisk/Back to My Mac when elsewhere.
Textmate is just more approachable when it comes to extending the editor, though, so I usually use it for odds and ends over Emacs. Emacs is great for well structured projects in well supported languages.
Windows (Office 2007 won me over temporarily from *nix) and nano over SSH. I get yelled at almost daily to switch to emacs. I'm used to it though, I use Word 2007 instead of LaTeX and will never hear the end of it.
Eclipse (PDT/Flex Builder) + Text Mate + Aqua Data Studio + PostgresqlMaestro + nano (eat it vi! shove your c-h-ch-x-f-u-ch-k-sh-i-t emacs!) + iTerm + SubEthaEdit (for pair programming)
At home working on startup/contract work:
Macbook running OS X 10.5.whatever the latest, vim, sometimes emacs or aquamacs if I'm messing around with scheme.
Netbeans for RoR, gvim for everything else (perl, R, autohotkey, actionscript, C). Mercurial. 1920 x 1200 laptop in portrait position with an external IBM keyboard.
Mac Book Pro (15) with key mappings for home and end "fixed" with a 27.5 inch hanns g monitor (good, cheap and big). Netbeans b/c debugging can be handy.
here is mine:
Ubuntu, Scite, nano, ssh, LightTPD, Python, gcc, gcl and Firebug.
Virtual Box with FreeBSD and Windows Server 2003, Windows XP SP2 (for pre deployment testing)
Thank you all for sharing.
+1. Ubuntu 7.10, NetBeans 6 (Ruby), Git on my 14" laptop.
Very rarely using Eclipse (for Java). How is it for Python ? I am thinking about learning Python and Django.
When you work in Lisp by making DSL's and generally problem-specific extensions, I think the next logical step is to extend the IDE to support it directly (especially if you use the extension in many projects). If for example you make a CSS DSL, it would be great to have full property completion support, syntax highlighting and the other usual suspects.
Two areas I expect to work on a lot is 1. making the operations of my IDE more "semantic" (as in, adapted to what I want to do. If it's easy to think about, it should be easy and quick to carry it out) and 2. Making a system of views that would let me bypass the traditional file-based view of a project. If you program in a mostly functional way, most of the time the load order and segregation into files is much less important than other possible views of the project.