In his talk 'This is the Problem' delivered at the Rocky Mountain Ruby 2012 conference, Drew Neil explores the concept of ambiguity in both programming and writing, using JavaScript and CoffeeScript as primary examples. He begins by discussing a bug he encountered with CoffeeScript, where the context of 'this' was misunderstood, leading to unexpected behavior. Neil explains that in this case, the issue is easily fixed by scoping 'this' correctly, illustrating how JavaScript's scoping rules are consistent and learnable.
However, Neil points out that true ambiguity can arise in human communication, particularly in writing, unlike in programming where specifications exist. He shares a personal experience from his writing process, recalling feedback from an editor regarding a vague pronoun in his text. This highlights how poor writing can lead to confusion similar to programming issues.
Key points discussed in the talk include:
- Ambiguity in Programming: Use of 'this' in JavaScript and CoffeeScript demonstrates that programmers can experience confusion due to scope, yet this is usually a manageable issue.
- Writing and Clarification: Neil discusses a note from his editor that pointed out an ambiguity in his writing, illustrating the need for clarity in human communication. This issue of clarity is akin to programming bugs but more complex due to the nature of language.
- Human Communication: Neil emphasizes that unlike programming languages, human language relies on mutual understanding and context, which makes it fascinating yet challenging to communicate effectively.
- Realizations in Writing: He recounts instances where significant rewrites were necessary to achieve clarity, indicating that evolving from unclear to clear writing requires effort and reconsideration.
In conclusion, Neil does not provide a definitive solution but rather invites the audience to reflect on the nature of ambiguity in both coding and writing. He leaves the audience with the thought that understanding and clarity are continuous challenges in both fields and prompts them to consider their own experiences with these issues.