Andrew Quinn:重新发明几个轮子才能抵达真正的边界

Quoting Andrew Quinn

精选理由

Andrew Quinn 戳中了每个自学编程者的焦虑——怕重复造轮子,结果连一个轮子都没造过。想真正理解技术边界的开发者,读完会重新审视自己的学习方式。

AI 摘要

Andrew Quinn 在文章脚注中反思了编程学习中的常见陷阱:总担心自己写的工具已被前人实现过。他认为,与其花时间漫无目的地学习,不如亲自重新发明几个轮子——在大多数领域四五个足矣,数学或计算机科学等严谨领域可能需要二十到三十个。每次重新发明和过程中提出的问题,能比同等时间的被动学习更快将你推向知识前沿。他以自己用有限状态转换器(FST)将 3GB SQLite 数据库压缩到 10MB 为例,说明这种实践的价值。

原文 · Simon Willison’s Weblog

Quoting Andrew Quinn

One could say in the first quarter-century of my life, that while I was always fascinated by programming, I could never overcome the guilt of not really knowing whether the tool I am building right now isn’t already superceded by some much better implementation someone else has already written 30 or 40 years ago; I could write a TSV-aware search and replace, or I could find out about awk and solve that entire class of problems in one fell swoop, for example. My central conceit is that this is a trap . You need to reinvent a couple of wheels to get to the edge of what we know about wheel-making, not a thousand wheels, and not zero; probably four or five is sufficient in most domains, maybe closer to twenty or thirty in the most epistemically rigorous and developed fields like mathematics or computer science. Each wheel you reinvent, and every directed question you ask along the way, will propel you faster to the true frontier than that same amount of time spend in idle study, or even five times that amount. — Andrew Quinn , footnote on Replacing a 3 GB SQLite database with a 10 MB FST (finite state transducer) binary Tags: careers , sqlite