I cheated on EMF with RDF. And I may do it again!
I have been on a solid relationship with EMF and Object Oriented techniques for quite a while now: almost 10 years with the former and 20 with the latter. Throughout this time we've been very happy together. The world around us simply makes sense and we can describe it using our very own cute words, like "classes", "features", and "inheritance".
However, shameful as it seems, from 2008 to 2011 I got involved with something new: RDF (Resource Description Framework) and, ultimately, the concepts of linked data. Although enticed by it, at first I was stubborn and tried to picture the new as a mere nuance of the old. Big mistake! When I finally opened my eyes, I was greeted by a fascinating way to express information. A way that is quite different from what I was used to and, moreover, amazingly complex despite its apparent simplicity.
My goal with this talk is not only to introduce the basic concepts of RDF (which are very few actually), but, more importantly, to highlight what I see as the key differences between RDF and the (awesome) Object Oriented concepts we've been using for so long. Speaking from real experience, not identifying these differences can translate to months of painful frustration while trying to grasp RDF to apply it on a project which deadline is fast approaching. Also, being aware of such differences is quite valuable when considering if RDF is applicable to a particular design or implementation.
As for the cheating, worry not. EMF is extremely forgiving and welcomes me back with open arms as soon as I need it ;-)