From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id gBwFDsdYQmA8KQAA0tVLHw (envelope-from ) for ; Fri, 05 Mar 2021 16:13:59 +0000 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id EMi+CcdYQmBsEwAAB5/wlQ (envelope-from ) for ; Fri, 05 Mar 2021 16:13:59 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 79822204E1 for ; Fri, 5 Mar 2021 17:13:58 +0100 (CET) Received: from localhost ([::1]:34848 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lID5R-0002Ti-7d for larch@yhetil.org; Fri, 05 Mar 2021 11:13:57 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:44572) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lID4P-0002TW-Mz for emacs-orgmode@gnu.org; Fri, 05 Mar 2021 11:12:53 -0500 Received: from server173-4.web-hosting.com ([68.65.122.210]:58921) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lID4M-0003Ui-QD for emacs-orgmode@gnu.org; Fri, 05 Mar 2021 11:12:52 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=isnotmyreal.name; s=default; h=Content-Transfer-Encoding:Content-Type: Message-ID:References:In-Reply-To:Subject:To:From:Date:MIME-Version:Sender: Reply-To:Cc:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=mdQSifF46jDynJjAn8aRuGxCqn5SpQSI2invtF+zIrA=; b=fD8NZiLMc7fgVwocbbG8mSRHae P+vnIXatMLArhL5suVmm8S9q4BGIQAyz0IcaAuR5Po8LSANI3xEyra3uH2T6EnBQ0DK5/1FIVSTPm Z84qTGSfe/BDU/o0B/S+2KPBfZ+4Y1tWs2MUVV5SKbu6z5nwROWhFAVU6NoxmoRBQhu9DWIAEujYU hvrHMEXvAgCjoIeyAk/BAQCXb2//tYyq4KzLqJA4URKRW9e2juzV7Sb4HIZWqRIVNecMwF9lEHq/y m92mVjRifGOO3s4Q9PSaWWh4DtBtqQb8RYkzfiKeQrkDic/DxOZy0vHDFzAW1CbZE684SnoNR063k LywMpWJw==; Received: from [::1] (port=54272 helo=server173.web-hosting.com) by server173.web-hosting.com with esmtpa (Exim 4.93) (envelope-from ) id 1lID4E-000dbk-P3 for emacs-orgmode@gnu.org; Fri, 05 Mar 2021 11:12:47 -0500 MIME-Version: 1.0 Date: Fri, 05 Mar 2021 11:12:42 -0500 From: TRS-80 To: emacs-orgmode@gnu.org Subject: Re: Culling org files (notion of Types, many small vs few big files) In-Reply-To: References: <84cd818a511bdf2f58391599f1d1eb16@isnotmyreal.name> <8735xa1xyf.fsf@gmail.com> Message-ID: <48f365833e9f2573519494df6517aa42@isnotmyreal.name> X-Sender: lists.trs-80@isnotmyreal.name User-Agent: Roundcube Webmail/1.3.15 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit X-OutGoing-Spam-Status: No, score=-0.2 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - server173.web-hosting.com X-AntiAbuse: Original Domain - gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - isnotmyreal.name X-Get-Message-Sender-Via: server173.web-hosting.com: authenticated_id: lists.trs-80@isnotmyreal.name X-Authenticated-Sender: server173.web-hosting.com: lists.trs-80@isnotmyreal.name X-Source: X-Source-Args: X-Source-Dir: X-From-Rewrite: unmodified, already matched Received-SPF: pass client-ip=68.65.122.210; envelope-from=lists.trs-80@isnotmyreal.name; helo=server173-4.web-hosting.com X-Spam_score_int: -5 X-Spam_score: -0.6 X-Spam_bar: / X-Spam_report: (-0.6 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HAS_X_OUTGOING_SPAM_STAT=1.546, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: "Emacs-orgmode" X-Migadu-Flow: FLOW_IN X-Migadu-Spam-Score: -1.36 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=isnotmyreal.name header.s=default header.b=fD8NZiLM; dmarc=none; spf=pass (aspmx1.migadu.com: domain of emacs-orgmode-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=emacs-orgmode-bounces@gnu.org X-Migadu-Queue-Id: 79822204E1 X-Spam-Score: -1.36 X-Migadu-Scanner: scn1.migadu.com X-TUID: a4PzFIYHiuen On 2021-03-04 16:11, Samuel Wales wrote: >> tim> naming convention ... to determine what is included > > this is also what i do. org-agenda-files is just set at startup > according to basename pattern. I find it very interesting that all three of us seem to have independently arrived at some of same conclusions. Originally I did not want to go off on this tangent, but now I wonder how close what I am doing is to what you guys are doing. In my case, I came up with some notion of "Types." Each Org file MAY use one of a list of defined Types at the beginning of the file name (which is also the first top level headline in the file, starting at position 0), followed by a delimiter (currently ": ").[0] I keep experimenting with my list of Types (I probably have too many), but there are a few that definitely seem useful so far. For example: - Project: Pretty self-explanitory. - Area: A concept lifted straight from PARA Method ("a sphere of activity with a standard to be maintained over time").[1] - Equipment: A special type of Area: that pertains to a single major piece of equipment (like a vehicle) or some group of related equipment (e.g. "small shop equipment" or "home appliances", etc.). - HowTo: Literally "how to do x" which is great for remembering those obscure command line invocations (or whatever) that you only use 2x per year. Combined with headline level completing-read search (see below) this becomes very powerful/handy. So then, by default, any of Org files starting with either Area:, Equipment:, or Project: are the only ones that are considered "active" for purposes of agenda and scanned for TODOs (implemented as a simple `directory-files' function and a regexp). I use my system as a combination of TODO and PIM[2], so this makes a nice logical split where all those PIM "random notes" do not impact the agenda performance whatsoever. I have some other custom agenda functions as well, for things like periodic reviews (in the GTD sense) and others. Org's Agenda really is essentially just like a database query engine when you get right down to it (except storing in plain text of course). >> trs> [smaller files] My agenda is not cluttered. > > it is not clear to me why more smaller files and shallower trees in > the outline would improve the agenda. sounds good though. I somewhat addressed this above with Types (which improve performance), but as to your specific point (clutter)... OK, so maybe not /directly/. But rather the whole system have improved my engagement, by way of no longer feeling lost/overwhelmed as I did with very deep trees in only a few files. I think it is just easier to reason about some small subset of the whole at one time, as represented in a single file. In theory, I guess you could accomplish the same by narrowing subtrees or other methods, but for whatever reason separate files seem to appeal more to me than those other ways (probably because they are also faster to navigate, among other benefits). However, to each their own here, I suppose. I think I was also responding to some specific comment you made about time stamps (re: "cluttered"). There is also this whole "inter linking" / "atomicity" thing. I came to Orgmode from TiddlyWiki, and that was the only thing I missed, this notion of many small "atomic" nodes, which could then be put back together in many different ways (links, tags, etc.) as opposed to a (usually single, large) tree which (at least somewhat) imposes a particular structure and implicit categorization. Nowadays the Zettelkasten stuff have become quite popular, but it is exactly the same notion. Tree knowledge structures are great when many people must share the same info, for example law codes. Or reference manuals. But in our own PIM, we should be more free to link information together in whatever way suits our own brains. And be able to link it back together in multiple, sometimes differing, ways. I seem to also recall some discussion of research even supporting the idea that our brains actually function more like an "interconnected web" than a "tree" structure (can you tell I am a bit of a PIM geek and have been interested in this subject for some years now?). :D Thinking further, I guess my usage has also become possible by some of the search and other tools I have built /around/ my directory full of small files, which obviate some of the reasons for keeping things in "one or a few big files." One example is my custom headline search function (which uses grep under the hood)[3]. It has been very helpful in being able to locate things. Now I have a completing-read search over all headlines in all my files (which will jump to that location upon selection). I have found that by carefully constructing headlines that this works "well enough" for almost all my search needs so far.[4] > On 3/4/21, Tim Cross wrote: >> >> My use pattern also constantly evolves as my requirements and >> priorities >> change. It is and probably always will be, a work in progress! I consider mine an ongoing experiment as well, which is why I have not (as of yet) published anything. But I'm glad I decided to discuss it on the list, as now I see I'm not the only one to reach some of same conclusions! Cheers, TRS-80 [0] But I need to change that because colon I learned is an illegal character on exFAT file system (i.e., larger SD cards, which becomes a problem when syncing to mobile). [1] https://fortelabs.co/blog/para/ [2] Personal Information Management [3] So it doesn't need to open a bunch of files in Emacs / Org. It's also fast enough (so far) to use "live." [4] I originally planned to implement additional full text search functions using things like org-ql, [rip-]grep, and/or Recoll, but so far this has proved to be unnecessary.