Не очень понял вашу точку зрения относительно комментариев и примера. Вы считаете что этот код не очень хороший и его надо отрефакторить (комментарии не нужны)? Или вы считаете что и так всё понятно (комментарии не нужны)?
b[0] = '\r'; читается лучше чем *b++='\r' и работает быстрее.
Если вы нашли багу с переполнением буфера — пофиксите или зарепортите.
По поводу знания предметной области — согласен, но этого не достаточно (у вас никогда не будет такого набора знаний как у человека, который пишет код, поэтому решения, очевидные для него могут быть не очевидны для вас, и наоборот — какая-та часть кода, которую вы написали бы оптимально, автор кода написал не оптимально — возможно он просто не знает оптимальный способ, а возможно на то были причины, которые сложно определить только исходя из кода).
Только есть одна проблема. Выполняя всё быстро в какой-то момент может оказаться, что система пришла в настолько не поддерживаемое состояние, что теперь быстро занимает в 10 раз больше времени, чем раньше правильно. Поэтому, ИМХО, это правило плохо подходит для крупных проектов, разве что вы не хотите сделать хоть как-то, а потом уйти.
Вместо голосового ввода скорее всего в итоге (может не в первой модели) будет управление движением зрачка (скорее всего удастся обеспечить неплохую точность и использовать в качестве курсора). В качестве клавиатуры — что-то внешнее. Получится вполне удобное устройство.
Довелось поработать на НПО Лавочкина, стандартная гос контора — откаты, распилы, бардак, низкая квалификация. ФГ не был доведён до ума. Перед запуском никто не знал полетит он или нет, запускали потому что сказали сверху (политика).
Было очень печально наблюдать за всем этим.
На данный момент нам не нужны эти фичи. У нас была задача отправить бинарные данные на сервер. У нас не было задачи выбрать наилучший протокол. И, вообще для закачки файлов можно было бы воспользоваться ftp протоколом (который был разработан для передачи файлов), или же http расширением webdav, встречный вопрос, зачем?
Использовать свой протокол нам было проще чем заимплементить согласно спецификации любой другой.
b[0] = '\r'; читается лучше чем *b++='\r' и работает быстрее.
Если вы нашли багу с переполнением буфера — пофиксите или зарепортите.
По поводу знания предметной области — согласен, но этого не достаточно (у вас никогда не будет такого набора знаний как у человека, который пишет код, поэтому решения, очевидные для него могут быть не очевидны для вас, и наоборот — какая-та часть кода, которую вы написали бы оптимально, автор кода написал не оптимально — возможно он просто не знает оптимальный способ, а возможно на то были причины, которые сложно определить только исходя из кода).
Было очень печально наблюдать за всем этим.
Использовать свой протокол нам было проще чем заимплементить согласно спецификации любой другой.