I know, you might have never heard of it, and yeah, it isn't a thing. But it is about to be. This is something I've been thinking about the entire summer, and I'm gonna start working on it soon.

Basically, the design and structure of databases are important, but nonetheless, they are databases, so they are "bases that store data", and we all know that the best way to store data, is using the principals of data structures. Data structures is entirely based on object orientation, and therefore, I'd like to begin working on databases that form themselves and their own structures based on the data structural design of the programmers.

Now imagine you've got an object named "Student" and the student has a name, maybe a social security number, gender, date of birth, etc. And then, you want to design a system that shows each student how they did on their tests. So let's say you have another object named "Score" and it has, and when I say has I mean it includes a float which is the actual score, some other things like date of exam, etc. But the most important thing is linking the score to the student. Now each student might have a number of scores. So the idea would be to declare a pointer of the type "Score" inside the object "Student". But how would that look inside a database? Well, that's what this whole project is going to be about.

So let's say you create all these objects, and you use a library, which for the record is going to be my project, to declare these objects, maybe have them inherit some features. Then, the library automatically creates the database, the tables, the keys in the most efficient way possible and links everything, so that you wouldn't need to do so. So for our little example, the tables would be #_student and #_score and the attributes or the columns would include everything mentioned, except, the "Score" pointer would become a "score_id" and it is a foreign key to a unique primary key inside the table #_score. Now let's say a student can have multiple scores, what then?

Then the structure of the tables would differ and instead of a "score_id" column inside the #_student table, there'd be a "student_id" column inside the #_score table to link the scores as an array to the students.

Now, how is all of this going to be possible? Is it even possible? The answer would be, as arduous as it may seem, it is possible, and in order for it to come to reality, it needs programmers working with alacrity. Hopefully I will put together a team, and start working on it asap.

There's also the question of compatibility, and the answer is yes, it would be programmed in multiple platforms in order to make it cross-platform.

Stay tuned for more!


P.S. How are you liking the new design of the website? Let me know.