4 ms·
I think English as a spec actually makes the barrier of entry higher, not lower. Code itself is far easier to understand than an English description of the code
by ZephyrBlu 4y ago
I think English as a spec actually makes the barrier of entry higher, not lower. Code itself is far easier to understand than an English description of the code.
To understand an English description of code you already have to have a deeper understanding of what the code is doing. For code itself you can reference the syntax to understand what's going on.
The prompt in this case is using very technical language that a beginner will have no idea about. But if you gave them the code they could at least struggle along and figure it out by looking things up.
- deleted 4y ago[deleted]
- lcnPylGDnU4H9OF 4y agoThis reminds me of rubber ducking[0] in how it necessitates a certain understanding. If one is able to explain it in plain English it's because it is understood. [0] https://en.wikipedia.org/wiki/Rubber_duck_debugging https://en.wikipedia.org/wiki/Rubber_duck_debugging
- nextworddev 4y agoYes but LLMs can also be used by laypeople to explain the issue in plain English too. That’s the problem. Not that LLMs would need human to guide the debugging process anyways (at least in a few years)
- ZephyrBlu 4y agoYou still have the same problem... You cannot describe a technical field with plain English. If you did so the semantics would be incorrect. There is a reason jargon exists. The first two paragraphs alone are absolutely chock with terms that would not be easily explained to a layperson: "The current system is an online whiteboard system. Tech stack: typescript, react, redux, konvajs and react-konva. And vitest, react testing library for model, view model and related hooks, cypress component tests for view. All codes should be written in the tech stack mentioned above. Requirements should be implemented as react components in the MVVM architecture pattern." What is every library in that list? What is a model? What is a view model? What is a hook, component test, view, MVVM, etc? If a layperson could understand explanations for all these things then they would not be a layperson.
- valenterry 4y agoExactly. So much that often with a tricky problem or discussion, I ask the person to sit down with me and just code the most relevant parts without implementation, just the type signatures. That is so much more productive because it immediately removes or highlights all the ambiguity which you can sugar coat with English but not in a programming language.