Skip to content

Instantly share code, notes, and snippets.

@graphitefriction
Created January 13, 2014 01:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save graphitefriction/8393047 to your computer and use it in GitHub Desktop.
Save graphitefriction/8393047 to your computer and use it in GitHub Desktop.
Conversation with #asciidoctor at Fri 10 Jan 2014 10:04:59 AM MST on graphite6@irc.freenode.net (irc)
(10:24:59 AM) chm007: Point to be discussed : Future of asciidoctor / hyla
(10:25:46 AM) lightguard_jp: chm007: Individually or together?
(10:25:55 AM) lightguard_jp: Like using hyla with asciidoctor?
(10:26:45 AM) chm007: lightguard_jp Wait the points that I'm currently writing ;-) This is just a title
(10:27:11 AM) graphite6: chm007: And could you give me a little intro to what hyla does (when you get a chance...no rush)
(10:31:29 AM) colinmcnamara left the room (quit: Read error: Connection reset by peer).
(10:31:40 AM) chm007: suggestions : 1) hyla becomes the command line tool of asciidoctor project, 2) asciidoctor => parser tool (from Asciidoctor to HTML/DocBook ...) / we could simplify it by removing the CLI, 3) Does it make sense to have some backends in asciidoctor and others in asciidcotor-backends (haml, slim, ...) - maintenance cost is high, 4) asciidoctor-backend should be more rationale and support 1-2 templates (haml/slim)
(10:35:09 AM) graphite6: chm007: #3 when you say maintenance cost is high, do you mean if the backends are in the core or when they are in asciidoctor-backends--> just so I'm not making any assumptions
(10:38:14 AM) chm007: Here is a kind of resume of hyla : https://gist.github.com/8358853
(10:38:52 AM) graphite6: chm007: thanks!
(10:38:57 AM) chm007: graphite6: any change of a template must be propagated between all the implementations (example : HTML5 = haml, slim, erg, ...)
(10:39:06 AM) chm007: erb
(10:39:53 AM) graphite6: I'm pretty sure we eventually want to get rid of erb
(10:39:54 AM) chm007: graphite6: PErsonaly (excepted if performance is higher within asciidoctr core) but we should maintain the backends with the project asciidoctor-backends
(10:40:59 AM) chm007: graphite6: Whoww you are connected in France. are you in vacations or there for a talk ?
(10:41:51 AM) lightguard_jp: ERB is certainly the fastest backend, which I know speed is important for Dan.
(10:41:58 AM) graphite6: I wish I was in France:) Nope I'm in Denver...why I'm routed through France, who knows
(10:42:01 AM) lightguard_jp: Also keeping core without dependencies.
(10:42:46 AM) lightguard_jp: That point about the dependencies is why asciidoctor will (most likely) always have CLI in core. It stands alone really well.
(10:42:48 AM) graphite6: lightguard_jp: I thought it was the slowest? He's always complaining about ERB...hmmm, I'll have to double check
(10:43:29 AM) lightguard_jp: it's messy, eRuby is much faster than erb from Ruby.
(10:43:34 AM) lightguard_jp: That's why it's an option.
(10:43:52 AM) lightguard_jp: But using erb allows asciidoctor to run without other dependencies.
(10:44:12 AM) lightguard_jp: There's only a soft dependency on Tilt + other template gem if you want to use asciidoctor-backends.
(10:44:31 AM) lightguard_jp: erb is ugly and hard to read, but it's pretty quick.
(10:44:53 AM) lightguard_jp: The only thing that would be faster would be string interpolation, but I doubt that will happen, but maybe.
(10:45:18 AM) lightguard_jp: Oh, I have another meeting in 15 minutes, amazing how fast the time goes.
(10:46:11 AM) graphite6: lightguard_jp: so maybe you could give chm007 some input on the CLI, that's not my area of expertise
(10:46:32 AM) lightguard_jp: I really like where Hyla is going and where it is. I think it makes a lot of sense to use it for project structure or as a suite of sorts, but there are quite a few who simply use asciidoctor as a stand in replacement for asciidoc
(10:47:29 AM) lightguard_jp: I think there's also some interesting scripting possibilities with asciidoctor if we keep the cli as is today.
(10:47:48 AM) lightguard_jp: Unless hyla has that same scriptibility
(10:47:55 AM) lightguard_jp: Then that one wouldn't matter as much.
(10:48:21 AM) lightguard_jp: Though I think adding another dep is a no go, unless we fold hyla into core.
(10:48:25 AM) lightguard_jp: Not sure where that would go.
(10:50:29 AM) graphite6: One possible option to explore is having a very bare asciidoctor core (for the no-dependencies, just replacement for AsciiDoc) and then a more an Asciidoctor core with features such as Hyla -- this type of setup gets discussed in Fedora a lot - people who need a really simple installation/headless and people who want the whole thing - but this would take some discussion, weighing the pros and cons, user analysis
(10:51:02 AM) chm007: That makes no sense to embed hyla code or merge its code with asciidoctor core as the goal of hyla gem is also to package styles (build from asciidoctor stylesheet factory, backends templates, templates, samples, awestruct, ...) and will have a release lifecycle dependentt on other projects
(10:52:18 AM) chm007: graphite6: For sure that we should keep a simple CLI and more elaborated. That could also be done by hyla and packaged with new asciidoctor core release
(10:53:40 AM) lightguard_jp: a full / lite idea is interesting, or a suite gem (that would include things like hyla, backends, pdf, etc)
(10:53:49 AM) lightguard_jp: I think both of those approaching have some merit.
(10:53:55 AM) lightguard_jp: Certainly worth discussing.
(10:54:02 AM) chm007: lightguard_jp: For your info, hyla (with command generate) calls asciidoctor.render. But commands create, new, watch, serve are complete new and much more correspond to what jekyll propose
(10:54:23 AM) lightguard_jp: chm007: makes sese.
(10:54:25 AM) lightguard_jp: sense*
(10:54:51 AM) lightguard_jp: really all the cli is doing is exposing an easy way for people to set some options and attributes that call render
(10:56:23 AM) chm007: Regarding to the maturity of asciidoctor and complex use cases it address in term of content development (book, publication , ...), it is time now to open its visibility for non engineers (= end users) which are not developers to let them to develop their book (= lean pub), blog, ...
(10:57:02 AM) chm007: (= leanpub - https://leanpub.com/)
(10:57:03 AM) lightguard_jp: chm007: Yeah, there's been some discussion from others on the list (the legal stuff comes to mind)
(10:59:31 AM) graphite6: And what this discussion, on the most basic level, leads back too is how so we want to structure the asciidoctor project as a whole (asciidoctor stylesheet factory, backends templates, templates, samples...etc) that makes it easy to hack on for developers and for non-developer users to get exactly what they want....infrastructure planning ARGG!
(11:02:01 AM) lightguard_jp: For that, I think a suite type project (if we stick with Ruby) makes the most sense.
(11:02:24 AM) chm007: lightguard_jp: What do you mean by a suite type project ?
(11:02:27 AM) lightguard_jp: Maybe something different could be done on the JS side, but for non developers having everything together in one package makes the most sense.
(11:03:52 AM) lightguard_jp: chm007: Something that contained hyla, asciidoctor, backends, stylesheets, maybe some form of editor (could be convinced one way or the other there)
(11:04:15 AM) lightguard_jp: A single download that sets everything up for you and is easy for non engineers to use.
(11:04:34 AM) chm007: lightguard_jp: At a certain moment/point, JS will be required if we would like to propose/provide something similar to Mou (markdown editor), http://markable.in/, dillinger.io, stackedit.io
(11:05:24 AM) lightguard_jp: I said the js stuff because I know a live editor is in the works using asciidoctor.js, but we still need to workout how stylesheets and backends work in that area.
(11:05:47 AM) lightguard_jp: People are familiar with an installer and double clicking something on their desktop which opens a problem they can use.
(11:05:54 AM) chm007: lightguard_jp: Good point. My idea is to use git inside hyla to deploy specific tag version of styles/backends and to avoid (maybe) to embed the resources in hyla gem. But that means that ruby, git, ... should be installed
(11:06:02 AM) lightguard_jp: The command line by and large is a scary dark place for most people :)
(11:06:16 AM) lightguard_jp: Yeah.
(11:06:40 AM) lightguard_jp: That may be a little difficult if we're going to be targeting the average comp user on Windows.
(11:08:05 AM) lightguard_jp: Maybe looking at what Scout has done may be useful
(11:08:20 AM) chm007: Our target should be for end user cloud platform. they don't like to install like for java, maven, ... tools
(11:08:31 AM) lightguard_jp: http://mhs.github.io/scout-app/
(11:09:00 AM) lightguard_jp: Perhaps, I think that depends on what we're trying to do with it.
(11:09:27 AM) graphite6: I'm thinking we need to pull in the other asciidoctor developers to transform this discussion and planning into actionable items. How about a meeting next week? I can pull together a "best times" survey, nag the heck out of everyone with announcements, and put together a meeting agenda and we can get this ball rolling (where ever it may roll). Yes, no, maybe so?
(11:09:47 AM) lightguard_jp: +21
(11:09:50 AM) lightguard_jp: +1*
(11:09:54 AM) lightguard_jp: Though 21 works too.
(11:10:23 AM) chm007: excellent idea as we have to define items list and take actions
(11:10:37 AM) lightguard_jp: Hopefully we can get Dan to show up for that one.
(11:11:13 AM) graphite6: Ha!
(11:11:54 AM) graphite6: Okay, I'll take care of all that.
(11:11:58 AM) lightguard_jp: I bet Alex, Alexy, Geoffry (right?) would be interested
(11:12:07 AM) chm007: I will be busy from Monday to Thursday between 10AM - 3:0PM (Brussels Time) but will have time end of the day or in the morning
(11:12:34 AM) lightguard_jp: Yeah, my guess is an end of day for Europe would be easiest.
(11:12:41 AM) lightguard_jp: Or a weekend maybe.
(11:12:43 AM) chm007: Geoffrey could be invited. He has excellent idea
(11:12:43 AM) graphite6: chm007: gotcha
(11:13:14 AM) lightguard_jp: chm007: We have another Geoffrey doing the js stuff, or is that someone else?
(11:13:21 AM) lightguard_jp: I'm sure Dan knows, I don't remember :)
(11:13:31 AM) chm007: Geoffrey Desmet (optaplanner developer) ?
(11:14:01 AM) lightguard_jp: He could be invited as well, but that wasn't who I was talking about
(11:14:37 AM) chm007: So don't invite him
(11:14:44 AM) lightguard_jp: Guillaume Grossetie
(11:14:50 AM) lightguard_jp: Mogztter on github
(11:14:52 AM) graphite6: Lol, I'll make sure we track down all the Geoffrey's and all the Alex's
(11:15:50 AM) lightguard_jp: Time for me to leave.
(11:16:12 AM) lightguard_jp: I like the discussion though :)
(11:16:21 AM) lightguard_jp: thanks chm007 and graphite6!
(11:16:22 AM) chm007: I propose that beginning of next week, we prepare the list (survey) based on different inputs, review that list and start the process proposed by graphite6
(11:16:31 AM) graphite6: See ya, Jason and thanks for the intro to Hyla and this excellent discussion chm007
(11:16:49 AM) graphite6: chm007: +1
(11:17:34 AM) chm007: Take the time this week-end to make some tests based on hyla scenario or the gist ticket (tweet today) - revealjs
(11:20:48 AM) chm007: Here is the gist containing our discussion --> https://gist.github.com/cmoulliard/8359627
(11:21:56 AM) graphite6: chm007: You read my mind, and we can start adding other points/details to it
(11:23:14 AM) graphite6: I'll get the meeting time voting survey out by the end of the day
(11:25:23 AM) chm007: graphite6: As mentioned by lightguard_jp it is also important to discuss process to generate css, link it to templates, extend css to let users to use their own css, js and backends managements
(11:28:25 AM) chm007: graphite6: When you will have the time can you check access rights to git projects/repos and who can apply pull request. Another point that it is important to discuss concern release process as decisions could impact how we will in the future release the different projects (like now separately, globally = suite mentioned by lightguard_jp )
(11:29:55 AM) graphite6: chm007: understood, I'll add that information to the list
(11:30:50 AM) chm007: graphite6: I think that you already make some talks about asciidoctor. How was the feedback ? Did you get lot of participants ?
(11:37:47 AM) graphite6: Feedback is generally good among developers/technologists, though, of course, they typically have questions about integrating, migrating, and because the project is still young (and therefore syntax, operations, and the API are still changing often - but that's just the way a new project is :) ). As for non-tech people (as you mentioned above), especially if they are on Windows, the project can be overwhelming (has too many steps). Participants: this depends a lot on the conference -> 10-150. You should also talk to Alex Soto, he's given a number of Asciidoctor talks as well.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment