对程序员的一些个人建议

原理之(〇)3D Gaussian Splatting 数学原理与推导 3D Gaussian Splatting源于EWA的理论基础,本文重点从EWA模型出发,详细推导3D GS中的数学原理,加深对鱼眼相机畸变场景下的理解。 阅读详情


作者:郑晖

答读者问

以下内容摘自冒号论坛的一个话题,考虑其具有一定的典型性,故转至冒号空间,希望能对更多的读者有所帮助,也算是一种代码重用吧。

 

读者Jee问:

之前在Top language里的一位网友像我推荐您的《冒号课堂》,书中eric向您建议开设社区,我猜测可能会有,就找到您的博客发现此地,很幸运您是一个如此有责任心的作者。

我是一名没有什么理论基础的不合格的计算机专业毕业生,毕业后却对软件方面技术非常感兴趣,可能与个性有关。于是在这近2年的找工作和工作过程中看了一些书,也和一些过来人聊过,总体来说让我对软件编程有了一点认识。在阅读您的冒号课堂之前,我曾一度认为我所差的是经验和一些诸如高级算法之类的进阶技术, 可现在,一个用了一个多月时间的夜晚阅读《冒号课堂》之后的我发现我所差的不仅仅是那些,而是最基础最根本的对计算机本身的认识,对数学的认识,对软件工程的认识。

我不想能有速成一说,只想能够现在正视自己,脚踏实地的一点一点的学习和进步,哪怕让我自学4年大学课程也未尝不可,只是有些时候有点找不到一个开始。我数学不好,作为一名程序员我想这是个令人沮丧的事实,我英语也不好,当看到蹩脚的一些翻译著作后痛苦不已。我想尝试着去改变这些,但是却不知该如何去做, 您知道,作为一名已经进入社会的成年人,我需要承受一些生存的压力和一些生活的负担,我希望能更好的利用每天那抽出来的时间,所以望郑晖老师能给我指出一条明道。

我一直没有说我从事的语言和方向,因为我知道这并不是核心,也不是想从您这得到如何学习XX语言等。万分打扰,还望见谅。

 

作者hui答:

你提到的问题十分典型,我非常理解你的心情,同时也非常乐意分享一些个人的看法。

虽然你在言语之中流露出不少负面的情绪,但我看到的却是正面的希望。首先,你对软件技术很感兴趣,而兴趣是学习和工作的最大动力。一般说来,我也没兴趣回答那些对编程不感兴趣者的有关编程的问题。一方面,我会劝他们改行,否则彼此都痛苦;另一方面,我建议的方法通常也不适合他们。其次,你很清楚地意识到自己在哪些方面不足,这是一切进步的基础。许多程序员意识不到自己的无知,甚至自以为足够有知,那又如何能进步呢?最后,你不指望任何捷径,愿意通过踏踏实实的学习来弥补不足。在浮躁之风盛行的当下,这点也是难能可贵的。

关于数学基础,窃以为并非什么太大的问题。几乎每个得知我数学背景的人都会对我说:哦,学数学的人来学计算机自然容易啦。事实上,这种观点虽然极为普遍,但也极为肤浅。本人从事数学14年(从本科算起)、从事计算机12年(与前者有部分重合),在这一点上还是比较有发言权的。事先说明,以下提到的数学不包括高中数学。其实大多数从事软件开发的人员用不到太多的数学知识,他们只需要正常的逻辑思维能力和抽象思维能力。整天拿数学说事,要么是无知,要么是找借口,要么是装高深。当然,我不否认一些高级算法、计算机理论以及人工智能等领域可能涉及到高深的数学知识(其实也只是图论、组合数学、数论、概率论、计算几何、抽象代数、数学逻辑等中的一小部分),但那毕竟只是少数。我也不否认自己的数学背景有助于对编程的理解,但投入产出比太低,不值得作为经验来推广。不过若想成为一位计算机科学家,那就另作别论了——这时数学懂得再多也会嫌少的。

    倒是英语我希望你更重视些。我在《冒号课堂》中专门提过阅读原著的必要性,而且你也意识到译著的质量问题。建议不必特地去学习英语(你本来就会了,不是吗?),只要坚持读经典原著即可。其实,计算机方面的英文算是很容易的了,关键是克服自己的惯性和惰性。开始可能不习惯,看多了就习惯了。在此提醒一点,在阅读时请有意识地培养自己对英语的语感,就像编程时要有意识地培养自己对编程语言的语感一样。

