This article adds to the discussion on knowledge management (KM) by focusing on the process of knowledge sharing as a vital part of KM. The article focuses on the relationship between knowledge, learning, communication, and participation in action, and the role of social interaction and technical media in the knowledge sharing process. We develop an initial theoretical framework of knowledge sharing on the basis of a literature study. Drawing on an empirical study of knowledge sharing in a software development company, we discuss what supports and what hinders knowledge sharing in software development. Finally, we use this knowledge to improve the theoretical framework.