{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:27:26Z","timestamp":1750307246594,"version":"3.41.0"},"publisher-location":"New York, NY, USA","reference-count":18,"publisher":"ACM","license":[{"start":{"date-parts":[[2012,2,29]],"date-time":"2012-02-29T00:00:00Z","timestamp":1330473600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2012,2,29]]},"DOI":"10.1145\/2157136.2157266","type":"proceedings-article","created":{"date-parts":[[2012,3,6]],"date-time":"2012-03-06T13:18:26Z","timestamp":1331039906000},"page":"439-444","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":6,"title":["A software craftsman's approach to data structures"],"prefix":"10.1145","author":[{"given":"Matti","family":"Luukkainen","sequence":"first","affiliation":[{"name":"University of Helsinki, Helsinki, Finland"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Arto","family":"Vihavainen","sequence":"additional","affiliation":[{"name":"University of Helsinki, Helsinki, Finland"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Thomas","family":"Vikberg","sequence":"additional","affiliation":[{"name":"University of Helsinki, Helsinki, Finland"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2012,2,29]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/1508865.1508920"},{"key":"e_1_3_2_1_2_1","volume-title":"Data Structures and Algorithms","author":"Aho A. V.","year":"1983","unstructured":"A. V. Aho , J. E. Hopcroft , and J. Ullman . Data Structures and Algorithms . Addison-Wesley Longman Publishing Co., Inc. , 1983 . A. V. Aho, J. E. Hopcroft, and J. Ullman. Data Structures and Algorithms. Addison-Wesley Longman Publishing Co., Inc., 1983."},{"key":"e_1_3_2_1_3_1","volume-title":"Test Driven Development: By Example","author":"Beck K.","year":"2002","unstructured":"K. Beck . Test Driven Development: By Example . Addison-Wesley , 2002 . K. Beck. Test Driven Development: By Example. Addison-Wesley, 2002."},{"key":"e_1_3_2_1_4_1","volume-title":"Extreme Programming Explained: Embrace Change","author":"Beck K.","year":"2004","unstructured":"K. Beck and C. Andres . Extreme Programming Explained: Embrace Change ( 2 nd Edition). Addison-Wesley Professional , 2004 . K. Beck and C. Andres. Extreme Programming Explained: Embrace Change (2nd Edition). Addison-Wesley Professional, 2004.","edition":"2"},{"issue":"2","key":"e_1_3_2_1_5_1","first-page":"109","article-title":"Helping novice programming students succeed","volume":"22","author":"Black T. R.","year":"2006","unstructured":"T. R. Black . Helping novice programming students succeed . J. Comput. Small Coll. , 22 ( 2 ): 109 -- 114 , 2006 . T. R. Black. Helping novice programming students succeed. J. Comput. Small Coll., 22(2):109--114, 2006.","journal-title":"J. Comput. Small Coll."},{"key":"e_1_3_2_1_6_1","volume-title":"Effective Java","author":"Bloch J.","year":"2008","unstructured":"J. Bloch . Effective Java ( 2 nd Edition) (The Java Series). Prentice Hall , 2008 . J. Bloch. Effective Java (2nd Edition) (The Java Series). Prentice Hall, 2008.","edition":"2"},{"key":"e_1_3_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/1288580.1288595"},{"key":"e_1_3_2_1_8_1","first-page":"38","article-title":"Cognitive apprenticeship: making thinking visible","volume":"6","author":"Collins A.","year":"1991","unstructured":"A. Collins , J. S. Brown , and A. Holum . Cognitive apprenticeship: making thinking visible . American Educator , 6 : 38 -- 46 , 1991 . A. Collins, J. S. Brown, and A. Holum. Cognitive apprenticeship: making thinking visible. American Educator, 6:38--46, 1991.","journal-title":"American Educator"},{"key":"e_1_3_2_1_9_1","volume-title":"Introduction to Algorithms","author":"Cormen T.","year":"2009","unstructured":"T. Cormen , C. Leiserson , R. Rivest , and C. Stein . Introduction to Algorithms , 3 rd edition. The MIT Press , 2009 . T. Cormen, C. Leiserson, R. Rivest, and C. Stein. Introduction to Algorithms, 3rd edition. The MIT Press, 2009.","edition":"3"},{"key":"e_1_3_2_1_10_1","volume-title":"Refactoring: Improving the Design of Existing Code","author":"Fowler M.","year":"1999","unstructured":"M. Fowler , K. Beck , J. Brant , W. Opdyke , and D. Roberts . Refactoring: Improving the Design of Existing Code . Addison-Wesley Professional , 1999 . M. Fowler, K. Beck, J. Brant, W. Opdyke, and D. Roberts. Refactoring: Improving the Design of Existing Code. Addison-Wesley Professional, 1999."},{"key":"e_1_3_2_1_11_1","volume-title":"Data structures and algorithm analysis in C+","author":"Goodrich M. T.","year":"2010","unstructured":"M. T. Goodrich and R. Tamassia . Data structures and algorithm analysis in C+ , 5 th edition. Wiley , 2010 . M. T. Goodrich and R. Tamassia. Data structures and algorithm analysis in C+, 5th edition. Wiley, 2010.","edition":"5"},{"key":"e_1_3_2_1_12_1","volume-title":"The Pragmatic Programmer: From Journeyman to Master","author":"Hunt A.","year":"1999","unstructured":"A. Hunt and D. Thomas . The Pragmatic Programmer: From Journeyman to Master . Addison-Wesley Professional , 1999 . A. Hunt and D. Thomas. The Pragmatic Programmer: From Journeyman to Master. Addison-Wesley Professional, 1999."},{"key":"e_1_3_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/971300.971403"},{"key":"e_1_3_2_1_14_1","volume-title":"Clean Code: A Handbook of Agile Software Craftsmanship","author":"Martin R. C.","year":"2008","unstructured":"R. C. Martin . Clean Code: A Handbook of Agile Software Craftsmanship . Prentice Hall , 2008 . R. C. Martin. Clean Code: A Handbook of Agile Software Craftsmanship. Prentice Hall, 2008."},{"key":"e_1_3_2_1_15_1","volume-title":"Software Craftsmanship: The New Imperative","author":"McBreen P.","year":"2001","unstructured":"P. McBreen . Software Craftsmanship: The New Imperative . Prentice Hall , 2001 . P. McBreen. Software Craftsmanship: The New Imperative. Prentice Hall, 2001."},{"key":"e_1_3_2_1_16_1","volume-title":"Algorithms","author":"Sedgewick R.","year":"2011","unstructured":"R. Sedgewick and K. Wayne . Algorithms , 4 th edition. Addison-Wesley , 2011 . R. Sedgewick and K. Wayne. Algorithms, 4th edition. Addison-Wesley, 2011.","edition":"4"},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/1953163.1953196"},{"key":"e_1_3_2_1_18_1","volume-title":"Data Structures & Problem Solving Using Java","author":"Weiss M. A.","year":"2009","unstructured":"M. A. Weiss . Data Structures & Problem Solving Using Java , 4 th edition. Addison-Wesley , 2009 . M. A. Weiss. Data Structures & Problem Solving Using Java, 4th edition. Addison-Wesley, 2009.","edition":"4"}],"event":{"name":"SIGCSE '12: The 43rd ACM Technical Symposium on Computer Science Education","sponsor":["SIGCSE ACM Special Interest Group on Computer Science Education"],"location":"Raleigh North Carolina USA","acronym":"SIGCSE '12"},"container-title":["Proceedings of the 43rd ACM technical symposium on Computer Science Education"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2157136.2157266","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2157136.2157266","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T10:52:06Z","timestamp":1750243926000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2157136.2157266"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012,2,29]]},"references-count":18,"alternative-id":["10.1145\/2157136.2157266","10.1145\/2157136"],"URL":"https:\/\/doi.org\/10.1145\/2157136.2157266","relation":{},"subject":[],"published":{"date-parts":[[2012,2,29]]},"assertion":[{"value":"2012-02-29","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}