技术人征服世界的三大利器——数学、编程和英语

2024-02-03 16:59

本文主要是介绍技术人征服世界的三大利器——数学、编程和英语,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

人生需要做正确但是困难的事情,对于技术人来说,这三个技能值得你去修炼,它们分别是数学、编程和英语。数学给我们提供理论指导,编程让我们得以实践探索,而英语则是我们获取前两者的利器。


数学之美

首先,数学是一切工科的基础,没有哪一个专业不是建立在数学理论之上的。单单拿线性代数来说,在力学方程、图和网络、信号变换、网页排序、人口迁移等问题中都能看到它的影子。MATLAB 这个软件名字的由来——MATrix LABoratory(矩阵实验室)及其广泛的使用程度,已经告诉了你线性代数是如何统治这个世界的。

再拿概率论来说,这更是我们每个人都要掌握的生活哲学。

两个人对赌,输赢的概率都一样,每次赢的钱和赔的钱也都一样,请问最后谁先把钱输光?你可能会觉得大家输赢的概率各一半,最后不应该是平局嘛。掷硬币正面反面的概率都一样,但还是有可能前 10 次都掷到反面,频率不等同于概率,尤其是在样本总量特别少的情况下。这时候,假如你只有 10 元钱,而恰好前 10 次你都输了的话,尽管你第十一次赢的概率非常高,也没有用了。因此,在这个游戏中,筹码少的人会最先把钱输光。

在赌博中,有一个原则,就是永远不要走下赌桌。在上面的游戏中,一旦你没有了筹码走下赌桌,也就意味着你再也没有了翻盘的机会。这也就是 “留得青山在,不怕没柴烧” 的哲学。如果一件事情有 99% 的概率会赢,但却只能做一次,你依然不能倾其所有,因为那 1% 的概率就可能发生在这一次。相反,如果一件事情只有 51% 的概率会赢,但你却可以无限地做下去,那这件事情绝对值得你去做,因为最终 51% VS 49%,你注定是人生赢家。


编程是一门艺术

与计算机打交道,规则很简单,对就是对,错就是错,一切都很明确,半点模糊不得。为什么很多程序员都梦想着改变世界,因为在编程的世界里,他们真的可以做到掌控一切。之前看到欧神一篇文章说,程序员的任务就是在减少这个世界的熵,让无序渐渐变为有序,深以为然。画家用画笔表现艺术,作家用文字表现艺术,而程序员则用代码来表现艺术,它们都是世界的描绘,它们都是独特的思维,它们也都是美的创造。

算法更是源于生活。关于队列和栈的区别,有个说法真是非常形象,吃多了吐就是栈,吃多了拉就是队列。以前写日记,都是按照日期从前往后开始写,似乎觉得这就是理所当然的。但这样就会遇到个问题,随着越写越多,每次都要将页面拉到最后再添加新的内容,虽说现在的软件大都会保存上次编辑的位置,但有时候还是不方便。有一次,我忽然就想,为什么每次不直接在最前面添加新的内容呢,为什么就不能像栈一样思考呢?谁又知道过去的自己怎么就没想到呢?

二分算法,大家应该都很熟悉,非常经典高效的一个思想。说一个真实案例,有个人发现自己朋友圈的照片被不知道哪个好友盗用在了别的网站,怎么找到这个人是谁呢?这不就可以用到二分了嘛,再发一条朋友圈,屏蔽一半的好友,然后看图片是否依然被盗用。继续二分,以 logN 的速度不消几次就找到了幕后元凶。


英语是知识的窗户

不得不承认,世界上最先进最前沿的知识都以英语为传播媒介。顶尖学术会议和期刊的文章是英文的,行业标准和使用说明是英文的,那些好的教材好的课程也大都是英文的,编程语言更是英语的产物。在学习上,如果你掌握了英语,就意味着你能接触到最前沿最原汁原味的一手知识,而不是翻译过来的有时延的二手内容,你的起点自然比别人就高出了许多。李笑来老师曾说过,那些英语专业的学生都应该来学编程,分分钟碾压很多英语不好的专业人士。这句话虽说可能有点夸张,但并不是没有道理,决定技术人员天花板的其中一个因素就是英语。

另外,掌握了英语,也就意味着你的视角能触及到这个世界上的大部分角落。你能和各个国家的人交流,你能了解此时此刻发生在世界上各个地方的奇闻异事,你的眼界遍布全球,你的乐趣自然也源源不断。至于十几年的应试教育都没有让你掌握英语,这不是我们的错,你要相信自己一定可以征服英语,正如李笑来《人人都能用英语》中说的那样,只管去用就足矣。


说实话,意识到数学、编程和英语的重要性并不容易,意识到之后能再下功夫去刻苦钻研更是难上加难,但正确的道路上从来不在乎少了一个人,否则怎么能成为那万分之一!

获取更多精彩,请关注「seniusen」!

这篇关于技术人征服世界的三大利器——数学、编程和英语的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/674811

相关文章

shell编程之函数与数组的使用详解

《shell编程之函数与数组的使用详解》:本文主要介绍shell编程之函数与数组的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录shell函数函数的用法俩个数求和系统资源监控并报警函数函数变量的作用范围函数的参数递归函数shell数组获取数组的长度读取某下的

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

揭秘Python Socket网络编程的7种硬核用法

《揭秘PythonSocket网络编程的7种硬核用法》Socket不仅能做聊天室,还能干一大堆硬核操作,这篇文章就带大家看看Python网络编程的7种超实用玩法,感兴趣的小伙伴可以跟随小编一起... 目录1.端口扫描器:探测开放端口2.简易 HTTP 服务器:10 秒搭个网页3.局域网游戏:多人联机对战4.

Java并发编程必备之Synchronized关键字深入解析

《Java并发编程必备之Synchronized关键字深入解析》本文我们深入探索了Java中的Synchronized关键字,包括其互斥性和可重入性的特性,文章详细介绍了Synchronized的三种... 目录一、前言二、Synchronized关键字2.1 Synchronized的特性1. 互斥2.

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

Python异步编程中asyncio.gather的并发控制详解

《Python异步编程中asyncio.gather的并发控制详解》在Python异步编程生态中,asyncio.gather是并发任务调度的核心工具,本文将通过实际场景和代码示例,展示如何结合信号量... 目录一、asyncio.gather的原始行为解析二、信号量控制法:给并发装上"节流阀"三、进阶控制

基于@RequestParam注解之Spring MVC参数绑定的利器

《基于@RequestParam注解之SpringMVC参数绑定的利器》:本文主要介绍基于@RequestParam注解之SpringMVC参数绑定的利器,具有很好的参考价值,希望对大家有所帮助... 目录@RequestParam注解:Spring MVC参数绑定的利器什么是@RequestParam?@

C#多线程编程中导致死锁的常见陷阱和避免方法

《C#多线程编程中导致死锁的常见陷阱和避免方法》在C#多线程编程中,死锁(Deadlock)是一种常见的、令人头疼的错误,死锁通常发生在多个线程试图获取多个资源的锁时,导致相互等待对方释放资源,最终形... 目录引言1. 什么是死锁?死锁的典型条件:2. 导致死锁的常见原因2.1 锁的顺序问题错误示例:不同

PyCharm接入DeepSeek实现AI编程的操作流程

《PyCharm接入DeepSeek实现AI编程的操作流程》DeepSeek是一家专注于人工智能技术研发的公司,致力于开发高性能、低成本的AI模型,接下来,我们把DeepSeek接入到PyCharm中... 目录引言效果演示创建API key在PyCharm中下载Continue插件配置Continue引言