总之,对于程序员来说,数学没有人们认为的那么重要,英语没有人们认为的那么不重要。

再说说专业方面的问题。你提到愿意重新自学大学课程,虽精神可嘉,但未必可取。从软件(或建筑)设计的观点来看,这是bottom-up法。作为学生,最好采用这种方法,但你已经参加工作了,所以我建议你更多地采用top-down法。这当然不是轻视基础知识,而是认为获取知识最高效的方法莫过于按需(on demand)学习。在实际工作中意识到某个知识点的重要性,从而有针对性地弥补短板,这样学习起来不仅更有效率,也更有兴味。需要强调的是,绝不能只是 “头痛医头”,而要“拔萝卜带出泥”。只有寻根究底、以点带面,才能快速有效地建立起自己的知识结构体系。对于软件开发这类实践性很强的专业来说,该法尤其奏效。

话又说回来,这种项目驱动式的学习方法也是有一定局限的。毕竟大多项目涉及的深度和广度通常都很有限,单纯凭此建立起来的知识体系不可能非常完善。这就需要平时有计划地阅读一些经典著作以加强深度,并定期浏览一些高质量的技术网站以加强广度。

以上谈的都是一些较为宏观的建议,我想你需要的是更加具体的建议。《冒号课堂》上已经阐述了不少关于编程语言、编程范式、设计原则方面的观点,此处不复赘言。我想特别强调一点——把握抽象(abstraction)。事实上,无论是在书中还是本论坛中,我都不厌其烦地再三提到抽象的重要性,今后有时间还会深入地挖掘这一主题。对编程的语言、范式、设计、实现体会得越深,对抽象体会得也越深。借用Hakell的设计者之一Paul Hudak的一句略带夸张的话(overstatement):“abstraction, abstraction, abstraction” are the three most important things in programming。一定会有人会问:难道编程语言就不重要了吗?设计模式就不重要了吗?算法设计就不重要了吗?那是他们尚未真正理解何为抽象——抽象不仅渗透在编程范式之中,也渗透在编程语言之中;不仅反映在设计原则之中,也反映在设计模式之中;不仅体现在架构设计之中,也体现在算法设计之中。

说来也怪,明明是想提“具体”建议的,偏偏又扯出了“抽象”,大概不是你想要的答案吧?既然你是计算机专业毕业的,又有一定的工作经验,其实也不需要太过具体的建议。你的苦恼是找不到努力的方向,而这个方向恐怕还是得靠自己去寻找。建议试试两种方法:研读一本有趣的名著或开发一个有趣的应用。只要深入其中,相信绝不会再为找不到方向而发愁,说不定倒会为方向太多而发愁呢。

最后,说句更实际点的话:如果平时能有意识地积累一些计算机以外的领域知识(domain knowledge),比如金融、电信、教育、企业管理等等,对提高个人在IT业的核心竞争力也是大有裨益的。当然,前提是你有兴趣或有条件获得这些知识。

一家之言,希望能对你有所帮助。

 

本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/bvbook/archive/2010/06/11/5664267.aspx

