May 18, 2012
On Sat, May 19, 2012 at 01:21:56AM +0200, Mehrdad wrote:
> On Friday, 18 May 2012 at 23:02:18 UTC, H. S. Teoh wrote:
> 
> >I find IDEs more painful to use than scratching your nails on a chalkboard. The inability of running an IDE over a remote SSH session without everything slowing down to a snail crawl makes it completely unusable for me.
> 
> Have you tried running Eclipse/Visual Studio over Remote Desktop on Windows?

I don't use Windows except when I have to fix my wife's windows laptop. :-P


> Was it actually that slow?

Anything that has a GUI is unacceptably slow over a remote connection, last time I checked. I'm not talking about connecting over a local network, which doesn't really count, but a connection over the internet.


> >In the amount of time it takes the beast to paint the screen, I could've manually refactored the code three times over.
> 
> I don't think refactoring means what you think it means. xP
> 
> 
> Ever tried "Rename all references"?
> 
> It's impossible to do correctly without IDE support, unless all your variable names are unique (idk about you, but I've never seen a project like that).

Strange, last I checked, global variables aren't a good coding practice. :-) Renaming local variables is a trivial search-n-replace.

But you're right that certain renamings, like a member function name that may be overloaded across a large number of classes, could potentially be very painful. Though what I'd really like in that case is a syntax-tree aware text editor. Or a nice console-based IDE that isn't dependent upon a GUI.


[...]
> >The use of a _real_ text editor
> 
> I use SciTE, with a handful of tweaks to the source code (not big,
> just small changes).
> 
> It works on Linux as well, and it's amazing. (Not quite as powerful as Emacs/Vim, but it's hella more intuitive/easier to use, so worth it IMO.)

"Intuitive" text editors are ultimately also limited by their intuitiveness, because what most people think of as "intuitive" is "what I type appears on the screen" and "I don't have to memorize obscure key sequences to get stuff done". What you really need are _logical_ operations, like "navigate to the word 'void'", "go down 3 paragraphs", "go to the start of this block", "replace text up to the next matching delimiter", "select the function body", "line-wrap the selected text", etc..


> >(i.e., NOT that monstrous shipwreck of an excuse for software called notepad, or its dainbramaged second cousin wordpad)
> 
> LOL those are "editors"? I just thought they were 'pads'...

They aren't real editors, no, but a lot people seem to think they are.


> >Like, one that can filter an arbitrary text selection through an arbitrary-complex shell command.  Or that can repeatedly apply a complex sequence of editing commands at a single keystroke (as opposed to navigating the rodent through endless layers of menus).
> 
> Ever used macros in Visual Studio? (There might exist the same thing
> for Eclipse, idk.)

I'm not talking about having to click through 5 menus and type in a macro definition, bind it to some keystroke, and then run it afterwards. I'm talking about things like "search for this regex and replace it with that pattern, now do this again to the next 25 occurrences of the search term" -- ON THE FLY. I don't care to waste time defining a whole named macro just for this one occasion. I want to, in essence, write 1-line code to transform the current selection, right now.


> No?
> 
> Well, it does what you're saying.
> In a more powerful way than you're saying. :P

Then please enlighten me with an example. :-)


> >But I won't start the Visual Irritation vs. Extremely Massive And Cumbersome System flamewar here. ;-)
> 
> 
> ...oops

By which I mean VI vs. EMACS, of course. ;-)


T

-- 
In theory, there is no difference between theory and practice.
May 19, 2012
On Friday, 18 May 2012 at 23:50:18 UTC, H. S. Teoh wrote:
>> Was it actually that slow?
>
> Anything that has a GUI is unacceptably slow over a remote connection, last time I checked. I'm not talking about connecting over a  local network, which doesn't really count, but a connection over the internet.


Uhm, no.

The *slowest* GUI's I've seen are -- by far -- SSH-based. (e.g. remote Emacs -- even on a local network -- is horrible.)

