Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.programming > #2704

Re: programmer's keyboard

From BGB <cr88192@hotmail.com>
Newsgroups comp.programming
Subject Re: programmer's keyboard
Date 2012-12-31 03:13 -0600
Organization albasani.net
Message-ID <kbrl33$659$1@news.albasani.net> (permalink)
References (11 earlier) <kbq073$jv2$1@dont-email.me> <kbq4t1$988$1@news.albasani.net> <akbmv7Fltc3U3@mid.individual.net> <kbqiq3$3q7$1@news.albasani.net> <akc2s5Fltc3U4@mid.individual.net>

Show all headers | View raw


On 12/30/2012 6:00 PM, Ian Collins wrote:
> BGB wrote:
>> On 12/30/2012 2:36 PM, Ian Collins wrote:
>>> BGB wrote:
>>>> On 12/30/2012 12:12 PM, Rui Maciel wrote:
>>>>>
>>>>> You can use version control systems to manage local projects, without
>>>>> having
>>>>> to transfer any data through a network.  You can also copy the whole
>>>>> project
>>>>> around, versioned data and all.
>>>>>
>>>>
>>>> granted, but it isn't really all that clear if/how it is worth the
>>>> hassle of doing so.
>>>
>>> The "hassle" of typing "hg commit" once in a while is far outweighed by
>>> the convenience of being able to type "hg revert" when you break
>>> something.
>>>
>>
>> or, a person can be systematic, and manually revert the last changes
>> they made (this being a big win for "#if 0" and "#if 1")
>>
>> or, maybe just hit CTRL-Z a few times (if the breaking change was
>> recent).
>>
>> if by some chance they really screw up, copy/paste files from an older
>> version.
>
> So that's all less hassle than "hg revert"?
>

partly yes, because usually this can be done via the GUI, whereas typing 
in "hg revert" could very well involve bringing up a shell, changing to 
the right path, and typing it in.

granted, TorgoiseHg adds revert to Explorer, making the above a bit moot.


the rest would come down mostly to granularity.
(like, if you revert, it will go back to the last commit, meaning being 
strategic about when to commit, ...).

guards, however, can be finer-grained, and can be enabled/disabled at 
will, rather than depending specifically on the immediate history.

and, CTRL-Z is about specific edits, meaning it can undo very recent 
changes, and go as far back (usually) as there are undo levels, or when 
the editor was last closed and reopened (whichever was more recent).



it is much like the tradeoff between using Find/Replace and grep or sed.

Find/Replace is often easier, because it it right there in the editor.

grep and sed are much more powerful, but require using a shell (often a 
different shell from the one used for recompiling), so are usually only 
really justified if one needs to search for something where they really 
can't remember where it is, or where doing a *lot* of replacement, like 
to justify to themselves the effort of opening a new shell and typing 
the relevant 'cd' commands and similar.


this balance gets skewed further if one is dealing with a plain Visual 
Studio project.

granted, yes, in this case, I typically build via the command-line, 
mostly because VS doesn't really scale all that gracefully IMO, and past 
a certain point command-line builds, and managing most of the rest of 
the project via Windows Explorer, become preferable.

granted, VS is pretty useful for small apps and tools though.
granted, yes, a person can also debate the whole MSBuild vs Make thing, 
where I am personally on the Make side.

now, why do I defend using the command-line for this?... because I can 
repeat prior commands with arrow keys and enter. so, past an initial bit 
of typing, the effort-involved is not considerably higher than hitting 
F5 in VS, but there is less annoyance from dealing with VS's lackluster 
file-management and laggy editor (though, I still often use VS for the 
debugger).

granted, yes, a person still has to wait for the compiler to do its 
thing, ...


the convenience balance may be partly reversed on Linux though, mostly 
because on Linux a person will typically have to resort to 'cp' or 
similar, and because the graphical file manager kind-of sucks pretty 
bad... (well, it is like, in GNOME 2, the file manager is bad, and in 
GNOME 3, everything is bad...).


>>> As for copying, with Mercurial at least, everything in in the source
>>> directory, so there's no additional effort required.  Because you don't
>>> have all those dated directories floating around, where's way less data
>>> to copy.
>>>
>>> The convenience of being able to use ssh to clone and synchronise
>>> between hosts and devices is a big win.
>>>
>>
>> you can also transfer things using, say, FTP, or network shares (if on a
>> LAN). (granted, yes, a person needs an FTP server for the FTP route).
>
> Share maybe, but handle merging?  Branches?
>

not usually a big issue for a single developer project.

more so, if the developer does the bulk of their development from a 
single computer (which then generally holds the "authoritative" copy).

more often, if I am going to be away, and have a laptop, I will usually 
make a copy on an external HDD (or "USB Mass Storage Device"), then if I 
work on it more, that version will become the authoritative copy, at 
least until I copy it back onto my main computer.


>> an advantage of FTP is that (at least via Windows Explorer) it also
>> supports copy/paste and drag-and-drop (of both files and folders).
>
> There's a whole big world outside the windows.
>

yes, but this doesn't really matter, if the person is running Windows.


>> meanwhile, SSH is only really useful if the other end is running Linux,
>
> Nonsense, ssh is useful out of the box in most decent operating systems
> and probably windows too with the appropriate package.
>

you can't really effectively administer (normal) Windows though via SSH, 
so its usefulness is greatly reduced vs Linux. partly this is because 
there is actually a lot less that can be done via the command-line on 
Windows, given how much the OS's UI was designed around the GUI.

