emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Jean Louis <bugs@gnu.support>
To: "Sébastien Gendre" <seb@k-7.ch>
Cc: emacs-orgmode@gnu.org
Subject: Re: Org-mode notes about school lessons
Date: Tue, 28 Feb 2023 09:00:01 +0300	[thread overview]
Message-ID: <Y/2YYXnqOI4Ukthc@protected.localdomain> (raw)
In-Reply-To: <87wn47tei9.fsf@k-7.ch>

* Sébastien Gendre <seb@k-7.ch> [2023-02-24 15:58]:
> For each lessons, I need to note:
> - Name
> - Schedule
> - Classroom
> - Teacher name and e-mail
> - Assistant name and e-mail
> - URL to the web page of this lesson on our online learning website
> - List of all distributed documents
> - Note on each of the distributed documents
> - Lesson plan
> - Notes taken in classroom while the teacher speak
> - Notes taken while doing the practice work
> - Tasks asked by the teacher

Here is the solution with Org:
------------------------------

* People
** Teachers
*** Mr. Evil
    :PROPERTIES:
    :ID:       067030f3-b833-4559-8159-6f94913a5408
    :E-MAIL:   mrevil@example.com
    :END:
** Assistants
*** Mini Me
    :PROPERTIES:
    :ID:       894a5fe6-f694-44c6-9285-b1fa7727e6c9
    :E-MAIL:   minime@example.com
    :END:
* Classrooms
** Classroom #1
   :PROPERTIES:
   :ID:       23a3959a-19af-4890-a4de-16aff843f3a8
   :END:
** Classroom #2
   :PROPERTIES:
   :ID:       891d563d-96f8-47a5-b7cd-4d4565cf1524
   :END:
* Lessons
** My lesson name
   :PROPERTIES:
   :CLASSROOM: 23a3959a-19af-4890-a4de-16aff843f3a8
   :TEACHER:  067030f3-b833-4559-8159-6f94913a5408
   :ASSISTANT: 894a5fe6-f694-44c6-9285-b1fa7727e6c9
   :URL:      https://www.example.com/my-lesson-name
   :END:

*** Distributed documents
**** My document one
Notes here about the document one
**** My document two
Notes here about the document two

*** Lesson Plan

*** Notes taken in classroom while the teacher speak
*** Notes taken while doing the practice work
*** TODO Tasks asked by the teacher

---------------
What I would do for the above referencing system is representation or "jump" function, so that when you have something like this:

** My lesson name
   :PROPERTIES:
   :CLASSROOM: 23a3959a-19af-4890-a4de-16aff843f3a8
   :TEACHER:  067030f3-b833-4559-8159-6f94913a5408
   :ASSISTANT: 894a5fe6-f694-44c6-9285-b1fa7727e6c9
   :URL:      https://www.example.com/my-lesson-name
   :END:

That I can quickly see which classroom is that or which teacher is that.

(defun rcd-org-uuid-name ()
  "Display name for referenced Org UUID."
  (interactive)
  (let* ((uuid (thing-at-point 'uuid))
	 (found (org-id-find uuid))
	 (heading))
  (when (and found uuid)
    (save-excursion
      (goto-char (cdr found))
      (setq heading (org-get-heading)))
    (message "%s" heading))))

When you move cursor to one of those UUIDs, you would see "Mini me" in
the mini buffer. Or you wish to jump there by UUID:

(defun rcd-org-uuid-jump ()
  "Go to heading of the referenced Org UUID."
  (interactive)
  (let* ((uuid (thing-at-point 'uuid))
	 (found (org-id-find uuid))
	 (heading))
  (when (and found uuid)
    (goto-char (cdr found)))))

The referencing system can enable to make reports on each lesson where
names of people and other attributes are nicely displayed. When you
change the heading or name of the teacher, the report would get
automatically updated.

> Thirdly, I need to manage the projects that teachers ask us to do. With deadlines.
> 
> * What I plan to do
> 
> As I need to write a lot for each lesson, and each lesson are mostly
> independent from each other, I plan to have 1 file per lesson.
> 
> In each file, I plan to have the same structure:
> - General information
> - Tasks and Projects
> - Distributed documents
> - Notes

You need not have one file per lesson, you can write it all in one single file.

> In "General information", I put the schedule of the lesson, the
> classroom, the teacher and assistant name and e-mail and the URL to our
> online platform.
> 
> In "Tasks and Projects", I put all work the teacher ask us to do. For
> each, an Org-mode sub-headline with a TODO status. A project is just a task
> with sub-tasks. Or maybe have a PROJECT status ?

I do not agree to the hierarchy how you specified, as I am used to
military style:

1. Plan

2. Programs, belong to plan

3. Projects, they are one step of a plan, when that step cannot easily
   be executed

4. Orders are tasks, or steps of programs or projects

But I cannot see how "Project" is subsection of a "Task", as task is
often something very specific. Though in other definitions task can be
project too. I just say it is not common, though you can mix terms as
you wish.

> * What I miss
> 
> There is some point I'm note sure on what or how to do it.
> 
> First, the tasks. I don't know If it's better to keep them in the lesson
> org file or move them with all my other tasks (home and work). I think
> to include them in the org-agenda, so I can have global view of all ma
> tasks. From school, work and home.

Yes, and that works.

> Second, the weekly schedule. Is it better to have a column view on a
> separate file or to see the all the lessons in my org-agenda ? In the
> first case, is it possible to build a column view from different file ?
> In the second case, how to do it and to manage vacations ?

You already got it, how I see it. It is possible to use multiple files
for agenda, see variable `org-agenda-files'

> Third, do I include my work notes inside the lesson file ? Or do I
> create a separate file for each works ? Some work asked to do are just
> exercise, but some are rated and in this case we are asked to write a
> report.

I would keep it in one file.

> Fourth, is it better to include my school notes into org-roam with other
> knowledge or keep them separate ? If I mix what I learn on my free time
> and what I learn on school time, it would make more to review before an
> exam.

I don't think you need more than Org.

However, I could keep it all in plain text, without Org mode, and it
would work equally well. 

Though I tend to keep information in RCD Notes & Hyperscope, The
Dynamic Knowledge Repository for GNU Emacs. As I like to relate freely
people to documents, that is important as your case demonstrates. And
I don't like doing copy, paste of UUID, or names. 

-- 
Jean

Take action in Free Software Foundation campaigns:
https://www.fsf.org/campaigns

In support of Richard M. Stallman
https://stallmansupport.org/


      parent reply	other threads:[~2023-02-28  7:19 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-02-24 12:08 Org-mode notes about school lessons Sébastien Gendre
2023-02-24 17:05 ` Tory S. Anderson
2023-02-25  4:37   ` Bob Newell
2023-02-25  8:08   ` Marcin Borkowski
2023-02-28  6:00 ` Jean Louis [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Y/2YYXnqOI4Ukthc@protected.localdomain \
    --to=bugs@gnu.support \
    --cc=emacs-orgmode@gnu.org \
    --cc=seb@k-7.ch \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).