summaryrefslogtreecommitdiffstats
path: root/2020/info/15.md
diff options
context:
space:
mode:
Diffstat (limited to '2020/info/15.md')
-rw-r--r--2020/info/15.md1062
1 files changed, 1061 insertions, 1 deletions
diff --git a/2020/info/15.md b/2020/info/15.md
index c61cd24f..98c711e1 100644
--- a/2020/info/15.md
+++ b/2020/info/15.md
@@ -2,7 +2,8 @@
Adolfo Villafiorita
[[!template id=vid src="https://mirror.csclub.uwaterloo.ca/emacsconf/2020/emacsconf-2020--15-moving-from-jekyll-to-orgmode-an-experience-report--adolfo-villafiorita.webm" subtitles="/2020/subtitles/emacsconf-2020--15-moving-from-jekyll-to-orgmode-an-experience-report--adolfo-villafiorita.vtt"]]
-[Download compressed .webm video (13.8M)](https://mirror.csclub.uwaterloo.ca/emacsconf/2020/smaller/emacsconf-2020--15-moving-from-jekyll-to-orgmode-an-experience-report--adolfo-villafiorita--vp9-q56-video-original-audio.webm)
+[Download compressed .webm video (13.8M)](https://mirror.csclub.uwaterloo.ca/emacsconf/2020/smaller/emacsconf-2020--15-moving-from-jekyll-to-orgmode-an-experience-report--adolfo-villafiorita--vp9-q56-video-original-audio.webm)
+[View transcript](#transcript)
I have been a long time user of static site generators, such as
Jekyll.
@@ -48,3 +49,1062 @@ website.
- Org mode files support in Jekyll - <https://emacs.cc/jekyll-org/>.
- Mentioned: <http://juanjose.garciaripoll.com/blog/org-mode-html-templates/index.html> (org-html).
- Other static webpage generators: <https://github.com/novoid/lazyblorg/wiki/Similar-Projects>.
+
+<a name="transcript"></a>
+# Transcript
+
+00:00:00.080 --> 00:00:03.120
+Adolfo: Okay, excellent.
+
+00:00:03.120 --> 00:00:06.960
+Hello, everyone and
+
+00:00:06.960 --> 00:00:10.080
+nice meeting you. Let me
+
+00:00:10.080 --> 00:00:12.400
+thank the the organizer for all the
+
+00:00:12.400 --> 00:00:13.920
+organization and all the work they are
+
+00:00:13.920 --> 00:00:15.200
+doing to support us.
+
+00:00:15.200 --> 00:00:18.400
+My name is Adolfo Villafiorita.
+
+00:00:18.400 --> 00:00:20.733
+I'm teaching at the University of
+Trento.
+
+00:00:20.733 --> 00:00:24.480
+I will shortly be working at
+
+00:00:24.480 --> 00:00:26.240
+shared.tech, which is
+
+00:00:26.240 --> 00:00:29.359
+a non-profit organization developing
+
+00:00:29.359 --> 00:00:30.530
+applications to
+
+00:00:32.399 --> 00:00:35.680
+recover surplus food.
+
+00:00:35.680 --> 00:00:38.600
+The reason of the talk today
+
+00:00:38.600 --> 00:00:40.079
+and the reason I'm here today
+
+00:00:40.079 --> 00:00:42.719
+is to talk about my experience in moving
+
+00:00:42.719 --> 00:00:47.200
+from Jekyll static website generator to
+Org Mode.
+
+00:00:47.200 --> 00:00:50.700
+The reason I moved to Org Mode
+
+00:00:50.700 --> 00:00:53.100
+is to have better support for
+
+00:00:53.100 --> 00:00:56.800
+literate programming on the websites
+
+00:00:56.800 --> 00:00:58.399
+at the University of Trento, where we
+
+00:00:58.399 --> 00:01:00.480
+make available the content for the
+
+00:01:00.480 --> 00:01:04.720
+the students.
+
+00:01:04.720 --> 00:01:08.900
+First of all, what is a static
+website generator?
+
+00:01:08.900 --> 00:01:10.080
+It is basically a tool which
+
+00:01:10.080 --> 00:01:11.360
+allows you to
+
+00:01:11.360 --> 00:01:15.360
+generate HTML files out of text files
+
+00:01:15.360 --> 00:01:17.439
+containing basically two types of
+
+00:01:17.439 --> 00:01:20.700
+information: metadata and content.
+
+00:01:20.700 --> 00:01:23.119
+Metadata is a
+
+00:01:23.119 --> 00:01:26.159
+set of key pairs describing the
+
+00:01:26.159 --> 00:01:28.560
+content of the file, such as the title,
+
+00:01:28.560 --> 00:01:31.733
+author, tags, and so on and so forth.
+
+00:01:31.733 --> 00:01:34.560
+The content is what you actually
+want to
+
+00:01:34.560 --> 00:01:37.040
+get published on the Internet in
+
+00:01:37.040 --> 00:01:38.880
+the HTML file.
+
+00:01:38.880 --> 00:01:41.439
+Usually the content is written in
+
+00:01:41.439 --> 00:01:45.800
+some kind of markup language,
+
+00:01:45.800 --> 00:01:49.759
+such as Markdown or possibly
+
+00:01:49.759 --> 00:01:53.200
+Org Mode. Jekyll is a very
+
+00:01:53.200 --> 00:01:57.900
+popular static website generator.
+
+00:01:57.900 --> 00:01:59.840
+It is written in Ruby.
+
+00:01:59.840 --> 00:02:03.280
+What it does: it systematically
+
+00:02:03.280 --> 00:02:06.840
+transforms all the input files
+
+00:02:06.840 --> 00:02:09.440
+by making the content into
+
+00:02:09.440 --> 00:02:11.599
+HTML and systematically applying a
+
+00:02:11.599 --> 00:02:14.000
+template in order to generate the
+
+00:02:14.000 --> 00:02:17.120
+HTML files, which you can then deploy
+
+00:02:17.120 --> 00:02:19.840
+on your server of choice to make them
+
+00:02:19.840 --> 00:02:22.160
+available on the Internet.
+
+00:02:22.160 --> 00:02:26.160
+One of the features most--
+
+00:02:26.160 --> 00:02:27.500
+well, I would say all
+
+00:02:27.500 --> 00:02:30.239
+static website generators have
+
+00:02:30.239 --> 00:02:32.560
+is that of being able to
+
+00:02:32.560 --> 00:02:34.879
+collect the metadata information
+
+00:02:34.879 --> 00:02:38.400
+of the files being part of
+
+00:02:38.400 --> 00:02:39.440
+your project.
+
+00:02:39.440 --> 00:02:45.280
+The reason they do that is because
+
+00:02:45.280 --> 00:02:47.840
+you sometimes want to generate pages
+
+00:02:47.840 --> 00:02:49.280
+based on the content
+
+00:02:49.280 --> 00:02:53.200
+of your projects,
+
+00:02:53.200 --> 00:02:56.239
+such as, for instance, the list of
+
+00:02:56.239 --> 00:02:59.040
+posts you have recently published, or
+
+00:02:59.040 --> 00:03:00.400
+maybe the list of tags
+
+00:03:00.400 --> 00:03:03.840
+you have defined for your post,
+
+00:03:03.840 --> 00:03:07.280
+and so on and so forth.
+
+00:03:07.280 --> 00:03:09.760
+Jekyll gives the possibility of
+
+00:03:09.760 --> 00:03:12.400
+generating this kind of dynamic
+
+00:03:12.400 --> 00:03:14.400
+content by using Liquid,
+
+00:03:14.400 --> 00:03:18.800
+which is a templating language which
+
+00:03:18.800 --> 00:03:21.840
+looks like this.
+
+00:03:21.840 --> 00:03:24.879
+So basically, you have all the
+
+00:03:24.879 --> 00:03:26.879
+constructs you can
+
+00:03:26.879 --> 00:03:28.800
+expect in a programming language.
+
+00:03:28.800 --> 00:03:29.920
+This, for instance,
+
+00:03:29.920 --> 00:03:33.360
+is a for cycle which
+
+00:03:33.360 --> 00:03:37.440
+iterates over all the posts or the
+
+00:03:37.440 --> 00:03:39.599
+files in a specific directory of the
+
+00:03:39.599 --> 00:03:41.040
+Jekyll project.
+
+00:03:41.040 --> 00:03:45.040
+For each post, it takes the title
+
+00:03:45.040 --> 00:03:48.400
+and the URL and generates a link.
+
+00:03:48.400 --> 00:03:52.867
+So Jekyll is nice and sweet,
+
+00:03:52.867 --> 00:03:55.200
+but over the years
+
+00:03:55.200 --> 00:03:57.760
+I started using more and more
+
+00:03:57.760 --> 00:03:59.519
+systematically
+
+00:03:59.519 --> 00:04:02.000
+Org Mode to write all my files.
+
+00:04:02.000 --> 00:04:04.833
+I moved from Markdown to Org Mode
+
+00:04:04.833 --> 00:04:07.200
+I am a long time Emacs user.
+
+00:04:07.200 --> 00:04:09.167
+I've been using Emacs for 30 years now,
+
+00:04:09.167 --> 00:04:12.799
+so Org Mode is a more recent discovery,
+
+00:04:12.799 --> 00:04:17.033
+but it is a very nice discovery I made.
+
+00:04:17.033 --> 00:04:19.680
+The reason I like Org Mode
+
+00:04:19.680 --> 00:04:22.320
+is because, for instance, you can write
+
+00:04:22.320 --> 00:04:24.933
+formulas using MathJax
+
+00:04:24.933 --> 00:04:26.639
+and you can generate diagrams
+
+00:04:26.639 --> 00:04:30.320
+or plots with Gnuplot.
+
+00:04:30.320 --> 00:04:32.240
+Also important is the fact that you have
+
+00:04:32.240 --> 00:04:34.080
+the possibility of publishing
+
+00:04:34.080 --> 00:04:39.520
+your documents to multiple backends
+such as PDF,
+
+00:04:39.520 --> 00:04:43.600
+or maybe a Reveal presentation,
+
+00:04:43.600 --> 00:04:47.199
+or HTML. This is all made possible
+
+00:04:47.199 --> 00:04:50.479
+by Babel, which is
+
+00:04:50.479 --> 00:04:52.560
+exactly what we just saw in the
+
+00:04:52.560 --> 00:04:54.639
+previous talk:
+
+00:04:54.639 --> 00:04:57.440
+Namely, the possibility of executing a
+
+00:04:57.440 --> 00:04:59.520
+snippet of code
+
+00:04:59.520 --> 00:05:02.560
+embedded in in your pages.
+
+00:05:02.560 --> 00:05:06.400
+Our model can also be used
+
+00:05:06.400 --> 00:05:09.600
+within Jekyll. In fact,
+
+00:05:09.600 --> 00:05:13.667
+there is a a nice gem, a nice library,
+
+00:05:13.667 --> 00:05:17.233
+called jekyll-org which allows you
+
+00:05:17.233 --> 00:05:19.680
+to use Org Mode files directly
+
+00:05:19.680 --> 00:05:22.880
+into jekyll. But when you start using
+
+00:05:22.880 --> 00:05:26.560
+Org Mode... When I started using
+
+00:05:26.560 --> 00:05:30.560
+Org Mode, I realized I could move
+
+00:05:30.560 --> 00:05:34.240
+all my workflow, all my publishing
+
+00:05:34.240 --> 00:05:36.840
+workflow to Emacs.
+
+00:05:36.840 --> 00:05:41.100
+In fact, Org Mode is also a
+
+00:05:41.100 --> 00:05:42.880
+static website generator because
+
+00:05:42.880 --> 00:05:46.240
+it has got the possibility of publishing
+
+00:05:46.240 --> 00:05:50.880
+projects made of Org Mode files.
+
+00:05:50.880 --> 00:05:53.840
+One of the nice things about
+
+00:05:53.840 --> 00:05:56.479
+the publishing features of Org Mode
+
+00:05:56.479 --> 00:05:58.880
+is that it allows you to define in the
+
+00:05:58.880 --> 00:06:01.300
+org-publish-project-alist,
+
+00:06:01.300 --> 00:06:03.199
+all the the components
+
+00:06:03.199 --> 00:06:05.367
+which are part of your project.
+
+00:06:05.367 --> 00:06:07.520
+In a sense, it is
+
+00:06:07.520 --> 00:06:10.479
+also more flexible than Jekyll,
+
+00:06:10.479 --> 00:06:12.880
+because it also allows you, for instance,
+
+00:06:12.880 --> 00:06:15.120
+to publish a single file rather
+
+00:06:15.120 --> 00:06:17.440
+than having to recompile everything
+
+00:06:17.440 --> 00:06:20.080
+every time you want to publish your
+
+00:06:20.080 --> 00:06:22.333
+your project to your website.
+
+00:06:22.333 --> 00:06:25.333
+However, there are some short comments
+
+00:06:25.333 --> 00:06:29.520
+I would say, or some areas
+of improvement.
+
+00:06:30.400 --> 00:06:33.600
+The first is that support for
+templating
+
+00:06:33.600 --> 00:06:36.639
+is not so obvious as it is
+
+00:06:36.639 --> 00:06:39.280
+in Jekyll, even though there are some
+
+00:06:40.560 --> 00:06:44.560
+nice extensions such as org-thtml,
+
+00:06:44.560 --> 00:06:48.400
+for instance, which allows you to use
+templates.
+
+00:06:48.400 --> 00:06:51.840
+More important to me was the fact that
+
+00:06:51.840 --> 00:06:54.080
+apparently, there is little support for
+
+00:06:54.080 --> 00:06:56.133
+the creation of dynamic content
+
+00:06:56.133 --> 00:06:57.900
+So I was very curious
+
+00:06:57.900 --> 00:06:59.360
+and very keen to use
+
+00:06:59.360 --> 00:07:02.800
+Org Mode for publishing my blog
+
+00:07:02.800 --> 00:07:05.440
+and the courses at the university,
+
+00:07:05.440 --> 00:07:08.720
+but then I had to find a way
+
+00:07:08.720 --> 00:07:11.440
+to being able to publish these
+
+00:07:11.440 --> 00:07:13.599
+dynamic pages, finding some kind of
+
+00:07:13.599 --> 00:07:16.000
+replacement, so to speak,
+
+00:07:16.720 --> 00:07:17.900
+for the liquid engine.
+
+00:07:17.900 --> 00:07:24.160
+The solution was there at hand,
+actually, because
+
+00:07:24.160 --> 00:07:27.280
+basically, I realized I could use Babel
+
+00:07:27.280 --> 00:07:30.800
+for exactly this purpose. Rather than
+
+00:07:30.800 --> 00:07:32.720
+using Babel for generating
+
+00:07:32.720 --> 00:07:35.759
+plots or my other computations
+
+00:07:35.759 --> 00:07:37.919
+or whatever I was using them for,
+
+00:07:37.919 --> 00:07:41.039
+I realized I could use Babel to
+
+00:07:41.039 --> 00:07:45.120
+generate HTML which could be
+
+00:07:45.120 --> 00:07:49.967
+then published in the project
+
+00:07:49.967 --> 00:07:53.680
+All I needed to do then
+
+00:07:53.680 --> 00:07:56.100
+was defining some kind of functions,
+
+00:07:56.100 --> 00:07:58.319
+some kind of code in order to read
+
+00:07:58.319 --> 00:08:01.840
+the metadata of all
+
+00:08:01.840 --> 00:08:04.767
+the Org Mode files of my web project,
+
+00:08:04.767 --> 00:08:09.680
+so that I could then publish--
+
+00:08:09.680 --> 00:08:13.280
+generate the dynamic content.
+
+00:08:13.280 --> 00:08:18.080
+This is a snippet taken from
+
+00:08:18.080 --> 00:08:21.759
+one of my HTML projects,
+
+00:08:21.759 --> 00:08:24.800
+which basically shows the way in which
+
+00:08:24.800 --> 00:08:27.599
+I generate the list of posts on
+
+00:08:27.599 --> 00:08:32.560
+my page. It is exactly how the
+Liquid that we saw
+
+00:08:32.560 --> 00:08:35.680
+a couple of slides earlier that
+looks like
+
+00:08:35.680 --> 00:08:39.200
+in Org Mode.
+
+00:08:39.200 --> 00:08:42.320
+Basically, what I'm doing...
+I'm using...
+
+00:08:42.320 --> 00:08:46.720
+I wrote a Ruby script which
+
+00:08:46.720 --> 00:08:49.680
+reads all the metadata. So this
+
+00:08:49.680 --> 00:08:51.040
+highlighted code
+
+00:08:51.040 --> 00:08:53.100
+basically loads the script
+
+00:08:53.100 --> 00:08:55.300
+which is stored externally.
+
+00:08:55.300 --> 00:08:56.800
+Then it collects all the
+
+00:08:56.800 --> 00:08:58.320
+metadata from the
+
+00:08:58.320 --> 00:09:00.880
+Org Mode files in the
+
+00:09:00.880 --> 00:09:02.240
+current directory.
+
+00:09:02.240 --> 00:09:04.800
+And then the following... The code
+
+00:09:04.800 --> 00:09:06.480
+you can see here
+
+00:09:06.480 --> 00:09:09.839
+basically iterates over all the
+
+00:09:09.839 --> 00:09:12.959
+posts read at the previous step.
+
+00:09:12.959 --> 00:09:16.399
+It generates
+
+00:09:16.399 --> 00:09:19.519
+a list with the title
+
+00:09:19.519 --> 00:09:22.959
+and the URLS, basically
+
+00:09:22.959 --> 00:09:27.440
+replicating what Jekyll does.
+
+00:09:27.440 --> 00:09:30.240
+There are some other things
+
+00:09:30.240 --> 00:09:32.399
+I have to deal with in order to
+
+00:09:33.200 --> 00:09:36.480
+accommodate my workflow. But that was
+
+00:09:36.480 --> 00:09:39.200
+relatively easy in the sense that one of
+
+00:09:39.200 --> 00:09:43.279
+the problems, one of the issues I had to
+
+00:09:43.279 --> 00:09:45.360
+solve was that of having
+
+00:09:45.360 --> 00:09:48.480
+a common navigation on all my
+
+00:09:48.480 --> 00:09:51.040
+pages. That was easily solved
+
+00:09:51.040 --> 00:09:53.867
+using the #+INCLUDE feature.
+
+00:09:53.867 --> 00:09:54.959
+So I basically
+
+00:09:54.959 --> 00:09:56.000
+made available
+
+00:09:56.000 --> 00:09:57.839
+an #+INCLUDE with all the navigation
+
+00:09:57.839 --> 00:10:00.560
+which is embedded in all the pages of
+
+00:10:00.560 --> 00:10:01.839
+my websites
+
+00:10:01.839 --> 00:10:03.733
+through the #+INCLUDE.
+
+00:10:03.733 --> 00:10:06.160
+Another nice feature which
+
+00:10:06.160 --> 00:10:08.560
+Jekyll has is the possibility of
+
+00:10:08.560 --> 00:10:12.800
+previewing a website before deploying it.
+
+00:10:13.200 --> 00:10:16.079
+Emacs also has got a node which allows
+
+00:10:16.079 --> 00:10:21.200
+you to launch a web server. In fact,
+
+00:10:21.200 --> 00:10:24.320
+I wrote a quick hack
+
+00:10:24.320 --> 00:10:26.959
+which allows you to
+
+00:10:26.959 --> 00:10:31.519
+invoke a node on an Org Mode
+
+00:10:31.519 --> 00:10:34.720
+project, start a local preview,
+
+00:10:34.720 --> 00:10:37.920
+and then use rsync
+
+00:10:37.920 --> 00:10:44.839
+in order to deploy the the website.
+
+00:10:46.240 --> 00:10:48.720
+Five minutes left. More than
+
+00:10:48.720 --> 00:10:51.200
+enough. Okay.
+
+00:10:51.200 --> 00:10:52.967
+Thanks. Thank you, thank you very much.
+
+00:10:52.967 --> 00:10:56.480
+I'm nearly done. So then I can take
+some questions.
+
+00:10:56.480 --> 00:11:00.560
+Just to give you maybe
+
+00:11:00.560 --> 00:11:03.680
+a slightly more in-depth
+
+00:11:03.680 --> 00:11:06.480
+view of what the pages look like,
+
+00:11:06.480 --> 00:11:07.200
+so these are
+
+00:11:07.200 --> 00:11:11.120
+one of the pages, or the source files
+
+00:11:11.120 --> 00:11:14.720
+of one of the websites. It is
+
+00:11:14.720 --> 00:11:18.480
+in literate programming. Basically,
+
+00:11:18.480 --> 00:11:20.399
+you see there is some metadata here.
+
+00:11:20.399 --> 00:11:22.640
+I mean this is a regular Org Mode file.
+
+00:11:22.640 --> 00:11:26.640
+This part here
+
+00:11:26.640 --> 00:11:29.920
+basically defines some common options
+
+00:11:29.920 --> 00:11:31.519
+for publication.
+
+00:11:31.519 --> 00:11:35.920
+These two includes here
+
+00:11:35.920 --> 00:11:41.120
+put some extra HTML in the head part and
+
+00:11:41.120 --> 00:11:44.480
+the navigation. Here, as you can see,
+
+00:11:44.480 --> 00:11:48.079
+is the code generating the
+
+00:11:48.079 --> 00:11:50.160
+the list in chronological order. It is
+
+00:11:50.160 --> 00:11:52.240
+slightly more complex than the example I
+
+00:11:52.240 --> 00:11:53.839
+made in the slide
+
+00:11:53.839 --> 00:11:56.240
+because there is some more
+
+00:11:56.240 --> 00:11:59.760
+elaboration to do, including
+putting some
+
+00:11:59.760 --> 00:12:01.839
+Javascript to identify
+
+00:12:01.839 --> 00:12:05.120
+according to the tags.
+
+00:12:05.120 --> 00:12:08.160
+To go back to the presentation...
+
+00:12:11.200 --> 00:12:13.067
+I managed this migration
+
+00:12:13.067 --> 00:12:14.560
+a few months ago,
+
+00:12:14.560 --> 00:12:17.680
+and then all my workflow is within
+
+00:12:17.680 --> 00:12:20.399
+Org Mode and within Emacs.
+
+00:12:20.399 --> 00:12:23.079
+I'm very happy with it because it's
+
+00:12:23.079 --> 00:12:26.800
+simplified quite a bit
+
+00:12:26.800 --> 00:12:28.480
+my publication process.
+
+00:12:28.480 --> 00:12:31.839
+One of the advantages... Another
+
+00:12:31.839 --> 00:12:34.240
+advantage... So the first advantage is that
+
+00:12:34.240 --> 00:12:36.959
+everything is in Org Mode and Emacs.
+
+00:12:36.959 --> 00:12:38.160
+Second advantage
+
+00:12:38.160 --> 00:12:41.680
+is that everything is based on the
+
+00:12:41.680 --> 00:12:44.880
+standard machinery provided by Org Mode.
+
+00:12:44.880 --> 00:12:47.760
+So in a sense, it is
+
+00:12:47.760 --> 00:12:50.079
+more robust with respect to
+
+00:12:50.079 --> 00:12:53.040
+dependencies, possible errors, and so
+
+00:12:53.040 --> 00:12:54.320
+on and so forth.
+
+00:12:54.320 --> 00:12:56.639
+The fact that Org Mode
+
+00:12:56.639 --> 00:12:58.240
+allows you to publish
+
+00:12:58.240 --> 00:13:00.880
+a single file in a project is also
+
+00:13:00.880 --> 00:13:03.839
+very interesting because
+
+00:13:03.839 --> 00:13:07.839
+it allows to be more robust to
+
+00:13:07.839 --> 00:13:11.040
+problems you might introduce when
+
+00:13:11.040 --> 00:13:14.959
+you're changing--when I'm changing the
+setup.
+
+00:13:14.959 --> 00:13:16.880
+Another interesting thing which I
+
+00:13:16.880 --> 00:13:21.519
+realized that I could have is that
+
+00:13:21.519 --> 00:13:23.600
+in a sense, the specification of the
+
+00:13:23.600 --> 00:13:28.480
+website can be embedded in the website
+itself.
+
+00:13:28.480 --> 00:13:30.800
+In a sense this is some kind of
+
+00:13:30.800 --> 00:13:31.839
+self-documenting...
+
+00:13:31.839 --> 00:13:35.120
+It's a way of self-documenting
+
+00:13:35.120 --> 00:13:36.600
+what I'm actually doing.
+
+00:13:36.600 --> 00:13:44.133
+For instance, here on my website,
+
+00:13:44.133 --> 00:13:46.399
+you can see the
+
+00:13:46.399 --> 00:13:48.240
+specification of the
+
+00:13:48.240 --> 00:13:51.519
+project which is loaded
+
+00:13:51.519 --> 00:13:53.933
+from my initialization file,
+
+00:13:53.933 --> 00:13:56.320
+but then it is also published
+
+00:13:56.320 --> 00:13:59.440
+together with my home page. It lives
+
+00:13:59.440 --> 00:14:01.360
+with the repository where
+
+00:14:01.360 --> 00:14:05.360
+I keep all the sources of my website,
+
+00:14:05.360 --> 00:14:08.079
+which is kind of nice because it
+
+00:14:08.079 --> 00:14:09.839
+basically isolates
+
+00:14:09.839 --> 00:14:14.079
+everything in a single place.
+
+00:14:14.079 --> 00:14:16.880
+So there are some examples. I'm
+
+00:14:16.880 --> 00:14:19.433
+showing them more because of the
+
+00:14:19.433 --> 00:14:21.760
+source code which
+
+00:14:21.760 --> 00:14:25.519
+you can grab from the git repositories
+
+00:14:25.519 --> 00:14:26.933
+if you are interested.
+
+00:14:26.933 --> 00:14:28.399
+Of course I'm also available
+
+00:14:28.399 --> 00:14:31.600
+to provide some support and help
+
+00:14:31.600 --> 00:14:32.959
+if you are interested
+
+00:14:32.959 --> 00:14:34.480
+in this kind of stuff.
+
+00:14:34.480 --> 00:14:37.760
+The the next step for me will be that of
+
+00:14:37.760 --> 00:14:41.600
+trying, making this kind of
+machinery available
+
+00:14:41.600 --> 00:14:45.199
+for more general use at the moment.
+
+00:14:45.199 --> 00:14:47.120
+If you are interested in trying out my
+
+00:14:47.120 --> 00:14:48.800
+suggestion, grabbing the
+
+00:14:48.800 --> 00:14:51.933
+sources for one of the websites
+
+00:14:51.933 --> 00:14:54.700
+to seehow they look like,
+
+00:14:54.700 --> 00:14:56.720
+and maybe try and
+
+00:14:56.720 --> 00:15:00.160
+customize it for your purposes...
+
+00:15:00.160 --> 00:15:03.839
+This is basically the content of my talk.
+
+00:15:03.839 --> 00:15:06.959
+I'm open to questions and thank you
+
+00:15:06.959 --> 00:15:10.880
+for your attention.
+
+00:15:10.880 --> 00:15:12.880
+(Amin: Thank you very much, Adolfo, for your
+
+00:15:12.880 --> 00:15:14.480
+awesome presentation.
+
+00:15:14.480 --> 00:15:17.360
+I think we have time for maybe like
+
+00:15:17.360 --> 00:15:19.360
+one or two questions,
+
+00:15:19.360 --> 00:15:21.279
+and then the rest maybe you could
+
+00:15:21.279 --> 00:15:26.639
+take up after the stream.)
+
+00:15:26.639 --> 00:15:28.033
+Adolfo: What should we do?
+
+00:15:28.033 --> 00:15:30.000
+(Amin: Would you like me
+
+00:15:30.000 --> 00:15:31.839
+to read you the questions?)
+
+00:15:31.839 --> 00:15:35.199
+Adolfo: Yeah, probably better because
+
+00:15:35.199 --> 00:15:36.700
+I'm kind of lost there.
+
+00:15:36.700 --> 00:15:40.399
+(Amin: Okay, no problem.
+
+00:15:40.399 --> 00:15:42.480
+So someone asks, "Do you have any
+
+00:15:42.480 --> 00:15:45.440
+opinion on Firn?")
+
+00:15:45.440 --> 00:15:48.639
+Adolfo: Firn. I don't know Firn,
+
+00:15:48.639 --> 00:15:51.839
+so I'll give it a try
+
+00:15:51.839 --> 00:15:55.040
+and check it out.
+
+00:15:55.040 --> 00:15:57.839
+(Amin: Thanks. People are also asking,
+
+00:15:57.839 --> 00:15:59.680
+do you discuss this, for example, in a blog
+
+00:15:59.680 --> 00:16:01.279
+or anywhere else they could find more
+
+00:16:01.279 --> 00:16:02.800
+about it?)
+
+00:16:02.800 --> 00:16:05.600
+Adolfo: Oh yes. I'm going to publish the
+
+00:16:05.600 --> 00:16:08.560
+the talk and the content
+
+00:16:08.560 --> 00:16:11.120
+on my website, and then I'll link it from
+
+00:16:11.120 --> 00:16:13.067
+the EmacsConf conference
+
+00:16:13.067 --> 00:16:14.720
+so that it will be easier for
+
+00:16:14.720 --> 00:16:16.533
+people to to reach it
+
+00:16:16.533 --> 00:16:19.040
+I will shortly make it
+
+00:16:19.040 --> 00:16:22.880
+available right after the conference.
+
+00:16:22.880 --> 00:16:26.160
+(Amin: Wonderful. I think that's all
+for the questions.
+
+00:16:26.160 --> 00:16:27.667
+Thank you very much.)
+
+00:16:27.667 --> 00:16:29.600
+Adolfo: Thank you very much. Thank you.
+
+00:16:29.600 --> 00:16:34.800
+(Amin: Cheers.) Adolfo: Bye, cheers. (Amin: Bye.)