Abstract:
We present an approach to modeling computer programming as a cognitive process. In particular, we apply Piaget’s four-stage model of cognitive development to study how programming is learnt by adult programmers. For this purpose we survey software developers at different stages in their career. In order to evaluate our approach, we analyze the gathered data through formal methods. Our approach is interdisciplinary in that it incorporates philosophical, psychological, cognitive and computer science aspects.
The results from this study will be used as a starting point for investigating the role of deeper cognitive processes underlying programming, which can offer hints to design improved neural architectures inspired from biology and cognitive science. Our vision is to use such models to generate programs automatically given the intention of the user.
The preliminary goal is to set connections between empirical evidence of how programmers write code, the cognitive processes implicated in software development and the corresponding mechanisms integrated in modern neural architectures. In the future, we plan to explore the potential of such enhanced neural models to solve tasks involving generation of computer programs.
The results from this study will be used as a starting point for investigating the role of deeper cognitive processes underlying programming, which can offer hints to design improved neural architectures inspired from biology and cognitive science. Our vision is to use such models to generate programs automatically given the intention of the user.
The preliminary goal is to set connections between empirical evidence of how programmers write code, the cognitive processes implicated in software development and the corresponding mechanisms integrated in modern neural architectures. In the future, we plan to explore the potential of such enhanced neural models to solve tasks involving generation of computer programs.