I have one big qualm with the way feeds are handled in TG.
Each time you create a feed, you must also create a new class
associated with that feed. If you were writing in Java, you'd be
implementing an interface where the get_feed_data is the only function
you need to implement. Another way to look at it is you are overriding
an abstract method.
But this isn't Java or C++; this is Python, and we have the wonderful
ability to pass functions as arguments. Wouldn't it be much more
pythonic to do this:
class Controller:
def implement_function():
...blah...
feed = FeedObject( implement_function )
instead of this:
class feed( FeedObject ):
def get_feed_data( self ):
... rewrite implement function ....
class Controller:
feed = feed()
This would possibly be a breaking change to the FeedObject, but feels
much more natural. Further, it would be a closer match to how CatWalk
works.