summaryrefslogtreecommitdiffstats
path: root/2020/subtitles/emacsconf-2020--19-sharing-blogs-and-more-with-org-webring--brett-gilio-autogen.vtt
diff options
context:
space:
mode:
Diffstat (limited to '2020/subtitles/emacsconf-2020--19-sharing-blogs-and-more-with-org-webring--brett-gilio-autogen.vtt')
-rw-r--r--2020/subtitles/emacsconf-2020--19-sharing-blogs-and-more-with-org-webring--brett-gilio-autogen.vtt709
1 files changed, 709 insertions, 0 deletions
diff --git a/2020/subtitles/emacsconf-2020--19-sharing-blogs-and-more-with-org-webring--brett-gilio-autogen.vtt b/2020/subtitles/emacsconf-2020--19-sharing-blogs-and-more-with-org-webring--brett-gilio-autogen.vtt
new file mode 100644
index 00000000..672f36de
--- /dev/null
+++ b/2020/subtitles/emacsconf-2020--19-sharing-blogs-and-more-with-org-webring--brett-gilio-autogen.vtt
@@ -0,0 +1,709 @@
+WEBVTT
+
+00:00:01.120 --> 00:00:03.120
+hi my name is brett gillio
+
+00:00:03.120 --> 00:00:04.560
+and today I'll be sharing a project that
+
+00:00:04.560 --> 00:00:05.920
+several people and I've been working on
+
+00:00:05.920 --> 00:00:07.520
+for the past few months called org
+
+00:00:07.520 --> 00:00:08.480
+webbery
+
+00:00:08.480 --> 00:00:10.559
+the essential idea behind org webbering
+
+00:00:10.559 --> 00:00:12.240
+is to take the power of creating a
+
+00:00:12.240 --> 00:00:13.679
+website with org mode
+
+00:00:13.679 --> 00:00:15.360
+and its built-in features to control
+
+00:00:15.360 --> 00:00:17.520
+html and xml output
+
+00:00:17.520 --> 00:00:19.119
+and utilize it to share blogs git
+
+00:00:19.119 --> 00:00:22.080
+commits or other rss or atom static feed
+
+00:00:22.080 --> 00:00:22.640
+content
+
+00:00:22.640 --> 00:00:25.920
+to share directly with your audiences
+
+00:00:25.920 --> 00:00:28.560
+my website is created entirely using org
+
+00:00:28.560 --> 00:00:30.000
+mode and I love the amount of
+
+00:00:30.000 --> 00:00:31.679
+flexibility it offers me while keeping
+
+00:00:31.679 --> 00:00:34.079
+everything quite simple
+
+00:00:34.079 --> 00:00:35.920
+I am able to put information about
+
+00:00:35.920 --> 00:00:37.600
+myself a blog
+
+00:00:37.600 --> 00:00:40.079
+and my org web ring tool directly on on
+
+00:00:40.079 --> 00:00:42.879
+the home page using symbol org syntax
+
+00:00:42.879 --> 00:00:44.640
+as you can see I am currently displaying
+
+00:00:44.640 --> 00:00:46.239
+three posts on my website
+
+00:00:46.239 --> 00:00:48.239
+the first is the geeksday announcement
+
+00:00:48.239 --> 00:00:49.840
+the second is a quarterly financial
+
+00:00:49.840 --> 00:00:51.039
+update from sourcehut
+
+00:00:51.039 --> 00:00:52.320
+and the third is a post from
+
+00:00:52.320 --> 00:00:54.480
+drewdevault's blog drew devault by the
+
+00:00:54.480 --> 00:00:55.120
+way
+
+00:00:55.120 --> 00:00:57.680
+his open ring is what helped inspire
+
+00:00:57.680 --> 00:00:59.039
+what is today or
+
+00:00:59.039 --> 00:01:01.359
+web ring all this information is
+
+00:01:01.359 --> 00:01:03.440
+gathered using a sort of manifest file
+
+00:01:03.440 --> 00:01:05.360
+that org web ring will use to acquire
+
+00:01:05.360 --> 00:01:07.040
+and place the information in the correct
+
+00:01:07.040 --> 00:01:07.760
+format
+
+00:01:07.760 --> 00:01:10.000
+according to your specification
+
+00:01:10.000 --> 00:01:10.799
+additionally
+
+00:01:10.799 --> 00:01:11.840
+you can see that the geeksday
+
+00:01:11.840 --> 00:01:14.159
+announcement is post is pinned
+
+00:01:14.159 --> 00:01:16.000
+stylization is likewise controlled by
+
+00:01:16.000 --> 00:01:17.200
+using css
+
+00:01:17.200 --> 00:01:18.960
+you can add nice subtle color changes on
+
+00:01:18.960 --> 00:01:20.720
+mouse hover or control the size of the
+
+00:01:20.720 --> 00:01:23.759
+flexboxes all using standard css
+
+00:01:23.759 --> 00:01:26.080
+let's examine a simple scenario of using
+
+00:01:26.080 --> 00:01:28.320
+org webroom
+
+00:01:28.320 --> 00:01:30.400
+after you have org webbing installed
+
+00:01:30.400 --> 00:01:32.000
+you'll be able to create a manifest file
+
+00:01:32.000 --> 00:01:33.759
+that looks something like this
+
+00:01:33.759 --> 00:01:35.680
+this particular manifest file is an
+
+00:01:35.680 --> 00:01:37.840
+example offered in the repository under
+
+00:01:37.840 --> 00:01:39.520
+the assets directory
+
+00:01:39.520 --> 00:01:41.200
+please feel free to utilize them as a
+
+00:01:41.200 --> 00:01:42.640
+starting point if you are interested in
+
+00:01:42.640 --> 00:01:44.399
+using org web ring
+
+00:01:44.399 --> 00:01:46.320
+as you can see here we are able to place
+
+00:01:46.320 --> 00:01:48.640
+an rss or atom feed in this file and
+
+00:01:48.640 --> 00:01:50.479
+specify information about the feed we
+
+00:01:50.479 --> 00:01:51.920
+wish to produce
+
+00:01:51.920 --> 00:01:54.640
+for example the total number of items
+
+00:01:54.640 --> 00:01:56.159
+and the total number of entries per
+
+00:01:56.159 --> 00:01:57.439
+source item
+
+00:01:57.439 --> 00:01:59.439
+additionally you're able to filter posts
+
+00:01:59.439 --> 00:02:00.960
+you feel would not be relevant to your
+
+00:02:00.960 --> 00:02:02.079
+web ring
+
+00:02:02.079 --> 00:02:04.079
+we can take this example file and run
+
+00:02:04.079 --> 00:02:13.120
+the dispatch and see the result
+
+00:02:13.120 --> 00:02:15.280
+the web ring displays a proper summary
+
+00:02:15.280 --> 00:02:17.760
+set to a character limit you can specify
+
+00:02:17.760 --> 00:02:19.599
+additionally all the links in the web
+
+00:02:19.599 --> 00:02:21.520
+ring are navigable and will open in a
+
+00:02:21.520 --> 00:02:22.560
+new tab
+
+00:02:22.560 --> 00:02:24.239
+that way if someone wishes to view the
+
+00:02:24.239 --> 00:02:25.920
+content they simply need to
+
+00:02:25.920 --> 00:02:30.319
+click on the title or their source name
+
+00:02:30.319 --> 00:02:32.879
+now this particular example is not
+
+00:02:32.879 --> 00:02:34.800
+stylized because we have not given the
+
+00:02:34.800 --> 00:02:37.120
+website a css file to reference
+
+00:02:37.120 --> 00:02:38.720
+let's examine what is happening from
+
+00:02:38.720 --> 00:02:40.319
+behind the scenes a little bit
+
+00:02:40.319 --> 00:02:43.040
+from inside of the org mode file let's
+
+00:02:43.040 --> 00:02:43.360
+run
+
+00:02:43.360 --> 00:02:48.800
+the org web ring function
+
+00:02:48.800 --> 00:02:51.280
+as you can see it takes that xml file
+
+00:02:51.280 --> 00:02:54.239
+and processes it into the correct html
+
+00:02:54.239 --> 00:02:56.080
+you will then be able to embed this org
+
+00:02:56.080 --> 00:02:58.080
+function into another org file to be
+
+00:02:58.080 --> 00:03:00.080
+able to display it on your website
+
+00:03:00.080 --> 00:03:02.840
+pretty neat let's look at an at another
+
+00:03:02.840 --> 00:03:05.440
+example
+
+00:03:05.440 --> 00:03:07.360
+on my website we have an example of
+
+00:03:07.360 --> 00:03:09.519
+using org webbring to reply to another
+
+00:03:09.519 --> 00:03:10.800
+blog post
+
+00:03:10.800 --> 00:03:12.480
+what I have here is a post from drew to
+
+00:03:12.480 --> 00:03:14.640
+vault's blog it is showcased clearly at
+
+00:03:14.640 --> 00:03:16.239
+the top as a single entry
+
+00:03:16.239 --> 00:03:19.040
+and you can see it is pinned the pinning
+
+00:03:19.040 --> 00:03:20.800
+functionality ensures that this post is
+
+00:03:20.800 --> 00:03:22.400
+moved to the front of the hypothetical
+
+00:03:22.400 --> 00:03:23.120
+web ring
+
+00:03:23.120 --> 00:03:25.760
+and guaranteeing its visibility this is
+
+00:03:25.760 --> 00:03:27.599
+then coupled with a few changes such as
+
+00:03:27.599 --> 00:03:29.840
+disabling the generation time
+
+00:03:29.840 --> 00:03:31.120
+which would not be relevant to the
+
+00:03:31.120 --> 00:03:33.280
+readers and a change of the text in the
+
+00:03:33.280 --> 00:03:34.000
+header
+
+00:03:34.000 --> 00:03:37.040
+to demonstrate is indeed used as a reply
+
+00:03:37.040 --> 00:03:39.599
+an example of this is also provided in
+
+00:03:39.599 --> 00:03:42.319
+the assets directory
+
+00:03:42.319 --> 00:03:44.799
+last we can use org webbring as a blog
+
+00:03:44.799 --> 00:03:45.519
+planet
+
+00:03:45.519 --> 00:03:47.599
+which is one of my favorites this takes
+
+00:03:47.599 --> 00:03:49.360
+after the emax life planet which I
+
+00:03:49.360 --> 00:03:51.120
+believe is moderated by sasha
+
+00:03:51.120 --> 00:03:53.200
+and others as well as the haskell and
+
+00:03:53.200 --> 00:03:54.720
+ocamoplanets
+
+00:03:54.720 --> 00:03:56.959
+a planet for the uninitiated is a
+
+00:03:56.959 --> 00:03:58.879
+curated form of content sharing about a
+
+00:03:58.879 --> 00:04:00.159
+set of topics
+
+00:04:00.159 --> 00:04:02.400
+the max life haskell and ocampo planets
+
+00:04:02.400 --> 00:04:03.439
+as their names imply
+
+00:04:03.439 --> 00:04:05.920
+cover Emacs haskell and ocampo blogs
+
+00:04:05.920 --> 00:04:07.200
+respectively
+
+00:04:07.200 --> 00:04:09.680
+likewise my planet covers programming
+
+00:04:09.680 --> 00:04:11.360
+language theory and category theory
+
+00:04:11.360 --> 00:04:12.239
+primarily
+
+00:04:12.239 --> 00:04:13.920
+it works in essentially the same way as
+
+00:04:13.920 --> 00:04:15.840
+the org web ring you provide it with a
+
+00:04:15.840 --> 00:04:17.519
+list of feeds that get parsed
+
+00:04:17.519 --> 00:04:20.000
+however unlike the web ring the planet
+
+00:04:20.000 --> 00:04:21.919
+function has no limits on the number of
+
+00:04:21.919 --> 00:04:23.040
+entries per source
+
+00:04:23.040 --> 00:04:24.639
+and the display number of posts is
+
+00:04:24.639 --> 00:04:27.600
+increased significantly
+
+00:04:27.600 --> 00:04:29.759
+the syndicates or sources have their
+
+00:04:29.759 --> 00:04:30.720
+feeds shown
+
+00:04:30.720 --> 00:04:32.639
+visibly to users who may wish to fetch
+
+00:04:32.639 --> 00:04:33.759
+them
+
+00:04:33.759 --> 00:04:35.440
+a planet is typically meant to be a
+
+00:04:35.440 --> 00:04:37.040
+standalone page and not something you
+
+00:04:37.040 --> 00:04:38.639
+would embed in another page like a web
+
+00:04:38.639 --> 00:04:39.440
+ring
+
+00:04:39.440 --> 00:04:41.680
+all this is provided under a single file
+
+00:04:41.680 --> 00:04:43.600
+in the org web ring package as the code
+
+00:04:43.600 --> 00:04:45.280
+reuse is quite high
+
+00:04:45.280 --> 00:04:48.240
+aside from my own website we can view
+
+00:04:48.240 --> 00:04:49.840
+the org web ring being used in neat
+
+00:04:49.840 --> 00:04:52.400
+context with varying stylizations
+
+00:04:52.400 --> 00:04:54.320
+here's a nice example from mikhail
+
+00:04:54.320 --> 00:04:57.680
+kirilov at w96k.ru
+
+00:04:57.680 --> 00:05:00.000
+featuring a four symmetrical flexbox
+
+00:05:00.000 --> 00:05:00.960
+layout
+
+00:05:00.960 --> 00:05:02.720
+an appropriate russian language timing
+
+00:05:02.720 --> 00:05:04.720
+coding which can be also set in the org
+
+00:05:04.720 --> 00:05:07.360
+web ring manifest
+
+00:05:07.360 --> 00:05:09.600
+another is an example from camilo mesa
+
+00:05:09.600 --> 00:05:10.400
+gayete
+
+00:05:10.400 --> 00:05:13.280
+using ox hugo with org webring and
+
+00:05:13.280 --> 00:05:14.320
+likewise correct
+
+00:05:14.320 --> 00:05:15.840
+features the correct spanish time
+
+00:05:15.840 --> 00:05:17.680
+encoding
+
+00:05:17.680 --> 00:05:22.240
+last my other website workircd.org
+
+00:05:22.240 --> 00:05:24.400
+shows the web ring being used in
+
+00:05:24.400 --> 00:05:26.560
+combination with ocamo's tool link
+
+00:05:26.560 --> 00:05:27.440
+supalt
+
+00:05:27.440 --> 00:05:32.800
+to fetch git logs for that project
+
+00:05:32.800 --> 00:05:34.639
+you may obtain org web ring directly
+
+00:05:34.639 --> 00:05:36.320
+from source hut and add it to your load
+
+00:05:36.320 --> 00:05:37.039
+path
+
+00:05:37.039 --> 00:05:39.639
+additionally you will need to obtain
+
+00:05:39.639 --> 00:05:40.800
+xmlgen.el
+
+00:05:40.800 --> 00:05:43.280
+which is unfortunately not yet on alpha
+
+00:05:43.280 --> 00:05:44.960
+although I have been trying to get this
+
+00:05:44.960 --> 00:05:46.800
+rectified so I do not have to rewrite
+
+00:05:46.800 --> 00:05:49.840
+org web brings xml to html parser
+
+00:05:49.840 --> 00:05:51.759
+or if you're one of the cool kids using
+
+00:05:51.759 --> 00:05:54.000
+my favorite package manager gnu geeks
+
+00:05:54.000 --> 00:06:06.319
+you can obtain it like so
+
+00:06:06.319 --> 00:06:08.800
+all of the documentation for org web
+
+00:06:08.800 --> 00:06:09.840
+ring is available
+
+00:06:09.840 --> 00:06:12.000
+on the sourceup website or in the readme
+
+00:06:12.000 --> 00:06:13.840
+file after you check it out from the get
+
+00:06:13.840 --> 00:06:15.039
+tree
+
+00:06:15.039 --> 00:06:17.360
+there are so many ways to customize org
+
+00:06:17.360 --> 00:06:18.240
+web ring
+
+00:06:18.240 --> 00:06:20.880
+as there are just as many variables as
+
+00:06:20.880 --> 00:06:21.520
+there are
+
+00:06:21.520 --> 00:06:24.319
+parts and components to org web ring for
+
+00:06:24.319 --> 00:06:25.759
+you to change
+
+00:06:25.759 --> 00:06:27.759
+all of this is able to be done simply
+
+00:06:27.759 --> 00:06:31.600
+from that same manifest file
+
+00:06:31.600 --> 00:06:33.919
+now taking a moment to examine some of
+
+00:06:33.919 --> 00:06:35.759
+the org web ring code
+
+00:06:35.759 --> 00:06:37.840
+you can see it is all done in the same
+
+00:06:37.840 --> 00:06:40.160
+e-lisp that everybody else is used to
+
+00:06:40.160 --> 00:06:43.120
+now admittedly my e-lisp is not as
+
+00:06:43.120 --> 00:06:43.919
+strong as
+
+00:06:43.919 --> 00:06:47.120
+probably somebody else's so if you are
+
+00:06:47.120 --> 00:06:50.479
+an e-lisp ninja please feel free to
+
+00:06:50.479 --> 00:06:53.280
+send a contribution or a patch and tell
+
+00:06:53.280 --> 00:06:54.880
+me what I'm doing wrong
+
+00:06:54.880 --> 00:06:57.039
+it's I am not going to be offended by
+
+00:06:57.039 --> 00:06:58.639
+that at all I would love to see this
+
+00:06:58.639 --> 00:06:59.360
+code to
+
+00:06:59.360 --> 00:07:02.560
+improve otherwise I don't think it's
+
+00:07:02.560 --> 00:07:04.160
+half bad
+
+00:07:04.160 --> 00:07:06.800
+considering that my experience with
+
+00:07:06.800 --> 00:07:08.880
+lisps is usually in scheme
+
+00:07:08.880 --> 00:07:11.280
+me moving from scheme to e-lisp was not
+
+00:07:11.280 --> 00:07:13.680
+all that hard
+
+00:07:13.680 --> 00:07:17.120
+taking the syntax apart
+
+00:07:17.120 --> 00:07:20.880
+we're able to see that we can
+
+00:07:20.880 --> 00:07:24.240
+fetch urls which are then parsed and
+
+00:07:24.240 --> 00:07:27.680
+filtered sorted and then kind of reverse
+
+00:07:27.680 --> 00:07:28.479
+sorted
+
+00:07:28.479 --> 00:07:32.960
+rather to get you to the web ring result
+
+00:07:32.960 --> 00:07:34.639
+all of this is then passed through
+
+00:07:34.639 --> 00:07:37.840
+different parts of the xmlgen.el
+
+00:07:37.840 --> 00:07:40.639
+functions which gets you that html that
+
+00:07:40.639 --> 00:07:43.520
+you saw earlier
+
+00:07:43.520 --> 00:07:45.599
+org webbring is fully free software
+
+00:07:45.599 --> 00:07:47.440
+distributed under the gnu general public
+
+00:07:47.440 --> 00:07:49.280
+license versions three or later
+
+00:07:49.280 --> 00:07:52.000
+at your option I love accepting patches
+
+00:07:52.000 --> 00:07:53.120
+and collaborating
+
+00:07:53.120 --> 00:07:54.319
+I hope you will consider using
+
+00:07:54.319 --> 00:07:56.720
+orawebring you can contact me on
+
+00:07:56.720 --> 00:07:59.759
+freenode oftc or many other ioc irc
+
+00:07:59.759 --> 00:08:01.520
+networks at brettgillio
+
+00:08:01.520 --> 00:08:05.120
+or email me at brettgee gnu.org
+
+00:08:05.120 --> 00:08:07.759
+thanks so much to amin bendali and the
+
+00:08:07.759 --> 00:08:08.720
+Emacs cough
+
+00:08:08.720 --> 00:08:11.120
+organizers and to you the audience
+
+00:08:11.120 --> 00:08:13.840
+thanks