{'fraction_non_alphanumeric': 0.0216, 'fraction_numerical': 0.0, 'mean_word_length': 5.58421052631579, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Designing a prosthetic memory to support software developers

about their activities and the resulting artifacts which helps them remain oriented, avoid omissions, and correctly use artifacts. When stored only in the developer's organic memory, this knowledge may degrade and cannot directly be shared with others. Its consistent externalization, however, is currently limited by production costs, indirect returns, and its limited saliency in contexts where it could be useful.
 In this work we propose a memory aid which strives to overcome these barriers, and reduce the resulting problems. Developers will provide short and raw subjective notes which will be associated with the code context but stored separately from it, allowing us to increase saliency via two novel presentations. The first, designed after human episodic memory, chronologically interleaves these subjective notes with an automatically-gathered record of the developer's objective activities. It virtually extends shorter-term memory, aiding with orientation and increasing the saliency of recent knowledge and reminders. The second, a contextual view, uses static dependencies and historical records to present notes which may be relevant to the developer's current context.