0:00:00.000,0:00:03.760
at the end we are right on time so i'm
0:00:02.399,0:00:04.319
sorry if you have a lot of questions
0:00:03.760,0:00:06.960
before
0:00:04.319,0:00:08.559
you had some so many questions and i
0:00:06.960,0:00:10.080
couldn't answer all of them and i'm
0:00:08.559,0:00:11.599
really happy about it but i'm also
0:00:10.080,0:00:12.719
really sad that i don't have enough time
0:00:11.599,0:00:15.040
to do so
0:00:12.719,0:00:17.119
so i'm gonna try to do a better job this
0:00:15.040,0:00:20.240
time of leaving you a little more time
0:00:17.119,0:00:22.960
for the questions so just before
0:00:20.240,0:00:24.400
a little addendum because i did screw up
0:00:22.960,0:00:27.439
in the previous presentation
0:00:24.400,0:00:28.800
you remember i tried to rename the file
0:00:27.439,0:00:31.599
and it didn't work
0:00:28.800,0:00:32.559
well it turns out uh i had two file name
0:00:31.599,0:00:34.480
baz so
0:00:32.559,0:00:36.000
my software works great thank you very
0:00:34.480,0:00:38.800
much uh
0:00:36.000,0:00:40.239
all right so now what i'm gonna do
0:00:38.800,0:00:43.040
during this presentation
0:00:40.239,0:00:44.399
is that i'm going to oops i didn't stop
0:00:43.040,0:00:47.520
my timer just give me
0:00:44.399,0:00:50.719
a little second and let's subtract
0:00:47.520,0:00:52.239
one minute okay good so
0:00:50.719,0:00:54.079
what i'm going to do right now it's a
0:00:52.239,0:00:56.879
little different from the previous
0:00:54.079,0:00:58.239
talk i've gave you and different even
0:00:56.879,0:01:00.480
from what nura gave you
0:00:58.239,0:01:02.399
there's like uh scaling the mountain as
0:01:00.480,0:01:03.359
far as difficulty is concerned and on
0:01:02.399,0:01:04.879
this one
0:01:03.359,0:01:06.799
i will be telling you about the
0:01:04.879,0:01:09.360
technical aspects of orgrim
0:01:06.799,0:01:11.119
because you know i've been telling you
0:01:09.360,0:01:13.119
about the general philosophy
0:01:11.119,0:01:14.560
of the notes and the general philosophy
0:01:13.119,0:01:16.159
of organization
0:01:14.560,0:01:18.479
but right now i really want to get into
0:01:16.159,0:01:22.640
the nitty gritty about or grow
0:01:18.479,0:01:25.759
so if we go in the git repository
0:01:22.640,0:01:27.920
this at the very core is all grown and
0:01:25.759,0:01:28.960
for some of you who have no experience
0:01:27.920,0:01:31.280
whatsoever
0:01:28.960,0:01:32.880
uh developing stuff or programming or
0:01:31.280,0:01:36.000
anything along those lines
0:01:32.880,0:01:36.720
this is how all the development around
0:01:36.000,0:01:40.000
the world
0:01:36.720,0:01:42.159
is working you have a repository a
0:01:40.000,0:01:44.399
git repository where you have all the
0:01:42.159,0:01:46.399
files all the libraries you're using
0:01:44.399,0:01:48.720
all the programs all the commands
0:01:46.399,0:01:52.240
everything is inside your files
0:01:48.720,0:01:53.759
and in a way this is the organ project
0:01:52.240,0:01:55.600
you can see that we have many files we
0:01:53.759,0:01:57.040
have organ buffer capture compat
0:01:55.600,0:02:00.399
completion dailies
0:01:57.040,0:02:02.000
etc etc so
0:02:00.399,0:02:04.079
before we dive a little deeper i just
0:02:02.000,0:02:04.640
want to give you a lay of the land so to
0:02:04.079,0:02:08.160
speak to
0:02:04.640,0:02:11.680
to know where we're heading so
0:02:08.160,0:02:15.599
orgro is built on top of old mode
0:02:11.680,0:02:17.760
and org mode gives us plenty of tools
0:02:15.599,0:02:18.800
to play around with the files i'm moving
0:02:17.760,0:02:20.080
the glass i'm
0:02:18.800,0:02:21.360
i'm starting to move my hands a little
0:02:20.080,0:02:22.959
bit you know when i get excited about
0:02:21.360,0:02:26.640
something i move my hand
0:02:22.959,0:02:29.360
and then that stuff happens so
0:02:26.640,0:02:31.360
in all chrome we have org mode and
0:02:29.360,0:02:33.360
augment gives us plenty of tools which
0:02:31.360,0:02:36.560
are incredibly useful
0:02:33.360,0:02:37.440
for writing stuff so you know we already
0:02:36.560,0:02:39.440
have the links
0:02:37.440,0:02:40.560
we already have the hierarchy which is
0:02:39.440,0:02:43.360
given by having
0:02:40.560,0:02:43.760
trees within trees within trees we have
0:02:43.360,0:02:45.760
uh
0:02:43.760,0:02:48.000
quote blocks we have babel blocks we
0:02:45.760,0:02:49.680
have so much stuff we have an arsenal of
0:02:48.000,0:02:53.519
tools that have been developed
0:02:49.680,0:02:56.640
for the last 15 years and
0:02:53.519,0:02:59.760
when you think about it all chrome just
0:02:56.640,0:03:01.360
wants to create backlinks but it sounds
0:02:59.760,0:03:02.239
something very simple but the problem is
0:03:01.360,0:03:05.519
that we need
0:03:02.239,0:03:06.400
to play nicely with all of those
0:03:05.519,0:03:09.360
intricate
0:03:06.400,0:03:10.879
pieces and the fact is it takes quite a
0:03:09.360,0:03:11.440
lot of expertise to be able to do so
0:03:10.879,0:03:14.400
because
0:03:11.440,0:03:15.200
if right now we are in the brain of all
0:03:14.400,0:03:18.959
grow
0:03:15.200,0:03:21.599
but if i show you the brain of org mode
0:03:18.959,0:03:23.280
so this is the brain of org mode and it
0:03:21.599,0:03:25.519
looks very simple like this because i
0:03:23.280,0:03:28.000
haven't entered the less folder
0:03:25.519,0:03:29.120
but i'm just going to enter it i'm going
0:03:28.000,0:03:32.000
to
0:03:29.120,0:03:32.959
zoom out a little bit don't worry if you
0:03:32.000,0:03:35.519
don't see everything
0:03:32.959,0:03:37.519
but i just want you to get a fear the
0:03:35.519,0:03:41.280
sheer feel of magnitude
0:03:37.519,0:03:42.640
that is um org mode so right now we are
0:03:41.280,0:03:43.760
in a very small size what i'm gonna do
0:03:42.640,0:03:47.519
i'm going to skip
0:03:43.760,0:03:51.040
one page okay one two
0:03:47.519,0:03:52.319
three we have let's just check how many
0:03:51.040,0:03:54.640
lines we have
0:03:52.319,0:03:56.480
okay let me just revert to a fairly
0:03:54.640,0:03:58.560
readable side
0:03:56.480,0:03:59.599
at the bottom you can see that we have
0:03:58.560,0:04:00.959
oh it's not showing because it's a
0:03:59.599,0:04:03.840
little small okay i'm just going to
0:04:00.959,0:04:06.959
resize the window a little bit
0:04:03.840,0:04:08.720
it's not showing up give me a second i
0:04:06.959,0:04:10.159
can't see how many lines i have okay so
0:04:08.720,0:04:11.840
let's do it to get away
0:04:10.159,0:04:14.000
i'm going to go back at the beginning of
0:04:11.840,0:04:16.160
the buffer and we're going to count
0:04:14.000,0:04:17.840
how many lines we have so the bottom in
0:04:16.160,0:04:18.880
a midi buffer and the mini buffer is
0:04:17.840,0:04:22.320
this area
0:04:18.880,0:04:25.919
we have 377 lines
0:04:22.320,0:04:29.759
which means 377
0:04:25.919,0:04:31.520
libraries within org mode and mind you
0:04:29.759,0:04:32.960
that's not counting all the modules that
0:04:31.520,0:04:36.240
we have on the side which
0:04:32.960,0:04:37.360
come on top of volt mode now when you
0:04:36.240,0:04:40.639
try to think
0:04:37.360,0:04:44.400
about something so elemental
0:04:40.639,0:04:45.520
as links you have to think about how to
0:04:44.400,0:04:48.560
play well
0:04:45.520,0:04:50.000
with every single one of these modules
0:04:48.560,0:04:53.759
now obviously not
0:04:50.000,0:04:56.080
the 370 370. sometimes you know
0:04:53.759,0:04:57.680
one module it's not going to do anything
0:04:56.080,0:04:58.639
like i'm not sure op car could be doing
0:04:57.680,0:05:00.080
anything with it
0:04:58.639,0:05:03.039
but it's something that we have to keep
0:05:00.080,0:05:04.720
in mind and so
0:05:03.039,0:05:07.520
really early on when we started
0:05:04.720,0:05:10.080
developing all grown with jethro kwan my
0:05:07.520,0:05:10.639
co-maintainer you know we had this idea
0:05:10.080,0:05:13.520
that
0:05:10.639,0:05:14.639
we wanted to develop something that was
0:05:13.520,0:05:18.240
optimized
0:05:14.639,0:05:20.160
something that would you know scale very
0:05:18.240,0:05:21.600
nicely whether or not you had
0:05:20.160,0:05:24.560
you know something that would work as
0:05:21.600,0:05:27.680
fast if you had 10 files
0:05:24.560,0:05:30.880
or if you had 100 files or if you had
0:05:27.680,0:05:32.080
10 000 files and maybe more so the
0:05:30.880,0:05:34.400
problem when you do this
0:05:32.080,0:05:36.320
and i'm doing some callbacks to the talk
0:05:34.400,0:05:41.280
i gave you earlier today about
0:05:36.320,0:05:44.800
few small few big files this is many
0:05:41.280,0:05:45.919
i got confused few big files versus many
0:05:44.800,0:05:49.280
small files
0:05:45.919,0:05:51.600
the problem with this is that we need to
0:05:49.280,0:05:53.680
think about optimization from the get go
0:05:51.600,0:05:54.800
and so one of the decision we took when
0:05:53.680,0:05:59.199
we got started
0:05:54.800,0:06:02.479
with orgrum is that if i go in my
0:05:59.199,0:06:04.240
test repository so that's the one in
0:06:02.479,0:06:08.000
which we were right before
0:06:04.240,0:06:11.600
we have a file which is called orgrumdb
0:06:08.000,0:06:14.160
now if i open it it's not it's a
0:06:11.600,0:06:15.120
little garbage because uh it's a binary
0:06:14.160,0:06:18.560
but what we have
0:06:15.120,0:06:21.919
is a database with which we communicate
0:06:18.560,0:06:25.120
via sorry it's an sql database
0:06:21.919,0:06:28.479
and what this allows us to do
0:06:25.120,0:06:31.919
is we store all the information we need
0:06:28.479,0:06:34.720
inside this sql database which allows us
0:06:31.919,0:06:35.360
to speed up a lot of the operations that
0:06:34.720,0:06:37.840
are
0:06:35.360,0:06:38.479
necessary for the functioning of our
0:06:37.840,0:06:40.240
ground
0:06:38.479,0:06:41.759
so for instance if i go back to the
0:06:40.240,0:06:43.440
index file that i had before
0:06:41.759,0:06:45.680
let's just go back to who actually this
0:06:43.440,0:06:47.919
way you'll see a little more on the side
0:06:45.680,0:06:48.720
so you see that on the side we have
0:06:47.919,0:06:50.319
whoops
0:06:48.720,0:06:51.759
two links i'm not going to click on them
0:06:50.319,0:06:53.199
otherwise i'm going to open them but we
0:06:51.759,0:06:56.319
have two links
0:06:53.199,0:06:58.240
now there are many implementations of
0:06:56.319,0:07:00.800
the zettol casten method inside
0:06:58.240,0:07:02.400
emacs and inside and with old mode but
0:07:00.800,0:07:04.639
what we've decided to do
0:07:02.400,0:07:05.520
is that every time you have a link so if
0:07:04.639,0:07:08.479
we go to
0:07:05.520,0:07:09.120
the index again here at point we have
0:07:08.479,0:07:12.400
the link
0:07:09.120,0:07:14.160
foo every time we create a link we
0:07:12.400,0:07:16.800
update our database
0:07:14.160,0:07:17.919
to say okay so we have a link in the
0:07:16.800,0:07:21.080
file
0:07:17.919,0:07:24.319
index which is leading to the file
0:07:21.080,0:07:27.840
fu.org and it is situated
0:07:24.319,0:07:29.840
under the heading a heading and
0:07:27.840,0:07:31.440
if you check the site buffer you see
0:07:29.840,0:07:33.120
that all this all these information
0:07:31.440,0:07:36.720
which i just highlighted to you
0:07:33.120,0:07:36.720
are present right here
0:07:42.639,0:07:46.400
oh well sorry i forgot this thank you
0:07:45.599,0:07:50.879
okay
0:07:46.400,0:07:53.039
so let's see log okay i'm going to split
0:07:50.879,0:07:54.960
actually i'm going to split like this
0:07:53.039,0:07:56.960
i'm going to go back there
0:07:54.960,0:07:58.720
the problem is that i can't show my
0:07:56.960,0:08:02.080
keystrokes at the same time as a machine
0:07:58.720,0:08:03.599
i'm showing the site buffer so i'll
0:08:02.080,0:08:05.199
keep it right now for your own
0:08:03.599,0:08:07.039
discretion anyway getting back to the
0:08:05.199,0:08:10.160
talk
0:08:07.039,0:08:12.720
so the thing is we have this
0:08:10.160,0:08:13.520
sql database and the goal is to keep it
0:08:12.720,0:08:16.400
optimized
0:08:13.520,0:08:17.039
now why is it better optimized than just
0:08:16.400,0:08:20.960
using
0:08:17.039,0:08:23.520
orgrom sorry just using default org mode
0:08:20.960,0:08:24.080
so in my talk about many big files
0:08:23.520,0:08:26.879
versus
0:08:24.080,0:08:28.080
a few i keep getting you know you got
0:08:26.879,0:08:29.120
what i was saying i'm not going to
0:08:28.080,0:08:32.240
repeat it
0:08:29.120,0:08:35.200
by the way it is uh 10 to 10.
0:08:32.240,0:08:36.399
i'm starting really to be tired now so
0:08:35.200,0:08:39.279
uh moving on to
0:08:36.399,0:08:40.800
um what did i want to show you so it was
0:08:39.279,0:08:44.959
almost yes all the elements
0:08:40.800,0:08:47.200
so what i'm going to do i'm going to
0:08:44.959,0:08:48.399
see i believe it's org element pass
0:08:47.200,0:08:51.040
buffer
0:08:48.399,0:08:51.920
so i was telling you about all elements
0:08:51.040,0:08:53.600
before
0:08:51.920,0:08:55.760
and the main command sorry the main
0:08:53.600,0:08:58.560
function that is used by org element
0:08:55.760,0:08:59.760
is pass buffer what it does and you can
0:08:58.560,0:09:01.040
see the dock string is that it
0:08:59.760,0:09:03.279
recursively passed
0:09:01.040,0:09:04.959
the buffer and return structure
0:09:03.279,0:09:06.320
structure being all the information that
0:09:04.959,0:09:07.680
we have in this buffer
0:09:06.320,0:09:09.600
so just to show you a little more we're
0:09:07.680,0:09:10.880
going to move into a scratch buffer
0:09:09.600,0:09:12.800
and what we're going to do is that we're
0:09:10.880,0:09:16.320
going to write this command
0:09:12.800,0:09:17.760
pass buffer and we're going to check the
0:09:16.320,0:09:19.600
output of this command
0:09:17.760,0:09:22.000
oh sorry not this one we're going to go
0:09:19.600,0:09:23.680
in the index so the index file you have
0:09:22.000,0:09:25.120
a title you have a heading you have a
0:09:23.680,0:09:26.880
link etc etc
0:09:25.120,0:09:28.560
so what i'm going to do i'm going to
0:09:26.880,0:09:30.800
evaluate this text
0:09:28.560,0:09:32.560
and now at the bottom in the midi buffer
0:09:30.800,0:09:36.160
in the mini buffer sorry
0:09:32.560,0:09:37.600
you see an ast an abstract
0:09:36.160,0:09:39.839
obviously don't remember what the s
0:09:37.600,0:09:42.720
stands for semantic
0:09:39.839,0:09:43.519
huh interesting anyway a representation
0:09:42.720,0:09:45.279
of the data
0:09:43.519,0:09:47.600
in a way that is exploitable by a
0:09:45.279,0:09:49.839
machine now what i'm going to do
0:09:47.600,0:09:52.000
syntax thank you so what i'm going to do
0:09:49.839,0:09:54.480
i'm going to paste it inside the buffer
0:09:52.000,0:09:56.399
in a way that is humanly readable and
0:09:54.480,0:09:58.800
you can see that we have plenty of
0:09:56.399,0:10:00.560
information we have a section which
0:09:58.800,0:10:05.040
starts at the char
0:10:00.560,0:10:07.040
1 which ends at the character 45
0:10:05.040,0:10:08.240
we have the content so he makes scratch
0:10:07.040,0:10:10.240
oh actually no
0:10:08.240,0:10:11.279
never mind i did something wrong i run
0:10:10.240,0:10:13.040
it in the wrong buffer
0:10:11.279,0:10:14.399
so actually what i'm going to do we're
0:10:13.040,0:10:17.519
going to run this command
0:10:14.399,0:10:21.120
with the selected window next
0:10:17.519,0:10:23.760
window okay that's a bit of live
0:10:21.120,0:10:24.640
elise writing for you right now okay so
0:10:23.760,0:10:26.240
now if i
0:10:24.640,0:10:28.480
evaluate this and paste the content of
0:10:26.240,0:10:31.600
the buffer
0:10:28.480,0:10:32.399
it is doing its bidding so now what we
0:10:31.600,0:10:34.959
have
0:10:32.399,0:10:36.720
we have a section we have the keyword
0:10:34.959,0:10:38.160
title which you see right here you have
0:10:36.720,0:10:39.920
the value
0:10:38.160,0:10:41.360
if we scroll down a little bit we have a
0:10:39.920,0:10:42.480
heading which is right here we have the
0:10:41.360,0:10:44.800
contents
0:10:42.480,0:10:46.320
which should be yes the content is not
0:10:44.800,0:10:48.079
listed exactly here but you have a
0:10:46.320,0:10:50.640
paragraph which is this
0:10:48.079,0:10:51.200
and then you have a link etc etc it is
0:10:50.640,0:10:53.839
all
0:10:51.200,0:10:54.640
uh parenthesis if you're not used to
0:10:53.839,0:10:56.320
e-list
0:10:54.640,0:10:58.640
like right now i've selected only the
0:10:56.320,0:11:00.399
content of the parenthesis link
0:10:58.640,0:11:01.680
i can move like this etcetera etcetera
0:11:00.399,0:11:03.760
i'm not it's not a needle
0:11:01.680,0:11:05.279
lessons that i'm doing right now but
0:11:03.760,0:11:08.399
basically
0:11:05.279,0:11:09.120
if we were to use the default tooling of
0:11:08.399,0:11:10.880
orgrom
0:11:09.120,0:11:12.480
org mode sorry i keep getting too
0:11:10.880,0:11:14.240
confused sorry for that
0:11:12.480,0:11:16.399
uh it would be extremely slow to do what
0:11:14.240,0:11:19.760
we're doing some people
0:11:16.399,0:11:22.240
are doing so some implementations of the
0:11:19.760,0:11:23.040
zettelkassen method inside emacs have
0:11:22.240,0:11:26.480
opted
0:11:23.040,0:11:27.360
for this method but the problem is that
0:11:26.480,0:11:30.160
we think
0:11:27.360,0:11:30.560
that it scales poorly now some other
0:11:30.160,0:11:33.920
people
0:11:30.560,0:11:35.600
have decided to not do with a database
0:11:33.920,0:11:37.200
and what they do is that they use a tool
0:11:35.600,0:11:38.800
which is called rip grep
0:11:37.200,0:11:41.279
you might know grep which is a tool that
0:11:38.800,0:11:43.440
allows you to search
0:11:41.279,0:11:46.560
a file the content of a file for a line
0:11:43.440,0:11:49.680
so for instance if we open v term here
0:11:46.560,0:11:51.839
uh let's see so i've opened the term i
0:11:49.680,0:11:54.399
am in this repository what i'm going to
0:11:51.839,0:11:58.000
do is that i'm going to
0:11:54.399,0:12:00.480
load the content of the file uh
0:11:58.000,0:12:02.480
how am i going to do this oh um i need
0:12:00.480,0:12:06.160
to move to bash
0:12:02.480,0:12:08.000
let's do crap
0:12:06.160,0:12:09.519
for the line which links do we did we
0:12:08.000,0:12:11.600
have grep foo
0:12:09.519,0:12:13.760
inside the file is it three i can
0:12:11.600,0:12:16.880
remember okay let's do this
0:12:13.760,0:12:16.880
am i working no
0:12:18.079,0:12:22.800
let's go for four why is it eight
0:12:21.279,0:12:24.320
ah damn it oh you know what i'm just
0:12:22.800,0:12:28.240
going to copy the name
0:12:24.320,0:12:33.279
up there we go no
0:12:28.240,0:12:33.279
ah problem with live presentation always
0:12:33.680,0:12:36.720
you know what i'm struggling so i'm
0:12:34.800,0:12:38.560
going to drop this point anyway
0:12:36.720,0:12:40.000
so grep is a simple tool that allows you
0:12:38.560,0:12:42.480
to search the content of a file but
0:12:40.000,0:12:44.160
rig grep is a solution that is written
0:12:42.480,0:12:45.920
in rust and which is supposed to be
0:12:44.160,0:12:48.880
well not supposed which is far more
0:12:45.920,0:12:50.639
capable now
0:12:48.880,0:12:52.320
i'd like to talk to you about the future
0:12:50.639,0:12:54.720
of orgrim right now i've told you about
0:12:52.320,0:12:58.399
the general concept which is about using
0:12:54.720,0:13:01.519
uh this sql database and about
0:12:58.399,0:13:03.279
playing nicely with old mode but
0:13:01.519,0:13:05.200
we think that there's something great
0:13:03.279,0:13:08.320
that we can do about orgrim
0:13:05.200,0:13:10.320
now i've been talking with the a lot of
0:13:08.320,0:13:10.880
people who are behind org mode and you
0:13:10.320,0:13:14.000
know
0:13:10.880,0:13:16.880
they've told us do you think that
0:13:14.000,0:13:18.320
orgrom could have something to bring to
0:13:16.880,0:13:20.160
old mode let's say
0:13:18.320,0:13:21.600
backlinks is there something that we
0:13:20.160,0:13:25.600
could be doing to
0:13:21.600,0:13:27.200
import backlinks into old mode and
0:13:25.600,0:13:29.200
we thought about it with jethro and the
0:13:27.200,0:13:30.800
problem is uh
0:13:29.200,0:13:32.720
we've always tried to have an
0:13:30.800,0:13:35.360
experimental ground a very
0:13:32.720,0:13:36.320
uh can a very isolated portion of your
0:13:35.360,0:13:37.920
system
0:13:36.320,0:13:40.320
where we could track backlinks and
0:13:37.920,0:13:42.320
that's why we use um
0:13:40.320,0:13:44.880
a slipbox directory so that we only
0:13:42.320,0:13:47.040
track backlinks in one specific place
0:13:44.880,0:13:48.639
but now because there seems to be so
0:13:47.040,0:13:50.079
much interest about the method and we
0:13:48.639,0:13:52.480
have so much backing
0:13:50.079,0:13:53.120
on uh you know on github we have like
0:13:52.480,0:13:56.399
200
0:13:53.120,0:13:59.760
2 600 stars which is mind-boggling to us
0:13:56.399,0:14:02.399
because we have so much success but
0:13:59.760,0:14:03.360
we have plenty of ideas about the future
0:14:02.399,0:14:06.000
one of the key
0:14:03.360,0:14:08.480
parts of development being the writing
0:14:06.000,0:14:09.680
of an external parser for orgrim
0:14:08.480,0:14:11.839
so i've been telling you about org
0:14:09.680,0:14:15.279
element org elements runs
0:14:11.839,0:14:19.519
inside emacs but what if
0:14:15.279,0:14:23.600
we wrote a background process
0:14:19.519,0:14:25.760
that could read a file an augment file
0:14:23.600,0:14:27.440
extract the same type of data that you
0:14:25.760,0:14:30.240
see on your screen right now
0:14:27.440,0:14:30.959
so that we could use to update a
0:14:30.240,0:14:33.279
database
0:14:30.959,0:14:34.959
so that we could use to compute the
0:14:33.279,0:14:37.360
links so that we could use it
0:14:34.959,0:14:39.519
to show you know orgrim server all the
0:14:37.360,0:14:41.360
connections between your nodes
0:14:39.519,0:14:44.320
now there is a path of improvement here
0:14:41.360,0:14:47.360
that is extremely important to us
0:14:44.320,0:14:48.639
but you know that's the technical aspect
0:14:47.360,0:14:50.079
and i'm out of time i'm just going to
0:14:48.639,0:14:51.360
take one more minute to finish on this
0:14:50.079,0:14:54.560
point
0:14:51.360,0:14:57.680
but we believe
0:14:54.560,0:14:58.399
that orgrim has the potential to be a
0:14:57.680,0:15:00.639
think tank
0:14:58.399,0:15:01.920
in a way for org mode and the way we
0:15:00.639,0:15:04.079
think about
0:15:01.920,0:15:06.079
note-taking in general i've stressed a
0:15:04.079,0:15:10.240
great deal in my first presentation
0:15:06.079,0:15:12.480
sorry the one i did before neura that
0:15:10.240,0:15:14.639
all chrome is really great as a way to
0:15:12.480,0:15:17.600
think organically about knowledge
0:15:14.639,0:15:19.279
and honestly we kind of want to put the
0:15:17.600,0:15:22.079
theory into practice with orgrim
0:15:19.279,0:15:23.440
we are holding something which has the
0:15:22.079,0:15:25.120
potential to be
0:15:23.440,0:15:27.279
a great factor of innovation for the
0:15:25.120,0:15:29.600
future whether it be or org mode
0:15:27.279,0:15:31.440
or even for software in general you know
0:15:29.600,0:15:34.880
the way to think about
0:15:31.440,0:15:37.440
build nodes of knowledge in a way
0:15:34.880,0:15:38.240
and the way to represent all those ids
0:15:37.440,0:15:40.560
with the graph
0:15:38.240,0:15:41.600
the way to basically have a note-taking
0:15:40.560,0:15:43.360
system that
0:15:41.600,0:15:45.839
corresponds to the research that
0:15:43.360,0:15:49.120
corresponds to the way you think
0:15:45.839,0:15:51.839
so yeah i believe we are
0:15:49.120,0:15:53.519
really excited about this and if you
0:15:51.839,0:15:55.360
want to keep track of the development of
0:15:53.519,0:15:57.600
all chrome
0:15:55.360,0:15:59.279
i on my youtube channel which is already
0:15:57.600,0:16:02.639
linked a little earlier
0:15:59.279,0:16:04.240
inside this present inside the pad sorry
0:16:02.639,0:16:06.079
i do have a youtube channel where i try
0:16:04.240,0:16:09.519
to present novelties
0:16:06.079,0:16:11.519
or the new stuff inside um orgrim
0:16:09.519,0:16:13.360
but i also be recording videos about the
0:16:11.519,0:16:15.519
technical aspects about the direction
0:16:13.360,0:16:18.000
that we're taking with orgrim
0:16:15.519,0:16:18.560
and if you want to talk with us we are
0:16:18.000,0:16:22.160
always
0:16:18.560,0:16:23.680
available either on isc channel orgrom
0:16:22.160,0:16:25.279
i believe there's a dash between org and
0:16:23.680,0:16:27.279
rome but also
0:16:25.279,0:16:29.440
on the discourse and i'll be putting all
0:16:27.279,0:16:31.199
the links inside the conversation
0:16:29.440,0:16:32.880
and that's me done so thank you for
0:16:31.199,0:16:34.560
listening and now i'll be taking
0:16:32.880,0:16:37.360
three minutes of questions so as to be
0:16:34.560,0:16:39.920
right on time
0:16:37.360,0:16:41.120
mini thanks for your awesome talk leo
0:16:39.920,0:16:43.040
thank you
0:16:41.120,0:16:44.959
so i'm just refreshing the page and i'm
0:16:43.040,0:16:49.279
going to scroll down to my
0:16:44.959,0:16:49.279
talk if i can find the right section
0:16:49.600,0:16:52.720
let me just scroll a little bit
0:16:53.120,0:16:57.120
uh reproducible emacs no i think it's
0:16:55.600,0:16:59.279
slower
0:16:57.120,0:17:00.639
god we have so many questions so at the
0:16:59.279,0:17:01.120
same time i'm pissed because i can't
0:17:00.639,0:17:02.639
find it
0:17:01.120,0:17:05.360
but i'm really really impressed by the
0:17:02.639,0:17:07.760
number of questions that we had oh yeah
0:17:05.360,0:17:08.260
um which is about i think about line 600
0:17:07.760,0:17:09.919
or so
0:17:08.260,0:17:13.199
[Music]
0:17:09.919,0:17:16.400
yes got it splendid
0:17:13.199,0:17:18.160
so um the questions so why not run a
0:17:16.400,0:17:19.919
background emacs for passing instead of
0:17:18.160,0:17:22.559
implementing a new parser
0:17:19.919,0:17:24.480
so i believe we've had this question uh
0:17:22.559,0:17:27.600
i was giving a similar talk
0:17:24.480,0:17:31.679
earlier this week and this week
0:17:27.600,0:17:33.280
i'm not french this week sorry and
0:17:31.679,0:17:35.679
someone asked me this question and the
0:17:33.280,0:17:38.320
thing is running a background emacs
0:17:35.679,0:17:40.400
process you know it sounds great
0:17:38.320,0:17:41.760
but it's also very limited because all
0:17:40.400,0:17:45.520
the problems we have
0:17:41.760,0:17:48.160
about concurrency about threads in emacs
0:17:45.520,0:17:49.200
well yes we can forward all our calls to
0:17:48.160,0:17:51.760
background emacs
0:17:49.200,0:17:52.240
just like uh you know when you export a
0:17:51.760,0:17:56.400
file
0:17:52.240,0:17:57.840
with uh um sorry
0:17:56.400,0:17:58.799
i mean could you mute microphone when
0:17:57.840,0:18:01.520
you're speaking it's a little hard for
0:17:58.799,0:18:03.600
me to concentrate
0:18:01.520,0:18:04.640
that's fine don't worry you are now uh
0:18:03.600,0:18:06.960
so um
0:18:04.640,0:18:07.679
dammit where was i i'm sorry the
0:18:06.960,0:18:09.280
question yes
0:18:07.679,0:18:11.840
so basically forwarding all the
0:18:09.280,0:18:13.039
questions uh sorry all our queries to uh
0:18:11.840,0:18:16.000
background emacs
0:18:13.039,0:18:17.960
that is what uh org export is doing like
0:18:16.000,0:18:20.799
you have the ability to
0:18:17.960,0:18:22.080
asynchronously export latex documents
0:18:20.799,0:18:24.480
odt documents from
0:18:22.080,0:18:26.000
org mode and it uses a very minimal
0:18:24.480,0:18:28.240
version of emacs to do that but the
0:18:26.000,0:18:30.320
problem is that we think that it's not
0:18:28.240,0:18:33.039
going to scale as well as a true
0:18:30.320,0:18:34.480
genuine background process and since we
0:18:33.039,0:18:36.000
have been talking a lot
0:18:34.480,0:18:38.160
as far as the old mode development is
0:18:36.000,0:18:40.640
concerned about
0:18:38.160,0:18:41.760
writing a proper parser writing a proper
0:18:40.640,0:18:43.440
documentation
0:18:41.760,0:18:46.000
for the passing of old mode file and
0:18:43.440,0:18:48.400
writing a proper document standard
0:18:46.000,0:18:50.000
that says okay this is how the old mode
0:18:48.400,0:18:52.000
format works you know to
0:18:50.000,0:18:55.120
basically have a way to not fall into
0:18:52.000,0:18:56.559
the traps of markdown which has many
0:18:55.120,0:18:58.480
many standards
0:18:56.559,0:19:00.000
we need to think about this and we
0:18:58.480,0:19:01.360
believe that all grown has
0:19:00.000,0:19:03.120
the ability to think about these
0:19:01.360,0:19:04.640
questions and as a
0:19:03.120,0:19:06.400
as a person i'm also really interested
0:19:04.640,0:19:07.840
about this so
0:19:06.400,0:19:10.160
i can take the question i mean so don't
0:19:07.840,0:19:11.760
worry about feeding them to me so how
0:19:10.160,0:19:13.679
often does the
0:19:11.760,0:19:14.799
db index get updated in order to contain
0:19:13.679,0:19:17.360
changes within the
0:19:14.799,0:19:19.440
files so we have two ways either we
0:19:17.360,0:19:22.160
update as soon as you save a file
0:19:19.440,0:19:23.600
or we have a timer which is an idle
0:19:22.160,0:19:25.600
timer which waits okay
0:19:23.600,0:19:26.960
the user has not imputed inputted
0:19:25.600,0:19:29.360
anything in the last
0:19:26.960,0:19:30.080
five seconds so it's time to queue a
0:19:29.360,0:19:33.039
database
0:19:30.080,0:19:33.919
passing a rebuild of the data not a an
0:19:33.039,0:19:37.120
incrementation
0:19:33.919,0:19:38.799
of the database i should say so
0:19:37.120,0:19:40.320
did you ever think of uh i believe i
0:19:38.799,0:19:42.240
have one more one more minutes and then
0:19:40.320,0:19:43.440
i'll hand it to the other folks
0:19:42.240,0:19:45.440
do you ever think of opening up or
0:19:43.440,0:19:47.200
designing the sqldb as a general all
0:19:45.440,0:19:48.160
speed up tool outside of orgrom so that
0:19:47.200,0:19:49.919
other libraries
0:19:48.160,0:19:51.679
that do execute complex queries are able
0:19:49.919,0:19:52.960
to use it well
0:19:51.679,0:19:54.640
a lot of people have been working on
0:19:52.960,0:19:56.480
this and i believe alpha papa has been
0:19:54.640,0:19:57.679
thinking quite a lot about this you know
0:19:56.480,0:20:01.120
all ql
0:19:57.679,0:20:03.679
is the ql stands for language
0:20:01.120,0:20:04.720
and i i can't remember now what's uh
0:20:03.679,0:20:08.080
what's the backend
0:20:04.720,0:20:10.080
is for all ql but the idea is relatively
0:20:08.080,0:20:13.039
relatively the same you know it's about
0:20:10.080,0:20:14.880
finding ways to optimize the way we
0:20:13.039,0:20:16.640
store the data about an old mode file
0:20:14.880,0:20:20.400
and how we retrieve it
0:20:16.640,0:20:22.159
and sql for us seems to seem to be a
0:20:20.400,0:20:24.240
good idea now obviously
0:20:22.159,0:20:26.080
maybe we could do something about old
0:20:24.240,0:20:27.360
mode but the problem is i think a
0:20:26.080,0:20:30.799
background process
0:20:27.360,0:20:32.960
is not necessarily um in
0:20:30.799,0:20:34.000
the core mentality of old mode but it's
0:20:32.960,0:20:36.080
definitely a
0:20:34.000,0:20:37.679
something that we could suggest uh when
0:20:36.080,0:20:40.960
we are a little more mature because well
0:20:37.679,0:20:41.679
orgrom was started last february and so
0:20:40.960,0:20:44.480
it's a fairly
0:20:41.679,0:20:45.840
young project in a way so uh i see
0:20:44.480,0:20:48.400
plenty more questions but
0:20:45.840,0:20:50.559
i'm out of time folks so i'm not sure uh
0:20:48.400,0:20:52.559
the other speaker is probably ready
0:20:50.559,0:20:54.000
so what i'll do is i'll probably try to
0:20:52.559,0:20:55.360
answer your questions when i get the
0:20:54.000,0:20:58.960
time inside the pad
0:20:55.360,0:21:01.039
but feel free to ping me on isc
0:20:58.960,0:21:02.320
or on the different channels we have
0:21:01.039,0:21:04.000
foreground and
0:21:02.320,0:21:05.520
i answer them with you know as much
0:21:04.000,0:21:07.600
energy as i can gather
0:21:05.520,0:21:08.880
all right thank you so much you are now
0:21:07.600,0:21:11.760
unmuted
0:21:08.880,0:21:13.120
thank you again very much leo and that
0:21:11.760,0:21:14.000
was me done for today so you'll see me
0:21:13.120,0:21:15.840
at the end but i'm
0:21:14.000,0:21:17.840
officially done and i am free of
0:21:15.840,0:21:22.640
thoughts i can focus on
0:21:17.840,0:21:27.760
sleeping probably awesome
0:21:22.640,0:21:27.760
all right see you guys later bye bye