6 ms·
I'm afraid you're entirely missing the relevance of the core fact that the syntax and runtime execution of programming languages are humongously difficult to un
by TuringTest 4y ago
I'm afraid you're entirely missing the relevance of the core fact that the syntax and runtime execution of programming languages are humongously difficult to understand for the large majority of computer users. Every time you create a system to automate some part of computer usage that doesn't rely on complex syntax and which executes in a declarative way, the same end result is created through a new concept, even if there existed a different process before that could also create it.
HTML was a step in the right direction (and XML a misstep); before it, you needed to program a GUI API to lay out content intermixed with interactive components. Saying that the web brought nothing new because BBSs existed before it is missing out on the importance of the details in achieving that result. Precisely, "different cloths" is what makes the movement relevant to make it accessible to new users who could never have used the previous system.
You're right in pointing out that interoperability is a key factor in the new batch of tools. The key point that neither Org-mode nor SGML-derived codes had is is to make user-entered content accessible to transformation tools without the need to code the transformation in an imperative language. Spreadsheets had this feature as well, sure, but spreadsheets didn't easily allow for hierarchical content.
The main new aspect that logseq and Obsidian bring to the table is the possibility to backlink to any part of the hierarchical structure. The tools automatically compile all those links as a new data object, which the user can process without creating a script to gather all that data. HTML had the potential to popularize that feature 30 years ago (with a slightly more awkward syntax than Markdown), but browsers never got around to it.
Previous tools would require users to move content to a different tool (say, by copy-pasting the content of your files to a spreadsheet to apply formulas), destroying the possibility of having a central personal knowledge repository. In logseq / Obsidian, you can keep adding multimedia content to your structured knowledge base, and exploit that content without coding at all, or at most by creating simple declarative expressions. What tool before these ones had that possibility before? With hierarchical structures, not just flat structures like the spreadsheet?
- slightwinder 4y ago> I'm afraid you're entirely missing the relevance of the core fact that the syntax and runtime execution of programming languages are humongously difficult to understand for the large majority of computer users. No, I know that, I just don't think it's a relevant problem for the user group we are talking about. > Saying that the web brought nothing new because BBSs existed before I did not say that? And in the first place, BBS competes with other networks like the Internet, not a service running in such a network. > The main new aspect that logseq and Obsidian bring to the table is the possibility to backlink to any part of the hierarchical structure. No, they do not. Linking is a fundamental concept of hypertext. And easy linking inside your dataspace, as also automatically listing backlinks, was already established with wikis 20+ years ago. Even hierarchies exists in wiki space for a long time now in several different ways. > The tools automatically compile all those links as a new data object, which the user can process without creating a script to gather all that data. What kind of low-level-tools have you used till now that this is your level of knowledge here?? > In logseq / Obsidian, you can keep adding multimedia content to your structured knowledge base, and exploit that content without coding at all Yes, because someone else does the coding, as always. This is the benefit of a popular ecosystem. But this is not the point of having a scriptable and programmable app. The scripting just enable you to personalize on small levels. The programmability should enable the user and community to extend the program with new abilities, as dataview here is doing it. There are other extensions who enable scripting to certain degrees for the user, as obsidian is not really adding this on it's own. No app will ever be perfect for everyone. That's why extensions and scripting are beneficial, especially for this space.k > What tool before these ones had that possibility before? With hierarchical structures, not just flat structures like the spreadsheet? The constraints again. Why does it matter that obsidian&co. can do some more tricks than their ancestors, like playing videos, when the fundamental purpose and handling is still the same? That's like the old joke of taking something old and just add a clock, to sell it as new. More bells and whistle don't make a new church.
- TuringTest 4y ago> No, I know that, I just don't think it's a relevant problem for the user group we are talking about. What user group are you talking about? I'm specifically talking about the large majority of users who could never learn to program in a syntax-heavy general-purpose programming language! X-D Those people nevertheless have a need to build their own userland applications, and no current tool serves them well; but a Nocode programmable knowledge database could do it. > No, they do not. Linking is a fundamental concept of hypertext. And easy linking inside your dataspace, as also automatically listing backlinks, was already established with wikis 20+ years ago. And as I explained, no end-user tool has exploited that possibility to allow end users to access those automated links programatically with nocode tools (like for example with spreadsheet-like declarative expressions). The browser missed the chance by having no persistent storage and only allowing javascript as their programming language, and wikis never were nocode-friendly. Yet modern tools are just beginning to do that on top of a personal knowledge base. > What kind of low-level-tools have you used till now that this is your level of knowledge here?? I beg you pardon? I've programmed all the way down from building my own flip-flops with electric transistors up to non-linear mathematical solvers for combinatorial optimization. I don't see the relevance, since low-level-tools will never be adequate development platforms for end-users. > Yes, because someone else does the coding, as always. No. Logseq / Obsidian have tools that allow end users to build their own coding through templates and queries. The kind of coding is different from scripting, though; it's more like creating semi-automated workflows that put all relevant information in front of the user, which then proceeds to transform it with direct manipulation. What tool in the past has allowed end-users to create that kind of workflows from end-user templates and arbitrary queries, other than non-hierarchical spreadsheets? > The constraints again. Why does it matter that obsidian&co. can do some more tricks than their ancestors The constraints are there for a reason, and you don't seem to grasp why they are important. The spreadsheet , and spreadsheets are typically not automated through scripting and extensions - using those is normally considered a failure of the spreadsheet model, because you're processing data outside the mental model of the spreadsheet as a programming environment i.e. cheating. Most End-User Development tools rely on the assumption that users can't program at all, so all automation concepts must be presented to them through alternate syntax and interactions, quite different from classic coding. A spreadsheet-like development environment based on outliners as its data structure, rather than the tables of a spreadsheet, should also be programmable by end users without relying on imperative scripts external to the tool. Logseq is creating the basis for that storage model, which some people are starting to exploit the kind of semi-automated workflows I talked about above. > like playing videos That's a red-herring, not a main point. I mentioned multimedia merely because programmable tools tend to be text only, forcing users to use separate tools for rich content, or import specific libraries to handle multimedia data as programmable objects (rather than editing them as native interactive content like they would on the GUI). The point is that end users should be able to treat all kinds of content equally with their tools, not being tied to the Unix shell constraint that all content is moved between processes as text streams or binary blobs.