I've _personally_ used National Instruments's tools over cable internet (if you've used them, you know they're certainly *not* less GUI-intensive than an IDE lol), and they're completely usable. Not /fast/, mind you -- but completely acceptable.

And no, my cable wasn't fantastic either.
And yes, it was plain old Remote Desktop.
Also, the other side's server was kinda slow too.

You should definitely try it. :P




> Strange, last I checked, global variables aren't a good coding practice. :-) Renaming local variables is a trivial search-n-replace.

lol ok you got me there


> But you're right that certain renamings, like a member function name that may be overloaded across a large number of classes, could potentially be very painful.

Yeah, imagine trying to name a method named "getValue()" to something else (probably because you realized that's not a great name :P).

A HUGE time waster without refactoring tools, and last time I checked, no text-based tool did it.


> Though what I'd really like in that case is a syntax-tree aware text editor.


100% agree, I've been looking for them too. But they don't exist. And practically speaking, without project management (in which case they'd be half-baked IDEs), the *can't* exist...


> Or a nice console-based IDE that isn't dependent upon a GUI.
,
I'd probably use them too, but they don't exist AFAIK. :(



> "Intuitive" text editors are ultimately also limited by their intuitiveness, because what most people think of as "intuitive" is "what I type appears on the screen" and "I don't have to memorize obscure key sequences to get stuff done". What you really need are _logical_ operations, like "navigate to the word 'void'", "go down 3 paragraphs", "go to the start of this block", "replace text up to the next matching delimiter", "select the function body", "line-wrap the selected text", etc..





> They aren't real editors, no, but a lot people seem to think they are.

lol. Those people probably haven't used Linux either. :P


> I'm not talking about having to click through 5 menus and type in a macro definition, bind it to some keystroke, and then run it afterwards. I'm talking about things like "search for this regex and replace it with that pattern, now do this again to the next 25 occurrences of the search term" -- ON THE FLY.

Oh, I misunderstood then. In that case, you don't even need an external tool...

Ctrl-H: Brings up Replace dialog.
Alt-E: Check the "Regex" box.
Alt-P: Type in the regex.
<types regex>
Alt-R: However many times you want, to replace the next instance.

Though I'd question what you were doing if it were 25 times. Most likely you want to do it within a certain range of the document, in which case you can highlight that portion of the text (with the keyboard or the mouse, both are easy :P), and just tell your editor/IDE to replace only that portion.

Both are a piece of cake, and neither needs an external tool.




> I don't care to waste time defining a whole named macro just for this one occasion. I want to, in essence, write 1-line code to transform the current selection, right now.

Yes, writing 1-line code is definitely easier in *nix-based tools (since they're text based, obviously), but if you have any other examples of actual tasks you do regularly, let me know -- I'm sure there's a way to do them with VS/Eclipse that isn't much different in terms of the amount of work/payoff.

>> Well, it does what you're saying.
>> In a more powerful way than you're saying. :P
>
> Then please enlighten me with an example. :-)

They give you access to the *entire IDE* and *all APIs whatsoever*, so "give me an example" results in "pretty much anything you want" -- minus the syntax tree, unfortunately (not sure why).

But if you need an example...

I've made a macro to look for all of my C++ include and library directories, and switch them from Visual Studio to Windows WDK (for various reasns).
Oh, and to detect where the WDK is, I read the registry keys inside the macro, find the directories, etc.. Easy. And *none* of the pain with escaping quotes or whatnot, since it's an actual *language* (VB.NET, which has nothing to do with VB6, btw -- just C# in a different syntax), not a Bash script.

Oh, and it supports different versions of the WDK.

All in about ~150-200 lines of VB.NET code, and I've used it a few dozens of times now. Saved my fingers from all the typing I'd otherwise have to do to change a gazillion project settings. And I don't have to interface with any text lol.

If you were to do this with some text-based tool, it'd be next to impossible IMO, since you'd have to edit XML settings, and keep track of all the repetitions (e.g. something might appear under a Debug node but not a Release node, etc.).


> By which I mean VI vs. EMACS, of course. ;-)


Ah lol.

I hate both. XD
May 19, 2012
On Saturday, 19 May 2012 at 00:39:22 UTC, Mehrdad wrote:
> If you were to do this with some text-based tool, it'd be next to impossible IMO, since you'd have to edit XML settings, and keep track of all the repetitions (e.g. something might appear under a Debug node but not a Release node, etc.).



Btw:

The "correct" way to do what I intended was to use Property Sheets, which are meant to be 'templates' for project settings.

Obviously, a lot easier than writing a macro -- just set the settings by hand once, and merge them with your projects later.

(Pretty sure your CLI tool doesn't have that either. :P)

But I didn't know about them beforehand...
May 19, 2012
On Sat, May 19, 2012 at 02:39:20AM +0200, Mehrdad wrote:
> On Friday, 18 May 2012 at 23:50:18 UTC, H. S. Teoh wrote:
> >>Was it actually that slow?
> >
> >Anything that has a GUI is unacceptably slow over a remote connection, last time I checked. I'm not talking about connecting over a  local network, which doesn't really count, but a connection over the internet.
> 
> 
> Uhm, no.
> 
> The *slowest* GUI's I've seen are -- by far -- SSH-based. (e.g. remote Emacs -- even on a local network -- is horrible.)

You must be using Emacs with a GUI.


> I've _personally_ used National Instruments's tools over cable internet (if you've used them, you know they're certainly *not* less GUI-intensive than an IDE lol), and they're completely usable. Not /fast/, mind you -- but completely acceptable.

GUI-intensive apps aren't even on my radar. I don't do GUI. I'm a command-line freak. The only GUI I consistently use is the browser, which I only use for nice embedded image support and the fact that nowadays, almost every website is graphic-intensive and specifically designed to be as painful to use as possible should you ever dare to turn off images.


> And no, my cable wasn't fantastic either.
> And yes, it was plain old Remote Desktop.
> Also, the other side's server was kinda slow too.
> 
> You should definitely try it. :P

I regularly do all sorts of stuff over SSH. And I don't mean SSH tunnelling that crap called X11, I mean good ole pure text-only SSH. As soon as anything with graphics factor into the equation, it turns into a crawling morass of slowness. Which is what I mean. GUI's are useless across an SSH connection.


[...]
> >But you're right that certain renamings, like a member function name that may be overloaded across a large number of classes, could potentially be very painful.
> 
> Yeah, imagine trying to name a method named "getValue()" to
> something else (probably because you realized that's not a great
> name :P).

Although I'd argue that somebody silly enough to actually design an API with methods called "getValue" deserves the pain of manually renaming every instance of it. :-P


> A HUGE time waster without refactoring tools, and last time I checked, no text-based tool did it.

Oh? It's called "rename the method and recompile, get 50 pages of compile errors, pipe it to a grep command that extracts the filenames and line numbers, use sed to transform that into a sed command that automatically substitutes every instance of the matching identifier on the given files/line numbers".

See, I told you I was a command-line freak. :-) You can't do that in any GUI app that wasn't specifically designed to handle that specific operation.  It's all fine and dandy when it *does* happen to support that exact operation that you need, but good luck when the app writers didn't think of this one case that you just ran into. Which I just did with basic tools designed 20+ years ago (probably longer). :-P


> >Though what I'd really like in that case is a syntax-tree aware text editor.
> 
> 
> 100% agree, I've been looking for them too. But they don't exist.  And practically speaking, without project management (in which case they'd be half-baked IDEs), the *can't* exist...

Well, I _did_ demonstrate how to do it above, given the proper tools and shell support. :-) It's a bit clunky, but hey, it works. And if you get further compile errors, just look those up (using suitable combinations of grep/sed) and undo the wrong substitutions. Just two steps, and you're done.


> >Or a nice console-based IDE that isn't dependent upon a GUI.
> ,
> I'd probably use them too, but they don't exist AFAIK. :(

My IDE is called vim. :-P *runs and hides*


[...]
> >I'm not talking about having to click through 5 menus and type in a macro definition, bind it to some keystroke, and then run it afterwards. I'm talking about things like "search for this regex and replace it with that pattern, now do this again to the next 25 occurrences of the search term" -- ON THE FLY.
> 
> Oh, I misunderstood then. In that case, you don't even need an external tool...
> 
> Ctrl-H: Brings up Replace dialog.
> Alt-E: Check the "Regex" box.
> Alt-P: Type in the regex.
> <types regex>
> Alt-R: However many times you want, to replace the next instance.

You're missing the point. My point was that you can do this with *arbitrarily complex sequences of operations*. Yes search and replace with regex is a specific command that's supported by your IDE, but what about "move one line down, one word over, increment the number by 1" repeated 50 times to repair a table of numbers that had some miscalculations"? In vim, you can group such sequences of operations and apply them repeatedly. The fact that the operations are logical (move one word over instead of move 5 characters over, which may not work if your code has varying word lengths) helps a lot.


> Though I'd question what you were doing if it were 25 times. Most likely you want to do it within a certain range of the document, in which case you can highlight that portion of the text (with the keyboard or the mouse, both are easy :P), and just tell your editor/IDE to replace only that portion.

It was just for illustrative purposes. It doesn't have to be "repeat n times"; what about "apply operation X,Y,Z until the end of the enclosing block"?


[...]
> >I don't care to waste time defining a whole named macro just for this one occasion. I want to, in essence, write 1-line code to transform the current selection, right now.
> 
> Yes, writing 1-line code is definitely easier in *nix-based tools (since they're text based, obviously), but if you have any other examples of actual tasks you do regularly, let me know -- I'm sure there's a way to do them with VS/Eclipse that isn't much different in terms of the amount of work/payoff.

Like I said, I do all sorts of insane stuff all the time. And not just with code, I regularly edit code, documentation, script files, data files, etc., in the same vim session. It sucks to have to open 15 different apps and waste time switching between them when I could do everything without my fingers leaving the keyboard for 1 second (and without focus-distracting cycling through windows).


[...]
> I've made a macro to look for all of my C++ include and library
> directories, and switch them from Visual Studio to Windows WDK (for
> various reasns).
> Oh, and to detect where the WDK is, I read the registry keys inside
> the macro, find the directories, etc.. Easy. And *none* of the pain
> with escaping quotes or whatnot, since it's an actual *language*
> (VB.NET, which has nothing to do with VB6, btw -- just C# in a
> different syntax), not a Bash script.

Bash scripts suck. We've established that. :-) Your example went over my head, 'cos I haven't used windows in any serious way for at least 15 years. :-P


[...]
> All in about ~150-200 lines of VB.NET code, and I've used it a few dozens of times now. Saved my fingers from all the typing I'd otherwise have to do to change a gazillion project settings.

Stop right there. Project settings, eh? lol... I remember that one term when I was TA in an introductory Java course (way back in the day), and we had to use VisualAge Java. Let's just say that I'm glad _I'm_ not one of the students. :-P  For me, an SConscript does my project management way better than any IDE project settings could ever do. And, being actually written in Python, I can write arbitrarily complex code for switching between compilers, libraries, operating systems, whatever, and just specify one or two command-line parameters, and the whole thing builds like magic.

In fact, SCons rulez so much that I build an _website_ with it, starting with source code that produce numerical programs that output data that gets turned into POVRay scenes, which gets rendered into images that are installed to the website. Then there are static php files that get piped through php-cli and installed as .html files.  There's also a particular image that's generated by scanning a Subversion log, filtering into a dataset that gets graphed by gnuplot, and then the image is installed to the website. And some sample source code that automatically gets tarballed. All of this is done with a single SCons command -- change a single file, and it automatically figures out everything that has to be updated (e.g., update the tarball), and leaves everything else untouched.

Now try writing an IDE that can do all of _that_ in one go. :-P


> And I don't have to interface with any text lol.
> 
> If you were to do this with some text-based tool, it'd be next to impossible IMO, since you'd have to edit XML settings, and keep track of all the repetitions (e.g. something might appear under a Debug node but not a Release node, etc.).

XML is the spawn of evil, next in evilness only to Javascript, but I digress. :-P Seriously though, you could just use xmlstar (google for it) if you really have to. XML is not meant for human consumption. Only machines can process that horribly tedious stuff without its brain turning into a pretzel.


> >By which I mean VI vs. EMACS, of course. ;-)
> 
> 
> Ah lol.
> 
> I hate both. XD

You don't know what you're missing.  No, really. Trust me, I know, because I used to hate them too. I hated them so much, that I wrote (well, tried to write) my own editor just so that I didn't have to use them, when pico just didn't cut it anymore for doing serious work.  And then my supervisor at my first job made me learn vim. Which made me hate it all the more. Until one day, after investing lots of time (and venting lots of frustration) into learning how to use it properly, it suddenly all *clicked*.

Since then, I've never looked back.  Now in retrospect (har har), all those other "editors" that I loved were actually just backbiting cripples that wasn't worth a pinch of my dedication to them.  Try it sometime. You might find yourself liking what you thought was impossible not to hate, ever. :-)


T

-- 
In a world without fences, who needs Windows and Gates? -- Christian Surchi
May 19, 2012
On Saturday, 19 May 2012 at 01:28:32 UTC, H. S. Teoh wrote:
> You must be using Emacs with a GUI.

No, I told you I hate Emacs. :P
I've seen *other* people do it, and it's horribly slow.


> GUI-intensive apps aren't even on my radar. I don't do GUI.

okay... maybe National Instruments's LabView wasn't a good example for when we're talking about programming lol.


> Which is what I mean. GUI's are useless across an SSH connection.

Ah, ok. That makes more sense than "GUIs are slow over an internet connection".
Yes, SSH wasn't designed for GUIs (or the converse), so of course it's slow.

Trying to force GUIs onto *nix systems is like trying to force a command-line tool on Windows... doesn't exactly work the way it's supposed to, and it gives you the wrong impression.


> Although I'd argue that somebody silly enough to actually design an API with methods called "getValue" deserves the pain of manually renaming every instance of it. :-P

LOL
How about "payload", where have I seen that before? lol



> Oh? It's called "rename the method and recompile, get 50 pages of
> compile errors, pipe it to a grep command that extracts the filenames and line numbers, use sed to transform that into a sed command that automatically substitutes every instance of the matching identifier on the given files/line numbers".
>
> See, I told you I was a command-line freak. :-)



Yes, that's clever. :P **EXCEPT**:

1. Compilers (cough, DMD?) generally limit their output to a few dozen errors, so your '50 pages' is kinda off. :P But yea, you could just loop until it works.


2. Okay, so that's clever. :P Now tell me what you do when you have dozens of lines in your source file like

	@property auto length() { return _range.length; }

and you want to rename the field 'length'? How do you prevent the second one from getting renamed?


Or say you have

	@property auto back() { ... }
	@property moveBack() { assert(0, "Cannot move an element from the back!"); }
	auto popBack() { }    // Remove an element from the back

and you change the name of the property 'back' to 'last':

	@property auto back() { ... }
	@property moveBack() { assert(0, "Cannot move an element from the last!"); }
	auto popBack() { }    // Remove an element from the last

Notice something funny?

Worse yet, no way in hell that a command-line tool would tell you your documentation is messed up. :P


> Well, I _did_ demonstrate how to do it above, given the proper tools and shell support. :-) It's a bit clunky, but hey, it works. And if you get further compile errors, just look those up (using suitable combinations of grep/sed) and undo the wrong substitutions. Just two steps, and you're done.


