作为一个主修数学辅修计算机,对很多学科都有兴趣的斜杠青年,在大四即将开始之际,回顾自己前三年的历程,我对自己剩余的若干年学生生涯能具备一个什么样的能力、达到何等水平会有什么样的期待?本文将对此做一个整理。
本文图片源于Pixiv画师花铭的作品《原野里的少女,辛勤的劳作》。
总体上,我希望自己能成为一个具备稀缺知识、稀缺能力的主业,有一个创造收入副业的人。
专业能力
数学
- 深度理解,严密推导
数学依赖于形式语言,如定义、公理和定理,证明过程要求我们准确理解概念的定义以及给出的条件,进行一步步逻辑严谨的推导,任何理解偏差或步骤疏漏都可能导致错误。数学系学生在学习数学过程中应该考虑周密,确保分析问题时考虑到了方方面面,要具备批判性思维,学会质疑假设、构造反例或探索替代路径,以验证推理的稳固性,从而培养更深刻的批判性和问题求解能力。
- 归纳整理,概括体系
数学系的培养方案已经趋于成熟,传统分为分析、代数、几何三个方向,但是实际上三个方向你中有我我中有你,是一个复杂的网状非线性关系,此时需要学生善于捕捉不同课程之间的关联。对于数学系学生来说,定义、定理固然重要,但真正精华的东西是数学证明的方法、动机这些思想,我们需要整理好证明方法的工具箱,对于某种证明方法,我能不能在条件放宽或者结论放宽的情况下进行推广,能不能应用于一类问题,不同的方法之间在什么情况下它们的优劣情况是怎么样的,这些都需要我们进行体系概括,把杂乱的东西梳理成清晰的结构。
- 抽象转化,建模分析
数学是科学之基,它来源于各种应用的抽象。学习数学的过程中,需要把形式化语言和现实中的直观印象结合起来,更容易理解。对绝大部分数学系学生来说,大概率也是要走向应用数学的道路。平时学习数学知识的时候,我们就要知道这样的数学理论对应什么样的数学工具,工具适用于解决什么样的问题,这些工具需要使用什么数学软件进行实现,这又需要我们具备数值计算能力。面对没有见过的实际问题,需要通过建模抽象为有成熟解决方案的理论问题。在解决问题后,往往要向别人展现自己解决问题的方案以及结果,这又需要我们具备向别人表达数学的能力。
计算机
- 代码功底
熟练掌握编程语言、算法和数据结构,能高效编写干净、可维护的代码,处理常见问题,注重代码的效率(时间/空间复杂度)和可读性,遇到问题时,能够对问题进行分解、变换并且进行优化分析,从而高效解决。懂得调试、测试和版本控制(如Git),以确保代码快速迭代,在实际环境中可靠运行。
- 理解底层
对计算机系统底层机制的深入把握,包括硬件(如CPU架构、内存管理)、操作系统(如进程调度、文件系统)和网络协议(如TCP/IP)。学生需明白代码如何在机器层面执行,例如编译过程、虚拟内存或并发模型,从而避免“黑箱”思维,让我们能够诊断性能瓶颈或安全漏洞,并桥接软件与硬件的鸿沟,从全局思考问题。
- 系统工程
系统工程能力,是指对复杂计算机系统的全面工程管理技能,涵盖从需求定义到运维优化的完整生命周期,包括严谨整合用户需求、硬件约束和环境变量(如在智能家居系统中评估隐私合规与电源效率),架构规划(如协调软件组件、数据库结构设计——例如选用MySQL实现事务一致性或NoSQL如MongoDB支持横向扩展——网络协议优化及硬件接口,确保系统模块间的高效交互),集成验证(如通过端到端测试确认子系统协作的鲁棒性,防范如数据传输中断或单点故障的风险),以及运维与迭代(如运用Prometheus等工具监控性能指标、开展风险评估并实施持续升级)。这一能力强调可持续设计原则(如资源优化、安全强化和伦理考量),从系统级视角构建可靠、可扩展的解决方案,如自动驾驶平台或企业级大数据基础设施,避免局部失效引发全局问题。
物理
通用技能
自我管理
搜集信息
学习新东西
沟通和团队协作
写作和演说
可视化表达
软实力
身心健康
充满好奇心
敢于迎接变化
抗压
参考资料