{"title":"《为困惑的人编程》书评","authors":"S. Nagaraj","doi":"10.1145/3586165.3586170","DOIUrl":null,"url":null,"abstract":"This book is about learning to program while solving puzzles. The motivation for the author to use this approach is to gain better attention from students, many of whom do not like to program just for the sake of programming. As mentioned in the informative preface, this book reflects the author's \"attempt at teaching programming by building a bridge between the recreational world of algorithmic puzzles and the pragmatic world of computer programming,\" because the same analytical skills required for puzzle solving are also needed for \"translating specifications into programming constructs, as well as discovering errors in early versions of code, called the debugging process.\"","PeriodicalId":387985,"journal":{"name":"ACM SIGACT News","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2023-02-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Review of Programming for the Puzzled\",\"authors\":\"S. Nagaraj\",\"doi\":\"10.1145/3586165.3586170\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"This book is about learning to program while solving puzzles. The motivation for the author to use this approach is to gain better attention from students, many of whom do not like to program just for the sake of programming. As mentioned in the informative preface, this book reflects the author's \\\"attempt at teaching programming by building a bridge between the recreational world of algorithmic puzzles and the pragmatic world of computer programming,\\\" because the same analytical skills required for puzzle solving are also needed for \\\"translating specifications into programming constructs, as well as discovering errors in early versions of code, called the debugging process.\\\"\",\"PeriodicalId\":387985,\"journal\":{\"name\":\"ACM SIGACT News\",\"volume\":null,\"pages\":null},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2023-02-28\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"ACM SIGACT News\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/3586165.3586170\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"ACM SIGACT News","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3586165.3586170","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
This book is about learning to program while solving puzzles. The motivation for the author to use this approach is to gain better attention from students, many of whom do not like to program just for the sake of programming. As mentioned in the informative preface, this book reflects the author's "attempt at teaching programming by building a bridge between the recreational world of algorithmic puzzles and the pragmatic world of computer programming," because the same analytical skills required for puzzle solving are also needed for "translating specifications into programming constructs, as well as discovering errors in early versions of code, called the debugging process."