You're done? Or so you think.
See above.



> My IDE is called vim. :-P *runs and hides*

Better than Emacs loll :-P  *also runs and hides*


> You're missing the point. My point was that you can do this with *arbitrarily complex sequences of operations*. Yes search and replace with regex is a specific command that's supported by your IDE, but what about "move one line down, one word over, increment the number by 1 repeated 50 times to repair a table of numbers that had some miscalculations"?

Visual Studio has a "Record Macro" feature, to record keystrokes and such, but I haven't used it, so I don't know if it does what you want -- but yeah, if it doesn't, I can see why you'd choose Vim/Emacs/whatever.


> It was just for illustrative purposes. It doesn't have to be "repeat n times"; what about "apply operation X,Y,Z until the end of the enclosing block"?

Uhm, just highlight it and apply the operation to the highlighted block...



> It sucks to have to open 15 different apps and waste time switching between them when I could do everything without my fingers leaving the keyboard for 1 second (and without focus-distracting cycling through windows).

My hands don't leave the keyboard too often either... even the basics Alt-Tab/Ctrl-Tab/F8/PageUp/PageDown/etc. get the job done fairly well, and the mnemonics (e.g. Alt-O to hit the button with "O" underlined) make it 10x better.



> Your example went over my head, 'cos I haven't used windows in any serious way for at least 15 years. :-P

