Log in
::
Register
::
Not logged in
Home
Tags
Articles
Editorials
Stairways
Forums
Scripts
Videos
Blogs
QotD
Books
Ask SSC
SQL Jobs
Training
Authors
About us
Contact us
Newsletters
Write for us
Recent Posts
Recent Posts
Popular Topics
Popular Topics
Home
Search
Members
Calendar
Who's On
Home
»
Article Discussions
»
Article Discussions by Author
»
Discuss content posted by William Talada
»
Objects, Relationships, Systems, And...
Objects, Relationships, Systems, And Processes
Rate Topic
Display Mode
Topic Options
Author
Message
Bill Talada
Bill Talada
Posted Tuesday, September 11, 2012 12:00 AM
Valued Member
Group: General Forum Members
Last Login: Thursday, May 16, 2013 9:31 AM
Points: 65,
Visits: 443
Comments posted to this topic are about the item
Objects, Relationships, Systems, And Processes
Post #1357148
G Bryant McClellan
G Bryant McClellan
Posted Tuesday, September 11, 2012 5:42 AM
Right there with Babe
Group: General Forum Members
Last Login: 2 days ago @ 6:13 AM
Points: 799,
Visits: 422
Interesting post and point of view.
I am not sure that an OOP approach is necessary to see the relationships that exist in SQL server. Or perhaps more accurately, I understood those relationships long before I was ever introduced to OOP as a concept. Perhaps holistic is more descriptive?
------------
Buy the ticket, take the ride. -- Hunter S. Thompson
Post #1357340
GSquared
GSquared
Posted Tuesday, September 11, 2012 1:43 PM
SSCoach
Group: General Forum Members
Last Login: Monday, May 06, 2013 1:09 PM
Points: 15,439,
Visits: 9,569
It's a good write-up of a progression on that kind of thing. But it doesn't necessarily take years to go that route. If you understand how thinking works, things like postulated vs experiential knowledge, then learning these types of things can be very, very fast.
- Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
Property of The Thread
"Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon
Post #1357673
alex.d.garland
alex.d.garland
Posted Wednesday, September 12, 2012 5:13 AM
SSC Veteran
Group: General Forum Members
Last Login: Friday, May 10, 2013 10:29 AM
Points: 208,
Visits: 206
Thanks for this - an interesting post with at the very least some excellent starting points for thinking about databases in different ways.
That said (with regards to your section on objects), I think it's important to recognise that relational systems work on very different principles to true object-oriented programming languages. The two models deal with identity in very different ways and relational schemas are not a good natural match for polymorphic design - as I understand it, these issues contribute to the practical issue of object-relational impedance.
There are rich mathematical and logical underpinnings to relational database design which (while I'm sure this is not your intention), I'd hate to see anyone misunderstand as being analogous to the principles of Object Oriented design.
Post #1357900
timothyawiseman
timothyawiseman
Posted Friday, September 21, 2012 12:45 PM
Right there with Babe
Group: General Forum Members
Last Login: Thursday, February 14, 2013 12:01 PM
Points: 743,
Visits: 900
This was an interesting look at things, but some of it does not fit my experience.
For instance, I did not start by looking at anything in databases by anology to objects. I had a background in mathematics and found it very natural to think of them in terms of sets and draw anologies to set theory. I mastered OOP later and then I saw parallels between database entities and OOP entities, but I was also acutely aware of the limitations of those anologies (ORMs exist specifically to help hide some of those differences when it is convenient...)
Also, you seem to imply this is a more or less one way evolution, but it seems more iterative. To look at the example you gave of "The progression is similar to grade school where we first learned letters, then words, then reading sentences and stories. The order cannot be reversed. " You are right, the order can't really be reversed, but neither is it a linear progression. My daughter is in the early stages of learning to read. She mostly knows the alphabet, but still gets some of them wrong. But she can recognize a few words on sight. She hasn't read her first full sentence yet, but she can speak and listen to sentences, and she has heard stories, so she has concepts of them. And she will not be ready to read MacBeth when she starts reading Dr. Seuss, because she will first need to go back and learn more words and more about sentence and story structure.
For that matter, I still learn new letters (calculus uses a lot of Greek letters, and transfinites use Hebrew lettes), new words, and even new things about sentence structure (http://timothyawiseman.wordpress.com/2012/07/09/writing-about-sql-server/). My learning about reading and writing continues at all of those levels.
---
Timothy A Wiseman
SQL Blog:
http://timothyawiseman.wordpress.com/
Post #1362915
Bill Talada
Bill Talada
Posted Friday, September 21, 2012 1:59 PM
Valued Member
Group: General Forum Members
Last Login: Thursday, May 16, 2013 9:31 AM
Points: 65,
Visits: 443
My article was about the huge milestones in life marked by a radically different point of view center-of-gravity due to learning, experience, boredom, and finally awareness of a higher order. There will be many exceptions and fractally occuring smaller patterns of this great pattern.
I agree with everyone here that Relational Theory is different from OOP Theory. My point in the article was to show that I no longer "see" a table as a table but as part of a subsystem or design pattern of tables. I see stored procedures as methods bound to data (table). I see indexes as attributes of a table. These ways of seeing are radically different from a "things" procedural mindset.
Earlier levels are never lost. One may always "regress" to seeing simpler levels such as seeing individual characters in words in a sentence. The article is mostly about the brain rising to complexity, mastering and simplifying it, and then moving to higher levels of mastery. But someone without mastery can only conceptually "see" higher levels without actually experiencing it and living it.
The real proof is when you are experiencing all areas of your life in a relationships fashion or a systems fashion. When there is a car accident in front of you, do you focus on the car in front of you or do you focus on flowing lanes and alternate routes? When you purchase a book, are you thinking of who is getting the money, the environment impact, the storage space, the time involved in reading it, the resale value? When purchasing food, do you consider if the seller is behaving responsibly or if the food is toxic or unhealthy long term for your body? Is the spent money staying in your community or being centralized to a few corporate heads? These aren't just topics for protesters but events affecting the stability of systems everywhere.
Post #1362966
timothyawiseman
timothyawiseman
Posted Thursday, October 11, 2012 2:21 AM
Right there with Babe
Group: General Forum Members
Last Login: Thursday, February 14, 2013 12:01 PM
Points: 743,
Visits: 900
You certainly provide a lot to think about, and thank you for the quick response.
But I still must respectfully disagree on at least some points. I don't experience "all areas of your life in a relationships fashion or a systems fashion." Rather I move up and down the levels of abstraction constantly, sometimes consciously and sometimes sub-consciously. When I am playing with my kids, I am often more concern about being "in the moment" to borrow an overused phrase and then I don't think I'm viewing the situation in either fashion. I'm just playing with my kids. But when I play Go, I am definitely looking at the board in a system-centered fashion. When I program, I go back and forth between those and purely functional forms of abstraction, and occasionally step outside of all of those to ask questions like "What should my actual goal be right now?"
And I thought one of your questions was telling, "When you purchase a book, are you thinking of who is getting the money, the environment impact, the storage space, the time involved in reading it, the resale value?" I've thought about all of those, and more (who owns the copyright? When will it expire? What was the licensing agreement? How much of this can I legally quote? I happen to be in law school.), but at different times. Normally, I'm thinking of the content and how interesting it. Then when I think about buying it, I have a cost benefit and I have to think about if I will have time to read it, if its worth the purchase price, and if I have room for it on my shelf. So, those things always come up before I buy, but not all at once, its almost in a series. I normally don't think about environmental impact, resale, or the license, but I do in the right context. If its a textbook, I think about the resale. I pretty much never think about environmental impact or the licenses involved in any particular book I'm buying, but I might grab a handy book as an example when I am discussing those things with classmates or friends. I don't think of them as higher or lower modes of thought, just context dependent ones.
When I think about SQL, I also bounce between metaphors. For me, its most natural to see tables as sets of sets which are then connected by various logical relationships. With a background in set theory and formal logic (I came to the computer science discipline of relational theory later, but it is tightly related to set theory) this seems very natural to me. Seeing stored procedures as methods seems unnatural to me (especially on those occasions when I write a stored procedure which takes a table name as a parameter and can act on a number of tables with dynamic SQL...), but I use that metaphor sometimes especially when I working with SQL and an OOP language.
But I don't see either of those as a higher level or ever feel like I am regressing. It seems more like I am looking at the same thing from different angles. Sometimes one is more useful than the other. Neither fully captures reality, but both represent metaphors that are useful at times.
---
Timothy A Wiseman
SQL Blog:
http://timothyawiseman.wordpress.com/
Post #1371274
Bill Talada
Bill Talada
Posted Thursday, October 11, 2012 8:42 AM
Valued Member
Group: General Forum Members
Last Login: Thursday, May 16, 2013 9:31 AM
Points: 65,
Visits: 443
Consciousness is horrendously bad at multitasking. We must see each viewpoint sequentially. We also generally use the easiest tool for the job so playing with the kids does not require systems level thinking. Children don't have the ability to think in complexity so it would be inappropriate to talk to them at that level.
XP (extreme programming) requires two programmers to work together on a task. One focuses on the details or object level while the other programmer focuses on the system level. One writes code while the other provides insights on the constraints and environment.
When I say systems thinking is "higher" I just mean it comes later evolutionarily. Perhaps it is easier to accept that the MORE viewpoints one is capable of having, the BETTER for guaranteeing survivability, flexibility, and understanding. Ultimately knowing all viewpoints and holding no viewpoint is the most powerful and unbiased state to be in.
We grow through differentiation and integration. We advance from subjective to objective. We move from slavery to mastery. We expand in our circles of love to encompass more of the world. These are all just models to help point the way of personal evolution. The models are not the territory: leave too much out and they become useless, add too much and they cease to be models.
Here is a seminal work on personal evolution which in my opinion is one of the greatest contributions of the 20th century: http://www.clarewgraves.com/articles_content/1974_Futurist/1974_Futurist.html
Post #1371553
« Prev Topic
|
Next Topic »
Permissions
You
cannot
post new topics.
You
cannot
post topic replies.
You
cannot
post new polls.
You
cannot
post replies to polls.
You
cannot
edit your own topics.
You
cannot
delete your own topics.
You
cannot
edit other topics.
You
cannot
delete other topics.
You
cannot
edit your own posts.
You
cannot
edit other posts.
You
cannot
delete your own posts.
You
cannot
delete other posts.
You
cannot
post events.
You
cannot
edit your own events.
You
cannot
edit other events.
You
cannot
delete your own events.
You
cannot
delete other events.
You
cannot
send private messages.
You
cannot
send emails.
You
may
read topics.
You
cannot
rate topics.
You
cannot
vote within polls.
You
cannot
upload attachments.
You
may
download attachments.
You
cannot
post HTML code.
You
cannot
edit HTML code.
You
cannot
post IFCode.
You
cannot
post JavaScript.
You
cannot
post EmotIcons.
You
cannot
post or upload images.
Copyright © 2002-2013 Simple Talk Publishing. All Rights Reserved.
Privacy Policy.
Terms of Use.
Report Abuse.