【Bug已解决】Codex 切换 model_provider 后历史会话消失的解决方案 方案适用场景推荐指数切回原 provider 验证排查的第一步,确认数据是否真的丢失⭐⭐⭐⭐⭐查看本地会话文件进一步确认数据完整性⭐⭐⭐⭐⭐查阅跨 provider 恢复命令官方是否提供了对应功能⭐⭐⭐使用社区辅助工具需要频繁切换 provider 的场景⭐⭐⭐定期备份配置目录任何场景下的通用保险措施⭐⭐⭐⭐切换后历史会话"消失"的本质是客户端的会话列表展示逻辑受当前活跃 provider 状态过滤,而不是原始数据文件被真正删除。 阅读详情

相关推荐

OpenAI Codex 国内安装配置全攻略:从零到实战的 AI 编程助手集成指南

AI 编程助手正成为提升开发效率的关键工具,其核心原理是基于大规模语言模型对代码语义进行深度理解与生成。这类技术通过将自然语言指令转化为可执行的代码、自动化重构与调试,为开发者提供了智能化的结对编程体验,其技术价值在于显著降低编码复杂度、加速项目迭代。在实际应用场景中,AI 编程助手可集成于日常开发流,辅助完成代码生成、项目分析与自动化任务。本文聚焦于 OpenAI 的 Codex,针对国内开发者在网络、认证和配置上的常见挑战,提供了涵盖多种安装方式、详细配置步骤及核心使用技巧的实战指南,并特别介绍了如何利

weixin_28715081的博客 412

给程序员的职场建议

我是一位在大厂打拼多年的程序员,今天想结合自己的工作经历给初入职场的程序员们提出若干建议,希望能够在一定程度上帮助大家在职场脱颖而出。

楚兴 2986

箱式连续提升机

箱式连续提升机,是对具有高度差较大(>1500mm)的输送线之间进行连接,将箱式物资进行连续输送的提升(或下降)的输送设备,可根据输送线的具体输送要求作相应的参数设计。目前的箱式连续提升机种类比较多,常用的形式主要有Z型和C型,工作原理相同,只是入口和出口分别在两侧和同侧。

月生沧溟 1248

关于内部系统开发部门的几点建议

上周去一家大型网络公司的内部系统开发部门面试,该部门主要是为公司的各个部门开发工作中所需要用到的系统,比如财务,人事的一些小系统。面临着:资源少,任务多,体现不出部门价值等问题。面试出来后想了几点,发给他们了,另外也分享出来,希望对从事类似工作的同学们有用。 1. 统一简洁的页面风格和CSS 因为是内部系统,所以页面不需要太华丽和复杂的界面,所需要的是简单易用。因为是都是sohu的内部系统,所

ccecwg的专栏 6630

【RK3588 NPU性能调优实战】多线程异步推理YOLOv5,榨干6TOPS算力

本文详细解析了如何在RK3588 NPU上通过多线程异步推理优化YOLOv5目标检测性能,实现6TOPS算力的最大化利用。通过线程池设计、流水线化帧处理及避开内存带宽瓶颈等技巧,将NPU利用率从30%提升至82%,帧率显著提高至61.2FPS。文章还提供了环境配置、代码实现及性能对比数据,助力开发者高效部署AI模型。

weixin_29034963的博客 340

2023-12-26~2025-07-04备份

一、海康视觉与汇川机器人 服务器-客户端通信设置IP在同一网段名称IP端口类型海康相机工控机7930服务器机器人3000客户端海康VM服务器设置1通信管理 增添TCP服务端,设置本机IP:192.168.0.20,端口号79302 协议解析 通信双方约定通信格式(设置收发数据格式,分隔符)机器人客户端设置(不同类型机器人设置有差别)1 通讯服务设置 设置连接服务器IP、服务端端口号、机器人端口号,确保连接正常2 协议解析 使用指令代码构建通讯解析。

青铜小码农 3126

写给初级程序员的十点提升建议

1 遇到产线问题,不管是不是自己管的,都去关注。哪怕本次无法解决问题,其他人解决后,一定要复盘,这样就会不断熟悉代码和技术。 2 除了写代码之外,更要关注测试,部署,架构设计等技能,尤其要注重(数据库,代码或jvm)调优技能。 3 别怕出问题,但出了问题以后,一定要通过看日志和debug等方式,刨根问底找到原因,然后下次别再犯类似的问题。 4 初级程序员除了会写增删改查的业务外,一般会不知道自己怎么提高,比如不知道自己该看哪些方面的技能。此时你就看,公司里公司比你高的程序员会什么技术,或者大厂高级开发

