Live data from Hacker News

Concord, our GPL outliner

scripting.com

21–30 of 63 posts

Re: Concord, our GPL outliner

#21
post #7
post #5

Earlier quoted context omitted.

And isn't this just a special case of an object graph where all the objects are strings, the relationships sub-objects can't have two parents and the traversal is over when you've reached a leaf? What about hierarchies of objects that aren't strings? (I'd like to organize them too). What about hierarchies that aren't a strict tree? (I can't really do my genealogy on this). P.S. I like what Dave does with outliners bu…

I've fiddled with this extensively. The problem isn't data representation; sure, "outlines" are "just" graphs. The question is, what on Earth does your UI look like? Editing "graphs" is hardly more structured than creating a "data editor"... ok, those are some nice English words you've got there, but how does it actually work ? At least by limiting it to text and stuff that looks a lot like text, you can produce a re…

That's a hard problem - I haven't done any "fiddle" but I've spent a lot of time doing Gedankenexperiment and haven't come up with anything I believe is remotely applicable. The genealogy example I gave is simpler but I'm not sure I've seen an editor for that use-case that's optimal either.

Maybe the problem just can't be simplified further? And as an aside, I wasn't trying to disparage Dave Winer's implementation of tree editing at all.

Re: Concord, our GPL outliner

#22
post #5
post #3

I didn't know what an outliner was: From the Git page: An outliner is a text editor that organizes information in a hierarchy, allowing users to control the level of detail and to reorganize according to structure. Your notes can have full detail, yet be organized so a casual reader can get a quick overview. Outlining is a great way for teams to organize work.

And isn't this just a special case of an object graph where all the objects are strings, the relationships sub-objects can't have two parents and the traversal is over when you've reached a leaf? What about hierarchies of objects that aren't strings? (I'd like to organize them too). What about hierarchies that aren't a strict tree? (I can't really do my genealogy on this). P.S. I like what Dave does with outliners bu…

When folks stop talking about trees and start talking about graphs, they seem to forget that you usually want to have an order on the edges.

I think an outliner is a great way to explore a fully connected directed graph with sequenced edges; just don't hit "Expand everything" when the graph contains a cycle. Leo http://leoeditor.com/ expends a lot of effort to avoid cycles, which shows up in slow execution when adding edges ("cloning", in its terminology) to a node reaching a significant subgraph.

If the graph can contain cycles, a recursive expander needs to contain cycle recognition and terminate after a finite number of trips through the cycle (probably one).

Re: Concord, our GPL outliner

#24
post #11

Earlier quoted context omitted.

I've never seen a good answer to that question. I've emailed the FSF and others and they all tell me to consult a lawyer for how the license works (if they respond at all).

IANAL, but the spirit seems to be "hey, here's this software, use it how you like, but if you distribute it (including building on it or bundling it in a product) please be kind enough to extend the same freedoms to those you give it to." Using Concord on your site? Offer a link to the source. Modify it to work better with a framework? Offer that modification too. Build an entire product off of it? Well, be prepared…

That's what the LGPL is for, if you prefer that one (I don't; I prefer the MPL to the LGPL, as it's share-alike restrictions trigger on internal changes).

The GPL is less suitable for this because means that all of your code for the page(s) using Concord have to be GPL-compatible. Presumably, this includes Urchin.

Re: Concord, our GPL outliner

#25

GPL? How does this interact (legally) with other running JavaScript? Do I have to make the rest of my site's JavaScript "GPL" as a result? I'm curious, does the dynamic nature of JavaScript make browser-based GPL Javascript essentially LGPL? Any lawyers or FSF advocates out there know?

I have no problems with the GPL or releasing software under it. But if I'm also using MIT code, should I simply release the result as GPL? And could I upgrade that up to an AGPL (which the outliner could have used, being serviceable online.)

Re: Concord, our GPL outliner

#26
post #22
post #5

Earlier quoted context omitted.

And isn't this just a special case of an object graph where all the objects are strings, the relationships sub-objects can't have two parents and the traversal is over when you've reached a leaf? What about hierarchies of objects that aren't strings? (I'd like to organize them too). What about hierarchies that aren't a strict tree? (I can't really do my genealogy on this). P.S. I like what Dave does with outliners bu…

When folks stop talking about trees and start talking about graphs, they seem to forget that you usually want to have an order on the edges. I think an outliner is a great way to explore a fully connected directed graph with sequenced edges; just don't hit "Expand everything" when the graph contains a cycle. Leo http://leoeditor.com/ expends a lot of effort to avoid cycles, which shows up in slow execution when addin…

What do you mean by an "order on the edges"? I'm only superficially familiar with graph theory.

Re: Concord, our GPL outliner

#27
post #7
post #5

Earlier quoted context omitted.

And isn't this just a special case of an object graph where all the objects are strings, the relationships sub-objects can't have two parents and the traversal is over when you've reached a leaf? What about hierarchies of objects that aren't strings? (I'd like to organize them too). What about hierarchies that aren't a strict tree? (I can't really do my genealogy on this). P.S. I like what Dave does with outliners bu…

I've fiddled with this extensively. The problem isn't data representation; sure, "outlines" are "just" graphs. The question is, what on Earth does your UI look like? Editing "graphs" is hardly more structured than creating a "data editor"... ok, those are some nice English words you've got there, but how does it actually work ? At least by limiting it to text and stuff that looks a lot like text, you can produce a re…

I wrote one. It might not be exactly what you had in mind. It works okay for me for brainstorming: github.com/andrewf/graphpaper

Re: Concord, our GPL outliner

#28
post #17
post #11

Earlier quoted context omitted.

I've never seen a good answer to that question. I've emailed the FSF and others and they all tell me to consult a lawyer for how the license works (if they respond at all).

It is probably best to just contact the author and ask their opinion about that. For example, proprietary linux kernel drivers seem to be in a gray zone (to put it mildly), but in practice they are tolerated (whether or not the FSF approves of that).

Tolerated? If only barely: http://www.kroah.com/log/linux/stable_api_nonsense.html also:

Basically, I want people to know that when they use binary-only modules, it's THEIR problem. I want people to know that in their bones, and I want it shouted out from the rooftops. I want people to wake up in a cold sweat every once in a while if they use binary-only modules. -- Linus Torvalds

As a Linux user (and previous developer) I can only commend these positions. I don't care about hardware companies' "intellectual property", all I want is to pay for hardware and have good drivers that don't wreak havoc with my system.

Re: Concord, our GPL outliner

#29
post #17

Earlier quoted context omitted.

It is probably best to just contact the author and ask their opinion about that. For example, proprietary linux kernel drivers seem to be in a gray zone (to put it mildly), but in practice they are tolerated (whether or not the FSF approves of that).

Tolerated? If only barely: http://www.kroah.com/log/linux/stable_api_nonsense.html also: Basically, I want people to know that when they use binary-only modules, it's THEIR problem. I want people to know that in their bones, and I want it shouted out from the rooftops. I want people to wake up in a cold sweat every once in a while if they use binary-only modules. -- Linus Torvalds As a Linux user (and previous develo…

Their existence is absolutely tolerated. They are not liked by any means, nor are they accommodated, but they are allowed to exist (ie, tolerated).

Re: Concord, our GPL outliner

#30
post #11

Earlier quoted context omitted.

I've never seen a good answer to that question. I've emailed the FSF and others and they all tell me to consult a lawyer for how the license works (if they respond at all).

IANAL, but the spirit seems to be "hey, here's this software, use it how you like, but if you distribute it (including building on it or bundling it in a product) please be kind enough to extend the same freedoms to those you give it to." Using Concord on your site? Offer a link to the source. Modify it to work better with a framework? Offer that modification too. Build an entire product off of it? Well, be prepared…

Not all OSS has a price. All of the code I've releases is under a free license, not a restrictive one like the GPL. This does mean that companies can use my code in their proprietary projects, but that seems to have gotten me more contributions back instead of less.

I also think that a license which is too complicated for anyone to actually understand is simply too flawed to serve it's purpose, which was the original point of my post. This is completely separate from people not giving back to open source.

Post reply on HN