lol ok. If you get the chance sometime, might wanna give Windows 7 a try. :P
Last time I used Linux was a few days ago (Ubuntu) so I guess I'd naturally have more to say about it haha.



> Stop right there. Project settings, eh? lol...

Better than configure.in/configure/makefile.in/makefile/all that crap. :P



> For me, an SConscript does my project management way better than any IDE project settings could ever do.
> [...]
> Now try writing an IDE that can do all of _that_ in one go. :-P

I gotta use SCons, haven't used it before :)



> XML is the spawn of evil, next in evilness only to Javascript, but I digress. :-P Seriously though, you could just use xmlstar (google for it) if you really have to. XML is not meant for human consumption. Only machines can process that horribly tedious stuff without its brain turning into a pretzel.

Haha okay well if you claim the entire STACK of tools is evil then I guess I can't help you there lol.



> You don't know what you're missing.  No, really. Trust me, I know, because I used to hate them too. I hated them so much, that I wrote (well, tried to write) my own editor just so that I didn't have to use them, when pico just didn't cut it anymore for doing serious work.  And then my supervisor at my first job made me learn vim. Which made me hate it all the more. Until one day, after investing lots of time (and venting lots of frustration) into learning how to use it properly, it suddenly all *clicked*.
> Try it sometime. You might find yourself liking what you thought was impossible not to hate, ever. :-)


