diff --git a/wallace/sources.py b/wallace/sources.py
index <HASH>..<HASH> 100644
--- a/wallace/sources.py
+++ b/wallace/sources.py
@@ -9,14 +9,14 @@ class Source(Node):
 
     uuid = Column(String(32), ForeignKey("node.uuid"), primary_key=True)
 
-    def create_information(self, what=None, to_whom=None):
+    def create_information(self):
         """Generate new information."""
         raise NotImplementedError(
             "You need to overwrite the default create_information.")
 
     def transmit(self, what=None, to_whom=None):
-        self.create_information(what=what, to_whom=to_whom)
-        super(Source, self).transmit(to_whom=to_whom, what=what)
+        info = self.create_information()
+        super(Source, self).transmit(to_whom=to_whom, what=info)
 
 
 class RandomBinaryStringSource(Source):
@@ -26,11 +26,12 @@ class RandomBinaryStringSource(Source):
 
     __mapper_args__ = {"polymorphic_identity": "random_binary_string_source"}
 
-    def create_information(self, what=None, to_whom=None):
-        Info(
+    def create_information(self):
+        info = Info(
             origin=self,
             origin_uuid=self.uuid,
             contents=self._binary_string())
+        return info
 
     def _binary_string(self):
         return "".join([str(random.randint(0, 1)) for i in range(2)])
Fix bug that arose through grammar tweaking