{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,16]],"date-time":"2026-03-16T20:38:52Z","timestamp":1773693532645,"version":"3.50.1"},"reference-count":125,"publisher":"Springer Science and Business Media LLC","issue":"3","license":[{"start":{"date-parts":[[2024,4,3]],"date-time":"2024-04-03T00:00:00Z","timestamp":1712102400000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2024,4,3]],"date-time":"2024-04-03T00:00:00Z","timestamp":1712102400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/501100006349","name":"Bilkent University","doi-asserted-by":"crossref","id":[{"id":"10.13039\/501100006349","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Empir Software Eng"],"published-print":{"date-parts":[[2024,5]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>Code comments play a vital role in source code comprehension and software maintainability. It is common for developers to write comments to explain a code snippet, and commenting code is generally considered a good practice in software engineering. However, low-quality comments can have a detrimental effect on software quality or be ineffective for code understanding. This study aims to create a taxonomy of inline code comment smells and determine how frequently each smell type occurs in software projects. We conducted a multivocal literature review to define the initial taxonomy of inline comment smells. Afterward, we manually labeled 2447 inline comments from eight open-source projects where half of them were Java, and another half were Python projects. We created a taxonomy of 11 inline code comment smell types and found out that the smells exist in both Java and Python projects with varying degrees. Moreover, we conducted an online survey with 41 software practitioners to learn their opinions on these smells and their impact on code comprehension and software maintainability. The survey respondents generally agreed with the taxonomy; however, they reported that some smell types might have a positive effect on code comprehension in certain scenarios. We also opened pull requests and issues fixing the comment smells in the sampled projects, where we got a 27% acceptance rate. We share our manually labeled dataset online and provide implications for software engineering practitioners, researchers, and educators.<\/jats:p>","DOI":"10.1007\/s10664-023-10425-5","type":"journal-article","created":{"date-parts":[[2024,4,3]],"date-time":"2024-04-03T15:02:05Z","timestamp":1712156525000},"update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":9,"title":["Taxonomy of inline code comment smells"],"prefix":"10.1007","volume":"29","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-2932-4976","authenticated-orcid":false,"given":"Elgun","family":"Jabrayilzade","sequence":"first","affiliation":[]},{"given":"Ayda","family":"Yurto\u011flu","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-5550-7816","authenticated-orcid":false,"given":"Eray","family":"T\u00fcz\u00fcn","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2024,4,3]]},"reference":[{"key":"10425_CR1","unstructured":"Commenting (2023) https:\/\/www.cs.utah.edu\/~germain\/PPS\/Topics\/commenting.html. Accessed 10-04-2022"},{"key":"10425_CR2","unstructured":"Writing code comments (2023) https:\/\/web.archive.org\/web\/20210327171829\/https:\/\/developers.google.com\/tech-writing\/two\/code-comments. Accessed 28-04-2022"},{"key":"10425_CR3","unstructured":"Are code comments a code smell? (2018). https:\/\/steemit.com\/programming\/@beggars\/are-code-comments-a-code-smell. Accessed 28-04-2022"},{"key":"10425_CR4","unstructured":"Adams T (2020) How to write a good code comment. https:\/\/www.pullrequest.com\/blog\/how-to-write-a-good-code-comment\/. Accessed 28-04-2022"},{"key":"10425_CR5","unstructured":"Aguilar JM (2008) 13 tips to comment your code. https:\/\/www.devtopics.com\/13-tips-to-comment-your-code\/. Accessed 28-04-2022"},{"key":"10425_CR6","unstructured":"Allain A (2023) The hows and whys of commenting c and c++ code. https:\/\/www.cprogramming.com\/tutorial\/comments.html. Accessed 28-04-2022"},{"key":"10425_CR7","unstructured":"Allamanis M, Tarlow D, Gordon A, Wei Y (2015) Bimodal modelling of source code and natural language. In: International conference on machine learning, PMLR pp 2123\u20132132"},{"key":"10425_CR8","unstructured":"Asay M (2019) The pros and cons (but mostly pros) of comments in code. https:\/\/www.techrepublic.com\/article\/the-pros-and-cons-but-mostly-pros-of-comments-in-code\/. Accessed 28-04-2022"},{"key":"10425_CR9","unstructured":"Atwood J (2006) Code tells you how, comments tell you why. https:\/\/blog.codinghorror.com\/code-tells-you-how-comments-tell-you-why\/. Accessed 28-04-2022"},{"key":"10425_CR10","doi-asserted-by":"crossref","unstructured":"Blasi A, Goffi A, Kuznetsov K, Gorla A, Ernst MD, Pezz\u00e8 M, Castellanos SD (2018) Translating code comments to procedure specifications. In: Proceedings of the 27th ACM SIGSOFT international symposium on software testing and analysis, pp 242\u2013253","DOI":"10.1145\/3213846.3213872"},{"key":"10425_CR11","doi-asserted-by":"publisher","first-page":"111069","DOI":"10.1016\/j.jss.2021.111069","volume":"182","author":"A Blasi","year":"2021","unstructured":"Blasi A, Stulova N, Gorla A, Nierstrasz O (2021) Replicomment: identifying clones in code comments. J Syst Softw 182:111069","journal-title":"J Syst Softw"},{"key":"10425_CR12","unstructured":"Boccara J (2017) To comment or not to comment? \/\/ that is the question. https:\/\/www.fluentcpp.com\/2017\/05\/02\/to-comment-or-not-to-comment-that-is-the-question\/. Accessed 28-04-2022"},{"key":"10425_CR13","unstructured":"Boswell D, Foucher T (2011) The Art of Readable Code: Simple and Practical Techniques for Writing Better Code. O\u2019Reilly Media. https:\/\/books.google.com.tr\/books?id=RPryrfu1iP4C"},{"key":"10425_CR14","unstructured":"Brack F (2016) Code comment is a smell. https:\/\/fagnerbrack.com\/code-comment-is-a-smell-4e8d78b0415b. Accessed 28-04-2022"},{"key":"10425_CR15","unstructured":"Chun C, O\u2019Neil K, Young K, Christoph JN (2023) Writing code and code comments. https:\/\/soundwriting.pugetsound.edu\/pugetsound\/subsection-code.html. Accessed 03-10-2022"},{"key":"10425_CR16","volume-title":"Sampling techniques","author":"WG Cochran","year":"2007","unstructured":"Cochran WG (2007) Sampling techniques. John Wiley & Sons"},{"issue":"1","key":"10425_CR17","doi-asserted-by":"publisher","first-page":"37","DOI":"10.1177\/001316446002000104","volume":"20","author":"J Cohen","year":"1960","unstructured":"Cohen J (1960) A coefficient of agreement for nominal scales. Educ Psychol Measur 20(1):37\u201346","journal-title":"Educ Psychol Measur"},{"issue":"2","key":"10425_CR18","doi-asserted-by":"publisher","first-page":"751","DOI":"10.1007\/s11219-016-9347-1","volume":"26","author":"A Corazza","year":"2018","unstructured":"Corazza A, Maggio V, Scanniello G (2018) Coherence of comments and method implementations: a dataset and an empirical investigation. Software Qual J 26(2):751\u2013777","journal-title":"Software Qual J"},{"key":"10425_CR19","unstructured":"Cronin M (2019) What makes a good code comment? https:\/\/itnext.io\/what-makes-a-good-code-comment-5267debd2c24. Accessed 28-04-2022"},{"key":"10425_CR20","unstructured":"Devlin J, Chang MW, Lee K, Toutanova K (2019) BERT: Pre-training of deep bidirectional transformers for language understanding. In: NAACL"},{"key":"10425_CR21","unstructured":"Dietrich E (2017) Is there a correct way to comment your code? https:\/\/blog.ndepend.com\/correct-way-comment-code\/. Accessed 28-04-2022"},{"key":"10425_CR22","unstructured":"Dodds KC (2015) Please, don\u2019t commit commented out code. https:\/\/kentcdodds.com\/blog\/please-dont-commit-commented-out-code. Accessed 28-04-2022"},{"key":"10425_CR23","doi-asserted-by":"publisher","first-page":"106737","DOI":"10.1016\/j.infsof.2021.106737","volume":"142","author":"E Do\u011fan","year":"2022","unstructured":"Do\u011fan E, T\u00fcz\u00fcn E (2022) Towards a taxonomy of code review smells. Inf Softw Technol 142:106737","journal-title":"Inf Softw Technol"},{"key":"10425_CR24","doi-asserted-by":"crossref","unstructured":"Fluri B, Wursch M, Gall HC (2007) Do code and comments co-evolve? on the relation between source code and comment changes. In: 14th working conference on reverse engineering (WCRE 2007), IEEE pp 70\u201379","DOI":"10.1109\/WCRE.2007.21"},{"key":"10425_CR25","unstructured":"Fronczak S (2018) What are the biggest code commenting fails you\u2019ve seen? https:\/\/blog.submain.com\/biggest-code-commenting-fails\/. Accessed 28-04-2022"},{"key":"10425_CR26","unstructured":"Fuex J (2011) 5 best practices for commenting your code. https:\/\/improvingsoftware.com\/2011\/06\/27\/5-best-practices-for-commenting-your-code\/. Accessed 28-04-2022"},{"key":"10425_CR27","doi-asserted-by":"publisher","first-page":"101","DOI":"10.1016\/j.infsof.2018.09.006","volume":"106","author":"V Garousi","year":"2019","unstructured":"Garousi V, Felderer M, M\u00e4ntyl\u00e4 MV (2019) Guidelines for including grey literature and conducting multivocal literature reviews in software engineering. Inf Softw Technol 106:101\u2013121","journal-title":"Inf Softw Technol"},{"key":"10425_CR28","doi-asserted-by":"publisher","first-page":"2","DOI":"10.1016\/j.jss.2017.12.013","volume":"138","author":"V Garousi","year":"2018","unstructured":"Garousi V, K\u00fc\u00e7\u00fck B (2018) Smells in software test code: A survey of knowledge in industry and academia. J Syst Softw 138:2\u201381","journal-title":"J Syst Softw"},{"key":"10425_CR29","unstructured":"Geiser M (2017) Why we comment code. https:\/\/dzone.com\/articles\/why-we-comment-code-yet-another-code-commenting-ar. Accessed 28-04-2022"},{"issue":"1","key":"10425_CR30","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1186\/s13643-015-0125-0","volume":"4","author":"K Godin","year":"2015","unstructured":"Godin K, Stapleton J, Kirkpatrick SI, Hanning RM, Leatherdale ST (2015) Applying systematic review search methods to the grey literature: a case study examining guidelines for school-based breakfast programs in canada. Syst Rev 4(1):1\u201310","journal-title":"Syst Rev"},{"key":"10425_CR31","doi-asserted-by":"crossref","unstructured":"Goffi A, Gorla A, Ernst MD, Pezz\u00e8 M (2016) Automatic generation of oracles for exceptional behaviors. In: Proceedings of the 25th international symposium on software testing and analysis, pp 213\u2013224","DOI":"10.1145\/2931037.2931061"},{"key":"10425_CR32","doi-asserted-by":"crossref","unstructured":"Gvero T, Kuncak V (2015) Synthesizing java expressions from free-form queries. In: Proceedings of the 2015 ACM SIGPLAN international conference on object-oriented programming, systems, languages, and applications, pp 416\u2013432","DOI":"10.1145\/2814270.2814295"},{"key":"10425_CR33","doi-asserted-by":"crossref","unstructured":"Haouari D, Sahraoui H, Langlais P (2011) How good is your comment? a study of comments in java programs. In: 2011 International symposium on empirical software engineering and measurement, IEEE pp 137\u2013146","DOI":"10.1109\/ESEM.2011.22"},{"key":"10425_CR34","unstructured":"Hartzman CS, Austin CF (1993) Maintenance productivity: Observations based on an experience in a large system environment. In: Proceedings of the 1993 conference of the centre for advanced studies on collaborative research: software engineering-vol 1, pp 138\u2013170"},{"key":"10425_CR35","unstructured":"Heartin (2015) Good comments and bad comments in your program. https:\/\/www.javajee.com\/good-comments-and-bad-comments-in-your-program. Accessed 28-04-2022"},{"key":"10425_CR36","unstructured":"Henke M (2018) 4 reasons why we need code comments. https:\/\/blog.submain.com\/4-reasons-need-code-comments\/. Accessed 28-04-2022"},{"key":"10425_CR37","unstructured":"Herath P (2020) 9 tips that promote clean code: Writing comments in a good way. https:\/\/javascript.plainenglish.io\/clean-code-writing-comments-in-a-good-way-8203c7d80c65\/. Accessed 28-04-2022"},{"key":"10425_CR38","unstructured":"Hilton P (2014) 3 kinds of good comments. https:\/\/hilton.org.uk\/blog\/3-kinds-of-good-comments. Accessed 28-04-2022"},{"key":"10425_CR39","unstructured":"Hilton P (2014) 7 ways to write bad comments. https:\/\/hilton.org.uk\/blog\/7-ways-to-write-bad-comments. Accessed 28-04-2022"},{"issue":"8","key":"10425_CR40","doi-asserted-by":"publisher","first-page":"1735","DOI":"10.1162\/neco.1997.9.8.1735","volume":"9","author":"S Hochreiter","year":"1997","unstructured":"Hochreiter S, Schmidhuber J (1997) Long short-term memory. Neural Comput 9(8):1735\u20131780","journal-title":"Neural Comput"},{"key":"10425_CR41","unstructured":"Hofmann F (2023) Commenting python code. https:\/\/stackabuse.com\/commenting-python-code\/. Accessed 28-04-2022"},{"issue":"1","key":"10425_CR42","doi-asserted-by":"publisher","first-page":"88","DOI":"10.1109\/TR.2019.2931725","volume":"69","author":"Y Huang","year":"2019","unstructured":"Huang Y, Hu X, Jia N, Chen X, Xiong Y, Zheng Z (2019) Learning code context information to predict comment locations. IEEE Trans Reliab 69(1):88\u2013105","journal-title":"IEEE Trans Reliab"},{"key":"10425_CR43","unstructured":"Huy NVK (2021) Code review: Please remove comments from your code. https:\/\/levelup.gitconnected.com\/code-review-please-remove-comments-from-your-code-2c4de8cf9b13. Accessed 28-04-2022"},{"key":"10425_CR44","doi-asserted-by":"crossref","unstructured":"Iammarino M, Aversano L, Bernardi ML, Cimitile M (2020) A topic modeling approach to evaluate the comments consistency to source code. In: 2020 International joint conference on neural networks (IJCNN), IEEE pp 1\u20138","DOI":"10.1109\/IJCNN48605.2020.9207651"},{"key":"10425_CR45","doi-asserted-by":"crossref","unstructured":"Jabrayilzade E, G\u00fcrkan O, T\u00fcz\u00fcn E (2021) Towards a taxonomy of inline code comment smells. In: 2021 IEEE 21st International working conference on source code analysis and manipulation (SCAM), IEEE pp 131\u2013135","DOI":"10.1109\/SCAM52516.2021.00024"},{"key":"10425_CR46","unstructured":"Januska A (2012) How to write code comments well. https:\/\/web.archive.org\/web\/20191223045018\/https:\/\/antjanus.com\/blog\/daily-gibberish\/best-comment-separator\/. Accessed 28-04-2022"},{"key":"10425_CR47","doi-asserted-by":"crossref","unstructured":"Jiang ZM, Hassan AE (2006) Examining the evolution of code comments in postgresql. In: Proceedings of the 2006 international workshop on mining software repositories, pp 179\u2013180","DOI":"10.1145\/1137983.1138030"},{"key":"10425_CR48","unstructured":"Keele S, et\u00a0al. (2007) Guidelines for performing systematic literature reviews in software engineering. Tech rep, Technical report, Ver 2.3 EBSE Technical Report. EBSE"},{"key":"10425_CR49","unstructured":"Keeton B (2019) How to comment your code like a pro: Best practices and good habits. https:\/\/www.elegantthemes.com\/blog\/wordpress\/how-to-comment-your-code-like-a-pro-best-practices-and-good-habits. Accessed 28-04-2022"},{"key":"10425_CR50","doi-asserted-by":"crossref","unstructured":"Khamis N, Witte R, Rilling J (2010) Automatic quality assessment of source code comments: the javadocminer. In: International Conference on application of natural language to information systems, Springer pp 68\u201379","DOI":"10.1007\/978-3-642-13881-2_7"},{"key":"10425_CR51","doi-asserted-by":"crossref","unstructured":"Khan JY, Khondaker MTI, Uddin G, Iqbal A (2021) Automatic detection of five API documentation smells: Practitioners\u2019 perspectives. In: 2021 IEEE International conference on software analysis, evolution and reengineering (SANER), IEEE pp 318\u2013329","DOI":"10.1109\/SANER50967.2021.00037"},{"issue":"12","key":"10425_CR52","doi-asserted-by":"publisher","first-page":"971","DOI":"10.1109\/TSE.2006.116","volume":"32","author":"AJ Ko","year":"2006","unstructured":"Ko AJ, Myers BA, Coblenz MJ, Aung HH (2006) An exploratory study of how developers seek, relate, and collect relevant information during software maintenance tasks. IEEE Trans Software Eng 32(12):971\u2013987","journal-title":"IEEE Trans Software Eng"},{"key":"10425_CR53","unstructured":"Koornhof P (2015) Code comments are lies. https:\/\/www.codeproject.com\/Articles\/872073\/Code-Comments-are-Lies. Accessed 28-04-2022"},{"key":"10425_CR54","unstructured":"Krasnov M (2020) Improve code readability by getting rid of comments. https:\/\/everyday.codes\/best-practices\/improve-code-readability-by-getting-rid-of-comments\/. Accessed 28-04-2022"},{"key":"10425_CR55","unstructured":"Kunk J (2011) To comment or not to comment. https:\/\/visualstudiomagazine.com\/articles\/2011\/01\/06\/to-comment-or-not-to-comment.aspx. Accessed 10-04-2022"},{"key":"10425_CR56","unstructured":"Kunk J (2011) To comment or not to comment. https:\/\/visualstudiomagazine.com\/Kunk0211. Accessed 28-04-2022"},{"key":"10425_CR57","unstructured":"Larson D (2023) Coding and comment style. https:\/\/mitcommlab.mit.edu\/broad\/commkit\/coding-and-comment-style\/. Accessed 28-04-2022"},{"key":"10425_CR58","doi-asserted-by":"crossref","unstructured":"LaToza TD, Venolia G, DeLine R (2006) Maintaining mental models: a study of developer work habits. In: Proceedings of the 28th international conference on software engineering, pp 492\u2013501","DOI":"10.1145\/1134285.1134355"},{"key":"10425_CR59","unstructured":"Lelli F (2019) Best practices on how to write comments in your code. https:\/\/francescolelli.info\/programming\/best-practices-on-how-to-write-comments-in-your-code\/. Accessed 28-04-2022"},{"key":"10425_CR60","doi-asserted-by":"publisher","unstructured":"Liu Z, Xia X, Lo D, Yan M, Li S (2021) Just-in-time obsolete comment detection and update. IEEE Transactions on Software Engineering pp 1\u20131. https:\/\/doi.org\/10.1109\/TSE.2021.3138909","DOI":"10.1109\/TSE.2021.3138909"},{"key":"10425_CR61","doi-asserted-by":"crossref","unstructured":"Liu Z, Xia X, Yan M, Li S (2020) Automating just-in-time comment updating. In: Proceedings of the 35th IEEE\/ACM International conference on automated software engineering, pp 585\u2013597","DOI":"10.1145\/3324884.3416581"},{"key":"10425_CR62","doi-asserted-by":"crossref","unstructured":"Louis A, Dash SK, Barr ET, Ernst MD, Sutton C (2020) Where should I comment my code? a dataset and model for predicting locations that need comments. In: Proceedings of the ACM\/IEEE 42nd international conference on software engineering: new ideas and emerging results, pp 21\u201324","DOI":"10.1145\/3377816.3381736"},{"key":"10425_CR63","unstructured":"Louis A, Dash SK, Barr ET, Sutton C (2018) Deep learning to detect redundant method comments. arXiv preprint arXiv:1806.04616"},{"key":"10425_CR64","doi-asserted-by":"crossref","unstructured":"Malik H, Chowdhury I, Tsou HM, Jiang ZM, Hassan AE (2008)Understanding the rationale for updating function\u2019s comment. In: 2008 IEEE International conference on software maintenance, IEEE pp 167\u2013176","DOI":"10.1109\/ICSM.2008.4658065"},{"key":"10425_CR65","unstructured":"Marcus R (2018) Good comment, bad comment. https:\/\/rmarcus.info\/blog\/2018\/11\/05\/good-bad-comment.html. Accessed 28-04-2022"},{"key":"10425_CR66","unstructured":"Martin RC (2009) Clean code: a handbook of agile software craftsmanship. Pearson Education"},{"key":"10425_CR67","unstructured":"McDonald JC (2019) To comment or not to comment? https:\/\/dev.to\/codemouse92\/to-comment-or-not-to-comment-3f7h. Accessed 28-04-2022"},{"key":"10425_CR68","unstructured":"McEwen M (2018) I\u2019ll delete your commented code without reading it and i\u2019m not sorry. https:\/\/blog.submain.com\/delete-commented-code-without-reading\/. Accessed 28-04-2022"},{"key":"10425_CR69","doi-asserted-by":"publisher","unstructured":"Medeiros F, Lima G, Amaral G, Apel S, K\u00e4stner C, Ribeiro M, Gheyi R (2019) An investigation of misunderstanding code patterns in c open-source software projects 24(4). https:\/\/doi.org\/10.1007\/s10664-018-9666-x. https:\/\/doi.org\/10.1007\/s10664-018-9666-x","DOI":"10.1007\/s10664-018-9666-x"},{"key":"10425_CR70","doi-asserted-by":"crossref","unstructured":"Misra V, Reddy JSK, Chimalakonda S (2020) Is there a correlation between code comments and issues? an exploratory study. In: Proceedings of the 35th Annual ACM symposium on applied computing, pp 110\u2013117","DOI":"10.1145\/3341105.3374009"},{"key":"10425_CR71","unstructured":"Molloy S (2020) Clean code - code versus comments. https:\/\/nebulaconsulting.co.uk\/insights\/code-over-comments\/. Accessed 28-04-2022"},{"key":"10425_CR72","unstructured":"Morlion P (2017) Commented out code is junk in your codebase. https:\/\/blog.submain.com\/commented-out-code-junk-codebase\/. Accessed 28-04-2022"},{"key":"10425_CR73","unstructured":"Nayuki (2018) Don\u2019t share commented-out code. https:\/\/www.nayuki.io\/page\/dont-share-commented-out-code. Accessed 28-04-2022"},{"issue":"2","key":"10425_CR74","doi-asserted-by":"publisher","first-page":"127","DOI":"10.1353\/pla.2006.0026","volume":"6","author":"C Neuhaus","year":"2006","unstructured":"Neuhaus C, Neuhaus E, Asher A, Wrede C (2006) The depth and breadth of google scholar: An empirical study. Portal Libraries and the Academy 6(2):127\u2013141","journal-title":"Portal Libraries and the Academy"},{"key":"10425_CR75","unstructured":"Nguyen N (2020) Why good codes don\u2019t need comments. https:\/\/towardsdatascience.com\/why-good-codes-dont-need-comments-92f58de19ad2. Accessed 28-04-2022"},{"key":"10425_CR76","doi-asserted-by":"publisher","first-page":"1418","DOI":"10.1007\/s10664-018-9664-z","volume":"24","author":"S Nielebock","year":"2019","unstructured":"Nielebock S, Krolikowski D, Kr\u00fcger J, Leich T, Ortmeier F (2019) Commenting source code: is it worth it for small programming tasks? Empir Softw Eng 24:1418\u20131457","journal-title":"Empir Softw Eng"},{"key":"10425_CR77","unstructured":"Norlander B (2019) Stop writing code comments. https:\/\/medium.com\/@bpnorlander\/stop-writing-code-comments-28fef5272752. Accessed 28-04-2022"},{"key":"10425_CR78","unstructured":"Ousterhout J (2015) Writing comments. https:\/\/web.stanford.edu\/~ouster\/cgi-bin\/cs190-spring15\/lecture.php?topic=comments. Accessed 10-04-2022"},{"key":"10425_CR79","doi-asserted-by":"crossref","unstructured":"Padioleau Y, Tan L, Zhou Y (2009) Listening to programmers-taxonomies and characteristics of comments in operating system code. In: 2009 IEEE 31st international conference on software engineering, IEEE pp 331\u2013341","DOI":"10.1109\/ICSE.2009.5070533"},{"key":"10425_CR80","doi-asserted-by":"crossref","unstructured":"Pandita R, Xiao X, Zhong H, Xie T, Oney S, Paradkar A (2012) Inferring method specifications from natural language api descriptions. In: 2012 34th international conference on software engineering (ICSE), IEEE pp 815\u2013825","DOI":"10.1109\/ICSE.2012.6227137"},{"key":"10425_CR81","doi-asserted-by":"crossref","unstructured":"Panthaplackel S, Li JJ, Gligori\u0107 M, Mooney RJ (2021) Deep just-in-time inconsistency detection between comments and source code. In: AAAI","DOI":"10.1609\/aaai.v35i1.16119"},{"key":"10425_CR82","doi-asserted-by":"crossref","unstructured":"Panthaplackel S, Nie P, Gligoric M, Li JJ, Mooney RJ (2020) Learning to update natural language comments based on code changes. arXiv preprint arXiv:2004.12169","DOI":"10.18653\/v1\/2020.acl-main.168"},{"key":"10425_CR83","unstructured":"Parashar A (2020) How to write comments the right way. https:\/\/levelup.gitconnected.com\/how-to-write-comments-the-right-way-8d13b24804bd. Accessed 28-04-2022"},{"key":"10425_CR84","doi-asserted-by":"crossref","unstructured":"Pascarella L, Bacchelli A (2017) Classifying code comments in java open-source software systems. In: 2017 IEEE\/ACM 14th international conference on mining software repositories (MSR), IEEE pp 227\u2013237","DOI":"10.1109\/MSR.2017.63"},{"key":"10425_CR85","unstructured":"Paul J (2021) 10 best practices to follow while writing code comments. https:\/\/javarevisited.blogspot.com\/2011\/08\/code-comments-java-best-practices.html#axzz7RlqtwW2w. Accessed 28-04-2022"},{"key":"10425_CR86","doi-asserted-by":"publisher","unstructured":"Qamar KA, S\u00fcl\u00fcn E, T\u00fcz\u00fcn E (2022) Taxonomy of bug tracking process smells: Perceptions of practitioners and an empirical analysis. Inf Softw Technol 150:106972. https:\/\/doi.org\/10.1016\/j.infsof.2022.106972, www.sciencedirect.com\/science\/article\/pii\/S0950584922001094","DOI":"10.1016\/j.infsof.2022.106972"},{"key":"10425_CR87","doi-asserted-by":"crossref","unstructured":"Rabbi F, Siddik MS (2020) Detecting code comment inconsistency using siamese recurrent network. In: Proceedings of the 28th international conference on program comprehension, pp 371\u2013375","DOI":"10.1145\/3387904.3389286"},{"key":"10425_CR88","doi-asserted-by":"crossref","unstructured":"Rani P, Abukar S, Stulova N, Bergel A, Nierstrasz O (2021) Do comments follow commenting conventions? a case study in java and python. In: 2021 IEEE 21st International working conference on source code analysis and manipulation (SCAM), IEEE pp 165\u2013169","DOI":"10.1109\/SCAM52516.2021.00028"},{"issue":"2","key":"10425_CR89","doi-asserted-by":"publisher","first-page":"64","DOI":"10.1145\/1053331.1053354","volume":"3","author":"J Raskin","year":"2005","unstructured":"Raskin J (2005) Comments are more important than code: The thorough use of internal documentation is one of the most-overlooked ways of improving software quality and speeding implementation. Queue 3(2):64\u201365","journal-title":"Queue"},{"key":"10425_CR90","doi-asserted-by":"crossref","unstructured":"Ratol IK, Robillard MP (2017) Detecting fragile comments. In: 2017 32nd IEEE\/ACM international conference on automated software engineering (ASE), IEEE pp 112\u2013122","DOI":"10.1109\/ASE.2017.8115624"},{"key":"10425_CR91","unstructured":"Reuveni D, Bourrillion K (2017) Code health: To comment or not to comment? https:\/\/testing.googleblog.com\/2017\/07\/code-health-to-comment-or-not-to-comment.html. Accessed 28-04-2022"},{"key":"10425_CR92","unstructured":"Saha K (2023) When should you add comments to your code? https:\/\/www.kinkarsaha.com\/when-should-you-add-comments-to-your-code\/. Accessed 28-04-2022"},{"key":"10425_CR93","unstructured":"Schults C (2017) Learn which types of comments should be avoided. https:\/\/carlosschults.net\/en\/types-of-comments-to-avoid\/. Accessed 28-04-2022"},{"key":"10425_CR94","unstructured":"Sen A (2023) Optimal survey length: How long survey lengths can affect data quality. https:\/\/medium.com\/think-cult\/optimal-survey-length-how-long-survey-lengths-can-affect-data-quality-f0d6398d25ee. Accessed 03-10-2022"},{"key":"10425_CR95","doi-asserted-by":"crossref","unstructured":"Shinyama Y, Arahori Y, Gondow K (2018) Analyzing code comments to boost program comprehension. In: 2018 25th Asia-Pacific software engineering conference (APSEC), IEEE pp 325\u2013334","DOI":"10.1109\/APSEC.2018.00047"},{"key":"10425_CR96","unstructured":"Sorens M (2017) Fighting evil in your code: Comments on comments. https:\/\/www.red-gate.com\/simple-talk\/opinion\/opinion-pieces\/fighting-evil-code-comments-comments\/. Accessed 28-04-2022"},{"key":"10425_CR97","unstructured":"Sourour B (2017) Putting comments in code: the good, the bad, and the ugly. https:\/\/www.freecodecamp.org\/news\/code-comments-the-good-the-bad-and-the-ugly-be9cc65fbf83\/. Accessed 28-04-2022"},{"key":"10425_CR98","doi-asserted-by":"crossref","unstructured":"de\u00a0Souza SCB, Anquetil N, de\u00a0Oliveira KM (2005) A study of the documentation essential to software maintenance. In: Proceedings of the 23rd annual international conference on Design of communication: documenting & designing for pervasive information, pp 68\u201375","DOI":"10.1145\/1085313.1085331"},{"key":"10425_CR99","unstructured":"Spertus E (2021) Best practices for writing code comments. https:\/\/stackoverflow.blog\/2021\/12\/23\/best-practices-for-writing-code-comments\/. Accessed 10-04-2022"},{"key":"10425_CR100","doi-asserted-by":"crossref","unstructured":"Sridhara G (2016) Automatically detecting the up-to-date status of todo comments in java programs. In: Proceedings of the 9th India software engineering conference, pp 16\u201325","DOI":"10.1145\/2856636.2856638"},{"key":"10425_CR101","doi-asserted-by":"crossref","unstructured":"Steidl D, Hummel B, Juergens E (2013) Quality analysis of source code comments. In: 2013 21st International conference on program comprehension (ICPC), IEEE pp 83\u201392","DOI":"10.1109\/ICPC.2013.6613836"},{"key":"10425_CR102","doi-asserted-by":"crossref","unstructured":"Storey MA, Ryall J, Bull RI, Myers D, Singer J (2008) Todo or to bug. In: 2008 ACM\/IEEE 30th International conference on software engineering, IEEE pp 251\u2013260","DOI":"10.1145\/1368088.1368123"},{"key":"10425_CR103","unstructured":"Struyf E (2021) To write code comments or not, it should not be a question. https:\/\/techcommunity.microsoft.com\/t5\/microsoft-365-pnp-blog\/to-write-code-comments-or-not-it-should-not-be-a-question\/ba-p\/2178622. Accessed 28-04-2022"},{"key":"10425_CR104","doi-asserted-by":"crossref","unstructured":"Stulova N, Blasi A, Gorla A, Nierstrasz, O (2020) Towards detecting inconsistent comments in java source code automatically. In: 2020 IEEE 20th International working conference on source code analysis and manipulation (SCAM), IEEE pp 65\u201369","DOI":"10.1109\/SCAM51674.2020.00012"},{"key":"10425_CR105","doi-asserted-by":"crossref","unstructured":"Tan L, Yuan D, Krishna G, Zhou Y (2007) \/* icomment: Bugs or bad comments?*. In: Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles, pp 145\u2013158","DOI":"10.1145\/1323293.1294276"},{"key":"10425_CR106","first-page":"49","volume":"7","author":"L Tan","year":"2007","unstructured":"Tan L, Yuan D, Zhou Y (2007) Hotcomments: how to make program comments more useful? HotOS 7:49\u201354","journal-title":"HotOS"},{"key":"10425_CR107","doi-asserted-by":"crossref","unstructured":"Tan SH, Marinov D, Tan L, Leavens GT (2012) @ tcomment: Testing javadoc comments to detect comment-code inconsistencies. In: 2012 IEEE Fifth international conference on software testing, verification and validation, IEEE pp 260\u2013269","DOI":"10.1109\/ICST.2012.106"},{"issue":"9","key":"10425_CR108","doi-asserted-by":"publisher","first-page":"1271","DOI":"10.1109\/32.6171","volume":"14","author":"T Tenny","year":"1988","unstructured":"Tenny T (1988) Program readability: Procedures versus comments. IEEE Trans Software Eng 14(9):1271","journal-title":"IEEE Trans Software Eng"},{"key":"10425_CR109","unstructured":"Tozzi C (2020) 5 code commenting don\u2019ts. https:\/\/www.itprotoday.com\/development-techniques-and-management\/5-code-commenting-donts. Accessed 28-04-2022"},{"key":"10425_CR110","unstructured":"Trivedi D (2019) Don\u2019t comment your code, rewrite it! https:\/\/devdeejay.medium.com\/dont-comment-your-code-rewrite-it-a145d655f87b. Accessed 28-04-2022"},{"key":"10425_CR111","unstructured":"Troisi M (2023) Useless comments can ruin your code reviews. here\u2019s how to erase them. https:\/\/techbeacon.com\/app-dev-testing\/useless-comments-can-ruin-your-code-reviews-heres-how-erase-them. Accessed 28-04-2022"},{"key":"10425_CR112","unstructured":"Vogel P (2013) No comment: Why commenting code is still a bad idea. https:\/\/visualstudiomagazine.com\/articles\/2013\/07\/26\/why-commenting-code-is-still-bad.aspx\/. Accessed 28-04-2022"},{"key":"10425_CR113","doi-asserted-by":"publisher","first-page":"174200","DOI":"10.1109\/ACCESS.2019.2957424","volume":"7","author":"D Wang","year":"2019","unstructured":"Wang D, Guo Y, Dong W, Wang Z, Liu H, Li S (2019) Deep code-comment understanding and assessment. IEEE Access 7:174200\u2013174209","journal-title":"IEEE Access"},{"key":"10425_CR114","doi-asserted-by":"crossref","unstructured":"Wang R, Wang T, Wang H (2019) Study of a code comment decision method based on structural features. In: 2019 International conference on intelligent computing, automation and systems (ICICAS), IEEE pp 570\u2013574","DOI":"10.1109\/ICICAS48597.2019.00125"},{"key":"10425_CR115","unstructured":"of\u00a0Washington U (2023) Commenting. https:\/\/courses.cs.washington.edu\/courses\/cse142\/21su\/quality\/commenting\/. Accessed 03-10-2022"},{"key":"10425_CR116","doi-asserted-by":"crossref","unstructured":"Wen F, Nagy C, Bavota G, Lanza M (2019) A large-scale empirical study on code-comment inconsistencies. In: 2019 IEEE\/ACM 27th International conference on program comprehension (ICPC), IEEE pp 53\u201364","DOI":"10.1109\/ICPC.2019.00019"},{"key":"10425_CR117","doi-asserted-by":"crossref","unstructured":"Wong E, Yang J, Tan L (2013) Autocomment: Mining question and answer sites for automatic comment generation. In: 2013 28th IEEE\/ACM International conference on automated software engineering (ASE), IEEE pp 562\u2013567","DOI":"10.1109\/ASE.2013.6693113"},{"key":"10425_CR118","doi-asserted-by":"crossref","unstructured":"Wong E, Zhang L, Wang S, Liu T, Tan L (2015) Dase: Document-assisted symbolic execution for improving automated software testing. In: 2015 IEEE\/ACM 37th IEEE International conference on software engineering, vol\u00a01, IEEE pp 620\u2013631","DOI":"10.1109\/ICSE.2015.78"},{"key":"10425_CR119","unstructured":"Woodfield SN, Dunsmore HE, Shen VY (1981) The effect of modularization and comments on program comprehension. In: Proceedings of the 5th International conference on software engineering, pp 215\u2013223"},{"key":"10425_CR120","unstructured":"Woost A (2011) Don\u2019t comment your code! https:\/\/apdevblog.com\/comments-in-code\/. Accessed 28-04-2022"},{"key":"10425_CR121","doi-asserted-by":"crossref","unstructured":"Zhai, J., Huang J, Ma S, Zhang X, Tan L, Zhao J, Qin F (2016) Automatic model generation from documentation for java api functions. In: 2016 IEEE\/ACM 38th International conference on software engineering (ICSE), IEEE pp 380\u2013391","DOI":"10.1145\/2884781.2884881"},{"key":"10425_CR122","doi-asserted-by":"crossref","unstructured":"Zhai J, Xu X, Shi Y, Tao G, Pan M, Ma S, Xu L, Zhang W, Tan L, Zhang X (2020) Cpc: Automatically classifying and propagating natural language comments via program analysis. In: Proceedings of the ACM\/IEEE 42nd International conference on software engineering, pp 1359\u20131371","DOI":"10.1145\/3377811.3380427"},{"key":"10425_CR123","doi-asserted-by":"crossref","unstructured":"Zhang J, Xu L, Li Y (2018) Classifying python code comments based on supervised learning. In: International conference on Web information systems and applications, Springer pp 39\u201347","DOI":"10.1007\/978-3-030-02934-0_4"},{"key":"10425_CR124","unstructured":"Zhan\u00e9 J (2023) Writing comments in python (guide). https:\/\/realpython.com\/python-comments-guide\/#python-commenting-best-practices. Accessed 28-04-2022"},{"key":"10425_CR125","doi-asserted-by":"crossref","unstructured":"Zhong H, Zhang L, Xie T, Mei H (2009) Inferring resource specifications from natural language api documentation. In: 2009 IEEE\/ACM International conference on automated software engineering, IEEE pp 307\u2013318","DOI":"10.1109\/ASE.2009.94"}],"container-title":["Empirical Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-023-10425-5.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10664-023-10425-5\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10664-023-10425-5.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,6,1]],"date-time":"2024-06-01T02:10:03Z","timestamp":1717207803000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10664-023-10425-5"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2024,4,3]]},"references-count":125,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2024,5]]}},"alternative-id":["10425"],"URL":"https:\/\/doi.org\/10.1007\/s10664-023-10425-5","relation":{},"ISSN":["1382-3256","1573-7616"],"issn-type":[{"value":"1382-3256","type":"print"},{"value":"1573-7616","type":"electronic"}],"subject":[],"published":{"date-parts":[[2024,4,3]]},"assertion":[{"value":"14 November 2023","order":1,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"3 April 2024","order":2,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}},{"order":1,"name":"Ethics","group":{"name":"EthicsHeading","label":"Declarations"}},{"value":"The authors declare that they have no conflict of interest.","order":2,"name":"Ethics","group":{"name":"EthicsHeading","label":"Conflict of Interest"}}],"article-number":"58"}}