Haha I definitely will. I actually never thought they were /bad/ (they're just hard to learn and unintuitive, and so I hate them) but I definitely agree, I could certainly give them another chance and perhaps like them. Will give them another try when I get the chance. :)
May 19, 2012
On Saturday, 19 May 2012 at 02:10:31 UTC, Mehrdad wrote:
> Worse yet, no way in hell that a command-line tool would tell you your documentation is messed up. :P


I should submit a correction:

Nothing wrong with the command-line-ness per se -- it's just that command-line tools happen to be text-based, so when they just work with text, they miss the fact that it's documentation and not code. It's just that I haven't seen a command-line tool do refactoring like that.

An IDE would obviously make the same mistake, if you used Search/Replace instead of actually doing refactoring.
May 19, 2012
Am 19.05.2012 04:15, schrieb Mehrdad:
> On Saturday, 19 May 2012 at 02:10:31 UTC, Mehrdad wrote:
>> Worse yet, no way in hell that a command-line tool would tell you your
>> documentation is messed up. :P
>
>
> I should submit a correction:
>
> Nothing wrong with the command-line-ness per se -- it's just that
> command-line tools happen to be text-based, so when they just work with
> text, they miss the fact that it's documentation and not code. It's just
> that I haven't seen a command-line tool do refactoring like that.
>
> An IDE would obviously make the same mistake, if you used Search/Replace
> instead of actually doing refactoring.

I used to be an Emacs fan, but the no Emacs plugins are able to deliver the set of tools any IDE offers.

- visual code navigation, away better than cscope/ctags are able to offer
- dependency analysis tools between modules
- code refactoring
- compile as you write
- code completion with direct code documentation popups
- method/classes information as popup
- RAD tools for UI generation
- Locate all usages of a given symbol, even across compiled modules
- Show call sequences for a given method/function
- Find using semantic information
- Plugins repositories
- Debugger integration, with possible edit and continue

All of the above feature made me a fan of IDEs, since the MS-DOS days.

You can do a lot of those features in Emacs or VIM, but they are all text based, and always feel like a poor man's solution, when you already
experienced the IDE ones.

--
Paulo

May 19, 2012
On 19.05.2012 3:03, H. S. Teoh wrote:
> On Fri, May 18, 2012 at 11:08:26PM +0200, Mehrdad wrote:
>> On Friday, 18 May 2012 at 19:40:35 UTC, H. S. Teoh wrote:
>>> This is one of those things that makes Windows (l)users wonder how we
>>> Unix people can stand using the shell all day -- their idea of shell
>>> is the DOS prompt (a veritable train wreck of train wrecks).  If only
>>> they knew what a *real* shell can do. ;-)
>>
>>
>> Don't generalize. :P
>
> Well, that was partially tongue-in-cheek. ;-)
>
>
>> I'm a Windows user, but yes, I've used Linux.... and yes, the command
>> prompt is indeed a train wreck. Bash is indeed a lot better.
>>
>> And no, I haven't used PowerShell; I hate programs that take too long
>> to start up.
>
> Whoa. PowerShell takes a long time to start up? Sounds like it's already
> a train wreck even before you start using it.
>

