The document discusses conceptual modeling and its importance for software development. It argues that conceptual modeling is needed to understand the target real world domain and share that understanding with stakeholders. The Shlaer-Mellor method forms the basis for conceptual modeling but the author has refined it based on experience to apply more broadly. From a philosophical perspective, conceptual modeling can describe the real world in a way that different subjectivities can agree on through establishing common structures and relationships. From a mathematical perspective, conceptual modeling constructs can be formalized through category theory. The author is working to evangelize conceptual modeling and develop code generation tools to support it.