hsm_computer的博客 1536

QMI8658A和QMC5883L传感器校准全攻略:从零偏校准到椭球拟合

本文详细解析了QMI8658A和QMC5883L传感器的校准方法,从零偏校准到椭球拟合,涵盖了9轴运动传感器的核心误差来源及补偿技术。通过实战案例和数学建模,帮助开发者提升传感器精度,适用于无人机、AR/VR等智能硬件应用。

weixin_29189381的博客 158

老程序员给新程序员的一点个人建议

多年的编程及管理工作,简单的总结一下以给新人一些借鉴。 1. 问问题要有技巧,不问或问得太多都会给人不好的印象。业务的问题只要不清楚就一定要问,有时候问你的领导问得多了怕他烦你也可以试着问问别的同事,业务问题他们也可能清楚,但是需求的问题就一定要向你的领导或是客户问清楚,不能怕他们烦。但是技术的问题就一定要少问,我的原则是技术问题先从网上找解决方案,自己多思考和尝试,如果真的在网上找不到解决方案

燃烧JAVA 5175

UNet 改进(22):结合Transformer结构

保留了UNet的经典编码器-解码器结构在瓶颈层使用Transformer替代传统的卷积层采用跳跃连接保持空间细节信息使用双卷积块(DoubleConv)作为基础构建模块。

2401_82355416的博客 774

redhawk如何看高toggle rate instance

1.图形界面View-Power Map - Toggle Map of Instances。redhawk通过报告和图形界面两种方式查看高toggle rate的instance。2.看warning log,在adsRpt/Warn里,搜toggle rate。我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?

m0_61544122的博客 609

一个毕业三年的程序猿对于提升自我的一些建议

前言 毕业已经三年有余了,对于程序员这个职业也算有一点解了,也有一些看法,因此写下这篇文章记录一下个人的见解,如有不妥,望请见谅。 制定小目标 区分重要级别 事有轻重缓急,学会区分事情的轻重缓急是一门学问。 学会找资料 其他 目前网上已经有许多大佬写的关于HashMap源码解析的文章,而且写的非常详细, 参考: https://my.oschina.net/90888/blog/162604...

虚无境的博客 2224

ChatGPT搭配Claude 4写文献综述效果出奇的好!四步法直接写出逻辑清晰、层次分明的文献综述(附复制即用专业提示词)

请梳理【研究领域】中核心理论的发展演进过程,包括每一阶段理论的核心观点、提出背景与推动力,并指出理论演化中的关键节点或范式转变。请根据以下文献摘要内容,帮助我梳理该主题的研究趋势,包括:常见研究视角、研究方法的演变、研究对象的变化方向等。请根据以下研究空白与我已有的研究基础,帮我生成一个清晰的研究定位,包括:研究主题、研究对象、方法路径和理论框架。先要明确这个研究领域中一个主导或热门的理论,比如社会支持理论、认知负荷理论等,强调这个理论内部的不一致性、适用性争议,通过交代这⼀争议的背景,引发读者兴趣。

智能AI让学术科研更容易 568

程序员个人快速成长的十二条建议

1、关于迷信。不要迷信于造轮子来提升自己的实力,满足业务是第一位的。也接受反驳,研读源码、给开源贡献代码、甚至是放弃已知轮子,要造一个。但要问你的初心,你是为业务上线所必需,还是为了自己玩技术。再问项目时间要求,有没有时间和能力打磨好。 2、做好交付。发布频度不是越高越好,这背后是ROI。不同业态涉及到安全性、稳定性、需求的变化不一样,要量体裁衣。但快速交付基本上是大家的共识了。 3、练好基本功: 软件做不好,就是因为不知道怎么开发。没有基本功,什么花哨的套路都玩不了,玩到最后你都会面临同样的一个问.

