Stories
Slash Boxes
Comments

SoylentNews is people

posted by martyb on Saturday April 23 2016, @10:12AM   Printer-friendly

Emacs org-mode is very powerful tool for personal knowledge management, but can be hard to learn, makes it hard to have the same content (notes) referenced in more than one place, and can be awkward for the hands. Finding other tools inadequate for various reasons, I wrote OneModel to meet my own needs, and made it available. If you touch-type, it is extremely fast for to-do lists and notes of all kinds, and I generate the project web site from part of its data. It is much easier to learn and faster to navigate than emacs, and you can have the same content in as many places as desired, without duplication.

But it wants to be more: It uses an internal structure that has big future ideas for knowledge management, like embedding code within groups of entities, or linking across OneModel instances, so you can choose to share data from your personal organizer, or subscribe to (or copy) data from other instances: like a wikipedia but where the internal knowledge is structured so can be used for computation, rich queries etc. Imagine asking a system: what villages in history had economic improvements in a 4-year period, all external conditions being equal, and what do those cases all have in common?--that is the long-term vision of the system. The vision and internal structure are intended as be a prototype of a platform to manage all mankind's knowledge as a usefully computable whole.

The web site has a few screen shots (remember it's an ugly prototype but works well! -- I have my calendar/life notes/todos/contacts etc in it now) and a demo system to play with without installing anything.

(It is written in scala, using a simple/approachable coding style that should be readable by most programmers with just minutes of scala knowledge--I hope--and uses postgresql for the data.)

I frankly don't mind if someone else takes the ideas and does a better job with them: we can do better than managing mankind's knowledge in the form of huge sophisticated piles of words: words are not the real knowledge but a superstrate over it, and they are hard to compute well. Feedback welcome.


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 2) by darkfeline on Saturday April 23 2016, @08:40PM

    by darkfeline (1030) on Saturday April 23 2016, @08:40PM (#336323) Homepage

    What exactly is wrong with Org mode? As far as I can tell, the submitter thinks the key bindings are bad (a reasonable complaint, but they can be rebound, and there are preset packages for, e.g., evil mode that fixes them), and he wants to be able to link a single note in multiple places. This can be done in Org mode via Org mode's extremely powerful native links, or it would be trivial to write a dynamic Org block that pulls an authoritative content source into multiple different files/locations.

    Furthermore, I don't think needing to have "the same content in multiple places without duplication" is a common need. Reasonable people have decided that (hyper)links are the right tool if you want to reference some content, not duplicating that content in multiple places, even if it is pulling from a shared source.

    --
    Join the SDF Public Access UNIX System today!
    Starting Score:    1  point
    Karma-Bonus Modifier   +1  

    Total Score:   2  
  • (Score: 1) by lcall on Saturday April 23 2016, @08:49PM

    by lcall (4611) on Saturday April 23 2016, @08:49PM (#336326)

    Thanks for pointing out that linking feature. I've tried both, and navigation in OM is (to me at least) definitely faster and requires fewer keystrokes. Also the fact that what you need to know is on the screen, to reduce the learning curve.

    There's a more detailed discussion here:
    http://permalink.gmane.org/gmane.emacs.orgmode/104696 [gmane.org]
    (...or here, with the whole thread, flames and all: http://comments.gmane.org/gmane.emacs.orgmode/104595 [gmane.org] ).

    And a big deal with me is that the internal structure is about *knowledge* rather than about words. See another comment I made here mentioning "theory", and others about the nature of knowledge. I believe that as long as we are dependent on text at the lowest level, we limit the what the software can do with the data. There is more on that at the web site under "vision" links, but you have to drill in to find it all.

    Partly taking advantage of OM's db structure, the next big phase will be about making it distributed (sharing knowledge between OM instances), letting you set different permission levels on different entities, propagate changes, etc.

    • (Score: 2) by hendrikboom on Sunday April 24 2016, @01:48AM

      by hendrikboom (1125) Subscriber Badge on Sunday April 24 2016, @01:48AM (#336403) Homepage Journal

      I followed one of the links to emacs discussions, I noticed the line

      make the tag help me as I am, *not* make me work to remember the tag (who is
      servant vs. master)

      You might want to look at the literature on controlled vocabularies before you get around to having schemes for naming tags and attributes and so forth.

      As for organizing knowledge in general, may I recommend The Accidental Taxonomist, by Heather Hedden. You seem to be on your way to building a system to organize information, and you might as well find out where that led other people. Most of the people professionally in the field got into it by accident, hence the title.

      -- hendrik

    • (Score: 3, Insightful) by darkfeline on Sunday April 24 2016, @04:14AM

      by darkfeline (1030) on Sunday April 24 2016, @04:14AM (#336431) Homepage

      My intention is not to get philosophical, but knowledge IS words, as far as people are concerned. The biggest advance in human history, and the biggest advance any one person can make, is learning language.

      Computers can take advantage of typed values (which is why we invented databases), but humans fundamentally understand only words (and pictures). If your goal is personal knowledge management and not computer knowledge management, take care not to put the cart before the horse; unless your goal is curating a personal knowledge database, this is merely a means to an end. Any solution that allows you to take notes and find them satisfactorily is doing its job to the fullest.

      --
      Join the SDF Public Access UNIX System today!
      • (Score: 1) by lcall on Sunday April 24 2016, @01:51PM

        by lcall (4611) on Sunday April 24 2016, @01:51PM (#336536)

        Thanks for your comment, it's a good one. As I've written in this page and on the OM web site (links under "vision" stuff), I think that words are key and important for us just as you say and more, but that there is a level below that, which I'm trying to map, hence "atomic knowledge".
        There are more details at http://onemodel.org [onemodel.org] under "More about OM" then "OM future plans and vision", then the first link, or just drill into this page, where the things talk about how what you know about a physical object (mass, etc...):
        http://onemodel.org/1/e-9223372036854641853.html [onemodel.org]

        • (Score: 2) by JNCF on Sunday April 24 2016, @06:15PM

          by JNCF (4317) on Sunday April 24 2016, @06:15PM (#336643) Journal

          I've got some questions about this project. I'm making this a reply to one of your posts because I want you to see it, but it should really probably be a comment on the submission directly. I've read parts (but not all) of your website and github, and used your demo briefly, but I don't think I understand it yet. I'm going to state things about your project matter-of-factly to avoid constant disclaimers, but I recognize that I might be misunderstanding things and I welcome you to bluntly correct me.

          Your project is attempting to model human knowledge. You want to let people share models with each other (though this is not implemented yet), which is wildly different than the push-to-master model of Wikipedia for example. Is this partly intended to allow competing world-views to build their own incompatible models?

          Are you attempting only to build a layer for sharing models of things, or do you also intend to prescribe a general-purpose schema for how those models should be laid out? Not that you can control how people use this thing, or would even want to. But clearly defining what sorts of properties objects should have would make objects more compatible between models, and allow for easier sharing. I could also see you wanting to leave this up to the community to figure out, and just focus on building the base layer. Relatedly, do you intend to prescribe units of measurement for time, physical dimensions, weight, etc? If so, which ones?

          I'm super excited to see attempts at a decentralized, open source Wolfram Alpha being made. I'm going to sign up to your mailing list/newsletter, you crazy crazy man.

          One more question, super nit-picky. I wouldn't normally ask this, I'm not trying to get you to switch licenses. I'm legitimately wondering if you're drawing a distinction that I'm missing between code and other ideas.

          I frankly don't mind if someone else takes the ideas and does a better job with them

          If you don't mind somebody else taking the ideas, why is this project AGPL instead of a more permissive license such as CC0? Do you not consider code to be strictly composed of ideas?

          • (Score: 1) by lcall on Monday April 25 2016, @05:41PM

            by lcall (4611) on Monday April 25 2016, @05:41PM (#337015)

            Thanks for the conversation.

            About allowing competing world-views: yes, because central control is usually bad (I had a whole semester class on Stalin; sigh). But also because a different community will care more about different things and should be allowed to. Like wikipedia disallows some content as not noteworthy enough (I forget their exact wording), but you can make your own wiki with its own focus. OM is Free software so ... people can use it for their purposes, though I personally strongly prefer they be honest and follow the Golden Rule in doing so, though I know that's more than you asked.

            "Are you attempting only to build a layer for sharing models of things, or do you also intend to prescribe...": Wow, I think you really get it. I love it when that happens. It's rare enough still to be a thrill. Everything in that paragraph that you said, I agree with. I'd like to share my units, attribute types, relation types etc, if they help anyone, but haven't got around to it and don't consider them more than an example usage. Being able to share or copy such things could tip the scale for some users though.

            I'd love to have your participation in discussions (like priorities and designs; I think the next main priority after I properly respond to feedback should be sharing/distributed stuff, but funding might be an issue really really soon and I need to think about how to find the right philanthropsts, along with other developers. I'd like to sell hosting, because I think it could be done right without undue initial expense, but things haven't clicked enough there yet). Or code contributions from anyone who "gets it" like you seem to.

            I'm not familiar with CCO, sounds like creative commons something, but I like the AGPL generally over BSD for non-protocol works because I've put so much into this that I do want to get some $ benefit for project sustainability if possible (per things like RMS' writings on business models etc), and if someone else really does just run with it, I want to be able to use their improvements at my discretion, not theirs. I hope that makes sense. I don't pretend to know the final answers on everything but that much seems good enough to work with for now.

            You mentioned focus. I'd like to focus on whatever does the most good & helps support my family with a clear conscience. This really seems like a worthwhile thing if I can sustain it. Your tone makes me think I can say, I hope without offending: I believe in God and that he gives us opportunities but lets us choose, have hard experiences, & work hard, all for our own growth (and that the problems can all be resolved at some point). My experience is that if I know what He wants I'd better do it, because when I disagree and do it my way I really make a mess of things. So I'll keep trying.

            This could be written better but has my criteria on an acceptable system (I probably linked it somewhere before):
            http://onemodel.org/1/e-9223372036854614279.html [onemodel.org]

            I look forward to our future collaboration, if/when that is in your interest.

            I don't know what the "community" thinks, but this page has probably reached the point where it doesn't matter, and I don't mind, if you repost this anything like this level of your quality comment at the bottom for visibility, & quote me if/as you see fit.

            BTW, if you have ideas: what could I explain better, specifically for the demo, to make it so people know how to use it beyond creating one entity and looking at it blankly?

            • (Score: 2) by JNCF on Monday April 25 2016, @11:40PM

              by JNCF (4317) on Monday April 25 2016, @11:40PM (#337190) Journal

              Let me throw a suggestion at you. I think users should be able to distribute a group of one or more objects in a package, and that they should be able to have packages rely on other packages that they are trusting. They should obviously be able to fork those packages if necessary, but they should also be able to add, remove, and change data before redistributing the latest upstream version. This might allow for a large amount of collaboration on general data that most people agree about while still allowing divergence when different interpretations of the universe (or whatever it is you're modeling) would result in different data. Wikipedia allows a new wiki to fork their information, but it doesn't allow them to redistribute the latest upstream information with changes. And this would be difficult for Wikipedia, because Wikipedia is far less organized than the thing you're building. Redistributing a sentence that can be edited for clarity is way more of a maintenance nightmare than redistributing a set of values that should change rarely and within predictable parameters.

              You mentioned focus. I'd like to focus on whatever does the most good & helps support my family with a clear conscience. This really seems like a worthwhile thing if I can sustain it. Your tone makes me think I can say, I hope without offending: I believe in God and that he gives us opportunities but lets us choose, have hard experiences, & work hard, all for our own growth (and that the problems can all be resolved at some point). My experience is that if I know what He wants I'd better do it, because when I disagree and do it my way I really make a mess of things. So I'll keep trying.

              We're definitely modeling the universe differently right here, but It's really difficult to offend me with civil behavior. I'm open to the potential that we're living in a simulated reality, but would see human beings as a totally meaningless emergent phenomenon regardless. That's about as close to theism as I can get. You seem like a well-intentioned, intelligent human being. I really hope you can make a living off of this somehow, but I don't how that would work. Wikimedia seems to meet their fundraising goals.

              I'm drawn on whether or not you should bother making a demo that's accessible from a browser at this point. On the one hand, it would lower the barrier of entry. On the other hand, I'm not sure that anybody who doesn't have a telnet client will properly understand this at it's current stage of development, so it might not matter. I might make one at some point, but I can't promise that. I'm currently busy with other projects, but it would actually be pretty simple to just expose a remote terminal in a browser that's trapped in a telnet connection with your existing demo.

              As for improving the actual demo, I'm not sure how it should be presented. Differently, definitely. I'm still trying to think up something more constructive than that.

              • (Score: 1) by lcall on Tuesday April 26 2016, @01:27AM

                by lcall (4611) on Tuesday April 26 2016, @01:27AM (#337210)

                All sounds good. We have the same thoughts on browser vs. telnet. I read that there is a telnet:// [telnet] like there is http://, [,] but there didn't seem to be much support.

                Suggestion noted. I'm going to (hopefully later this week) refine & prioritize my known use cases for distributed use, and present them on the discussion email list for feedback, then move to design; welcome to join in there.

                About the demo: In another thread in this page I said something about "some architecture", which maybe combined with a couple of others here ("elevator pitch" #2 or #3 and "a better explanation, maybe" and "OK: just what it does" could be incorporated as paragraphs on the onemodel.org "About" and/or "getting started" pages, and linked into the demo page. Or such. But within the demo, assuming they've read the "some architecture" content, it could simply suggest creating attributes and nested entities a little (which someone did, most not), and see what that does. Those are my ideas so far, in case they spur more in you. Or, it might simply matter more, later.

                Thanks! (Same, frankly, to all who've said stuff here. It's good to have feedback, especially at this stage.)

                • (Score: 2) by JNCF on Tuesday April 26 2016, @02:39AM

                  by JNCF (4317) on Tuesday April 26 2016, @02:39AM (#337260) Journal

                  And thank you for making this cool open source project! I think I vaguely realized that we needed an open source Wolfram Alpha before, but I wasn't thinking about it in anything that resembled your terms until I started reading your posts. This is a glorious plan; I'm excited to see where you take it.

                  • (Score: 1) by lcall on Tuesday April 26 2016, @04:58PM

                    by lcall (4611) on Tuesday April 26 2016, @04:58PM (#337554)

                    Thanks. I'm kind of wondering where it can lead, myself. I'm going to need more outside participation, so if you see things I'm doing that could help/hurt the hosting idea (it's on the "download" web page now), or in welcoming developers, speak up. Or if you meet a philanthropist (you know, PBS says "sponsored by the ..." people who want to change the world), you could mention OM as something that could take us all to the next level in knowledge management. :) Or if someone wants to make an app, I'd license the code. Etc. Might sell better installers later on. I have some other things planned, but probably for after some minimum features are in place for distributed use.

                    For the demo, i added some text in the first sandbox: "IN THIS DEMO: After you create press 1 to create an entity, note that it has a letter. Those are yours. Now press "a" to see more of what you can do." But, it could be cut off for those with, say, 80- or 120- column terminal windows, and so maybe I should duplicate it in a good place in the demo page of the web site, and/or see if I can make the demo work well with instructions in = 80 columns.

                    Anyway those are a few current ideas to trade.

          • (Score: 1) by lcall on Monday April 25 2016, @05:45PM

            by lcall (4611) on Monday April 25 2016, @05:45PM (#337017)

            PS: In this file I elaborate on licensing, and why/what of copyright assignment. I really tried to make the key stuff short & simple, and the rest at least skimmable:
            https://github.com/onemodel/onemodel/blob/master/CONTRIBUTING [github.com]