From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Emanuel Berg Newsgroups: gmane.emacs.help Subject: Re: Looking for a project management system Date: Sun, 17 Aug 2014 04:57:24 +0200 Organization: Aioe.org NNTP Server Message-ID: <8738cvu8kr.fsf@debian.uxu> References: <9025b1$i8kbee@ironport9.mayo.edu> <24b3987e418a4c6eb7995418d744f383@fcmailsvr2.familycareinc.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1408244425 24626 80.91.229.3 (17 Aug 2014 03:00:25 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 17 Aug 2014 03:00:25 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Sun Aug 17 05:00:19 2014 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XIqhf-0002h8-C5 for geh-help-gnu-emacs@m.gmane.org; Sun, 17 Aug 2014 05:00:19 +0200 Original-Received: from localhost ([::1]:37357 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XIqhe-0004KL-Qp for geh-help-gnu-emacs@m.gmane.org; Sat, 16 Aug 2014 23:00:18 -0400 Original-Path: usenet.stanford.edu!news.tele.dk!news.tele.dk!small.news.tele.dk!newsfeed.xs4all.nl!newsfeed4.news.xs4all.nl!xs4all!news.stack.nl!aioe.org!.POSTED!not-for-mail Original-Newsgroups: gnu.emacs.help Original-Lines: 93 Original-NNTP-Posting-Host: SIvZRMPqRkkTHAHL6NkRuw.user.speranza.aioe.org Original-X-Complaints-To: abuse@aioe.org User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux) X-Notice: Filtered by postfilter v. 0.8.2 Cancel-Lock: sha1:Vt/7vts5ZHRUi7dZJXGK2vxwp0U= Mail-Copies-To: never Original-Xref: usenet.stanford.edu gnu.emacs.help:206971 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:99248 Archived-At: I depends what you mean by project management system. To me, that begins with having the files organized logically, and with short, clear names that are easy and fast to type, all in directories to show purpose and encapsulate. This I do in the shell (tmux/zsh) but and sometimes Dired, as mentioned. Then, to switch between buffers fast I have a system where I add each and every file. It is actually very fast to setup, one file at a time. Then the files are brought up by hitting a key sequence, that mirrors the filesystem and/or the purpose of the file. So, for example, I have `C-j g m' -- `C-j' (brings up the buffer-switching system), `g' (for Gnus), and `m' (for mail) -- to reach gnus/mail.el. With editing keystrokes, I always said they should be close, short, and they don't have to be mnemonic because they enter your muscle memory instantly and bypasses all that anyway, almost instantly. However, for buffer-switching, the keystrokes should still be close (i.e., doesn't require your hands to move from typing position) - but it isn't that important. They don't have to be short either, as long as they make sense so you can remember them there isn't that much time to win as you won't switch between buffers constantly (I hope!). So it is a bit of a different animal. They should be mnemonic to impose the project structure but foremost so you can remember them all. It all makes up a tree: again to exemplify, I have one tree for Emacs, one for zsh functions, and so on. I didn't have this for my last project, so there isn't such an example present, but there will be, next time. I'll just show the code and perhaps someone will like it: http://user.it.uu.se/~embe8573/conf/emacs-init/navigate-fs-keys.el The buffer meny and such features aren't good because they make you browse, iterate, search. I want everything to be 100% in the flow, no searching, no browsing long lists, everything should follow naturally. And I don't mind memorizing keystrokes to this end - actually I don't have to, almost, as it is so intuitive. If I were to strike a key and get to a buffer I didn't intend to bring up, I would change that so that would actually get the intended buffer, next time. I also have this to manage TODO and NEWS files: http://user.it.uu.se/~embe8573/conf/emacs-init/todo-did.el The TODO list is very useful. Every time I think of something I just do `M-x todo RET' and write a couple of words to describe it. Then I go back to what I was doing as I probably have so much of that in my head it would be a waste to do the "TODO thing" at this point. Next time I feel like relaxing, while being active/productive nonetheless, I just check the TODO file (which I have `C-j t') and start picking down items. I also did something similar with a NEWS file, in that same Elisp file. If you have a bunch of programmers working for you it is very good to keep track of what they do. But I don't have that, so the benefit for me was just mentally, to know there is progress every day. For a project the size of a master project at the university, or a game (e.g., Heroes of Might and Magic) it might make sense, for anything smaller than that I don't think it is called for. If you know of other aspects of managing a project (other than structure, getting to the different files back and forth, TODO, and NEWS) feel free to ask, I might have something on that as well. There are of course many aspects of Emacs that are close, but not quite, on topic here. For example the .mailrc file to keep track of everyone who works on the project. Or Gnus for quick access to Usenet so you can ask on comp.lang.c when you get segmentation fault. And all such things. It is not really managing a project but they make working on a project ten times as productive and one hundred times as pleasant. Good luck! -- underground experts united