I started doing Sharepoint development by the book. From the very start I was taught, create A site column -> A content type -> A list definition -> A list instance.
So the theory here is you have excellent reuse, and a logical structure. Your lists have managed content types, which in turn are made up of the site columns you create. All very nice.
But the more I started working with lists, the more I realized that SharePoint inheritance of content types isn't quite what I thought it was.
I thought, since I've taken the time to create the custom content types , I should really just need to reference these content types in the list definition. But instead I found that it simply didn't work like this. It might look like it could work like this, but in reality, I found I was redefining all the fields all over again in the list definition.
So my question is. Is it really worthwhile defining site columns and content types, when ultimately you end up having to define them again anyways for each list instance.
Isn't it just quicker to not use content types and site columns and just use fields in the list instance?