Ask HN: Communicative Competence in Code

by ed-209on 1/11/2025, 9:56 PMwith 0 comments

I have an idea kicking around I'd like to subject to your collective scrutiny:

1. source code has competing audiences with conflicting goals -a) the machine, with the goal of accurately performing its function -b) subsequent devs, with the goal of communicating organization, workflow, pitfalls, limitations, context, etc.

2. high level languages, type systems, code comments, design patterns, etc. all aim (in part) to alleviate the problem but leave ample room for human error

3. communication with a fellow human developer by means of a programming language is not a fundamentally different activity than any other form of written communication, and is made more difficult by its dual-audience

4. (most) software development still requires strong written communication skills

=> (most) devs who struggle to communicate with other humans will (more frequently) implement behaviors that other humans struggle to fully appreciate/grok and therefore struggle to maintain/modify.

0