granted, yes, in the case of a Linux host, there is X over SSH fun, 
making SSH much more useful for a Linux host.


so, remote administration of Windows more generally involves using 
things like VNC or Remote Desktop or similar, which provide full GUI.


>> and requires using tools like PuTTY or similar (or, at least, the
>> version included with my current install of Cygwin just says "openssl
>> failed to initialize").
>>
>> as-is though, both my main computer and web-server are running Windows...
>
> So share your repository via http(s)!
>
> You can use Tortoise HG to pull from or push to remote repositories on
> windows.  You should try it (or Tortoise SVN) some time, it is an
> excellent application.
>

I was using TortoiseHg before with BitBucket.

as noted before, the main killer was the long upload times, and because 
it seemed to want nit-picky things, like creating a new version entry 
and typing something in the changelog, before it would commit anything.


granted, yes, it could be about learning curve or settings or something, 
but in this case, it doesn't make a good case for it being less of a hassle.


less effort depends a lot on situation, like for multiple developers, it 
is probably a lot less effort to use version-control, than deal with the 
hassle that is emailing around code and/or dealing with diff patches.

for a single developer though, it is harder pressed that it is less 
effort, since a lone developer hardly ever has reason to diff their own 
code.

Back to comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

programmer's keyboard bob <bob@coolfone.comze.com> - 2012-12-26 11:45 -0800
  Re: programmer's keyboard Robert Wessel <robertwessel2@yahoo.com> - 2012-12-26 15:01 -0600
    Re: programmer's keyboard "BartC" <bc@freeuk.com> - 2012-12-26 21:36 +0000
      Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-26 21:12 -0600
      Re: programmer's keyboard Robert Wessel <robertwessel2@yahoo.com> - 2012-12-27 23:45 -0600
        Re: programmer's keyboard "BartC" <bc@freeuk.com> - 2012-12-28 13:46 +0000
          Re: programmer's keyboard Ian Collins <ian-news@hotmail.com> - 2012-12-29 11:42 +1300
          Re: programmer's keyboard "Chris Uppal" <chris.uppal@metagnostic.REMOVE-THIS.org> - 2012-12-29 15:15 +0000
            Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-29 14:41 -0600
              Re: programmer's keyboard "BartC" <bc@freeuk.com> - 2012-12-29 21:10 +0000
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-29 15:26 -0600
                Re: programmer's keyboard "BartC" <bc@freeuk.com> - 2012-12-29 22:41 +0000
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-30 02:12 -0600
                Re: programmer's keyboard "BartC" <bc@freeuk.com> - 2012-12-30 11:20 +0000
                Re: programmer's keyboard malcolm.mclean5@btinternet.com - 2012-12-30 10:19 -0800
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-30 14:51 -0600
              Re: programmer's keyboard Ian Collins <ian-news@hotmail.com> - 2012-12-30 10:43 +1300
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-30 01:55 -0600
                Re: programmer's keyboard Ian Collins <ian-news@hotmail.com> - 2012-12-30 21:06 +1300
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-30 02:35 -0600
                Re: programmer's keyboard Rui Maciel <rui.maciel@gmail.com> - 2012-12-30 18:12 +0000
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-30 13:30 -0600
                Re: programmer's keyboard Ian Collins <ian-news@hotmail.com> - 2012-12-31 09:36 +1300
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-30 17:27 -0600
                Re: programmer's keyboard Ian Collins <ian-news@hotmail.com> - 2012-12-31 13:00 +1300
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-31 03:13 -0600
                version control (was: Re: programmer's keyboard) rugxulo@gmail.com - 2012-12-31 10:36 -0800
                Re: programmer's keyboard Ian Collins <ian-news@hotmail.com> - 2013-01-01 09:05 +1300
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-31 16:58 -0600
                Re: programmer's keyboard Ian Collins <ian-news@hotmail.com> - 2013-01-01 13:24 +1300
                Re: programmer's keyboard Rui Maciel <rui.maciel@gmail.com> - 2013-01-02 12:23 +0000
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2013-01-02 14:34 -0600
                Re: programmer's keyboard Robert Wessel <robertwessel2@yahoo.com> - 2013-01-02 15:35 -0600
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2013-01-03 13:19 -0600
                Re: programmer's keyboard Willem <willem@turtle.stack.nl> - 2013-01-03 08:35 +0000
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2013-01-03 13:46 -0600
                Re: programmer's keyboard rugxulo@gmail.com - 2013-01-03 00:52 -0800
                Re: programmer's keyboard Rui Maciel <rui.maciel@gmail.com> - 2013-01-03 15:00 +0000
                Re: programmer's keyboard Rui Maciel <rui.maciel@gmail.com> - 2013-01-02 11:58 +0000
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2013-01-02 15:03 -0600
                Re: programmer's keyboard rugxulo@gmail.com - 2013-01-03 00:54 -0800
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2013-01-03 13:06 -0600
                Re: programmer's keyboard Rui Maciel <rui.maciel@gmail.com> - 2012-12-30 18:04 +0000
                Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-30 14:24 -0600
                Re: programmer's keyboard Rui Maciel <rui.maciel@gmail.com> - 2013-01-02 11:34 +0000
          Writing Experimental Code "Aaron W. Hsu" <arcfide@sacrideo.us> - 2013-01-02 15:08 -0600
  Re: programmer's keyboard Rui Maciel <rui.maciel@gmail.com> - 2012-12-28 11:45 +0000
    Re: programmer's keyboard BGB <cr88192@hotmail.com> - 2012-12-28 12:29 -0600

csiph-web