Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Data organization

  1. Mar 4, 2005 #1
    I have an idea for a program that would let you quickly group data into heirarchies for easier access (manually, by humans) later. Like, if you have a lot of disorganized notes, you could use the program to quickly group them into ordered lists like I, II, IIA, IIA1, III, etc. Or to quickly create links between one piece of information and another--I'm thinking here a point-and-click type thing.

    You could also put one piece of information into more than one category at the same time, so that, say, if you have a meeting planned on a certain date about a certain topic, you would put the meeting into the category for the date (like you would on a calendar) and then with another couple clicks you would have it also show up under the category for the topic of the meeting.

    To reduce manual pointing-and-clicking a lot of it would be automatic. Like, if you start a new piece of information with a date, the information would go into the category for the date. And if the program found that you were switching back and forth a lot between two pieces of information in different categories, it would automatically put a link from each piece of information to the other (maybe at the side of the screen while viewing each piece of information, beside the text so it would be always visible without having to scroll).

    Or maybe each piece of information would be a category itself (with the information associated with it), so that instead of just having a link format, each of those pieces of information would be the category of the other (like a folder system, only where A is a subfolder of B and B is a subfolder of A, and each folder contains information in its own right instead of only other folders and files).

    The search feature would be very important and I think there are a lot of things you could do in a system like this to make a search give better results. For one thing, the search would only have to land you in the general area because everything relevant would be linked together once you are in the right area, so the search could avoid duplicate or near-duplicate results very efficiently, only telling you the _separate_ general places where your search has matches. It should also be easy to make words more visible to the search, within each piece of information, so the search picks up on them with precedence.

    Does something like this exist? I am thinking it would be very useful for programmers who use many languages--an alternative to having to go hunt through documentation. Optimally it would be in a separate little (cheap) computer with its own screen and keyboard and a dot-matrix receipt-type (cheap) printer that would effectively give you more screen space (you'd just print out each piece of information when you think it's useful).

    If something similar to this does not exist, please don't steal my idea.
  2. jcsd
  3. Mar 4, 2005 #2
    It sounds like your looking for a hierarchical organizer. I'm sorry to say these exist already.

    I use this on my Mac as a matter of fact:

  4. Mar 4, 2005 #3
    Sounds like you are describing a relational database and a GUI frontend
    MS Visual Studio and other development environments already do something like this. When you start typing ina function, this little help tags popup and tell you the name and datatype of the parameters. Nice.

    Read a little about relational algebra and its popular implementation, SQL. Try reading the following:

    Relational algebra: http://en.wikipedia.org/wiki/Relational_algebra
    SQL: http://en.wikipedia.org/wiki/SQL

    Awesome open source SQL engine: http://www.postgresql.org

    Also you might want to check out Datalog, which is a simplfied version of Prolog. Its really too bad its not more popular, as its extremely powerful for its niche.

    In SQL, you would probably do something like this

    To view all meetings on a specific date:
    SELECT * FROM MEETING WHERE DATE = '{some_date}'

    To view all meetings on a specfic topic:
    Last edited: Mar 4, 2005
  5. Mar 4, 2005 #4
    Hmm... I think in the next few months I might try to write a basic program that does the things I said with text files. It's about the interface. I think that some things need to be made very convenient to be useful... so what if they can be done more clumsily with existing tools.
  6. Mar 4, 2005 #5


    User Avatar
    Staff Emeritus

    Bartholomew, I would also take a look at Google Desktop and Apple Spotlight.
  7. Mar 4, 2005 #6
    Well, file search engines, hierarchical organizers, and database search languages look like they would be very useful, possibly used in conjunction. I think that I do have an idea left though: automatic association of files combined with multiple places for the files. Every time you finish a document, it would ask: where should I put this? and suggest on its own multiple locations, which you could choose any number of. And if you used two files together a lot, it would suggest the option of putting them in each other's directory if they aren't already. An associative file system. How about it?
  8. Mar 4, 2005 #7
    One other thing, kind of unrelated: Do you know if there is a way in Windows to make any arbitrary window "always-on-top" (like the Task Manager option)? That seems like a very useful feature, there must be some way to do that. In particular it would be nice to set My Computer always-on-top when I'm using a bunch of files.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook