Friday, 2014-01-24

drobillaBlah, well, that was way more work than expected00:16
drobillaI guess we'll see what the fallout is.  Since we have so little cross-project communication based on atoms other than MIDI at present, there shouldn't be much if any00:16
* drobilla checks in The Great LV2 Object Simplification00:55
drobillaApologies in advance for all the deprecation noise :)00:56
drobillafalktx_: Good grief, -Wconversion is noisy00:59
falktx_hehe, welcome01:00
falktx_you feel the pain now01:00
drobillaI dunno, bit much.  Ultimately the "fix" is just stick a massive amount of explicit casts everywhere there's a warning01:01
falktx_atom* and event-helpers are the noisiest ones01:02
drobillaev->time.frames being 64-bit is a bit odd and causes them, too01:15
* drobilla shrugs01:15
drobilla64-bits were available, I figured Sequence wasn't necessarily limited to a single process cycle01:16
* drobilla wonders exactly how this will bite him in the ass01:28
* drobilla does not wonder if01:28
falktx_blame me afterwards :)01:29
drobillaOh, I will :)01:30
drobillaapparently uint16_t + uint16_t => int01:32
falktx_yes01:32
falktx_same with chars01:32
falktx_char('a') + char('b') => int01:32
falktx_it seems gcc temporarily converts vars to int when doing calcs01:33
drobillaNot so annoying with atom's uint32_t01:33
drobillaPretty annoying with event's uint16_t01:33
drobillaI sometimes go the other way from the whole "SDK with everything in it" thing and wonder if utility headers should really be in the spec distribution at all01:37
drobillaAnything else would make distribution more tedious, though01:37
drobillafalktx_: http://lv2plug.in/changeset/90301:49
drobillaI haven't touched event-helpers in ages, nor have I tested it.  You may want to do so.01:50
falktx_btw, I think this:01:50
falktx_return (uint32_t)sizeof(LV2_Atom) + atom->size;01:50
falktx_can become this:01:50
falktx_return atom->size + sizeof(LV2_Atom);01:50
falktx_the first is uin32_t, so size will adapt. not 100% sure though01:51
falktx_*sizeof will adapt01:51
drobillanope01:52
*** kaspar_e has quit IRC01:54
* drobilla runs it on drobillad for kicks01:54
drobillahah, yeah, not a chance01:55
drobillaI am really dismayed that serd isn't -Wcast-qual (and I suppose -Wconversion) clean, though01:55
* drobilla returns to something that actually needs doing01:55
*** HarryHaaren has quit IRC01:55
*** unclechu has quit IRC01:56
drobillaAtom type hierarchy without Blank and Resource: http://drobilla.net/files/lv2_atom_class_hierarchy.pdf01:58
drobillaSpeaking of which, if anyone happens to have the time to proof-read a probably ~5 page paper on atoms this weekend, I'd appreciate it02:02
*** bazz has quit IRC02:04
*** bazz has joined #lv202:04
*** falktx_ has quit IRC02:49
*** falktx has joined #lv202:49
*** NickSB2 has quit IRC02:54
*** speps has quit IRC04:43
*** falktx has quit IRC05:36
*** rncbc is now known as rncbc|AFK07:00
*** edogawa has joined #lv207:08
*** abique has joined #lv207:55
*** kaspar_e has joined #lv209:40
*** NickSB2 has joined #lv209:43
*** kaspar_e has quit IRC11:07
*** kaspar_e has joined #lv211:43
*** unclechu has joined #lv211:49
*** kaspar_e has quit IRC12:30
*** kaspar_e has joined #lv212:30
*** sigma6 has joined #lv213:15
*** unclechu has quit IRC13:18
*** bgola has quit IRC13:43
*** edogawa has quit IRC13:43
*** edogawa has joined #lv213:43
*** awilliams has quit IRC13:43
*** bgola has joined #lv213:45
*** awilliams has joined #lv213:45
*** wrl has quit IRC14:21
*** falktx has joined #lv215:49
*** rncbc|AFK has quit IRC15:49
*** rncbc|AFK has joined #lv215:50
*** kaspar_e has quit IRC15:54
*** abique has quit IRC16:12
*** HarryHaaren has joined #lv216:13
*** kaspar_e has joined #lv216:47
*** rncbc|AFK is now known as rncbc17:37
drobillaI think it might be time to add an lv2:MIDIPlugin class17:45
drobillaPerhaps a slightly more generic event or music or something...17:46
drobilla'Filter' is now full of rgareus's midifilters stuff, which really doesn't fit in with the lowpass and friends intention of that one17:47
*** sigma6 has quit IRC17:48
*** falktx has quit IRC18:34
*** rncbc is now known as rncbc|AFK19:00
*** HarryHaaren has quit IRC19:47
*** HarryHaaren has joined #lv219:48
*** mlpug has joined #lv219:51
drobillargareus: So my general plan for this paper was 1) what's an atom / data model / binary format 2) serialisation 3) communication via ports 4) forge 5) property-based state 6) a general protocol for manipulating that state20:03
drobillaI am wondering if 5 and 6 is really the right thing to work towards, though.  Maybe there's a better "point" to build up to?20:04
drobillas/rgareus/whoever/20:04
rgareus5,6 could be a separate paper20:04
drobillaCould be, but leaves it a little bare, and also raises the question "so... what's a use of all these fancy datatypes anyway?"20:05
drobillaA simple example would be setting the sample filename property as in eg:sampler, a thing you can not do with MIDI20:05
*** falktx has joined #lv220:05
drobillaIt surely needs *some* compelling example20:08
drobillaI'm just not sure setting property-based state is the right one.  That may be a 'Future Work' thing20:08
Anchakorthe paper definitely should explain the motivation and the vision - why it is the way it is20:09
drobillaWell, ultimately it's "you can represent whatever and serialize it, yay" but more tangible audio-related examples are nice20:11
drobillaThe patch extension might be too much, I don't know, but that e.g. Ingen does *everything* it does via a couple of such message types is a nice example of what this does that MIDI and OSC can't really20:12
drobillaMaybe really affirm the point that these are just types and you don't have to use them, then present as an example loading a sample as eg:sampler does20:14
rgareusdrobilla: eg:sampler is probably as simple as it gets.20:14
drobillaIt's hard to target this at such a diverse audience20:14
rgareusdrobilla: as for 'real world' examples, I can supply many :)20:14
drobillaHalf tempted to try to realize that C++ forge API so I can show prettier code :)20:15
rgareusdrobilla: could be waveform visualization ( not only sampler but IR) --fixed data transfer20:15
Anchakorfor me the concept of plugins changing non-stream data and events, such as mathematically defined curves is appealing20:15
rgareusdrobilla: or realtime visualization..  which requires 'objects with state'. eg histogram view in Ebur-128 meters.lv220:16
drobillaThis would be that message: http://pastebin.com/VDBnPQGV20:16
drobillaMore matheyness would probably be good for this crowd I suppose20:17
drobilla(this=LAC)20:17
drobillapatch:Put is a little less obvious than patch:Set though20:18
drobillaActually, envelope points, I'm not sure.  This vocab is based around subjects, but you probably don't want to deal with that here20:20
drobillargareus: Where can I find the messages you use in that one?20:21
rgareusthey're just arrays for the most part20:22
drobillaprobably not so good as examples20:22
drobillaI figured sticking to only talking about one container (object) would keep things more easily digestable20:23
rgareusdrobilla: one example is https://github.com/x42/meters.lv2/blob/master/src/ebulv2.cc#L36920:23
drobillaHm, that's not bad20:24
drobillaBit big.20:25
drobillaP.S. I added forge_key which will save you 13 characters on those lines20:26
drobillaWell, I guess I can just send objects like this, and not do the whole property-based patch extension thing at all20:32
drobillaIt is nice that the filename property from sampler directly corresponds to what's saved in state, though20:32
rgareusdrobilla: forge_key is new in lv2 1.8.0?20:35
drobillargareus: no, just svn, so actually switching wouldn't be wise.  just saying.20:38
drobillaI deprecated atom:Blank and atom:Resource an added forge_key thus far.  Not so conservative changes in svn right now.20:39
drobillaAnchakor: ... thinking about those envelope points has me considering if I really want to ditch blank node IDs20:39
drobillaI wonder if/when we'll run in to 'too many mapped URIs' bloat20:40
drobillaPerhaps I should relax patch:subject so it can be whatever, say, a number20:41
Anchakorfor the things you want to use blank nodes, do you really need a RDF identifier at all?20:43
drobillas/RDF // then yes20:43
drobillakind of inherently20:44
drobillaWell, I guess not, there's identity-via-value, like lv2:symbol for ports20:44
drobillaBasically I'm just confronting that the patch vocabulary doesn't seem like it would be able to do something like arbitrary envelope points well20:45
drobillaWhich isn't really a big deal, but in general I think it's good to try and minimize message type bloat20:45
AnchakorI mean in a waveform you don't need an unique identifier for each point, you just need a way to get its value20:45
Anchakoraka the unique identifier is a combination of another unique identifer (that of the waveform) and an offset number20:46
Anchakor(maybe bad example)20:46
drobillaI guess to be a truly general 'RDF manipulation' vocab it needs to be able to do such things20:46
drobillapatch:identity [ eg:someidprop "me!" ] or something, if patch:subject won't do20:47
rgareusdrobilla: it's a nice additiion;  but as you say: I'll postpone the update until... it moved from your SVN to debian/stable :)20:47
drobilla(this is very well into the territory of shit I would never mention in this paper, but it's interesting)20:47
drobillaAnchakor: You know what would be nice?  If the damned RDF community had a clue about metacircularity and I could just use SPARQL for this :)20:48
drobillaBut it'll be a cold day in hell before I involve SQL in any of this, so here we are, inventing that wheel.  Anyway.20:49
AnchakorI probably wouldn't go further with the RDFization then "save this data as object of triple with this property'20:53
drobillaProjects that have more cohesion so you can just change the world if you figure out better thigns are so nice.  APIs are the bane of my existence.20:53
drobillaAnchakor: I only barely mention it, mainly due to the serialization to Turtle part20:53
Anchakoras in not involve some envelope ontology20:53
drobillaAnchakor: With atom stuff I talk about dictionaries, and generally try to pitch a JSONey flavour20:53
Anchakorjust focus on the point that atoms are for transferring arbitrary structured data20:54
drobillaMaybe the eg:sample thing and an arbitrary object, like a point20:54
drobillahttp://pastebin.com/e7jHBvpF20:54
drobillaBetter more audioey example instead of point welcome20:55
drobillaEspecially if it would appeal to LAC review committee people :)20:55
Anchakorwhat about the sample waveform?20:55
drobillaProblem with that is the code to forge such a thing is pretty hairy20:55
drobillaand the serialization isn't so obvious to the uninitiated.  I did show a nested object (property with blank node value), but that's probably as far as that should go20:56
drobillaIt's unfortunate that vectors and tuples have to be distinct for optimization reasons.  The RT audio domain makes this model messier than it could be20:57
AnchakorADSR envelope is another good example20:57
Anchakorit's just 4 values20:57
drobillaIt would be good to avoid "why wouldn't you just use control ports for that?"20:57
drobillai.e. things you might want to have an arbitrary number of20:58
Anchakorthat's true20:58
Anchakorso scrape that :020:58
Anchakor:)20:58
Anchakorlike I said I like the math definition of a curve/function20:58
drobillamore concrete example?20:59
drobillaramped controls are another one, but I think I might leave that for "future work" since expressing control is something lots of people have lots of strong opinions about21:00
Anchakorlike a plugin for defining such a curve and then other plugins modifying copies of the curve to apply it as envelope/automation curve21:00
drobillaHeh, on that, I just noticed that http://lv2plug.in/gmpi.html is now Google hit #2 for "GMPI recommendations" :)21:00
Anchakorthen you only modify the original curve and the derived curves change accordingly21:01
drobillaYou just lept like 5 light years away21:01
Anchakoryeah, but that is the VISION ;)21:01
drobillaShared cross-plugin mutable data and oh my21:01
drobillaI'm not even sure that is the vision (I think we discussed this earlier)21:01
drobillaMore in the "HTF should Ingen work?" domain, anyway21:01
drobillaMulti-touch gestures is one something like points, if going the UI direction is good21:03
Anchakorwell I hope we won't need to make lv3 to make it possible21:04
drobillaWell, technically it's almost impossible we "need" LV3 for anything, since you can graft on whatever21:04
drobillaThere's some kind of line there where you might as well, though21:04
drobillaWith that, it's more of a question of whether you even want to do it21:04
drobillaShared mutable data is, in general, evil21:05
drobillaAn infinite world of problems21:05
drobillaBest avoided if at all possible21:05
Anchakorthe way I understood it, atom ports are supposed to send arbitrary structured data as messages (aka events) between plugins and hosts, so that is a way how to implement it21:05
Anchakorkinda like in PD sending messages21:05
drobillaSure, if they're small enough to send the whole thing as a message, then no problem.21:06
drobillaI can't think of a very simple compelling example along those lines, though.21:06
Anchakoryeah no need for shared mutable data for small stuff like that21:06
*** NickSB2 has quit IRC21:06
*** ssj72 has quit IRC21:07
Anchakorbtw small for you is < 1kB?21:07
* drobilla shrugs21:07
drobillaSure21:07
drobillaIngen sends stuff in the hundreds-of-bytes range, probably over a KB at times21:08
Anchakorwell maybe later for bigger data an established data transfer protocol could be used21:09
drobillaUltimately we need facilities to request larger buffers, possibly more sophisticated ones at some point, but http://lv2plug.in/ns/ext/resize-port#minimumSize suffices for now21:09
drobillaI find it unlikely that adding yet another mechanism will ever be a net good idea21:09
*** HarryHaaren has quit IRC21:09
drobillaFilter coefficients?21:11
drobillaI dunno, maybe just an x/y/size point as pasted is fine and I shouldn't worry about the example too much21:11
Anchakor[21:57] [ drobilla] It would be good to avoid "why wouldn't you just use control ports for that?"21:11
drobillaTrue21:11
AnchakorI still think the curve is a good example, maybe not the big vision of plugin communication, but just for saving it as state, for example as shape of the release curve21:15
drobilla[]21:16
*** ssj72 has joined #lv221:16
drobilla    a        eg:Segment ;21:16
drobilla    eg:endX  1.6 ;21:17
drobilla    eg:endY  0.5 ;21:17
drobilla    eg:shape eg:linear .21:17
drobillaI wonder if the (new?) top level inline blank node syntax is less confusing for the initiated21:18
*** rncbc|AFK has quit IRC21:19
drobillaWhich would be21:19
drobilla[21:19
drobilla    a        eg:Segment ;21:19
drobilla    eg:endX  1.6 ;21:19
drobilla    eg:endY  0.5 ;21:19
drobilla    eg:shape eg:linear ;21:19
drobilla] .21:19
Anchakorhow would you explain to the people why this should be RDF an not a binary blob?21:19
drobillaIt is a binary blob.21:19
drobillaIt happens to be serializable to Turtle, and it happens to be more convenient to talk about it that way, being humans and all21:20
drobillaAs opposed to a meaningless binary blob like an arbitrary C struct, mainly that it's portably serialisable and more flexibly extensible21:20
Anchakoryeah ok, but I would pick an example something which is not serializable do RDF (aside from being a literal)21:21
Anchakors/do/to/21:21
drobillaI am not sure what you mean21:21
drobillaIn a paper essentially about this data model, I don't want to use an example that doesn't even use it21:22
Anchakorfor example the path to a sample is a nice simpel string, everyone understands that21:22
drobillaThat it's serialisable is a very large part of the point21:22
drobillaYes, but you can't just send a path.  Path to what?  What's this path mean?21:22
Anchakorpath to a sample, the property in the triple is the important thing21:23
Anchakornot if the value is a literal or another RDF node21:23
drobillaI don't understand.  You want not RDFey then you say "property in the triple"21:23
Anchakors/value/object/ to keep the RDF terminology21:23
drobillaThere are two examples here.  One sets a property, being a message designed to do just that.21:24
drobillaThis point one does not.  It's just a point.21:24
AnchakorI think it is more accessible to explain this as a sort of key-value store, where the keys are unique identifiers21:24
drobillaIn atomese these are "objects", which are essentially dictionaries.21:24
drobilla"dictionary" being by far the most accessible way to pitch it, IMO.21:25
Anchakorthen go on explaining that you can by atom transform binary blobs or more structured data21:25
drobillaBut basically the intent of this point example is it's just some arbitrary dictionary thing you can send that a plugin author can invent21:25
drobillaExplicitly because this conversation has more or less convinced me to not go off into patch vocab land21:25
drobillaYes, there will be a few sentences in there about how you can send whatever, like MIDI, and there's atom:Chunk though using it is not a good idea, blah blah21:26
drobillaThat's trivial, though.  The standard type model is more or less the point of the paper.21:26
drobillaPerhaps it shouldn't be, but I certainly can't fill a paper with "stuff starts with a 32-bit size and type".  If this isn't the meat, then something else would have to be21:27
*** Gethiox4 has joined #lv221:27
drobillaUltimately I *want* to convince people building meaningful standard types is good, and meaningless binary crap is bad21:28
drobillaExamples specifically highlighting that would be best, but it's tough without getting into inter-plugin comm21:28
*** Gethiox3 has quit IRC21:28
Anchakorwell I think the best is if you drafted the thing and I can then offer advice how to make it better, rather then theorizing now21:30
drobillaPlus this is a pseudo-academic paper, if there's anywhere to really describe this, it's here21:30
drobillaFair enough21:30
drobillaHopefully I can finish the draft today.. taking way more time than expected :/21:30
AnchakorI think I'm in a good position to do so, since I understand the semweb fairy land, but on the other hand don't see a reason a common audio dev would understand why building meaningful standard types is good, so the paper would have to convince me too :)21:31
drobillaThat is mainly why my original 'culmination' was how it meshes with state21:32
drobillaThen in future work mention plans to make an automagic framework to do all this for you, and just provide some 'property changed' callbacks or whatever21:32
drobillaI am starting to be convinced that I *shouldn't* mention arbitrary objects at all21:33
Anchakorfor the functionality of state it is irrelevant if you have ':xyz :envelope "j4u3i2hd3h2..." .' or ':xyz :envelope [ ... ] .'21:33
drobillaMaybe the whole thing is just a big wank and you should indeed just send around C structs21:34
drobillaMaybe even over the network you only care about x86 anyway21:34
drobillaMaybe you don't care about engine/UI separation whatsoever21:34
AnchakorI think it's not a wank if you consider interoperability of plugins and hosts made by different people21:35
drobillaWell, yes, but obviously (I'd think) it's more compelling to show sensible things and not big strings of binary mess21:35
Anchakorso that is probably the big point in the argument21:35
drobillaThat (+ network capability) are a big part of the point21:36
drobillaThere's also a 'this is based on very simple obvious necessary things' argument I'm trying to work in there somehow21:36
drobillaLike, WTF good is a plugin framework if you can't send an int around?  Absurd.21:36
Anchakorbut then if you are talking only about sending atoms between host and a plugin, then it is less obvious to see why such interoperability is needed21:36
drobillaSo, we have an int container, and some other primitives.  Obvious.21:36
drobillaBuild a wee bit on top of that and you have a fancy data model, but ultimately, you need something more or less like this anyway to do anything serious21:37
Anchakorwith communication between plugins, it is suddenly obvious why there should be a standard atom format for an envelope21:37
drobillaWell, hosts and plugins are written by different people.  UI:Plugin is the only real case where that's not usually true.21:38
drobillaYep.  Even just plain old numeric controls.21:38
drobillaI am not sure how popular using a dict for that will be, though.21:38
Anchakorhow about values with different units as an example?21:38
drobillaUnits somehow would be good.  Been wondering if I want to get into controls since we don't have a standard vocab for that yet21:40
drobillaPort groups would also be good, but gets blank nodey21:40
Anchakorhmm how about an example of using a saved state from one plugin (a filter) and then using it with different plugin (also a filter of same kind)?21:40
drobillaCan of worms, that.21:41
Anchakorthats as far as you can get with examples of host-plugin interoperability21:41
drobillaOne nice thing that justifies state being similar is expressing default state in the plugin .ttl file21:41
drobillaAlso justifies why meaningful21:42
drobilla(in other cases hosts could serialize to whatever)21:42
Anchakorexactly21:42
drobillaBack to the original focus on mesh with state, I suppose21:44
AnchakorI guess all the exciting things once can look forward to to overcome the distaste to learn and adopt, are kind of cans of worms from your point of view21:45
drobillaNot really, but there is no direct sharing of plugin state like that, nor should there be21:52
drobillaYou communicate with messages, full stop.21:52
drobillaThese messages being property-based and correlating to plugin state is convenient in several ways21:52
drobillaBut I don't want to imply that the state one plugin saves on disk is somehow directly accessed by another.  That *is* a can of worms21:53
drobillaYou can sort of share default state descriptions in your .ttl I guess, but that's basically a mildly convenient abbreviation21:53
*** mlpug has quit IRC21:55
drobillaThe main benefit mesh with state-as-in-saved-stuff is that a plugin author doesn't have to design a whole new model to save and restore.  You can store all your properties that you use at runtime, andd to save and restore just dump/load those21:55
drobillaIdeally, in the future, all done automatically by reusable StateDictionary thingie21:55
drobilla(Which I would try to just write if I had the time but I don't)21:55
Anchakorright, but that doesn't address the interoperability aspect - you could just as well be saving binary blobs21:58
drobillaAs values, yes.21:59
drobillaThe point is doing it with properties gets you that win.21:59
drobillawhich means your messages are meaningful dictionary things, even if a value in them happens to be a blob21:59
drobillaWhich is fine, really, I don't even care so much about that.  If the value truly is useless to anyone else, fair enough.  If it is there's inherent incentive not to.22:00
drobillaThe main thing to combat is using a big meaningless struct as *the whole message*22:00
drobillaWhich is the default knee-jerk of a C curmudgeon22:00
drobillaThat said........ surely I'm not the only person who likes that you can just look at the data and it's pretty and makes sense.  jalv -d is so useful.22:01
drobillaSometimes I do feel like the only one22:01
drobillaAmong the seething masses of WHATEVER BINARY SHIT EVERYWHERE22:01
drobilla(Maybe mentioning jalv -d is a good idea, come to think of it)22:02
Anchakoryeah, but appeal to abstract aesthetics won't get you far22:02
drobillaThat's for sure.22:02
drobillaThough when you're debugging it's anything but abstract.22:02
Anchakoryou still have to explain to people why it is good to use URIs and why go beyond the big struct as a payload of the property-labeled message22:03
drobillaWhen ingen does weird shit, this is exactly what I do to figure out what's going on.  Run it in jalv -d and look at what's flying over the wire.22:03
drobillaMaybe.  I think I kind of want to leave it at "serializes nicely to Turtle"22:04
drobillaGetting in to URI evangelism in this one would probably just be a huge turn-off.  Maybe one sentence.22:04
drobilla"Like most things in LV2, types and properties are defined by URI so anyone can define their own without clashes." or whatever22:05
drobillaMaybe auto-docs?22:05
*** rncbc has joined #lv222:05
AnchakorI think like half an hour ago you were saying that an academic paper is the best place to write up about the overall vision and motivations22:06
drobillaWell, yes, but specifically Re: the atom data model in this case22:06
drobillaBasically it's in my favour to sound as not-semweb as possible without outright lying.22:06
drobillaIn this context, we use Turtle, like it or not, so given that, this is the natural model22:06
drobillaI could go in to how these properties are exactly the same ones that are used in plugin descriptions, and can be documented in exactly the same way, and hosts can make sense of this, and so on.22:07
drobillaIt is nice stuff, don't get me wrong.22:07
drobillaI am just trying to avoid boring/repelling people as much as possible.22:07
AnchakorI think it's best to be honest and describe the advantages which you see and your motivation, even if it might be harder to understand.22:08
drobillaYou aren't as paranoid and defensive as myself :)22:08
drobillaBasically all I ever get is hate and negative feedback.22:09
drobillaI'm not complaining, it's just how it goes, but obviously it affects how I try to present things.22:09
Anchakorwell it's common to hate and criticize what you don't understand22:10
drobillaStandard and APIs in general, it's just how it goes.  If it's based on a philosophy you don't understand, even moreso, yeah.22:10
drobillaWhatever, I'm doing my best to try and present this stuff in a more palatable way, but I'm in too deep, it's hard, and few think that I actually do need to hear why they find it confusing, because I simply don't.22:11
drobillaAnyway, meaningful properties.22:11
drobillaWell, to me, I actually write schemas in .ttl, which generates all those docs.22:11
drobillaFrom these you can figure out, say, the range of a property22:12
drobillaGet a nice translatable label for it22:12
Anchakoreven if a genuinely interested person new to lv2 was trying to understand its overall vision and why it is how it is, he doesn't have much opportunity22:12
drobillaYou don't get that with a big struct of whatever, maybe I'll try to work it in22:12
drobillaI know, but it's hard to sit down and write a vision from first principles.22:13
drobillaI should have been writing LAC papers for the past 5 years, but oh well.22:13
drobilla(There is also always the argument that tangible user benefits trump that by a billion fold and time is a thing I do not have much of)22:13
Anchakorwell start from list of advantages and what it makes possible what wouldn't be possible otherwise. this rewritten to a more readable form would do as a vision :)22:14
drobillaEven I'm a little dubious of the merits of separate static data files at times these days.22:16
Anchakoryeah, this might serve as a good excercise to reconsider why you did decide do make something the way it is :)22:17
AnchakorI think that is what happened with semweb - people in middle of work forgot why they were actually doing it and what it was meant to enable to be created and instead went on to indulge in abstract aesthetics wankery :)22:18
Anchakorwell anyway I'll get back to my work now22:19
drobillaI don't know about that.  If the semweb community was concerned with aesthetics they did a pretty extremely bad job of it.22:19
drobillaI sum up that failure as "too many enterprisey dorks and a few mathey logic people focused on the parts nobody cares about"22:20
drobillaYeah, me too.22:20
* drobilla tries to figure out HTF all that translates to a section skeleton22:21
*** rncbc is now known as rncbc|AFK22:38
*** edogawa has quit IRC23:15
*** wrl has joined #lv223:38
*** HarryHaaren has joined #lv223:58

Generated by irclog2html.py 2.13.0 by Marius Gedminas - find it at mg.pov.lt!