m0_67073490的博客 445

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

JAVA程序员写简历的个人一点小建议,不喜勿喷

JAVA程序员写简历的个人一点小建议,不喜勿喷

十一的博客 927

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

从会计转行程序员搞开发,月薪3000到1.7w,给集美们一些个人建议

从会计转行程序员搞开发,月薪3000到1.7w,给集美们一些个人建议 大家都知道对于加班来说,对于会计是常态,基本10个会计有九个都在加班 唯一一个不在加班的呢,可能会在一个不是很出众的企业里拿着月薪3000千的工资,过着养老的生活 所以说如果你也想做会计,那你就得做好99%加班的准备。 但是我呢,迫切的需要一些自由支配的时间,虽然说程序员也会加班, 但是你只要完成了手头上的工作,还是很自由的。 原因就是我不想靠主动收入来过一辈子,我不想像老一辈一样,做到五六十岁都不能退休 我希望除了主动收入之外,自己会

weixin_44042821的博客 6187

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

答读者问——对程序员一些个人建议

郑晖专栏 2060

年轻程序员如何提升个人能力?8年Android架构师给出建议

一转眼工作已有8年,前两天公司一位初入职场的同事希望我给一些建议与经验。我觉得这个话题很有价值,这里以个人的想法与经历写成此文,希望给年轻的开发者们一些启发。 我工作过的公司有4家,NVIDIA, Google, Slide和Glow。其中两家是知名的大公司,Slide我是D轮过后加入的,那时约150人。Glow则是从它第一天创立,一直走到现在。个人的工作也从Developer,Tech Lea...

weixin_45258969的博客 423

答读者问——对程序员一些个人建议(…

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 以下内容摘自<a target="_blank" rel="nofollow" href= "http://bbs.zhenghui.or

塔山上的山 453

给想提高自己编程效率的程序员一些个人建议

我是一个程序员、设计师和企业家,也是 Asana 的联合创始人。许多知名公司(如:Uber,Pinterest,Dropbox)都在使用这款提升团队生产力的软件。我在 Facebook 做开发经理时,设计过一个用于提升团队生产力的工具,Facebook 至今仍在使用该工具。   简单来说,我在思索如何提高效率上面花了很多时间。   下面是我总结的提高效率的一些建议,每个建议都是

前端那些事儿 - 学习记录web前端开发技术点点滴滴 985

程序员的个人发展

程序员的个人发展每天晚上,请你问自己这些问题:1, 今天我是否克服了技术上新的困难?2, 今天我是否多读了一些新书?3, 今天我是否就某方面的问题与人进行了交流?4, 今天我是否多认识了一个新同事或新朋友并准备与他们保持联络?5, 今天我是否更多的接触到身处的行业需求,现状,和发展?精通技术精通技术是技术人员的根本要求,也是技术人员人生发展的必经之路,只有首先精确掌握一门技术,才能触类旁通的掌握其

Elementary Java Programmer 712

2025年程序员就业的一点建议(个人观点,不代表大众)

在2025年的技术职场中,应届毕业生与35岁以上开发者正面临截然不同的挑战与机遇。本文将基于最新市场数据,为这两类人群提供针对性的职业发展建议,帮助他们在快速变化的IT行业中找准定位,实现职业突破。

u013012507的专栏 6417

程序员脱离单身的一些建议

本文照片均来自互联网公开照片,如有雷同,实属巧合。本文没有机器学习相关内容。程序员们回家过年了,最担心的事情不是怕亲戚问收入多少,而是:有没有对象了?虽然每天“面向对象编程”,经常new...

fengdu78的博客 240
上一篇: 算法的力量(转李开复)---适合计算机专业新生
下一篇: 你的工作就是最好的面试
DeepIT
博客等级 码龄16年 27粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值