Far is the command line for windows. And a decent editor, and ftp client that doesn't suck and..

-- 
Dmitry Olshansky
May 19, 2012
On 19/05/2012 00:51, H. S. Teoh wrote:
> On Sat, May 19, 2012 at 01:21:56AM +0200, Mehrdad wrote:
>> On Friday, 18 May 2012 at 23:02:18 UTC, H. S. Teoh wrote:
>>
>>> I find IDEs more painful to use than scratching your nails on a
>>> chalkboard. The inability of running an IDE over a remote SSH
>>> session without everything slowing down to a snail crawl makes it
>>> completely unusable for me.
>>
>> Have you tried running Eclipse/Visual Studio over Remote Desktop on
>> Windows?
>
> I don't use Windows except when I have to fix my wife's windows laptop.
> :-P
>
>
>> Was it actually that slow?
>
> Anything that has a GUI is unacceptably slow over a remote connection,
> last time I checked. I'm not talking about connecting over a local
> network, which doesn't really count, but a connection over the internet.

If you want to see _real_ slowness, try opening in MS Access (running locally) a .mdb that is on a fileserver accessed via a VPN connection.  That's what they briefly made me do in one of my recent jobs.

<snip>
>> It works on Linux as well, and it's amazing. (Not quite as powerful
>> as Emacs/Vim, but it's hella more intuitive/easier to use, so worth
>> it IMO.)
>
> "Intuitive" text editors are ultimately also limited by their
> intuitiveness, because what most people think of as "intuitive" is "what
> I type appears on the screen" and "I don't have to memorize obscure key
> sequences to get stuff done".
<snip>

No, because such an editor could still provide obscure key sequences for those advanced features that are beyond what can reasonably be done with an intuitive GUI.  Whatever those advanced features are.

Stewart.
May 19, 2012
On May 18, 2012, at 5:39 PM, "Mehrdad" <wfunction@hotmail.com> wrote:
> 
> Yeah, imagine trying to name a method named "getValue()" to something else (probably because you realized that's not a great name :P).
> 
> A HUGE time waster without refactoring tools, and last time I checked, no text-based tool did it.

Possibly because this can be accomplished from the command line with find/grep/sed and the like.