Math 我需要什么样的数学才能成为一名更好的开发人员和程序员?

Math 我需要什么样的数学才能成为一名更好的开发人员和程序员?,math,Math,我现在在一所社区大学,虽然我们的课程很好,但它缺乏数学或任何真正的理论。如果我想为任何事情创建一个算法,我就完蛋了。我本质上是一个代码猴子 我从哪里开始获得相关的理论背景以补充我的编程经验?我需要知道什么 抱歉,如果这是发布此内容的错误位置,我不确定在哪里发布技术问题,但不是纯粹的编程问题。这取决于您想做什么。离散数学对于编程涉及的一般推理很有用,这是我的主要建议。线性代数在图形和其他领域有应用。统计对于机器学习至关重要 听起来你应该去上CS课程!任何标题中有“算法”或“计算理论”的东西都会很好

我现在在一所社区大学,虽然我们的课程很好,但它缺乏数学或任何真正的理论。如果我想为任何事情创建一个算法,我就完蛋了。我本质上是一个代码猴子

我从哪里开始获得相关的理论背景以补充我的编程经验?我需要知道什么


抱歉,如果这是发布此内容的错误位置,我不确定在哪里发布技术问题,但不是纯粹的编程问题。

这取决于您想做什么。离散数学对于编程涉及的一般推理很有用,这是我的主要建议。线性代数在图形和其他领域有应用。统计对于机器学习至关重要


听起来你应该去上CS课程!任何标题中有“算法”或“计算理论”的东西都会很好。否则,麻省理工学院、斯坦福大学和其他机构会提供许多免费的在线课程。

某些精英程序员群体,尤其是Joel,因此可能还有Fog Creek,如果你不是mathy,似乎会拒绝你。其他人则不然。擅长数学有帮助,但我花了很多年的时间才将其内化:有很多群体,很多人都有很深的偏见,你永远不会让他们一致认为你很棒

因此,发挥你的优势,永不停止学习,创造奇迹。这才是最重要的

显然这是我的教派所相信的。:)

说真的:我数学很差,12年来我的职业生涯收获颇丰。我使用了进化算法,我已经找到了聪明人说不可能的解决方案。我很有直觉和创造力,不是线性的。我感觉很好

所以为了解决你的恐惧,我要说,即使没有学过微积分,也没有读过编程艺术,算法对我来说是相当容易理解的。你可以从今天开始学习基础知识,这些知识很容易找到。。。气泡排序和shell排序等等都不是魔术,它们都是非常简单的代码片段。我熟悉big-O符号和算法,因为它很吸引人,因为我想尽我所能做到最好,但让我们明确一点:big-O符号从来没有对我的工作起过关键作用,我也没有遇到过很多可以就此进行对话的人

所以这取决于你想做什么

3D游戏引擎可能是我接触过的数学最密集的领域。。。搜索、人工智能、数据库工程(阅读:构建一个实际的数据库服务器)和其他需要从大量服务器获得奇迹般性能的领域都是算法密集型的,并且得益于深厚的数学知识

常见的web开发和业务工作需要。。。也许是高中代数的前三周。如果是的话。真的

如果可以的话,参加一些算法计算机科学课程和预科(通常是一年级微积分)是你应该做的事情,聪明永远不会有什么坏处,但也许更重要的是,有些人会爱上它,并围绕它建立职业生涯。这是大多数优秀CS课程的一部分


但是没有它你也可以做得很好。我退出了一个社区大学英语课程,当了一名程序员学徒,也许有一天我想回去,但现在我太忙了,学习的东西实际上比数学更与我的工作相关。

programmers.stackexchange.com是你要找的地方;)这取决于你想做什么。与银行相比,标准的业务逻辑不需要太多的数学运算。这还取决于您编写的应用程序的类型。如果您不做任何与游戏相关的事情,那么您可能只需要加、减、乘和除。不幸的是,在StackExchange网络中,这样的开放式问题确实没有一个好位置。最好的地方可能是,但即使这样,你也可能得不到答案,这取决于当时聊天的人是否能够/愿意回答。@Fogmeister-任何科学或统计编程都肯定需要数学。一点也不跟游戏有关。我去的地方不提供这些类型的课程。我去的地方太糟糕了,我几乎要退学了。“这取决于你想做什么。”我完全同意。我在学校上过离散数学、数据结构和几门关于算法的课程,但我没有在商业编程中使用过很多/任何一门。不提供我去哪里?你有互联网连接吗?你没听说过MOOC吗?你可以在麻省理工学院从吉尔·斯特朗那里学习线性代数。你需要的每一堂课都在网上免费提供。他们所花费的只是你的时间和精力。