展开讨论

创业与收入经验摘录 · 机器翻译

换句话说,我拥有大规模生产软件的能力(无论绝对质量如何)

… 换句话说,我有能力大规模生产软件(无论绝对质量如何)。在过去的7年里,我为16个不同领域的43家公司构建了CRUD应用程序(从无人机和高尔夫模拟器到税务SaaS和超市POS系统)。因此,我认为我在这一方面至少具备平均水平的扎实能力。我真正赚钱的主要领域是PLC,所以虽然我可能没有深厚的学术专业知识,但我绝不会认为自己缺乏能力。在韩国,被称为SI(系统集成)的行业是按“项目”方式签订合同的领域。在这样的环境中,我遇到了各种各样的人。从这些经验中,我的体会是编程分为几个不同的层次。首先说算法:我在大学里学习了基本的算法和基础的数据结构。然而,在我工作的领域中,有很多人难以实现这些基本算法,但他们仍然构建了大量的应用程序。这是为什么呢?…

源讨论“代码从来不是困难的部分”是对所有程序员的侮辱原帖 589 条评论 · 导入时统计
2

这条内容在回应什么?

父级讨论 · 节选

SK

如果你在形式化思维方面有困难,编程对你来说会很困难。我并不是说设计软件时需要更高层次的概念,比如线程、网络IPC、Web应用程序路由、GUI等,而是更简单的概念,比如基本的数据结构(列表、树、映射、图等),算法(搜索、排序、平衡树等),以及编程范式(过程式、函数式、面向对象、关系型等)。 我遇到过很多程序员,这些概念对他们来说只是词语,而他们并没有真正理解。一段代码要么是他们必须学习或复制的东西,而不是他们能够流畅操作的东西。这就像使用字典和示例短语与流利地讲一种语言之间的区别。前者是一种负担,而后者你甚至不会注意到。

完整原文

社区评论 0

还没有社区评论,来聊聊你的看法。

原讨论中的回复 2

仅展示本次导入中包含的直接回复。中文为机器翻译,可查看英文原文。

SK

在不同的抽象层次之间上下移动是一种独立的技能。我所说的技能是利用一些公理概念(可以是操作码或高级DSL中的函数),然后根据给定的规则构建一些东西。我以基本算法为例,因为在整体上它们是微不足道的,而学习像Flask或Laravel这样的东西涉及太多概念。 核心上,两者都涉及相同的正式思维,但使用高级概念更容易获得实际结果(这有助于机械学习),而不是纯粹抽象的东西。

完整原文
JA

我真的很喜欢读你的评论。这让我想起了《软件模式》(Patterns of Software)一书中的一篇观点,这是一本20世纪90年代理查德·加布里埃尔(Richard Gabriel)的论文集。第一篇讲的是“重用”的理想。 “与库类似的一个想法是ACM多年前以类似ALGOL的语言出版的《收集算法》。我记得1968年我小时候在第一份编程工作中查找排序和搜索算法时的情景。然而,每个经理都会学到的是,在这种情况下,重用需要一个重用的过程,或者至少需要一个政策。首先,你需要有一个代码的中央仓库。... 第二,必须有一种方法找到正确的代码... 如果没有人能找到正确的代码,那也没用。在书籍、报告、杂志等世界中的分类是一门职业,称为编目。图书管理员帮助人们...…

完整原文
在 Hacker News 阅读

尊重不同观点,分享具体经验。

登录后即可发帖、评论、转发和引用。