4 ms·
Poll: What kind of tool do you use to write code?
I'm curious not for people's specific tools, but the types of tools they use. When you go to write code, which of these do you use?
- tagada 14y agoText Editor, Definitely.
- WayneDB 14y agoI would like to see this correlated with the type of software being worked on.
- drinchev 14y agoExactly!
- drstewart 14y agoI think it would more strongly correlate with the type system of the language you're using.
- jacobsimeon 14y agoFor ruby/rails development I use vim and iterm2. For .NET dev: VS2012 + ViEmu + Resharper
- tesmar2 14y agoI used to be a vim guy until the visual debugging in RubyMine won me over. That and (jump to function) is much better than keeping ctags up to date via a git hook.
- tesmar2 14y agoI used to be a vim guy until the visual debugging in RubyMine won me over. That and (jump to function) is much better than keeping ctags up to date via a git hook.
- mc4ndr3 14y agoOh God, I hate overblown IDEs. If I wanted less control over my development environment I wouldn't be making software, I would rely on whatever already existed.
- RyanZAG 14y agoMeta+Click on a function to take you to that function's implementation is easily one of the most production enhancing benefits of an IDE in larger code bases. Also, don't knock the ability of some IDEs to show function documentation on mouseover - this can save a huge amount of time in reading API docs.
- holri 14y agoemacs can do this too and gives you complete control over everything. You can even go to the lisp source of the editor commands very easyly.
- carbocation 14y agoYour point and the point of the comment to which you are replying seem to suggest a 3rd space. (1) There are IDEs, which include things such as build automation, debuggers, function lookups, etc. (2) There are text editors which maybe give you syntax highlighting. I don't think I'm saying anything novel by suggesting that there is also an in-between: something that provides syntax highlighting, function lookups, etc., but which doesn't try to build your project for you. You can use emacs like this, and you can use an IDE like this. So, many people voting for text editor and many voting for IDE may actually mean something more like this.
- huhtenberg 14y agoctags followed by Ctrl-T in vim does the exact same thing.
- mercurial 14y agoIncluding functions from an external libraries?
- mc4ndr3 14y agoOh God, I hate overblown IDEs. If I wanted less control over my development environment I wouldn't be making software, I
- drinchev 14y agoA lot of Text Editors may act like IDE and a lot of IDEs are used only for certain kind of work. E.g. I'm using XCode for writing (i)OS(X) apps and SublimeText for web development!
- honopu 14y agoI use an IDE(PHPStorm) under OSX( 3 monitor mac pro).. I'm not super thrilled at the IDE's performance under my laptops specs.. but I do get by when I absolutely have to. I write in PHP(i know.. trust me i know... especially around here), tons of javascript etc. but I feel like the code completion in PHP really helps me keep less in my head that isn't really that important. I've heard great things about sublimeText but I haven't really felt a pressing need for it.. yet.
- donutdan4114 14y agoI use PhpStorm for working on very large web projects. When working with smaller frameworks or just writing a script or something, I prefer the aesthetics and simplicity of Sublime Text. When working on large projects I find that having a good debugger can save a lot of time. The first thing I do when installing PhpStorm though, is reconfigure the look and feel of it. I definitely agree that "less is more" when it comes to having a clean environment, but I have also seen way too many developers using Vim or Sublime that take twice as long to do something because they are not using a real debugger, and they have to look-up every function definition, when PhpStorm would just autocomplete the function names and let you know what the params should be. As RyanZAG pointed out, being able to click on a function and go right to it is an awesome benefit of IDE's as well as function definitions, autocomplete doc comments, and simply a better understanding of language constructs (it can show you errors based on syntactical error).
- kellros 14y agoI mainly do .NET development and must admit Visual Studio is the best IDE around (especially with Resharper and other plugins/extensions). I would rate the jetbrains IDE's best in their class (IntelliJ idea, pycharm, rubymine, webstorm etc). I also found the eclipse distros pretty good as well (ex. Galileo). Overall there are some pretty good IDE's around, just need to shop around a bit. I personally use notepad++ as a text editor, although lately I have been favoring sublime text 2. Geany on Linux seems pretty solid as well. The point stays that IDE's generally favor statically typed languages while text editors are generally used for dynamic, scripting and low level languages.
- boyter 14y agoThis is pretty much the exact post I was about the write. Visual Studio at work (with a smattering if Eclipse/Netbeans/IntelliJ). Visual Studio is hands down the best IDE I have ever used. Big fan of it and C# (just wish Linux support was better). Otherwise Notepad++ for everything, including Linux development (all done inside virtual machines).
- timrpeterson 14y agosublime nuff said
- pzeups 14y agobest one online editor: Codiad ( http://codiad.com http://codiad.com ) based on Ace (ex Bespin by Mozilla) developped open sourcely in PHP, no bullshit around collaborative tools. Simple and efficient.
- wyclif 14y agoVim with a few select plugins, like NERDTree and Command-T, combined with tmux (until recently used screen).
- vishl 14y agoCheck out ctrl+p. It's an updated and more portable version of command-t
- ConceitedCode 14y agoTmux and Vim with Exuberant Ctags, Command-T, NERDTree and few a others. Got my workflow down to the point where all I need is a shell and a web browser.
- codecool 14y agoI use Pycharm for Python. Amazing IDE!
- gsibble 14y agoI've been very happy with PyCharm too.
- autarch 14y agoI was tempted to click Other since I use Emacs, which is arguably an OS.
- alexmic 14y agoSublime.
- evanmoran 14y agoAll night long.
- dillon 14y agoI use Vim with the Janus plugin. What I really like about Vim is its ability to be more powerful than any IDE if you take the time to write plugins to give yourself exactly what you need.
- dasil003 14y agoI use vim because I love the raw editing power. I do use a handful of plugins (Fugitive is nothing short of amazing), and of course I've dialed in quite a few settings, but ubiquity and baseline power is my primary goal over customizability, if it were the other way around I would use emacs.
- mercurial 14y agoI dispute this statement. Vim is more powerful for editing text than anything you will find in any IDE, including "vim modes". However, with or without plugins, it's not in the same league as an IDE like Eclipse when it comes to refactoring, error highlighting, automated imports, etc. Now you can argue that many of these features are only necessary for languages like Java or C#, and that you can get by without them for everything else.
- lowboy 14y agoEclipse et al might be more capable (and appropriate) for some tasks in some languages, but I'd say Vim is generally "more powerful".
- metaobject 14y agoEditor: emacs with a thick, customized elisp layer for things like inserting skeleton code (blank for loops, blank class defa, etc), documentation templates, etc. I work on simulation and visualization tools in C, C++, Python, and when I can squeeze it in some Common Lisp.
- huhtenberg 14y agovim is arguably an IDE, because of :make and the ability to jump through build errors without leaving the editor. I don't think one can't debug in vim, but then depending on what you write you may very well not have this need to begin with.
- mcsmash 14y agoThere are plugins that allow for debugging. I was hacking on a web-app that was possibly the worst PHP any one in my office had ever seen. I wouldn't have been able to get ANYTHING done without it. For anyone that's interested: http://www.vim.org/scripts/script.php?script_id=1152 http://www.vim.org/scripts/script.php?script_id=1152
- deltasquared 14y agoForced to use an IDE at work, emacs at home.
- forgottenpaswrd 14y agoMostly vim. Then Xcode and Eclipse(I really hate eclipse but it does some things I need). I also create my own tools and IDEs to do things nobody has automated faster.
- rheide 14y agoI never was a huge fan of Eclipse in the past, but later iterations of it combined with running the huge hunk of junk off of an SSD makes it really quite good these days (IMHO). I'm using it for Python, it has pep8 integration, a nice graphical diff for git and as much syntax error detection as you can expect for a dynamic language.
- topbanana 14y agoVisual Studio for .Net, IntelliJ for Java, or Sublime Text for anything else
- logn 14y agoAptana Studio (Eclipse based). Works well for PHP, Ruby, Python, JS, HTML.
- chameco 14y agoVim with dwm, TMux/TMuxinator, and urxvt. On the plugin side, I use slimv (I know editing Lisp with Vim is blasphemy, but meh), Easytags, and Syntastic. Just discovered Syntastic: I highly HIGHLY recommend it for everyone ever, just because of how much it shortens the compile-check-fix-compile cycle. Easytags is there basically to make omnicompletion more convenient. Of course, it's all tied together with Pathogen :P. EDIT: Forgot to mention, I'm primarily editing C, Python, and Common Lisp, but there is some Perl, Haskell, and C++ too.
- vishl 14y agoI second syntastic. Syntastic+JSHint probably catches 90% of my js errors (front-end javascript, not server side, fyi)
- tikhonj 14y agoI use Emacs. Ostensibly, it's a text editor. But for some languages, it's essentially an IDE. For example, I use typerex for OCaml which takes advantage of OCaml's type system to provide a bunch of high level features like showing errors in the code, auto-complete and some refactoring. My main point (apart from the fact that OCaml and Emacs are awesome) is that there is no clear delineation between text editors and IDEs.
- drivebyacct2 14y agoSublime Text 2 but with GoSublime, it does most of what I want out of an IDE.
- lefnire 14y agoWebStorm + Emacs
- jacquesm 14y agoI checked 'other' as well because I don't actually write a lot of the code I use software to write it for me. The idea of programs writing other programs has fascinated me pretty much since I started with computers and it has never left me. So if I feel that a piece of code is repetitive I write a chunk of code to write code like that and then re-invoke the generator when I need more code like that. As an example: structures, serialization, de-serialization, validation, allocation, freeing, database storage, variations of the same algorithm in different languages and so on. To a lisp programmer this would be second nature (they'd wonder why it's so special) but in other languages it can be quite a hassle to keep multiple instances around of similar code. Code generation is a real booster, the biggest gains I'm getting are 100:1 (a small 10 line definition spitting out a 1000+ lines of code), there is nothing to re-factor just update the generator inputs and hit 'make', old generated code is stripped, new generated code will be inserted into the project so you can inspect it afterwards (and to the compiler it looks just like ordinary human written code). The code generator writes comments as well to clarify the output. Writing the generators can be quite tricky, you have to think on two levels at once (the code you're writing and the code you want to generate). There are some shortcuts here to make that process easier. The end result of this process is to have code produced very with - once a single example has been produced and debugged - a much reduced chance of errors.
- lowboy 14y agoAnd what do the interfaces to these programs look like? Are they off the shelf programs or do you have to write (parts of) them yourself? I'm guessing you still write code.
- jacquesm 14y ago> And what do the interfaces to these programs look like? You get a bunch of readably named functions that you talk to just as if you'd written a library painfully from scratch. > Are they off the shelf programs or do you have to write (parts of) them yourself? The interfaces themselves are generated, the code that uses the interfaces is written just like any other program. Unfortunately I can't generate 100% of the code, the business logic bits still need to be written. But even there we're making progress in identifying bits and pieces that are more generic. As more and more code moves to the generated input the whole thing starts to take on the guise of a very high level DSL. The real knowledge is vested in the generator and how to keep it flexible and still be able to generate code specific to the problem at hand. This can be quite tricky. > I'm guessing you still write code. Absolutely, just far less of it than I would have to write otherwise. It's been slow going getting this set up but now that we have it the speed is phenomenal.
- jango 14y agoLeo: Leonine Editor with Outlines. Takes a while to grasp its power but it's my favorite tool I use frequently. http://webpages.charter.net/edreamleo/intro.html http://webpages.charter.net/edreamleo/intro.html
- teilo 14y agoI did most of my Python work in TextMate for quite a while. I tried Eclipse for a time, but didn't care for it. Now I use PyCharm (IDEA), because its code completion is excellent, and its debugger integration is fantastic when doing web work. Also, it has a decent vim mode plugin.
- hsmyers 14y agoI use EditPlus and Alt Tab to a cmd window. Certainly not an IDE, but close enough for me. For C++ I either use CodeBlocks or VC10. Much of my class code is generated from document/specification by a Perl script. This works nicely for either IDE given the necessary command line switches.
- mahmoudimus 14y agoIntelliJ + Emacs I can't go wrong :) I have a simple keybinding bound to opening the buffer I'm working on in the IDEA to open the file in Emacs if I need to slice/dice text using my emacs-fu, but IntelliJ + its plugins are eff'ing amazing.
- blender 14y agoOther: Your Brain
- johncoltrane 14y agoText Editor (Vim) for everything (HTML, CSS, JS, PHP, Python, bash, txt, markdown…) except for AS3 for which I use FlashBuilder/Eclipse. Before switching to Vim a little more than 2 years ago, I had been using TextMate for about 3 years, before that I used BBEdit for a while and before that I learned the basics in Dreamweaver 3. Neither Dreamweaver nor BBEdit were really "chosen". A friend advised me to start with Dreamweaver which was indeed very helpful and confortable when I began coding in the late 90's but after a while, I got fedup of the constant spoonfeeding and I didn't really need all the wysiwyg tools anymore so I switched to BBEdit which was the de facto text editor on Mac OS at the time. I still used BBEdit and/or TextWrangler until I fell in love with TextMate sometime between 06 and 07 and, later, the command line. Then I got bored and decided to switch to Linux full time. I spent almost a year looking for a TextMate alternative and found Vim to be the best candidate. And ultimately blow TextMate in every ways. To be honest, I'd have gone with ST2 if it existed at that time, though. Give me a real keyboard, an UNIX-y system, a terminal emulator, exuberant ctags and Vim and I'm a happy man.
- mrThe 14y agoEditor(sublime text) for ruby, but IDE for php.